- Bad Data in Module: Image not found null

Is there a way to pinpoint which “Image” is not found in Bad Data error? I ran the Show Error Log and unfortunately all the code is lost on this poor gamer.
As a hint, it occurs as soon as I try to reveal a card in a Deck. At the risk of taking up space here is the error log:

12 Dec 2009 06:10:17.356 1 Image not found: null
12 Dec 2009 06:10:17.356 1 VASSAL.tools.image.ImageNotFoundException
at VASSAL.tools.imageop.SourceOpBitmapImpl.getImageSize(SourceOpBitmapImpl.java:115)
at VASSAL.tools.imageop.SourceOpBitmapImpl.fixSize(SourceOpBitmapImpl.java:101)
at VASSAL.tools.imageop.AbstractOpImpl.getSize(AbstractOpImpl.java:128)
at VASSAL.tools.imageop.ScaledImagePainter.getImageSize(ScaledImagePainter.java:41)
at VASSAL.counters.BasicPiece.boundingBox(BasicPiece.java:387)
at VASSAL.counters.BasicPiece.getShape(BasicPiece.java:393)
at VASSAL.counters.Obscurable.getShape(Obscurable.java:191)
at VASSAL.counters.ReturnToDeck.getShape(ReturnToDeck.java:145)
at VASSAL.build.module.map.StackMetrics.getContents(StackMetrics.java:445)
at VASSAL.build.module.map.StackMetrics.draw(StackMetrics.java:323)
at VASSAL.build.module.Map.drawPiecesInRegion(Map.java:1467)
at VASSAL.build.module.Map.paintRegion(Map.java:1435)
at VASSAL.build.module.Map.paintRegion(Map.java:1428)
at VASSAL.build.module.Map$View.paint(Map.java:2526)
at javax.swing.JComponent._paintImmediately(JComponent.java:4890)
at javax.swing.JComponent.paintImmediately(JComponent.java:4676)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:477)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:114)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Caused by: java.io.FileNotFoundException: ‘images/null’ not found in /Users/JYTLighting/Documents/Consim/Vassal/06 VI - La Bataille de Quatre-Bras/QB.zip
at VASSAL.tools.DataArchive.getImageInputStream(DataArchive.java:167)
at VASSAL.tools.imageop.SourceOpBitmapImpl.getImageSize(SourceOpBitmapImpl.java:112)
… 24 more

Thank you, JY

Just a guess here (I’m not that familiar with the internal workings of Vassal) but…

If this is occurring when you draw a card, the first thing that comes to mind is that you have the card stack set to draw a card face down but you do not have a mask for it. …a mask being an image for the back of the card.

Could it be something like that? If not, the missing image may be found in the part of the log you omitted in your post.

Hello Dr.
Yes it does occur as soon as I draw the first card, but the error does not repeat upon subsequent drawings just that very first one. My gut feeling is that it might have to do with the Deck itself and not necessarily the cards which do have Masks for the reverse of the cards.
The “… 24 more” is a bit of a mystery as its a direct quote from the error log with apparently no opportunity to expand and see what the 24 more actually indicates.



I would like to assist you, but you make it very difficult.

  1. When posting an errorlog, please include the first 10 lines of the log, it contains important imformation that assists in solving your problem.

  2. I don’t know your module from a bar of soap, neither does any of the people who want to help you. Which Deck are you talking about? On what map? I have spent 10 minutes looking at your module and cannot work out how to reproduce your problem

So, Please help us to help you

Please include much more detailed information on how to reproduce the problem. Preferably include a log file that demonstrates the problem

ALWAYS include the first 10 lines of the error log.


Hi Brent,
Sorry for the incomplete info. I was hoping the error would be self evident in the Error log file.

The module is a home-made version of La Bataille de Quatre-Bras. The Deck I speak of is used instead of the die roller and is composed of:

  • [Map Window] Called “TN - d10 Deck”
    • [Board] “d10 Deck”
      • [Rectangular Grid]
        with two decks
  • [Deck] “French d10”
  • [Deck] “Allied d10”

Each deck consists of 100 cards and has a predefined ‘face down’ location on the deck map. The error occurs as soon as I move one card (from either deck) from its face-down position to its face up position.

Each card has a Basic Piece, a Mask and a Return to Deck.

Here is the first block of code from the error log:

12 Dec 2009 21:33:11.252 0 – Starting
12 Dec 2009 21:33:11.254 0 – OS Mac OS X
12 Dec 2009 21:33:11.255 0 – Java version 1.5.0_20
12 Dec 2009 21:33:11.255 0 – VASSAL version 3.1.10
12 Dec 2009 21:33:13.038 0 – Manager
12 Dec 2009 21:33:17.947 0 Module /Users/JYTLighting/Documents/Consim/Vassal/06 VI - La Bataille de Quatre-Bras/QB.zip not found - Removed.
12 Dec 2009 21:33:32.559 0 – Loading module file /Users/JYTLighting/Documents/Consim/Vassal/06 VI - La Bataille de Quatre-Bras/Archive.zip
12 Dec 2009 21:33:32.560 0 – Loading module VI - La Bataille de Quatre-Bras
12 Dec 2009 21:33:32.562 0 /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/bin/java -Xms256M -Xmx512M -DVASSAL.id=1 -cp /Applications/VASSAL-3.1.10.app/Contents/Resources/Java/Vengine.jar -Xdock:name=VI - La Bataille de Quatre-Bras -Xdock:icon=/Applications/VASSAL-3.1.10.app/Contents/Resources/VASSAL.icns VASSAL.launch.Editor
12 Dec 2009 21:33:42.053 1 – VI - La Bataille de Quatre-Bras version Paris 2010
12 Dec 2009 21:33:42.053 1

It’s perhaps not a big deal, as I can’t seem to detect any mis-functioning in the module just a bit annoying that something is amiss.


Hi Jean,

That is sometimes, but often not the case.

In this case, the problem is caused by an issue in your module that is being reported badly with insufficient information for you to pinpoint the problem.

It would appear to be an issue in the card being revealed.

Please post a link to your version of the module so I can have a closer look.


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

Post generated using Mail2Forum (mail2forum.com)

I believe the issue is that you have a Game Piece Image Layout defined that has an Image specified in each Individual Game Piece Image. In some of your Individual Game Piece Images (at least one), you haven’t specified an image (therefore the value is null).

In an older version of VASSAL, I believe this wasn’t an issue, but in the current version of VASSAL, you must provide an image or you’ll see a small black square with an X in it. Now when I build Individual Game Piece Images, I have to use a small transparent image that I call “Blank” to avoid this issue.

Of course, I could be completely wrong…

Thanks for everyone’s help. I think I’m going to scrap the idea anyhow. Basically I was trying to do cards instead of dice - prettier graphics and perfectly even luck curve, but even without the error it seems a bit unwieldy.

Again thank you for your help. I sure learned much as relates to error log files and such.


Actually, what you are trying to do seems pretty simple …keyword being “seems” pretty simple.

If you’d like some help, drop me a note. Although I’m doing a lot of graphics work on my games, I’m waiting for the Vassal 3.2 engine before I get fully immersed in my projects so I’ve got some free time, vassalwise.