KINBARROW modding reference
v0.2.0+main.c05ef2b dataset 45d0fe274f851548

Campaign

campaign.ron — the manifest. id equals the campaign folder name.

FieldTypeRequiredDescription
chronicleNote[]required

Backdated chronicle entries the world opens with.

death_dayuint64required

The day the campaign's founding death fell (the ducal assassination).

default_seeduint64required

Root of every deterministic roll when no seed is supplied.

descriptionstringrequired

A one-line blurb for the realm (flavour, not resolved).

idstringrequired
namestringrequired

The realm-scale region the towns sit in ("Thornwood Vale").

player_startPlayerStartoptional

Where an admitted player character comes ashore — the creator's data. Additive: a campaign without it can still be played through the seeded pregen fast lane.

roadsRoad[]required

Roads laid AFTER the towns are built, resolved by node name.

slotsSlot[]required

Procedural town slots (worldgen) — what makes the realm the realm: an authored coast plus a generated vale.

sourceSourcerequired
start_dayuint64required

When the campaign opens (day, and the hour the world boots at).

start_houruint64required

The hour of start_day the world boots at (0-23).

townsstring[]required

Authored towns, by file id (towns/<id>.ron). Sorted at load, so the interpret order never depends on filesystem iteration order.

Nested shapes

Every shape Campaign closes over, so this page stands alone.

Note

A backdated chronicle note (record_at).

FieldTypeRequiredDescription
dayuint64required

The day the note is backdated to.

houruint64required

The hour of that day (0-23).

textstringrequired

The chronicle line's text.

PlayerStart

Where the character creator's minted PC ENTERS the world: the settlement it comes ashore in, the venue/ward it is placed LocatedIn, a starting purse, and an optional ward membership. Resolved BY NODE NAME at admit time (the interpreter has already minted these), so it reads like the campaign's roads (also name-resolved). Validated by the one campaign validator (campaign/validate.rs): the settlement, venue, and ward must name real nodes the town declares.

FieldTypeRequiredDescription
purseintegeroptional

A starting purse in the coin good's minor units (silver), if any.

settlementstringrequired

The settlement the PC enters (a town's display name — "Greyharbor").

venuestringrequired

The venue OR ward the PC is placed LocatedIn — "The Brined Gull".

wardstringoptional

A ward the PC joins on arrival (MemberOf), by name, if any.

Road

A road between two named nodes, carrying the ride's length in days. Resolved by node NAME after the towns exist.

FieldTypeRequiredDescription
daysint64required

The ride's length in days.

fromstringrequired

The node the road runs FROM, by name (a settlement).

routestringrequired

The route's display name ("the Coast Road").

tostringrequired

The node the road runs TO, by name (a settlement).

Slot

A procedural town slot: worldgen builds it, and a road binds it to a settlement that already stands (authored, or rolled by an earlier slot).

FieldTypeRequiredDescription
daysint64required

The road's length in days.

kindSlotKindrequired

What procedural fill this slot requests.

road_fromSlotRoadrequired

The settlement this slot's road runs from.

routestringrequired

The road's display name.

SlotKind

The kind of procedural fill a slot requests.

Worldgen

A full worldgen town, landlocked farm-and-forge by default.

Mountain

The far mine-and-mithral peaks: a mountain town whose data mine instantiates the rare-regional mithral deposit — the first world where mithral flows. Booted only at three towns (RPGPT_TOWNS=3).

SlotRoad

Where a slot's road runs FROM — the settlement at the road's other end.

Two forms, because a realm's towns are not all named at the same time. An AUTHORED town has its name in the campaign's own files, so a slot can just say it. A ROLLED town's name is drawn from the realm seed at compose time and does not exist while the manifest is being read — so a road that runs from one must reference the SLOT that rolls it, by index.

That second form is what lets a wide realm CHAIN (the river town off the vale, the high pass off the river, the forest past the pass) rather than starring every road off the authored coast — which piled every route posting and traded store onto one hub and grew its menu enumeration superlinearly in town count.

Town

An authored settlement, by name: Town("Greyharbor").

Carries string.

Slot

An EARLIER slot's rolled town, by index: Slot(0). Must point strictly backwards — a slot cannot road from a town not yet placed.

Carries uint.

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.