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

1x2 Creatures Move Strangely on a Square Grid Map

1338862867
Gid
Roll20 Team
There is a snapping issue regarding oblong (1sq. by 2 sq. ratio) creature tokens (like a horse, worg, etc.) Most of the images for these creature types that can be found in the art resource library will have them cropped down to oblong dimensions. These images will require you to stretch the recently placed token back to a 1x2 ratio to make it look right. The problem arises when you rotate these creatures on a grid map. Because the token rotates from a center orientation, a 1x2square creature will snap to take up a 2x3sq space and will actually be snap-centered along a grid line rather than a grid square. You can see what I mean in the attachment I'm supplying. The only work around I've found is that one would need to download the graphic to the desktop, edit the canvas dimensions of the png to a square, and then import it into your campaign. Windows 7 Chrome 19.0.1084.52 Screen Resolution: 1366 x 768 Browser Size: 1366 x 610
I would like to make an addendum to this that may help: When you select an Aura for a token, it shows the Aura of the horizontal position, even when the token is turned vertically. If I had to hazard a guess, I'd say that the image-turning function does not actually alter the grid-space location of the token, just the rotation of the image. This makes it look like the token is sitting in the "center" of a 2x3 square, while the token's grid-space still thinks its in its same spot. You don't see this phenomenon with a square token because the square takes up the same grid space no matter which direction the image is facing. Edit: Racked my brain to figure out how to do this, then I remembered the basic problem. When you're rotating the image, you're not swapping the values of the height and width to match the new rotation: a 1x2 image that is turned 90° is now a 2x1 image. Whatever your snapToGrid function is, it will take care of the rest once you call it to the new position. If height equals width, bypass the rest of the code since turning it won't matter, and probably will not matter in the majority of situations. function changeRotation(counter counterToChange){ counterToChange._rotation +=90; if(counterToChange._counterHeight != counterToChange._counterWidth){ int saveCounterHeight; saveCounterHeight = counterToChange._counterHeight; counterToChange._counterHeight = counterToChange._counterWidth; counterToChange._counterWidth = saveCounterHeight; delete saveCounterHeight; if(doSnapToGrid){ snaptoGrid(counterToChange,counterToChange._x,counterToChange._y); } } } I really hope it's this simple, but I can't tell without a peek at the code. Lemme know if I've hit the broad side of the barn ;)