Skip to content

[1/2] art(world): Rusty Creek grown from a cut of its concept - #233

Merged
arudaev merged 2 commits into
mainfrom
creek/1-repaint
Nov 3, 2026
Merged

arudaev merged 2 commits into
mainfrom
creek/1-repaint

Conversation

@arudaev

@arudaev arudaev commented Oct 25, 2026 •

Copy link
Copy Markdown
Member

Stack: 1 of 2 (creek): base main. Merge bottom-up, only on Alexander's word. [2/2] (#236) replaces the creek stage with the zone (Alexander, 26 Oct).

What and why

#157, stages 2–7: Rusty Creek as a stacked 3 × 3 zone, the rust maze above, the creek path, the drains below. It is grown from one approved chunk, because painting from the blockout failed.

The grown zone

  • Start chunk (approved, 25 Oct): the [12/13] art: Rusty Creek as a stacked zone – the concepts #227 concept's level band, cut 1:1. The concept is already at game scale: its railing is about 50 px, roughly 1 m. Painting a flat guide failed four ways:

    • with the style master as the look image, which is the creek itself, it came back as the style master;
    • with the Hidden Garden plate, it came back as the garden;
    • with material swatches, it stitched the swatches into a scene;
    • with no image, it painted a generic harbour.

    Details are in docs/09.

  • Growth:

    • the level row grows sideways (grow_stage.py, routes in the zone's boards.json);
    • the maze grows up and the drains grow down (world_paint.py grow), then the seams are joined.
  • Feature windows: the piers, the pier ladders, the lit culvert, and a steel stair that makes the drains walkable back.

  • Up seams: the first up/down joins moved the railway girder, so the joins now stop above it (--half 150,44). The maze's posts and the tree line were then carried down onto the girder's flange.

  • Collision:

    • Level row: measured from the art: the path, the girder deck, the pier ladders, and the culvert door over the drain door.
    • Above and below: traced from their depth keys. A traced climb counts as a ladder only where both ends meet a floor.
    • Drains: the flooded bottom is no-go.
  • Kept maze (Alexander's call):

    • Route: its blockout is redrawn from its traced floors and ladders.
    • Repeat: the check fails on rivet pitch along the girder flanges; it's waived in zone.json with that reason (world_gate.py prints WAIVED).

Collision over the zone

Red lines are floors, yellow boxes ladders, blue boxes water (no-go), magenta boxes the culvert and drain doors.

Issue

Refs #157. Still open in #157: getting the zone into the game ([2/2]), then the per-layer check over purple and white in debug mode.

Verification

  • world_gate.py art/zones/rusty-creek: PASS on every check. Two repeat checks are WAIVED.
  • rusty_creek_zone.py: every surface reachable and leavable. test_rusty_creek_zone.py checks the committed collision.
  • pytest scripts: 172 passed, including the new waiver test. npm test: 358 passed. tsc and check_docs.py are clean.

@vercel

vercel Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
wincs Ready Ready Preview Oct 25, 2026 11:45pm UTC

Request Review

@github-actions github-actions Bot added area:art Sprite sheets, stage plates, direction pack area:pipeline Rerunnable art and export scripts area:docs Design docs, README, contributor guides labels Oct 25, 2026
world_paint.py join --only up-down --half above,below: the window can stop
above something in the lower chunk that must not move (a railway girder's
top edge); paint's prompt names the zone's look reference, never the style
master. world_gate.py reads zone.json "gate": {"waive": [...]}: a named
check on a named chunk passes as WAIVED with its reason and keeps its value.
The Hidden Garden's tracing helpers take a zone, and the underground key
prompt speaks of a pond or a creek.
The level row starts from the #227 concept's level band cut 1:1 (it is at
game scale), approved by Alexander; two more level chunks grow sideways,
the rust maze above and the drains below grow up and down from it. Piers,
ladders, the lit culvert and a steel stair are feature windows. Collision:
the level row measured, the bands above and below traced from their depth
keys; every surface reachable and leavable (test_rusty_creek_zone.py). The
kept maze's blockout is redrawn from its trace; its rivet repeats are
waived. Gate: PASS. docs/09 records why painting a flat guide failed four
ways and how the zone was grown instead.
@arudaev
arudaev added this pull request to stack #237 November 3, 2026 22:29
@arudaev
arudaev merged commit bed8b2f into main Nov 3, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:art Sprite sheets, stage plates, direction pack area:docs Design docs, README, contributor guides area:pipeline Rerunnable art and export scripts

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant