// the find
eduard-permyakov/permafrost-engine
An OpenGL RTS game engine written in C
A from-scratch OpenGL 3.3 RTS engine in C, built by one developer to power their own commercial game (EVERGLORY, on Steam) rather than as a generic framework. It's for someone who wants to see real implementations of RTS-specific systems — flow-field pathfinding, formation movement, fog of war — in plain C, not for someone looking for a batteries-included engine to drop a game into.
The pathfinding and movement stack is the real deal, not a toy: hierarchical flow fields, RVO/ClearPath for dynamic collision avoidance, and the Hungarian algorithm for formation reshuffling are genuinely non-trivial algorithms implemented and shipped in a real game. The fiber system with zero-copy copy-on-write forking of the entire Python interpreter state (for save/restore) is an unusual, clever piece of systems design you don't see in hobby engines. It's proven under real constraints — EVERGLORY shipped on Steam using this exact codebase, so the engine isn't just a demo reel.
It embeds Python 2.7.17, which has been EOL since January 2020 — anyone extending this is stuck maintaining or porting a dead scripting runtime with no stated Python 3 path. The repo commits gigabytes of binary art assets (textures, .blend files, bitmaps) directly into git history, so cloning is heavy and only gets worse over time. Licensing is GPLv3 with a 'special exception granted case-by-case by email' — fine for learning from, but a real blocker if you want to ship a commercial game without emailing the author first. There's no visible test suite or CI for core systems like pathfinding and collision avoidance, so regressions in those complex algorithms would only surface by playing the game.