Files
TheriapolisV3/_design_handoff/character_creation/README.md
T

94 lines
4.6 KiB
Markdown
Raw Normal View History

# Character Creation — Design Handoff Snapshot
**Snapshot date:** 2026-04-25
**Created for:** Claude Design (UX redesign of the character creation flow)
**Project phase at snapshot time:** Phase 5 M3 complete (M4 not yet started)
**Design returned:** 2026-04-25 — see `from_design/` and `IMPLEMENTATION_STATUS.md`
## What this folder is
A curated, self-contained copy of every file Claude Design needs to
understand and redesign the **character creation screen**. The folder
mirrors the original repo layout so paths stay obvious:
```
Theriapolis.Game/Screens/ ← the screen + adjacent flow screens
Theriapolis.Core/Data/ ← record schemas (CladeDef, ClassDef, etc.)
Theriapolis.Core/Rules/Character/ ← what the screen builds (Character, Builder)
Theriapolis.Core/Rules/Stats/ ← stat math the screen previews
Content/Data/ ← the actual content shown (clades, species, classes, backgrounds)
DESIGN_INTENT.md ← extract from the Phase 5 plan §4.2
MANIFEST.md ← file list + refresh command
```
## What this folder is NOT
These files are **copies, not the canonical source**. The real files live
at the same paths *without* the `_design_handoff/character_creation/`
prefix. If something in here motivates a code change, edit the original.
It is safe to delete this folder once the Claude Design conversation
wraps up — nothing in the build references it.
See `../README.md` for the broader `_design_handoff/` policy.
## What Design should know going in
The current implementation is **a single-screen multi-selector**, not the
multi-step wizard the Phase 5 plan originally called for. Section 4.2 of
the plan (extracted into `DESIGN_INTENT.md`) describes the originally-
intended 7-step flow: Clade → Species → Class → Background → Stats →
Skills → Name. M2 collapsed that into one screen for shipping speed; the
data model and validation already support either presentation.
**Inputs the screen orchestrates** (see `Content/Data/` for full content):
- 7 Clades (Canidae, Felidae, Mustelidae, Ursidae, Cervidae, Bovidae, Leporidae)
- 19 Species across those clades
- 8 Classes (Fangsworn, Bulwark, Feral, Shadow-Pelt, Scent-Broker, Covenant-Keeper, Muzzle-Speaker, Claw-Wright)
- 12 Backgrounds
- 2 stat-roll methods (Standard Array assignment, 4d6-drop-lowest reroll)
- N class-driven skill picks (varies 2-4 by class)
- A name field
**Output:** a `Character` record (see `Theriapolis.Core/Rules/Character/Character.cs`)
with final ability scores, level 1 HP, skill proficiencies, and a starting-
kit-populated `Inventory`.
## What the current screen does well
- All selectors visible at once → no "what step am I on" confusion
- Defaults are sensible → press Confirm immediately and you get a working character
- Real-time validation message at the bottom
- Live stat preview with clade + species mods applied
## Known weaknesses worth addressing
- **No portrait or visual identity.** The screen is text-only; no clade/species illustration.
- **No stat-array manual swapping.** Standard Array auto-assigns by class priority; player can't drag the 15 to a different ability.
- **Skills are presented as a flat row of toggle buttons.** Wraps inelegantly with 10+ skill options.
- **Trait/detriment text is hidden.** Selecting a clade/species shows only the name; you can't see "Pack Instinct: reaction grants +2 AC" without picking and consulting the inventory.
- **No retry flow for rolled stats.** "Reroll" replaces the values but doesn't show the previous roll for comparison.
- **Background flavor text doesn't display.** Each background has 1-2 sentences of role-playing flavor that never surface.
- **No starting kit preview.** Player doesn't see what they'll start with until after creation finishes.
These are not blockers — they're the natural targets for a UX pass.
## File index
See `MANIFEST.md` for the complete list of files included in this snapshot
plus the bash command to refresh them from the canonical sources.
## What Claude Design returned
`from_design/` contains the React/HTML/CSS prototype Claude Design built
from this snapshot — a 7-step wizard with an illuminated-codex aesthetic,
drag-and-drop ability assignment, hover popovers for traits, and a live
aside summary panel.
`IMPLEMENTATION_STATUS.md` records what the C# / Myra port preserves
faithfully, what was adapted (drag-drop → click-pick-place; hover popovers
→ click-to-show detail panel), and what remains as visual / aesthetic gap
(parchment background, gilded accents, serif display fonts — Myra theming
work, deferred to M6+).