Files
ray 50b48e0c62 Update org profile for monorepo consolidation
All crates now live in sc/reforged. Removed references to the
deleted per-crate repos and updated architecture diagram.

Co-authored by AI
2026-04-13 17:49:43 -05:00

46 lines
2.2 KiB
Markdown

# Stellar Conflicts
A 2D multiplayer space combat game — think bullet hell meets persistent universe. Originally a Flash game, now rebuilt from scratch in Rust.
## Repository
**[`reforged`](https://git.oat.im/sc/reforged)** is the monorepo. Clone this one — it contains everything.
```bash
git clone https://git.oat.im/sc/reforged.git
cd reforged
cargo xtask serve # starts authd + zoned + overlord
# then open godot/ in Godot 4.5
```
## Architecture
Everything is Rust — there is no GDScript. The repo is a Cargo workspace with all crates under `crates/`:
| Crate | What it does |
|-------|-------------|
| `sc-core` | Stateless game simulation — types, defs, tick functions, wire protocol. The heart of the game. No engine dependency. |
| `sc-reforged` | GDExtension bridge (cdylib). Rust GodotClass nodes for the entire client — entities, UI, networking, world. |
| `sc-zoned` | Zone server. Runs the authoritative sim, relays messages between clients. |
| `sc-authd` | Auth server. Accounts, squads, leaderboards, zone tokens. |
| `sc-overlord` | AI team commander. Spawns and directs NPC fleets, manages base capture strategy. |
| `sc-dashboard` | Admin dashboard. |
| `sc-decode` | Packet decoder tool for debugging the wire protocol. |
| `xtask` | Dev task runner (`cargo xtask serve`, `cargo xtask build`, etc). |
```
┌──────────┐
│ sc-core │ stateless sim, shared types
└────┬─────┘
┌─────────┼──────────┬──────────────┐
▼ ▼ ▼ ▼
┌───────────┐ ┌────────┐ ┌──────────┐ ┌───────────┐
│sc-reforged│ │sc-zoned│ │sc-authd │ │sc-overlord│
└───────────┘ └────────┘ └──────────┘ └───────────┘
┌────────┐
│ godot/ │ scenes & assets (no scripts)
└────────┘
```