Inspired by resource management simulators I wanted to try to use that genre as a starting point for the game. Early on in development I was focused on getting the ENERGY side of the simulation working. Where I took inspiration from real life renewable resource sources to develop an energy grid in the game. After getting the energy portion complete I focused on how I can include the CLIMATE theme into my game. In order to accomplish this when an object is placed, depending on that object, a portion of the Earth's health is taken away. Over time the Earth's health bar returns to full health but if the player allows the Earth's health to reach zero....IT'S GAME OVER.
For this project I wanted to learn how to create a city builder game using the Unity Game Engine.
A big part of creating a city builder game is the User Interface. The UI allows the player to select a particular building in order to place somewhere in the game. As well as giving the player information about how well they are doing or not doing.
Learning how to setup buttons for the player to use became a big part of this project so much that I thought necessary to write down my workflow in order to prevent any confusion when developing a new object for the game.
Another part of UI that I learned which was useful in my game were the tool tips that pop up when the mouse hovers over a button.
Finally, the most important part of UI in a video game is the health and energy bar, which I learned how to do for this project.
Besides the User Interface, object movement was a little tricky instead of allowing the objects to moves freely, I wanted to lock the movement based on a grid in order to allow players to create an orderly array of objects.
A subtle part of game development is knowing how to operate the camera in order for the player to enjoy and not feel bothered by it's movement. I learned from other city builder games what feels natural when operating the camera and implemented them into my game.
How It Was Built
Everything in this game used Unity Game Engine. Some assets were gathered from Unity's Asset store (sound, textures, icons, API). All programming was done in C#.
- Creating buttons to instantiate objects into game
- Object grid movement
- Figuring out how to incorporate Climate into my game(Last thing that was added)
- Camera operations