Transport Layer:User Datagram Protocol (UDP)
Application Layer:Starcraft In-Game Messages (SCGP)
Message Id:0x4A
Direction:Peer to Peer
Used By:Starcraft Original, Starcraft Broodwar
Starcraft Shareware, Starcraft Japanese
Message Format:
(does not include protocol header)
(UINT8) ID (0x4A)
(UINT16) Map Tileset
(UINT16) Map Width
(UINT16) Map Height
(UINT8[12]) OWNR
(UINT8[12]) SIDE
(UINT8[12]) OWNR Default
(UINT8[4]) FORC Flag


Packet CLS 1.

The tileset, width and height are not retrieved from the map in case it hasn't been downloaded yet-- these 3 values are used on failth.
Valid tilesets:
0x00 = Badlands
0x01 = Space Platform
0x02 = Installation
0x03 = Ashworld
0x04 = Jungle
0x05 = Desert
0x06 = Arctic
0x07 = Twilight

The OWNR values are the base room slot values. They are modified values from the map to fit the given game configuration.
The OWNR default is simply that, the default values from the map file.
The 12 bytes is for each possible player (1 to 12)
Possible values:
0x00 = Doesn't exist
0x02 = Human
0x03 = Rescuable
0x05 = Computer
0x06 = Open
0x07 = Neutral
0x08 = Closed
Note: OWNR of Rescuable and Neutral are not shown.

The SIDE tells you the race for each player. These are modified SIDE values from the map file, to fit the given game configuration.
1 SIDE byte for each possible player (1 to 12)
Possible values:
0x00 = Zerg
0x01 = Terran
0x02 = Protoss
0x03 = Independent
0x04 = Neutral
0x06 = Random

The FORC tells you the force/team index of each player.
For example, 0x00 would mean no team (like melee) and 0x01 to 0x04 means this player/slot belongs to this team.

The FORC Flag gives you the settings for each force.
0x01 = Random start locations
0x02 = Allies
0x04 = Allie victory
0x08 = Shared Vision

The RACE tells you if a player can change their race I think. I'm not to sure about the RACE part, but i'm pretty sure thats what it does. For example, disables a player from changing their race



no one has commented yet.