datacentre.rhai (palette groups Data centre, Cooling, Fire safety, Power):
- dc_building: multi-storey shell (storeys of storey_h), walls in pieces,
slabs, roof with parapet, louvres, front door and loading dock; levels
cut it open storey by storey
- raised_floor; rack_row and dc_pod (cabinets by U, width, depth,
equipment, fill, doors, LEDs; in-row coolers; cold / hot aisle
containment with vent tiles, roof, end doors, ceiling duct, airflow);
dc_cage for colocation
- crah, chiller (air-cooled, dry, adiabatic), cooling_tower, pipe_run
- smoke_detectors (grid + coverage), fire_pipe (VESDA, sprinkler, gas),
gas_bank (Novec 1230, FM-200, Inergen sized for its halls), fire_device
(panels, call points, abort switches, beacons, extinguishers)
- power_cab (UPS, battery, PDU, switchgear, RPP), busway, cable_tray,
transformer
- tooltips sum IT load, kW/m2, cooling redundancy per storey, UPS load,
battery runtime, plant cooling and agent quantity (warning when short)
Engine and stdlib:
- part_hidden(o) in house.rhai: parts on closed storeys inside a
dc_building are not drawn (they only made sort cycles under the slab
above); house parts, furniture and people use it. Existing examples
render byte-identical.
- overhead services sort in their own "ceiling" layer with tight boxes
- sort records which sprites each broken cycle involved; isokit check
names them (Rendered.cycle_at)
examples/datacentre (three storeys and a roof plant), Data centre demo in
the web Studio, tests, SCRIPTING/README/ROADMAP, MCP instructions.