S>C 0x66 SID_FRIENDSUPDATE

Transport Layer:Transmission Control Protocol (TCP)
Application Layer:Battle.net v1 TCP Messages (SID)
Message Id:0x66
Message Name:SID_FRIENDSUPDATE
Direction:Server to Client
Used By:Starcraft Original, Starcraft Broodwar
Warcraft III Reign of Chaos, Warcraft III The Frozen Throne
Message Format:
(does not include protocol header)
  (UINT8) Entry number
  (UINT8) Status
  (UINT8) Location id
 (UINT32) Product id
(STRING) Location name

Remarks

Sent to clients supporting this packet when the friend-listed account's Status or Location id changes. Also sent if the client requests it with [SID_FRIENDSUPDATE]. The first friend is Entry number 0.

Note that there is a Battle.net server bug in which when you are automatically sent this packet for online mutual friends, the Product id, Status, Location id, and Location is your own values instead of your friend's. So if you were to be using WAR3, for example, and a friend signs on using SEXP, the Product id in this packet will be WAR3. To receive the correct Product id for the user, you may request another update for this user (by sending 0x66 back to the server with the same Entry Number), or request the full list again.

In addition, this packet is not sent to you automatically if the friendship is not mutual.

| Edited: Anonymous

Comments

idiat

The order of Friend Location and Friend Status should be flipped.

Davnit

I'm not sure if/when this was updated but the correct order is status and then location.

Also I do not appear to be getting sent this packet automatically from official servers anymore, even when a mutual friend changes location or status.