
Steely Sam |
1 person marked this as a favorite. |

I've searched everywhere on rules for this and cant find anything, basically it boils down like this
Im a wizard flying 30ft. in the air and a ranger 15ft. away from the square I'm flying over wants to shoot me.
What would be the distance for him to shoot (for range penalties and what not) and how do you determine distance in three dimensions like that.
some help on this or rules references would be very helpfull
a friend referenced the pythagorean theorem but if you use that the book should have something about it

Steely Sam |

using the theorem takes alot of time out of game for adding up the distance, especially since the "flying caster" is a common tactic... are there any simplified rules for this?
I was thinking use the greater of the 2 distances, in the example above it would be a 30ft. shot
another example would be shooting at/through a window that is on a 2nd story building, your X distance from the building and the window is Y distance from the ground

![]() |

The Pythagorean theorem is the way to go. The more you use it the easier it is to do on the fly.
The rulebook probably doesn't mention it (or 3D combat in general) because of wordcount - there's an entire sourcebook's worth of information just to address the issue.
Really? Long edge + 1/2 shortedge (round down) is close enough for gaming purposes.

![]() |

Paul Watson wrote:Really? Long edge + 1/2 shortedge (round down) is close enough for gaming purposes.Depends on your definition of close enough. For my group, a discrepancy of up to 15' is too much.
Then they need to learn about Rule 0. Back before D&D3.0 the entire game was played with something called "imagination" and the GM simply told the players where the combatants were and what the distances were. ;)
If your players are going to hold your feet to the fire for something like this, then you don't have any choice and need to do the math. Fortunately, you can automate this pretty easily in tools like OpenRPG and MapTool or with three cells in a spreadsheet.
In most cases, PCs don't really care. They don't want to be "35 feet in the air", they want to be "30 feet from their opponent". So just tell them, "okay, you're 30 feet away" and keep the game moving. Of course, there's a whole discussion about whether such things can be accurately estimated by the PCs in the heat of battle anyway, but that's not the topic of this thread. :)

![]() |

You're right that in most cases, the estimated distance is being used to get closer to the enemy, "I want to get within 30ft." However, often times, the distance is important to determine spell range or penalties to use missile weapons. This could be very important if the opponent's tactics are specifically tuned to this issue. The error in your estimate becomes increasingly larger as the distances increase. It really only takes a few seconds and a $5 hand-held calculator with a square root button. The math is only marginally more difficult than calculating spell range.

![]() |
1 person marked this as a favorite. |

It really only takes a few seconds and a $5 hand-held calculator with a square root button.
Or an awesome range calculator!

Rhubarb |
in a nutshell this is how i handle 3d fights. get a couple of yard sticks, an inch is 5 feet so you now have vertical height meter, get a tape measure. player holds yard stick with finger at height of wizard (using the example above), run tape measure from ranger to wizard (players finger) this is the range. i like it cuz i don't have to use any complicated math.

