VASSAL 3.5.0-beta1 Released

[size=200]VASSAL 3.5.0-beta1 Released[/size]

The VASSAL Team is happy to announce VASSAL 3.5.0-beta1, which is a preview release.


  • Things may be broken which worked previously. If you find a new bug, please report it.

  • Modules saved in 3.5 are not openable by earlier versions of VASSAL. We recommend keeping a backup copy of any pre-3.5 modules you plan to modify in 3.5 until you’ve verified that everything works to your satisfaction.

  • Some modules containing custom drawing code may render incorrectly on HiDPI displays, starting with 3.3. If you are the maintainer of such a module, let us know and we can advise you about what needs updating in your code.


Mac OS X
Windows (64-bit)
Windows (32-bit)

[size=150]Changes since 3.4.10[/size]

New features

  • 13706: Console, for entering commands to affect errorlog, properties, etc.
  • 13522: Performance improvements for Global Key Commands
  • 13504: Simpler way to display PDF files from Help menu
  • 13494: Expose version numbers and module strings to module as properties
  • 13432: MouseOverStackViewer can show > 1 piece of a deck
  • 13417: Editor’s search function can now search piece traits and component attributes
  • 13415: MouseoverStackViewer has HTML support and additional formatting options
  • 13414: “Help” button (and help information) added to Preferences dialog
  • 13368: Added preference to control drag-at-edge-of-map width
  • 13355: Threshold for centering on opponent’s move is now configurable
  • 13352: Title Bar of module should always show most recent Save/Load/Log
  • 13297: Ability to Deselect a piece with a Key Command (also remove it from its stack)
  • 13296: Flare feature for map
  • 13219: Added KeyNamer for overriding key names
  • 1868: Method for removing unused images from modules
  • 1826: Aesthetic improvements to dialogs
  • 1807: Chess clocks
  • 1804: Added Preference for turning off sounds

Bug fixes

  • 13741: DataArchive.getImageNames() incorrectly returns an empty string if images/ has an entry in the ZIP archive
  • 13675: Piece Slots shouldn’t be allowed at very top level of Piece Palette
  • 13660: Replaced ComponentSplitter with SplitPane for better splitter positioning
  • 13659: “Remember window size” preference is no longer ignored
  • 13593: Global preferences are written when changed
  • 13509: Save As in Editor, if it fails, complains the new filename
  • 13495: Wizard should set the initial value for next save/load dialog
  • 13336: Fixed incorrect date format in SecretNotesController
  • 12946: Prevent top level required components from being deleted in Editor
  • 4779: Comparison operator >= no longer incorrectly documented as =>

Other improvements

  • 13661: Simplified ZIP archive writing and error reporting
  • 13450: Improve look of Auto Configured editor dialogs
  • 13437: Improve visibility of Logging status - Help people to remember to start logs
  • 13363: buildFile renamed to buildFile.xml
  • 13354: Add a chatter message when starting to write a logfile
  • 13353: Use native file chooser on Linux
  • 13333: Better handling of logfile/savefile comments
  • 13326: Saving a module will default to .vmod, an extension to .vext
  • 13323: Player switching sides now reported in Chat Log
  • 13098: Move Compatibility related preferences on the General tab to a new Compatibility tab
  • 1907: Suggest default filename extensions

See the Release Notes for descriptions of the changes in 3.5.

[size=150]Minimum Requirements[/size]

VASSAL 3.5 requires Java 11 or later.

The Windows and Mac packages have an appropriate version of Java bundled with them, so there is no need to install Java separately on those operating systems. On Linux, use your package manager to install Java 11 or later.

[size=159]Help us test[/size]

Please report bugs in the Technical Support & Bugs category at the VASSAL forums.



As is now customary, a quick tour of some of the new features is available in the wiki: … ease_Notes

Great work! We love you!

Very exciting!

Chess clock.
Sound options.
And more.

Keep up the good work :exclamation:

Thought about the “Flare” command… I see this as potentially very useful, however I’m dubious about letting the module designer modify the default command sequence…

While most things should be under the control of the module designer, some fundamental player functionality should be consistent across multiple modules.

Personally, I would see more worth in allowing the player to configure it, rather than the module.

FWIW - I suggest not allowing the command sequence to modifiable and enforce it’s consistency across all modules.

Also, is there a “right click” context menu - send Flare (in current mouse location)?

My 2 cents…