Releases: RPTools/maptool
MapTool Nightly 20241110
MapTool Nightly Build for 20241110
What's Changed
Bug Fixes 🩹
- Fix erase flag when DungeonDraftImporter adds topology to the zone by @kwvanderlinde in #5027
Other Changes 💬
- Add deflate as a supported REST response encoding by @fishface60 in #5016
- Decompose drawing, expose, and topology tools by @kwvanderlinde in #5011
Full Changelog: nightly-20241102...nightly-20241110
MapTool Nightly 20241109
MapTool Nightly Build for 20241109
What's Changed
Bug Fixes 🩹
- Fix erase flag when DungeonDraftImporter adds topology to the zone by @kwvanderlinde in #5027
Other Changes 💬
- Add deflate as a supported REST response encoding by @fishface60 in #5016
- Decompose drawing, expose, and topology tools by @kwvanderlinde in #5011
Full Changelog: nightly-20241102...nightly-20241109
MapTool Nightly 20241108
MapTool Nightly Build for 20241108
What's Changed
Bug Fixes 🩹
- Fix erase flag when DungeonDraftImporter adds topology to the zone by @kwvanderlinde in #5027
Other Changes 💬
- Add deflate as a supported REST response encoding by @fishface60 in #5016
- Decompose drawing, expose, and topology tools by @kwvanderlinde in #5011
Full Changelog: nightly-20241102...nightly-20241108
MapTool Nightly 20241107
MapTool Nightly Build for 20241107
What's Changed
Bug Fixes 🩹
- Fix erase flag when DungeonDraftImporter adds topology to the zone by @kwvanderlinde in #5027
Other Changes 💬
- Add deflate as a supported REST response encoding by @fishface60 in #5016
- Decompose drawing, expose, and topology tools by @kwvanderlinde in #5011
Full Changelog: nightly-20241102...nightly-20241107
MapTool Nightly 20241106
MapTool Nightly Build for 20241106
What's Changed
Bug Fixes 🩹
- Fix erase flag when DungeonDraftImporter adds topology to the zone by @kwvanderlinde in #5027
Other Changes 💬
- Add deflate as a supported REST response encoding by @fishface60 in #5016
- Decompose drawing, expose, and topology tools by @kwvanderlinde in #5011
Full Changelog: nightly-20241102...nightly-20241106
MapTool Nightly 20241105
MapTool Nightly Build for 20241105
What's Changed
Bug Fixes 🩹
- Fix erase flag when DungeonDraftImporter adds topology to the zone by @kwvanderlinde in #5027
Other Changes 💬
- Add deflate as a supported REST response encoding by @fishface60 in #5016
- Decompose drawing, expose, and topology tools by @kwvanderlinde in #5011
Full Changelog: nightly-20241102...nightly-20241105
MapTool Nightly 20241104
MapTool Nightly Build for 20241104
What's Changed
New Features 🥳
- Automatically copy relevant issue labels to Pull Requests by @cwisniew in #4746
- Update to JavaFx 22 by @cwisniew in #4745
- Update crowdin.yml to extend translation file suffix with locale by @bubblobill in #4792
- BoardTool upgraded to control map image scale by @bubblobill in #4861
- Added ability to load MRU campaign at startup by @bubblobill in #4870
- Return JSON on rest failure to mtscript instead of exception by @Jmr3366 in #4896
- Add a Handlebars LibraryTemplateLoader and rework file loading to support partial templates by @fishface60 in #4921
- Restrict each drawable light to its lumens level by @kwvanderlinde in #4940
- Do not show local player in Connections window or status panel by @kwvanderlinde in #4983
Performance Improvements 🏎️
- Further improvements to server starts by @kwvanderlinde in #4787
Bug Fixes 🩹
- Fix rendering of line cell templates by @kwvanderlinde in #4752
- Give DrawnElement a copy constructor by @kwvanderlinde in #4763
- Refactor client-side and server-side state, split player database responsibilities, and enforce better lifecylce for servers and clients by @kwvanderlinde in #4771
- Go back to calling MapTool.setCampaign() by @kwvanderlinde in #4774
- Update topology toolbar tooltip to include movement blocking by @kwvanderlinde in #4773
- Persist new public keys in the player database when using Easy Connect by @kwvanderlinde in #4780
- More client lifecycle improvements by @kwvanderlinde in #4777
- Replace token IDs on imported maps by @kwvanderlinde in #4791
- Add workaround for drag and drop between frames by @kwvanderlinde in #4800
- Magnify light source radius rather than shape by @kwvanderlinde in #4803
- Check windows based on hidden status, not showing by @kwvanderlinde in #4804
- Even the local client needs the player list synced by @kwvanderlinde in #4806
- Add read timeouts to server sockets by @kwvanderlinde in #4805
- Fix for missing translation keys by @kwvanderlinde in #4807
- Constrain zoom levels by @kwvanderlinde in #4809
- Fix onChangeSelection and related events for inactive tabbed frames by @kwvanderlinde in #4810
- Make tokens more closely follow their leader by @kwvanderlinde in #4817
- Fix hexagon geometry by @kwvanderlinde in #4831
- Add Label.background i18n key needed for editing text labels by @kwvanderlinde in #4846
- Fix splash screen transparency on Linux by @kwvanderlinde in #4847
- Apply changes made to token properties in the campaign settings when pressing "Ok" by @maltedreschert in #4863
- Keep selected token property in view when moving it up or down a big property table by @maltedreschert in #4864
- Call finalizeCellEditing() before switching tokenTypes to make sure t… by @maltedreschert in #4865
- Modify ButtonGroup drag to check for no change by @bubblobill in #4888
- Fix darkness in GM views (reapply #4942) by @kwvanderlinde in #4943
- Fix jumpy token dragging and resizing by @kwvanderlinde in #4946
- Port missing 1.14 commits to develop by @kwvanderlinde in #4953
- Fix translation of "Clear GM Auras Only" menu item by @kwvanderlinde in #4948
- Add clear lights menu items only once by @kwvanderlinde in #4949
- Fix NPE on partially initialized square grids by @kwvanderlinde in #4964
- Fixed ButtonGroup drag event drop checks #4959 by @bubblobill in #4963
- Do not modify token facing when calculating light and vision by @kwvanderlinde in #4955
- Fixed State/Bar images resizing on rotated tokens by @bubblobill in #4968
- Fix light offset for beams to measure counterclockwise as for cones by @kwvanderlinde in #4973
- Escape key closes export screenshot dialogs by @bubblobill in #4971
- Fix hex light construction by @kwvanderlinde in #4979
- Clean up AppPreferences by @kwvanderlinde in #4986
- Decompose
Grid.getShapedArea()
so we can reuse logic between grids by @kwvanderlinde in #4981 - Do not disclose GM maps to players in status UI by @kwvanderlinde in #4982
- Fix various issues with transfering map topology to and from token topology by @kwvanderlinde in #5019
Code Maintenance 🔧
- Move clientserver package into a new subproject by @kwvanderlinde in #4751
- Fix new compile warning by @kwvanderlinde in #4993
Dependency Updates
- Bump org.apache.commons:commons-compress from 1.25.0 to 1.26.0 by @dependabot in #4713
- Bump org.apache.commons:commons-configuration2 from 2.9.0 to 2.10.1 by @dependabot in #4739
- Bump com.formdev:flatlaf-extras from 3.3 to 3.4.1 by @dependabot in #4738
- Bump com.fifesoft:rsyntaxtextarea from 3.3.4 to 3.4.0 by @dependabot in #4701
- Bump com.formdev:flatlaf from 3.3 to 3.4.1 by @dependabot in #4750
- Bump com.formdev:flatlaf-jide-oss from 3.3 to 3.4.1 by @dependabot in #4749
- Bump com.twelvemonkeys.imageio:imageio-tiff from 3.10.1 to 3.11.0 by @dependabot in #4914
- Bump com.twelvemonkeys.imageio:imageio-jpeg from 3.10.1 to 3.12.0 by @dependabot in #4988
Other Changes 💬
- Handle NPE when grid tool is open and map is removed by @kwvanderlinde in #4754
- Update template rendering when the Adjust Grid tool is used by @kwvanderlinde in #4755
- New dark theme with less flatness. by @bubblobill in #4758
- Pass zones to templates so they don't have to look them up by @kwvanderlinde in #4753
- Fix the splash screen to show on its own by @kwvanderlinde in #4783
- Better error hanndling during client & server start, and during handshakes by @kwvanderlinde in #4790
- Remove experimental web app server and client by @kwvanderlinde in #4797
- Missing tooltip for import predefined button added. by @bubblobill in #4824
- I18n missing string fix & test key rename by @bubblobill in #4825
- Fix the problems with out crowin updates by @cwisniew in #4826
- New Crowdin updates by @bubblobill in #4798
- New Crowdin updates by @bubblobill in #4827
- Restored missing strings for Preferences > token labels by @bubblobill in #4835
- New Crowdin updates by @bubblobill in #4837
- New Crowdin updates by @bubblobill in #4848
- New Crowdin updates by @bubblobill in #4851
- New Crowdin updates by @bubblobill in #4857
- Remove property files with same name differing case to let crowdin to send only one set by @cwisniew in #4858
- New Crowdin updates by @bubblobill in #4862
- New Crowdin updates by @bubblobill in #4871
- New Crowdin updates by @bubblobill in #4872
- New Crowdin updates by @bubblobill in #4874
- New Crowdin updates by @bubblobill in #4891
- Rework javascript getProperty API to handle missing properties better by @fishface60 in #4900
- Bind getBar, setBar isBarVisible and setBarVisible to javascript by @fishface60 in https://g...
MapTool Nightly 20241103
MapTool Nightly Build for 20241103
What's Changed
New Features 🥳
- Automatically copy relevant issue labels to Pull Requests by @cwisniew in #4746
- Update to JavaFx 22 by @cwisniew in #4745
- Update crowdin.yml to extend translation file suffix with locale by @bubblobill in #4792
- BoardTool upgraded to control map image scale by @bubblobill in #4861
- Added ability to load MRU campaign at startup by @bubblobill in #4870
- Return JSON on rest failure to mtscript instead of exception by @Jmr3366 in #4896
- Add a Handlebars LibraryTemplateLoader and rework file loading to support partial templates by @fishface60 in #4921
- Restrict each drawable light to its lumens level by @kwvanderlinde in #4940
- Do not show local player in Connections window or status panel by @kwvanderlinde in #4983
Performance Improvements 🏎️
- Further improvements to server starts by @kwvanderlinde in #4787
Bug Fixes 🩹
- Fix rendering of line cell templates by @kwvanderlinde in #4752
- Give DrawnElement a copy constructor by @kwvanderlinde in #4763
- Refactor client-side and server-side state, split player database responsibilities, and enforce better lifecylce for servers and clients by @kwvanderlinde in #4771
- Go back to calling MapTool.setCampaign() by @kwvanderlinde in #4774
- Update topology toolbar tooltip to include movement blocking by @kwvanderlinde in #4773
- Persist new public keys in the player database when using Easy Connect by @kwvanderlinde in #4780
- More client lifecycle improvements by @kwvanderlinde in #4777
- Replace token IDs on imported maps by @kwvanderlinde in #4791
- Add workaround for drag and drop between frames by @kwvanderlinde in #4800
- Magnify light source radius rather than shape by @kwvanderlinde in #4803
- Check windows based on hidden status, not showing by @kwvanderlinde in #4804
- Even the local client needs the player list synced by @kwvanderlinde in #4806
- Add read timeouts to server sockets by @kwvanderlinde in #4805
- Fix for missing translation keys by @kwvanderlinde in #4807
- Constrain zoom levels by @kwvanderlinde in #4809
- Fix onChangeSelection and related events for inactive tabbed frames by @kwvanderlinde in #4810
- Make tokens more closely follow their leader by @kwvanderlinde in #4817
- Fix hexagon geometry by @kwvanderlinde in #4831
- Add Label.background i18n key needed for editing text labels by @kwvanderlinde in #4846
- Fix splash screen transparency on Linux by @kwvanderlinde in #4847
- Apply changes made to token properties in the campaign settings when pressing "Ok" by @maltedreschert in #4863
- Keep selected token property in view when moving it up or down a big property table by @maltedreschert in #4864
- Call finalizeCellEditing() before switching tokenTypes to make sure t… by @maltedreschert in #4865
- Modify ButtonGroup drag to check for no change by @bubblobill in #4888
- Fix darkness in GM views (reapply #4942) by @kwvanderlinde in #4943
- Fix jumpy token dragging and resizing by @kwvanderlinde in #4946
- Port missing 1.14 commits to develop by @kwvanderlinde in #4953
- Fix translation of "Clear GM Auras Only" menu item by @kwvanderlinde in #4948
- Add clear lights menu items only once by @kwvanderlinde in #4949
- Fix NPE on partially initialized square grids by @kwvanderlinde in #4964
- Fixed ButtonGroup drag event drop checks #4959 by @bubblobill in #4963
- Do not modify token facing when calculating light and vision by @kwvanderlinde in #4955
- Fixed State/Bar images resizing on rotated tokens by @bubblobill in #4968
- Fix light offset for beams to measure counterclockwise as for cones by @kwvanderlinde in #4973
- Escape key closes export screenshot dialogs by @bubblobill in #4971
- Fix hex light construction by @kwvanderlinde in #4979
- Clean up AppPreferences by @kwvanderlinde in #4986
- Decompose
Grid.getShapedArea()
so we can reuse logic between grids by @kwvanderlinde in #4981 - Do not disclose GM maps to players in status UI by @kwvanderlinde in #4982
- Fix various issues with transfering map topology to and from token topology by @kwvanderlinde in #5019
Code Maintenance 🔧
- Move clientserver package into a new subproject by @kwvanderlinde in #4751
- Fix new compile warning by @kwvanderlinde in #4993
Dependency Updates
- Bump org.apache.commons:commons-compress from 1.25.0 to 1.26.0 by @dependabot in #4713
- Bump org.apache.commons:commons-configuration2 from 2.9.0 to 2.10.1 by @dependabot in #4739
- Bump com.formdev:flatlaf-extras from 3.3 to 3.4.1 by @dependabot in #4738
- Bump com.fifesoft:rsyntaxtextarea from 3.3.4 to 3.4.0 by @dependabot in #4701
- Bump com.formdev:flatlaf from 3.3 to 3.4.1 by @dependabot in #4750
- Bump com.formdev:flatlaf-jide-oss from 3.3 to 3.4.1 by @dependabot in #4749
- Bump com.twelvemonkeys.imageio:imageio-tiff from 3.10.1 to 3.11.0 by @dependabot in #4914
- Bump com.twelvemonkeys.imageio:imageio-jpeg from 3.10.1 to 3.12.0 by @dependabot in #4988
Other Changes 💬
- Handle NPE when grid tool is open and map is removed by @kwvanderlinde in #4754
- Update template rendering when the Adjust Grid tool is used by @kwvanderlinde in #4755
- New dark theme with less flatness. by @bubblobill in #4758
- Pass zones to templates so they don't have to look them up by @kwvanderlinde in #4753
- Fix the splash screen to show on its own by @kwvanderlinde in #4783
- Better error hanndling during client & server start, and during handshakes by @kwvanderlinde in #4790
- Remove experimental web app server and client by @kwvanderlinde in #4797
- Missing tooltip for import predefined button added. by @bubblobill in #4824
- I18n missing string fix & test key rename by @bubblobill in #4825
- Fix the problems with out crowin updates by @cwisniew in #4826
- New Crowdin updates by @bubblobill in #4798
- New Crowdin updates by @bubblobill in #4827
- Restored missing strings for Preferences > token labels by @bubblobill in #4835
- New Crowdin updates by @bubblobill in #4837
- New Crowdin updates by @bubblobill in #4848
- New Crowdin updates by @bubblobill in #4851
- New Crowdin updates by @bubblobill in #4857
- Remove property files with same name differing case to let crowdin to send only one set by @cwisniew in #4858
- New Crowdin updates by @bubblobill in #4862
- New Crowdin updates by @bubblobill in #4871
- New Crowdin updates by @bubblobill in #4872
- New Crowdin updates by @bubblobill in #4874
- New Crowdin updates by @bubblobill in #4891
- Rework javascript getProperty API to handle missing properties better by @fishface60 in #4900
- Bind getBar, setBar isBarVisible and setBarVisible to javascript by @fishface60 in https://g...
MapTool Nightly 20241102
MapTool Nightly Build for 20241102
What's Changed
Bug Fixes 🩹
- Fix various issues with transfering map topology to and from token topology by @kwvanderlinde in #5019
Full Changelog: nightly-20241021...nightly-20241102
MapTool 1.15.2
Read Me First
Before uninstalling any previous version, if you have saved your campaign files, logs, or anything else you want to keep under the directory structure where MapTool is installed, please copy them elsewhere beforehand. It is also a good idea to always have backups.
Note: Do not install over the top of an old version, either install into a new directory or uninstall the old version first. If you have installed a beta version of 1.15.0, uninstall that first.
Platform Notes
We strongly encourage you to use the installer format for your operating system. The JAR file should only by used by advanced users comfortable with installing Java releases. It requires a working Java install with JavaFX on your system to use it.
Download one of the assets listed below. As described below, each platform has options for which file to download.
- Windows: Use either
.msi
or.exe
.
If you have modified theMapTool.cfg
file, make a backup so you can copy your changes into the new config file.- Do not install over older versions of MapTool.
We're seeing notes from Windows users who double-click the icon after installing, but no window appears. This seems to be an antivirus issue, so check your AV if you have this problem.
- Do not install over older versions of MapTool.
- Linux: Use either
.deb
,.rpm
or.zst
(depending on which packager your system uses).- The
deb
version installs under/opt/maptool/bin
asMapTool
.
- The
- macOS: Use either
.pkg
(recommended) or.dmg
.- On macOS, to run the app the first time after installation, hold Ctrl while clicking the icon and continue to hold Ctrl while choosing Open, then choose to open the application (this is part of Apple's approach when dealing with an unidentified developer).
The macOS Gatekeeper may flag the DMG file as broken. For more details, see this issue.
- On macOS, to run the app the first time after installation, hold Ctrl while clicking the icon and continue to hold Ctrl while choosing Open, then choose to open the application (this is part of Apple's approach when dealing with an unidentified developer).
What's Changed in 1.15.2
Bug Fixes 🩹
- Fix translation issues on 1.15 by @kwvanderlinde in #4952
- Port missing 1.14 commits to 1.15 by @kwvanderlinde in #4950
What's Changed in 1.15.1
Performance Improvements 🏎️
- Reduce number of interfaces scanned for UPnP gateways by @kwvanderlinde in #4904
Bug Fixes 🩹
- Fix themes, default property sets not being installed correctly by @cwisniew in #4884
- hasLightSource & Campaign Panel drag-drop bug fix by @Jmr3366 in #4887
- Fix darkness in GM views by @kwvanderlinde in #4942
Other Changes 💬
What's Changed in 1.15.0
New Features 🥳
- Cover VBL Addition by @ColdAnkles in #4299
- onChangeMap add-on compliance, output added by @Jmr3366 in #4318
- onMouseOver event by @Jmr3366 in #4319
- Added en_au and en_gb language files by @bubblobill in #4348
- Hide token stack indicator by @Jmr3366 in #4343
- Use the term "NPCs" in the Map Explorer window by @kwvanderlinde in #4393
- Upgrade to javafx 21 by @cwisniew in #4428
- Upgrade to java 21 by @cwisniew in #4426
- add nightly github action by @cwisniew in #4411
- Introduce ShapeType.LINE by @bubblobill in #4449
- Removed auto inserting quotes from code editor by @bubblobill in #4535
- MetaMacro Functionality for GM & Campaign Panel Buttons by @bubblobill in #4531
- i18n language files updated for new beam light type by @bubblobill in #4517
- Added info type "functions" by @bubblobill in #4548
- Added second Joker to card deck by @bubblobill in #4545
- Add UI for defining unique lights by @kwvanderlinde in #4553
- Change BEAM lights and sights to accept width instead of arc by @kwvanderlinde in #4516
- Auras and Lights Through VBL by @ColdAnkles in #4579
- Added new chat function chat that allows running slash commands in macros. by @bubblobill in #4532
- Input() to handle
lib://
asset paths by @ColdAnkles in #4621 - Updated dice systems to handle exploding dice limits by @ColdAnkles in #4644
- Reworked Token Type/Properties Editor tab by @bubblobill in #4653
- Update Map and Token Labels to allow users to define how they look by @cwisniew in #4662
- Include
token types
ingetInfo("campaign")
by @Jmr3366 in #4697 - Add a cover VBL icon to Rod Takehara icon theme by @kwvanderlinde in #4737
- Automatically copy relevant issue labels to Pull Requests by @cwisniew in #4746
- Update to JavaFx 22 by @cwisniew in #4745
- Update crowdin.yml to extend translation file suffix with locale by @bubblobill in #4792
Performance Improvements 🏎️
- Improve performance of the visibility sweep by @kwvanderlinde in #4642
- Ensure GeometryUtil.toJts() returns valid geometry by @kwvanderlinde in #4668
- Further improvements to server starts by @kwvanderlinde in #4787
Bug Fixes 🩹
- Additional JavaScript API Token Functions by @ColdAnkles in #4323
- Fix for cancelling from map export by @Jmr3366 in #4327
- Propagate frame rate cap changes to each ZoneRenderer by @kwvanderlinde in #4361
- Use "isometric rectangle" instead of "diamond" in tooltips by @kwvanderlinde in #4357
- Fix onTokenMove not being called when lib: tokens are off the Token layer by @kwvanderlinde in #4363
- Fix the topology tooltips in the Edit Token dialog by @kwvanderlinde in #4358
- Reenforce uniqueness of attached light sources as in ye olden days by @kwvanderlinde in #4377
- Add missing tooltip for cover VBL by @kwvanderlinde in #4375
- Fix grid size labels by @bubblobill in #4370
- Use delimiters literally in macro functions by @kwvanderlinde in #4381
- Replace home-grown uberJar task with shadowJar plugin by @kwvanderlinde in #4385
- Fix handling of assert failures in event handlers by @kwvanderlinde in #4392
- Include FOW exposure in pathfinding bounds by @kwvanderlinde in #4407
- Make ownership checks consistent between All Players and explicit assignment by @kwvanderlinde in #4404
- Allow build to succeed even with stray sentry.properties file by @kwvanderlinde in #4423
- Fix for cover island edge case by @ColdAnkles in #4438
- Fix VisiiblityInspector's use of cover VBL by @kwvanderlinde in #4497
- Fixed missing
in light explanations by @bubblobill in #4499 - Consistently add light options to Campaign Properties by @kwvanderlinde in #4515
- Fix MBL in non-noded situations by @kwvanderlinde in #4529
- Make light source detection more consistent by @kwvanderlinde in #4541
- Fix note rendering when labels are present. by @kwvanderlinde in #4557
- Consistently render movement with different fog and vision settings by @kwvanderlinde in #4558
- Added missing colon in button CSS by @bubblobill in #4576
- Added parameter checks to metamacro functions by @bubblobill in #4583
- Better encapsulated version of Zone.clearDrawables() by @kwvanderlinde in #4589
- Alternate Encoding Handling for Addon Content by @ColdAnkles in #4596
- MetaMacro function fix fix by @bubblobill in #4605
- Updated FunctionUtil to handle
lib://
assets via AssetResolver by @ColdAnkles in #4629 - Fix issue with vision bounds not including the vision origin by @kwvanderlinde in #4645
- Add more icons from Rod Takehara by @thelsing in #4639
- Fix for #4695: library.getContents() returns empty JSON sometimes by @Azhrei in #4696
- Correctly ce...