|
| 1 | +--- |
| 2 | +title: "How to Get Started with Game Development (Beginner's Guide 2025)" |
| 3 | +description: Ellie from Codédex shows you how to start building games with the help of courses, project tutorials, and more using game engines and frameworks." |
| 4 | +author: Ellie Popoca |
| 5 | +seoImageLink: |
| 6 | +dateCreated: 2025-10-28 |
| 7 | +published: false |
| 8 | +tags: |
| 9 | + - Resources |
| 10 | +— |
| 11 | + |
| 12 | +## Building Games |
| 13 | + |
| 14 | + |
| 15 | + |
| 16 | +Game Development has been the way many people (maybe even including you!) have learned to code, and while it can get challenging, it's one of the best ways to see your progress in action. You might have even written a Minecraft mod or two back in the day. |
| 17 | + |
| 18 | +My name is Ellie, and I’m a Curriculum Developer at Codédex, and studied Game Design in college. I’m creating this guide if you’re learning to code or already know how to code, and want to know how to get started. Unity? Unreal Engine? C++? I’ll answer all of your questions here! |
| 19 | + |
| 20 | +## Beyond the programming |
| 21 | + |
| 22 | +Something we might often not realize that there are so many moving parts to making games. Beyond the programming, there’s music, assets, art, movement, animation, sound effects, and so much more. It gets especially complicated with open world games for example. |
| 23 | + |
| 24 | + |
| 25 | + |
| 26 | +Know that as a solo developer, depending on the game that you decide to make, you’re in charge of *all* of these things when you’re putting your project together. You might not want music, but you’ll need art or sounds to add flair to your game. |
| 27 | + |
| 28 | +## Where to Start |
| 29 | + |
| 30 | + |
| 31 | + |
| 32 | +One of the main questions to ask yourself is, where do you want to start? The earliest memory I have of building a game is when I built a plant growth simulator to feed plants using a JavaScript library called p5.js. It had music, small animations, and sprites… I was going for a cozy aesthetic, all with my own art too! |
| 33 | + |
| 34 | +But where to start depends on where you’re at in skill level, and what you want to use. Here are some places where I would recommend starting. Remember that if something doesn’t feel challenging enough, you can always add more to anything you’re working on. We’ll talk about tools and engines soon! |
| 35 | + |
| 36 | +- If you’re a beginner coder, you may have just finished a course on the Codedex site, or you finished your first CS class, you might want to start with a framework or library and learn the concepts of game development first. Trust me, it's so much easier when you can just add assets with one line of code instead of trying to figure out how to make an animation move in 30 different ways with 100 different buttons. You’ll learn the logic without all the hassle. |
| 37 | +- If you’re starting to get comfortable or have built a game beforehand, you might be curious about a game engine! This is ideal if you have an idea you want to make come to life, or you’re simply up for the challenge. |
| 38 | + |
| 39 | + |
| 40 | +## Tools |
| 41 | + |
| 42 | +Let's talk tools! Game engines like Unity or Unreal Engine are probably the most popular when you think of game development. But these tools require you to already know C++ or another scripting language. These will also typically have things like physics systems built into them, rather than having to manually code a bunch of things through an IDE. I’ll go through my favorite tools here, but I will provide some other options for you to explore and do other research. |
| 43 | + |
| 44 | +## Libraries and Frameworks |
| 45 | + |
| 46 | +Web game enthusiast? This one is for you. A JavaScript library is going to be the easiest way to make and share your game online and turn it into a web game for you and your friends to play! Here are some of my recommendations. |
| 47 | + |
| 48 | +### Phaser and P5.js |
| 49 | + |
| 50 | + |
| 51 | + |
| 52 | +[Creating a Catching Game Using Phaser](https://medium.com/swlh/creating-a-catching-game-using-phaser-fa3a0b3fe5f) by Claudia |
| 53 | + |
| 54 | +**Phaser** is a popular JavaScript framework designed specifically for making 2D games. It handles physics, animations, input, and audio, so you can focus on game logic. Games run directly in the browser and are easy to share with a link. |
| 55 | + |
| 56 | + |
| 57 | + |
| 58 | +[p5js ball game](https://github.com/jakewarrenblack/p5.js-ball-game) by jameswarrenblack |
| 59 | +[Demo](https://github.com/jakewarrenblack/p5.js-ball-game) |
| 60 | + |
| 61 | +**P5** is a JavaScript library focused on creative coding and visual art. While not exclusively for games, it's great for making interactive graphics, animations, and simple games. It's beginner-friendly and excellent for learning programming through visual feedback. |
| 62 | + |
| 63 | +Codédex has both full courses available for FREE: |
| 64 | + |
| 65 | +- [Phaser](https://www.codedex.io/phaser) |
| 66 | +- [p5js](https://www.codedex.io/p5js) |
| 67 | + |
| 68 | +### Lua and LÖVE2D |
| 69 | + |
| 70 | +https://media.amano.games/devlog/starting-a-game/target-position-bug.gif [On starting a Game](https://amano.games/devlog/starting-a-game) by Amano.games |
| 71 | + |
| 72 | +Lua is a scripting language, popular for making mods for games like Baldur's Gate 3, World of Warcraft, and was used to build the 2025 game of the year, Balatro. It’s a language syntactically similar to Python, and can be used with the LÖVE2D framework. |
| 73 | + |
| 74 | +If you know how to code, I will teach you how to get started with Lua and LÖVE2D [on Codédex](https://www.codedex.io/p5js). The full course is available for free. |
| 75 | + |
| 76 | +- [The game of the year was written in Lua](https://www.youtube.com/watch?v=YntG_mSE0d4) by Tom Delalande |
| 77 | + |
| 78 | +## Game Engines |
| 79 | + |
| 80 | +There are several options for you to choose from. I’ll start from the ones I have the most experience with, and even include some games that were made with each! |
| 81 | + |
| 82 | +### Godot |
| 83 | + |
| 84 | +https://godotengine.org/assets/press/icon_color.png |
| 85 | +[Godot](https://godotengine.org/) is a free, open-source game engine that supports both 2D and 3D game development. It uses GDScript, a Python-like language, and has a user-friendly editor! Games like Hollow Knight and Cuphead were made with Godot! I used this for a class and built out a full game with a few levels with my project group. Overall, I liked it and will probably use it to make a game in the future. Do note that it took a while to learn all the UI for this, and I was stuck watching tutorials for a while. |
| 86 | + |
| 87 | + |
| 88 | + |
| 89 | + |
| 90 | +### Unity |
| 91 | + |
| 92 | + |
| 93 | +[Unity](https://unity.com/) is one of the most popular game engines in the industry! It supports 2D, 3D, and mobile games across multiple platforms. Unit uses C# for its scripts, and can publish to PC, consoles, mobile, and web. Games made with Unity include Pokémon Go, Genshin Impact, and Among Us. Not recommended for beginners, but if you’re up for the challenge, this would be the best option for a high-quality 2D Steam game. |
| 94 | + |
| 95 | + |
| 96 | + |
| 97 | + |
| 98 | +### Unreal Engine |
| 99 | + |
| 100 | +[Unreal Engine](https://www.unrealengine.com/) is a powerful engine primarily used for high-end 3D games. It features advanced graphics, physics, and tools for creating very high-quality visual games. You can code in C++ or use Blueprints (visual scripting). Games made with Unreal Engine include Fortnite, Final Fantasy VII Remake, and Street Fighter 6. Perfect for a top-tier 3D game you’re hoping to build, or to learn a game engine on. |
| 101 | + |
| 102 | +https://cdn2.unrealengine.com/controlrig-timelapse-01-190226799.gif?resize=1&w=1920 |
| 103 | + |
| 104 | +### Roblox Studio |
| 105 | + |
| 106 | + |
| 107 | + |
| 108 | +[Roblox Studio](https://create.roblox.com/landing) is a free platform for creating multiplayer games that run on the Roblox platform. Games are built with Lua/Luau scripting and have built-in multiplayer support. Players access your game through the Roblox app, where millions of players gather, and with the opportunity to monetize. |
| 109 | + |
| 110 | +From [Chris and Judy makes games](https://chrisandjudymakegames.substack.com/p/how-to-make-your-first-game?utm_campaign=post&utm_medium=web): *“Your engine choice depends heavily on the context. Don’t use Godot 4 if you want to make a mobile browser game! Unity is great for 3D games, GameMaker is great for new programmers, and Love2D is for anyone wanting complete control over every pixel. I just happened to like Godot.”* on making [Upbound](https://yahhcheee.itch.io/upbound). |
| 111 | + |
| 112 | +### Other/Honorable Mentions |
| 113 | +Of course, there are so many ways to get started besides the software that I have shown, so here are a few different options that I haven’t personally used, but could be helpful for the game you’re trying to make! |
| 114 | + |
| 115 | +- [Game Maker](https://gamemaker.io/en): A great place to start with learning a game engine, and uses GML scripting, perfect for 2D games |
| 116 | +- [RPG Maker](https://www.rpgmakerweb.com/): Has a lot of built-in mechanics to start building a typical RPG game, and uses Java/Ruby depending on your version |
| 117 | +- [Twine](https://twinery.org/): A choose your own adventure text based game editor that uses JavaScript if you choose! |
| 118 | + |
| 119 | + |
| 120 | +## Art and Assets |
| 121 | +No game is complete without art and assets! Art is a big part of what a game really is, and while you may be inclined to focus on the art and assets that a game can have, note that there are a lot of resources online to help! |
| 122 | + |
| 123 | +Here are some places where to find spritesheets for characters, tilesheets, music, and more that are open source, and free to use! Note that some game engines might also have their own asset stores that sell or provide assets for you. |
| 124 | + |
| 125 | +- [craftpix.net](https://craftpix.net/?srsltid=AfmBOor8HKloWlBuhh-rVhsfZLKEyGNWCEHwl6GeRzBcuqM_K3I74LdF) |
| 126 | +- [itch.io](https://itch.io/game-assets/free) |
| 127 | +- [gamesart2D](https://www.gameart2d.com/) |
| 128 | + |
| 129 | + |
| 130 | +## Publishing |
| 131 | + |
| 132 | +And of course, what’s a game good for if people can’t play it !? Depending on what you use to build your game with, you have several publishing and upload options. |
| 133 | + |
| 134 | +- LÖVE2D Games: You can distribute your game as a standalone executable for Windows, Mac, or Linux. Upload to platforms like [itch.io](https://itch.io/), GitHub, or your own website for free distribution. |
| 135 | +- Godot Games: Export to Windows, Mac, Linux, web browsers, iOS, and Android. Publish on itch.io, Steam, Google Play Store, or Apple App Store, depending on your platform. |
| 136 | +- Unity Games: Supports PC (Steam, Epic Games Store), consoles (PlayStation, Xbox, Nintendo Switch), mobile (iOS, Android), and web. Publish through each platform's respective store or upload to itch.io for indie distribution. |
| 137 | +- Unreal Engine Games: Primarily targets PC and consoles through Steam, Epic Games Store, PlayStation Store, Xbox Store, and Nintendo eShop. Also supports mobile and VR platforms. |
| 138 | + |
| 139 | +## The Community |
| 140 | + |
| 141 | +Nothing like the game dev community to keep you accountable! It’s so easy to sometimes lose track of your progress or time spent on your game or what you’re making, especially as a solo developer! The Codédex community, for instance, has a ton of support that we’re offering to those interested in game development! |
| 142 | + |
| 143 | +- Project Tutorial: [Make a Bauldr’s Gate 3 Mod with Lua](https://www.codedex.io/projects/make-a-bg3-mod-with-lua) |
| 144 | +- Project Tutorial: [Build a Word Guessing Game](https://www.codedex.io/projects/build-a-word-guessing-game-with-python) |
| 145 | +- Project Tutorial: [Build a Chat Game with p5js](https://www.codedex.io/projects/build-a-conversational-game-in-p5js) |
| 146 | +- [Lua Course](https://www.codedex.io/lua) |
| 147 | +- [Phaser Course](https://codedex.io/phaser) |
| 148 | + |
| 149 | +Codédex will also be hosting a Game Jam in December of this year! 🎉 This will be the perfect time for you to build a game or finish up your game and win swag prizes :)) |
| 150 | + |
0 commit comments