SOURCE / PINNED RELEASE
Made of little things.
Impact Yard remix
- Release
- 5b31a37bbd07…
- Author-recorded commit
- 7762f7efb018…
- License
- LICENSE
- Author’s source reference
- nostr://npub1n8ga89w8h6tvwamxusfyzexw8gjy84yxu9rxgnmk955cxtml4ujswzxydd/wss%3A%2F%2Fgit.napplet.soy%2F/n-c1d8c061b02
Archive hash verified: c640627baa321925…. The source-to-build association is the author’s claim; it has not been independently rebuilt.
# Impact Yard verification
Verified on 2026-09-14. Preview: <http://127.0.0.1:4185/> through Napplet Space,
with the built artifact inside a real `sandbox="allow-scripts"` iframe.
## Delivered
- 360×360 metre Three.js yard (four times the previous release's area), seventeen
destructible structures and a ramp. All twelve earlier structures remain.
- 590 independent cannon-es rigid bodies, four-wheel raycast suspension,
120 Hz fixed physics steps, friction and collision impulses.
- Keyboard and pointer driving, three cameras, orbit drag, brake, slow motion,
pause, car recovery, yard rebuild, and impact/displacement telemetry.
- F-key and pointer rocket burst, twin modeled motors with mounts and nozzles,
animated exhaust, camera surge, recharge display, and reduced-motion support.
- Five complexes with load-bearing piers, separate floors/spans and loose cargo;
a bounded dust pool driven by actual contacts; instanced prop rendering with
updated bounds for flying debris. Orbit view fits the selected complex.
- N/button/site-guide navigation and recovery to the selected approach.
- Optional theme and storage SDK integration; no hard domains or relay calls.
- This update changes `index.html`, `src/main.ts`, `src/simulation.ts`,
`src/styles.css`, usage/spec/verification docs and physics/browser tests.
Boilerplate build substrate and guidance guards retained.
## Checks
| Check | Result |
| --- | --- |
| `pnpm type-check` | Pass |
| `pnpm build` / Napplet Space build watcher | Pass; one bundled `dist/index.html` |
| `pnpm test:guidance` | 6 passed |
| `pnpm test:physics` | 13 passed |
| `pnpm test:conformance` | 5 passed, 0 failed, 5 skipped |
| `napplet-space check --json` | Pass, profile `space-playback-1` |
| `SIM_PREVIEW_URL=http://127.0.0.1:4185/ pnpm test:browser` | Pass, zero browser errors |
Conformance skips signed manifest checks because no signed event was supplied,
wire checks because its domain-absence scenario emitted no envelopes, and
lifecycle checks because teardown evidence was not supplied. It does verify boot,
sandboxing, forbidden globals and graceful domain absence. The separate host
browser test exercises a user-triggered camera preference write/read via SDK
storage and sends the documented theme change through the installed runtime.
The browser test checked 200×160, 320×560, 900×600 and 2400×1200 in **both dark
and light themes**. No document overflow or clipped controls; frame fills the
available space. Root backgrounds follow the theme. There is no title header or
minimum-size gate. The game and camera controls also work without any injected
optional domains. Pointer accelerator press/release was tested at 320×560.
Physics checks establish that all 590 pieces remain stable for twelve simulated
seconds at rest, impacts collapse the main stack without disturbing remote
structures, steering works in both directions, brakes decelerate, reverse moves
backward, and rebuild/recovery restore their intended state. The new tests drive
the car up the ramp from a standing start at both 20% and full throttle, collapse
the timber tower and loaded arch by driving into their supports, and confirm
that falling domino panels continue displacing their neighbors after braking.
## Spectacle complexes
| Added site | Pieces | Highest geometry |
| --- | ---: | ---: |
| Skybridge twins | 55 | 42.9 m |
| Freight avalanche | 50 | 39.9 m |
| Cascade viaduct | 81 | 29.0 m |
| Helix megatower | 40 | 50.9 m |
| Cathedral cascade | 63 | 33.6 m |
Each new complex is struck at its approach with the rocket. Tests measure high
pieces dropping more than 8 m: at least eight additional pieces fall after the
rocket stops, and at least 40% of the upper structure falls. Body velocities
remain finite, the car stays within the perimeter and impacts produce bounded,
single-consumption effect records. All seventeen approaches are clear; recovery
keeps the selected checkpoint, and rebuild restores every initial position and
rotation, including the helix's rotated floors and cargo.
The browser suite exercises N and the compact next-site button, selects all five
new sites through the scrolling guide, and captures standing, falling and
collapsed views. Orbit framing uses each site's dimensions and the frame aspect
ratio. Repeated geometry is instanced and its bounds are recomputed as debris
moves so offscreen sites can be culled without hiding flying pieces.
## Rocket and huge structures
The new groups are a 42-block concrete colossus, a 30-crate mega pyramid,
a 45-piece timber skyscraper, 12 titan dominoes and a 15-piece loaded gateway.
Physics tests strike each group with the rocket, confirm substantial collapse,
check finite body velocities and verify the car remains within the arena.
The rocket applies a 28 m/s forward impulse and 1.2 seconds of directional thrust,
then permits another burst after a 2.4-second recharge. Tests establish immediate
speed above 95 km/h, sustained speed above 180 km/h without throttle, no position
teleport, airborne thrust along the car's heading, cooldown gating, brake cutoff,
and complete reset on recovery/rebuild. The original car collision envelope is
retained so the decorative motors do not alter suspension or handling.
The browser checked the immediate rocket kick, that holding F does not
refire, and exercised pause suppression, pointer firing, brake cutoff, blur
cutoff and recharge. The rocket control fits in all eight frame/theme checks.
Rendered motor geometry and active exhaust were inspected in the screenshots.
## Ramp regression
The old ramp was a tilted 40 cm thick slab with a roughly 31 cm entrance lip.
At 20% throttle the car stalled near z=2.28 and reached only 0.65 m chassis
height. A diagnostic run lowering only the slab by 31 cm cleared the blockage
without changing the car, tire grip, slope or engine. The final fix replaces
the slab with a wedge whose top begins at ground level; its thickness is below
ground at the entrance. Renderer and collider share the same vertices/faces.
The regression test failed before this change and passes afterward.
The previous obstacle update added a 14-panel domino run with rubber feet, a 27-piece timber tower
with alternating layers, and an 11-piece masonry arch/lintel/crate assembly.
All are freestanding; no timed toppling animation or artificial impact forces
were added. The structure guide now shows seventeen entries and scrolls in shorter
frames. Optional domains, hard requirements and relay behavior are unchanged.
The built artifact scan found no direct network/browser-storage APIs and no
external scripts or styles. Rendering assets and libraries are bundled.
Screenshots and machine-readable browser results are in
`/tmp/impact-yard-checks/`, including `booster-geometry.png`, `rocket-boost.png`,
each new site's `*-standing.png`, `*-falling.png`, `*-collapsed.png`, and
`report.json`. These temporary artifacts can be regenerated with
`SIM_PREVIEW_URL=http://127.0.0.1:4185/ pnpm test:browser` while the preview runs.
## Limits
This is a rigid-body approximation: it does not model material fracture,
splintering, tire deformation or vehicle body deformation. Headless Chromium
provides a render-rate sample in the browser report; GPU/device performance has
not been benchmarked. Physics timing
is fixed, with capped catch-up to avoid a backlog on slow devices.
Signed-manifest and measured teardown conformance remain outside the supplied
local test evidence. Publication is a separate CLI step after these checks.