chore: scaffold Godot 4.7.1 project — greybox falsifier phase
Design canon: advisors/game-design/concept/mechatronics/ (CONCEPT.md, MOE.md). v1 target = the greybox falsifier per ROADMAP.md.
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
# Godot 4
|
||||
.godot/
|
||||
*.translation
|
||||
|
||||
# OS noise
|
||||
.DS_Store
|
||||
@@ -0,0 +1,61 @@
|
||||
# CLAUDE.md — U R M03
|
||||
|
||||
Godot 4 game project. Science-fiction rogue-lite: strategy-forward
|
||||
mech auto-battler with a light action layer and a nurturing
|
||||
base-builder meta.
|
||||
|
||||
## Design canon (read before designing anything)
|
||||
|
||||
The design documents are canonical and live in the advisor repo,
|
||||
NOT here:
|
||||
|
||||
| Document | Canonical for |
|
||||
|---|---|
|
||||
| `~/development/advisors/game-design/concept/mechatronics/CONCEPT.md` | All systems: loop stack, run skeleton, tag grammar, chemistry table, encounter grammar, base, economy, campaign |
|
||||
| `~/development/advisors/game-design/concept/mechatronics/MOE.md` | M03 ("Moe") — character bible, design law, scenes |
|
||||
|
||||
Where they conflict: MOE.md wins for Moe, CONCEPT.md for systems.
|
||||
Design decisions are made in those documents first, then implemented
|
||||
here. Do not fork design decisions in this repo; propose changes
|
||||
against the advisor repo's docs.
|
||||
|
||||
Non-negotiable canon highlights (full rationale in CONCEPT.md):
|
||||
|
||||
- **ONE BOT** — the cast is M03, Khoe, and rescued humans. No other
|
||||
friendly mech, ever. Build variety rides in RIGS.
|
||||
- **No immunities, no healing enemies, ever** (the invincibility
|
||||
laws). Susceptibilities only; damage dealt is progress banked.
|
||||
- **Two-solutions rule** — every encounter answerable by brute force
|
||||
AND by the read; cleverness pays only in speed, safety, spectacle.
|
||||
- **Combos produce verbs, not multipliers.** Every chemistry row is
|
||||
a visible event, learnable by seeing it once.
|
||||
- **No tutorial, ever.** The base's growth order is the curriculum.
|
||||
- **Siege/base-defense mode: permanently rejected.** Do not build,
|
||||
do not re-propose.
|
||||
|
||||
## Engine
|
||||
|
||||
- **Godot 4.7.1-stable, pinned.** Both dev machines run
|
||||
`4.7.1.stable.official.a13da4feb` (Mac editor: `/Applications/
|
||||
Godot.app` + `godot` shim; nh3-dev headless: `~/bin/godot`).
|
||||
Do not upgrade unilaterally — version skew rewrites scene files.
|
||||
An upgrade is an operator decision applied to both machines at
|
||||
once.
|
||||
- Headless verification: `godot --headless` works on nh3-dev for
|
||||
scripts, tests, and imports.
|
||||
- GDScript for design iteration; C# reserved for hot paths (none
|
||||
yet).
|
||||
- 2D, pixel-first: integer scaling, nearest-neighbor filtering
|
||||
(set in project.godot). Hi-bit mixed-res effects layer comes
|
||||
later — greybox is deliberately art-free.
|
||||
|
||||
## Current phase: GREYBOX (v1 per ROADMAP.md)
|
||||
|
||||
The falsifier slice, specced in CONCEPT.md § Encounter grammar:
|
||||
one arena · one auto-fire KINETIC weapon · two cards (HEAT +
|
||||
KINETIC) · the KINETIC+HEAT chemistry row (knock a heated enemy
|
||||
into others → heat spreads on impact) · two enemy types (untagged
|
||||
grunt swarm + self-heating burster). It exists to falsify three
|
||||
bets: positioning ↔ build interaction, card-freeze rhythm,
|
||||
chemistry delight. Greybox art: primitives and placeholder shapes
|
||||
only — no sprites, no polish.
|
||||
@@ -0,0 +1,10 @@
|
||||
# U R M03
|
||||
|
||||
Science-fiction rogue-lite: a strategy-forward mech auto-battler
|
||||
with a light action layer and a nurturing base-builder meta. You
|
||||
restore the last of the gentle giants; he goes out so nobody else
|
||||
has to.
|
||||
|
||||
Godot 4.7.1 (pinned). Design canon lives in the game-design advisor
|
||||
repo (`concept/mechatronics/`); this repo is the implementation.
|
||||
Current phase: greybox falsifier — see ROADMAP.md.
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
# ROADMAP — U R M03
|
||||
|
||||
## v1 target — the greybox falsifier
|
||||
|
||||
v1.0 of this repo is NOT the game; it is the playable slice that
|
||||
falsifies (or confirms) the design's three core bets. Cut v1 when
|
||||
all of these are true:
|
||||
|
||||
1. **Arena + piloting** — one greybox arena; positioning-only mech
|
||||
control (no aim, no combos).
|
||||
2. **Auto-fire build layer** — one KINETIC weapon that fires itself;
|
||||
the build expresses itself visibly without input.
|
||||
3. **Card layer** — 2-slot hand, card-time dilation (freeze/dilate
|
||||
toggle exposed as a knob), two cards: one HEAT, one KINETIC;
|
||||
charges generated by the build.
|
||||
4. **Chemistry row** — KINETIC+HEAT: knocking a heated enemy into
|
||||
others spreads heat on impact. Authorship-loud feedback stack
|
||||
(hitstop + hues meeting + sting placeholder).
|
||||
5. **Two enemy types** — untagged grunt swarm + self-heating burster
|
||||
(tests the literal enemy tag mirror).
|
||||
6. **Falsification playtest** — operator has played it and rendered
|
||||
verdicts on the three bets: positioning ↔ build interaction,
|
||||
card-freeze rhythm, chemistry delight.
|
||||
|
||||
## Parking lot (post-greybox)
|
||||
|
||||
Everything else, including: remaining 9 chemistry rows + 5 surges;
|
||||
node map / run structure; belt + full hand; keystones; base layer;
|
||||
salvage economy; drives/transits; zones; bosses; art pass (sprite
|
||||
grid test 32–48px); audio; naming pass (tags, modules, rigs);
|
||||
enemy factions as tag dialects; tuning knobs (CONCEPT.md § Open
|
||||
questions #2). None of it enters this repo until the greybox
|
||||
verdict is in.
|
||||
@@ -0,0 +1,19 @@
|
||||
; Engine configuration file.
|
||||
; It's best edited using the editor UI and not directly,
|
||||
; since the parameters that go here are not all obvious.
|
||||
|
||||
config_version=5
|
||||
|
||||
[application]
|
||||
|
||||
config/name="U R M03"
|
||||
config/features=PackedStringArray("4.7")
|
||||
|
||||
[display]
|
||||
|
||||
window/stretch/mode="viewport"
|
||||
window/stretch/scale_mode="integer"
|
||||
|
||||
[rendering]
|
||||
|
||||
textures/canvas_textures/default_texture_filter=0
|
||||
Reference in New Issue
Block a user