Class feat injections moved to yaml

This commit is contained in:
2026-05-24 20:23:08 +02:00
parent 5fa5246e9f
commit b2a58cb011
8 changed files with 429 additions and 86 deletions
+21
View File
@@ -243,6 +243,18 @@ topdata:
min: 0
max: 175
hex_width: 2
class_feat_injections:
global_feats:
- feat: feat:literate
list: 3
granted_on_level: 1
on_menu: 0
unless_present: [feat:illiterate]
class_skill_masterfeats:
- masterfeat: masterfeats:skill_focus
list: 1
granted_on_level: -1
on_menu: 0
wiki:
output_root: wiki
pages_dir: pages
@@ -283,6 +295,15 @@ topdata:
value: 0
```
`topdata.class_feat_injections` controls generated rows for every
`classes/feats/*.json` table. `global_feats` injects concrete `feat:*`
references unless the class already authors that feat; `require_present` and
`unless_present` can make a rule conditional on other feat references already
present in the same class feat table. `class_skill_masterfeats` expands a
`masterfeats:*` family once for each class skill, using the configured
`list`, `granted_on_level`, and `on_menu` values. When this block is omitted,
the toolkit keeps its legacy default injections for compatibility.
`topdata.wiki.alignment_links.target_pattern` controls whether formatted
alignment names become internal wiki links. The pattern may use `{alignment}`
for the title-shaped alignment segment with spaces converted to underscores, and