# Transcience Top-down twin-stick bullet-hell with a dedicated, server-authoritative backend. Godot 4.7, GDScript, no external runtime dependencies. ## Play ```bash tools/server.sh # dedicated server on :27015 tools/client.sh --join --name ada # connect a client ``` Or run one client and press **Host and play** for a listen server. **Controls** — WASD move, mouse aim, LMB fire, **E** on the ring in the hub to enter a dungeon, **hold F** for three seconds to escape back to the hub. ## Develop ```bash tools/check.sh # parse-check every script ~5s tools/test.sh # GUT suite, headless ~2s tools/smoke.sh # server + 2 bot clients, ENet ~35s godot --headless --path . --script tools/bench.gd ``` Read [CLAUDE.md](CLAUDE.md) first — it is short, and the Godot CLI gotchas in it will otherwise cost an afternoon. ## What is here | | | | --- | --- | | **Twin-stick bullet hell** | Server-simulated bullet field, ~350 concurrent bullets at 0.24 ms/tick. | | **Authoritative multiplayer** | Clients send input only. Hits, damage, death and instance transfers are server decisions. Prediction + reconciliation for the local player. | | **Enemies** | Four readable behaviours (static, drift, orbit, approach, strafe) composed with bullet emitters. | | **Boss** | The Warden of the Fold: stationary, four phases, each adding one idea. Defined entirely as data. | | **Lobby hub** | Shared persistent instance with a portal into dungeon runs. | | **Emergency escape** | Three-second channel back to the hub, cancelled by damage. | ## Docs - [docs/ROADMAP.md](docs/ROADMAP.md) — what is built, what is next, where each feature lives - [docs/DECISIONS.md](docs/DECISIONS.md) — settled design decisions and their reasoning - [CREDITS.md](CREDITS.md) — third-party asset attribution - [CLAUDE.md](CLAUDE.md) — commands, invariants, Godot CLI gotchas - [docs/WORKFLOW.md](docs/WORKFLOW.md) — agent-assisted Godot development, and why the setup looks like this - [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) — code map and the node-free simulation - [docs/NETCODE.md](docs/NETCODE.md) — replication model, hit validation, known gaps - [docs/ROADMAP.md](docs/ROADMAP.md) — what is built and what is next