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

Implements a unix-based utility to extract and autoformat contents of game saves #1048

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

zigmar
Copy link
Contributor

@zigmar zigmar commented Jun 16, 2021

Useful for debugging saved gamestate issues.

… save games

Useful for debugging saved gamestate issues.
@JonnyH
Copy link
Collaborator

JonnyH commented Jun 21, 2021

The plan was that the tools/serialization_tool would do stuff like this - pack/unpack saves, pretty-print the result, may even lint later (e.g. checks like no un-read nodes or things that may show duplication/typos).

As it uses the game core serialization logic it 'should' work with any save archive (directory/zip/whatever wrappers and internal serialization format we end up actually using if the current xml format is bottlenecking us)

I think I'm the only one who ever used it though, so it could probably do with some love to round it out and make it useful :) I know it currently has an issue with serializing things that contain resource links - if they aren't available at serialization in time (eg not setting up the data/cd directories for the serialization_tool itself) it'll replace them with blank nodes. Which is less than idea.

@zigmar
Copy link
Contributor Author

zigmar commented Jun 21, 2021

Ah nice. At the time I was debugging an issue I could not get SerializationTool to do what I needed, but revisited now and after some experimentation and reading the code, managed to do exactly what the script in PR does. I guess it makes the script redundant, especially given that SerializationTool is portable while the script isn't. Though I could see one instant where it might be useful: in case gamestate fails to read game save (e.g. due to version incompatibility) but this is probably rare enough so it could be done manually.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants