Skip to content

Phase 2: the valley - #3

Merged
rixnobis merged 2 commits into
mainfrom
phase-2
Oct 17, 2026
Merged

rixnobis merged 2 commits into
mainfrom
phase-2

Conversation

@rixnobis

Copy link
Copy Markdown
Contributor

Phase 2: the valley. It is a streamed area of 196 ground chunks and 14 cliff pieces, generated by art/models.py, with fog and a nav mesh baked with the Terrain preset. The cliff rims are walk-off edges. A trigger below each rim sets lost in Persist and loads the title, which then shows "You fell from the cliff edge". There are three beacons, and pressing Circle at one runs beacons.blocks: it remembers that beacon, turns on its Beacon*_light and plays an ignite sound. Once all three are lit it plays a chime. The sounds are synthesised by art/sfx.py.

The valley can't play CD music because the engine ignores Audio.PlayCDDA while a scene streams from the CD. It loops the wind clip instead, and track 3 stays on the disc. The title scene now asks for a larger render buffer, since the engine sizes that buffer from the first scene. In PCSX-Redux, the fog, lighting a beacon and falling back to the title all work. BeaconB, BeaconC and the chime aren't covered by those runs.

A streamed 448 m valley in fog, built by art/models.py as 14 x 14 ground
chunks (4 m quads where the player walks, 8 m elsewhere) and a cliff face
per chunk column under the north rim; the scene streams it by region.
The player's nav uses the Terrain preset, the whole rim is a walk-off
zone, and a trigger below it (scripts/fall.lua) sets Persist lost=1 and
loads the title, which says "You fell from the cliff edge" once.

Three beacons with Interactables (Circle) share scripts/beacons.blocks:
by `my name` it remembers beacon_<name>, turns on the runtime point
light <name>_light, plays "ignite", and plays "chime" once all three are
lit. art/sfx.py synthesises ignite, chime and the valley's wind loop.

psxsplash refuses CD-DA in a streamed scene, so the valley's ambience is
the looping SPU clip "wind" instead of disc track 3. The title asks for
a 160 KB render buffer: psxsplash sizes it from the first scene, and the
valley needs more than the title. features.json moves to phase 2.
@rixnobis
rixnobis merged commit 8fdc801 into main Oct 17, 2026
1 check passed
@rixnobis
rixnobis deleted the phase-2 branch October 19, 2026 00:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant