Introduction
For my Game Engine Programming module this year we have been tasked to create a version of the game “Worms” with the DXTK in c++.
We have already created a prototype for how we plan to implement some of our systems by first creating it in Unity (c#).
The Alpha
My group consists of 5 members including myself so we have plenty of people to divide and allocate systems during the alpha. I was given the task of making basic gameplay features like spawning the worms correctly above the terrain and also creating teams and turn orders.
The prototype was a success and our team managed to pull together a set of systems that allowed for terrain deformation (using a method called Quadtrees) as well as moving worms that spawned on a map and where able to interact with each other. Worms had the ability to take damage and a UI in the top middle of the screen meant that you could see how many teams were playing (something you could choose between 2-4) and how much health their collective team had.
The game could also detect whether or not it had ended based on if all other team health bars were empty. The only thing that this demo did not include was a prototype system for weapons. This was caused by external team issues and because we had no backup plan to handle a team member dropping out it meant that we were out of luck.
I called the prototype a success because even with one key system missing the demo still felt good and we as a team were much more confident in what we were making. when we were planning the c++ version after the prototype we knew that DXTK would most likely make the Quadtree method much harder to implement and I decided to take up the terrain systems when making the c++ version and find a different solution to the problem.