ID:95139
 
This issue has been marked as a duplicate of id:114074
Applies to:Dream Daemon
BYOND Version:484
Operating System:Windows XP Pro
Web Browser:
Status: Duplicate

This issue has been marked as a duplicate of id:114074
I'll specifically link to a post that Spuzzum made which garnered no responses:
http://www.byond.com/developer/forum/?id=303153&view=1

Updating of objects in client.screen whether it be their screen_loc or icon_state happens instantly, however if you start changing an object's overlays, there's noticable lag or at best, a small delay before changes are made.

This mainly affects games using TILED_ICON_MAP which need to create bigger icons using overlays. While you could work around this by placing objects on the map, that's not ideal in a situation where you would like the functionality and ease of use of screen objects.
I bet this has something to do with the way appearances are handled. A lot of things like screen objects send out their appearances in advance of the screen message so the client will have access to them, but I doubt we're drilling down to look at the overlays and underlays recursively.
Just a followup: I've looked at the code and from what I can tell we are in fact drilling down to the overlays and underlays. So that doesn't fit what I thought the problem was. I think I'll need an example of a game that experiences this problem.

In the case of that forum thread I think the problem is simply that every time you set the overlays to something specific you're generating a new Appearance and that means more messages are being sent out. In his case I think it generated a lot of those, because each overlay would have a different pixel offset and such.
Update: I believe this issue is actually a bug. Specifically, I believe it's identical to issue 3102 reported by SuperAntx. When 485 is available, please retest.
I tested with 485 and it looks like this has been fixed.