Releases: caewok/fvtt-elevation-ruler
Moar Bresenham!
Switch to using Bresenham 3d algorithm to determine 3d grid path for square grids. Use Bresenham 4d algorithm to determine 3d grid path for hex grids (hex-cube dimensions + elevation dimension). Closes #194.
For pathfinding, don't consider walls blocking if the wall top elevation equals the token elevation (but still blocks if wall bottom elevation equals token elevation).
If Wall Height module is active and vaulting is enabled, ignore walls within the vaulting height.
Update Italian localization. Thanks @GregoryWarn!
Update Brazilian Portugese translation. Thanks @Kharmans!
Update libGeometry to v0.3.11.
What's Changed
- v0.10.6 by @Kharmans in #190
- v0.10.6 by @GregoryWarn in #193
Full Changelog: 0.10.6...0.10.7
Math is hard!
New Features
Setting to apply movement penalties per-grid-space. Defaults to enabled. For gridded scenes, this will (1) count regions/tokens/drawings as imposing movement penalty only if the region/token/drawing overlaps the center point of the grid space and (2) impose the penalty at a grid-space level. If disabled, this will proportionally apply the penalty based on the precise movement path. Closes #181.
Setting to add (or subtract) a flat amount when moving into a grid space with a token penalty. E.g. +5 per grid square. Add parallel setting to drawing configuration. (May add a similar toggle to regions in Terrain Mapper if this cannot be easily handled using active effects.) Closes #125.
Bug fixes and other updates
Correct NaN distance when using hex grids. Closes #188.
Don't treat walls as blocking if the top elevation equals the token elevation. Closes #189.
Update Italian localization. Thanks @GregoryWarn!
What's Changed
- v0.10.5 by @GregoryWarn in #187
Full Changelog: 0.10.5...0.10.6
Quick fix
TerrainMapper 0.4.1 updates
Compatibility with Terrain Mapper 0.4.1.
Update Polish translation. Thanks @Lioheart! Closes #184. Update Brazilian Portugese translation. Thanks @Kharmans!
Fix for terrain cost measuring in pixel units instead of grid units for gridless maps.
Fix pathfinding failing for users once the preview token stops moving. Closes #138.
What's Changed
Full Changelog: 0.10.3...0.10.4
Quick fixes
Fix for the ruler label blowing up the font size on gridless and hex scenes.
Fix for gridless measuring in pixel units instead of grid units.
Full Changelog: 0.10.2...0.10.3
History and ruler label styles
New Features
Ruler history (faded ruler markings) is used to represent prior movement of a combatant in its combat turn. Arrow-key movement is added to the ruler history as well.
New setting to scale the ruler labels based on zoom. Thanks @Aedif for advice on this.
New setting to force strictly Euclidean measurement for diagonals. Foundry's "Exact" core "Square Grid Diagonals" setting actually measures diagonals in number of hexes or number of squares, which in some cases can vary (slightly) from Euclidean measurement.
New setting and CONFIG
options to display the ruler labels using configurable styles. Thanks @Ichabod for the idea and layout suggestions! You can control the styles, icons, and scaling using CONFIG.elevationruler.labeling
. Generally modifications to these should affect the next ruler movement; no reload required.
Bug fixes and other updates
Reworked the measurement system to directly measure the 3d movement instead of projecting to a 2d plane. This matters a lot for hex movement, as projecting assumed a geometrically impossible 3d hex grid whereas now hex elevation movement assumes the 3d hex grid has stacked 2d hexes (square shapes in the z-direction). This means that the core "Square Grid Diagonals" setting is now used to modify how elevation diagonal movement is calculated for 3d hexes. Also now accounts for "double-diagonal" moves in 3d square grids in a more consistent manner. Reworked the movement penalty class to more closely mimic the cost function expected by Foundry ruler. Closes #163 and probably other measurement bugs. Creates unknown number of new measurement bugs!
Use the existing cost approach in Foundry ruler to measure difficult movement.
Fix for rounding happening even when "Rounding Distance to Multiple" is set to 0. Closes #173. Fix for Levels / Wall Height always dropping to ground. Closes issue #174. Thanks @Larkinabout for PRs on both!
Fix for GURPS modifying the Ruler waypoints without using the Ruler#_addWaypoint
method. Closes #166. Submitted PR #1959.
Update Polish translation. Thanks @Lioheart! Closes #180. Update Brazilian Portugese translation. Thanks @Kharmans!
What's Changed
- v0.10.1 by @Kharmans in #172
- Fix ignore rounding by @Larkinabout in #176
- #174 by @Larkinabout in #177
Full Changelog: 0.10.1...0.10.2
Pathfinding fixes
New Features
Add toggle in settings to snap pathfinding to the grid when possible.
Add toggle in setting to combine prior movement with total movement in the same line. Thanks @Larkinabout!
Bug fixes and other updates
Fix display of terrain region penalty measurement.
Update Polish, Italian, and Brazilian Portugese translations. Closes #171. Thanks @GregoryWarn, @Kharmans, and @Lioheart!
Fixes for the scene graph used for pathfinding. Address graph errors when the token overlaps walls. Address graph errors with overlapping walls.
What's Changed
- Combine Prior with Total by @Larkinabout in #170
- v0.10.0 by @GregoryWarn in #168
- v0.10.0 by @Kharmans in #167
Full Changelog: 0.10.0...0.10.1
Terrain Mapper v0.4 support
Support Terrain Mapper v0.4.0 elevated regions and tiles.
Better support for difficult terrain using Terrain Mapper or drawings.
Now incrementing elevation at the end of the waypoint move, to better function with Terrain Mapper.
Rewrite and simplify the movement penalty calculation. Measure penalties through regions and drawings using 2d cutaway intersections through the 3d shape for a given 3d line segment.
Adjustments to how fly and burrow are handled.
Use actor.system.currentmove
for GURPS so it accounts for encumbrance, etc. Closes #164.
Potential fix for token document lock (#145) thanks to @aburley1234!
Update lancer speed attribute for Lancer 2.0. Thanks @BoltsJ!
What's Changed
- Fixing an issue where the Token would lock under certain conditions by @aburley1234 in #165
- Add Lancer integration to README by @BoltsJ in #162
New Contributors
- @aburley1234 made their first contribution in #165
- @BoltsJ made their first contribution in #162
Full Changelog: 0.9.12...0.10.0
Diagonal elevation and minor fixes
Correct counting of elevation diagonals. Closes #161.
Don't modify elevation based on movement type if autodetect movement is disabled. Closes #155.
Add basic GURPS token speed attributes. Closes #160.
Correct error re undefined values.filter
method that occurred on some browsers that do not support most recent Javascript.
Update Polish, Italian, and Brazilian Portugese translations. Closes #153. Thanks @GregoryWarn, @Kharmans, and @Lioheart!
Fix for dragonbane token speed. Thanks @xdy!
What's Changed
- Fix dragonbane support by @xdy in #157
- Update V0.9.10 it.json by @GregoryWarn in #154
- v0.9.10 by @Kharmans in #152
Full Changelog: 0.9.11...0.9.12
Additional pathfinding fixes
Prevent the scene graph from adding 0-length edges. Closes #101.
Add check to ensure PIXI.Points are used in CenteredRectangle#toCartesianCoords
to avoid error re rotate not being a function. Closes #108.
Update libGeometry to v0.3.5.
Remove the pathfinding toggle button if pathfinding is disabled. Closes #151.
Track diagonal moves when moving in combat so that 5-10-5 does not reset during multiple moves in a single turn. Closes #87.
Switch to using canvas.visibility
instead of canvas.effects.visibility
.
Full Changelog: 0.9.10...0.9.11