thombruce / verse

🚀 A universe in progress
Other
8 stars 0 forks source link

Save/Load from File #70

Closed thombruce closed 10 months ago

thombruce commented 10 months ago

Related to #34 and #18 and should probably precede both.

I want a way to eventually load certain configurations from files. Not just settings, not just save games, but also character and ship builds, known star and planetary systems, story scripts and dialogues, i18n translations, etc.

To do this, I'm looking at the bevy_common_assets crate: https://github.com/NiklasEi/bevy_common_assets

This probably starts with ship configurations, but will be easily extended to planetary configurations and other features.

Because these will then be loaded from the asset server, it should also then be quicker to iterate after making changes.

We might also consider moving many of our constants and world variables to such files for ease of changing them and seeing results quickly.


Note that I have attempted to setup bevy_common_assets previously and found myself facing a struggle to get it working. I hope that this was inexperience with Bevy and Rust that I am now better capable of overcoming.


I also want to use such files to write and load the credits for the game. Unfortunately CSV is not listed as a supported format (this is the format exportable from Ko-fi, Patreon and GitHub Sponsors), so... I wonder if it's extensible at all. I might eventually want to load supporters from a CSV file (possibly several). If not... a CSV crate does exist for Rust. Consider looking at how bevy_easy_localize utilises it for direction on implementing something similar: https://github.com/0crispy/bevy_easy_localize/