Revealing Partial Information in Player Hands

Hey folks,

I’m new to Vassal, so I apologize if this has been covered somewhere. Trying to make a couple of modules for me and my friends to use to play our normal games during the COVID pandemic.

Several of my (typically) card based games rely on your opponents being able to see the backside of the cards while they are in your hand. e.g. in Innovation, I will hold cards in my hand and I know everything about the card, but my opponents should be able to see what type of card it is (i.e. which deck it came from). A similar sort of structure is used in Hanabi, though in that, the player may only see the backs of his own cards, while all the other players may see the fronts (This may be a different beast, but I’m excited to experiment)

Does anyone know of a way to do this? Make the front side of cards in P1’s hand visible to P1, but make the backside of cards visible to P2-4. I would prefer to keep it within the “Player Hand” structure, but if I need to just create map windows, I guess that would work.

Any help would be greatly appreciated, even if it’s just a link to other forum posts.



For each card, you’ll want a “Mask” trait which will hide the card from other players when the card is flipped down (you can put a simple keystroke to let you hide and unhide the cards, and/or you can activate it from other triggers)

Within the mask trait, change the “Display Style” to “Use Image”, which will allow you to specify the image for the back of the card.

For Innovation you could have a “Prototype” for each Age of card (e.g. in Global Prototypes, you could have “Card Age 1”, “Card Age 2”, etc) and that would contain the Mask trait and have the right image (so you don’t have to manually add the image to every individual card). The prototype could also contain a “Return to Deck” trait which would return the card to the bottom of the proper age’s deck. So then to each card from age 1 you’d add a “Prototype” trait set to “Card Age 1”, and that gives the cards all the traits common to Age 1 cards.