{"params":{"colorway":{"type":"choice","default":"black-wire","label":"Colorway","describe":"Curated colours for the wire, plug blocks and clips. The bulbs always stay candle orange and bulb purple: black-wire is the classic dark cord, witch-purple a deep purple cord, bone-white a white cord for pale trim, rust-brown a warm dark cord.","options":["black-wire","witch-purple","bone-white","rust-brown"]},"mount":{"type":"choice","default":"eave","label":"Mount","describe":"How the run is hung. eave: clipped at the plugs and mid-run under an eave, the wire drooping in two deep 0.24 m swags per run with gutter clips rising above it, and swaying gently in the wind. fence: clipped taut along a fence top, nearly straight (2 cm sag) with the clip gripping downward onto the rail.","affects":"geometry","options":["eave","fence"]},"runs":{"type":"range","default":1,"label":"Runs","describe":"How many 4 m runs are plugged end to end: 1 = 4 m, 2 = 8 m, 3 = 12 m. Each run adds 11 more bulbs at the same 0.33 m pitch, its own mid clip, and a mated plug coupler at the joint. The outer plug faces sit exactly at +/- runs x 2 m.","affects":"geometry","min":1,"max":3,"step":1},"bulbSize":{"type":"range","default":1,"label":"Bulb size","describe":"Size of the faceted glass bulbs. 0.8 is a slim, near-real C9 bulb; 1.3 a fat cartoon gem nearly 0.1 m across the belly. Sockets, wire and pitch stay the same.","affects":"geometry","min":0.8,"max":1.3,"step":0.05},"lit":{"type":"toggle","default":true,"label":"Lit","describe":"Bulbs switched on: on, the orange and purple bulbs glow in their own colour; off, they are plain coloured glass."},"wire":{"type":"color","default":"#332622","label":"Wire","describe":"The insulated cord running the length of the string, including the socket stubs."},"plug":{"type":"color","default":"#594c4d","label":"Plug blocks","describe":"The chunky square plug blocks at each end and the mated coupler between runs."},"clip":{"type":"color","default":"#aca09e","label":"Clips","describe":"The plastic gutter / fence clip at the middle of each run."},"orangeBulb":{"type":"color","default":"#FFC247","label":"Orange bulbs","describe":"Candle-orange bulb glass, a lit zone: keep #FFC247 so night lighting finds it."},"purpleBulb":{"type":"color","default":"#B46CF0","label":"Purple bulbs","describe":"Bulb-purple glass, a lit zone: keep #B46CF0 so night lighting finds it."}},"presets":{"black-wire":{"wire":"#332622","plug":"#594c4d","clip":"#aca09e"},"witch-purple":{"wire":"#5835a0","plug":"#332622","clip":"#7a51b1"},"bone-white":{"wire":"#e0dddd","plug":"#aca09e","clip":"#776a68"},"rust-brown":{"wire":"#783011","plug":"#443634","clip":"#bf947c"}},"night":{"orangeBulb":{"color":"#FFC247","intensity":0.9,"describe":"The orange bulbs: warm candle glow along the eave.","albedo":"#ffc247","findable":true},"purpleBulb":{"color":"#B46CF0","intensity":0.9,"describe":"The purple bulbs: witchy purple glow between the orange ones.","albedo":"#b46cf0","findable":true}},"materials":{"wire":{"kind":"plastic","finish":"satin"},"plug":{"kind":"plastic","finish":"matte"},"clip":{"kind":"plastic","finish":"satin"},"orangeBulb":{"kind":"emissive","finish":"glow"},"purpleBulb":{"kind":"emissive","finish":"glow"}},"rev":1793139345,"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.","night_note":"match `albedo` in COLOR_0 exactly, make those vertices emissive at `color` and `intensity`, and drop your scene lights. findable false means that colour is no longer in this asset's geometry: skip the zone rather than guessing.","preview_v":1793139352,"mod_v":1793139345}