now with 60fps support using frame smoothing (if you have the addon)
A massive thanks to @sly_i for the pointer on file compression. I had no idea that file formats were preserved when imported into scratch, I lazily assumed that images would be converted all to the same, rather large format. This was quickly debunked by sly_i's rickroll project, which showed that images could have file sizes massively reduced by converting to AVIF as opposed to PNG. That optimization alone made this project possible. I used his method on this project, exporting to png and then converting to AVIF using imagemagick and the command prompt. I'm noticing annoying artifacts, but I am seeing significant file reduction. The artifacts seem to come from converting to AVIF. Maybe there's a solution I'm not aware of. -compress Lossless didn't appear to do anything, so I'm not sure how to fix this. Oh well. This is also using the more efficient use of space seen in the Sonic Mania projects, so I'm trying to max out what I can get from these projects. I also debunked my previous theory that the timer was inaccurate. This was more of a problem in scratch 2 that appears to be fixed. In scratch 2 the timer would run on intervals of 0.05 seconds, and would be based on frame time, not an external clock, making it susceptible to interference by lag. This has since been changed in scratch 3, as it is now running on an external clock with significantly more precision. I'm using it to keep any random bumps or stutters from throwing off the animation sync too much.