caewok / fvtt-token-visibility

Advanced token visibility rules for Foundry VTT
MIT License
4 stars 8 forks source link

Tokens can sometimes see other tokens through walls when using 'Corners (dnd5e DMG)' option for Line of sight Algorithm #63

Closed T-Whiz closed 9 months ago

T-Whiz commented 10 months ago

Expected: Tokens are unable to see tokens on the other side of a wall (when the wall is set with default/Normal sight blocking).

Actual: As expected except when using the ATV setting for Line of sight Algorithm: Corners (dnd5e DMG). If this option is selected, then tokens can sometimes see tokens on the other side of a wall. Attached some images of examples. It seems easiest to recreate when using the keyboard to move a token, otherwise it can be recreated by dragging a token to move it a single square at a time. I also tried different combinations with the settings for Range Points and Cover Algorithm and it occurs regardless of those selections.

Verified this occurs with only ATV and dependencies enabled. No errors in console. Foundry v11.313, dnd5e 2.1.3, ATV v0.5.8, socketlib v1.0.13, libWrapper v1.12.13.0, hosting: The Forge

Steps to recreate:

  1. In ATV, select the 'Corners (dnd5e DMG)' option for Line of sight Algorithm.
  2. Add 2 or more tokens to a scene with multiple walls, including some walls that are not directly over a grid line.
  3. Verify both tokens have vision enabled (and either light sources or global illumination on the scene, if needed).
  4. Place the tokens on opposite sides of a wall, and move one of the tokens into a square where some of the square (less than 50%) is intersected by a wall (leaving the square unblocked for purposes of the token being able to move into it).
  5. Move the token into and out of the square that is partially covered by a wall, from different directions. Check the views of both tokens after moving into each space. (see example 1)
  6. Place the 2 tokens on opposite sides of another set of walls where the walls line up with the grid lines, and include a 90 degree angle.
  7. Move the token on the inside corner into the corner created where the walls connect.
  8. Move the token on the other side of the wall into and out of the squares adjacent to the outside corner, from each direction. Check the views of both tokens after moving into each space. (see example 2)
  9. Repeat steps 6-8 with a wall setup that is a straight line over a grid line but is also connected with another wall that is not directly over a grid line. (see example 3)

screenshot1 screenshot2 wall setup example1 example2 example3 example4 example5

caewok commented 9 months ago

Should be fixed in the upcoming v0.6.0.