Spawning multiple instances of a deck

Hey,

I’ve been editing the X-Wing module since August 2013 and have now arrived at an obstacle. The scenario I’m looking at is for 4 players that may have various types of fleet. Each player has his or her own damage deck. In each player’s fleet, most ships are not associated with a special damage deck, but some now are (due to the game evolving with this new mode of play). Not everyone will field these special ships but if they decide to do it, there might be multiple instances of these ship (worst case scenario: 4 copies of a ship that has a special deck).

As of right now, the damage decks are accessed by all players in the main window toolbar- there is 1 copy for each type of damage deck. This isn’t enough. For example, 2 players might need their own copy of the same particular deck. They can’t share the unique instance of the deck that is present as of right now.

I need to “spawn” new instances of decks, hopefully controlled by the player who initiated the spawn. I have no idea where to start looking (though I will resume my scanning of the message history of this sub-forum after clicking on Submit for this post).

homebrew plan for a solution so far:

Create empty, named decks in each player hand window (knowing I need at most 5 of them. #1 will always be used, #2-5 might be used)

After clicking a button in the main window toolbar, I’d want to:

copy every card from a “reference” deck (possibly inaccessible, untamperable?) and send all copies using a global key command and “return to deck” to the player window, to the predetermined spot. I’d want 2 such decks transfered in one go, to 2 specific deck areas in the player having done the button click.

The reference deck isn’t depleted, yet has transfered every copy of the cards it has in the same ratios that they exist in the deck, ie, despite drawing being random, despite the reference deck not depleting itself, it would still carry out the deck cloning in such a way as the destination deck is an exact copy, yet randomly shuffled.

The reference deck can be in the game palette, and the game palette can be inaccessible. Rather than cloning cards in one reference deck it might actually be easier to create decks in the game palette on a one-for-one basis with all the destination options. Inelegant, but easier to set up, perhaps.

The post-transfer shuffle is easy enough with a global hotkey at the end of the trait queue.

Are we forced to hide the whole game palette or can we hide only a few elements? It’s currently massively used for everything players need to build up their fleets.

All or nothing, but you can have multiple game piece palettes.

I think I’m missing something because Game Palettes can’t have decks in them, not the kind I’ve seen used anyway. Here is the list of choices I’m seeing:

You are absolutely right. My apologies for assuming something was possible when it isn’t. Up until now I’ve only used pieces from a hidden palette with the Replace with Other trait to automate setup.

You could do the same thing with a private window or other map though.

You could also work out something pretty complex such as:
Make an at start stack of pieces that are unselectable and unmovable (does not stack trait) for each type of damage deck and destination deck combination - that’s a lot of pieces.
When you click the button or right-click menu option specific to both the destination deck and the damage deck you want in it, the following commands trigger:
1: A global key command causes all pieces in a specific at start stack to trigger their Replace with Other traits, which gets the exact configuration and number of pieces you want from the palette to the at start stack.
2: The next global key command in the list causes all of the pieces in the at start stack to Return to Deck.
3: A global hotkey shuffles the deck.

Should work, though I’m half-convinced there must be a better way.

I found a solution after a month of trying, found here:
https://forum.vassalengine.org/t/trying-to-clone-instances-of-a-deck-with-clone-send-to-loc/7066/4