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

TrapDef

traps/<id>.srd.ron — one trap per file; stem == id (the OPEN one-file-per-entity collection, the feats/spells/magic-items precedent). A trap is the SRD "Traps" substrate: a hidden hazard a keen eye DETECTS (a Perception/Investigation check vs detect_dc), a deft hand DISARMS (a thieves'-tools check vs disarm_dc, the lock-pick precedent), and that otherwise SPRINGS its [effect](Self::effect) on whoever triggers it.

The composing consumer is the trapped container: a chest a burglar picks without disarming springs the needle on them. The DCs and dice are the SRD's; the primitives (which skill detects, the save/attack shape) are authored. A trap that springs nothing is refused by the validator.

FieldTypeRequiredDescription
detect_dcuint32required

The DC that detection check beats — a u32, so it is ≥ 0 by type.

detect_skillSkillrequired

The skill a searcher rolls to notice the trap — Perception (the passive eye) or Investigation (deducing it from tampering), per the SRD block.

disarm_dcuint32required

The DC a thieves'-tools check beats to disarm it (the lock-pick shape).

effectTrapEffectrequired

How the sprung trap resolves its payload (a save or an attack roll).

idstringrequired
namestringrequired
sourceSourcerequired

Nested shapes

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

Ability

The six ability scores (SRD 5.1). The engine's own stats::Ability is the runtime type; this is the data-layer mirror, bridged by [Ability::engine].

StrDexConIntWisCha

Damage

FieldTypeRequiredDescription
dicestringrequired

The damage dice, an NdM string (e.g. "1d8").

kindstringrequired

A tables/damage_kinds.srd.ron id, boot-resolved.

OnSave

What a failed save spares (SRD: "half as much damage on a successful one").

HalfNothing

Skill

The eighteen SRD skills.

AthleticsAcrobaticsSleightOfHandStealthArcanaHistoryInvestigationNatureReligionAnimalHandlingInsightMedicinePerceptionSurvivalDeceptionIntimidationPerformancePersuasion

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.

TrapEffect

How a sprung trap resolves its payload — the SRD "Traps" section's two shapes: a SAVING THROW everyone caught rolls (a success spares per [OnSave]), or an ATTACK ROLL the trap makes against the victim's AC. Either carries a damage roll (reusing the damage seam) and/or an inflicted condition (a conditions/ id) — the poison needle's poison AND poisoned. A save with neither damage nor condition, or an attack with no damage, springs nothing and is refused by the validator (the ledger-don't-fake rule, the feat/magic-item precedent).

Save

The caught roll a saving throw of ability vs dc; a success spares per on_save (half the damage, or nothing). Damage and/or a condition land on a FAILURE (a success inflicts no condition, SRD).

FieldTypeRequiredDescription
abilityAbilityrequired
conditionstringoptional
damageDamageoptional
dcuint32required
on_saveOnSaverequired

Attack

The trap makes a ranged attack (d20 + bonus) vs the victim's AC; a hit deals the damage and inflicts the condition, a miss does nothing. No SRD SAMPLE trap rolls an attack (the device samples all save — needle, darts, statue); this is the substrate for a mod's / the DMG's attack-roll traps.

FieldTypeRequiredDescription
bonusint32required
conditionstringoptional
damageDamagerequired