Hello everyone! It’s been a long time since we updated our devlog. We made big changes to the game in the last update. We moved the game to version 2.0 instead of 1.20 because of how much the game changed.
One of the reasons we decided to make so many changes is that we got greenlighted for steam. Originally we were going to release the same version we had on mobile on steam, with some minor modifications. But as we received feedback from the players, we realized that we had to adjust the game to make it more fun.
When we started Nanuleu, the basic concept was this: A game that the player had to try many times to finally win. Then try to get a higher score and finally move on to another game. But players weren’t having much fun and they were asking for more content. So we decided to add more maps to the game and to redesign some of the core mechanics.
Almost all the changes to the gameplay and mechanics were made to decrease the difficulty and to make the game easier to learn and play.
We decided to make maps smaller and to have less resources, we also increased the speed at which the resource are gathered to speed up the game.
We decreased the number of Life Trees from 5 to 4. This helped us to balance the map as sometimes there were some Life Trees too close or too far from one another. It also helped to unlock the War Tree faster.
We adjusted the times and values on many of the units and structures to make the gameplay less frustrating.
We added automatic root generation, this enables the player to plant trees in distant tiles without having to plant the roots one by one.
The game only had one mode with 3 difficulties, which were Apprentice, Warrior and Sage. When the player started the game, Apprentice and Warrior were already unlocked so they could choose to play any of them. The sage mode was unlocked after winning Warrior difficulty.
All difficulties are similar in that they have the same objective. The main difference are the times and locations in which the invaders appear.
We tried to come up with more variations for the same objective but we couldn’t think of anything that would make it feel like a new challenge. So we decided to add new objectives in the form of two new modes.
We also decided to only have Warrior and Sage difficulties for the new modes, the reason behind this is that apprentice was designed to be a tutorial and there wasn’t a need for a tutorial for the new modes.
We ended with three total game modes:
First Contact: This is the original mode. The invaders appear in the borders of the map and make their way to the center from different directions.
Apprentice: We changed this difficulty to be a tutorial map. It is very easy to win and the player learns all the core mechanics. There are only 2 War Trees and they don’t expand. In this difficulty the player only needs to plant 2 Life Trees to unlock the War Tree.
Warrior: This is the original mode. Dark War Trees appear in 4 locations instead of the original 8 and expand at a fixed rate.
Sage: Dark War Trees appear in 8 locations and the altars are harder to protect due to changes in the map.
Invasion: In this mode the invaders come from the north and they have infected the land, which damages any friendly unit standing on it. We added special tiles in which the player can plant protectors, Once a protector is planted the surrounding land is cleansed and the warriors can attack the invaders without taking damage from the infected land.
Warrior: There is a single path to the location where the invaders spawn.
Sage: There are two paths to the location where the invaders spawn.
CounterAttack: In this mode the enemy is on the center and the player starts in one of the corners. We wanted the player to feel like this was the same scenario of the First Contact mode, but this time the roles are inverted. The objective is to attack the enemy from different directions. We added the Dark Life Tree and Dark Protectors to the enemy defenses. The Dark Life Tree casts a blast the first time it takes damage, this blast kills all the player’s warriors on the map.
At the start of the game there is only one path to the center. When the player plants a Life Tree on a corner, a new path to the center appears. The paths have infected land and the player has to plant protectors in the special tiles to clear a way for the warriors.
Warrior: The only paths leading to the center appear in the corners when a Life Tree is planted.
Sage: There are more paths to the center at the start of the game, this paths must be protected or the enemy will attack the player’s trees.
To be able to quickly change and test new maps, we decided to use a different method for generating maps.
We created small images, 29 x 29, which is the tile size of the full map. In this images we placed different colors on each pixel for each game element.
For each map we used two images, one for the land or terrain and one for the special tiles. This is how the images look for the CounterAttack – Sage map.
We read the images and go through them pixel by pixel, creating the corresponding tiles. After that we generate the resources with procedural generation and show only the necessary tiles.
One of the things our players told us, when they tried the game on PC, was that the Tree menu was designed for mobile and that it required too many clicks in order to plant each tree. So we decided to change it for the PC version.
The way it works in mobile is that when the player taps a button in the menu, it show the tree description, and then another tap on the button is required to plan the tree. On PC we show the description when the mouse cursor hovers over the button, and then only one click is required to plant the tree.
Another thing that we changed for the PC version was the scale of the UI. On mobile everything has to be big and easy to read, because the screen is small, but in PC there is more space and screens are usually bigger.
To achieve this we decided to have 2 different UIs, or canvas as they are called on Unity. So we only have to choose which one to show depending on the platform. We also added the ability to change to the mobile UI for players that wish to use a touch screen to play the game.
As we moved away from the original idea that high scores would be a very important part of the game, we felt that the score screen still made a big deal about high scores. So we removed the detail numbers and instead we added a text message that tells a little part of the story. The player can still see the detail information if they want to by clicking on the score.
We also decided to add the current goal reminder again under the resource counters. We felt that sometimes players would forget what they were doing or didn’t pay attention at the right time. So this way the player always knows what is the next step.
New Path Finding
In the original game, all the tiles had a direct path to the center and that made pathfinding really easy. When we added the new modes and created the new maps, there were tiles that didn’t have a direct path to the center. So we changed the way our pathfinding works. We decided to use an algorithm called A*, and with this, the units were able to travel through all the map without getting stuck.
After using the algorithm for the units, we used it for the tree planting. Originally the player had to plant the roots one by one until they reached the tile where they wanted to plant the tree, but this quickly became very tedious and boring. So now when the player selects a tile, a path to the closest friendly structure is found and the price of all the roots on the path is added to the price of the tree. This gives the player more free time to think of what to do next or to move to another location on the map.
When the mouse cursor reaches the borders of the screen, the map moves in that direction. We noticed that a lot of strategy games use this feature so we decided to add it to the game. The original dragging of the map and moving with arrows is also available.
One thing that we noticed when watching videos of people playing the game, was that sometimes their trees were under attack and they wouldn’t realize it until it was too late. So we changed the way our damage alerts work.
The alerts now show whenever a tree takes damage, except for Protectors because they are under constant attack and the alerts became annoying. When the health of a Protector reaches certain percent of life, then the alert is shown.
We added two more songs to the game, one for each new mode. So now there are three songs in total in the game.
Testing the game to polish the mechanics and gameplay took the longest time of the development of the game. We have played the game so many times that we have made many mistakes judging the difficulty of the game.
Before releasing on steam we shared a beta version to anyone that wanted to play the game. We sent them a survey with questions about the game, how they felt it, if they liked, if there were any bugs, and so on. This really helped us a lot to fix the game and to make the final adjustments.
Please leave any comments or questions and we will be happy to answer.