Unreal prototype

An Unreal Engine 5 project that builds three things in order and proves each one feels right before anything is built around it: a movement controller, fighting, and crafting. Server-authoritative from the first line, C++ first, data-driven, telemetry from step 2, and worked as a ladder of small proofs rather than a roadmap.

Step 1 is built: Salty.uproject on Unreal Engine 5.8, two modules, the headless test runner and the gym. Step 2 (telemetry) is next.

Read

  • Docs/Design.md: what this is, in about two hundred lines. Start here.
  • Docs/Steps.md: the order of work and what closes each step.
  • Docs/Spec/: the specifications an implementer builds from.
  • Docs/Ideas.md: what was carried over from the two earlier projects and not yet built.
  • Docs/Decisions.md: every decision, the open ones, the deferred ones.
  • CLAUDE.md: the instructions an AI agent works from in this repository.

Layout

UnrealEnginePrototyping/
├── CLAUDE.md               Instructions for an AI agent: conventions, layout, commands, upkeep.
├── README.md               This file.
├── Docs/                   Design, steps, ideas, decisions, worklog, and Spec/ with one document per system.
├── Salty.uproject          Unreal Engine 5.8. At the root, which is what the .gitignore assumes.
├── Source/                 SaltyCore (rules, no actors) and Salty (gameplay). Variant_* is template reference.
├── Content/                Assets, one folder per feature; Maps/L_Gym; Tests/; the Fab packs.
├── Config/                 Engine and game config; Tags/ holds the gameplay tag sources.
└── Scripts/                Test and build scripts run by hand; Authoring/ for editor Python.

Getting started

Open Salty.uproject with Unreal Engine 5.8, run Scripts/run-tests.sh, and press Play in L_Gym with two clients and "Run Dedicated Server" on. Scripts/Authoring/create_gym.py rebuilds the gym.

Binary assets go through Git LFS; run git lfs install once per machine.

S
Description
No description provided
Readme
3.1 MiB
Languages
Go 41.8%
JavaScript 33.1%
C++ 10.7%
Python 6.9%
HTML 5.3%
Other 2.2%