Pathfinder 2e game system mode #19

Closed
opened 2026-03-26 14:59:45 +01:00 by dostulata · 0 comments
Owner

Summary

Add Pathfinder 2e as an alternative game system alongside D&D 5e/5.5e. The current "Conditions" edition toggle in settings becomes a full "Game System" selector that switches conditions (with PF2e value-based conditions), bestiary (from Pf2eTools, ~2,700+ creatures), stat block layout, and initiative calculation (Perception-based). Both D&D and PF2e search indexes ship bundled with the app.

MVP baseline does not include persistent damage tracking or PF2e encounter difficulty calculation.

Acceptance Criteria

  • User can switch between D&D 5e/5.5e and Pathfinder 2e in a "Game System" selector in settings
  • In PF2e mode, the condition picker shows PF2e-specific conditions (Clumsy, Drained, Enfeebled, Frightened, Off-Guard, etc.) instead of D&D conditions
  • PF2e conditions support integer values (e.g., Clumsy 2, Frightened 3) — clicking in the picker increments; clicking a tag on the row decrements
  • In PF2e mode, the bestiary search operates against a bundled PF2e creature index (~2,700+ creatures from Pf2eTools)
  • Adding a PF2e creature from search pre-fills name, HP, AC, and Perception (as initiative modifier)
  • PF2e stat blocks display the correct layout: level (not CR), three saves (Fort/Ref/Will), ability modifiers (not scores), and top/mid/bot ability sections
  • PF2e source data can be fetched on-demand and cached in IndexedDB (same pattern as D&D sources)
  • Condition tooltips show PF2e rules descriptions when in PF2e mode
  • The game system preference persists across sessions

Research

See docs/agents/research/2026-03-26-pf2e-game-system-mode.md for full details: Pf2eTools data source, JSON structure, field mappings to app types, PF2e condition list, design decisions, and affected code locations.

## Summary Add Pathfinder 2e as an alternative game system alongside D&D 5e/5.5e. The current "Conditions" edition toggle in settings becomes a full "Game System" selector that switches conditions (with PF2e value-based conditions), bestiary (from Pf2eTools, ~2,700+ creatures), stat block layout, and initiative calculation (Perception-based). Both D&D and PF2e search indexes ship bundled with the app. MVP baseline does not include persistent damage tracking or PF2e encounter difficulty calculation. ## Acceptance Criteria - [ ] User can switch between D&D 5e/5.5e and Pathfinder 2e in a "Game System" selector in settings - [ ] In PF2e mode, the condition picker shows PF2e-specific conditions (Clumsy, Drained, Enfeebled, Frightened, Off-Guard, etc.) instead of D&D conditions - [ ] PF2e conditions support integer values (e.g., Clumsy 2, Frightened 3) — clicking in the picker increments; clicking a tag on the row decrements - [ ] In PF2e mode, the bestiary search operates against a bundled PF2e creature index (~2,700+ creatures from Pf2eTools) - [ ] Adding a PF2e creature from search pre-fills name, HP, AC, and Perception (as initiative modifier) - [ ] PF2e stat blocks display the correct layout: level (not CR), three saves (Fort/Ref/Will), ability modifiers (not scores), and top/mid/bot ability sections - [ ] PF2e source data can be fetched on-demand and cached in IndexedDB (same pattern as D&D sources) - [ ] Condition tooltips show PF2e rules descriptions when in PF2e mode - [ ] The game system preference persists across sessions ## Research See [`docs/agents/research/2026-03-26-pf2e-game-system-mode.md`](docs/agents/research/2026-03-26-pf2e-game-system-mode.md) for full details: Pf2eTools data source, JSON structure, field mappings to app types, PF2e condition list, design decisions, and affected code locations.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: dostulata/initiative#19