Ahh, video games. From space invaders to Fortnite, they’re all around us. On your phone, your computer, and maybe even on your console if you have one. The point is, they’re everywhere! And today, I’m gonna take you behind the scenes.
If you don’t already know, (the odds are you probably don’t) I like to make video games. I use the Unity game engine and the C# programming language to make them. Here is a snippet of some of my code:
void Update () {
time += Time.deltaTime;
string minutes = Mathf.Floor ((time % 3600) / 60).ToString ("00");
string seconds = ((time % 60)).ToString ("00");
string milliseconds = (Mathf.Round ((time % 1) * 100) / 100).ToString();
milliseconds = milliseconds.Substring (2, milliseconds.Length - 2);
timerText.text = minutes + ":" + seconds + "." + milliseconds;
}
It looks like a bunch of random words, and I know it did for me at the start. Before I started making games with unity or processing, (another programming application) I was making games with Scratch. I used to think that actual computer programming was just ones and zeroes, as many people do, but I am here to tell you right now that it’s not. You use a programming language, such as Java, Python, or C++, to tell the computer commands, but like it’s through google translate. You take your code in your programming language, and the programming language turns that into binary for the computer to process. Honestly, programming is much easier than it looks. Luckily, a lot of game engines have tools to use so that you don’t have to start from scratch.
For example, Unity provides a physics engine for you, so that you don’t have to implement it yourself. We’ve been talking about Unity for a while, but what exactly is it? Well, unity is a game engine. Oh, you don't know what that is either? Well, a game engine is a program that you use to make a game. It provides all of the rendering (the drawing of the game), and sometimes things like physics. A lot of games are made with game engines. Games made with unity include Cuphead, Monument Valley 2, and Cities Skylines (man I would like to see the source code). I have been developing with unity for about 2 years. In these two years, I have made many prototypes, and only published 2 games, which were for game jams. (game jams are basically: make a game in 72 hrs, sorta like the 48-hour film project). I can tell you from experience that actually working on a game for a long time is very hard. You get demotivated, and it’s always really tempting to start over. Especially if you are working on the project alone. But all through all of my give-ups and start-overs, I have learned a lot about unity. I’ve even used it for a school project. So here is my process for making games:
For example, Unity provides a physics engine for you, so that you don’t have to implement it yourself. We’ve been talking about Unity for a while, but what exactly is it? Well, unity is a game engine. Oh, you don't know what that is either? Well, a game engine is a program that you use to make a game. It provides all of the rendering (the drawing of the game), and sometimes things like physics. A lot of games are made with game engines. Games made with unity include Cuphead, Monument Valley 2, and Cities Skylines (man I would like to see the source code). I have been developing with unity for about 2 years. In these two years, I have made many prototypes, and only published 2 games, which were for game jams. (game jams are basically: make a game in 72 hrs, sorta like the 48-hour film project). I can tell you from experience that actually working on a game for a long time is very hard. You get demotivated, and it’s always really tempting to start over. Especially if you are working on the project alone. But all through all of my give-ups and start-overs, I have learned a lot about unity. I’ve even used it for a school project. So here is my process for making games:
STEP 1: The Idea
This might seem like the easiest step, but coming up with game ideas is hard. Normally I come up with mine after going on a trip of some sort. Here is a tip: WRITE YOUR IDEAS DOWN! You WILL forget them!
STEP 2: The Framework
Now is the time to pop into unity, and to get some basic ideas working. This would be your basic platformer script, your inventory manager, and all your other basic scripts. Here is a tip: Get as much scripting done as you can in this step, so you don’t have to do it later.
STEP 3: The Looks
This is the step to add your art and all of your sounds. Draw up all your sprites and compose your music.
STEP 4: The Build
Now it’s finally time to start making levels and making items. Design all of your levels and put in your dialogue
STEP 5: The Mental Challenge
Don’t give up! You’re almost there to completion!
STEP 6: The Testing
Give the game to your friends and see what they think of it! Let them give you feedback and implement what you want.
STEP 7: The Finishing Touches
Add the last little things, maybe some of your friend’s suggestions.
STEP 8: POST IT!
Use itch, steam, or some other program to share your game online, and let other people give you feedback as well
STEP 9: Repeat!
Take what you learned from the last project and use it in your new project, and start the process over again.
And there you have it. My game making process. Before I go, here are some of my game making traditions:
The J-Hack
Making dev cheats is a great way to test your game further. My personal favorite tool to use is by pressing the J key to initiate whatever cheat you use. This tradition initiated when I first implemented it on scratch.
Fill in the Dummy Text
If a text doesn’t have anything in it because it will be set by a script, fill it in for something funny!
That is all I have to say for my game making process. Check out some of these links before you go!
Itch.io page (where I post my games): https://doubleblack-studios.itch.io/
Official Unity Website: unity3d.com
Game making youtubers:
∟ Blackthornprod: https://www.youtube.com/channel/UC9Z1XWw1kmnvOOFsj6Bzy2g
∟ Brackeys: https://www.youtube.com/user/Brackeys
Image Credits:
∟ C# logo: https://www.pluralsight.com/paths/csharp
∟ Unity Logo: https://commons.wikimedia.org/wiki/File:Unity_Technologies_logo.svg
Image Credits:
∟ C# logo: https://www.pluralsight.com/paths/csharp
∟ Unity Logo: https://commons.wikimedia.org/wiki/File:Unity_Technologies_logo.svg
Comment Prompt: What does the sample script snippet mean?
