first commit
This commit is contained in:
19
client/README.md
Normal file
19
client/README.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# /client — Godot 4.7 game client
|
||||
|
||||
GDScript. **Holds ALL game state and ALL game rules** (charter §2, §4). The AI never mutates state; the client validates and applies everything.
|
||||
|
||||
**Open:** Godot 4.7, import this folder as the project (`project.godot`).
|
||||
|
||||
## Responsibilities
|
||||
|
||||
- All state: stats, HP/MP, inventory, quest flags, Luck, disposition/approval (§8, §9)
|
||||
- All rules: deterministic combat, Luck branch-selection, move validation (§6, §7, §10)
|
||||
- The **canon log** — compact structured fact list, code-maintained, injected into every call (§11)
|
||||
- Talks to `/api` over HTTP. **No API key, ever.** Knows one base URL + role endpoints (§4)
|
||||
- Degrades to authored fallback text (from [`/content/fallback`](../content/fallback)) when the API is down (§13)
|
||||
|
||||
## Key rule — never do this (charter §2)
|
||||
|
||||
If an AI response directly sets a variable that persists, stop. Parse → validate → apply or discard.
|
||||
|
||||
See [`docs/`](docs/) for scene structure, input model, and combat wiring.
|
||||
13
client/docs/README.md
Normal file
13
client/docs/README.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# /client/docs
|
||||
|
||||
Client-specific documentation. Scoped to the Godot project.
|
||||
|
||||
Put here:
|
||||
|
||||
- Scene tree / autoload structure
|
||||
- Input model — menu vs free-text boundary, which must be visible (§15)
|
||||
- Combat wiring — deterministic damage, per-encounter seeding (§10)
|
||||
- Canon log data structure and fact-harvesting (§11)
|
||||
- HTTP client + fallback-degradation handling (§13)
|
||||
|
||||
Cross-cutting design (anything touching both client and api) goes in the root [`/docs`](../../docs), not here.
|
||||
11
client/project.godot
Normal file
11
client/project.godot
Normal file
@@ -0,0 +1,11 @@
|
||||
; Godot project configuration.
|
||||
; Minimal skeleton — open in Godot 4.7 to flesh out.
|
||||
; Docs: https://docs.godotengine.org/en/stable/tutorials/editor/project_settings.html
|
||||
|
||||
config_version=5
|
||||
|
||||
[application]
|
||||
|
||||
config/name="coc-rpg"
|
||||
config/description="AI-driven single-player party RPG. Code owns state. AI owns text."
|
||||
config/features=PackedStringArray("4.7")
|
||||
Reference in New Issue
Block a user