* Write the Unreal documentation set: design, steps, ideas, decisions and specs Rewrites the design and engineering docs of the two earlier Unity projects (Adventurer Guild, Project Malleable) for an Unreal Engine 5 prototype that builds and proves three things in order: a movement controller, fighting and crafting. Neither earlier core loop is carried; their ideas are catalogued as features with what each needs. - Docs/Design.md: the human summary (pillars, fixed decisions, glossary) - Docs/Steps.md: a ladder of fifteen proofs, the first six in full - Docs/Ideas.md: salvaged ideas from both projects, none scheduled - Docs/Decisions.md: D-01..D-36, open decisions OD-01..OD-08, deferrals - Docs/Spec/: notation, Architecture, Movement, Interaction, Combat, Crafting, Networking, Telemetry, UI, written as Unreal C++ skeletons - CLAUDE.md and README.md for the repository * Add the stat block: one attribute set on every body, every influence an effect Every body (player, enemy, NPC) carries the same UStatBlockAttributeSet, and every outside influence on it is a gameplay effect: base values, buffs, debuffs, ground surfaces, carried weight, gear, being downed. Counters are tags and attributes on the receiver: immunity blocks by tag, resistance scales by attribute, cleanse removes by tag. Same status from several sources: strongest wins; different statuses multiply. - Docs/Spec/Stats.md: the block, effects and their five sources (abilities, areas, surfaces, items, the world), stacking, counters, readers, tests - Movement: the movement component's tagged speed-multiplier map is removed; speed is tuning times the MoveSpeed attribute; the ground surface trace turns mud into an effect; the gym gets mud and ice patches - Combat: the attribute set moves to Stats; enemies and kits carry FStatBlockDefaults; the funnel reads MagicResist and Immune.Damage tags; taunt and mark are statuses - Interaction: carried weight is GE_Encumbered against CarryCapacity - Crafting: class bonuses are the WorkSpeed and WorkQuality attributes; enchantments may grant a holder effect - Steps: step 5 builds the block with mud, a volume and an immunity - Decisions D-37 and D-38; design summary, CLAUDE.md, indexes, worklog
45 lines
3.1 KiB
Markdown
45 lines
3.1 KiB
Markdown
# Documentation
|
|
|
|
Two layers, kept apart on purpose.
|
|
|
|
**For people.** Short, and meant to be read end to end.
|
|
|
|
| Doc | Covers |
|
|
| --- | --- |
|
|
| [Design.md](Design.md) | What this is, the three things it proves, the fixed decisions, what it is not yet, the glossary. Start here. |
|
|
| [Steps.md](Steps.md) | The ladder of work: fifteen rungs, each closed by a proof. The next few in full, the rest sketched. |
|
|
| [Ideas.md](Ideas.md) | The ideas carried over from the two earlier projects as features a world could hold, with what each needs. None scheduled. |
|
|
| [Decisions.md](Decisions.md) | One line per decision with a pointer, the open decisions that block steps, and what is deliberately deferred. |
|
|
| [Worklog.md](Worklog.md) | One terse line per step closed or wall hit. The memory. |
|
|
|
|
**For an implementer that lifts code**, which today means Claude. Long, C++-shaped, and meant to be built from.
|
|
|
|
| Doc | Covers |
|
|
| --- | --- |
|
|
| [Spec/README.md](Spec/README.md) | Notation, status markers, the twelve cross-cutting rules every spec obeys. Read before any spec. |
|
|
| [Spec/Architecture.md](Spec/Architecture.md) | Modules, lifetimes, authority, content, tags, the C++/Blueprint line, testing, conventions, gotchas. |
|
|
| [Spec/Stats.md](Spec/Stats.md) | The one stat block every body carries, effects and where they come from, stacking, counters. |
|
|
| [Spec/Movement.md](Spec/Movement.md) | The character, the movement component, input, the look model, camera modes, the gym, the feel checklist. |
|
|
| [Spec/Interaction.md](Spec/Interaction.md) | The one interaction system, carrying, throwing, highlighting. |
|
|
| [Spec/Combat.md](Spec/Combat.md) | Attributes, the damage funnel, the swing, enemies, downed and revive, abilities and kits, projectiles. |
|
|
| [Spec/Crafting.md](Spec/Crafting.md) | Families, parts, pieces, traits, substances, the pure rules, stations, activities, enchanting, the weapon seam. |
|
|
| [Spec/Networking.md](Spec/Networking.md) | The authority table, the responsiveness tiers, the posture, sessions, identity, persistence. |
|
|
| [Spec/Telemetry.md](Spec/Telemetry.md) | The sink, the envelope, the catalogue. |
|
|
| [Spec/UI.md](Spec/UI.md) | The HUD, the prompt, the theme, world-space text, localisation, the menu. |
|
|
|
|
## Reading order
|
|
|
|
New here: `Design.md`, then `Steps.md`, then `Spec/README.md` and `Spec/Architecture.md`. About to build a step:
|
|
the step's entry in `Steps.md`, then the spec sections it links. About to decide something: `Decisions.md` first,
|
|
to see whether it was already decided or deliberately deferred.
|
|
|
|
## Conventions
|
|
|
|
- Version and status live in a document's header where it has one, never in its filename.
|
|
- Links are relative so the folder survives being moved.
|
|
- A spec that turns out wrong in the building is corrected in the same change as the code, under a **What was
|
|
built, and where it differs** heading at its end.
|
|
- A decision goes in `Decisions.md` the moment it is made. Newest first; never delete, supersede.
|
|
- The two earlier projects are referred to by name (Adventurer Guild, Project Malleable) when an idea's origin
|
|
matters, and not otherwise. Their docs are not copied here; they are in their own repositories.
|