I haven't looked at the current protocol, so I don't know how much work it would be, but here are some thoughts for how we should do it to maximize efficiency: Messages should be binary, not ASCII. It makes reading the stream more difficult, but saves lots of bandwidth. Each message should start with a 32-bit message type code. We can then define a range of messages that are frequent messages. For example, there could be message types that indicate the presence of a spell effect on the same square as the player. Hence, if 7 fears, 3 icestorms, and 9 slows show up on your square, you only have to receive 19 words. So we can define a standard set of objects that can be sent with just a single code. Special objects will take multi-part messages to send name and weight information, but that's not a problem as long as we get all the spell effects and other really common items. --PC