james maissen |
a friend referenced the pythagorean theorem but if you use that the book should have something about it
D&D is based upon squares and rectangles.
Fireballs don't explode in spheres. You count diagonals very strangely.
But it does make counting distances easier (not as easy as completely square ala 4th ed, but we have brains in our heads so it's ok).
Here's what you do:
Figure out the distance for each dimension in squares (i.e. 4 squares forward, 2 squares left, 5 squares up) then take the longest and add half (round down) of the next longest, forget about the third it's for free.
So in this case it would be 5 + 2 (4/2) + 0 (dropping the 2) for a distance of 7 squares.
Easy eh?
-James

Rezdave |
Long edge + 1/2 shortedge (round down) is close enough for gaming purposes.
+1
The "longest" distance (i.e. hypotenuse) you could have relative to either height or length (i.e. leg) would be an isosceles triangle, where if the leg measures 1 then the actual "range" distance measures ~1.4 .
The formula given above is a good and fast approximation for distances.
FWIW, we have an archer in my campaign that is starting to use the invisible and flying tactic with great frequency.
I also instituted a -4 non-proficiency penalty for a flying archer, since they are used to having their feet on the ground, being able to brace themselves in certain stances when shooting (particularly if using long- or mighty-bows) and generally shooting arcing across flat distances. I imagined it is disorienting to suddenly be a flying archer. A feat expenditure (similar to Exotic Weapon) will eliminate this.
FWIW,
Rez

AdAstraGames |

You can also download a handy table of this:
http://www.adastragames.com/downloads/Range-Angle.pdf
The color coded bands also tell you relative bearing angle. Yellow means the target doesn't have to look up - blue means the target has to tilt their head up. Green means the target has to crane their head up and purple means the target is right over head. This can be handy for situational modifiers for Perception checks.
For quick and dirty, longer plus one third of the shorter is used for heat seeking missiles by the air force. Longer plus half the shorter is faster for mental arithmetic, but will overstate ranges a bit.

Wolf Munroe |

I'd probably just figure out height distance the same way I figure out any other distance... on the grid, by "tipping the encounter over" to count the squares.
But then that doesn't take into consideration things like shooting up causing arrows to fall short. That's what range increments are for though.

Anonymous Visitor 163 576 |

If you want 'realism', I've got two ideas.
You actually get a +1 for higher ground in 3.5. I haven't looked for in in the Pathfinder book yet, but who knows. It's an easy house rule to implement if it's not there.
If you're working with longer distances, you can treat range increments like flying movement. Range increments are halved going up, doubled going down, and the same going across.

![]() |

Figure out the distance for each dimension in squares (i.e. 4 squares forward, 2 squares left, 5 squares up) then take the longest and add half (round down) of the next longest, forget about the third it's for free.
Don't drop the third one, that's not a true distance, you are only calculating in 2 dimensions.
The exact, proper, 3D formula is:
Highest Dimension + 1/2 2nd + 1/2 3rd.
So, given the example of 4, 2, 5
5 + 4/2 + 2/2 = 8
I've mapped this out on a computer and it is exact.
This is for determining ranges and spell effect areas only though. I believe the rules for flying are different. You calculate your flat distance normally, then add any changes in altitude. At least that's how we play it. It makes it easier to determine rates of climb and such which can get really complicated during play otherwise.

![]() |

I've searched everywhere on rules for this and cant find anything, basically it boils down like this
Im a wizard flying 30ft. in the air and a ranger 15ft. away from the square I'm flying over wants to shoot me.
What would be the distance for him to shoot (for range penalties and what not) and how do you determine distance in three dimensions like that.
some help on this or rules references would be very helpfull
a friend referenced the pythagorean theorem but if you use that the book should have something about it
Dragon issue 291 p. 62 has a chart that extrapolates 3-dimensional distances (it was created for underwater combat but it's the same idea). I'm fairly certain you can stil buy it from the store in both physical and pdf form.
Z

Rezdave |
Don't drop the third one, that's not a true distance, you are only calculating in 2 dimensions.
Actually, any Line segment is only 2-dimensions.
The exact, proper, 3D formula is:
Highest Dimension + 1/2 2nd + 1/2 3rd.
SNIP
I've mapped this out on a computer and it is exact.
That is neither the "exact" nor "proper" formula.
The formula is:
Distance = SQRT ( Height^2 + ( Over^2 + Across^2 ) )
Basically, it's a nested pair of Pythagorean calculations.
R.

![]() |

Osprey71 wrote:Don't drop the third one, that's not a true distance, you are only calculating in 2 dimensions.Actually, any Line segment is only 2-dimensions.
Actually, A line segment is only 1 dimensional... length is a single dimension. But to calculate that length in 3D space you can't just simply ignore the the 3rd positional coordinate, just like you can't ignore the 2nd coordinate (unless you are playing 4e).
The charts are probably correct, but you must 1st calculate your 2d position normally, taking in both the X and Y coordinates. The chart then tells you the lookup based on 3rd dimension, Z.
Osprey71 wrote:The exact, proper, 3D formula is:
Highest Dimension + 1/2 2nd + 1/2 3rd.
SNIP
I've mapped this out on a computer and it is exact.
That is neither the "exact" nor "proper" formula.
The formula is:
Distance = SQRT ( Height^2 + ( Over^2 + Across^2 ) )
Basically, it's a nested pair of Pythagorean calculations.
R.
Do you use Pythagorean calculations to find distances in 2d using the battlemap? That's not how the RAW defines it.
My calculations are based on game terms, using the rules for moving diagonally in another dimension.Have you ever seen a 3D representation of a fireball using 5' cubes? I'm having trouble googling it at the moment, but I've compared my calculations with those volumes and the are identical.
So, in terms of the game, it is exact, and also very simple. If you prefer using a chart, I'm sure those are very effective as well (though I haven't tested it against the formula).

gbonehead Owner - House of Books and Games LLC |

Do you use Pythagorean calculations to find distances in 2d using the battlemap? That's not how the RAW defines it.
My calculations are based on game terms, using the rules for moving diagonally in another dimension.
This.
It's not a simulation, and anything that slows the gameplay for a small percent optimization of 'realism' *koff* is undesirable at my table.
Note that I don't view square circles as a small change, but for me using 1.5 instead of 1.414 is pefectly fine.

james maissen |
Don't drop the third one, that's not a true distance, you are only calculating in 2 dimensions.
Actually this is the distance in D&D rules. It is certainly not the real world euclidean distance, but c'est la vie.
When you look to something that is adjacent but diagonal to you in all 3 dimensions it is still 5' away from you. It's distance does not increase for being raised up 5' vertically even though the euclidean distance does increase.
That's 3.X D&D and pathfinder didn't change it. 4e changed it even more simply (or dumbed down if you prefer) but again c'est la vie.
-James

![]() |

Osprey71 wrote:
Don't drop the third one, that's not a true distance, you are only calculating in 2 dimensions.
Actually this is the distance in D&D rules. It is certainly not the real world euclidean distance, but c'est la vie.
When you look to something that is adjacent but diagonal to you in all 3 dimensions it is still 5' away from you. It's distance does not increase for being raised up 5' vertically even though the euclidean distance does increase.
That's 3.X D&D and pathfinder didn't change it. 4e changed it even more simply (or dumbed down if you prefer) but again c'est la vie.
-James
Yes, if it is adjacent in all three dimensions then I agree, it is only 5 feet away no matter what, but that works with the formula I gave, as long as you are rounding down before adding them up, which you should do (I should have specified that).
That would be:
1 + floor(1/2) + floor(1/2) = 1
drop all fractions before adding.
but you still have to account for all three dimensions to get an accurate range in game terms. It specifies that every other square counts as 2 squares of movement, it doesn't limit that to the 3rd dimension.

Rezdave |
Actually, A line segment is only 1 dimensional...
My bad ... was typing to quickly and not proof-reading while also focused on getting a house insured.
Point = 0 D
Line = 1 D
Plane = 2 D
Space = 3 D
I know better :-(
As for the equation, you should be careful about using terms like "exact" and "proper". My function was "exact" but what specifically is "proper" should be in the rule books, and there seems to be some debate on that.
Personally, I still like Paul Watson and AdAstra's suggestions best for pure elegance and simplicity.
R.

james maissen |
Yes, if it is adjacent in all three dimensions then I agree, it is only 5 feet away no matter what, but that works with the formula I gave, as long as you are rounding down before adding them up, which you should do (I should have specified that).That would be:
1 + floor(1/2) + floor(1/2) = 1drop all fractions before adding.
but you still have to account for all three dimensions to get an accurate range in game terms. It specifies that every other square counts as 2 squares of movement, it doesn't limit that to the 3rd dimension.
Just as you don't have to move forward then move right to move diagonally rightforward, you can take a diagonal directly upforwardright, rather than rightforward then straight up.
To whit you are moving through just 1 square, not 2.
Likewise traveling along THAT diagonal you would not have to pay more than 2 squares for entering any 1 square (assuming perfect flight here), right?
You would pay 1 square then 2 squares, and rinse repeat as you moved diagonally.
Or do you feel that you should pay 3 squares for entering that square?
-James

![]() |

As for the equation, you should be careful about using terms like "exact" and "proper". My function was "exact" but what specifically is "proper" should be in the rule books, and there seems to be some debate on that.
Yes, I should know better than using terms like that ;)
Just as you don't have to move forward then move right to move diagonally rightforward, you can take a diagonal directly upforwardright, rather than rightforward then straight up.To whit you are moving through just 1 square, not 2.
Likewise traveling along THAT diagonal you would not have to pay more than 2 squares for entering any 1 square (assuming perfect flight here), right?
You would pay 1 square then 2 squares, and rinse repeat as you moved diagonally.
Or do you feel that you should pay 3 squares for entering that square?
-James
Yes, 3.
If you were measuring diagonally forward left and upward it would be like so:
1,1,1 = 1 + 0 + 0 = 1
2,2,2 = 2 + 1 + 1 = 4
3,3,3 = 3 + 1 + 1 = 5
4,4,4 = 4 + 2 + 2 = 8
So every other double diagonal square counts as 3 instead of 1. Since every other normal diagonal counts as +1 square and you are adding an additional diagonal move for an additional +1.

Sunaj Janus |

Just imagine a vertical plane the same way you already have a horizontal plane. If you want to go at an angle, every time you go diagonal you count the first step as two, the next as one, and continue alternating, do the same for the vertical space. For instance, if your horizontal setup is this
| | | | |
----------
|W| | | |
----------
| | | | |
----------
| | | | |
----------
| | | |R|
With "W" being a wizard and "R" being a ranger, with each square being 5 feet, they are considered 25 feet away, or 3 diagonal squares, with every other one counted as 2. Pythagorean theorem would give us (3^2)+(3^2)=c^2 or 4.24 squares, or 21.2 feet. 25 is close enough for game turns for several reasons:
1) You always round up for things like this, it is outside of 20 feet, it is considered 25 feet away.
2) because you are in a 5:5 square you placement isn't exact anyways, if I stand at the back of a 5 foot square and you stand towards the front of yours, we are effectively more than 5 feet away, however for convenience of gaming and smooth rules we can use rounding to the nearest convenient 5 foot mark.
3) Number two can be applied further in 3 dimensions. For instance if a person is 6 feet tall and firing a arrow from eye level, they are shooting from over 5' in the air, meaning they are on the next square upwards. However for the sake of simplicity we don't count it as such, a medium person is considered to be firing from the 5/5/5 cube that they stand in. It is the same as a dwarf and an elf being able to fit though the same size opening regardless of girth. If they were large they would be firing from the 10/10/10 cube they were standing in so they would be considered closer.
Anyways you are 25 feet away from each other horizontally. Now lets say the wizard is 15 feet in the air. This means we have a vertical plane that looks like this.
| | | | | |W| |
----------------
| | | | | | | |
----------------
| | | | | | | |
----------------
|R| | | | | | |
once again counting every other vertical space as two, we have a distance of 7 blocks or 35 feet total distance between the two characters. With a bit of practice this can be applied quite quickly in games and uses the exact same rules as horizontal movement and range applied to a vertical surface after being applied horizontally. Putting everything into terms of 5' is meant to keep things simpler, not to keep them super accurate.
edit: wow, my illustrations looked a lot better when I made them, if you copy and paste this into notepad you will have a nice mono space font that will properly show what I was trying to say.

