Image definition : Game Piece Layouts vs Basic Piece Image


I want advice on best practice for setting images in a module.

In an existing module (terraforming mars) I try to improve (and translate), I wanted to define the cards as :
→ Game Piece Image Definition
→ Game Piece Layouts
—> Game Piece Layout
----> Game Piece Image

In which I set an image (Specified in individual images)from a new .jpg

From the existing
→ Map Window
→ Deck
—> Card
(there are more than 200 cards defined here)
Each card is built from a Basic Piece, image defined from an already included .jpg

I set the image from the Card Basic Piece to point to my newly Game Piece Image definition (yes, I’d need to create the 200+ Game Piece Images there …)

So this works fine, and I get to add some text box and shapes to give a clearer text in the Game Piece Layout only visible when the card is face up (so the card does not have the same size on the board when it’s face up or down, but text is more visible).

Now, as I was wondering how I could remove existing images from the existing module, I saved the module, changed the extention to .zip, and had a look at the images folder.

The newly imported JPG images have the same size in the zip images folder than in my explorer where I created them, 55kb.
But each of my Game Piece Image has created a file, with no extension, which appears to be a PNG, 300kb

Can I avoid multiplying by 6 the size of the module ?
VASSAL decided to create a PNG file from my JPG when I didn’t give an extension in the module. Even if I decide to name my Game Piece Image with a .JPG extension, it’s created as a .PNG.

Can I avoid the PNG format ?

Should I rethink my strategy ?


I can only follow half of that, but my impression was that game piece images are meant to form a part of “standardized” counters. The idea is to define layout, colours and text aforehand and then combine them freely into a set of counters that use these building blocks repeatedly. I think the approach now used in the TM module is quite correct.

Ok, I abandoned the idea of a Game Piece Layout / Image.
That would have allowed me to add text in a shape outside of the card.
Instead I try to focus on the best way to propose an additional layer as a translated version of the game (created another topic in this forum).
Still, it’s a pity that the Game Piece Image is defined as a 300 KB PNG image. It’s created by the editor. I won’t modify the pieces in the uncompressed version of the module, as it’s more than 200 images to modify :frowning:.

Thanks for your answer.

300 kB? What kind of huge counters are these? Or do they have photo-like images - in that case JPEG would offer far better compression to save disk storage sapce and bandwidth (in RAM it does not matter). Somehow all this seems to ask for a redesign of the graphics involved.

As said, I’m not using this for a counter, but for each of my 200 cards for which I want the basic piece image points not to a .jpg, but to a game piece image created with some shapes and images.
There the modules creates a new .png image … and it’s much heavier than my jpg. It’s like the conversion of the shapes and frames and text i include in the game piece image into a selectable image requires more storage than it should.
The module does not propose to create the image under a specific format. It’s created as a PNG. Nor with a specific compression level.
Maybe this is something that can be improved ??? But not from a user perspective.

You might find that what you’re trying to do is more efficient as SVG, both in terms of being able to modify the pieces and in terms of storage size. However, 58MB of PNGs is really not all that much.

The only thing that makes SVG a difficult choice is that it is not well documented. You need to know that it is translated to the screen at 72 dpi (at least that was the experimental result when I did the Advanced Civ module). To get the relative sizes of things correct in a mixed SVG/Pixel-based environment you need to know that.
I also noticed some artefacts created by VASSAL where board sections meet.