I need advice on designing games with loose stacking requirements. Many games have small 3d blocks that stack on another, larger, piece which can then be moved around. Imhotep is one of these games. Not only are small blocks loaded onto boats for transport, but the blocks are also stacked in an irregular fashion to create a pyramid on another part of the board.
The only way I can conceive of doing this without customer Java code is to use layers. But layer creation would be impractical due to the many different color combinations that would need to be represented.
Can anyone give me advice on solving such problems?
It’s pretty much impossible to get right in Vassal, AFAIK.
At the most basic level, you can assign the boats to a lower layer (not a piece layer, a map layer) and the blocks to a higher one. That way the blocks always stay on top of the boats. That doesn’t help when blocks in the same layer need to be stacked though, and moving the boat won’t move the blocks unless they are selected as a group.
I have had some limited success with a similar situation, in which I defined zones for every possible position of cards, and made the cards snap to those zones (map trigger > sendto $CurrentZone$), and tracked the position of those cards, and defined some global key commands that moved the cards, and some more triggers that check if a zone was just vacated by a card and if so, to trigger another global key command that moves tokens (if any) that were on the card “before” it moved.
The result is cards that can be moved with the tokens appearing to move simultaneously to the same destination, but it’s a lot of work and very limited in scope - it only works when you can define all the zones and there are a limited number of movement possibilities.
I have also had some success with semi-transparent graphics that represent a “shadow” as a layer added to a base image, so that multiple 2D pieces stacked onto the same coordinates can be distinguished from single pieces - this has the advantage of making it difficult to “lose” pieces in stacks, and can look quite nice (I certainly prefer it isometric graphics), but comes with the problem of “shadows” overlapping actual piece graphics.
Thank you for the feedback. You have confirmed my assessment.