My main tasks were:
- Design the core loop, concept and mechanics.
- Implement using C# and Unity3D.
- Integrate external assets and implement UI.
- Compile and publish the game on itch.io
The goal of the game is to stop the pollution by purifying the air with trees. Each planted tree goes through 3 growing stages, augmenting their purifying factor as they grow.
The main idea considered making the trees more powerful based on how many neighbours they had. Therefore, having more and more neighbours was something to be encouraged.
To achieve this, I defined the following ways of making the trees stronger:
This automatically rewards the player for choosing to plant trees in larger groups and avoiding isolated soil.
It was also needed to visually encourage the plantation of neighbouring trees.
The first step was to add particle effects that became more visible the higher the purification ratio was for each tree.
Given the "no art" constraint, I searched for available art in the Unity Asset Store.
A layout using hexagons was a good fit for the mechanic as it allowed to have more neighbours than a square based layout, and it also fit the available art.
To add variety and some level of difficulty to the game, different types of grounds were added.
Initially, infertile ground was meant to only be an obstacle to consider when planning the forestation strategy. But later on, it became a source of gameplay as well.The game needed to feel dynamic and also support the concept of trees' growth stages that was a key part of their purification abilities.
Each season was defined to have random events that could be beneficial or detrimental to the player's goals.
The events defined were as follows:
To align these events with the deeper message the game holds, a season agnostic event was added: "New Factory has been built".
In a planet where pollution is a serious threat, creating more factories increases the pollution ratio making the planet die faster.
Each season there is a chance that a new factory would be "approved (by Government)" and the game would become a little harder for a while.
Positive and negative effects had to be balanced in order to avoid a feeling of unfairness.
Being a short game, more content had to be added to make it more interesting to continue playing.
Random content generation was considered and I finally settled for a partially random strategy.
The planet's layout was divided in two. The left section holds smaller patches of land while the right section holds a larger continent.
I created various different layouts that could fit in each section and every new planet creation randomizes these layouts creating new combinations.
Additionally, the randomizer considers the following elements:
The current version of the game does not feature a difficulty progression based on clearing stages and advancing towards a game's end.
Although this kind of progression is part of the future plans for the game, there needed to be a way to increase the challenge in the game as it is now.
Currently, the difficulty is based roughly on two parameters: the pollution ratio and the probability of building a new factory each season.
Pollution ratio is inversely proportional to the amount of years left that the planet has.
Once the player beats the first try, a new option is added in the main screen that allows them to choose the lifetime remaining for the planets.
Factory construction probability is currently not modifiable and was set on a static value based on the playtesting sessions.
Waiting around from Spring to Spring to plant trees with nothing else to do during the rest of the seasons generated a very dull gameplay. It felt like an idle game without the idle games' mechanics in place.
Since every season had the same duration, one option could have been to speed up the duration of the non relevant Seasons. However, the player responsibility continued to be to only to plant 1 tree every x seconds.
To give the player something to do during the rest of the year, a new mechanic was added: Research.
The player has the ability to research an originally infertile ground. The ground is researched for a configurable number of seasons and at the end of the research period, it has a chance of becoming fertile.
Even though it doesn't sound like a lot of new things for the player to do, it added a lot more interaction, specially because the player can research every season except for Spring and the probability of failure makes them more invested in trying again.
This new mechanic had to be considered in the layouts design as well.
While in the first version of the game isolated grounds had to be avoided, in this new version creating fertile grounds surrounded by infertile but researchable grounds created little puzzles for the player to solve.
Difficulty also needed to change and the related parameters had to be tuned. On a very lucky try, all of the infertile grounds could become fertile and the game will be over very quickly, presenting no challenge at all.
First playtesters were very confused with the first versions of the game. They would start clicking away, not reading the tutorial on screen and not understanding what to do.
This was a result of a feedback lacking interface. The tutorial served its purpose but not all players read it before starting to feel confused or frustrated.
Using some of the playtesters' input, new feedback solutions were incorporated.
These simple changes made new playtesters (that had not been part of the first iteration) understand much faster all the mechanics and what they were supposed to do.
Admittedly, the UI and feedback can still use more work but, for now the message is delivered successfully.