I started out wanting to explore AI navigation and pathfinding using Unity's AI. I settled on a time management style mechanic since it fit nicely with navigating around a scene.
The idea of a sparking robot working with fuel was the inspiration for the concept.
I spent about 26 hours working on this game.
Learn more about AI - navigation
Learn to design, program and tune time management gameplay
One week to complete - shooting for less than 24 - 36 hours.
The first thing I always do is to get the basic building blocks for the core mechanic running so I can play around with it to see if it is or has the potential to be fun. Time management games like Diner Dash and Overcooked rely on a fast paced coordination of game elements so that was the first thing I tried to create.
I created a simple environment with a couple of stations to pick up and deliver objects. At first I set up the environment with lots of obstacles the character needed to navigate around, but quickly realized that took away from the core objective of coordinating many elements. Once I had the basic game loop working, I started playing with power ups to make it more interesting and provide additional ways to play and master the game.
The main programming challenge is to create a system for spawning the resources needed - in this case empty fuel cells - and handling how the robot picks up the battery, drops it off to charge, picks it up again when charged, then drops it off at the ship. I spend the bulk of my time working on this system and setting up parameters that I can tune.
I started adding the system and user interfaces needed to create a full game loop. This included the game timer, scoring and elements like the ship arriving and departing.
Tuning the spawn rates and and timing the power ups was the largest block of time spent on the game.
Once the core game play felt good, I started adding materials and art assets including visual effects and audio.
It's too easy in the beginning to want to add as many game elements and mechanics, but it's best to start with one simple mechanics and make it work before adding in new ones.
Doing one task over and over can get boring in a hurry, layering in new tasks as the player learns each game mechanic can make the game more engaging.
Fixing the inevitable bugs that crop up is part of the process. Especially, early on as you are focused on gameplay and not on good programming techniques.
It's too easy and compelling to give up early in the process. Some ideas don't work and you have to start over. Other times you get frustrated that things don't work or that there is too much to do. Just keep working and trying stuff and small victories will keep building up. The more you chip away, the more the game will start to gel.
Games are meant to be fun so it makes sense you should have fun making them! Take regular breaks and stop to think about what you are doing - creating something unique and personal.
What elements can we build on to make the game more interesting and engaging?