Characters
Phase 3 feature. Define character sheet data — system rules, ancestry/race, class features, stats — and auto-generate all weapon/spell rolls with correct notation, including modifiers, rerolls, crit rules, and Named Parameters.
Character Definition
A character record contains:
System & Rules
- Game system: D&D 5e, Pathfinder, Call of Cthulhu, FATE, Custom
- Crit rule: Normal (
c), Perkins Crit (C), or system-specific override - Reroll mechanic: e.g., Halfling Lucky (d20r)
Ancestry / Race
- Race name (Halfling, Human, Elf, etc.)
- Racial features encoded as notation transformations
- Halfling: d20 rolls wrap as
d20r(reroll 1s) - Custom: user can define arbitrary notation templates
- Halfling: d20 rolls wrap as
Class & Features
- Class name (Fighter, Paladin, Rogue, etc.)
- Features as named parameters or dice modifiers
- Paladin: gain
<smite>parameter (adds dice on demand) - Champion: expand crit range, e.g.,
n[19..20]instead ofn20 - Rogue:
<sneak_attack>parameter (adds d6 per level)
- Paladin: gain
Ability Scores & Modifiers
- STR, DEX, CON, WIS, INT, CHA → numeric modifiers
- Skills with proficiency + bonuses
- AC, hit dice per level, spell DC
Weapons & Attacks
- Weapon name (longsword, shortbow, magic missile)
- Attack notation template:
d20+<str_mod> -> d8+<str_mod>(attack → damage) - Conditional damage: crits, smites, bonus actions
- Damage dice, modifiers, special rules (e.g., two-weapon fighting penalty)
Spells
- Spell name, level, save type
- Roll notation for damage or effect
- Parameters for scaling (spell slot spent, upcast bonus dice)
Auto-Generated Favorites
The app generates a full Favorites list from character data:
-
Weapon Attacks — every weapon becomes a favorite with attack + damage flow
- Notation auto-includes modifiers, racial rerolls, crit rule, class features
- Example: Halfling Paladin with longsword →
(2(d20r)kh)+3 -> d8+3(<smite>?+2d8)(n20?C)
-
Spells — each spell becomes a favorite with damage/save notation
- Notation includes save DC, spell modifier, upcast parameters
- Example: Magic Missile (Evocation) →
3(1d4+1)+[upcast_bonus]
-
Bonus Actions — special actions encoded as flows
- Example: Rogue disengage + sneak attack → multi-box flow with conditional sneak attack dice
The app respects all character rules when building notation:
- Applies racial reroll mechanics
- Includes class feature parameters (smite, sneak attack, bardic inspiration, etc.)
- Respects crit rule (normal vs. Perkins) for that character
- Honors proficiency bonuses and ability modifiers
- Scales with level (hit dice, spell slots, damage progression)
No manual notation editing required — user just picks the weapon/spell from a menu, app generates correct notation, player taps to roll.
Discord Bot Integration
Once a character is defined, the Discord Bot can resolve shorthand commands:
/roll Bramblewood longsword
Discord bot looks up “Bramblewood” character, finds “longsword” weapon, fetches the auto-generated notation, rolls it, and posts result with interactive parameter buttons.
Sync & Accounts
Phase 3 likely requires user accounts and cloud sync:
- Login via OAuth (Discord, Google, or custom)
- Store characters in cloud database
- Sync between web app, Discord bot, native apps
- Share characters within gaming groups (read-only or collaborative edit)
Offline-first still works: characters cached locally, sync on next connection.
Feasibility Notes
This is a high-value feature — end users think in character terms, not notation. But it requires:
- UI for character builder (forms for stats, features, weapons)
- Notation generation logic (mapping system rules to notation)
- Accounts & sync infrastructure (possibly deferred to Phase 3.5)
Minimum viable scope: D&D 5e only, predefined classes/races, user-editable stat/modifier fields. Custom systems deferred.
See also: Roadmap, Architecture, Discord Bot, Favorites, MCP Server