Feats, species and backgrounds
This page shows how to write a homebrew feat, species and background, with the choices a player makes when they take one and the things each one grants, for 5e and 5.5e.
Feats, species and backgrounds describe who a character is rather than what they carry. A species is the people they come from, such as dwarves or elves; a background is what they did before adventuring; a feat is a special talent, such as being unusually alert. In a homebrew pack each is one row in the items list. Their effects are always on, and most come with choices: which language to learn, which ability to raise. Once you, the Game Master (GM), bind the pack to a game, RollQuest asks those questions in its choices window when a player takes the item, in the character builder or from their sheet, and writes the answers onto the sheet. Everything here works for 5e (the 2014 rules, SRD 5.1) and 5.5e (the 2024 rules, SRD 5.2.1); where the two differ, the page says so.
Plan: writing homebrew packs is on Pro. Players on any plan take what you bind with + From pack on their sheet, and the character builder's steps are on every plan.
Every example on this page is a complete pack that RollQuest accepts as it stands. Paste one into Check and create to try it (see Your first homebrew pack, step by step), or copy the object inside items into a pack of your own. Effects are explained in full in Effects: what an item can change, and every kind of choice in Choices and grants.
Where each one reaches players, once the pack is bound to the game:
flowchart LR
P["Your pack, bound to the game"] --> F["Feat: + From pack on the sheet"]
P --> S["Species: the builder's species step, or + From pack"]
P --> B["Background: the builder's background step, or + From pack"]
F --> C["Choices window"]
S --> C
B --> C
C --> Sheet["The character sheet"]
A feat
Keen Watcher is a general feat: +1 to Wisdom or Intelligence (the player's choice), proficiency in Perception, and +2 to Initiative.
{
"slug": "my-keen-watcher",
"name": "Keen Watcher (homebrew feat)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "FEAT_KEEN_WATCHER",
"spec": {
"subType": "feat",
"id": "FEAT_KEEN_WATCHER",
"name": "Keen Watcher",
"meta": {
"category": "General Feat",
"passive": true,
"description": "+1 Wisdom or Intelligence; proficiency in Perception; +2 to Initiative."
},
"actions": [],
"effects": [
{
"id": "KEEN_WATCHER_PERC",
"target": "P_PERC",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "KEEN_WATCHER_INIT",
"target": "INIT_BONUS",
"op": "add",
"value": 2,
"condition": "",
"trigger": ""
}
],
"choices": [
{
"id": "keen_watcher_asi",
"kind": "abilityIncrease",
"prompt": "+1 Wisdom or Intelligence",
"from": [
"WIS",
"INT"
],
"total": 1,
"perAbilityCap": 1
}
]
}
}
]
}
In play, a player adds Keen Watcher with + From pack on their sheet (in the Items panel it's on the Feats tab). The choices window opens, headed with the feat's name, and asks +1 Wisdom or Intelligence: they press + on one of the two and confirm. The feat lands on the Main tab's Features tab, their Wisdom or Intelligence goes up by 1, Perception shows as proficient, and Initiative is 2 higher.

The feat's fields:
| Field | What it does | Allowed values | Checked? |
|---|---|---|---|
spec.subType |
Makes it a feat: the Feats tab, and effects that are always on. | feat. |
Yes: an unknown word is refused. |
meta.category |
Shown in the Items panel's Category column. Feat choices filter by it: a background that offers an Origin feat lists every feat whose category contains Origin Feat. | 5.5e: Origin Feat, General Feat, Fighting Style, Epic Boon. 5e: Feat. |
No. |
meta.passive |
true for a feat with no button. It only hides the button in a Canvas sheet's placed containers. |
true or false. |
No. |
meta.description |
The feat's text. Write any prerequisite here, such as "Prerequisite: Level 4+": RollQuest doesn't check prerequisites. | Any text. | No. |
spec.effects |
Changes that are always on while the character has the feat. | A list of effects. | Yes. |
spec.choices |
Questions asked when the feat is added. | A list of choices (below). | Yes: each choice needs an id and a real kind, and the IDs in from, a packSlug and maxScore are checked. |
The two effects use the standard targets for a skill and Initiative:
P_PERCwithsetMin1: proficiency in Perception. Each skill has one, such asP_STEfor Stealth andP_ARCfor Arcana. 1 is proficient; 2 is expertise (double the bonus).setMinmeans "at least", so a character who's proficient already isn't changed.INIT_BONUSwithadd2: a bonus added to Initiative. It counts when the player rolls Initiative from their sheet.
The abilityIncrease choice:
| Field | What it does | Here |
|---|---|---|
id |
The choice's ID, unique in the item. | keen_watcher_asi |
kind |
The kind of question. | abilityIncrease |
prompt |
The question in the choices window. | +1 Wisdom or Intelligence |
from |
The abilities the player can raise. | WIS, INT; any of STR, DEX, CON, INT, WIS, CHA. |
total |
The points to share out. The player must use all of them. | 1 |
perAbilityCap |
The most one ability can get. | 1 |
maxScore |
Optional: the highest the score can go. Without it, the system's maximum (20). Epic Boons use 30. | Left out. A whole number when used. |
A feat can only be taken once. Its prerequisite, if it has one, is up to the table.
More feats
Expertise. A skillProf choice with "tier": 2 gives expertise. This feat also teaches a language: languages, tools and skills are all skillProf choices, told apart by their IDs (L_ for languages, T_ for tools, P_ for skills).
{
"slug": "my-cinder-savant",
"name": "Cinder Savant (homebrew feat)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "FEAT_CINDER_SAVANT",
"spec": {
"subType": "feat",
"name": "Cinder Savant",
"meta": {
"category": "General Feat",
"passive": true,
"description": "General Feat (Prerequisite: Level 4+). Expertise in one skill you are proficient in; learn one language."
},
"actions": [],
"effects": [],
"choices": [
{
"id": "cinder_savant_expertise",
"kind": "skillProf",
"prompt": "Choose 1 skill you are proficient in for Expertise",
"from": [
"P_ARC",
"P_HIS",
"P_INV",
"P_NAT",
"P_REL"
],
"pick": 1,
"tier": 2
},
{
"id": "cinder_savant_language",
"kind": "skillProf",
"prompt": "Choose 1 language",
"from": [
"L_DRACONIC",
"L_INFERNAL",
"L_PRIMORDIAL"
],
"pick": 1
}
]
}
}
]
}
The choices window shows each option by name, with Show details for skills and tools. It doesn't check that the character is proficient already before giving expertise: "Choose 1 skill you are proficient in" is a request to the player.
A stance that switches on and off. meta.toggleable makes the feat's effects count only while it's on. On the Form View, the sheet's standard tabbed layout (see Form and Canvas views), the feat has an Active chip; in the Items panel, On / Off.
{
"slug": "my-emberguard-stance",
"name": "Emberguard Stance (homebrew feat)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "FEAT_EMBERGUARD_STANCE",
"spec": {
"subType": "feat",
"name": "Emberguard Stance",
"meta": {
"category": "General Feat",
"passive": false,
"toggleable": true,
"description": "While the stance is on you gain +1 AC and resistance to fire damage."
},
"actions": [],
"effects": [
{
"id": "EMBERGUARD_AC",
"target": "AC_MISC_BONUS",
"op": "add",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "EMBERGUARD_FIRE",
"target": "RESIST_FIRE",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
]
}
}
]
}
The 5e version. A 5e feat is written the same way, with "category": "Feat". Iron Hide, from a 5e pack, adds 1 to AC and a hit point per level; HP_MISC_BONUS is 5e's bonus to maximum hit points (5.5e uses HP_MAX):
{
"kind": "inventoryItem",
"key": "FEAT_IRON_HIDE_5E",
"spec": {
"subType": "feat",
"id": "FEAT_IRON_HIDE_5E",
"name": "Iron Hide",
"meta": {
"category": "Feat",
"passive": true,
"description": "+1 AC; +1 hit point per level."
},
"effects": [
{
"id": "IRON_HIDE_HP",
"target": "HP_MISC_BONUS",
"op": "add",
"value": "=LEVEL",
"condition": "",
"trigger": ""
},
{
"id": "IRON_HIDE_AC",
"target": "AC_MISC_BONUS",
"op": "add",
"value": 1,
"condition": "",
"trigger": ""
}
]
}
}
A feat with uses that come back on a rest is written like the Second Breath example in Magic items and consumables.
A species
Emberkin are a 5.5e species: darkvision to 60 ft, resistance to fire, and one extra language of the player's choice.
{
"slug": "my-emberkin",
"name": "Emberkin (homebrew species)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "SPECIES_EMBERKIN",
"spec": {
"subType": "background",
"id": "SPECIES_EMBERKIN",
"name": "Emberkin",
"meta": {
"size": "Medium",
"speed": "30 ft",
"passive": true,
"description": "Creature Type: Humanoid. Darkvision 60 ft. Fire resistance. One extra language."
},
"effects": [
{
"id": "EMBERKIN_DARKVISION",
"target": "SENSE_DARKVISION",
"op": "setMin",
"value": 60,
"condition": "",
"trigger": ""
},
{
"id": "EMBERKIN_FIRE",
"target": "RESIST_FIRE",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
],
"choices": [
{
"id": "emberkin_language",
"kind": "skillProf",
"prompt": "Choose 1 language",
"from": [
"L_DRACONIC",
"L_DWARVISH",
"L_ELVISH",
"L_GIANT",
"L_PRIMORDIAL"
],
"pick": 1
}
]
}
}
]
}
In play, when the pack is routed into Choose Your Species, a new character sees Emberkin as a card on that step, with From and the pack's name. Clicking it opens the choices window for the language; once they confirm, the species is on the sheet, a message says Added Emberkin., and the builder moves on to the next step. Their token sees in the dark to 60 ft in a scene with dynamic fog (see Token vision), fire damage is halved, and the language is ticked.
The species' fields:
| Field | What it does | Allowed values | Checked? |
|---|---|---|---|
spec.subType |
Species and backgrounds are both background: always on, on the Backgrounds tab of the Items panel. |
background. |
Yes: species is refused. |
meta.size, meta.speed |
Kept with the species as text. They change nothing on the sheet: the token's size is set on the board, and Speed comes from an effect (below). Put them in the description as well, where players read them. | Text, such as Medium and 30 ft. |
No. |
meta.kind |
species makes a Species field placed on a Canvas sheet show this species' name. Without it, that field only finds a species whose pack slug contains species, race or ancestry. |
species (or background on a background). |
No. |
meta.passive |
true: a species has no button. |
true. |
No. |
meta.description |
The species' text, on its builder card. | Any text. | No. |
spec.effects |
Its traits: senses, resistances, proficiencies, Speed. | A list of effects. | Yes. |
spec.choices |
Questions asked when it's taken. | A list of choices. | Yes, as for a feat. |
The effects a species uses most:
| Trait | Effect |
|---|---|
| Darkvision 60 ft | SENSE_DARKVISION, setMin, 60. 5.5e also has SENSE_BLINDSIGHT, SENSE_TREMORSENSE and SENSE_TRUESIGHT; 5e has darkvision only. |
| Resistance to fire | RESIST_FIRE, setMin, 1 (2 for immunity). |
| Speed 35 ft | SPEED, add, 5. meta.speed alone doesn't change it. |
| A language | L_DRACONIC (or any L_ ID), setMin, 1. |
| A skill | P_PERC (or any P_ ID), setMin, 1. |
| Extra hit points per level | 5.5e: HP_MAX, add, =LEVEL. 5e: HP_MISC_BONUS, add, =LEVEL. |
| +2 Charisma (5e) | CHA, add, 2. 5.5e species don't raise abilities; 5.5e backgrounds do. |
The skillProf choice:
| Field | What it does | Here |
|---|---|---|
kind |
The kind of question. | skillProf |
prompt |
The question. | Choose 1 language |
from |
The IDs to choose from. | Five L_ language IDs. |
pick |
How many to choose. | 1 |
tier |
Optional: 1 for proficiency (the default), 2 for expertise. | Left out. |
Routing a species into the builder
Bind the pack to your game with Bind to this table in My Homebrew, and tick Choose Your Species (in 5e the step is Choose Your Race). That step lets a character hold one species, so the window warns you: every item in the pack joins the step, and picking one replaces the species a character had, on every sheet at the table. Tick I understand this replaces existing picks on sheets at this table to bind it. See Put your pack on a table.

