Amazing detective work and repair, Brian. Crack open a cold beverage for that one!
Brian,
I’m wondering if all your wonderful work might address my biggest gripe with the mouse heuristics which is the awful tendency for Vassal to have “sticky” Piece selection. Now that I’ve got a much better understanding of the known issues and limitations of Vassal, I’m starting to make sense of all the erratic behavior in my automation-heavy module. For whatever reason, Vassal seemingly at random retains mouse selection of a Piece after a player invokes a Key Command such as Send To Location. The player then starts doing something else, not realizing the prior piece (probably off-map at this point) is still selected. He then chooses a different right-click option on the new piece that invokes that keystroke command on both pieces. I just learned this morning from Brent that Restrict Commands and/or blank Menu Text often do not disable keystrokes, but merely hide them from the user. Thus something I thought was impossible, now occurs with the “ghost” selected Piece. On rare occasions, a player ghost selects an entire stack which leads to total disaster - usually an irreparable state given the current unreliability of the undo function.
I’m certainly aware that pieces stay selected as you enact commands on them, but I’ve never had the old piece stay selected when I’ve right-clicked on a NEW piece? Or are you saying the new piece was created by a Place Marker from the first piece as the original piece is sent away to somewhere else? I can see THAT causing problems.
I’ve had my own problems with the Place Marker piece getting added to the selection. I can offer you my “Deselect” custom class which lets you add a trait to a piece to force deselection of it (so your commands that sent a piece away could force deselection of that piece, etc). It’s pretty simple and standalone as a class.
If there’s energy on the dev team for some “gradual slight improvements” in the Vassal 3.3 line, I could also easily package that up to be added to Vassal proper, since it’s pretty general use & is a feature I’ve heard is scheduled to be in Vassal 4 anyway.
Brian
I honestly don’t know what the culprit is. I’m sure it’s not actually random. Nothing is random with computers. I’ve been unable to produce the problem myself but I’ve witnessed it when triggered by other players during an online session. I suspect it’s related to the mouse heuristics combined with undo though. I remember when I first started fumbling around with Vassal that I despised the piece manipulation, but have since trained my brain to avoid creating a trainwreck with my game pieces. About half the new players struggle with this problem.
No pieces are ever created in my module - everything is shuttled to-from hidden locations. I suspect it’s related to undo because the player(s) that keep breaking the module are the ones that need to undo actions frequently. One of the huge issues is that players spend most of the game staring at a private window (their hand, resources etc…) then someone looks at the main map and realizes all the pieces or gone or some other disaster. Then they start clicking undo 20 times before the pieces come back - at which point the session is trashed.