Welcome to devlog two of game development. My main focus for this week was farming, but I’ve also made a few other additions.
Farms can now be built outside the city, which will become more expensive the further away you build them. At the moment I’m just using placeholder graphics for the buildings since they are not ready yet.
Once you’ve placed a farm, you can hire a villager at the town centre, he will then walk over to the farm and start building. Once done building, he will start farming. You can then return to the farm from time to time to collect the revenue generated. You may also upgrade the farm. You will want to consider if it is cheaper to upgrade a farm, or to rather build a new one, depending where you are at in the game.
Farmers will return to the village at night, and then go back to farming early the next morning, so the further a farm is from the village the less productive the farmer will be.
I also worked on a basic farming animation:
I wanted to see, before I continue with any further development, how many characters I could generate in a game world before I start experiencing any lag. I added 1000 villagers to the world, all of them wondering around, without experiencing any lag, so I was really happy as this is much more than the game will ever need.
New Input Manager
I also added an new input manager this week, as the one from Unity is really basic, and didn’t allow me configure input keys at runtime. The main problem though was that you are not able to get the key assigned to a specific command at runtime. This was something I needed since a list of commands will be displayed at the bottom of the screen, informing the player which actions are available and which keys to press.
Support for Future Saving And Loading
One of the most important changes I added was a script that keeps track of all the variables in the game. It is really important to get this right from the beginning, as this will make loading and saving games really easy and bug free in future.
How this works is there is now a single script that tracks every update in the game, so when you want to save you can simply ask it what the state of the world is at that moment. Upon loading the reverse will happen and it will inform the rest of the game of the state of the world as it was saved.
A new Look
The game world also now has a slightly new look (I’ll probably keep experimenting as the game develops), but the style is more cartoony and has a “darker” feel than before: