I always intended to have animation in Tilemap Town work on units of 0.1 seconds, like BYOND does. That's a pretty convenient amount of time to work with, where it's a clean 100 milliseconds, and you can make it out of 6 60 Hz frames or 5 50 Hz frames, so NTSC and PAL machines can display animations the same with a consistent framerate. The web client has been playing animations at about 60% the intended speed until now; I noticed that while working on the 3DS version (because messing up that kind of thing is a lot harder on a game console than in a web browser) and I've been unsure if I want to fix it, because changing it would affect preexisting stuff people built. But I tried the change anyway, and I don't think anything was changed for the worse. Most preexisting animations people made run at the fastest available speed and now they animate more smoothly, and the artistic intent seems preserved? The Easy RPG animated water needed an adjustment so I made that change; for tiles that are actually part of the server-wide tilesets it's nice that I can just change a number in one place and it changes it everywhere.
I used setInterval previously and now I'm using requestAnimationFrame and I'm actually checking timestamps to make sure I am actually measuring time correctly. I hope using requestAnimationFrame
and properly synchronizing the drawing fixes a problem I'd sometimes been running into where the screen would start flashing sometimes on my screen, as if the drawing and rendering lined up in a bad way where the blank canvas was getting shown.