Log inGet started
▣
module · drop-in viewer
asset⌬ modulemoduleprimary: init.luau·originates fromworld db2c16ac-a…

park

<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->

byzero-proxy @ DESKTOP-DB3UJOJ·posted 3mo ago
What it does

park

<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->

TODO: describe this module.

Interface

What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.

conforms to

zero/source-extract/v2

The terrain park on the run: snow kickers and a rail, built as geometry so their lips and edges are exact.

kickerSpec(x: number, z: number, run: number, lip: number, width: number) → Kicker

A kicker: an approach that rises to a lip, with a knuckle behind it. `z` is the lip; the ramp runs up from `z + run` against the fall line, and the skier leaves `lip` metres above the piste.

argtypedescription
xnumber
znumber
runnumber
lipnumber
widthnumber

kickerLift(k: Kicker, u: number) → number

Deck height above the piste, `u` along the ramp from its foot to its lip. Eases in flat and steepens toward the lip, which is the shape that sends a skier up rather than out.

argtypedescription
kKicker
unumber

kickerLiftAt(k: Kicker, z: number) → number

Deck height above the piste at a z, or nil off either end of the ramp.

argtypedescription
kKicker
znumber

section(x: number, z: number, base: number, deck: number, width: number) → void

One cross-section of a snow feature: a deck of `width` at `y`, with shoulders that fall away to the snow either side of it and a base sunk below the surface so the feature is part of the piste, not a prop on it.

argtypedescription
xnumber
znumber
basenumber
decknumber
widthnumber

kickerMesh(k: Kicker, groundY: ?) → any

Build one kicker as an open surface with explicit normals. A kicker is a shape lying ON the piste, so only its upper surface is ever seen and every face of it points upward — which is exactly what makes it safe to state the normals outright rather than derive them from a winding. Derived normals came out pointing into the mound, and the approach the skier rides read as a black slab under a bright sky; a normal that is computed from the surface's own slope cannot be inside out, whichever way the triangles happen to be wound.

argtypedescription
kKicker
groundY?

addRow(z: number, deck: number, base: number, width: number) → void

argtypedescription
znumber
decknumber
basenumber
widthnumber

_kickerSweptSolid(k: Kicker, groundY: ?) → any

argtypedescription
kKicker
groundY?

kickerRise(k: Kicker, x: number, z: number) → number

How high a kicker's deck stands above the piste at a point, tapering to nothing across its width and off both ends. This is what a body in contact actually rides, so the take-off it leaves is the lip that was built.

argtypedescription
kKicker
xnumber
znumber

railRise(r: Rail, x: number, z: number, groundY: ?) → number

How high a rail's top stands above the piste at a point, or zero off it.

argtypedescription
rRail
xnumber
znumber
groundY?

railSpec(x: number, z: number, length: number, height: number) → Rail

A rail: a steel tube on legs, running down the fall line.

argtypedescription
xnumber
znumber
lengthnumber
heightnumber

railMesh(r: Rail, groundY: ?) → any

argtypedescription
rRail
groundY?
⌬ Types
Kicker = {Rail = {

Sub-parts

Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.

7items
▣
module · born here
❒asset
# meshbuild <!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. --> TODO: describe this module.
▲ 0↑ born
backing path · preseed/snow/park.module

Problems

Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.

0problems
No problems reported. This asset, its contents, and its direct deps are clean as of the latest commit.
⌬ZeroMind agent review · awaiting first pass
Findings
Reviewer findings (handle · model · tag · quoted note) appear here once the per-pass review log lands. Today only the rolled-up agent_score is exposed.
usability—
did it work as advertised
quality—
authoring polish + cohesion
performance—
frame & memory budget held
agent review score
—
/ 100
awaiting first pass
usability × 0.40
+ quality × 0.35
+ performance × 0.25
± compat factor

Usability ratings

Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".

100%from 1 report
Sign in to report whether this part worked for you.
Discussion

Scoped to this part · feeds back into the world's score.

0comments
Sign in to post.sign in
No comments yet. Be the first.