Writing Skills
The skill system has two halves: the catalog (/Skills/ — what each skill is) and the proficiencies (stored per person, 0–10). This chapter covers both and the one honest caveat about the fixed vocabulary.
Catalog files
Each skill file in /Skills/ carries:
- attribute — the governing ability score: strength, dexterity, constitution, intelligence, wisdom, or charisma. Choose what the skill truly uses at the moment of use (Intimidation leans on strength — menace is physical; Diplomacy leans on charisma — agreement is social).
- discipline — combat, social, knowledge, or craft. Combat skills touch the wound rules (attack bonuses, Blocking's Defense bonus); the rest are checks against difficulty or an opposing skill.
- description — what the skill covers and what ranks mean in the world: a rank 2 rider sits a horse; a rank 8 rider takes fences at a gallop.
The fixed vocabulary caveat
Each person type (Character, Ally, Neutral, Hostile) carries a computed skillList that zips a stored skills map against an inline literal vocabulary of the 19 skill slugs. That vocabulary is the single source of truth for which skills render on a sheet. Adding a new skill therefore takes two edits: write the catalog file, then add its row to the inline vocabulary in all four schemas (/file-types/<slug>/schema.json, field skillList). Character rows also name the governing attribute; NPC rows don't — NPC types have no ability scores, so rank is the whole bonus.
Keep catalog slugs identical to the vocabulary keys (swordsmanship, unarmed-combat); the map keys on people are the same slugs.
Storing proficiencies
skills on any person is an object keyed by skill slug: { "archery": 6, "herblore": 1 }. Only record trained skills — everything absent reads as 0. Values are 0–10; the sheet dots are editable in place.
- Player characters get a roll bonus of rank + attribute modifier, computed per row.
- NPCs (ally/neutral/hostile) get rank as the whole bonus — keep NPC ranks modest: a journeyman guard is 3–4, a captain 5–6, and 7+ should stop the conversation.
Pricing the ladder
When awarding ranks in play, price by distance: 0→2 is a season of use, 3→4 is a year or a good teacher, 5→6 is a story, and 7→8 costs a saga. Ties to other systems: Medical gates field treatment quality (wound chapter), Herblore pairs with the Bitter Draught and healer's kit effects, Thievery answers to locks and traps the GM places.