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

Managing combat in 3 dimensions (e.g., flying, swimming)

I've been using an API script that allows a player to set their Z-height on their token with a console command (e.g., !swim 15). This is useful but adds clutter to the token and can be clumsy. It's also tedious for larger fights where I have to select numerous monsters, one-by-one, to adjust their Z-height for everyone to see. Don't get me wrong, it works well enough. But if there's a better way, especially if it makes the dimensional space more visible to everyone at the table, I'll take it. How do you all manage these situations? Do you have an efficient way of representing this in the 2D space of Roll20?
1520782903
GiGs
Pro
Sheet Author
API Scripter
I don't know about making things more visible, but you can probably make the assigning Z0axis a lot quicker with a macro and tokenMod (if z-axis is a tokenbar) or ChatSetAttr (if the z-axis is not on token but just on character). You could use a script linked to a graphic:change event to automatically assign statuses to a token when the z-axis attribute or tokenbar changes, which might make representing the 3d space easier.
1520793939
Gold
Forum Champion
Play on side-scroller maps .* * Still 2D, demonstrating height (Z axis) and side-to-side (X) extremely easily, unfortunately giving up depth (Y).
In the rare cases where the Z axis is from importance, I use one of the token icons (the pink ball), along with a number (just press 1-9 while selecting the icon) - this represents the height above ground in squares (= 5ft). With this trick, you can easily lift up tokens up to 45 ft (because 9 is the highest number). If I ever need even higher numbers, I'll use the purple ball as well, and use that as 50ft/10 squares indicator. So 1 purple and 3 pink means 13 squares means 65 ft above ground.
1520866131
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Arthur B, that's the method I and some other use as well (though I use the wing icon). It would be a good addition to the  Stupid Tricks thread, since it's not really a documented use of the feature. You should post it.
1520868486
Kirsty
Pro
Sheet Author
There's a great API script by Aaron that does this. Its called  flight . I don't use it often, but it's really handy in certain circumstances.
keithcurtis said: Arthur B, that's the method I and some other use as well (though I use the wing icon). It would be a good addition to the  Stupid Tricks thread, since it's not really a documented use of the feature. You should post it. Just posted it there. It never occurred to me that that's something worth posting. But I use this trick for (simple) numbers on tokens all the time.
1520881113
keithcurtis
Forum Champion
Marketplace Creator
API Scripter
Also, remember that at least for D&D 5e, the Pythagorean theorem is expressed as c=max{a,b}. I.e. the hypotenuse is equal to the greater of the two legs of any right triangle. There are no diagonals. This makes flying combat very easy, since you don't have to work with any real math other than just comparing two values. Get the range normally between tokens. If that value is greater than the altitude, use it. If the altitude is greater, use the altitude for range. Easy-peasy.
THAT I didn't know. I actually did some nice calculations every time to check the ranges...
Kirsty said: There's a great API script by Aaron that does this. Its called  flight . I don't use it often, but it's really handy in certain circumstances. That's the one I've been using and it is great. It's very easy to add in a "Swim" version (as described in the script) to cover both elements.