colobot
Self-hostable open-source educational programming game
Colobot: Gold Edition is a free, open-source real-time strategy game with an educational programming component. While primarily single-player, it is fully open-source and self-buildable for offline and LAN play.
Key features
- Real-time strategy gameplay
- In-game programming
- Educational missions
- Fully open-source
Pros & cons
Strengths
- Teaches programming
- Self-buildable
Trade-offs
- No real multiplayer server
- Build process complex
colobot replaces
Last reviewed Sep 13, 2026 · 824 words
Colobot teaches a 10-year-old to write loops by making a robot fetch titanium on Mars, and it does so without a server, an account, or a network connection. That is what "self-hostable" means for this entry: you can build it from source, ship the binary to every machine in a classroom, and never depend on anyone. The Gold Edition is a community reconstruction of a 2001 commercial game from Epsitec, open-sourced in 2012 and maintained by TerranovaTeam since, released under GPL-3.0 with 1,243 stars on GitHub. It is single-player, it runs offline, and the "Hard" difficulty on the row is about compiling it, not playing it.
The programming is the game
Missions play out as a real-time strategy game: you land on a planet, extract resources, build factories, and fight insect enemies, controlling a squad of robots. The twist is that every robot can be programmed in CBOT, a language that looks like a cut-down C++ with classes, loops and conditionals, and the later missions are designed so that manual control becomes tedious and automating the grunt work is the only sane path. A child writes while (true) to keep a grabber ferrying ore, then learns to check if (energyCell == null) when the robot stalls. Around 40 campaign missions plus free-play maps take a curious teenager a few dozen hours, and the in-game documentation for CBOT is complete enough to skip external tutorials.
Installing it is easy on Linux and Windows, hard from source
For most people the honest path is a package. Debian and Ubuntu ship colobot in their main repositories, Flathub has a build, and Windows installers sit on the project's download page. Those are self-hostable in the sense that matters: no store, no launcher, no telemetry, and the installer can be copied to a USB stick for machines with no internet. Building from source is where the difficulty rating comes from. The engine repository is C++ with CMake, and the game data lives in a separate colobot-data repository that must be checked out and passed to the build; the dependency list includes SDL2, SDL2_image, SDL2_ttf, OpenGL, GLEW, Boost, libpng, OpenAL and libsndfile, and the data build needs Python and gettext for the translations. On a fresh Ubuntu box it is about 30 minutes of installing dev packages and 10 minutes of compile time on 4 cores. Do it once to make a classroom package; do not do it on every machine.
LAN play is not what you think
The row's "offline and LAN play" deserves a plain reading. There is no multiplayer server and no networking in the current engine; multiplayer was a long-standing wishlist item that never landed. LAN play means every seat runs its own copy of a fully offline game, with saves in each user's home directory. For a lab, that is arguably better: no server to keep alive, nothing to patch on a Tuesday night, and a shared folder of level files or saved programs is the only "infrastructure". If you want children coding together on one map, Luanti with a Lua modding session is the genuine multiplayer answer.
Who actually runs it
Three groups. Parents who want a programming game with no accounts and no in-app purchases for a child between roughly 9 and 14. Teachers and code-club volunteers who need something installable on locked-down school laptops and playable without Wi-Fi. And adults who played the 2001 original and want the nostalgia at native resolution. It is not for anyone hoping for a modern engine; the graphics are cleaned-up 2001, the interface is dated, and the translation quality varies by language. Free and fully open is the sell, and it is a good one.
The bigger-project question
Unlike most rows in this category there is no larger sibling doing the same thing; the commercial "programming games" it is listed as an alternative to are single-player desktop titles with online DRM, which is the point of picking this. For a hosted, browser-based, multi-user coding classroom, a self-hosted instance of a code playground is a different kind of tool, and the games category is not where it lives. For open-source strategy without the coding, OpenTTD is the obvious neighbour and does have real multiplayer.
What I'd do
Install from the distribution package or Flathub, never from source, unless you need a custom build for a lab image. Put it on a machine with 512 MB free RAM and any GPU from the last 15 years, sit with the learner through the first 3 missions so the CBOT editor is not a surprise, and then leave them to it. Keep a copy of the installer on a USB stick, because the whole appeal is that this game works when the network does not.
Similar game servers apps
Mindustry
Game ServersTower-defense and factory game with servers
Replaces Factorio
Lichess
Game ServersOpen-source chess server and platform
Replaces Chess.com
OpenRCT2
Game ServersOpen-source remake of RollerCoaster Tycoon 2
Replaces RollerCoaster Tycoon
papermc-docker
Game ServersContainerized Minecraft Java server image
Replaces Minecraft Realms
ArchiSteamFarm
Game ServersTool for farming Steam cards from multiple accounts
Replaces Idle Master
2048
Game ServersSelf-hostable browser version of the 2048 sliding puzzle
Replaces Mobile puzzle games