Solo Project - Goals
- Develop a mobile game in Unity
- Publish on the Google Play Store
- Use free-to-play monetization
- Analyze KPIs to improve gameplay
Click to see Play Store page!
Chromaform is a wave-based shooter with similar mechanics to that of the hit mobile game "Archero" and popular browser game "Diep.io". Players can purchase upgrades between waves with soft currency to continue fighting stronger enemies.
The genesis of this project was to prove that I can develop a mobile game prototype, implement monetization, and analyze core KPIs. I wanted to show that I can build an addicting game loop with user retention in mind so that I can effectively use free-to-play monetization. I only used rewarded video ads.
Menu page with opt-in rewards
I was able to publish a fun game and properly implement monetization and KPIs. I brought the game to Champlain College's Games Testing Lab multiple times to get feedback from 20-30 potential users at a time. I was only able to publish the project in the last development cycle of the semester, so I did not get enough feedback on monetization for multiple iterations.
Monetization in Chromaform is implemented but can be improved. Currently, there is a scheduled reward cycle and incentivized timed rewards in games.
The timed reward appears to be the most successful from game testing sessions. Players are offered upgrades to purchase between each round. As they purchase more upgrades with soft currency, the price increases. The player is sometimes offered a key if they watch an ad. The key allows the player to get one upgrade for free at no increase in price.
The scheduled rewards are available in the menu for the player. They can temporarily increase the amount of soft currency and experience they receive from kills. There are also opt-in rewards for a flat amount of soft currency or the ad-exclusive currency, keys. These rewards are all tracked on a timer so the player can claim them in 3-6 hour increments.
If I were to improve my monetization, I would...
Scale rewards to match player progress
Offer rewards at more excitable times for the player
Revive after death or limited-time bonuses
The game has not been published long enough to get a displayable data set. However, when I began running tests at the Games Testing Lab I asked players how much fun they had. I believe that an engaging game will help me build a strong user retention, so I asked the same question every test session I held "please rate how fun the overall game was". The graphs below depict my progress with the game over the course of the semester. I did not have a metric to show play length, but testers increased voluntary playtime from about 15 minutes to 30 by the last session.
There were several large changes I made to increase player retention and engagement.
Endless combat -> wave-based progression
Added upgrades that would increase player power in a single play session
Added rage mode -- an event that triggers upon a kill threshold that gives players god-like powers
I made these changes knowing that it would impact how the players felt while engaging with my game. A more visible form of progression (with waves) combined with autonomous progression (with upgrades) will make a simple game feel more unique with each playthrough. Rage mode gave the player a goal to achieve within the levels that doubles as a clutch-mechanic.
First playable prototype test-session, 9/19
Last build before release test-session, 12/7
What Would I Change?
If I did the whole game over from scratch, I would change my development process. To sum up the changes, I would do the following...
Focus on UX and interactions
Implement analytics as I go
The biggest issue I had with this project was adding to my scope over time. I kept adding new features like CSV file reading for rapid wave iteration, upgrades between waves, the keys (my rewarded ad currency), and more. None of the changes I made were bad, but I definitely would've planned my project with a different scope. To start my project was supposed to take about 2 months to get the systems implemented and polished to a point they could be on the Play Store. I ended up taking the full semester to work on gameplay and I still have things I would change.
The next change I would make is to focus on the project UX. My skills in UX were displaced as I designed Chromaform as I didn't take time to build out menus and interactions with ads. I had a short iterative process, but nothing was planned. If I spent more time on making pop-ups,
event-based rewards, and smoother menus, I think my monetization would be more successful.
The last change I would make is to implement Unity Analytics as I go. The main problem with this step is I hadn't used the Unity Analytics package in a project before. I am now familiar with creating custom events and integrating Unity's standard analytics, but it took more time than I thought to learn to implement it properly.