Disable movement report inside zones

How can I disable movement auto reporting when “previousLocation=location”?

When I arrange pieces inside a zone, it shouldn’t be considered as a movement.

Is there a away to disable auto-reporting and enable a conditional reporting for movement (as there are conditional reporting for shortcuts)?

  1. Use the MovedOnMap command for each map.
  2. I typically set triggers (that under certain conditions) activate a report step.
  3. So that way when a piece moves from zoneGreen to ZoneMap, the trigger activates { trigger criteria-- CurrentZone==“ZoneMap” && PreviousZone!=“ZoneMap”
    Then the trigger activates the report.

Would that work?

Actually the trigger could be just previousZone!=currentZone.
I’m on my phone now. When I get home i’m going to try it.

It’ll actually need to be OldZone, not PreviousZone…but yes, this is the technique.

Please clarify… I’m not seeing what is disabling reports on movement within a zone in your examples.

Are you saying, “create triggers that report when moving from each zone to a different zone, and each map to a different map”? Or, should you edit a trigger that reports movement from any map/zone to any other area (read: not within any one zone)? Or, should you write a specific “anti-trigger” (that specifies, do NOT report movement within any zone)?

Stilgr, I want to report movement normally, except when they are in the same zone (arraging pieces for better view shouldn’t be looked at as a move). From what I understood this could be disabling auto reporting and then putting an action trigger on each piece that triggers when {OldZone != CurrentZone} and make it report the move.

Or is there a better way?

Therein lies my confusion: it seems as though you want to set up an action trigger “when {OldZone != CurrentZone} and make it report the move.” Isn’t that the exact opposite of what you want??? If oldzone is current zone (e.g., you’re just shifting or rearranging pieces within the same zone), you DON’T want to see a report in the buffer, correct? Why, then, would you set an action trigger??

I apologize for being dense, not having worked with this code myself… I’m just trying to gain some understanding, before I start trying this myself. Honest, I’m not challenging you to wind you up, or anything like that! :slight_smile:

VASSAL modules by default have really crude map-level settings for movement reporting: “Auto-report format for movement within this map” and “Auto-report format for movement to this map”. Usually the format is set up like this: $pieceName$ moves $previousLocation$ → $location$ *

Unfortunately it applies to EVERYTHING. Units, markers, cards, you name it. Some–myself included–find this really irritating and of low information value, and you can’t filter it at all (i.e., show some selected movement reports but not all). The alternative is to blank out these settings entirely so there is no universal movement reporting. Instead you leverage the very bottom map-level feature called the “Key command to apply to all units ending movement on this map”.

Then on any pieces you choose, you can set up a Trigger that listens for this keystroke and spits out a Report Action trait that you can format as you see fit. On the Trigger is a property match expression, specifying the conditions under which the Trigger will actually cause the Report Action to occur. If he wants to omit reporting for someone simply futzing with pieces in place, then it is entirely correct that he use the property match expression OldZone != CurrentZone. When this evaluates to true, the piece has actually switched zones, thus the movement report occurs.