Is there a way to query the global variables of a zone on a map and figure out what pieces are located in it?
Not directly. You would have had to store/delete the names or ids of all pieces in a zone in one ore more GPs, whenever they moved in/out.
I suggest using a global key command on the piece who needs this information to call all other pieces in the zone or map to make themselves known.
Maybe I’ve misunderstood the OP’s question but since early in v3.4.x, a Beanshell function Count() has been available that may suit the requirement. I’ve been using it myself to determine if certain pieces are at a certain location, including within zones.
Oh! Very nice, I had completely missed this new Count() function.
Thanks, will research how count() works