Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

[Idea] Invisible walls

1456051998

Edited 1456054504
Lucian
Pro
API Scripter
Another mad idea (it's all go this weekend!). I know that having invisible walls that stop player movement but don't restrict vision is a long-standing feature request. In the meantime, I was wondering about trying to make an approximation like this: Draw paths on the gmlayer that represent invisible walls, mark them up in some way ("controlledby"?) Create invisible tokens under the player tokens on the map layer. Copy the players' token light/vision settings to these invisible tokens, and then set the players' actually tokens to be completely without light/vision When the players move their tokens, they won't see the dynamic light update, so the map won't open up immediately when they move. This is a bit of a bummer, because I think that's one of the really cool features of dynamic lighting, seeing the shadows move around as you drag your character around. But without proper support for invisible walls, I can't see a way around that. At worst it just means that characters might need to make a series of small moves rather than one big one. If the move is valid (doesn't cross an invisible wall), then the script moves the hidden token that contains their light setting to correspond with the new position of their token. Otherwise it moves the player token back to the invisible wall, and then moves the light token to that position instead. What do people think? I'm interested as much in whether people find that this is really a problem in actual play (I've only done a limited amount of real play on Roll20 so far, I'm trying to get it set up right for moving a F2F game online), and whether the loss of the "light moves as you drag" would outweigh the benefit of preventing players steaming ahead too far. Are there other ways to deal with this? I guess you can use FoW, but that's going to get really clunky really fast, since you can't script it. Given that you don't get live updates as tokens are dragged, I don't see any other way around it :-( EDIT: I guess an alternative would be to include lines on the DL layer that e.g. popped up some info text and a chat window button to the GM when a player ended their move next to them. The GM could push this button to clear the line and reveal the next bit of the map. This would allow you to have the dynamic lighting moving with token drag, but would have the downside of making it really obvious to the players where points of interest lay on the map - anywhere that their vision/movement suddenly stopped! Indeed, I guess this would be a problem even if Roll20 implemented invisible walls. With the original suggestion, they'd just get used to the fact that their vision didn't update until they dropped their token, and then they find out if something happens on the way to their intended destination that brings them up short... Cheers, Lucian
1456059006
The Aaron
Pro
API Scripter
Stephen and I have talked about solving this problem before. The best idea we've come up with is similar, but requires a bit of math... basicilly reimplementing the line of sight code to be able to determine when an invisible wall came into view and adding an invisible token that had the same light properties as the moved token with radius reduced to the amount of overlap their vision would have. Complications arise when dealing with not seeing around corners and such. 
1456089992
Lithl
Pro
Sheet Author
API Scripter
Collision Detection can collide tokens with a configurable set of paths. You set what color of paths to consider, what layer those paths may be on (or all layers), and what to do when a collision event occurs (return the token to its starting position, send a message to the player, and/or halt the token at the wall). The script will not consider ovals or freehand paths, and it does not correctly collide with rotated or scaled paths. Tokens which can only  be moved by the GM (nobody with direct control of the token, and it doesn't represent any character which anybody has control over) will not be affected. The script, unfortunately, fails to operate correctly if you hold down the arrow key to move the token and the token passes through multiple walls that ought to stop it. The script was written before DL walls could halt movement, as a means to achieve that currently-existing feature, but now it can be used for movement-blocking walls that don't block LOS.