{"params":{"colorway":{"type":"choice","default":"weathered-pine","label":"Colorway","describe":"Curated Cozy Farm schemes, every one laid on the same value ladder (frame timber darkest, then the interior boarding, the wall boards, the roof and awning planks, the counter slab, and the snow palest \u2014 the frame sits under the interior rather than over it, because the posts and the head beam stand inside the shop mouth and need a lighter ground to be seen against). Every hex is off the kit menu, and no two zones share one in any scheme. weathered-pine is the default and the refs: mid-brown vertical boarding under a honey plank lid with a pale sawn counter. barn-red paints the boarding and the lid the kit reds so the stand matches the barn across the yard, keeping the pale counter as the one light plane. sun-bleached is dusty tan boarding under honey planks with an almost white counter, the dry end of summer. grey-timber takes everything to silvered grey-brown over near-black framing, a stand that has stood out twenty winters. The chalkboard slate is the same dark green in all four \u2014 a painted board is a painted board.","options":["weathered-pine","barn-red","sun-bleached","grey-timber"]},"season":{"type":"choice","default":"summer","label":"Season","describe":"The kit-wide season axis. A produce stand is a BUILT thing, so THIS PART ONLY ANSWERS THE SEASON IN WINTER: spring, summer and autumn are the identical build, vertex for vertex and byte for byte, with no tint, cast or value shift of any kind \u2014 the farm reads as autumn because the trees and the ground say so, not because somebody repainted the stall. In winter the `snow` zone appears as real geometry on the three surfaces that would actually collect it: a 0.07 m cap over the roof deck with a scalloped, melted front edge deep enough to bury the plank relief under it, a lying drift along the exposed front half of the counter shelf, and a cap on the propped awning leaf. The awning cap appears only while the shutter is propped open \u2014 a leaf hanging vertically shut holds no snow, and at `open: false` the winter build correctly grows none there. Snow emits ZERO triangles in the other three seasons, sits ON those surfaces without widening them, and never moves the 2 x 2 m footprint.","affects":"geometry","options":["spring","summer","autumn","winter"]},"open":{"type":"toggle","default":true,"label":"Open for trade","describe":"Whether the stand is trading. true (default, and the refs) props the shutter awning out over the counter at 20 degrees below horizontal on its two diagonal stays, leaving the counter, the low shelf and the chalkboard in full view \u2014 the leaf still overlaps the counter in plan, because a cover swung clear of the thing it shades stops reading as a cover. false drops the same leaf shut: it hangs vertically 30 mm PROUD of the corner posts, lapping over the frame from outside as a real shutter does rather than sinking back into the opening, with its head buried in the lintel and its foot landing on the counter top. It closes the serving opening completely \u2014 the whole hatch, top to bottom, with no residual slot and nothing of the counter, the low shelf or the chalkboard left showing above it, so the shut silhouette really is the plain boarded box the knob promises rather than the open state minus a wedge. The two stays fold flat down the back of the leaf inside the opening rather than hanging in mid air. The stand keeps the same 2 x 2 m grid square and the same width and height in both states, and nothing crosses the square in either; the shut build simply sits 0.50 m shallower in it, because the propped awning is what reaches the front of the square and a folded awning no longer does. Triangle count is very slightly lower shut (the winter awning snow cap is not built on a vertical leaf).","affects":"geometry"},"roofFall":{"type":"range","default":0.4,"label":"Roof fall (m)","describe":"How far the plank roof drops in metres from the back edge to the front eave over the 1.44 m of deck. The BACK is pinned at every value \u2014 deck top 2.46 m \u2014 so the knob tips the lid forward and the overall height never changes: 0.0 is a dead flat lid, a blunt boxy stall; 0.10 (default) is the barely-there fall of the refs, enough for the side elevation to show which way the water runs; 0.40 rakes the front eave down to 2.06 m for a pronounced lean-to wedge that throws the awning into shadow. Every wall board is RE-CUT against the new deck plane rather than stretched, and the deck planks are re-laid on it, so the geometry rebuilds with the knob.","affects":"geometry","min":0,"max":0.4,"step":0.01},"boards":{"type":"range","default":7,"label":"Board count","describe":"How many vertical boards make up each 1.28 m flank, which sets the sawn stock width for the WHOLE stand: the back wall, the front skirt and the roof deck are all re-laid at the same pitch, always to an odd count across the symmetry line so the lapped relief stays mirror-symmetric. 5 is wide 0.26 m barn boarding, chunky and sparse, four boards across the back; 8 (default, and the refs) is 0.16 m stock; 11 is narrow 0.12 m lath, a finely striped surface with fifteen boards across the back. REBUILDS, never scales \u2014 the board THICKNESS, the 14 mm lap step, the posts and every other member are identical at all three, only the pitch and the count change, so the triangle count moves with the knob.","affects":"geometry","min":5,"max":11,"step":1},"tone":{"type":"range","default":0.45,"label":"Tone variation","describe":"How far each sawn board, plank and timber member drifts from the base colour, as separately sawn stock does. Applies to every timber zone \u2014 wall boards, roof and awning planks, counter and shelves, framing, interior boarding \u2014 and to NOTHING else: the painted chalkboard slate and the snow are not made of discrete sawn pieces and never vary. 0 is a uniform machine-made surface, 0.20 (default) a normal batch \u2014 enough to tell one board from its neighbour, and deliberately kept under the step where a broad flat wall like the back stops reading as one albedo and starts reading as shading blotches \u2014 and 1 a deliberately mixed reclaimed one. Changes no geometry at any value: the triangle, mesh and material counts are identical from 0 to 1.","min":0,"max":1,"step":0.05},"inner":{"type":"color","default":"#764f35","label":"Interior boarding","describe":"Albedo of everything inside the shop: the inner skin of the back and side walls and the floor a customer sees through the serving opening. Dark, because those faces point away from the sky \u2014 it is what keeps the open front reading as a real dark slot at thumbnail size instead of as a pale panel \u2014 but NOT the darkest zone on the model: it sits one rung ABOVE the frame timber. The corner posts and the head beam stand inside this mouth, and against an interior darker than they are they have nothing to be seen against and the whole opening collapses into one flat black shape. Keep any custom value between the frame timber and the wall boards."},"frame":{"type":"color","default":"#593c2a","label":"Frame timber","describe":"Albedo of every structural member: the two corner posts standing proud at the open front, the head beam across the whole opening, the batten across the awning leaf, both prop stays, and the brackets under the low shelf. The DARKEST zone on the model \u2014 below the wall boards it stands against outside at about 60% of their luminance, and below the interior boarding it stands against inside. Those two greyscale steps, not the hue, are what make the posts and the beam read as a heavy portal frame around the opening instead of merging into the boarding they hold on one side and the shadow behind them on the other."},"board":{"type":"color","default":"#475936","label":"Chalkboard slate","describe":"Albedo of the painted price panel recessed into the front skirt. The one non-timber surface on the model and the only place this hex appears, so a consumer can find and repaint the sign without touching a plank. It is read against its pale `counter` surround, two full value steps above it, which is where all of its contrast comes from \u2014 keep any custom value dark."},"plank":{"type":"color","default":"#8d6741","label":"Wall boards","describe":"Albedo of every exterior vertical board: both flanks, the back wall and the front skirt below the counter. The dominant surface of the asset by area. Keep it a clear step ABOVE both the frame timber and the interior boarding, or the posts stop separating from the wall, and below the roof planks and the counter slab so the lid and the serving face still read as the lighter, worked timber."},"roof":{"type":"color","default":"#b78742","label":"Roof and awning planks","describe":"Albedo of the roof deck planks and of the shutter awning leaf \u2014 one lighter timber for the two lids, which is what ties the propped awning to the roof it hangs from and reads it as the same stock. The roof is the largest single plane on the asset and the plane the sky lights hardest, so it sits a FULL rung above the wall boards \u2014 1.3x their luminance, not the hair that let the lid sink back into the wall it caps; the awning takes the same value so it stays legible as a pale wedge over the dark opening."},"counter":{"type":"color","default":"#cea772","label":"Counter and shelves","describe":"Albedo of the serving furniture: the counter slab, the fascia board under its nose, the low display shelf and the surround of the chalkboard. The lightest timber zone and the brightest large area on the model, which is exactly what a scrubbed sawn counter is \u2014 it carries the eye to the serving face from across a yard and gives the dark chalkboard its contrast."},"snow":{"type":"color","default":"#e6e4e2","label":"Snow","describe":"Albedo of the winter snow: the cap over the roof deck, the drift on the exposed front of the counter and the cap on the propped awning leaf. Emits no geometry at all in spring, summer and autumn. In winter it is the palest zone on the model by a wide margin, which is the whole point \u2014 it must read as snow against a counter slab that is itself the lightest timber on the stand."}},"presets":{"weathered-pine":{"inner":"#764f35","frame":"#593c2a","board":"#475936","plank":"#8d6741","roof":"#b78742","counter":"#cea772","snow":"#e6e4e2"},"barn-red":{"inner":"#593c2a","frame":"#422d25","board":"#475936","plank":"#8b3d26","roof":"#a44637","counter":"#cea772","snow":"#e6e4e2"},"sun-bleached":{"inner":"#8d6741","frame":"#764f35","board":"#475936","plank":"#ab704e","roof":"#b78742","counter":"#dedad7","snow":"#e6e4e2"},"grey-timber":{"inner":"#68584a","frame":"#422d25","board":"#475936","plank":"#786a5c","roof":"#8b8473","counter":"#dedad7","snow":"#e6e4e2"}},"rev":1792408798,"materials":{"inner":{"kind":"wood","finish":"raw"},"frame":{"kind":"wood","finish":"oiled"},"board":{"kind":"paint","finish":"matte"},"plank":{"kind":"wood","finish":"oiled"},"roof":{"kind":"wood","finish":"oiled"},"counter":{"kind":"wood","finish":"raw"},"snow":{"kind":"snow","finish":"powder"}},"materials_note":"what each colour zone is made of: `kind` and `finish` name a procedural PBR material in https://polyfork.dev/materials.mjs (dressByAlbedo finds a zone by its albedo in COLOR_0). A zone not listed has not been classified.","preview_v":1792460941,"mod_v":1792408798}