Become an Indie Game Developer Using Only Free Assets and Resources
With music, visuals, text, and interactivity blended seamlessly into the experience, games have the ability to be the most dynamic and immersive form of artistic expression.
Unsurprisingly then, in recent years the market for games has grown to become much, much larger than the movie industry.
With so much money flowing into gaming, you might imagine that there’s lots of opportunity for you to make a good living in this industry - and you’d be right. However, as an indie developer you almost certainly won’t be able to do this with your first or second game. Plan on shipping at least 3 - 5 games before potentially going pro. On average, learners who release their first game make less than $300 on it, and quite a few don’t make any sales at all.
Because expected earnings are so low for beginners, as a learner it’s a very risky move to spend thousands of dollars on courses, training, assets, and software tools. I’d much rather get the hang of game development using free software first. That’s especially true since open source (free) stuff can be better quality than proprietary (paid) anyway!
As the advisor to Code Club, I’m writing this free resource guide primarily for my own students. But no matter who you are or where you are in the world, I’d like to point you in the right direction and help you unleash your creativity and construct something beautiful for the world to enjoy if I can. There are a lot of other resources out there, but with just what’s contained in this guide you can go from beginner to published (though perhaps not yet wealthy) developer.
AI Assistants & Tutors
If we’re talking about learning for free then obviously you don’t exactly have a team of highly skilled people to turn to. However, in the age of Generative AI (GenAI), you have some excellent free alternatives!
AI is surprisingly good at coding short little functions and scripts and at answering complicated conceptual questions like “what’s the difference between polymorphism and class inheritance?” It can suggest good algorithms or obscure plugins to use that you would otherwise never hear about. It can explain definitions. You can get good insights by saying things like, “you are the head engineer for a game developer. How would you solve problem [fill in the blank]?” or “let’s think step by step. Brainstorm 5 ways to solve this issue.”
AI makes a great partner, but it definitely can’t do something as complicated as game development for you, so don’t go into it with that expectation. But just like how you learn more when talking to smart people, you can also learn quite a lot when chatting with AI about new topics you’re trying to understand, so use it extensively for that purpose!
You may be inclined to use AI for image generation too. As for me, I’ll steer clear of this for commercial use. Artists have been wronged by having their work used to train models clearly designed to replace them. This happened without their knowledge, consent, or compensation. I think there’s more than enough royalty free art out there generously donated by human artists that we as game developers don’t need to resort to AI at this time. You may disagree and that’s fine. I may change my mind too. But for now, I’m not going to explain how to use AI art because of my mixed feelings.
Engines
1. MIT Scratch
This platform is designed for kids but it’s perfect for beginners of any age. The color-sorted command blocks click together, making the learning curve super intuitive. You don’t have to worry about language specific syntax, you can just focus on understanding object oriented structures in their simplest form. Because you can put together graphical functionality very quickly and easily it’s great for prototyping. Listed below are some sample games I’ve made and tutorials that can help you pick up the basics quickly.
My Sample Games
Polar Pirates
Confidence Intervals
PrimeFall
Tutorial Channels
Griffpatch
freeCodeCamp
Scratch Team
2. Godot
Unlike the early days, modern developers rarely start games from a raw programming language like C or Python. Premier 3D triple A titles that cost hundreds of millions of dollars to produce such as Jedi: Fallen Order or Hogwarts Legacy are generally made with Unreal Engine. It’s a fantastic tool, but as beginners this will not be our starting point. We’re going to learn to walk before we try to run.
Unity is common for indie developers and was used to create many fantastic games like Hearthstone, Hollow Knight, and Among Us. Knowing Unity is often a must-have to get a job in game development. However, they’ve recently rattled their user base by introducing exorbitant fees. Sure, they’ve done a U-turn on the policy. But just the fact that they can arbitrarily change the rules means it’s not for me.
I’m learning the up-and-coming Godot as my game engine of choice.
Tutorial Channels
GDquest
HeartBeast
StayAtHomeDev
BornCG
Branno
freeCodeCamp
Supportive Community
Reddit - you can post design and programming questions as well as show off screenshots and video of your progress. Whatever you want to know, people here are super helpful and friendly in my experience.
Assets
You’re going to need sound effects, character sprites, animation sequences, fonts, music, and other assets for your games. Fortunately, there’s a lot of free content out there available for you to use. Again, this list is by no means exhaustive, but here are some places you can find an enormous amount of free assets.
OpenGameArt (everything)
Itch.io (everything, especially pixel art)
Kenney (everything)
Pixabay (everything, especially music)
Inevitably, you’ll want to make some custom things yourself. As we talked about in the beginning, making games is in part about expressing your own artistic vision. Honestly I don’t think you need to purchase studio-grade software from companies like Adobe when the free stuff is already so fantastic.
Piskel - pixel art
Inkscape - vector art
Blender - 3D
OBS Studio - video editing
GIMP - photoshop alternative
Krita - painting program
Learn General Game Design Concepts
GDC
Game Developers Conference (GDC) is an annual event for game developers that is part awards ceremony, part expo, and part seminar series. Their events are published on YouTube and I’ve listened to countless talks on my ride to work. To get you started, here’s a few of the best talks from some of my favorite game developers, publishers, and writers, and researchers.
Richard Garfield
George Fan
Jesse Schell
Celia Hodent
Sid Meier
Erik Johnson
Codingame
When learning the basics of coding in Python, this platform did more for me than pretty much anything else. What you’re learning won’t necessarily be specific to the exact game you want to create, but you get exposure to a very broad range of computing challenges, concepts, algorithms, and ideas that are frequently used in games.
Publish
We’ve talked about “free” everything so far, but after the months (at least) of time it takes to make your game, let’s be real - it’s worth shelling out a few bucks on a storefront and promotion. Here’s where your budget will go.
Steam
$100 per game publishing cost on the premier game purchasing platform. You’ll keep 70% of the revenue.
Epic
$100 per game publishing cost. Smaller market share than Steam, but you’ll keep 88% of your revenue.
Itch.io
If you’re really set on making money on your game without ever spending a cent, that is technically possible thanks to Itch. It costs $0 to publish your game here. However, keep in mind that their market is relatively tiny compared to other platforms and you won’t make as much as you could have. Their game jams are a great place to learn and test ideas.
Alright, well that should be enough to help you get your first game out there! Please save this article, and be sure to leave a comment in a few months letting me know when you’ve published your own game so I can try it out!