Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Monty/character export #1426

Merged
merged 5 commits into from
Feb 11, 2024
Merged

Conversation

Montessquio
Copy link
Contributor

This PR leverages the merged in rust-g#1 to provide a button on the character setup screen that allows players to export their entire player save, including user preferences and all character slots, to a JSON file which they can then download.

Included in this PR are the compiled rust-g binaries for both platforms from the above linked repo, as well as the new rust_g_yw.dm file it creates so as not to mess with upstream's custom handwritten rust_g.dm.

This implementation creates no temp files on the host disk, it's all handled by a dynamic javascript blob, so there shouldn't be any issues with filesystem security on that end.

Incidentally it also led to the creation of a breakout code/modules/client/preferences_yw.dm to house this change and future additions to the core preferences file.

Player confirmation dialog:
image

Internet Explorer download windows:
image

The backup window that allows people to copy-paste their save in case the auto download fails:
image

@izac112 izac112 added the enhancement New feature or request label Feb 11, 2024
@izac112 izac112 merged commit 8871333 into Yawn-Wider:master Feb 11, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants