Space Station Escape
How it was made
DISCLAIMER: This guide will NOT show code, as it is intended to encourage a learning experience where you do things yourself rather than copy and paste.
STEP 1: The Planning
Arguably one of the most important steps to making a game is to properly plan out how it is going to work. You must make sure everything you are trying to achieve is possible (things you’ve done or seen done) and you need to make sure you have an interesting map and storyline for the game itself. It helps to just ignore the backstory at this stage, some random playtester can have a theory that you can “borrow” and include in your game later on. The game can be significantly more interesting if you abuse its environment to give the game unique characteristics, this was failed to be met in our game as we could’ve abused the fact that the game was based in space to add 0-gravity and have a 3D map without use of stairs. Make sure you don’t get too ambitious with your goals or you will be struggling later on in development.
STEP 2: Movement Mechanics
The movement physics is what can make the game buttery smooth or clunkier than a Peugeot. This step is important to get right if you don’t want people to puke just looking at your game. It is recommended to use velocity to move your character as it makes the movement smoother although moving the character without velocity is easier to control. If you are making a first person 3D game it is almost law to add mouse look. While mouse look is incredibly important to making a good first person game, it is difficult to make. To make mouse look you need to set the mouse cursor to a position on the screen, then detect how it moves and rotate the player accordingly. I won’t go into detail on how to make mouse look here code wise but functional mouse look is hard to find so I suggest you go onto websites like Stack Overflow and find out how to do each individual step for making mouse look.
STEP 3: Transferring Map to the Game Engine
This next step is really straight forward and doesn’t require much explanation. Just constantly alt + tab between an image of your map and the game engine, adding the walls in one at a time. Objects that have functions such as doors and keys are best to be left until you need to add them in.
STEP 4: Adding the Main Aspects of the Game
This is the step that fully depends on what you are trying to make, and because of this, I shall state how this part was done in our game. I first started out by making the beds in the bedroom and adding in pillows (these had a rigidbody component attached to them) and worked on the item pickup mechanics. I used the pillows to test this while I was making it. When I finished making the item pickup mechanics I could start working on the keys and doors. It was at this point in development when I made the red key and door. I then added a trigger hitbox to the door that the key could detect and use to delete the door when it enters it. I then needed to copy and paste the key and door a few times to make a large part of the game. Then I added the fuel cell (the glowing yellow thing) and the power unit (the thing you throw the fuel cell at). This used most of the same elements as the key so I just used the key script with a special tick box that switches its use to suit the needs of the fuel cell. I needed something special for the final part, I decided I wanted to flip gravity but I didn’t know how it would be triggered. I got lazy and decided to just have a light in another room that flips the gravity and removes the second to last door when you get close. This ended up confusing a few playtesters but I still thought that it was a good addition to the game.
STEP 5: Finishing up
This is the part where your game starts to look good. In this stage you are just fixing bugs and adding textures/sounds. A good place to get textures is textures.com. A great way to find bugs in your game is to just get a bunch of people to play the game and to be a Phillip (do random things that don’t make sense until you break the game beyond recognition).
This concludes this guide to making a game, I hope you found it very informative :)