Ravingdork |

You actually get a +1 for higher ground in 3.5. I haven't looked for in in the Pathfinder book yet, but who knows. It's an easy house rule to implement if it's not there.
It's still in there. From the Mounted Combat section of the Combat chapter:
"When you attack a creature smaller than your mount that is on foot, you get the +1 bonus on melee attacks for being on higher ground."

spaceLem |

Do you use Pythagorean calculations to find distances in 2d using the battlemap? That's not how the RAW defines it.
My calculations are based on game terms, using the rules for moving diagonally in another dimension.
It's the Euclidean distance (d2 norm), rather than the Pythagorean distance ;)
If you care about the exact distance, then it is sqrt(x^2 + y^2 + z^2), where x,y,z are the distance along each axis. We know that the ranger is sqrt(x^2+y^2) = 15 feet away from directly below the wizard, distance is sqrt(30^2+15^2) = sqrt(1125) = 33.5.
If you don't care about the exact distance, then just use the d-infinity norm, and count the distance as the largest component, which in this case is 30 (the relative error is only 12%). This happens to be the way 4e does it, and it is perfectly good enough. The worst case scenario, if the two people are exactly on the diagonals, you'll have a relative error of 42%, which I doubt is that important considering the ease of calculation.
Yes, I do maths for a living.

![]() |

TwilightKnight wrote:It really only takes a few seconds and a $5 hand-held calculator with a square root button.Or an awesome range calculator!
printed it out, awesome, this will come in really handy in my games.

Jason S |

Sorry to resurect, but I was looking for information on this.
The problem with using the Pythagorean theorem, is that you may be calculating the exact distance to the object, but fighting gravity will definitely have an effect on both the power, speed, and accuracy of any projectile. It really should be calculated differently.
It's just makes common sense, would you rather be firing down on your opponents or firing up? I think everyone knows how deadly higher ground can be (even in modern warfare where bullets don't lose power).
If you want 'realism', I've got two ideas.
If you're working with longer distances, you can treat range increments like flying movement. Range increments are halved going up, doubled going down, and the same going across.
This is the best idea I've seen so far, both in terms of realism and in terms of fast gameplay. "Range increments are halved going up, doubled going down, and the same going across".
Is the Pythagorean theorem really the official Paizo answer?