Before I start, I just want to say, this post is reflecting my own opinions about different game engine and it is not intended to be taken beyond that scope.
I had a chat with Dan (a friend of mine at the Game Innovation Lab) about how many new game developers don’t know a lot about different game engines. Once the discussion ended, he asked me to post about game engines, and rate them according to difficulty and complexity. Nowadays there are more game engines than in the early days of indiegame development. The funny thing is only a few of them are popular such as Unity, Unreal Engine, and Game Maker.
To list all engines, I am going to divide them into categories: Educational (made for children), Specialized (for a single genre/type of games), and Generic engines. This categorization is just to help you find the best tool for what you are doing, but really any tool that allows you to add some programming, either by writing code or using logic trees (logic trees are a way of programming by building a tree of conditions), can be used to create any game. The problem is using any of these tools outside its intended scope is harder than using an other tool. Engines vary in popularity. Popular game engines have a big user base which helps a lot when you have bugs. While using unpopular engine can be a good thing as you work very close to the developers themselves and you can request changes easier from them. Also, these developer can help you in promoting your game more than popular engines because the success of your game is also reflect the success of their engine.
Warning, this is a long post and if you don’t have time, you can jump to a summary table that outlines them all at the end of the post (link).
These are tools designed to encourage people to design games and to help them to learn how to do it.
- Bitsy (http://ledoux.io/bitsy/editor.html): is a simple browser based game editor that doesn’t need any coding or even logic. The tool itself has predefined types of sprites and actions. The user needs only to draw different images and define dialogues for each game character, connect everything together, and TADAAAAAA, you finished a simple html game. All games created by it are topdown story based games where the player can talk to different objects.
- Dungeon Decorator (https://lorenschmidt.itch.io/dungeon-decorator): is similar to Bitsy, except it designs platformers. The user needs to design the map, some dialogues, and they have a game. All games created by the tool are platformer story based games where the player can talk to different objects.
- Scratch (https://scratch.mit.edu/): is an MIT tool that helps children to create stories, animation, and games. The tool allows you to program your own logic, by designing logic trees and attaching them to different objects in the scene. Scratch is more generic than you can expect, but it is hard to design very complicated games using it. Scratch produces html games to be played in the web, and all the created games are hosted on their website. You can check their top games here (https://scratch.mit.edu/studios/121998/)
These are tools designed to prototype certain game genres/types in a very fast/efficient way.
- ChoiceScript (https://www.choiceofgames.com/make-your-own-games/choicescript-intro/): same as the previous tool in creating interactive stories. The output game is played in different way than games developed by Twine. Examples of games done with it:
- Ink (http://www.inklestudios.com/ink/): same as the previous tools in creating the same genre. One of the features of Ink is its can be easily integrated in Unity (will talk about it later). Examples of games done with it:
- Inform (http://inform7.com/): is similar to Twine where it is used to create interactive stories or text adventure games.
- Adventure Game Studio (http://www.adventuregamestudio.co.uk/): used to create point click adventure games like Monkey Island. I didn’t use this tool for a very long time, but I remember how easy it was to design a game using it. Here are some examples of games designed by it:
- Ben There, Dan That! (http://www.sizefivegames.com/games/ben-there-dan-that/)
- Resonance (http://resonance-game.com/)
- Heroine’s Quest: The Herald of Ragnarok (http://crystalshard.net/?g=16)
- RPG in a Box (http://www.rpginabox.com/): is a game engine to create topdown voxel based RPG/Adventure games. The tool use logic trees to add the logic and game flow, but you can write the code yourself if you want. Examples of games created by this tool:
- PuzzleScript! (http://www.puzzlescript.net/): is a scripting engine where you write a few lines of scripts (that you can learn in less than 1 hour) to have puzzle games similar to Sokoban. PuzzleScript is powerful language that you can use it to script lots of different type/genres of games using it (not just puzzle games). The output games are light weighted html5 games. Examples of games created:
- Skipping Stones (http://www.draknek.org/games/puzzlescript/skipping-stones.php)
- Sokoboros (http://www.puzzlescript.net/play.html?p=d210a5248fa713153950)
- You’re pulling my leg (http://www.draknek.org/games/puzzlescript/pulleys.php)
- Threes: The Demake (https://benjamindav.is/threes/)
- Tunnel Rat (http://www.puzzlescript.net/play.html?p=7047165)
- Sokobond: The Demake (http://www.sokobond.com/puzzlescript/)
- Closure Demake (http://www.puzzlescript.net/play.html?p=9675998)
These are the most generic tools to create games. Unity, Unreal, and Game Maker are part of it, but they are not everything. Always choose the tool that is suitable for the project and for your capabilities. Don’t pick a tool that needs programming if you are not good at it. Don’t worry: all generic tools can do everything, so just pick what fits you.
- Construct 2 (https://www.scirra.com/): is a game engine that is designed to generate cross platform games using web technologies. The engine doesn’t need any coding and is easy to learn. This tool is famous between non programmers. Examples of games done using it:
- Dreaming Sarah (http://store.steampowered.com/app/296870/)
- The Next Penolope (https://www.scirra.com/construct2/games/the-next-penelope)
- Motor Melon (http://mortarmelon.com/)
- Cosmochoria (http://store.steampowered.com/app/293240)
- Angvik (http://store.steampowered.com/app/278890)
- TowerClimb (http://store.steampowered.com/app/396640)
- No More Probes (http://steamcommunity.com/sharedfiles/filedetails/?id=389058177)
- Stencyl (http://www.stencyl.com/): is a HaXe based game engine. The tool allows you to write code, but if you want to code, you can do almost all the functionalities using logic trees. Most of the famous games by Stencyl are for mobiles, but it works well with any other target. Examples:
- Super Dangerous Dungeons (https://itunes.apple.com/us/app/super-dangerous-dungeons/id1006111149?mt=8)
- Hue Ball (https://itunes.apple.com/us/app/hue-ball/id957527514?mt=8)
- Duke Dashigton (https://itunes.apple.com/us/app/duke-dashington/id904740787?mt=8)
- Golf is Hard (https://itunes.apple.com/se/app/golf-is-hard/id922144702?l=en&mt=8)
- Game Maker Studio (http://www.yoyogames.com/): is one of my favorite tools. This was the first game engine I ever used, and I think is the first known game engine before all this engines got out. I used it when I was a kid and didn’t know how to program. Game Maker allows you to use drag and drop to do all the logic for your game, but it also give you the ability to write code for it using its own scripting language (GML). Examples of games done using game maker:
- Hyper Light Drifter (http://www.heart-machine.com/)
- Crash Lands (https://www.crashlands.net/)
- Downwell (http://downwellgame.com/)
- Hotline Maiami (http://store.steampowered.com/app/219150/)
- Cook, Serve, Delicous (http://www.vertigogaming.net/CSD/)
- Clickteam Multimedia Fusion 2.5 (http://www.clickteam.com/): I remember trying this tool when I was a kid. It is really great and many amazing games have been developed using it. This tool doesn’t need any coding skills, as it is a drag and drop tool like Game Maker. Examples of Games:
- GDevelop (http://compilgames.net/) is an open source tool, and as simple as Construct 2. It follows the same philosophy too. The only problem is it is not as popular as Construct. Example of games:
- Lil BUB’s HELLO EARTH (https://www.kickstarter.com/projects/iamlilbub/lil-bubs-hello-earth-a-retro-8-bit-mobile-video-ga)
- Mega Panic Pixel (http://gamejolt.com/games/mega-panic-pixel-alpha/42664)
- Lotus Meditation (http://gamejolt.com/games/lotus-meditation/107904)
- Gamesalad (http://gamesalad.com/) is one of the old game engines. It is old, few people use it and, from their website, it appears they target more schools and teaching institutes than indies and developers. This tool is similar to Stencyl in the way you develop games. You don’t need coding, just logic trees and you are fine. Example of games done with it:
- Mazes of Karradash (https://itunes.apple.com/us/app/mazes-of-karradash/id1003743244)
- Get Fiquette (https://itunes.apple.com/au/app/get-fiquette/id873798007)
- HEAVY – sword (https://itunes.apple.com/us/app/heavy-sword/id593786979?mt=8)
- Dungeon Burglars (https://itunes.apple.com/gb/app/dungeon-burglars/id913409670)
- GameBuilder Studio (http://gamebuilderstudio.com/): is a game engine that use the same philosophy behind Unity, but with no coding (just logic trees). I didn’t use it much, but it seems nice. This engine is not popular so I couldn’t find famous games developed using it.
- Buildbox (https://www.buildbox.com/) is a component based game engine like Unity, but with no coding skills required. It seems like a new engine, but the company developing it is pushing a lot of money for indies to start picking it up and develoing their games. You can see competitions from time to time with huge prizes. Examples of games done using it:
- Cubrick (http://acatalept.com/cubrick/)
- Switchy Sides (https://itunes.apple.com/us/app/switchy-sides/id1124073720?mt=8)
- Monument Drop (https://play.google.com/store/apps/details?id=com.bulkypix.monumentdrop&hl=en)
- Color Switch (https://itunes.apple.com/us/app/color-switch/id1053533457?mt=8)
- Puq (https://itunes.apple.com/us/app/puq/id1160428319)
- Voxatron (http://www.lexaloffle.com/voxatron.php) is a fantasy console made by an indie developer. The main idea behind it is to create 3d voxel based games and shared them with other people online (as the games are all HTML). I didn’t use it, but it seems simple and easy to use. It might need some programming skills, but not much. Example of games:
- Pico-8 (http://www.lexaloffle.com/pico-8.php): is a fantasy console by the same developer behind Voxatron, but this is famous between indies. Lots of indies make Pico-8 games. You need to know a little bit of programming to create games in Pico-8. Pico-8 create HTML games in form of sharable cartridges. All games are 8 bit games with a fixed screen size and use same buttons. Example of games by Pico-8:
- Celeste Classic (https://mattmakesgames.itch.io/celeste)
- Zepton (https://chiptune.itch.io/zepton)
- Eibas (https://brokenrook.itch.io/eibas)
- Kid Bludds Treacherous Tower (https://mhughson.itch.io/kid-bludds-treacherous-tower)
- One Room Dungeon (https://trasevol-dog.itch.io/one-room-dungeon)
- The Green Legion (https://guerragames.itch.io/thegreenlegion)
- Shuriken Toss (https://pixelcod.itch.io/shuriken-toss)
- PixelVison 8 (https://pixelvision8.itch.io/game-creator): is similar to Pico-8. Games are written in Lua. The difference is that this game engine is not as famous as Pico-8. I couldn’t find any well known games using it.
- Unreal Engine (https://www.unrealengine.com/what-is-unreal-engine-4): is another famous engine. Unreal focus more on performance and graphics than other functionalities. But it is always simple to extend the functionality of the engine by writing some scripts. Here is a list of games developed by it:
- Cryengine (https://www.cryengine.com/): is another famous engine. Cryengine is similar to Unreal in focusing on performance and graphics. Here is a list of games developed by it:
- Cocos Creator (http://www.cocos2d-x.org/): is similar to unity in the interface and how to use it. It’s used to create 2D games as it uses Cocos2D-X. Examples of games using it (Cocos2D-X):
- Phaser Editor (http://phasereditor.boniatillo.com/): is similar to MightyEditor as both of them are editors. Phaser Editor IDE is an update over eclipse so if you are used to eclipse, you won’t have huge problem with interacting with Phaser Editor. I couldn’t find any known games designed using it.
- Godot (https://godotengine.org/) is our last engine in the list. This engine is very similar to Unity, and even needs coding skills, the only difference is that it is open source. It is not popular, so I don’t recommended this much, but it could suit somebody out there. Here a list of games created using it:
- Tap Ball Adventures (https://play.google.com/store/apps/details?id=com.pixelmaskgames.tapballadventures)
- Castle Baloneybeard (http://gamejolt.com/games/castle-baloneybeard/196758)
- Ghost Driver (https://play.google.com/store/apps/details?id=com.cyphercode.ghostdriver)
- Curse of the demon’s sword (https://play.google.com/store/apps/details?id=com.DevilWare.DemonSword)
|Engine Name||Type||Coding||Platform||Target Outputs||Popularity||Cost|
|Bitsy||Educational (2D Story based Topdown)||No||Web IDE||HTML5||Not popular||Free|
|Dungeon Decorator||Educational (2D Story based Platformer)||No||Web IDE||HTML5 only in the program||Not popular||Free|
|Scratch||Educational (2D Generic)||No||Web IDE||HTML5 only in the program||Popular between children||Free|
|ChoiceScript||Specific (Interactive Stories)||No||Any text editor||HTML5||Popular||Free|
|Ink||Specific (Interactive Stories)||No||Win / Mac / Linux||Any Target||Moderate||Free|
|Inform||Specific (Interactive Stories)||No||Win / Mac / Linux||HTML5||Moderate||Free|
|Adventure Game Studio||Specific (2D Point Click Adventure)||No||Win||Win||Moderate||Free|
|RPG in a Box||Specific (3D RPG)||No||Win / Mac / Linux||Win / Mac / Linux||Not popular||$20|
|PuzzleScript||Specific (2D Turnbase Puzzle)||No||Web IDE||HTML5||Moderate||Free|
|Construct 2||Generic (2D)||No||Win||Crossplatform||Popular||Limited ($100)|
|Stencyl||Generic (2D)||Optional (HaXe)||Win / Mac / Linux||Crossplatform||Popular||Limited ($100)|
|Game Maker||Generic (2D)||Optional (GML)||Win||Crossplatform||Popular||Limited (>$99)|
|Multimedia Fusion 2.5||Generic (2D)||No||Win||Crossplatform||Moderate||Limited (>$100)|
|GDevelop||Generic (2D)||No||Win / Mac / Linux / iOS / Android||Crossplatform||Not popular||Free|
|Gamesalad||Generic (2D)||No||Win/Mac||Crossplatform||Not popular||Subscription ($17)|
|Gamebuilder Studio||Generic (2D)||No||Win / Mac||Crossplatform||Not popular||Limited ($100)|
|Buildbox||Generic (2D)||No||Win/Mac||Crossplatform||Not popular||Subscription ($99)|
|Voxatron||Generic (3D)||Not sure||Win/Mac/Linux||HTML5||Not popular||$20|
|Pico-8||Generic (2D)||Yes (Lua)||Win / Mac / Linux||HTML5||Moderate||$15|
|PixelVision 8||Generic (2D)||Yes (Lua)||Win / Mac / Linux||Crossplatform||Not popular||$10|
|Unreal Engine||Generic (3D)||Yes (C++)||Win / Mac||Crossplatform||Popular||Free (pay %5 revenue)|
|Cryengine||Generic (3D)||Yes (Lua)||Win||Win / Linux / Xbox / PS4||Moderate||Subscription (>$50)|
|Superpowers||Generic (2D/3D)||Yes (Typescript)||Win / Mac / Linux||HTML5||Not popular||Free|
|Godot||Generic (2D/3D)||Yes (Python)||Win / Mac / Linux||Crossplatform||Not popular||Free|