I’ve been heads-down building Mythic League, a persistent fantasy guild manager.
The goal is the long-term depth of manager sims like Hattrick / Football Manager, but set in a tactical fantasy world: you run a guild, develop heroes across seasons, play scheduled league matches, and deal with the economic consequences of every decision.
This is not an “idea” post. The backend, schema, and core simulation loop already run locally end-to-end, and there’s a first-run workflow that takes you from an empty database to scheduled matches, battle processing, and a replay log.
CURRENT STATE (WHAT’S IMPLEMENTED)
You can do this today in local dev:
- Create an account and a guild
- Use a dev-only panel (guarded by DEV_MODE=true) to:
- seed a world (season, divisions, NPC guilds, missions)
- seed starter heroes
- schedule matches
- enqueue a match into a Redis-backed battle queue
- Process matches via a background battle worker
- Persist match results and battle logs in Postgres
- Navigate core UI areas (roster, missions, market, matches, league standings)
On the persistence/narrative side, these are real tables + queries + endpoints (not a pitch):
- Guild Chronicle: chronicle_events table + API endpoint to list events per guild
- Hero Legacy: hero_legacy table for long-lived hero career stats / defining moments
- Hall of Fame: hall_of_fame table + API endpoint
THE STACK (ACTUAL REPO STACK)
- Backend: Rust + Axum (HTTP + WebSockets)
- Jobs/workers: Rust crate for background processing (including battle processing)
- Battle sim: a dedicated battle-engine crate
- Database: PostgreSQL 16
- Queue/realtime: Redis 7 (battle queue + pub/sub for match events)
- Frontend: React 18 + Vite + Tailwind
- Shared types: ts-rs is in the Rust workspace dependencies (Rust↔TS type sharing)
The repo is split accordingly: crates/api, crates/jobs, crates/battle-engine, crates/db, crates/domain, plus frontend/.
WHY I’M LOOKING FOR A CO-MAINTAINER
I’m not looking for someone to “help out” with busywork. I’m looking for a technical partner who wants to co-own hard problems in a production-grade simulation game codebase.
The interesting work is in the seams:
1) Battle simulation determinism + debugging ergonomics
- Matches are simulated by the worker with a derived seed and a blocking simulation call.
- I want to tighten determinism guarantees and make edge cases easier to reproduce and regression-test.
2) Market correctness under concurrency (Redis + Postgres boundaries)
- Redis is already in the stack and there are dev endpoints for closing/settling expired auctions.
- I want to nail atomic settlement and sniping behavior and prevent race conditions between API calls, settlement, and background processing.
3) Chronicle / legacy data that stays useful long-term
- Chronicle events are persisted as first-class rows; hero legacy lives independently.
- I want to keep this useful, queryable, and fast without turning it into an unbounded logging dump.
4) Economy + progression balancing that survives seasons
- There are weekly jobs (training, salaries) and match-driven income.
- I want help validating the sinks/sources and preventing degenerate strategies (inflation, runaway guilds, “always optimal” builds).
WHAT YOU’LL BE WORKING WITH
- A repo that boots locally with Docker (Postgres + Redis)
- A defined first-run workflow that gets you from empty DB to simulated matches
- A backend split into API / domain / DB / jobs / battle engine crates
- A React UI with real pages and navigation (not just a landing page)
If you’re a Rust + TypeScript dev and you want to co-maintain a simulation-heavy game project, I’d like to talk.
Let's Connect!
Top comments (0)