[messages] [Developers] How do you upgrade a saved game

Tim McCarron timothy.mccarron at sbcglobal.net
Tue Jul 27 17:05:07 MST 2010

You would run the saved game updater that is built in but it isn't 100%
reliable imo.  
Its been awhile but if I remember correctly you need a copy of the old
module plus its build file to create the updater against. Then while in the
editer again with the new module run the updater on the saved games

The only other way is to manually rebuild the saved game to be sure it is
done right, and I find easier :)

-----Original Message-----
From: messages-bounces at vassalengine.org
[mailto:messages-bounces at vassalengine.org] On Behalf Of fil512
Sent: Tuesday, July 27, 2010 6:59 PM
To: messages at vassalengine.org
Subject: [messages] [Developers] How do you upgrade a saved game

I'm fixing a bug in the TTA module.  It has prefab games with reduced
number of cards for 2 player and 3 player games.  These are vsav files. 
Problem is, when I run my upgraded version of the TTA module, as soon as
I select 2 player game, it loads the 2 player save file which does not
contain any of my fixes.  I could rebuild the 2 player and 3 player
start games, but it would be a lot of work.  Is there a way to upgrade a
save file to a newer version?

P.S.  I tried creating and running an updater.jar, but when I ran it
alone nothing happened.  When I ran it as java -jar updater.jar I got
the following error.  But I figured it was a longshot to expect
updater.jar to look inside the module for saved games and update all of

Exception in thread "main" java.lang.NoClassDefFoundError:
        at VASSAL.tools.ZipUpdater.write(ZipUpdater.java:150)
        at VASSAL.tools.ZipUpdater.main(ZipUpdater.java:386)
Caused by: java.lang.ClassNotFoundException: VASSAL.tools.io.IOUtils
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 2 more

Read this topic online here:
messages mailing list
messages at vassalengine.org

More information about the messages mailing list