From recent videos and questions on forums it is quite clear that players are very interested in the Random Map Generator included in Aggressors.
To be quite honest, the Map Generator was not actually intended to be part of the vanilla release. Despite the fact that we use dynamic terrain even in the scenario setup (it is not a fixed map) as it gives much more flexibility, we didn’t consider this feature to be that interesting for players.
Moreover, Map Generator would require a great deal of additional work and we had plenty of other things on top of our to-do list.
When alpha testing started and feedback and suggestions started flowing in, I was really taken aback by the staggering number of requests to add a custom Map Generator. I was expecting that players would prefer playing the historical scenario rather than a random map.
And so, as we had done so many times before, we re-thought our priorities and added this feature into our schedule. There was already a raw Map Generator partially implemented but it was a separate tool not incorporated into the game. It was also not that user-friendly and not modular enough to meet the standards we had in mind.
The first phase of the project was mapping out the games already out there. I was looking for the right way to do this, to find the key settings for the map generator and to identify pitfalls of other map generators and how to avoid them. After a couple of months of development the first version of the map generator was ready.
We used a number of standard settings such as map size (ranging from tiny to huge world), map type (ratio between water and land mass), climate type (hospitable to barren) or density of population (how crowded the world is and the distance between players). But that was just the beginning.
From my perspective the biggest issue in the majority of map generators for other games is the fact that they tend to force you to really long and boring early phases once you have begun playing. You have to hit "end turn" around fifty times to eventually get to develop some infrastructure and build a couple of units to be able to actually play and enjoy the game. This was a no-go for me. I decided early on that we needed to add a Development setting allowing players to choose if they want to start with a lonely nomad unit roaming the unknown world or if they would rather start as a crowned king of a state that stands on solid foundations like cities, roads, fields for farming and few trained military units to build upon.
There are five different options to satisfy everyone’s taste.
But soon enough we realized that the basic settings are not quite enough. The worlds we generated were great, some of the maps even surpassing our expectations but we needed more options to modify the gameplay itself.
Some were easy to implement, for example Resource abundance that allows the player to configure how many mines will be available on the map which affects the player’s ability to develop as well as how fast and tough the conflicts over resources will be. Hand in hand with this setting goes the Player’s resource abundance which sets the resources stockpiles the player has at the beginning of the game.
Similarly, the Diplomatic Relations setting defines how (un)friendly neighboring nations will be, and the Independent Cities setting determines the number of standalone independent neutral cities on the map.
Players can also specify which victory conditions they want in their game - overall victory, military superiority, technological dominance and country development.
All the above settings were added to the Map Generator in a natural process following the logic of any world creator. However, what makes every single game fun is the way it unfolds in a different direction every time and forces players to adjust their strategy to current conditions. Sometimes you get the upper hand, yet another time you struggle to keep up with other forces around you.
There are two settings that determine how fair the game will be, determining whether or not one between the player and AI opponents will start in a more powerful position.
The Game Balance setting adjusts starting conditions. Set to max, all players (human and AI) will have similar starting point in terms of number of military units, settlers and cities. Set to minimum, the development span will be quite big – some nations will be already large developed empires whereas others will have to make do with just a city-state.
However, this setting does not really say on which end you going to end up. For this, there is the Player Advantage setting which allows you to choose what kind advantage over all other players you will have. You can decide to create a new world with you leading a mighty and established empire surrounded by younger tribes, or you can take up the challenge and start as the very last runner in the conquest for supremacy. The choice is yours, you can be either Goliath or David.
That said, designing the Map Generator and all these settings was not the most difficult part. The challenge was in finding the right balance. We invested a huge amount of time into balancing so that even if you draw the shortest straw, you will be able to survive at least few dozens of turns to prove your worth.
Now back to the map: there is still one thing left to mention. The historical setup has a contour map that we created tile by tile to make the world feel real. But for the randomly generated map we had to come up with a different solution to have nice high mountain ranges, deep river valleys and open bays surrounded by beaches created automatically from the map.
We designed an algorithm that detects the different terrain types and then creates a sort of contour map based on these.
To tickle your fancy, I will show you couple of screenshots that we took during testing but to see what the map generator can do, you will need to try it on your own.
The release date is around the corner. I really enjoyed writing these diaries because I had an opportunity to look back and recollect our long journey. It was full of headaches, doubts and sleepless nights but on the other hand it has been an extremely enjoyable and intriguing ride.
I want to thank you for joining me in this nostalgia and I can only invite you to explore the depth of Aggressors on your own. What else can I say? I hope you’ll have as much fun playing Aggressors as I still have, even after 10 years of development!