SOURCE / PINNED RELEASE
Made of little things.
GRAV / RIFT
- Release
- 288aa261ce07…
- Author-recorded commit
- c549b5a4e17e…
- License
- LICENSE
- Author’s source reference
- nostr://npub182jczunncwe0jn6frpqwq3e0qjws7yqqnc3auccqv9nte2dnd63scjm4rf/wss%3A%2F%2Fgit.napplet.soy%2F/n-8a7361981e8
Archive hash verified: e52a01aff70810b3…. The source-to-build association is the author’s claim; it has not been independently rebuilt.
# Surgical gravity and modular enemy rigs
A mouse-first combat revision within the existing single-file game. No new host
capabilities, external assets, dependencies, network or persistence. Optional SDK
storage and the app-owned industrial palette remain as documented in game-brief.md.
## Player interaction
Field modes and release patterns are independent. Orbit, Compress and Rip retain
area gathering; Surgical selects one highlighted object under the cursor. Right
mouse holds a field or a surgical tether; releasing it drops the remaining cargo
without firing. Left mouse fires independently: Volley empties the payload once
per press, Stream feeds individual pieces while held, and Clusters feeds five-piece
groups while held. Hold both buttons to keep drawing new debris into a firing
vortex. Either press order works for sustained fire, even when it starts empty.
Releasing left stops firing while right can keep collecting. A dropped shell
resumes its fuse; dropped cells remain unarmed until a hard impact or a blast.
Surgical right release drops the selected object; left press shoots it.
Space gathers/drops, F fires, 1–4 select fields and R cycles release. Touch FIELD
and FIRE are independent; a direct canvas drag selects a Surgical object.
No new NAP capabilities or dependencies; the authored scene and HUD are preserved.
Hold Tab for a 5%-speed radial selector. Hover a field or release choice and release
Tab to apply it; clicks apply a choice while the selector remains open. Its separate
Field and Release sectors preserve both settings. An on-screen selector button
provides click/touch access. Menu input cannot fire or drop cargo, release presses
cannot leak back into combat, and blur/pause/cancel restores normal time. No flight
or ricochet prediction in this revision; those remain later work.
## Shared rig module
Strider and Warden blueprints share a root body and a parent-ordered graph of
mounted convex parts. Each joint has a local pose, break strength and accumulated
stress. Part roles describe armor, leg segments, weapons or a shield cell. Break a
joint and its descendants leave the mount graph as ordinary physical salvage;
remaining parts keep following the living root. Pose changes and selection use the
same physical bodies drawn by the renderer. No enemy-specific detach code.
Capabilities derive from connected roles: each complete leg supports movement and
ride height; loss causes limping/collapse. Removing a shield cell disables the
machine's gravity shield and permits Surgical to lift, drag and throw its live root
with its remaining limbs. The shield prevents gravity capture, while existing
projectile damage and the Warden's armor protection retain their rules. Extracted
shield cells become ordinary explosive cells; cannons continue to fire from live
unheld enemies. Held or recently thrown enemy AI cannot override player impulses.
Dead roots release their remaining mounted parts once.
The rig uses driven joint poses while attached and ordinary convex rigid bodies
after severing; it is not a full joint-constraint ragdoll or soft-body solver. This
module owns the graph, stress, subtree release and capability accounting. Enemy
pose generation and combat rewards remain outside its interface.
## Readability and validation
Mint marks tethered/selected bodies, amber shows vulnerable joints and magenta
marks shield cells and gravity shields. Cursor feedback names a part and displays
extraction progress or shield/range failure. The HUD displays field, release pattern
and remaining payload. Radial controls retain readable screen-space labels and
44-pixel touch targets in compact portrait/landscape layouts. Existing resize notice,
reduced effects and host-theme independence remain.
Verify release timing and body conservation, one-object selection and drop/shot,
parent-child detachment, lost-leg movement, shield extraction, live rig dragging and
impact, both enemy blueprints, slow-motion input transitions and lifecycle cleanup.
Use real mouse buttons and Tab in the soyLI iframe, plus existing gameplay, touch,
responsive, host-storage, build and conformance checks. Capture an actual surgical
extraction and return shot with the revised radial menu visible in the preview.
