Server Message: Alliances

The Alliance packet contains data for Alliance events, like inviting a guild or creating a new Alliance.

Base structure
This structure is always used at the beginning of the packet XX XX || Short, Header XX || Byte, Type

0x0C, Alliance Main Data
This packet is sent before the Alliance Guilds Data packet. It contains the alliance ID, alliance name and all guild IDs. This packet and the Allaince Guilds Data packet are sent when the player logs in and it has an Alliance. XX || Boolean, if the packet contains the Alliance data -- If above boolean is true -- Alliance data, see Alliance Data Structure -- End if

0x0D, Alliance Guilds Data
This packet is sent after the Alliane Main Data packet, and contains all data from every Guild. XX XX XX XX || Integer, Amount of guilds -- For each guild in alliance -- Add Guild Data, see Guild Data Structure -- End for

Alliance Data Structure
XX XX XX XX || Integer, Alliance ID XX XX ... || String, Alliance name -- For each Alliance rank title XX XX ... || String, Alliance Rank title -- End for XX || Byte, Amount of Guilds in the alliance -- For each Guild in alliance XX XX XX XX || Integer, Guild ID -- End for XX XX XX XX || Integer, Alliance Capacity XX XX ... || String, Alliance Notice