
Memoria
Memoria is an RTS Tower Defence game that provides an unique perspective of the struggle of dementia.
Memoria takes everything that I have learned in 2D and puts it all into a single project. Features of the game include: a shop system, economy, AI behaviour trees, automated combat, unique enemy and friendly troops, an unique neuron system, and an impactful narrative system.
The basic gameplay loop includes the player gaining their primary currency both passively (every second) and actively by killing waves of dementia enemies. They then use the currency to construct different types of buildings on their neurons. These can be barracks which train their troops or defence towers which hold off the enemy from destroying their neurons. Furthermore, players can also gain a second currency by killing enemies which can then be used in the shop. On top of managing their buildings and troops, players can interact with the shop in order to have more control over their battle and make a more active impact on each wave.
Lastly, every 5 waves the player gets a narrative event which impacts the next wave. The narrative event either gives the player a type of buff or debuff which can heavily aid the player or cause the player to struggle.
My primary role in this project was programming the mechanics as well as friendly and enemy AI. This was my first time doing it and I was very proud of how it came out. Through AI Behaviour trees I was able to create a rock, paper scissors system with a more kinks to it which created unique behaviours amongst all of the troops. An example of this would be that ranged troops were nimble and when approached by a larger enemy, they would flee for 3 seconds before stopping enabling them to get in a few more hits.
Memoria is a very stat and math heavy game which meant that balancing was very important for the players overall experience. We spent the last month of the game simply letting play testers play our game and give us plenty feedback. This truly taught me the value and importance of letting people from all walks of life play your game. As developers we are stuck in a certain lens that I call the "dev lens" in which we view our game a certain way and are used to playing our games since we created it. But, the moment you let all kinds of people get hands on with your game, then you truly see the flaws and places that need to be improved in your game.
At a stage in development, Memoria was plagued with optimization issues. After a 5 minute run, players would see significant FPS drops and the longer they played, the worse it would get. This was my first true experience where I realised I needed to finally look at optimization strategies. Since this was an endless wave based game with lots of enemies I went with Object Pooling as my optimization strategy. Object Pooling is basically instantiating objects that the game will need in advance so that when the game does need them, it saves on processing power and provides players with better performance. Furthermore, apart from Object Pooling, I also made substantial changes to the enemy and friendly troop AI in order to avoid any unnecessary checks and also any lines of code that would run every tick.
The overall goal of the project was to promote awareness of the disease through an interactive experience. I also felt that I wanted to simulate an semi-realistic experience by making the game unwinnable since this was true to the disease itself.
If you would like more information, please feel free to contact me via email: maxkruger321@gmail.com
Project Gallery






