Images No Longer Found, Module Disappeared, Editor Still Open

Hi all! Latest Mac OSX user here. Well I’ve messed something up I think. I’ve had the Module Editor open for a few days editing an existing module (Outdoor Survival) to incorporate a variant I’ve designed. Stupidly (because I think this is where the problem started) I created a “Vassal Modules” folder in my “Vassal” folder which is in my Documents folder. I then moved all the Modules, including the module I have open for working on, into the Vassal Modules folder. Everything was fine until then. Now the Module won’t save from the still-open Editor, and I can’t see the module listed anymore in my list of modules in the Vassal Modules folder. I get the following error message when I try to save:

VASSAL was unable to write the file ‘OutdoorSurvivalYangtzeVariant.vmod’.

And here are the details:

java.io.FileNotFoundException: images/d_g.png not in archive
at VASSAL.tools.io.ZipArchive.getInputStream(ZipArchive.java:245)
at VASSAL.tools.io.ZipArchive.(ZipArchive.java:179)
at VASSAL.tools.io.ZipArchive.(ZipArchive.java:150)
at VASSAL.tools.ArchiveWriter.saveAsButVerify(ArchiveWriter.java:327)
at VASSAL.build.GameModule.save(GameModule.java:2122)
at VASSAL.build.GameModule.saveAs(GameModule.java:2088)
at VASSAL.launch.ModuleEditorWindow.lambda$saveAs$1(ModuleEditorWindow.java:105)
at VASSAL.launch.EditorWindow.saver(EditorWindow.java:480)
at VASSAL.launch.ModuleEditorWindow.saveAs(ModuleEditorWindow.java:103)
at VASSAL.launch.EditorWindow$3.actionPerformed(EditorWindow.java:228)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:374)
at java.desktop/com.apple.laf.ScreenMenuItem.actionPerformed(ScreenMenuItem.java:129)
at java.desktop/java.awt.MenuItem.processActionEvent(MenuItem.java:692)
at java.desktop/java.awt.MenuItem.processEvent(MenuItem.java:651)
at java.desktop/java.awt.MenuComponent.dispatchEventImpl(MenuComponent.java:378)
at java.desktop/java.awt.MenuComponent.dispatchEvent(MenuComponent.java:367)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

To be clear, you moved the module you had open in the editor?

If you move modules on disk, you won’t see them in the Module Manager anymore—the MM can’t know to where you’ve moved the modules.

1 Like

Have you also tried File → Save As…?

1 Like

Yes I moved the module I had, and still have, open in the editor. I can’t see the module in the MM, but worse, nor can I see it on the disc now! :frowning:

Yes I tried “Save As” - same error message.

Do not do that. You should not move a module file while you are editing it. There is no reasonable expectation that doing so will work.

You might be able to recover from this by moving the module file back to where it had been if you still have the editor open, but no guarantees.

2 Likes

Yes it’s not something I would normally do, regardless of the app. I think I’d forgotten/didn’t check the editor was open. The module file seems to have disappeared completely from the hard drive. It’s not listed in my modules folder anymore, and it’s not in the Bin, or anywhere else after conducting a search.

I guess I’ll just have to start from scratch? :frowning:

You might find something in the system temporary directory. On MacOS, you can find the path to that from the terminal:

echo $TMPDIR

Look in that directory for a directory starting with vassal_. If that still exists, there might be something in inside that directory which you can recover. Have a look inside any ZIP archives you find there—they might be your module.