Read 5e24 character-creation options
vault_get_pc_creation_optionsRead the legal choices for guided 5e24 character creation — the same projections vault's web wizard reads. Pass kind to select one list: 'class' / 'species' / 'background' / 'feat' return the option projections (the calling user's own content plus stock, each option carrying its nested choices: skillChoices, toolChoices, startingEquipmentOptions, and per applied ability/feat — proficiencyChoices, spellChoices, spellListChoices, preparedSpells, and choice whose options carry a type; a background option also carries skillChoices + languages, a species option carries languages; background bump modes / feat, etc.); 'feat' returns every feat (a feat picked via an ability's choice carries its own proficiency/spell sub-choices); 'constants' returns the static reference data (skill list with attributes, ability-score methods with their arrays and point-buy costs, language options + pick count, alignments, background bump modes, max ability score, and originFeatCategory — the feat category the background's open feat slot is restricted to; filter the 'feat' list to it for the background pick). Use this BEFORE vault_build_pc so every id and pick you send is one the user is actually entitled to. Start with 'constants' and 'class', then read 'species' / 'background' / 'feat' as the build takes shape.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Which 5e24 creation list to read. 'class' / 'species' / 'background' / 'feat' return the option projections (the user's own + stock content they may pick, with each option's nested choices — skillChoices, toolChoices, startingEquipmentOptions, and per applied ability/feat: proficiencyChoices {types,count,options}, spellChoices {count,options,prepared}, spellListChoices {categories,picks[].optionsByCategory,prepared}, preparedSpells {count} (a block's `prepared: true` = its spells land always-prepared and are EXCLUDED from the preparedSpellPicks pool), abilityScoreBump {options[].lines[]:{amount,count,eligible,max}} (supply the player's pick via `vault_build_pc.abilityBumpPicks`), and `choice` {count,options} where each option carries a `type`. The spellChoices / spellListChoices arrays are INDEX-ALIGNED with the authored blocks — a null entry holds the position of a block that grants nothing at level 1; skip it when rendering but count it when keying picks. A 'background' option ALSO carries its own `skillChoices {count,options}` (a background skill-choice grant → supply picks via `vault_build_pc.backgroundSkillProficiencies`) and `languages {fixed, choose:{count,options}}`; a 'species' option carries `languages {fixed, choose}`. For a `languages.choose` grant, supply the picks via `vault_build_pc.languageChoicePicks` keyed by that rule's `_id`; `languages.fixed` apply automatically). 'feat' returns EVERY feat (the background slot uses Origin-category feats; a feat picked via an ability's `choice` may be any) — a picked feat carries its own proficiency/spell sub-choices. Each 'feat' option carries `repeatable`; a `repeatable` feat filling the background slot keys its `vault_build_pc` picks with a `bg:` prefix. 'constants' returns the static reference data (skill list, ability-score methods and their arrays/point-buy costs, language options, alignments, background bump modes, max ability score, and originFeatCategory — the feat category the background's open feat slot is restricted to; filter the 'feat' list to it for the background pick). Read 'constants' plus 'class' first; read 'species'/'background'/'feat' as the build takes shape. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||