This document focuses on the issues present on official Classic Battle.net™ servers.
- Ghosts in channels
- IP ban allows partial handshake
- Noticeable delay in chat events
- Reconnecting too fast causes key in use
- Spam filter silently drops messages
- System-generated friend whispers use incorrect locale
- Squelch no longer mutes by IP
Ghosts in channels
If an individual server in a realm restarts, all users in that particular server remain in channel permanently for all other servers in that cluster, until a global server restart occurs.
It is also possible to cause a user to ghost in a channel by reconnecting in succession fast enough to cause the server not to remove the user from online presence. The exact methodology to reproducing this effect is still in testing. Once this occurs, the user will remain online indefinitely until next server restart. Clients looking for "invisible" users will notice the product icon may change entirely if the user logs on and enters the channel with a different game than the ghost user had been using, other clients will simply notice two users with the same username in channel since EID_SHOWUSER/EID_JOIN are interpreted as never being non-unique.
IP ban allows partial handshake
When sending invalid or too frequent messages to the server, an IP ban is issued. A further attempt to reconnect used to disconnect the connection immediately, ignoring any data that followed from the client. Currently, the handshake progresses through until SID_AUTH_CHECK is sent, then it hangs until exactly 1 minute later the connection is disconnected.
It is assumed that this is intentional, so that Blizzard can learn of additional IP addresses and game keys from previous offending users.
Noticeable delay in chat events
When receiving SID_CHATEVENT, there are many event ids that seem to cause some sort of a delay of about 150-230ms*.
- Immediately after a EID_CHANNEL, the following EID_SHOWUSER events are delayed.
- Immediately after a EID_WHISPERSENT to yourself, the following EID_WHISPER event is delayed.
- Immediately after a sending a chat command for querying your friends list, an EID_INFO is received with the message
Your friends are:, then the delay occurs, followed by additional EID_INFO(s) containing your friends.
These delays appear to be present regardless of realm or individual server IPs in each cluster.
* Measured using Wireshark and own ping is removed.
Reconnecting too fast causes key in use
When connected with a game key, the key is considered in use. If reconnecting within a short time span, around less than 500ms, the key will still be in use. After the delay, the key is no longer in use and reconnecting works normally.
This may be related to the noticeable delay in chat events.
Spam filter silently drops messages
Battle.net's new anti-spam system will sometimes drop messages arbitrarily without notifying the user, even if you aren't necessarily "spamming". There is presently no implemented solution to determine on the fly when this is happening.
System-generated friend whispers use incorrect locale
When the server sends a notification via whisper about your friend, it uses your friend's locale instead of your locale to notify you of the event. So for example, if your Spanish friend enters a game and you're English, the system uses Spanish locale to tell you instead of your native English locale.
Squelch no longer mutes by IP
The /squelch command no longer ignores all users on the target's IP address. This is probably unintentional and related to the tunneling system that StarCraft uses.