I’m working on a card game where some of the cards are the locations upon which some other ‘character’ cards move. The idea is that the game layout changes with every game, depending on which location cards are played, and where. I have my location cards non-stacking, and it’s all good functionally, but I’d really like to get the reporting of moves to state these locations. Like, if I have both a ‘Living Room’ and a ‘Backyard’ location in play (just as a silly example), then I’d like to have the moves report like “Fred moves from the Living Room to the Backyard”.
I’ve been playing around with everything, but I just can’t seem to make it work. For the record, the closest I can get to the above example is “* Fred moves → offboard → offboard*”… i.e., I can’t even get my Board name to report. Any ideas?
You will need to use the capability in a Map the issues a Key Stroke to every counter that ends it’s movement on that map. Say this is Ctrl-A. Most of your pieces will just ignore Ctrl-A, but the terrain cards will have a Set Global Property trait keyed to Ctrl-A. Just enter the Global Property Name as Loc and create a new Key Command with a Key Command of Ctrl-A, a type of ‘Set value directly’ and a New Value of $PieceName$. This can be set up in a prototype.
Now, when a you drop a terrain piece into a zone, the map will send it Ctrl-A which will activate the Set Global property trait to place the name of the terrain Card into the Loc property of the Zone.
The default action of Set Global Property works by trying first to find the named Property in the current zone. If it does not exist, it checks the current map, then if still not found, it checks for global properties.
*********** REPLY SEPARATOR ***********
On 2/07/2011 at 5:42 AM ijthompson wrote:
When a location card is played, have it set it’s name into the Loc
property of the zone it is being played in using the Set Global
Hoo boy… I think this last bit might be way over my head. Is there
any place to read about how this might be done? The Set Global Property
page vassalengine.org/wiki/SetGlobalProperty page doesn’t
really reveal too much…
The good news is that I forgot to mention that to have a map or zone report a location as part of movement, it must have a grid. Just add an irregular grid to the Zone and define 1 point where you want the card to snap. This solves you non-snapping point also.
The bad news is that it is not actually possible to include Global Variable names in the movement reports or grid location formats. I had not realised this when I suggested this method, I apologize for that. It sounded like a good idea at the time
There is another way though. You will need to turn off the movement reporting in the Map (Set the Auto-report field in the Map to blank) and handle the reporting of the movement yourself in each counter with a Report Action trait keyed to your map movement key Ctrl-Shift-A. A Report Action message can include any Global variables at all. Reporting the ‘From’ location is a little tricky, you will need to store it in a Dynamic Property in the counter each time you land somewhere, so that you can report it when you leave. Otherwise, just usa a ‘X moves to Here’ type message.
Just a quick note (not bumping the thread, I swear! ): I didn’t have time to try the new method, but it occurred to me that Movement Trails might be a simple and more elegant way to go. I tried adding them to the relevant prototypes, and they don’t show up at all! Is there something wrong with Movement Trails right now? Not to derail the thread…
One thing I noticed when playing with your module was that your ‘Start Game’ is actually a pre-defined startup of a save file. This means that no changes you make to counters will EVER be visible in the module. I had to add a new ‘no options’ start game to be able to re-create a game from scratch.
*********** REPLY SEPARATOR ***********
On 6/07/2011 at 7:41 PM ijthompson wrote:
Just a quick note (not bumping the thread, I swear! ): I didn’t have
time to try the new method, but it occurred to me that Movement Trails
might be a simple and more elegant way to go. I tried adding them to the
relevant prototypes, and they don’t show up at all! Is there something
wrong with Movement Trails right now? Not to derail the thread…
For the record, I made that pre-defined setup because in a proper game, those particular cards will need to begin in that particular place (and I wanted to save myself some work since those are the cards I need to tinker around with the most). However, it’s clear to me now that pre-defined setups are things that I should be saving for the FINAL step of module creation!