Adding new properties to counters and Setup Sheets

Tell me I’m doing something wrong here. If I add properties to counters after I have created a scenario setup sheet, do I have to reload all those counters and create/save/reload a new .vsav module? I would have thought that “all” counters would inherit the latest properties settings. If not, this is a huge rework to make even the simplest of changes.

This doesn’t seem to be the case, any property added doesn’t show up in any counter that is part of the .vsav module.

To resolve this, I had to rebuild the entire OOB Setup sheet by placing all the counters again in order to have the new property stick. Then I had to save (.vsav) and reimport it back into the module.

Now… a great improvement for VASSAL would be for any change to the properties stick to any and all instances of the counters it is applied to. Having to rebuild the setup sheet is non-optimal and not efficient. If there is a backlog of new features, then this one should be considered to be added to the backlog.

Paul,

You could use prototypes for your pieces. Keep the prototype definitions in the main module. The actual piece should contain just a piece image and a call to the prototype. Then, if you need to change or add a function to a piece, you can edit that piece’s prototype in the main module and not have to worry about the piece in the .vsav file. The piece in the .vsav file will look to get its attributes from the updated prototype that is in the main module.

Brian

Thus spake PaulC via messages:

Now… a great improvement for VASSAL would be for any change to the
properties stick to any and all instances of the counters it is applied
to. Having to rebuild the setup sheet is non-optimal and not
efficient. If there is a backlog of new features, then this one
should be considered to be added to the backlog.

This is already planned for VASSAL 4.


J.

No you should not have to do this. The Tools → Refresh Counters menu option should update all counters in your game to use the latest definition in your module. You still have to save the game and copy it into your module.

The reason for this apparently strange behavior is to ensure that log file replays always replay the same, even if run back on a later version of the module.

No, Vassal 3.2 does not work like this. Prototypes are expanded when the counters are pulled from the menu into the game. The counters in the .vsav file do not reference the prototypes.

Thanks Brent, that certainly explains the behavior I was seeing. Didn’t realize how the Refresh Counters worked, that’s a good tip to remember. One reason that I’m running into problems is that I’m hard charging to VASSALize this module and I am running into some capabilities that may or may not be fully supported in the engine. I know exactly what I want to accomplish, just not how to do it within VASSAL. This new game is a double blind system with no referee, therefore a single map with all units on it hidden. I also want the OOB (counter sheet) to be visible only to the player playing that side. I’ve gotten the Player Hand to work, but because of the Stacking bug, it really isn’t usable because I need the counters stacked on it (not tiled). Is there any chance this bug can be moved up in priority? As far as I can tell it is the only mechanism to offer a hidden player setup sheet or a hidden player card hand.

Use a Private Window instead of a Player Hand. A Private Window works exactly like a Map Window, except that it is only accessible to the specified players, just like a Player Hand. Instead of using a map as an image, you can use an OOB layout sheet, or whatever you want, as the image. You can set up grids and zones and change snapping behaviour in different sections or the layout. Very useful.

I tried this but I didn’t see how it could be tied to a menu button. When I whomped this up it appeared as its own window and when I close it the Main Window also closed. I figured if it I could tied it to a menu button then it would probably work as expected.

What did I miss?

A couple of other things that may help.

If you haven’t done this already, you probably want to set up 3 sides, not 2. e.g. German, Allied and Solo. The Solo side has access to everything that both the German and Allied player do.

You take this side when you are setting up and don’t resign when you save the saved game (DONT FORGET YOUR PASSWORD WHEN YOU SET THIS UP!!!). Because you don’t resign from it, Solo won’t appear as an option when players load a save game. But it makes life MUCH easier for you when setting up as you don’t have to continually change between sides. Also, the ‘Tools → Refresh Counters’ command cannot refresh counters that are hidden or masked from you, so you if you don’t have a Solo side, you would need to take the Allied side, refresh, then change to the German side and refresh again.

Also, when using Invisible or Mask traits, use the ‘Can be hidden/masked by: Any Side’ option, not the ‘Any Player’ option. This allows you to hide or mask units as the Allied or German player in your saved games and they will be owned and visible by any player that takes that side. If you use the ‘Any Player’ option, they will not be able to see them.

There is a checkbox option in the Private Window setup:

Include toolbar button to show/hide? (Only takes affect when module loaded).

On 15/06/2016 12:03 PM, PaulC via messages wrote:

I tried this but I didn’t see how it could be tied to a menu button.
When I whomped this up it appeared as its own window and when I close it
the Main Window also closed. I figured if it I could tied it to a menu
button then it would probably work as expected.

What did I miss?


Brent Easton
Analyst/Programmer
Western Sydney University
Email: b.easton@exemail.com.au