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

Add data transform notion for persistence #5

Open
grofit opened this issue Oct 17, 2021 · 1 comment
Open

Add data transform notion for persistence #5

grofit opened this issue Oct 17, 2021 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@grofit
Copy link
Member

grofit commented Oct 17, 2021

Currently we have focused on the game data that is required to create and run a game, such as item templates, class templates etc.

However not much formality or guidance has been given on how to store the runtime aspect of data.

For example currently an item at runtime contains information on the items template, how many instances it has, any modifications etc. When we go to persist that item really all we need to know is what item template Id it is, and how many of them we have, with any custom meta data stored with it, this reduces data storage size and also keeps a separation of dynamic runtime data and static game data.

For now it's assumed we can add an interface for data transforming from one type to another which can probably live within the existing data project and then add storage classes and helpers to relevant libs like genres etc.

The overall idea would be that at point of loading or saving the game data the user can just pass the data through all the transformers (or maybe create a pipeline using persistity etc).

@grofit grofit added the enhancement New feature or request label Oct 17, 2021
@grofit grofit self-assigned this Oct 17, 2021
@grofit
Copy link
Member Author

grofit commented Jan 24, 2023

A lot of this has been done within the Genres lib under the Persistence namespace, however it could still be made simpler still going forward.

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

No branches or pull requests

1 participant