“How Do I Start Making Games?”

Two Glass Hams took a trip down to a local high school and encouraged the kids there to express themselves by making video games! This blog post is going to feature a lot of content about how to start making games.

Troy, our sound designer, is a board member for a nonprofit called The Let’s Play Program. In a nutshell, it’s a program that explores Social and Emotional Learning with kids through a medium they probably enjoy a lot: video games. It’s pretty neat and you should read more about it. Through that connection, Two Glass Hams was given the opportunity to speak with high school kids about game development. We also brought an HTC Vive and let the kids play Ashi Wash, which was a lot of fun. Most of them had never played a VR game before, so we were happy to share that experience.

Two Glass Hams at school

The biggest point we tried to emphasize was that they could go home and start making games that afternoon. There are so many great tools out there that are free or very cheap and there so so so many tutorials and guides for learning how to use those tools. So in this blog post we’re going to share some of the information we discussed with the school. This is going to be a brief overview of the tools you can use to start making neat games yourself!

Game engines:

A game engine is the most fundamental tool used in modern game development. It’s sort of a workspace where you bring all the assets you’ve created and then put them all together to make a game. At Two Glass Hams, we tend to make 3D games and there two game engines that really really popular for 3D games:

Unity and Unreal

If you’re just starting out, Unity and Unreal are pretty similar. Both:

  • are free (until you start making money selling your games)
  • can create both 3D and 2D games
  • support many platforms (you’ll probably start with PC/Mac/Linux or iOS/Android)
  • have asset stores
  • have been used to create well known games you’ve probably played
  • have large active communities

The communities are important because as you start learning a new game engine, you’ll probably need some kind of guide and you will undoubtedly have several questions. A large community means that there will be many video tutorials and forums where people discuss issues they are having.

So, what are the differences between Unity and Unreal?

  • Computer power
    A big difference for me is that Unity is easier to run on less powerful computers. I have two computers, a really old laptop and decent desktop. The old laptop will run simple Unity projects fine, which allows me to make games in a coffee shop or while traveling. Unreal, however, is more of a system hog and is unusable on my laptop, so I only work in Unreal from my desktop computer at home. Your experience may vary, so it doesn’t hurt to try both of them out on your computer and compare how well they run for you.
  • The asset stores/marketplaces
    Both engines have an online store where you can buy various bits of content to use in your game. This can be 3D character models, background music, complex tools that make certain tasks easier, or lots of other stuff. If you’re just starting out, Unity’s asset store is a great resource. Unreal’s Marketplace is good, too, but it often costs a bit more and doesn’t quite compare to the variety of the Unity store.
  • Scripting
    Scripts are the bits of code that are written to tell things what to do. So before your character can jump, you need write a little script that says when the player presses the jump button, the character will go up in the air. The scripting languages in Unity and Unreal serve the same function, but the scripting languages they use are different.
    Unity gives you the choice of using C# or Javascript (C# seems a little more popular). Unreal uses C++ and a proprietary language called Blueprints, a “visual scripting” language. Blueprints are pretty neat in that they give you a visual way of seeing how all the logic connects to one another. It’s often easier for people coming from a non-programming background (like artists, sound designers, writers, or level designers) to create or edit blueprints instead of typical text-only scripts. Here, let me show you two pictures (taken from this helpful article by Harrison Barton):

    C# script in Unity
    C# script in Unity
    Blueprint in Unreal
    Blueprint in Unreal

    If you really love the idea of visual scripting, I recommend Unreal. It’s a powerful system and is built right into the engine. If you want visual scripting in Unity, you can download third party visual scripting tools from the asset store, the most popular being Playmaker.

Two Glass Hams uses Unreal Engine 4, and we like it bunches.

Twine and Interactive Fiction

Another “game engine” to check out is Twine. It’s used for making interactive fiction and is probably the easiest tool to learn on this list. It’s well documented and has a pretty large, active community so you’ll be able to find help if you need it. It’s simple enough that you can write your first short story in an afternoon, but powerful enough to let you build complex game systems. The finished games play in internet browsers, so it’s easy to share your stories with friends and the world. I like Twine a lot and think it’s a great first step into game development. Other similar tools you might want to check out are Ink and Inform. And if you want to create Visual Novels you should definitely check out Ren’Py.

There are many other game engines to check out, too. I haven’t used these game engines much or at all, but they’re all accessible and people have made great games with them:

Art

So that’s game engines out of the way. What about art?
Well, if you’re not an artist, you can pull in other folks’ art, especially if you’re working in 2D. BE SURE YOU HAVE THE RIGHT TO USE IT, THOUGH. You can’t just do a google image search and grab things that look neat – that’s illegal. What you can do is pay for the right to use art, use art that’s in the public domain (usually art that’s very old – Aviary Attorney did this well), or find art that explicitly grants you permission to use it for free.
Here are some resources where you can find art assets:

If you’re an artist or are interested in creating your own art, check out these free or affordable tools:

Audio

Don’t forget audio! Like art, if you’re not a sound designer or musician, there are a lot of places to download sound effects and music for free or for cheap. Also like art, you can’t just use a pop song you own or use any ol’ sound you found from Google. You must explicitly have the right to use it. Here are some resources for you to check out:

If you need to edit some of the free audio you’ve found or you want to start creating your own audio, check out these tools:

  • OcenAudio (simple, easy to use audio editing tool)
  • Audacity (kind of clunky to use, but free and powerful audio editing tool)
  • Reaper (fully featured Digital Audio Workstation)

All the tools mentioned above should have plenty of tutorials and documentation to get you started. Start by checking their official websites for tutorials and forums, and after that search YouTube for video tutorials or search Google for solutions to problems you’re having.

Start Making Games!

So now you’ve got all these cool tools and you even sort of know how to use them, but how do you make a game?!?

Well, whatever you do, you should keep the scope of your first games small and simple. You’re not going to make a Call of Duty and or even Super Mario (both are way more complicated than you probably think). This is the first and only game I’ve made almost, but not quite, entirely by myself:  Kool-Bert. It took me two weeks.

Game Jams

Do you know about game jams? Game jams are great. Someone comes up with a prompt and then you have a short time to make a game around that prompt. I made Kool-Bert in the a game jam called “Duplicade.” In fact, Ashi Wash Classic was born out of a game jam. We’ve participated in the Global Game Jam several times, which takes place over 48 hours in January every year. Game jams are happening all the time, so I suggest teaming up with two or three of your friends and finding a game jam that looks interesting to you. Or, you can join a game jam all by yourself! Most game jams have some kind of online forum where you can team up with folks you don’t know and make some new game dev friends. Game jams are a great place to learn skills and try out ideas, so most folks are really friendly to people who are new at whatever they’re doing.

We hope this was helpful to budding young game developers. If you have any questions regarding the tools we mentioned, game jams, or anything else about starting out as a game developer, reach out to us by email, Twitter, or Facebook. Now go make some games!