HEXWORK - A Lantern in the Deep: 3D ASCII terminal roguelike RPG in Rust. Entirely designed and built by Muse Spark 1.3 to evaluate if I like the model.
hexwork assets data items.schema.md
2.3 kB
Markdown
at main

items.toml schema #

Canonical slice items (assets/data/items.toml). Design traces: docs/02 §5, docs/03 §3.4, docs/04 §4.4.

Shape: top-level array of [[item]] tables. Count: 40 (Phase 13; 80 remain to the 120+ launch target).

Intent-comment convention #

Every [[item]] carries an intent string field explaining its balance numbers (why this price, weight, condition). It is a data field, not a TOML # comment, so it survives parsing and ships into validation error messages and review tooling. Same convention in all 7 data files. Free-form TOML # comments are section headers only.

Fields #

field type required meaning
id string yes snake_case unique key (lamp_oil). Cross-file refs use this.
name string yes display name (Lamp oil (flask)).
material string yes voxel material name: one of the 11 canonical UPPERCASE materials AIR WOOD IRON COPPER STONE BRASS FLESH SAINT_BONE GLASS ROPE PAPER. Slice conventions: GLASS for flasks/vessels (lamp oil ships in a glass flask), ROPE for woven fiber (flour sacks, bandages, nets), FLESH for organics (rations, leather), WOOD for plant matter (tinker-moss poultice).
category string yes one of consumable tool weapon armor relic trade corpse.
weight_kg float yes kilograms; drives HAUL math (docs/03 §3.2).
bulk integer yes inventory slots; awkward items (pole, pike) cost 3.
base_price_cu integer yes copper-unit price; 0 legal (lien chit: never bought, only issued).
uses string[] yes 2+ real uses each (two-uses law, docs/02 §5). Validation rejects fewer.
identified bool yes false = sold/held unidentified (docs/03 §3.4).
cursed bool yes sticky, lying gear.
blessed bool yes hums-true gear.
condition string yes one of sound spent perishable cracked owed. spent (dead cells), owed (Audit-liened, glowing fine print), cracked (leaky), perishable (rot clock).
silvered bool yes silvered vs. Drowned (docs/03 §3.4).
illegal bool yes Drowned bells etc.; empties shops, bills you (docs/03 §3.6).
intent string yes why these numbers (see convention above).