Building
buildings/<id>.ron — OURS; building TYPES for worldgen to instantiate.
| Field | Type | Required | Description |
|---|---|---|---|
| build_cost | any[][] | required | Future-construction data with NO consumer yet (README). |
| furnishings | any[][] | default [] | The type-appropriate genesis furnishing: |
| id | string | required | |
| name | string | required | |
| requires | string[] | required | Terrain tags, ALL required (a conjunction); |
| rooms | RoomSpec[] | optional | The building's ROOM PROGRAM (designer-ruled moddable): the roles its floor plan claims, in claim order (biggest room first). Role names are OPEN vocabulary — the engine branches only on the mechanical flags, so a modded type may declare any rooms it likes. Empty = the default domestic program (the |
| source | Source | required | |
| storage | boolean | required | True = the venue can stockpile goods. |
| storeys | integer | optional | How many storeys the type raises (1..=3, validated); the engine still gates upper floors on footprint mass. Default 1. |
Nested shapes
Every shape Building closes over, so this page stands alone.
RoomSpec
One entry of a building's room program: the role NAME is open modder vocabulary (the narrator's word, the furnishing router's address); the FLAGS are what the engine's code branches on.
| Field | Type | Required | Description |
|---|---|---|---|
| public | boolean | default false | The PUBLIC room: claims the entrance, and opens to every room it touches (the taproom rule). Exactly one per program (validated). |
| role | string | required | The role's name — free vocabulary ("taproom", "laboratory"…): the address a furnishing's |
| upper | boolean | default false | May this role live on an upper floor? Ground-only when false. |
Source
Every file's top-level value carries source.
Srd51
SRD 5.1 — the System Reference Document, the shipped baseline.
Original
Original content authored for this game (not from the SRD).
Personal
A player's own transcription or third-party content in a mod tree — provenance stays honest without borrowing the base tree's markers. Never used by shipped files.