Phoenox / dorc

GNU General Public License v3.0
1 stars 1 forks source link

Character: Export/Import Option #11

Open gadse opened 3 years ago

gadse commented 3 years ago

As a player or GM, I'd like to "pack up" a character and send it over to somebody else to import it, to facilitate the exchange of ideas.

As a developer, I see the following options:

  1. "Export" Button -> display JSON -> "Import Button" -> "Import" Dialog opens -> copy JSON into dialog -> Click "Accept".
  2. The current character URL could be enriched with parameters representing the state of the character. Saving a character would be a simple bookmark action in the browser, and sharing a character would be as simple as copying the url. This could be combined with the current browser storage implementation by treating characters not present in the browser storage as non-permanent (maybe offering a save button).
  3. The classic user account backend storage stuff with share functionality.
gadse commented 3 years ago

My analysis:

  1. PRO: Straightforward implementation. CON: Requires a significant amount of steps by the user.
  2. PRO: Requires fewer steps by the user. CON: Implementation takes more effort.
  3. PRO: Kinda familiar to users I guess? CON: Requires a whole heckin' backend.
Phoenox commented 2 years ago

How about: For exporting, we have an "Export..." button on the character sheet (and maybe also on the overview). Clicking it opens a "Save file..." dialog where the user can decide where the JSON file gets stored. He may then send the JSON file to someone else / use it as a backup / ... For importing, we have an "Import..." button on the character overview page. Clicking it opens an "Open file..." dialog where the user can select the previously imported file. If a character with the same ID already exists, the user gets a corresponding message and may decide whether to overwrite the existing character, cancel the import, or import the character as a new character (with a new ID generated).

gadse commented 2 years ago

I like your proposal @Phoenox :)