openage
A community-driven, open-source reimplementation of the Genie Engine behind Age of Empires II (and related titles) — a genre-specialized RTS engine. Built by SFTtech volunteers (~14.2k★). C++20 core, Python 3 for scripting / media conversion / modding, Cython as the glue. GPLv3-or-later.
What it is and isn’t
- Goal: a free, moddable, cross-platform engine that authentically recreates AoE-style RTS mechanics — with an integrated Python console, AI scripting, multiplayer/matchmaking, and the nyan notation system for moddable content.
- Status: in active development with limited playability — the team recently rebuilt the game simulation “for simplicity and extensibility,” trading working gameplay for architecture (the honest state of a from-scratch engine reimplementation).
- Assets: ships no game data — requires the original AoE I/II (or Definitive Edition) files. Unaffiliated with Microsoft; deliberately not network-compatible with the originals.
Why it matters to the spoke
- RTS cohort with Spring. Two RTS-specialized engines arriving together establishes genre-specialized engines as a real category beside the general-purpose ones — and shows two flavors of it: Spring is a generic RTS platform (any RTS via Lua), openage is a faithful clone of a specific game’s engine. Different bets within “RTS engine.”
- Copyleft + the clone/reimplementation pattern. GPLv3 puts it on the copyleft end with Spring. And it’s the spoke’s first engine reimplementation (rebuild a classic proprietary engine as open source, BYO original assets) — a distinct origin story from both the ground-up engines and the “formerly-commercial → open-sourced” lineage (torque2d, o3de).
Related
spring-rts · torque2d · o3de · godot-engine · synthesis