Carbon Conquest (Unity3D/C#)

March 2013 – May 2013 | Project Length: 3 monthsMainMenu

A 3D RTS developed in Unity3D using C#.

Project Goals & Requirements

Create a polished, playable real-time strategy (RTS) game. Gameplay would focus on macro-management rather than micro. By the end of the school year, the game should have a playable tutorial level and a playable skirmish map. The game was developed for our team lead’s graduate capstone, in which he wanted to build an AI that learns as it plays.

Personal Accomplishments

  • Implemented fog of war
  • Implemented minimap
  • Developed event-based animation subsystem
  • Integrated interface artwork from artists
  • Researched networking techniques (but, due to time and scope, did not implement)

Lessons Learned

  • Though Unity development has a large community, RTSes in particular aren’t that common. RTS features like Fog of War don’t really have good approaches hinted to in discussion forums. Thankfully, due to having a team of 7 people, we had enough teammates to bounce ideas off of!
  • Unity mostly works well in a team environment, but we kept having issues with bug regressions, primarily due to prefab work being overwritten.
  • Using a game engine makes things a lot easier. The project initially began using C++ and Ogre3D; however, most of the time invested was spent re-implementing basic features without a chance to actually work on gameplay. Our project lead decided to try out Unity. After one week of solo development in Unity, the game was further along than what the entire team had accomplished in a month of C++ development time. We switched the game over to Unity3D and C# quickly afterward.
  • We wanted to implement networked gameplay; however, implementation would be (obviously) non-trivial. I researched different techniques for two weeks, but without an easy way to scope it down, we put it on hold.
  • We had to balance our schedule for two drastically different deadlines: presenting the project at the end of the school year, and (for some team members) eventually releasing the game commercially long after. As mentioned above, we effectively scrapped networking for the early deadline. Freeing another developer up to work on features and polish made a massive difference in our final presentation; however, for the team working long-term, it would’ve been better to start on it early.


Source code: Not publicly available, sorry! Some of the team is attempting to turn it into a commercial project.


Main menu screenshot Map selection screen First screenshot of tutorial map Second screenshot of tutorial map Third screenshot of tutorial map Win screen Lose screen Credits screen