UNSC Faction Warfare was an indie game that went into development that used the Halo IP, fans from a previous project and aimed to fill a gap in the RTS Halo market by providing a free to play game.
Note: I am going to start writing a new series of articles surrounding projects that were never completed, their lifetimes, their demise, and the lessons learnt around them. I welcome readers to contribute their own under this same title to help enlighten others to the work they have done and also the lessons learnt.
The Vanguard of the Great Journey
One of my more recent big projects that sadly never really felt the light of day, was UNSC Faction Warfare; a follow up for a prototype web based game, UNSC Warfare, that I made a few years earlier that aimed to please and make a real splash in the RTS marketplace and utilise the powerful Halo universe player base to launch itself into popularity.
It came from the ashes of what I had learnt from a previous project that was abandoned, and would act as a vessel for all of the new knowledge that had been collected since the first project. It was time for a new version, one that would succeed the original, and even bring in additional players from the Halo Wars series, who were desperate for a new game. I was also keen to get involved with a proper 3D Game that could help me get more game development expertise, and this would, much like it’s predecessor provide me an avenue to learn what was necessary.
Much like Halo Wars the game would operate as an RTS but with similar customisation mechanics that were present in UNSC Warfare. Work began on the project towards the middle of 2015.
However, unbeknownst to me, a new Halo Wars soon to be announced in August of that year, a few months after this project started. It went on to be released earlier this year, and it’s announcement sadly acted as a complete stopping force for the project.That said, with the lack of that knowledge, the project started and moved fast.
Building the Specification
Unlike any other projects I had started, I actually built out a game design document, with all of the features that would be necessary for the first prototype, breaking up the tasks as well as who would take what with updates. You could think of it as a rudimentary JIRA board to get the ball rolling.
The opening artwork on this article was one of the many pieces of fantastic concept art that were done for the game. Another area where I went in a different direction was to utilise the bustling indie gaming community to put together a team to assist on the project. It consisted of 3 concept artists across varying experience levels and 3 modellers, again with similar levels of experience and a graphic designer for in game UI and marketing material.
One thing I learnt early on was that there is no lack of talent out there that wants to be part of something. I found people keen to join the project at community halo sites, 3D Modeller forums, message boards and of course a variety of indie game developer groups on Facebook.
I would work as the main programmer to get the infrastructure setup for the server side, and the main game mechanics and following this I planned on getting multiple other developers involved later in the process. In hindsight this would be one of the biggest regrets; I took on a lot of works on the programming side and overloaded myself whilst spreading out the workload on the content side.
One of my main, and completely irrational fears was that someone might take the code and then beat me to market, which again is somewhat ridiculous in this scene. That lack of trust ultimately prevented many things happening sooner and caused various problems internally.
Our main communication method for the team was a private Facebook group, and I had insisted on posting updates once a week and keeping our spreadsheet and game design document up to date. Content flowed out from all corners of the project and it actually felt like a real entity. Whilst the team worked on preparing content for consumption on the client side of things I worked on the API side to ensure there was some foundation to work with.
As far as progress was made I built the server side component with relative ease taking from lessons learnt in other projects and my day to day job. The API would go on to handle all of the shop requests, user data, marketplace, armory and leader-boards. I used .NET for the backend as it was what I was familiar with and it helped to interface directly with the Unity side. A full account system was in place a long with inventory and buying and selling of units by the time client side development started.
The actual client code had enough to communicate with the API around logging in, and buying units as well as starting a generic mission in a blank level. As far as gameplay was concered individual and grouped unit control was done, as well as an RTS Camera, and 2 different types of movement AI was ready; one slow moving and one fast with the correct physics.
With everything moving in the right direction it was more a matter of making sure there was still enough to keep everyone invested. At times the team seemed a bit despondent, or were working on other projects, which is entirely acceptable, however it became an issue when one of us wasn’t able to progress. We waited months for the first terrain piece to be complete and in the end the person responsible just disappeared and never completed it. When working with people for free, for something that also won’t generate any income it’s tough to try and maintain that interest, but I think at the same time the people that do stay around are passionate.
Losing the battle, but winning the war
It was a real shame when the Halo Wars 2 announcement was made; it hit me hard after a previous project failure (which I will do a write up about soon in this same series). I was invested in both the project itself, as well as the team, and when the decision was finally made to shut it down a lot of great content that was created on all sides from models, concept art and logos that would build excitement for the game and drive the direction it took, became stagnant and unused.
Ultimately the entire process was a fantastic learning experience and went on to allow me to do more prototypes and improve upon the technology I had created. I often go through the game files, the Facebook group and the artwork to remind myself of what it was, how far it came and ultimately, as a lesson for next time.
I hope you enjoyed reading this article, and I look forward to sharing more stories of projects both successful and incomplete in the future.
If you enjoyed reading the article, share it, recommend it, like it! It means a lot!
Had similar stories, post below! I look forward to seeing comments and hearing your stories!
Follow me on Twitter or check out my GitHub for developer related nonsense and other ramblings: