I never replied to this because you were literally the first person I told once I figured it out! I thought you wanted someone else's opinion. I guess I wasn't clear enough.
The easiest way, I've found, is to create a custom script. To do that just make a text file and then rename it to .c after you're done. All you're gonna do is tell the object to find itself, and then scale itself. In the script you multiply 256 by the scale factor, so it'll look like this:
void main()
{
void self = getlocalvar("self");
setdrawmethod(self, 1, 280, 280, 0, 0, 0, 0, -1, 0, 0, 0, 0);
}
The script works with EVERYTHING it can do, so all those 0s are for all the other things drawmethod can effect. Like flipping the frame, or making it transparent, or changing the palette. The -1 there is for the palette, actually; so it keeps the palette it's mapped to instead of switching. Cause 0 is the default palette.
Then you'd put a reference to that script in under the animationscript subheader which probably has something there anyway. It'd look something like:
animationscript data/scripts/grabscript.c
script data/scripts/95.c
Now I did encounter some issues when I first tested this on your sprites: they dang vanished. I had to divide all the offsets by 2 in order to get them back on screen. But I haven't encountered that issue doing any other scaling; although it's less dramatic than half.
All in all, really helps. There's still some wonkyness, but you don't have to smash your sprites down to nothing to get them working in an environment that can't go any higher than 800p tall.