Making a video game is an exciting way to immortalize your ideas. With the technology available today, developing games has never been easier. There are a lot of free and paid quality tools for you to use for your art, music, and programming. You can obtain them with only a few clicks, especially the free ones.
But if you’re not familiar with the creative process behind the development of a game, you can quickly get lost or even demotivated.
In this article, you will learn how to start your journey in the creation of your very own game, thanks to the advice from Doctor Gear, the pixel artist and one of the game developers of Dino Spin. Dino Spin is a game with a challenging mechanic where you help Dino take his Eggs to the nest, made in 72 hours for Ludum Dare 46.
Bring your sword and some potions, because we are going to destroy the dragon behind this topic: doubt.
|Category||Ranking (out of 4959 submissions)||Score|
Final results for Dino Spin at Ludum Dare 46
Step 1 – Play video games
You probably do that already, but what I want you to do is to pay attention while playing your favorite titles to see what you like the most. Study your favorite game concepts, look at how the art is done, and what is the game logic behind it. Observe what is interesting about it and what you can use to make your games.
For example, when you collect a coin in a game, what that coin does? Usually, in games, a coin plays a very satisfying sound when collected and emits an enjoyable particle effect, and increases your score, money, or credits amount.
If you plan to be a solo developer, a one-man band, you need to know how a coin collection sound effect should sound like. You also need to know how to make a good looking particle effect for when you collect it, and how to program your game to check for collision between the coin and the player. And when that happens, maybe add some points to a variable you use to track the score and display it on the user interface.
Another good example is the usage of a platform in platformer games. Starting from the basic idea of a platform object, we can make moving platforms, both horizontally and vertically, or a combination of the two. Or platforms that self destruct after you step on it, or even that disappear and reappear after a while, so you need to time your jumps. And the list goes on.
Gather all the information you can about how the game works so you can use these archetypes in your stuff. Further on, you can even combine multiple ideas into a single game. Have you ever played a Battle Royale game? It’s a genre that combines multiple concepts in one game. PlayerUnknown Battlegrounds, for example, is not only a First Person Shooter, or a Survival game. It’s both of them, and much more.
By combining game concepts, you create something new. The first card games created by humanity had no story, no characters, or world behind the cards. Modern card games like Legends of Runeterra bring some in-depth lore behind every card. Someone else had the idea to mix Action, Horror, and Puzzles, and the result was Resident Evil, a very successful game series.
While making the pixel art for Dino Spin, I got some inspiration from Yoshi (from Mario franchise) for the dinosaur protagonist and his dino eggs, and Joe & Mac (a platform game released for arcades) for the theme. I didn’t look into these references directly while making my art, but rather remembered these ideas because I’ve played these games a lot in my childhood.
This is how the protagonist could have ended up looking like, if I didn’t have my Yoshi inspiration and the dinosaur protagonist idea later on:
I’m not saying that this little prehistoric human isn’t a cool character, but the dinosaur is a much more appealing character to the public because he is very cute and relates much more to the egg idea. This is a good example of the importance of playing a lot of games and having references, something that we will talk about further on.
Step 2 – Study as many game concepts as you can
The best way to show you how to think like a game developer is introducing right away what is known as a game concept. A game concept is a general idea of a type of game; when you have a lot of examples of this concept, you call it a genre. Have you played Super Mario Bros or Super Mario World? These games are renowned examples of the platformer genre.
Study renowned genres by dissecting successful games in that category. Try to observe every element present in the game, like the graphics and visual effects, the music and sound effects, the programming behind the game logic, the level design, the progression, the difficulty, the controls, and more. You will notice that just by looking at established games, you can get a lot of information.
You can watch some gameplay videos on Youtube, pausing or reducing the speed of the video to observe better what is happening with the animations, effects, the motion of the game, etc. This is something I do when I want to see what is happening in slow motion.
The original game concept for Dino Spin, way before I gave it that name, was proposed by Relixes, the programmer of our team. It was supposed to be a top-down shooter game, where the player could shoot projectiles in all directions; the objective was to maintain an egg alive. Enemies would do damage to the egg, but the player projectiles wouldn’t. The only way to move the egg and keep it alive was to shoot the egg, while also shooting the enemies.
Later, I made some changes to the original concept, suggesting to create a platformer instead. In this new concept, the player must keep the egg in the air by throwing a boomerang on it, while fighting enemies who want to eat the egg.
Step 3 – Choose your tools
Now that you have played a lot of video games and learned about game concepts, it’s time to search for the best software available to aid you with your quest.
I have some software to recommend to you. I’ve already tested many of them, and I use some of them a lot.
For development with a programming language:
For this, I recommend Godot. It is a free and open-source tool, and the application is only a few megabytes. Godot’s community is growing very fast, and you can find some tutorials here on the blog.
For programming with events:
Visual programming is an alternative way to program by using an event system. I recommend Construct (the engine that Relixes and I used to make Dino Spin) for that purpose because the interface is clean, the event system is easy to understand even for non-programmers, the engine is blazing fast, and it gets updated regularly. It is a paid engine, but the price is worth it, in my opinion.
For Pixel Art:
Go with Aseprite. It’s the tool I’ve used to make the graphics for Dino Spin. If you have some knowledge, you’re allowed to compile it for free, and if you want to support the devs, the software is very cheap. The tool is simple and amazing, capable of re-scaling sprites without compromising the quality, making animations, and effects like dithering and outlines effortlessly. It is definitely worth buying!
There is a website called Lospec, where you can find a lot of pixel art tutorials but also really good palettes made by professional artists. For Dino Spin, I’ve used the Pico-8 secret palette:
For High-resolution art:
Have a look into Krita, one of the best digital painting tools available on the internet, for free. It is a tool used by professionals, with lots of free tutorials made by the community. This tool is capable of doing almost anything you would expect from a paid software related to drawing and painting.
For 3D Modeling:
I recommend Blender because it is a free tool that has a lot of active users producing tutorials. It is known for fast rigging, a great animation toolset, lots of visual effects, advanced camera, motion tracking, and the ability to import python scripts.
For Voxel modeling:
Try Magicavoxel, a modeling tool capable of creating beautiful voxel objects to import into your game, supported by many modern 3D engines. With a free to use license for any project, this software is worth to learn if you plan to make any kind of voxel-based game.
For Music composing and Sound effects:
I’ve used a lot of software related to audio, both paid and free. My favorite one is FL Studio, the tool used by Dugas, the composer of Dino Spin. This tool is capable of doing anything you can imagine related to audio, and many professionals use it. But since this is a very expensive tool that may not be suitable for everyone, I will also recommend LMMS, a free, open-source tool that is probably capable of suiting your needs.
Step 4 – Get some education
Now that you know more about the tools you want to work with and the art style you would like to learn, it’s time to search for more specific content. Search for tutorials about the kind of art, programming language, or software you’re trying to learn and get started.
Searching for education is better than trying to figure out everything by yourself, and you can choose the method that makes you learn faster. Do you think that you learn more quickly from reading? Or you’re the type that finds videos a much better experience? There is a lot of free tutorials on the internet, in the format of articles, videos, and digital books.
If you have some money to spend, I recommend you make an investment in paid courses, available on platforms like Udemy, and digital book on stores like Amazon. Usually, paid content is much richer in comparison to free content, and you will find more in-depth explanations of the topics.
A free option that can help in learning is to belong to a community on Discord. There, you can solve your questions with the help of other friendly developers. You’re lucky because the community you’re about to be part of is known for doing it’s best in helping each other. They can recommend you tutorials, books, courses, tools, and much more, so search for a community and check that out!
Step 5 – Brainstorm your ideas
Now that you have a better notion of game design, you can start brainstorming your ideas on paper or directly at your computer. To brainstorm, I advise you to get into a quiet ambient, stop any music you’re listening to (unless you feel that helps you with the process), and start thinking about everything you’ve learned in the previous steps.
Catch every interesting idea that comes into your mind and write it down. Then establish a connection between this idea, and a new one, building a bridge between concepts, characters, game mechanics, story, game art, and so on. Something pretty simple can quickly turn into something very elaborate and creative when you have the knowledge and feel confident about it.
Every single game starts from an idea, and as it progresses, it turns into a game concept. This idea can be simple at the start. Sometimes you won’t have enough material to make a game about it, but anything can be a starting point for you to develop over time. When you think about it, virtually anything can be made into a game, if you develop it well enough. Your starting point can be a character, a scenario, a story, a feeling, or a message that you want to communicate.
Your first game needs to be simple. Don’t expect to have your first couple of games to be that big; focus on making something polished. A short polished game is much more fun than a bad one with lots of content. Content does not matter when the game is not fun.
Take the example of Flappy Bird, a very simple game that got viral in 2013. Everyone had that game on their smartphone. Flappy Bird is proof that a simple game can be fun and memorable if the idea is well executed.
Pay attention to details, especially If you’re making a game too similar to games that already exist. What your game can offer that others don’t? By polishing your game and making sure that every part of it is cool, you will get more attention, even if there are similar games around.
The more you study and get references through life, by playing some games and developing your ideas, the easier this process becomes. Brainstorming is all about recovering the most you can from inside your mind. So, to recover that information, you first need to have it. That’s why there were those previous steps where I asked you to study a lot before getting here.
Then, you need to start making yourself some questions about your ideas and try to visualize them as a finished project. Develop the concept for some time in your mind, because you need to feel that your game is going to be fun, innovative, or at least special for you, before proceeding to the next steps. Even if you’re following the example of an existing game, make your creative changes.
Also, don’t plan a game that is too hard to understand or to play at the beginning, because people will lose interest and give up in the first five minutes of gameplay.
With the development of Dino Spin, I had the opportunity to brainstorm with a team composed of three people: me (Doctor Gear), Relixes, and Dugas. We shared a document among us where we wrote our ideas and discussed them on a voice call at Discord.
A fun fact is that the game we first decided to make for the Game Jam was an entirely different one. It was something like a “odds or evens of death” game (an original idea of Dugas), where you battle against people online, and lose a finger of your hand each time you lose the game, till you have none left.
This is the only asset produced (my first attempt ever on drawing a hand) before we scrap that idea:
We scrapped a lot of good ideas because of the limitations we had in front of us. Know your limits and the limits of your team, and decide the best path to follow considering all these variables.
Developing a game requires a lot of time, so focus on developing only the ideas that you truly believe, don’t plan to develop anything just for the sake of doing it.
Step 6 – Get some visual references
To help you imagine and decide how your game should look and play like, get some visual references. For example, if you want to go for a pixel art style, look at sprite sheets extracted from classic games from Super Nintendo, Nintendo DS, Mega Drive, Master System, Game Boy Advance, and others. There is a lot of sites and forums on the internet that share these assets for study purposes.
You can also look into more modern art, made by independent artists. They share their work on Twitter, Deviant Art, Behance, Pinterest, and other social media. Create a profile on these websites to follow them and get some inspiration with visual references daily for free.
To enrich your inspiration, try to look at as many references as you can while making your art, sound, or programming. You can mix these references, and use different pieces of them. It’s like cooking a meal with ingredients that come from different markets.
You can save any images that you find interesting, to put them in the Game Design Document and use them later as a visual reference while making the art for the game or programming. Having these visual references, you will have study material to use as a guide as you try to replicate things.
It is easier to look at something established and use it as a reference, rather than trying to reinvent the wheel. This does not mean that you cannot innovate. You will end up creating something different naturally.
Step 7 – Make a Game Design Document
By having a Game Design Document, you can organize all of your ideas in one place, and visualize them better, to see if they make sense together. This is the part of the creative process where you organize better the ideas you had during brainstorming.
The creation of the Game Design Document is also an opportunity to add more features and ideas, modify existing ones, or entirely remove some of them to cut the scope of your game (remember to go simple with your first couple of games).
Create a text document where you can import images (I usually go with Google Docs for that purpose) and start planning all the sections. You can start the first section of your document with your game name and the game logo, for example. On the next page, try to add a project description section (ideally being two to four paragraphs long), as an introduction to the rest of the document. Don’t go too much into detail here; just introduce your game idea and save more detailed information for later.
If your game has a story, you should start writing that as soon as possible, on the following page after the project description. You can divide that story section into subsections to help you organize your lore. For example, you can have subsections like characters, world, economy, magic, enemies, etc.
If it makes sense, try linking these subsections together via references. For example, in the characters subsection, you may have a powerful wizard that is known for using a specific fire spell. By explaining more about how that fire spell works in the magic subsection, you will connect these two subsections (characters and magic), helping your lore to have cohesion.
Immediately after the story, put a theme section. A theme is what you use the characters and the mechanics of your game for. It can be a message that you want the player to receive (like the importance of friendship, for example), and can also be something to make the player feel a certain emotion (like happiness or a sense of achievement). You can have a theme without having a story, but you can’t have a game without a theme.
You may think that games like Pong have no theme. But try to think about it from a different point of view: a theme can also be the competition that your game provides. Overall, a theme is the kind of story you want to tell and what you want the player to feel.
After setting the theme, write a few pages on the story progression. This section is where you establish when to introduce quests the player has to do, when to introduce a new mechanic, a tutorial, a new part of the lore, and where you can also set the map/stage progression. For example, you could write a progression in which the player starts in a forest level that acts as a tutorial, which ends with the discovery of a chest with a sword as a reward. Right after the chest, there is a portal that leads into a snow biome, where he meets his first enemy, a snow slug.
Now, here comes the most extensive part of your game document, the section about gameplay. You can again divide it into subsections, like:
- Player skills: What are the abilities of the player? Can he double jump, or is he able to cast a spell?
- Goals of the game: Enemies you have to defeat, quests you need to complete, something you need to find.
- Game mechanics: Moving platforms, puzzle elements, a crafting system.
- Items: Loot that the player can obtain and use in his adventure.
- Challenges: Everything that requires the player to try hard to win, like defeating a boss.
- Losing condition: What makes you lose the game? Is there a game over screen? Do you lose progress? Do you want to have a checkpoint for when that happens?
After describing the gameplay, you can add a section about the art style. Here you can write, for example, if you want your game to be a pixel art or a 3D game, and put all the concept art and visual references. You can also write things like that you want everything to have happy colors, and be animated. Maybe there is a specific television image filter that you want to use to make the game feel retro.
Then, you make some pages for music and sounds, where you can describe how the music should make the player feel, which genre of music do you want, how long the tracks need to be, the sound effects that you will need (like some sound effects for menus, sound effects for the player, the enemies, etc.)
If you plan to release your game on the market, you can add some pages for the technical specifications of the game, where you list the platforms you’re planning to launch your game on and tools you’re going to use to make your game.
If you want to do marketing and look for funding for your game, you can write about it. Will you try a crowdfunding campaign? Start a youtube channel for development videos? It is essential to set your strategy as early as possible in the development.
The Game Design Document structure is a personal preference, and you can customize it as much as you need. For Dino Spin, I’ve also made a very simple changelog document to ask for features to Relixes, and also to write to him the features I’ve already implemented in the project, and the bugs I’ve noticed.
After completing all the sections, don’t forget to create a summary so that you and your team can consult the document more easily.
Step 8 – Prototyping
A prototype is a basic version of the game to test its core mechanics. The prototyping stage is the actual game making part, where you apply all the knowledge acquired in the previous steps and deepen them further.
Usually, when prototyping, the goal is to make a small room that includes all the features of the game, so you can interact with them and test them. These features can be the user interface, enemies, pick-up items, platforms, etc.
In this stage, you can use work in progress art or placeholders, such as colored geometric shapes, to speed up the making of the prototype. Also, some sites provide free assets that you can use as placeholders in your game, just to view what you are programming. Many programmers do this, only to hire an artist later to make the final artworks.
When I prototype my games, as a pixel artist, I first make a mockup (it’s like a screenshot of the game) to visualize better how it will look like. Then, I use that as a reference to develop the actual game. This is the first concept art I’ve made for Dino Spin so that we could envision the game world:
The human with the boomerang was supposed to be the player. The other character is an enemy that was cut from the game. That was before I had the idea to make a dinosaur as the player (the left image below). I tried to make the human character into a cyclops enemy (the right image below), but it was also cut from the game.
The image below was the final concept art I did for the game, the one we have stuck with to complete the game. Later on, I made some minor changes to the background and created some new art for the pterodactyl enemy, the spikes obstacle, the geyser obstacle, the key object, the door object, etc.
Once you have a prototype, the next step is to test it again and again, and polish it by fixing bugs and making incremental improvements.
Your goal is to find game mechanics that are not fun and to fix or entirely remove them. If the prototype isn’t fun to play, the final game probably won’t be either. Also, you will continuously go back to your art, sound, programming, etc., to remake things until you reach the desired result. So, expect the prototype to change a lot during development, as you get closer and closer to the final version.
By having a team, you can focus on the activities where you can give your best. If you consider yourself a good programmer, having someone to help you with the graphics will get you some extra time to polish the code. I have a lot of prototypes that didn’t turn into a finished game because they were too demanding for me to be able to work alone on them.
Here is some footage of an early stage of the prototype of Dino Spin:
Also, here is the first concept art of Dino Spin logo:
and the final one:
Before concluding, I want you to know that the life of a game developer is a repeating cycle of these steps. You have to keep playing video games, study game concepts, get new references, always be updated on new tools that can help you in the process, get as much education as possible and make prototypes.
One thing I want you to consider is to participate in a Game Jam. These events are the perfect opportunity to deliver your first game. They provide a theme and limited time for making the game. It’s an excellent way to motivate yourself, meet new people, and do some networking with other game developers.
You can find other game developers on a Discord server or on Twitter, and form a team to participate in a jam. After the jam ends, you can stay in touch with them and team up to create multiple games together.
I wish you success with your journey, and remember always to have fun!
If you want to play Dino Spin for free, click the button below: