Attached is a bare-bones module with the most recent version of the HexGrid, ZonedGrid, and HexGridNumbering classes, which support oblique hexgrid numbering and use a proper hexagonal pick area instead of a rectangle. They should also be more efficient at encoding/decoding between screen points and location names. These classes will be part of the next release of VASSAL, but are available here in advance.
To use these classes, follow these steps:
Save a copy of your module, just in case;
Using your favourite ZIP utility, copy the VASSAL directory from the attached zip-file into your module;
Optional if needed: Instead of adding a MultiZonedGrid to your board, import this class:
VASSAL.build.module.map.boardPicker.board.ZonedGridX;
Instead of adding a HexGrid to your Board/Zone, import this class:
VASSAL.build.module.map.boardPicker.board.HexGridX;
Instead of adding a HexGridNumbering, import:
VASSAL.build.module.map.boardPicker.board.mapgrid.HexGridNumberingX
Save your module and and close the Editor; and finally
Re-enter the Editor and set your parameters as desired.
Note the trailing ‘X’ characters on the class names. This is necessary to force VASSAL to pick up the new classes, otherwise it will simply reload the existing classes.
These new classes are completely backwards compatible with the current instances, so an alternative integration is to edit the buidlfile and replace all instances of ZonedGrid by ZonedGridX; HexGrid by HexGridX; and HexGridNumbering by HexGridNumberingX.
Contact me directly, either here or by pm, if you encounter problems with these classes prior to therir official release in VASSAL. At that time their functionality will be available under the existing class names.
Pieter