Text Labels of gamepiece disappear


I’ve got a deck with a “dummy” piece to add two text labels underneath the piece, one plain text with the name and a second to count the number of pieces in the deck. (I’ve tried the dummy piece without an image, a transparent image and a black & white image of the same piece that will be put in the deck). Also a ‘does not stack’ wtih twice ‘never’ filled in. Before I trigger a ‘send entire deck to another deck’ from another deck to get pieces into this deck the labels are shown as I want them. But as soon as other pieces are put into the deck, the labels are invisible.
If I remove ‘the does not stack’, drag the dummy piece someplace else in the map and then trigger the ‘send entire deck’ the count goes up, nicely placed underneath the dummy piece as wanted.
I’ve also tried using game piece layers in the map, giving the dummy piece a different layer then the added gamepieces to no avail.

What am I missing so I don’t have to use an at-start-stack underneath my deck to count and name the pieces in said deck?


Not sure I understand… are you putting your dummy piece in the deck itself? Just to display some text labels under the deck? If so, it does not surprise me you are having all sorts of problems, as the dummy piece becomes just another “card” in the deck (potentially reshuffling and all)… I would have thought a separate at-start-stack below the deck with the never-never does not stack trait would have been the logical and straightforward design solution for this :slight_smile:

Idd, the seperate at-start-stack does the job.
But because I’ve got lots of decks and more to come I wanted to ease rearranging those deck afterwards more easy by removing those at-start-stacks and try to get the name of the deck and number of pieces attached to the deck itself.
In the end if nothing comes up I’ll stick to the at-start-stacks and rearrange those too.

That’s not possible. Decks are designed to hide the pieces that are in them, so only the top piece is visible, and usually turned face down. All other pieces are not drawn at all, so you can’t have labels sticking out lower down the deck.

So I did solve it, sort of :slight_smile:

The receiving deck must be set to always reshuffle. I put a dummy piece into the sending deck at the top of the list with my 2 textlabels (one for the name of the deck, another to count pieces into the deck minus the dummy pieces) the normal pieces go beneath this dummy file. The dummy file gets the same (coloured) image as the normal pieces and a does not stack normally/never. Apparently vassal sends the gamepieces from the bottom first to another deck, so my dummy goes as last in the deck and shows on top :slight_smile: Because it’s not movable but selectable I can drag the pieces underneath out of the stack. As a bonus I can still use a dummy only for the black & white image in the receiving deck and the error from this post https://forum.vassalengine.org/t/calculated-property-gives-error-but-works/5186/1 only shows up in the editor, not during gameplay.

Stil got 2 side effects: The least important is that sometimes, because the deck must be set to always reshuffle the dummy is given to the player to be dragged out and it gets ‘worse’ with less pieces in the deck to shuffle, but retrying to drag a piece out gives eventually all the normal pieces to the player.

The second is when a piece is dragged back into the deck, that last piece is shown on top of the deck and gone are my textlabels. So a solution might be: give the dummy piece a marker=dummy and whenever the deck receives a not-dummy piece by drag&drop, send the dummy offboard to a deck and back in, but this implementation goes way over my head. If somenone can tell me if this is posslible and how, please do tell

Sounds like adding a text label to decks themselves would be a nice feature request.
Adding one now.

showing all the available decks when you reposition a stack (something like when you define regions) would be nice too (now you only see the stack to adjust without reference to the other stacks), but if all the above works I cut my workload in half already so that will do just fine.

I’ve got a one click solution, but that’s not yet how I want it:

The dummy piece gets a send to location to an offboard deck, and you can put there also an ‘undo’/send back command. Then 2 global key commands on the window with these keyboard commands from the send to location, both combined in a multi-action button. If the player clicks the button, the dummy piece shows again on top of the deck.

Now, can I get something like this to work when a deck receives a piece during gameplay? So it goes automatically?

I have a no click solution - Don’t put the pieces with the labels in the Decks :smiley:

There comes a point when the amount of work required to create the solution you want so far outweighs the less elegant but completely practical solution that you have to ask is it worth it? On top of the extra design and debugging work, you are setting yourself up for a lifelong maintenance nightmare if changes are made and it stops working somewhere down the track.

Look, I don’t what to put you off, you may well work it out, but as a Vassal Dev and multiple module designer, I personally would strongly advise against going down this path.

The KISS principle is gospel in vassal module design.

That is a good idea, I have added an enhancement request -
Bug 4695 - Setup Stack and Deck Move Stack display window to show all Decks and stacks

It’s a short term solution that idd may kick me in the face in the long term.
I learned a lot on my little ‘quest’ but end it here and spend my time adding more gamepieces, by the time I’ll ever finish maybe enhancement requests 4678 & 4695 are implemented and solve it all.

Thanks for all the help so far