I’ve created a feature to automate the “Event Resolution” procedure of this module:
https://vassalengine.org/wiki/Module:Downfall:_Conquest_of_the_Third_Reich,_1942-1945
The Event Resolution procedure is automated through a Multi-Action button on the toolbar which looks like this:
As you can see, the button triggers some Global Key Commands, and then prints text into the event log (reminding players which portions of the procedure have been automated, and which they must conduct themselves).
However, step #3 (Draw to Pending) has been problematic for certain users. Every single time I’ve used this Event Resolution button, it works flawlessly. Cards are moved to the appropriate place, and specifically, the “Draw to Pending” portion moves a card from the top of the Event Draw deck and down to the “Pending” location on the board. Simple.
Yet I’ve had multiple reports from users who state that the procedure moves the other 2 cards, but fails to draw a new card to the Pending box for them.
I’ve also seen this myself. In a game where both players have the same version of the module and the same version of Vassal: When I click the button, everything works properly. When I the other player in my game clicked the button, the card failed to draw from the Event Draw deck to the “Pending” location.
This GCK for moving a card from Event Draw deck to Pending (the GCK which fails to fire for some users) looks like this:
As you can see, it simply sends the “Pending” command to the card on the top of the Event Draw deck. This command, in turn, is a “Send to Location” command which looks like this:
It’s a pretty straightforward command, and I’ve ensured that every single card in the event deck (there are only 15) has this “Send to Location” command via a Prototype definition.
So it seems that for a subset of users, this button fails to work properly, while the other portion of users have no issue with it.
Could this be a computer issue? Faster computers can process the Multi-Action Button properly but slower computers skip a step by mistake for some reason?