Skip to content

Custom die feature - #41

Open
flashgnash wants to merge 1 commit into
masterfrom
AI/OW3N-5-custom-die-feature
Open

flashgnash wants to merge 1 commit into
masterfrom
AI/OW3N-5-custom-die-feature

Conversation

@flashgnash

Copy link
Copy Markdown
Owner

Implements custom dice with per-face text/image overrides — the feature requested in #30.

Includes: CustomDie model + EF migration, CustomDiceEditor component, roll face/menu UI, and campaign/character service wiring.

Produced by the orchestrate dev agent for ticket ow3n-5.

Closes #30

Adds campaign-scoped custom dice for systems that use dice with their own
faces. A custom die behaves like a standard N-sided die: referenced in a
formula (e.g. "1dfate") it is translated to its numeric die and treated as a
number. When a die is rolled on its own, an overridden face's text or image is
shown instead of the number.

- CustomDie/DieFace model with formula translation + lone-die matching helpers
- custom_dice table (campaign FK) and RollResult.FaceText/FaceImage columns
- PlayerCharacterService.RollFor resolves custom dice and records the rolled
  face override
- CampaignService CRUD for custom dice (DM-authorised)
- CustomDiceEditor component + campaign page modal for managing dice/faces
- RollFace component renders image/text/number; used in roll menu, character
  sheet history, character cards and home
- RollMenu shows quick-insert buttons for the campaign's custom dice

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Custom die feature

1 participant