3 ms·
There's a trick you can do with squares that makes them much more accurate than normal; not sure how they would then compare to hexagons. Instead of treating e
by _bxg1 8y ago
There's a trick you can do with squares that makes them much more accurate than normal; not sure how they would then compare to hexagons.
Instead of treating each diagonal step as "1", you treat the first diagonal step as 1, the second as 2, the third as 1, the fourth as 2, etc. Averaged out, this makes diagonal movements cost 1.5 steps each, which happens to be attractively close to 1.414.
- dalore 8y agoSo you take the first diagonal step, which counts as 1 and then instead of going diagonal again you go one of the straights. Then you can go diagonal again for 1? or 2? Either way it now needs to keep track of your last diagonal. What's the rules? is it the second diagonal ever? or the second diagonal in a row? or the second diagonal in that turn? If I go a diagonal and come back the same way, is that now 3? If I have one movement point left, can I use it to traverse a 2 diagonal? This also means you need to keep state of the last movement and makes things a bit unclear to the user what the next movement point will cost.
- _bxg1 8y agoThe next diagonal would be 2; doesn't matter if the diagonals are sequential or not, each one alternates. If you're on 2 and you have 1 movement point left, you can't use it for a diagonal. You could track the state across turns for slightly more accuracy, though we haven't ever bothered to do that when we use this method in D&D. Even perfectly implemented, it's still just an approximation. But the simplest version works pretty well: "Every diagonal move, regardless of direction or sequence, alternates between costing 1 movement point and 2." And most of the time you're attempting to move in a straight line anyway, so you rarely have to deal with double-backs or non-sequential diagonals.
- fjsolwmv 8y agoIt's simpler to make diagionals 1.5 or 1.4 and then round when needed.