Free and open source software video games
This is a list of notable open-source video games. Open-source video games are assembled from and are themselves open-source software, including public domain games with public domain source code. This list also includes games in which the engine is open-source but other data (such as art and music) is under a more restrictive license.
Open engine and free data
The games in this table are developed under a free and open-source license with free content which allows reuse, modification and commercial redistribution of the whole game. Licenses can be public domain, GPL, BSD, Creative Commons, zlib, MIT, Artistic License or other (see the comparison of Free and open-source software and the Comparison of free and open-source software licenses).
Open-source games with non-free data
Only the game engines in this table are developed under an open-source license, which means that the reuse and modification of only the code is permitted. As some of the games’ content created by the developers (sound, graphics, video and other artwork) is proprietary or restricted in use, the whole games are non-free and restricted in reuse (depending on the content license). The motivation of developers to keep own game content non-free while they open the source code may be the protection of the game as sellable commercial product. It could also be the prevention of a commercialization of a free product in future, e.g. when distributed under a non-commercial license like CC NC. By replacing the non-free content with free content, these games could also become completely free. In practice, many projects include a mixture of free and non-free own content.
Open-source remakes with non-free data from the proprietary original
The video game remakes in this table were developed under an open-source license which allows usually the reuse, modification and commercial redistribution of the code. The required game content (artwork, data, etc.) is taken from a proprietary and non-opened commercial game, so that the whole game is non-free. See also the Game engine recreation page.
Video games in this table are source-available, but are neither open-source software according to the OSI definition nor free software according to the Free Software Foundation. These games are released under a license with limited rights for the user, for example only the rights to read and modify the game’s source for personal or educational purposes but no reuse rights beside the game’s original context are granted. Typical licenses are the creative commons “non-commercial” licenses (e.g. CC BY-NC-SA), MAME like licenses or several shared source licenses.
Proprietary developed games, later released under varying licenses
For games that were originally developed proprietary as commercial closed source product, see also Category:Commercial video games with freely available source code.
Open Source Game Development – Let’s get an overview into what and where to find resources for making your game.
Game development can be very expensive and time-consuming, so it is encouraging to know you can find tools that offer professional grade functionality, ease of use, and won’t destroy your budget. Here is my personal selection of software (divided into ten categories) you don’t have to pay for, but will give you everything you need to create your independent game.
(Protip: Many projects listed below accept donations or run funding campaigns, so if you find someone’s creation useful, consider supporting them.)
1. The game engine itself
At this point, the obvious choice would be Godot Engine. It’s a completely open-source 3D/2D capable multiplatform engine with the editor available on all three great OS families (also installable through Steam). Although it’s not as advanced as Unity or Unreal, it’s hard not to admire its ease of use, a comfortable python-like scripting language (with C# support coming soon), constant improvement, and a very Indie-friendly philosophy. Allow me to quote:
“No strings attached, no royalties, nothing. Your game is yours, down to the last line of engine code.”
Check it out here.
Platforms: Linux, Mac, Windows
Open Source Game Development – Godot Engine
2. 3D Modeling, Rigging, Animation, UV Mapping, Texture Painting, Video Editing, Rendering
For all those tasks there’s one omnipotent tool at this point, and yes, it’s Blender. Well, it is often rejected by beginners because it’s not an easy to learn software, but then again, what professional 3D software is? And it is professional, fully capable, ever-expanding software, on par with commercial giants like 3ds Max and Maya (useful tip – making Blender’s interface and key bindings similar to them is a matter of a few clicks). Some would say that it even exceeds the capabilities of most, with its countless addons and openness. A gigantic community of users can guarantee countless tutorials for beginner and pro alike.
The main scripting language – and the basis of the application’s functionality – is Python, so if you know your way around it nothing will stop you from using it to expand the functionality by yourself, or simply automate some tasks.
By the way – Blender is also one of the best open-source video editing programs out there. Again, it offers a little bit different approach in some aspects, but you probably won’t regret taking the time to learn. Camera mapping and camera tracking are in the package.
Platforms: Linux, Mac, Windows
3. 2D Art
Need to create concept art, sprites, and hand-drawn textures? The Open Source world will have you covered. Recommending a single application to handle detailed 2D tasks is impossible, so I’ll just go ahead and split the category further into three:
Krita for digital painting (a powerful tool with a great community). Available on: Linux, Mac, Windows.
Inkscape for vector graphics specifically (quite heavy but perfectly functional). Available on: Linux, Mac, Windows.
GIMP for raster graphics specifically including image retouching (lightweight and very powerful in skillful hands, not to mention countless plugins further expanding it’s capabilities) . Available on: BSD, Linux, Mac, Solaris, Windows.
4. Sound Editing
Most audio related work, you will find yourself in while working on your game, can be done with Audacity. Multi-track editing and recording with superb compatibility. Again, an impressive collection of tools and effects, with the possibility of expanding them with plugins.
If you’ll need anything with more overall control, Ardour will be the professional tool for you.
Both available on: Linux, Mac, Windows
5. Music production
Let’s be honest – if you are willing to attack the task of creating the game’s music by yourself you already know what type of software you need. Try LMMS then and you shouldn’t be disappointed. Created as an Open Source alternative to FL Studio and actively growing. Comes with a lot of instruments, samples, and effects included in the package.
6. Code editing and IDE
When in need for a lightweight IDE for fast code editing (whether it’s Python, C, or HTML) Atom and Geany are my number 1 and 2 choices. They’re simple, powerful and can deal with almost every language out there. Both available on Linux, Mac, and Windows.
For more heavy workflows NetBeans and Code::Blocks will be sufficient. C# specifically is quite nicely paired with Mono::Develop. All three available on: Linux, Mac, Windows.
For web development, you may be better of with BlueFish which is one of the best options out there.
7. Basic office productivity
Whether you need to create a presentation explaining why your game will be revolutionary – or categorize the assets you will be creating for the next couple of months in to nicely organized tables – you will need some productivity software at some point.
After the migration of OpenOffice to Apache, the most praised free productivity package is seemingly LibreOffice and for a good reason. Actively working with AMD to implement OpenCl and make use of APU’s, constantly growing in functionality – a good choice for any small business. Available on: Linux, Mac, Windows.
8. Tools for writers
Are you writing a story for your game and constantly find yourself distracted and procrastinating? Try distraction free writing software like Focus Writer, which is available for Linux, Mac, Windows. If you want something extremely simple, try PyRoom (available only on Linux).
For plot and character management during the creative process, Plume Creator (Linux and Windows only) and Manuscript (Linux, Mac, and Windows) are quite handy.
Trelby (Linux and Windows only), on the other hand, is a great open-source alternative to every other scriptwriting software.
9. Page layout, publishing, and typesetting
Even if you focus on Internet marketing, creating professionally looking publications for promotion purposes can be in your future. For professional page layout editing Scribus will work better than many proprietary alternatives. Available on: eComStation, BSD, Haiku, Linux, Mac, OpenIndiana, Solaris, Windows.
And if LaTeX is your favorite way of dealing with text, Texmaker (Linux, Mac, Windows) is quite handy.
Yes, it’s a fact – if you are willing to publish the game yourself, at some point you will have to do some accounting. If that’s also a task you want to handle personally (why not?) then you will be probably better off using a tool that will help you keep track on all the details. A great Open Source tool for small businesses would be GnuCash that will handle your budget and transactions with ease.
Platforms: BSD, Linux, Mac, Solaris, Windows
BONUS: The Operating System.
Why not go Open Source all the way? Most operating systems based on the Linux kernel (which is probably the best option at this moment) are basically giant IDE’s hidden behind friendly Graphical User Interfaces (with infinitely powerful command line tools) so for programmers, it can be a very beneficial change. For the rest – look above and imagine it’s just a tiny bit of software available for Open Source OS’s (of course, proprietary software like Maya is also available on them, typical multimedia playback is not a problem, and more and more games are getting multiplatform all the time). Difficult installation and complicated use are a thing of the long gone past. Of course, the curious user, eager to learn how to use the command line, will find himself benefiting quite fast…
My recommendation for first-time users would be naturally Ubuntu or one of it’s flavors representing different desktop environments like Kubuntu (or Lubuntu for older computers particularly). Remember: For the stable experience always go with the LTS version (currently 16.04) and there is nothing wrong in installing an OS on a virtual machine or as a second operating system. Online tutorials that can help you with both options are available all over the Internet.
Other great choices would be OpenSuse (“Leap” for stability, “Tumbleweed” for newer packages) or Fedora which focuses on latest software while slightly sacrificing stability.
And that’s just the tip of the iceberg!
Do you agree with my selection? What Open Source software do you use regularly? Let me know in the comments or through Twitter @M_Klekowicki
Join Us Now!
How about writing your own piece for IndieWatch?