I know this question has been brought up before but I’m again charging up this hill. Using 3.6.4 I’ve been having good luck updating vsav files for changed counter Traits and Prototypes, however, I’m having trouble when I add a new counter, the update doesn’t put the new counter in.
The refresh algorithm doesn’t do anything about new counters – it does not process At-Start Stacks at all.
To add a new counter to a predefined setup:
(1) Load in the setup
(2) Run “Refresh Counters” if you need to
(3) Create the new counters (e.g. drag them on from a piece palette, or something like that)
(4) Save the game (make sure you are set to Observer before you do)
(5) Use that saved game to replace your old predefined setup
If you have a lot of Pre-Defined Setups to update, you could use a Startup GKC with an existing piece as a springboard to place the new markers. You could make this a permanent feature, saving you the update effort for the cost of a little startup overhead.
Remember, the At Start Stack is a location placeholder in the editor, nothing more. It has no presence in the game itself.
A combination of Place Marker / Send to Location traits needs to replicate for a Predefined setup what the At Start Stack is doing for a new game.
I’m thinking Flying Colors might help as an example, but I might need to guide you through it. In this module, a Startup GKC places and initialises a set of markers on the Turn Track (press F1 in an open game to find this track). Startup does a bit more than this; e.g. because it was pre-v3.6 it has to detect whether the setup has already run in order not to run it again.
Also, if you only have one unit to place; how many PreDefined Setups are we talking about ? If not many, then @Cattlesquat’s suggestion is the more practical one.
Flying Colors is very nice, I wish my VASSAL-fu was that good
Looking at it, would I need a Startup GKC for each new counter I add? (it isn’t that many, wouldn’t be too hard) I assume the new counters would need a Property for it to look for? Am I close?
Just one start up SGKC. You also need a “control piece”, something that is already in your module on every predefined scenario. Typical examples might be a turn marker or a scenario name piece,
Your SGKC must send a command to the control piece. You put a Place Marker trait on the control piece to place the new piece; Place Marker has a field that let’s you specify a command to initialise the placed piece. Use that feature to do a Send to Location on each piece as it is placed, to put your piece where you want it to appear.
Thanks for the help but I’m just not grokking this.
Most of the counters in the game are defined in At-Start Stacks, all the combat units for example since the counter mix is limited. There are a bunch of information markers used that are VASSAL Markers, so I thought to use one of those as the ‘control piece’ I cleared the Menu Command and Key Command fields, for Marker definition I hit Select and picked the new unit I want to be loaded in the games. ‘For Key Command to apply after placement’ I want to use Send To Location to put the unit where I want it, but I how do I define that? Where does that Trait go, the Control Piece or the Target piece?
Wherever the marker circled in orange is defined, it needs a Send to Location trait added to it that will set the destination for the send–could be an XY location somewhere, a named zone, etc. Whatever type of keystroke you assign to this StL (named keystroke like SetStartPosition, or conventional keystroke like Ctrl+P) must also be placed in the purple circled area (a named keystroke would go in the lefthand box, conventional keystroke would go in the righthand box).
Hi, I’m back. Trying to add three new pieces using this method. I’m not sure how to setup the SGKC. How do I make it look at my Control Piece? I have three units to add, they all have Send to Location traits already specified. I’ve added some shots for clarity. Thanks so much in advance!
Your SGKC is not currently configured to send anything (no Global Key Command is set). I would assume you want to set whatever keystroke you’ve bound to the Place Marker traits on the Year piece (2nd screenshot).
Whatever keystroke you set will be sent to all pieces in the module unless you tighten the scope by setting a Fast Match or a matching expression in the boxes below (e.g., {BasicName == "Year"} or whatever you feel like that would accurately identify the Year piece).
Once these pieces are placed, it looks like you want to send them somewhere, which you can do with the bottom part of the Place Marker trait to invoke the keystroke you assigned to the Send to Location. For instance, in the case of the piece shown in the 3rd screenshot, you’d set Alt+U here.