Transmutation — Self Evaluation

What I did Well

This was the first time being the project lead and I was happy with the way we worked as a team. So this was my first time where I was actually making decisions rather than going with the flow. I think this was the biggest change that I had to go through this trimester. I think except for the initial stages of the project I panned out the decisions I made pretty well such as cutting the scope we originally had by literally 75%. I decided that we still needed to stick with Radiation as our core theme and build the game around it. Also I didn’t want to build the game around a pre-defined story and decided to build the game first which in turn developed a story that made sense. In terms of communication — I think the group had a pretty systematic way of communication with each other. We always set a time for the comms to happen and all of us made sure that we were there at Discord to brainstorm about ideas and get the work done. I was also in communication with our audio collaborators which I think pretty smoothly as we often met in campus and discussed what kind of sounds we needed and what changes needed to be done if any. I felt that time management was also good for me in this scenario. I managed to deliver whatever was required off me on time so that the team could look at it and give me feedback on what more could be done on it.

I learnt a lot of new things while developing this game. The AI that I implemented for the game may not be the best way to do it but this was a system that worked for our game. From then onwards I have been researching a lot on how to develop AI differently. I have been reading a lot of articles on why not to use Finite State Machines I will be working on implementing such an AI in the future.

Articles I read

I also managed to do the mapping of buttons from keyboard to a controller. This was a little painful at the start but once I understood the methodology behind it, I was easily able to do it. Also through all my code, I tried making them as efficient as possible and made sure that there were no code that kept constantly repeating or even any sort of redundant code.

I also learnt the basics of using Fmod. The implementation of this was not completely satisfactory but I was able to add the sounds from this and make somehow make it work.

What I Didn’t do so well!

At the start of the project I was not quick enough to make decisions and this lead to our project being hugely over scoped. At the first we were thinking of building a 15 min game play. I don’t know what I was thinking at that point of time. Only through this I have now understood how hard is it to make decisions not knowing what’s right or wrong. Though my coding was efficient this time, I could have easily added more comments to my code. I did add them in places where I felt I would need it. At that point of time I didn’t think about others who would read my code and that was big mistake. In the future, I would literally comment before coding because the code is just not for one person but the entire team and possibly other people as well. At the start I had a few issues while using Source Control. This was purely my fault. Instead of stashing the changes I made, I pushed my changes directly. This was a big mistake as this broke my scene as well as source tree. I had to literally create a new account so that I could redo all the changes. This consumed a lot of my time.

Another thing that I could have done better is the implementation of sounds using Fmod. This was a new software for me and I was limited by my knowledge. I wanted to implement stuff like change in intensity with time which I couldn’t figure out. We also had a ‘Swoosh’ sound, I wanted to implement this whenever the attack button is pressed, but that didn’t end up working and therefore had to add the sound only when it collided with the mutant. For the future, as I now know sounds are crucial, I will be looking up for different tutorials for using Fmod through scripts and make sure that I implement this the next time I build a game.