Two rules keep a routed species pack working:
- Keep species in a pack of their own. Every item in a routed pack appears in the step, so a weapon in the same pack would show up as a species card.
- Don't give any item in it a
kitLevel. That field marks class levels; one in the pack makes the step show only level 1 class rows, and your species disappear from it.
A character who already has a species can also take yours with + From pack (the Items panel lists it on the Backgrounds tab). While the pack is routed into the species step, that replaces their old species too.
More species
Lineages. A feature choice offers a closed list of options. Each option's effects join the species when it's picked, and its autoInclude adds other items: here the Cinderborn lineage adds the built-in Fire Bolt cantrip to the sheet as a spell of its own.
{
"slug": "my-ashborn-species",
"name": "Ashborn (homebrew species)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "SPECIES_ASHBORN",
"spec": {
"subType": "background",
"name": "Ashborn",
"meta": {
"kind": "species",
"size": "Medium",
"speed": "30 ft",
"passive": true,
"description": "Creature Type: Humanoid. Darkvision 60 ft. Choose a lineage: Cinderborn, Smokeborn or Swiftborn."
},
"effects": [
{
"id": "ASHBORN_DARKVISION",
"target": "SENSE_DARKVISION",
"op": "setMin",
"value": 60,
"condition": "",
"trigger": ""
}
],
"choices": [
{
"id": "ashborn_lineage",
"kind": "feature",
"prompt": "Choose your Ashborn lineage",
"pick": 1,
"options": [
{
"id": "cinderborn",
"label": "Cinderborn",
"description": "Resistance to fire damage. You know the Fire Bolt cantrip.",
"effects": [
{
"id": "ASHBORN_CINDER_FIRE",
"target": "RESIST_FIRE",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
],
"autoInclude": [
{
"packSlug": "5-5e-srd-spells",
"itemKey": "SPELL_FIRE_BOLT",
"alwaysPrepared": true
}
]
},
{
"id": "smokeborn",
"label": "Smokeborn",
"description": "Proficiency in Stealth.",
"effects": [
{
"id": "ASHBORN_SMOKE_STEALTH",
"target": "P_STE",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
]
},
{
"id": "swiftborn",
"label": "Swiftborn",
"description": "Your Speed increases by 5 feet.",
"effects": [
{
"id": "ASHBORN_SWIFT_SPEED",
"target": "SPEED",
"op": "add",
"value": 5,
"condition": "",
"trigger": ""
}
]
}
]
}
]
}
}
]
}
Each option has an id (unique in the choice), a label (shown, and kept with the character's answer), a description, effects, and optionally autoInclude and choices. Inside an option, only skillProf and spell (power) choices are asked; other kinds are ignored there.
A spell granted with "alwaysPrepared": true, such as Fire Bolt here, arrives prepared and shows an Always prepared chip on the Form View. It doesn't count against the character's prepared spells.
The 5e version. 5e species raise abilities directly with effects, and grant their languages as effects too. This is the Emberkin row from a 5e pack ("system": "5e Compatible", "derivedFrom": "5e-core"):
{
"kind": "inventoryItem",
"key": "SPECIES_EMBERKIN_5E",
"spec": {
"subType": "background",
"id": "SPECIES_EMBERKIN_5E",
"name": "Emberkin",
"meta": {
"size": "Medium",
"speed": "30 ft",
"passive": true,
"description": "+2 Charisma, +1 Constitution, darkvision 60 ft, fire resistance, Common and Primordial."
},
"effects": [
{
"id": "EMBERKIN5_CHA",
"target": "CHA",
"op": "add",
"value": 2,
"condition": "",
"trigger": ""
},
{
"id": "EMBERKIN5_CON",
"target": "CON",
"op": "add",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "EMBERKIN5_DV",
"target": "SENSE_DARKVISION",
"op": "setMin",
"value": 60,
"condition": "",
"trigger": ""
},
{
"id": "EMBERKIN5_FIRE",
"target": "RESIST_FIRE",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "EMBERKIN5_COMMON",
"target": "L_COMMON",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "EMBERKIN5_PRIM",
"target": "L_PRIMORDIAL",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
]
}
}
A background
The Lamplighter is a 5.5e background: proficiency in Investigation, Perception and Tinker's Tools, +3 to share between Dexterity, Intelligence and Wisdom, and an Origin feat of the player's choice.
{
"slug": "my-lamplighter",
"name": "Lamplighter (homebrew background)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "BACKGROUND_LAMPLIGHTER",
"spec": {
"subType": "background",
"id": "BACKGROUND_LAMPLIGHTER",
"name": "Lamplighter",
"meta": {
"passive": true,
"description": "Ability Scores: Dexterity, Intelligence, Wisdom. Skills: Investigation, Perception. Tool: Tinker's Tools."
},
"effects": [
{
"id": "LAMPLIGHTER_INV",
"target": "P_INV",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "LAMPLIGHTER_PERC",
"target": "P_PERC",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "LAMPLIGHTER_TOOL",
"target": "T_TINKER",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
],
"choices": [
{
"id": "lamplighter_asi",
"kind": "abilityIncrease",
"prompt": "Distribute +3 across Dexterity, Intelligence, Wisdom (max +2 each)",
"from": [
"DEX",
"INT",
"WIS"
],
"total": 3,
"perAbilityCap": 2
},
{
"id": "lamplighter_feat",
"kind": "feat",
"prompt": "Choose an Origin feat",
"packSlug": "5-5e-srd-feats",
"filter": {
"category": "Origin Feat"
},
"pick": 1
}
]
}
}
]
}
In play, when the pack is routed into Choose Your Background, a new character sees the Lamplighter card on that step. Clicking it opens the choices window with two questions: share out the +3 (no more than +2 on one ability), and pick an Origin feat from the built-in feats. If the feat has choices of its own, such as which spells Magic Initiate teaches, they open underneath it. Once they confirm, the background and the feat are both on the sheet, as two rows.
What's new here:
- Fixed proficiencies are effects:
P_INV,P_PERCandT_TINKER, eachsetMin1. Tools areT_IDs, such asT_THIEVES_TOOLS. - The 5.5e ability increase is a choice:
total3,perAbilityCap2, from the three abilities the background names. - The Origin feat is a
featchoice:
| Field | What it does | Here |
|---|---|---|
kind |
Offers feats from a pack. | feat |
packSlug |
The pack the feats come from. | 5-5e-srd-feats, the built-in 5.5e feats. |
filter |
Narrows them by meta.category: a feat whose category contains the text is offered. |
{ "category": "Origin Feat" } |
pick |
How many to choose. | 1 |
The picked feat arrives as its own row, with its own effects. Anything the feat would grant by autoInclude doesn't come with it.
More backgrounds
A background that grants one feat. Instead of a choice, autoInclude adds a named feat to the sheet along with the background. packSlug and itemKey say which item; both are needed.
{
"slug": "my-ember-warden",
"name": "Ember Warden (homebrew background)",
"system": "5.5e Compatible",
"derivedFrom": "5-5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "BACKGROUND_EMBER_WARDEN",
"spec": {
"subType": "background",
"name": "Ember Warden",
"meta": {
"kind": "background",
"passive": true,
"description": "Ability Scores: Strength, Constitution, Wisdom. Feat: Alert. Skills: Athletics, Survival. Tool: Smith's Tools."
},
"effects": [
{
"id": "EMBER_WARDEN_ATH",
"target": "P_ATH",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "EMBER_WARDEN_SUR",
"target": "P_SUR",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "EMBER_WARDEN_TOOL",
"target": "T_SMITH",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
],
"choices": [
{
"id": "ember_warden_asi",
"kind": "abilityIncrease",
"prompt": "Distribute +3 across Strength, Constitution, Wisdom (max +2 each)",
"from": [
"STR",
"CON",
"WIS"
],
"total": 3,
"perAbilityCap": 2
}
],
"autoInclude": [
{
"packSlug": "5-5e-srd-feats",
"itemKey": "FEAT_ALERT"
}
]
}
}
]
}
autoInclude can only add an item that asks no questions. Alert has none; Magic Initiate asks for spells, so a background that grants it must use a feat choice, as the Lamplighter does. RollQuest accepts the pack either way, but a player who takes a background that autoIncludes Magic Initiate gets an error and nothing is added.
The 5e version. 2014 backgrounds have no ability increase or Origin feat: skills and tools as effects, and languages as a skillProf choice.
{
"slug": "my-lamplighter-5e",
"name": "Lamplighter (homebrew background, 2014 rules)",
"system": "5e Compatible",
"derivedFrom": "5e-core",
"category": "addon",
"version": "1.0.0",
"license": "USER_HOMEBREW",
"source": "My table's homebrew.",
"attribution": "",
"description": "",
"requiredDecisions": [],
"items": [
{
"kind": "inventoryItem",
"key": "BACKGROUND_LAMPLIGHTER_5E",
"spec": {
"subType": "background",
"name": "Lamplighter",
"meta": {
"kind": "background",
"passive": true,
"description": "Skills: Investigation, Perception. Tool: Tinker's Tools. Languages: one of your choice."
},
"effects": [
{
"id": "LAMPLIGHTER5_INV",
"target": "P_INV",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "LAMPLIGHTER5_PERC",
"target": "P_PERC",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
},
{
"id": "LAMPLIGHTER5_TOOL",
"target": "T_TINKER",
"op": "setMin",
"value": 1,
"condition": "",
"trigger": ""
}
],
"choices": [
{
"id": "lamplighter5_language",
"kind": "skillProf",
"prompt": "Choose 1 language",
"from": [
"L_DWARVISH",
"L_ELVISH",
"L_GIANT",
"L_GNOMISH",
"L_GOBLIN",
"L_HALFLING",
"L_ORC"
],
"pick": 1
}
]
}
}
]
}
What players see
- In the builder. Species and backgrounds routed into their steps are cards among the built-in ones, with From and your pack's name. Feats aren't a builder step: they arrive through a background's
featchoice, or from + From pack. See Create a character for the choices window. - On the sheet. Feats, species and backgrounds are listed on the Main tab's Features tab. In the Items panel, feats are on the Feats tab, with Category and Description; species and backgrounds are on the Backgrounds tab.
- Picks are written onto the sheet. A skill, language or ability increase picked in the choices window is written onto the sheet when it's made. An ability increase stays when the player re-rolls or reassigns their ability scores.
- Removing the item takes its picks back. Delete a feat, species or background from the sheet, and RollQuest lowers the skills, languages and ability scores its choices raised, unless something else on the sheet still gives them. A message says what it took back. On an older character whose ability scores were last set before RollQuest kept track of chosen increases, it leaves the scores alone and says Ability scores were left as they are: run Set Ability Scores to bring them in step.
Your homebrew feats aren't offered where the built-in rules offer feats: a built-in background's Origin feat, the Ability Score Improvement or feat choice at level 4, and the Epic Boon at level 19 all list the built-in feats. Players add yours from + From pack.
Choices, field by field
The choices on this page, side by side. Every kind is covered in Choices and grants.
| Field | Used by | What it does |
|---|---|---|
id |
all | The choice's ID, unique in the item. The player's answer is kept under it. |
kind |
all | skillProf, abilityIncrease, feature, feat; also asiOrFeat (an ability increase or a feat), power (spells), spellSwap, weaponMastery and baseWeapon. |
prompt |
all | The question. |
from |
skillProf, abilityIncrease |
The IDs to choose from. |
pick |
skillProf, feature, feat |
How many to choose. Default 1. |
tier |
skillProf |
2 for expertise. |
total, perAbilityCap, maxScore |
abilityIncrease |
Points to share, the most per ability, and the highest a score can reach. |
options |
feature |
The list to choose from, each with id, label, description, effects, and optionally autoInclude and choices. |
packSlug, filter |
feat |
Where the feats come from, and the category text to match. |
The check that runs when you create the pack reads each choice. A misspelt kind or a missing id is refused (CHOICE_INVALID), so is an ID in from that the system doesn't have (CHOICE_FROM_UNRESOLVED), and so is a packSlug that names no pack it can see (PACK_REFERENCE_UNKNOWN_PACK). It can't tell whether a choice makes sense, though: an abilityIncrease whose total can't be reached is accepted. Take every new feat, species and background on a test character before your players do.
5e and 5.5e
| 5e (2014) | 5.5e (2024) | |
|---|---|---|
system, derivedFrom |
"5e Compatible", "5e-core" |
"5.5e Compatible", "5-5e-core" |
| Species step | Choose Your Race | Choose Your Species |
| Ability increases | On the species, as effects (CHA add 2) |
On the background, as an abilityIncrease choice |
| Origin feat | None | A feat choice on the background, from 5-5e-srd-feats |
| Feat categories | Feat |
Origin Feat, General Feat, Fighting Style, Epic Boon |
| Extra hit points per level | HP_MISC_BONUS |
HP_MAX |
| Senses | SENSE_DARKVISION |
Also SENSE_BLINDSIGHT, SENSE_TREMORSENSE, SENSE_TRUESIGHT |
| Languages | No L_COMMON_SIGN |
L_COMMON_SIGN (Common Sign Language) |
A pack that uses the other edition's IDs in an effect is refused (EFFECT_TARGET_UNRESOLVED), and so is one that offers them in a choice's from: L_COMMON_SIGN in a 5e pack's language choice is refused with CHOICE_FROM_UNRESOLVED.
Mistakes that get a pack refused
| Code | What you wrote | Fix |
|---|---|---|
SUBTYPE_UNDECLARED |
"subType": "species". |
Species and backgrounds are background. |
EFFECT_TARGET_UNRESOLVED |
An ID that isn't in the edition, such as HP_MISC_BONUS in 5.5e or SENSE_BLINDSIGHT in 5e. |
Use the edition's ID (table above). |
CHOICE_MAX_SCORE_INVALID |
maxScore as text, such as "30". |
A whole number: 30. |
CHOICE_INVALID |
A choice kind that doesn't exist, such as language or tool, or spell, or a choice with no id. |
Languages, tools and skills are skillProf; spells are power. Give every choice an ID. |
CHOICE_FROM_UNRESOLVED |
An ID in a choice's from that the system doesn't have, such as L_KLINGON, or another edition's. |
Use the edition's IDs (table above). |
PACK_REFERENCE_UNKNOWN_ITEM |
An autoInclude naming an item that doesn't exist, such as FEAT_ALERTT. |
Check the key in the pack you name. |
PACK_REFERENCE_UNKNOWN_PACK |
An autoInclude, or a feat choice's packSlug, naming a pack that isn't there, such as 5-5e-srd-feat. |
Use the built-in pack's slug, such as 5-5e-srd-feats, or your own pack's. |
EFFECT_CONDITION_PROSE |
A condition in words. |
A formula starting with =, or empty. |
Every code is explained in When a pack is refused.
Mistakes the check lets through
- An
abilityIncreasewhosetotalcan't be reached, such as 3 points across two abilities with a cap of 1. The player can't confirm the window. - An
autoIncludeof an item with choices. Refused when a player adds the item. - Speed written only in
meta.speed. The sheet stays at 30 ft. - A species pack with other items in it, routed into the species step: they appear as species.
Related
Choices and grants · Effects: what an item can change · Subclasses and class features · Create a character · Put your pack on a table
