Character and movement pass
Full build / Full desktop build + optional release (push) Successful in 3m37s
Full build / Import + headless tests (push) Successful in 33s

NPC characters
- Articulated rig (hips/knees, shoulders/elbows/hands) replaces rigid capsules;
  the walk cycle bends knees and elbows and flees with a longer stride.
- Layered outfits (jacket/vest/coat/dress), extended accessories and hand items
  (bag, umbrella, phone, camera, clipboard, cup), face details and five hair
  silhouettes, all deterministic per profile seed.
- Idle behaviour layers (phone, clipboard, crossed arms, look-around), breathing
  and weight shift; escalation raises hands or points, and noticed NPCs turn
  toward the guard.
- Reaction symbols above the head (!!, ?!, !, ?), door-queue offsets assigned by
  GameManager, three LOD tiers with hysteresis and a billboard impostor.
- smoke_npc_budget.gd: 16 avatars = 534 meshes, ~6.9 ms average (50 ms budget).

Player movement
- Separate accel/decel, step-up assist for kerbs and the entrance steps, and a
  forward-axis fix: W was inverted (get_axis(forward, back) is negative).
- Head bob, landing dip and precision-walk FOV, gated by persisted head-bob and
  invert-Y settings; precision chip and tick; surface-aware footsteps and a
  landing cue forwarded to AudioFeedback.
- Gamepad support (sticks, deadzone, face buttons, bumpers), a control legend
  that follows the active device, and named actions for the remaining keys.
- Key/button remapping in Settings, persisted as input_bindings and applied by
  InputBindings (mouse and gamepad axes are never removed).
- smoke_movement.gd (windowed): climbs the steps, checks precision speed, chip,
  footsteps and landing; new 11-precision-walk capture and catalogue entry.

Verification: headless 208/208, Python tooling 56/56, all 11 smokes pass,
compare 11 good / 0 bad, movement judge match. Version 0.5.0. Only optional
Future ideas remain in TODO.
This commit is contained in:
zwitschi committed 2026-11-01 10:41:17 +01:00
1 parent 2a4e0d1998
commit a27e8cb74c
35 files changed
+1608 -185

No files matched your search

+22
View File
@@ -496,6 +496,28 @@ SCREENS = [
(0.02, 0.94, 0.98, 0.99, "control hints"),
],
}, {
"name": "movement_precision",
"kind": "scene",
"title": "Precision walk",
"source": "src/game/guard_controller.gd · README controls",
"ref": "11-precision-walk.png",
"description": "First-person view at the venue steps while the guard uses the "
"precision-walk modifier: a small Precision walk chip on the HUD, "
"the doorway ahead, and a narrower field of view.",
"prompt": (
"First-person 3D game screenshot at night from a security guard standing at "
"the bottom of venue steps, looking at a lit entrance door with a striped "
"awning and STEP LINE sign. Subtle head-height view, brick facade, dark blue "
"night sky, minimal HUD: a small cyan 'Precision walk (Shift)' chip at the "
"bottom left, shift clock top right, thin control hint line at the bottom. "
"Realistic lighting, muted colours, no people"),
"regions": [
(0.00, 0.80, 0.20, 0.88, "precision walk chip"),
(0.30, 0.05, 0.70, 0.60, "entrance door and steps"),
(0.78, 0.02, 0.98, 0.16, "shift clock"),
],
},
{
"name": "prop_gallery",
"kind": "scene",
"title": "Prop gallery",