Getting into game development doesn't need to be expensive. There are a number of robust tools available for free that allow a hobbyist, student, or person of any experience to dive in and begin creating. From small and specialized game engines like Bitsy and Ren'py to the free versions of bigger tools like Unity and Unreal, here are a few of the best tools with the lowest barrier to entry.
Updated with a list of community-suggested free tools and engines.
Table of contents:
- What kind of game do you want to make?
- The Best Free Game Engines
- Unreal Engine
- Game Maker Studio 2
- Game Boy Studio
- What factors should you consider when choosing game development tools?
- Community Suggestions
What kind of game do you want to make?
One of the first questions you'll want to ask yourself when you're considering your toolset or game engine is what type of project you'd like to work on. I always tell my game design students to scope very small (that is, to plan a project that is as small as possible in order to have the best chance of actually going ahead and finishing it!) Creator John Thyer has a fantastic blog post here on how to make good small games.
That just refers to scope though: most genres can be scoped quite small. So think about whether you'd like to make a first person shooter, dating sim, block puzzler, racing game, or any other genre you want to work in, and choose your tool from there. Some tools on this list (for example, Ren'Py and PuzzleScript) are fairly specialized for particular genres (visual novels and 2D puzzle games, in particular), while other tools like Godot, Unity, and Unreal are a bit broader.
We'll introduce a number of the best tools here, and list a robust system of considerations further down in the piece, so you can make the best possible choice for your needs.
The Best Free Game Engines
What is a game engine? It's a collection of software that enables the user (or team of users) to put together assets (like art, animation, sound design and musical elements) with code that gives the instructions for how everything will interact in the game environment. A very simple metaphor is that of a sort of interactive stage play: things like characters, objects, and art/sound assets are like actors and props, and code is like the script of the play and the "rules" of how everything works together as a player interacts.
Many engines allow you to make simple assets (like sprites for 2D games, models for 3D games or sound effects) in the engine environment, and most allow you to make them in another program and import them into the project.
Bitsy is a user-friendly, browser-based tool specifically made to enable creators to make small games. It's technical limitations: a small palette and friendly, simple scripting system actually enable creators to get extremely creative, and the tool's thriving community (including regular game jams) routinely puts out fascinating work that pushes the limits of its humble framework. I personally recommend Bitsy to all of my game design students, particularly to help them work on small-scope work and get the experience of finishing a project, a perennial issue for new game developers.
Bitsy games can be exported as HTML files and are often shared on itch.io.
If you are interested in making visual novels or related work, Ren'Py is a versatile and beginner-friendly option. From the tool's official site: "Ren'Py is a visual novel engine – used by thousands of creators from around the world – that helps you use words, images, and sounds to tell interactive stories that run on computers and mobile devices. These can be both visual novels and life simulation games. The easy to learn script language allows anyone to efficiently write large visual novels, while its Python scripting is enough for complex simulation games."
Ren'Py games can be exported to web/HTML5, Windows, Linux, Mac, Android and iOS.
PuzzleScript is a browser-based tool made for creating tile-based puzzle games, commonly associated with Sokoban and popular titles like A Good Snowman is Hard to Build (which used the tool!), though it's rules are pliable and it can be used to make a wild variety of things where "pushing" an object is a core mechanic.
PuzzleScript games can be exported to HTML.
Unity and Unreal are the heaviest hitters on this list, used in the production of countless professional games (of widely ranging scope), and there is a free personal license for the engine for folks to jump into and dig around in (and begin publishing work for, depending on the terms of that license). It also has an extremely robust learning portal on its official site, and countless untold hours of tutorials and related content online: some of which you should be on the lookout for here on Game Developer! Unity is incredibly versatile, with modes for working in 2D or 3D, and you can make a game of almost any imaginable genre in it.
Programming in Unity takes place in C#, and overall project structure is organized by scenes and game objects, with C# scripts attached to game objects to dictate behavior and interaction.
Unity has a dedicated learning portal for those who are new to the engine.
If you are interested in creating visual novels using Unity, we happily suggest checking out this very beginner-friendly GDC talk from the folks at the Secret Lab, for their own open-source Yarn Spinner tool.
Unity games can be exported to web/HTML5, Windows, Linux, Mac, Android, iOS, all major consoles, and various AR and VR applications. Do note that not all build options are unlocked for the free license.
The other massive-scope game engine on this list, Unreal Engine, also has a free indie license for folks to get into. Unreal and Unity have plenty of similarities and plenty of differences, and, like Unity, Unreal is fairly well-suited to making a game in nearly any genre, with support for 2D and 3D work.
Unreal games can be exported to web/HTML5, Windows, Linux, Mac, Android, iOS, all major consoles, and various AR and VR applications. Do note that not all build options are unlocked for the free license.
Godot is an open-source game engine that's been gaining considerable steam in the last few years, particularly with indie developers looking for an alternative (especially an open source option) to the "usual" Unity or Unreal question.
Developers working in Godot can use either C# (an industry standard scripting language) or GDScript for their coding needs.
As for overall structure, Godot uses nodes, trees, scenes, and signals: a game is a sort of tree of nodes, organized into scenes. Signals can be used to "wire" scenes together.
Godot games can be exported to "desktop or mobile, as well as the web."
Game Maker Studio 2
Game Maker Studio is a fairly robust tool that's been used to make some wildly successful commercial indies, including certified classics like Undertale, Hyper Light Drifter and the more recent Forager. The free version of Game Maker Studio lets users (especially new developers) get in, use a simple drag-and-drop interface, and start making games inside of an hour (see its core arcade game tutorial here).
Do note that the free version of the tool does have a fairly strict limitation on how work can be published. You need to upgrade to a creator, indie, or enterprise license in order to publish your work anywhere other than the GX.games platform.
Game Boy Studio
Game Boy Studio is another simple, drag-and-drop-powered engine (which also allows more experienced programmers under the hood) that empowers developers to make games that would run on Nintendo's beloved retro handheld: with strict color palettes and other constraints that keep the action focused.
According to the tool's official page, "You can generate ROM files that can be run in an emulator, on a web page or on real Game Boy hardware."
What factors should you consider when choosing game development tools?
Now that we've looked at some of the best options, here are a few major considerations to think about when choosing your toolset. As always, let the kind of game you want to make, your goals for player experience, and your own needs and working preferences guide your decision.
Game User Interface
You'll want to pick a toolset that feels comfortable for you and provides a user interface that makes sense for you, your work style, and your goals. Some of the free engines above support a sort of drag and drop interface (including Game Boy Studio), while larger toolsets like Unity and Unreal can be customized to a large degree, depending on your workflow. Shop around, watch tutorials, and see what makes the most sense for you as a creator.
Game Development Support
No matter what tool you decide to go with, you'll want to pick something with good developer and community support, if you have questions or run into issues. Look at an engine's support page, tutorial resources, or community resources when you are shopping for tools, and make sure you'll be able to get help or guidance if you need it.
Game Development Toolset
Some engines will have a toolset that simply makes the most sense for your workflow. For example, if you are looking to make a very small game with a built in sprite creation tool, Bitsy might work wonders for you. If you are looking to work on a simple but fully featured FPS level, you might want to hop into Unreal and begin mapping out a set of rooms. Think about what you'll need for your game and your player experience goals, and how your ideal toolset will best set you up for success here.
Game Creation Software: Game Logic
Game logic: or, simply, your game's core structures and mechanics is a deep (and incredible) discipline, worthy of years of advanced study. At the very core, the logic of your game boils down to a few key factors: what are you (the player) doing: how are you interacting with the world of the game and how does it interact back? If I am playing a racing game and I hit the brake, I will (usually) slow down and stop. If I am playing a platformer, and I run to the right and push the "jump" button, I will probably jump a prescribed height and width, given the terrain I was standing on as I did those actions.
Every script you write and design decision you make in your game feeds into the game's logic.
In terms of how this impacts your choice of game engine, try to choose a toolset that will best empower you to design the game you want to make. Think about your own programming skill and comfort level: perhaps you are experienced and comfortable writing C# scripts in Unreal, Unity, or Godot, or Python scripts in Ren'Py, etc. Or perhaps you will be better served with an engine that allows you to abstract some of that, with a drag and drop interface.
Game Design Tools
Designing a game is such a rich and deep field that we have an entire section of articles here on Game Developer devoted to it. Remember that your chosen toolset should complement and support your goals (and your goals you'd like to set for your players to experience).
Game Integration Tools
How much do you need your engine to play nicely with, say, Photoshop, Blender, Aseprite, or other asset creation software? You'll want to think about what integrations will be useful for your workflow when considering your tools and asset creation pipeline.
Game Animation Tools
Animation is typically how most games imbue a sense of life, momentum, and/or transition to their creations. It can be as complex as hyper-detailed 3D animation across a scene of hundreds of characters (think of a busy street or market scene in an Assassin's Creed game), or as simple as a small highlight changing on a menu screen. Your animation needs will depend heavily on the style and scope of your game, and some of these toolsets provide in-engine support for simple, genre-appropriate animation (Ren'Py, GB Studio, Bitsy, etc.) while Godot, Unity, and Unreal provide powerful editors for your 2D or 3D animation needs: which you will typically create in another program and bring into your engine.
Game Physics Tools
Consider the physics needs of your game: are you making something where gravity, the speed of projectiles, the momentum of your player or other characters (or vehicles) will depend strongly on a physics simulation to feel "right?" If so, you may want to prioritize learning the toolsets here that have robust physics capabilities (like Unreal and Unity). For other types of games, like visual novels, RPGs, or non-physics dependent puzzlers, you might be fine with a more lightweight toolset.
Game Audio Tools
Some smaller engines allow you to create sound effects and music in-engine, but most will require you to bring those in from another application. For example, on this list, GB Studio allows you to create music and sounds directly inside the engine, whereas if you are setting up sounds and music in Unity, you'll bring in audio assets and hook them up inside the inspector window.
Game Testing Tools
As with all software, games need to be tested, both for playability (you'll put it in front of playtesters and get feedback) and functionality (does everything work as it should?). No matter what engine you choose, or what scale of game you intend to make, you should create a plan for testing, getting builds to playtesters, and a system for integrating feedback and squashing bugs.
Game Export Tools
Once you have a game you are happy with (and have probably playtested many iterations to get there!) You'll want to export it and share your work: perhaps on a commercial platform or other portal for feedback. The various engines listed here support different types of exports, check each entry for the file format and platforms you're able to export work to.
Game Publishing Tools
One important consideration for any game you'd like to make is where you'd like to put it! Are you making a game for a game jam, perhaps, and want to make it easy for others to play? Consider a tool that can easily export to HTML or a simple PC build. Want to create an experience for VR? From this list, Unity and Unreal may be your best bet. Your publishing concerns tie directly into the next item as well: what platform to publish on!
This ties right into publishing: What platform are you aiming for? You'll also want to ensure the free license of any paid engine allows you to publish on your platform of choice. Check the licensing agreement on the tool's site whenever you download the new software to be sure!
Since publishing this piece initially, a number of developers in the community have shared resources for free engines and other game-making tools they've found useful. We're appending our list here with several of these suggestions.
- Pocket Platformer
- Inform 7
- Adventure Game Studio
- Playdate Pulp
Be sure to check back for even more resources and tools for developers!