finds.dev← search

// the find

JediKnightChan/EternalCrusadeResurrection

★ 432 · C++ · updated Mar 2026

Unreal Engine 5 multiplayer shooter C++ project, resurrection of Warhammer 40K: Eternal Crusade. Developed using "UE best practices" from Lyra for a more complex behaviour

A community-driven resurrection of Warhammer 40K: Eternal Crusade built on UE5, using Epic's Lyra starter game as a foundation and extending it substantially for a third-person multiplayer shooter with vehicles, melee, and cross-platform play. It's a serious project — active since at least UE4, with a launcher, dedicated server tooling, and gameplay analytics — not a toy. Most useful to developers who want a real-world example of Lyra extended beyond Epic's sample scope.

The Lyra extensions are the main draw: the Ability Queue System for buffering inputs during stuns, per-pawn PawnData customization (instead of Lyra's experience-global approach), and multi-channel QuickBar are all non-trivial additions that solve real problems Epic left open. The replication graph with dynamic spatial frequency nodes is a genuine attempt at scaling beyond Lyra's default player count limits, not just enabling it and hoping for the best. Cross-platform support (Windows, Linux, Android) with EOS P2P matchmaking and Linux dedicated servers is fully wired up — not aspirational. The Python tooling for extracting data from the original unpacked UE4 game is a specific, practical solution to a very specific problem that other revival projects face.

The content repo (ECRContent) is private, which means you can compile and run the code but you cannot actually play the game or see how the systems look in practice — the public repo is essentially a framework skeleton. There's no clear separation between 'ECR-specific' and 'reusable framework' code in the source layout, so pulling the useful pieces (the GAS extensions, the replication graph setup) into another project requires careful extraction. Documentation in the wiki covers high-level concepts but doesn't explain the non-obvious design decisions like why PawnData lives on GameState rather than using Lyra's Experience system more directly. Last push was March 2026 and commit frequency has slowed, suggesting the project may be in maintenance mode or the team's bandwidth has dropped.

View on GitHub →

// 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 →