Another solo project where I tried to do as much as possible again. This time only cleaner and ofcourse a totally different genre to keep it intresting. As you can see I’ve made a fully functional basic realtime-stratagy game on a hexbased grid. The grid is 1 big mesh which is custom editable and it can interact with the AI and player itself. As for the AI I’ve kept it simpel by just letting it attack the closest reachable enemy. Furthermore for the player I wanted him to feel like he has full controll over his strategy, so I’ve had more then a couple of iterations of testing and debugging to get the best feeling for the player without the cost of performance.

Project info:
-teamsize 1: solo
-engine: Unity
-language: C#

This was a solo project. Everything except for the art/sound is made by myself.

Unit became a big class. To be honest, I could have easily split some functions up. Basically it now takes care of all the movement related functions, attack, health and stats all in one place. Even though it’s a lot of code I myself was able to work in it without a problem. This was because of the way I structured the class and used regions to keep things split up.

Turnbased Manager:

Next up is the Turnbased Manager. This class would handle who’s turn it. For exameple, when it’s the enemy’s turn it spawn some enemies and tells all existing enemies to move. Another great example of the way I used this class is to reset required variables so units could be selected again.

HexGameUI (and input):

But do not forget the player himself. The way a player handles his interactions is a really important part of the game. I’ve rewritten this part a lot of times until it felt great. But I do have to say that it got kind of messy in the end. Another thing that I notice is my bad naming for this class. It handles all the UI functions and mouse interactions. before I realised it, I had made the whole input system in this class. This was probably due to my lack of time and understanding of the type of game I was making. Which I found out a little too late to change before the end of my semester.