finds.dev← search

// the find

SFTtech/openage

★ 14,247 · Python · NOASSERTION · updated Jun 2026

Clone of the Age of Empires II engine 🚀

A volunteer-built free engine reimplementation of the Genie Engine (Age of Empires 1/2, Star Wars: Galactic Battlegrounds), written in C++20 with Python scripting and a custom data/modding language called nyan. It requires original game assets to run — it replaces the engine, not the content. Aimed at developers who want to mod, study, or extend classic RTS mechanics without the original engine's constraints.

The architecture shows real engineering thought: a time-curve-based simulation model (instead of tick-by-tick state), flow-field pathfinding (correct choice for RTS unit movement at scale), and an ECS game simulation layer that's designed for extensibility from the start. The nyan language is a legitimate design decision — a purpose-built typed inheritance system for game data is more honest than bending YAML or JSON to do the same job. Documentation depth is unusual for a volunteer project: architecture diagrams, coordinate system docs, per-subsystem READMEs, and changelogs going back to v0.0.0. Cross-platform CI (Linux, macOS, Windows) is actively maintained and actually green.

Gameplay is currently non-functional — they explicitly say so in the README. They tore out the old simulation to rebuild it correctly, which is the right call architecturally, but means a 14k-star project that's been running for over a decade still can't be played. The build setup is heavy: Cython glue code, Qt6, their own custom configure script, and an optional custom CI system (Kevin) they maintain alongside GitHub Actions — real friction before you even write a line of code. You need to own a copy of AoE1 or AoE2 to do anything meaningful, which shrinks the contributor pool to people who already have the games and can navigate a non-trivial asset conversion pipeline. The nyan language, while technically interesting, adds a second codebase (SFTtech/nyan) as a dependency — if that project stalls, so does moddability.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →