{"params":{"colorway":{"type":"choice","default":"field-grey","label":"Colorway","describe":"Curated Cozy Farm stone schemes, all drawn from the kit menu. field-grey is the approved warm neutral grey rock with paler cobbles; pale-limestone is a bright chalky rock with darker cobbles set into it (the value pair inverted, so it reads from a distance the same way); red-sandstone is warm red-brown rock with tan cobbles for a clay smallholding; dark-granite is a near-charcoal rock for a shaded hedge line. Sets stone, cobble, moss and snow unless those are passed explicitly.","options":["field-grey","pale-limestone","red-sandstone","dark-granite"]},"stone":{"type":"color","default":"#8b8473","label":"Stone","describe":"Albedo of the whole boulder body \u2014 every facet of the block, about three quarters of the visible surface and the dominant colour of the asset. A rock is one material, so this is its single flat tone: all light and shade on it comes from the facets and the scene lights, never from the vertex colours."},"cobble":{"type":"color","default":"#dedad7","label":"Cobble","describe":"Albedo of the rounded nodules on the flanks. Keep a real value step against Stone \u2014 one step LIGHTER by default \u2014 so the cobbles read as different stone set into the block at 64 px. Matched to Stone they vanish and the asset loses the feature that distinguishes it from any other rock."},"moss":{"type":"color","default":"#5f743d","label":"Moss","describe":"Albedo of the raised moss cushions on the shoulder cells \u2014 the only green on the asset. It has to hold against Stone from 10 m, so keep it clearly darker and much more saturated than the rock; a pale sage moss on a grey rock reads as a stain."},"snow":{"type":"color","default":"#e6e4e2","label":"Snow","describe":"Albedo of the winter snow caps on the upward-facing cells. Kit-wide zone name, so a buyer repainting winter repaints every part of the farm at once. This zone emits ZERO triangles at spring, summer and autumn \u2014 it exists only in winter."},"season":{"type":"choice","default":"summer","label":"Season","describe":"GEOMETRY ONLY \u2014 this knob never relights the rock. There is no seasonal cast, tint or saturation shift: the stone, cobble and moss albedos are byte-identical at all four values, because a buyer lights their own scene and a pre-lit palette cannot be undone from outside. Two things actually move. The MOSS is alive and thins: spring grows the cushions out to about 1.4x the set count on the damp shoulders, summer is the approved build, autumn dries them back to about half, and winter leaves only a couple, moved DOWN onto the shaded lower flanks where they survive. WINTER additionally grows real snow geometry \u2014 a thin capped shell on every upward-facing cell with a bare stone rim around each \u2014 in the separate `snow` zone, which emits zero triangles at every other value. Snow is the ONE colour the season introduces, and only because it is a material that is genuinely not there the rest of the year. The footprint is identical at all four values.","affects":"geometry","options":["spring","summer","autumn","winter"]},"tallness":{"type":"range","default":1,"label":"Tallness","describe":"Height of the rock. The 0.72 x 0.64 m footprint never moves, so 0.62 is a flat 0.26 m slab that reads as a stepping stone half-sunk in the lawn, 1.00 the approved 0.42 m garden rock, and 1.35 a 0.57 m knee-high lump. NOT a scale: the cutting planes are recomputed against the new form, so the facet layout and the triangle count both change with it. (A boulder has no repeating structure to multiply, so this dimension rebuilds its cell pattern rather than gaining bays.)","affects":"geometry","min":0.62,"max":1.35,"step":0.01},"facets":{"type":"choice","default":"standard","label":"Facet grade","describe":"How many planes carve the rock, which is what decides how many corners the outline has. chunky = 16 huge cells, a split crystal with long straight silhouette runs; standard = the approved rock, about 26 cells roughly 0.18 m across; fine = 36 smaller cells, a more eroded weathered stone. Changes the number of corners and the triangle count, never the proportions or the footprint.","affects":"geometry","options":["chunky","standard","fine"]},"cobbles":{"type":"range","default":0,"label":"Cobbles","describe":"How many rounded nodules sit on the flanks, always seated at fixed azimuths so they stay spread round the rock. 0 is a clean unmarked boulder \u2014 the plain faceted block, no nodules and no cobble-coloured triangles at all \u2014 which is a genuinely second silhouette to scatter beside the default so a run of clones does not read as one repeated prop; 1 puts a single nodule on the hero flank; 2 is the hero pair on the front-right; 3 is the approved build and adds one on the far shoulder so no 90-degree view is bare; 4 studs the rock all the way round. The block itself is identical at every value \u2014 only the nodules come and go.","affects":"geometry","min":0,"max":4,"step":1},"mossPatches":{"type":"range","default":0,"label":"Moss cushions","describe":"Base number of raised moss cushions, spread one per azimuth sector so at least one shows from any side. 0 is a completely bare, clean, freshly turned stone with no green geometry and no green triangles at all; 5 wraps moss most of the way round the shoulder. Each cushion is real relief cut out of its host cell, with a bare stone margin around it. `season` scales this number (spring 1.4x, autumn 0.5x, winter 0.4x), so at 0 the rock is bare in every season.","affects":"geometry","min":0,"max":5,"step":1}},"presets":{"field-grey":{"stone":"#8b8473","cobble":"#dedad7","moss":"#5f743d","snow":"#e6e4e2"},"pale-limestone":{"stone":"#dedad7","cobble":"#8b8473","moss":"#869750","snow":"#e6e4e2"},"red-sandstone":{"stone":"#ab704e","cobble":"#cea772","moss":"#5f743d","snow":"#e6e4e2"},"dark-granite":{"stone":"#68584a","cobble":"#8b8473","moss":"#758643","snow":"#dedad7"}},"rev":1792408798,"materials":{"stone":{"kind":"stone","finish":"rough"},"cobble":{"kind":"stone","finish":"rough"},"moss":{"kind":"foliage","finish":"moss"},"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":1792461164,"mod_v":1792408798}