So, what have I learnt throughout this whole process of making a digital version of "Zha!"?
During this whole guided learning subject, I was that one who was in charge and responsible for my own learning and making sure I met my learning goals and deadlines that were set for me.
I learnt how to be more proactive in arranging for consultations with my learning facilitator to check up on my progress as I worked on my learning contract, my game and my e-portfolio
I had to keep myself accountable on finishing tasks on time and making sure that I had at least the basics done for the game to be playable
During my time writing the code needed for the game to work, I would run into a lot of different problems that would leave me baffled.
Some difficulties I faced are:
The randomizer for the CPU's hands did not work after one of them died
The timing for the opponent to attack back was way too fast and caused a lot of confusion even to me
The code that checked whether or not all the animations were done playing did not work.
When this happened, I had to really take my time to reread through my code and go back to the drawing board to understand where the error was coming from.
I utilized the "Rubberducking" method for the first time when I was really stuck with the animation checking code and was explaining my code out loud to a friend.
I had to use the help of having UI that displayed debugging details so that I could better understand what was happening behind the scenes to analyze my problems. (It would show me the states of each hand as they were moving so that I could see where the error lies)
I think that through this subject I have learnt a lot about the different ways I can problem solve and debug my code
Making this "Zha!" game tested my existing skills on Unity and my ability to complete the task that was given to me. I made use of things we learnt in Game Development (GDEV) such as 2d sprites and 2d animation to create the different animations and to import sprites into my game.
I had to use C# for coding in Unity and had to make use of my basic coding skills in order to break down the processes into tinier parts to be worked on.
It tested me on skills I've learnt before in subjects like Current Issues and Critical Thinking (CICT) which teaches us how to do research by ensuring we look at reliable sources.
I'm happy with the overall look and aesthetics of the game. I think that the UI do a good job in giving the player feedback.
I managed to apply my research by using audio and visual cues in order to help give the player feedback in regards to gameplay (adding "zha!" voicelines and having hands flash red for example when killed)
In the end, I managed to make a playable local multiplayer game, a simple CPU to fight against the player in singleplayer mode and also with the help of the research that I did, added onto the interactivity of the game in regards to the concept of flow.
I did not manage to implement the different difficulty options for my CPU bot.
There were other features I wanted to add such as having settings to adjust things like volume and keybinds.
I wanted to add background music as well into the game.
Ultimately I could not add these features into my game because I did not have sufficient time.
I think that boils down to me failing to manage my time properly. Although I still managed to complete what I would consider the minimum viable product in regards to playability and overall execution of the game, I still find it regrettable that I could not add all these extra features that would better enhance the experience of the game.
I did not have prior experience in trying to plan a project such as this, needing to juggle it with all my other subjects. Because of this, I lacked the foresight to realise that things like setbacks and delays are unavoidable and I should plan accordingly with them in mind. Even though I did plan for some buffer time between different tasks, I greatly underestimated how badly I would be setback whenever I encountered difficulties either due to the game mechanic being harder than I thought to implement or my other responsibilities interfering with my abilities to work on guided learning.
From this guided learning experience, I now have a better insight as to my capabilities and limits.
There were definitely times where I overestimated my abilities and thought that the game mechanic would be easily implemented just for it to take longer than expected and push back my plans.
To improve I think that I should plan tasks more realistically instead of trying to push myself towards unrealistic standards of work efficiency. I should take the time to properly ask myself if I am able to do the tasks in the given timeframe and if not, adjust the difficulties/intensities of the task accordingly to my abilities.
If I were to do guided learning again, I think I would reorganise my tasks and the durations that I've given myself to do those tasks to have more leeway. Due to my planning being very packed and hectic, it was hard to properly do any time-management when I was constantly struggling to meet my goals by their supposed due dates that were set by me.
I think by reorganising the plan to be something more realistic and doable, I would be less stressed over not being able to finish my tasks in time and the overall quality of the work would be better as I don't have to do any sloppy last minute rushed work in order to complete it on time.