All my Christmas shopping is done (wrapping not started), and things are really looking stable on BYOND's end with the 512 build. I put out a new release today, 512.1461, that fixes some issues discovered either over the weekend or on Monday.

Also I decided to make the palette control—used by the pixmap editor page and also the global color edit dialog—a little better. The transparent mask color now displays as a checkerboard, and also the palette control can now scroll if it's just too big. By request, the colors-in-use box can hold more colors now, too, which was part of the reason I added scrolling. On a similar note, the global color edit dialog can widen if it ends up having a lot more height than width, but if it still starts to feel cramped it will max out at a certain size and use a scrollbar.

It's very likely I won't have any more bugs to fix between now and Friday. I did decide to go back into the client rendering chain to see if I could improve a routine that grabs visibility flags from the map (opacity, luminosity, etc.), because one particular routine was bugging me the last time I made optimizations there. Specifically, I was able to get rid of a lot of unnecessary lookups by combining the flags for each tile into one routine: but another one, GetMovingVisParamsAt(), I could not. That routine looks at all current gliders, so the way it gets used means it has O(nm) performance: where n is the number of tiles, m is gliders. That's absolutely terrible. I've built a new routine, finally, that just goes through all the gliders and will set the flags appropriately for whatever turfs they're currently moving onto. However I didn't want to put that into the release build, even though it's ready to go, because rocking the boat at this point would be so stupid. That'll be a 513 enhancement—a minor one, but an enhancement nonetheless.

Little things like that, and clearing some debris in advance of 513, are probably going to be the next two days for me. After that it's Christmas vacation.