Header in Saved Game Files

Something that I think would be very handy is for Save games/Log files to have a header that can be read without having a module loaded. Stuff like module name and revision, date/time, player comments.

  • Display the info in the module manager
  • Prevent loading/display of files that are not real saved games

Thoughts?
Brent.

Brent,

Haven’t heard from you for a week. Just checking to see that you’ve gotten my recent emails on rest of scenario checks.

Jim

A step further along, when you hook up all this metadata and standardize
file formats could this eventually allow the ability to launch engine/module
directly from the save/log file? That would be a neat bonus

Post generated using Mail2Forum (mail2forum.com)

Yes, that should follow. I have added a feature to the 1.0 beta Module Manager that allows a folder of save games to be ‘added’ to a module. Double clicking on a save game loads the module with the save game. It’s only a small step extra to do that on double clicking a save game file. The key thing we need is to institute the standardized file suffixes for vassal files.

Brent.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Thus spake “Brent Easton”:

I think that the saved game/log format should move toward (possibly
compressed) XML, even if for right now, almost all of the content is
a binary blob. You could do this:

... metadata ... <--- defined to contain CDATA ... the contents of a 3.1 or earlier log file ...

Then, eventually we can begin replacing the binary data in the body
with more granular human-readable stuff (or possibly public-key encrypted
views like I described earlier—I’m becoming more and more convinced
that this needs doing).


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Good idea. That should be pretty easy to do.

It will make it absolutely to load a 3.1 log file on an earlier version of Vassal, which is not necessarily a bad thing. You could load log files on earlier versions before and it would generally work (with warning) as long as you did not use new features.

Would this be a problem?

It would be pretty easy to convert a log to the old format if needed.

Yes, sounds good.

Brent.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Thus spake “Brent Easton”:

I don’t see why. Forward compatibility is generally not something that
is possible or expected.


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

I’ve just checked the code and the save game file is written as an entry in a ZIP archive name ‘savedgame’. In the short term, it would be even simpler to just add a second ZIP entry name ‘info’ that contains the metadata XML and leave the saved game untouched for now. This would also be neater for the Module Manager which isn’t actually interested in the log file as such.

Brent.

Joel,

I’m not big on XML, but learning fast. I’m guessing I will be using the DOM API in the xml-apis library? That’s what I see doing other XML handling in Vassal.

Also, it appears to me we do not use the xerces, xalan or xml-apis-ext libraries any more? That’s 2.7Mb that could be removed from the download.

Brent.

Thus spake “Brent Easton”:

I would have thought we’d use the org.w3c XML packages, since those
are what we’re already using for reading buildFiles.

xerces, xalan, xml-apis, and xml-apis-ext are all used by Batik. I think
that now all of the Batik jars are necessary, but I haven’t had time to
investigate which those are yet.

It’s sunny, so I’m going for a run. I’ll try to take care of all of
the outstanding merges when I get back.


J.


Messages mailing list
Messages@forums.vassalengine.org
forums.vassalengine.org/mailman/ … engine.org

Post generated using Mail2Forum (mail2forum.com)

Catching up on the threads after being away-from-internet last week…

I’d vote for this option.

rk

Post generated using Mail2Forum (mail2forum.com)