Patchouli

Patchouli

168M Downloads

[Suggestion] Issues of unified books data storage

Aizistral opened this issue ยท 0 comments

commented

So, apparently, Patchouli stores client-sided data for all it's books in patchouli_data.json file in the root of minecraft directory. Thereby, all worlds visited on that client have shared data storage, instead of that storage being made per-world.

While this solution might have some obvious advantages, it doesn't come without downsides. Among the most evident examples: list of chapters that are marked as read is shared between multiple worlds. Isn't too bad on it's own, but it might be confusing for both users and developers that do not expect such behaviour, and, furthermore, have no tools for altering it even if they desire. But this is much more important for entries that are locked behind advancements - when they are unlocked and viewed once in any world, they are marked as read among all worlds. When those later get unlocked in another world, Patchouli provides generic toast for the fact that new entries are available (...probably), but since they are already marked as read it might be difficult for user to understand what exactly and where got unlocked.

I can see why many people would want it to work exactly as it does now, since for most books checking out an entry once is well enough to never ever come back to it again, and that often applies to the entirety of the book. But it would be pretty cool if there were some ways for both users and book creators to choose whether Patchouli stores book data once for everything or for every world seperately, in second case - through option in book.json that will define default behaviour, and in first - through client config option that would allow to override default behaviours if needed.