I know that it’s been less than a week since my last dev blog on Small Gods, but I’ve finally gotten around to making that video I promised you and I’ve added some stuff, too. As a result, I felt like now is as good a time as any to do an update on where the game stands now. So without further adieu, let’s talk about what’s changed.
Happiness is no longer treated in the same manner as health is. Instead of a continuous value that will climb up to a maximum value should certain preconditions be met, happiness increases in discrete chunks. That is to say, if an AI has 10 food, 50 energy, and 100 health, and the threshold values for unhappiness to set in are 25, 25, and 50 respectively, they will only have 50 happiness as they are hungry but they aren’t exhausted or sick.
Additionally, should happiness fall to 0, the emigration behaviour for the player’s worshippers will set in
Put simply, the player’s worshippers will now emigrate should they remain unhappy for too long due to hunger, illness, and exhaustion. When the worshippers decide to emigrate, a coroutine will activate that, after a set period of time, changes the AI’s state to that of ‘LeavingCity’ and tells them to move to the magical portal that brought them to the player’s city. When they get close enough to the portal they’re then removed by the system and the player’s city now lacks one of its citizens.
In the future, I hope to add buildable civic improvements that will give each citizen a boost to their happiness up to a maximum value (I don’t want statues to be able to replace food).
Rotating a building before placement does not change how the terrain flattening occurs. It’s obvious when you see it but essentially the flattening becomes misplaced so the flattened terrain will not match the building placement.
Terrain may also be flattened to a point far below the building-site. I’ve not noticed any issues in regards to AI getting confused, but it looks ugly and I’ll need to fix it.
Terrain still doesn’t flatten smoothly. 90-degree walls are pretty common when a building is placed and that really slows down the AI as the movement system seems to determine the speed of the AI by taking into account the angle they’re attempting to climb.
Civic Happiness Improvements
As mentioned in the happiness section of the new additions section, I’m planning to add civic happiness improvements that’ll add a degree of happiness to all AI living and/or working within a certain radius of the improvement. My initial thoughts are to make it so that only the most impressive monument adds happiness and that the happiness doesn’t stack. That way, if there are two monuments within effect range of a worshipper and one applies 10 happiness and the other applies 15, then only 15 happiness will be added to the worshipper.
Smooth Terrain Flattening
This is still really important. Outside of making things look prettier, it’ll also make it easier for the AI to navigate the terrain.
UI for Task Completion Status
As I have a (very basic) mission editor I now need a way to tell players the status of their objectives. This will likely be a very simple task compared to my other ones as I’ll be pulling info straight from the mission editor’s animation component and have a decent understanding of what’ll be required. My biggest issue will likely be genericizing the code so that I can have an arbitrary number of variables (each of different types) pulled from the editor
As you can see, there’s a whole lot of stuff left for me to do but Small Gods is really coming together and beginning to resemble a proper game. Now, as I promised you in the introduction here’s the latest video of Small Gods in action. I hope you enjoy it, and I’ll see you later.