Code Freeze and Post-Mortem

What went right?

Game Designer [Savankumar Patel]

The original idea for TanksKo came from pocket tanks while discussing with friends. After we finalized the concept and agreed on working all three members started their given task actively for given 2D project.
First subject for gaming to learn programming with graphics. It was a great experience to learn this subject and doing the project in group. I am a short film editor and also directs them I was having some ideas with fps and color code combinations. Developing this game gave me some more knowledge about the video depth and pixels per area in video. Also HSV calculation with RGB codes increased my knowledge in image editing. There were some math functions which we used to access in web development but this project taught us some new and useful functions which can be used in other subjects as well.
There is a particle system for creating blast effect using which effects like snowfall can also be created if needed those minor things which was easy to learn and also simple to use.
We were able to produce the same theme used in pocket tanks and tried to give a same look to the characters. Targeted product for fun was finally ready to test and play. Developing the random Biomes with height and slope was fun to play around with texture and give game a same look which we needed.

Software Engineer and Artist/ Sound Engineer [Darshit Desai]

As a software engineer, I am responsible for scene generation and managing all scenes. For that, team decided to put splash screen, title page, main scene which contains logo and team name and it also gave the option of player selection and map selection.
Main scene also gave the option of tutorial which mentions the rules to play game and also displays the controls to play game. Controls displays the keys and fire mechanism. Settings scene allows player to manage the volume of the game. We completed all parts which we decided in meeting. We discussed that we will implement health and fuel bar to the player remaining health and fuel.
After successfully implementing those features we move to add powerup features which allows player to gain health or fuel and maximize their chances to win the game. We implemented both powerup abilities for our beta version.
Our team implemented almost everything we decided in our meetings including last winning condition which shows who is the winner. For scripting we manage all scripts properly, for button manager we made separate script. Same for tanks, maps, tank behavior, we make all scripts individually and attach it with the respected prefabs.
Scripting part is little tricky where we need to use physics for calculations related tank position, generating maps which went according to discussion.
Managing the GitHub was very hard part because I never used GitHub before, same for members. So, first things we play around with GitHub and learn how to upload and do commits. In our meeting we decide that one member will manage all GitHub commits and project parts uploading responsibility on ecentennial team dropbox. Managing is assigned to Darshit Desai.
After that we decide that for working in group we need someone who fixes all meeting time and place. We assigned that to Anitha Mettu. For Code freeze and post mortem we decided to put a blog and the task assigned to Darshit Desai which goes as planned.
As an artist/ sound engineer, I am responsible for creating sprites, map designing, file structure in unity. We decided to give individual sound to all scenes such as title scene, game plying scene and main thing is fire sound for tank. We successfully completed all sound for individual items.
Next thing we decided was give user access to turn on or turn off sound completely. We implemented that button on title screen so user can easily access as per his convenience.
We also provide the slider if user wants to reduce sound little or increase a little bit. For volume slider we provide new scene which called settings. To create sprite designing I used Photoshop and Krita software. Both are incredible as we can remove the background or we can adjust the image opacity.


Project Manager and QA Tester [Anitha Mettu]

Once the most important task of forming a team, deciding which game and the concept, the next important task is to document the team ideas i.e. designing a game design document. First design document was finalized after multiple discussions which was a crucial for the team and good beginning for the new team. The research we did in finding game concept is good learning for me. This is the first gaming project for all team members so it gave us opportunity in learning game concepts and writing game design documents. Working as a team improved our team working and technical skills. When we are proceeding with game development, I have started learning the skills required to develop game.
Working with unity tool is best part of my learning as it has great features for developing game. I also learned sprite design, graphics, player and enemy movements.
Testing the game was also challenging for me. I have some experience with testing web applications but the testing a game which under development is very new to me so I did some research on methods for testing the game and also played other games, read the reviews given by others. That research gave me knowledge to proceed with game testing.
For each build, I noted down what features we were planned to develop and identified test scenarios like testing tank movements, selecting maps, player health display information to test the game. Once the build is ready I and my team members tested the game based on scenarios and identified the flaws and then we worked on fixing the identified bugs to make our game better. Overall the TanksKO is a great learning for me in terms of gaming, testing and team work.

What went wrong?

Game Designer [Savankumar Patel]

Game programming is a new technology which we were introduced to. Using unity was a challenging task at first. As we were new to this technology we tried to take some references online and tried to manipulate them which was a hard experience then we started doing home works and that gave us all the basic logic we required. While developing game there were functionalities like pause and play which we were able to apply in local desktop but it started behaving unusual after we made it live and we had to disable it. We decided that bonus like weapons, fuel, health and repair functionalities would be drop from air and made it available to the player. This functionality was left unimplemented. We also decided to put a different weapons for each tank.

Software Engineer and Artist/ Sound Engineer [Darshit Desai]

As a software engineering student unity is completely new for me. I never worked with this and in starting it was very hard to design the UI for game and also make the game fun to play. We wanted all object effects in all scenes which we were not able to do because of limited time. Decided to implement destroyable map but then we worked on map generator so we were not able to implement that. For sprite in beginning we discuss we will create all different tank with all different weapons, but after midterm there was workload from all subjects as I am taking 8 subjects this semester, it was pretty hard. We also decide to create all tile map initially. The main thing which went wrong is we took one game as reference and we were trying to make same game and we took almost all script but after that for beta version we changed completely and we made game simpler then we thought in our meetings.
For sound engineering, initial we all decided to put all different sounds for all components such as while tank movement, tank firing, player turn announcement, powerup drop and sound for that too. We decided to put different sound for each scene.


Project Manager and QA Tester [Anitha Mettu]

Learning game programming and using unity are the challenges we faced as team during initial phase. We took much time to design game document at first because few terms were new to us. While learning game development techniques and programming we referred to some online sources which was bad experience for us as a team.
The testing of a game was also a challenging task for me especially live testing of game after deploying to web as some features are working as expected in local desktop but they the behavior not same in live environment. The other challenging was integration testing game as each member was doing their part and testing it but after integrating some features gave abnormal output so we had fix them and then testing the game took a bit more time than expected.

What would you change?

Game Designer [Savankumar Patel]

In future the characters of tank can be upgraded and also there is some flaws like bomb collision with slope goes wrong due to problem in equation to derive the right slope and angle of generated object. I would like to give limited time to player so each player has limited time which would make it more fun to play.

Software Engineer and Artist/ Sound Engineer [Darshit Desai]

First thing I would like to change is the sprites of tank. I wanted to design each tank with specific sprite and design by its name. After that I would like to change map, I want tile map instead of generating map by height variance. I would also like to change the game UI and make it more user friendly such as title screen and then main screen which gives play and exit option after that player selection. I would like to implement pause and resume screen while playing game. If I get chance I would change the fire power for each tank different and each tank different ability. 

Project Manager and QA Tester [Anitha Mettu]

The future updates I would to like work on introducing customized tanks, user can design their tanks and giving more special powers to tanks, collision improvement and some graphics to collision.







To play Game Click on this link:
TanksKOhttps://darshitdesai.itch.io/asdgamestanksko