They say that it is always best to learn by doing, like how building this site has taught me more about PHP or WordPress than I ever learned in school. That has proven to be true again because working on this game has taught me an immense deal about C#, using Unity3D, and programming in general. I have been coming up with clever solutions to issues that come up and I am feeling pretty comfortable working on this project now. According to our Git repository, we started working on this game back in September 2015 and we have really made a lot of progress. I also have a new found appreciation for game developers on a whole. I always knew that making a video game took a lot of work. But now I can see that even making a “simple” game, like the one I am working on, still requires an immense amount of work.
When we first started this project, it felt very rushed and unfocused; everybody was working at everything in an effort to make any sort of forward progress. As the weeks slowly turned into months, the team started to learn what their talents are, and we managed to slide into more defined roles in the project. Currently, Aaron has been doing the majority of concept illustrations, and has begun to draw the artwork that we would like to turn into sprites for use in the game. Dave originally started out as a programmer, but through working on this project he learned that he has an aptitude towards graphics design and has been working on digitizing the work that Aaron provides, as well as working on his own original art. Ryan claims that he has fallen into the role of a support programmer, but I insist that he is still the lead programmer. While I have done the majority of the development, he has developed most of the really complicated features, the ones that I have not been able to do on my own.
My original idea for the game, pitched in Part One, has remained largely intact. This Mega Man inspired endless runner was originally pitched to the group as having somewhere between 5-6 different stages that will have a theme and a theme appropriate boss. Once the boss for each stage has been defeated the player will unlock a power up, and the level will then transform to an endless mode; where the player can run endlessly in the level to achieve a high score instead of trying to defeat a boss. Ryan suggested that we try to add a narrative to the game using assets within the world to give the player little hints of what is happening instead of relying on dialog and exposition dumps. All sorts of little winks and nods to Mega Man will also be scattered through the game.
As this is our first real video game project we have spent a lot of time trying to educate ourselves on how Unity works, and the Unity community, and Unity themselves, have been great resources for learning what we want to do. I am blown away at just how well thought out Unity is as a game design tool. Every single time I have spoken to Ryan about trying to add a feature into our game, after doing a little bit of googling we find that Unity has already thought of a solution and implemented it as a part of the editor/IDE. The staff at Unity have several videos on their site that cover a wide range of subjects right from building a very simple endless runner from scratch to data persistence, and beyond. If you can think of a small little feature to add, chances are that there may be a video on the Unity3d website explaining how to put it into your game.
As a quick example, the first level that we are working on inside of our game is a forest/jungle level, and I thought it would be cool if one of the traps that the player needed to dodge would be a log tied to a vine that swings at you, kind of like a battering ram, or the logs that the Ewok’s use do destroy an AT-ST at the battle of Endor. Not only is the perfect tool already a part of unity but there was a video tutorial explaining how to implement it in your game, with possible ideas of how to use it as a feature. It took a little bit of work, but I managed to get the exact thing that I had seen in my mind’s eye working in our game and the results speak for themselves.
Currently, we do not have a lot of custom artwork in the game and we are using a lot of placeholder artwork to test features. Who would have thought that building Hundreds (possibly thousands) of sprites for a game would take a lot of time. I do not envy Dave and Aaron for the job that they have fallen into, but I do respect the hell out of them. Some of Aaron’s concept drawings for ideas for enemies are really cool. He is a really talented artist and does not give himself enough credit, and I hope that seeing his creations brought to life inside of this game will give him the confidence to keep pushing forward with this crazy idea of mine.
I hope to talk more about some of the issues we have had with scripting in the next post as I have some things to complain about.