Summary
Allow users to select adversaries they have added to the app (homebrew/local content) and export them as a .dhpack file for sharing with other Encounter users.
Motivation
The app already supports importing .dhpack files. Closing the loop with an export flow makes it easy for GMs to build a pack inside the app and share it — without needing a text editor or knowledge of the JSON schema.
Work to scope (UX TBD)
The exact UX needs a dedicated design session, but the high-level flow is:
- User selects one or more homebrew adversaries (and optionally environments) from the Compendium browser or a dedicated export screen
- App serializes the selection into the pack-wrapper JSON format (
{ "adversaries": [...], "environments": [...] })
- Standard system share sheet presents the
.dhpack file — user can AirDrop, save to Files, send via Messages, etc.
Open UX questions
Related
Summary
Allow users to select adversaries they have added to the app (homebrew/local content) and export them as a
.dhpackfile for sharing with other Encounter users.Motivation
The app already supports importing
.dhpackfiles. Closing the loop with an export flow makes it easy for GMs to build a pack inside the app and share it — without needing a text editor or knowledge of the JSON schema.Work to scope (UX TBD)
The exact UX needs a dedicated design session, but the high-level flow is:
{ "adversaries": [...], "environments": [...] }).dhpackfile — user can AirDrop, save to Files, send via Messages, etc.Open UX questions
sourcefield auto-populated with the user's name or a pack name they provide?Related
.dhpackformat documentation) —AuthoringAPack.mdwill mention in-app export as one authoring pathschemas/dhpack.schema.jsonfor the format the export must conform tovalidate-dhpackCLI