Clan System Overview

This is a description of WarCraft III's clan system on Battle.net.

On Classic Battle.net, WarCraft III clients share a clan system, allowing users to join a group of other users for the purpose of sharing a tag in channel, a dedicated channel, and profile statistics.

Structure

Clans can have between 10 and 100 members. This list of members is available to every client in the clan next to the Channel and Friends tabs. Non-members may use that tab instead to create a clan.

Rank values

Members of clans can have one of these ranks:

There is always exactly one with rank "Leader", and a maximum of 5 can be promoted to "Officer" at one time.

First week restriction

Clan actions in general have a cooldown period of one week.

When invited to a clan, whether it created the clan or not, members are in a probation period of that one week and cannot be promoted, removed, or leave. Once the week has passed, members are promoted to "Member" rank and can now be promoted, demoted, or removed. They cannot be returned to the special "Initiate" rank of 0x00, but can be demoted to the normal "Initiate" rank of 0x01. When creating a clan, all members are of rank "Initiate" 0x00 except the creator who is of rank "Leader".

Officers and Leaders can promote, demote, or remove Members and Initiates (as long as they are not in their first week).

Only Leaders can promote members to Officers (as long as the target is not in their first week) and demote them back to Members. Only Leaders can disband the clan entirely (as long as the clan is one week old). Only Leaders can transfer ownership to another member (as long as the target is not in their first week).

Any non-Leader can leave a clan at any time after their first week. There are additional restrictions disallowing creation of clans within the first week by using different accounts.

Tag and clan channel

Once created, members have a clan tag visible in any channel they join and on their user profile. The clan tag is a two-to-four character (alphanumeric, A-Za-z0-9) string. To send or receive this tag in the protocol, you must convert or store it as a four-byte UINT32, as described in the Classic Battle.net section on FourCCs.

This tag appears in the Chat Statstring for users in reverse and without any null bytes. For example, the clan tag "SX1" will be seen as "1XS" in the statstring and as the FourCC 'SX1\0' in all other parts of the protocol.

Members of the clan are sent to the home channel "Clan TAG" automatically when they log on or the clan is successfully created. In the above example, this will be the channel "Clan SX1".

Members with rank "Leader" and "Officer" are automatically given operator status in this clan channel. Only members can join the clan channel if it is empty or set to "private" using the "/clan private" Chat Command.

Leaders and Officers can manage the clan message of the day (MOTD) using the "/clan motd" Chat Command or the C>S 0x7B SID_CLANSETMOTD message. This message is received every time any member enters the clan channel as a S>C 0x0F SID_CHATEVENT 0x12 EID_INFO.

Messages

The clan system is supported by the Classic Battle.net messages between 0x70 and 0x82.

Cookies

All request-response message pairs in the clan system use a UINT32 value called a "cookie" to keep track of them. The official client sends a number that counts up for each use, but any value can be used in order to keep track of your requests.

Response codes

These messages share the same response codes. The exact meaning of the code, and the appropriate response to it, varies from message to message, but they all have the same basic meaning.

| Edited: Kyro

Comments

Leaky

thanks to brew for the 0x0C status code

Heinermann

Pulled these from wc3 tft beta:
0x00 CLAN_RESULT_SUCCESS
0x01 CLAN_RESULT_NAMEINUSE
0x02 CLAN_RESULT_TOOSOON
0x03 CLAN_RESULT_NOTENOUGH
0x04 CLAN_RESULT_DECLINE
0x05 CLAN_RESULT_UNAVAILABLE
0x07 CLAN_RESULT_NOTAUTHORIZED
0x08 CLAN_RESULT_NOTALLOWED
0x09 CLAN_RESULT_CLANFULL

Caaaaarrrrlll

Updated document as per Heinermann's documenting.