Chat Message (0xB2)
- Status:
implemented - Direction:
Server - Length:
Variable - POL reference: https://docs.polserver.com/packets/index.php?Packet=0xB2
- Last modified in POL docs:
2009-03-02 07:56:24byTurley
Moongate Packet Classes
ChatCommandPacket(Outgoing, Inherited, lengthInherited) fromsrc/Moongate.Network.Packets/Outgoing/Speech/ChatCommandPacket.cs
Current Moongate Behavior
Moongate currently has packet classes for this opcode.
Packet Build
| Type | Field |
|---|---|
BYTE[1] |
cmd |
BYTE[2] |
length |
BYTE[2] |
messageType |
Messagetypes will be listed as Subcommands.
Subcommand Build
Messagetypes 0x0001 - 0x0024:
| Type | Field |
|---|---|
BYTE[4] |
unknown (00 00 00 00) |
BYTE[len-9] |
Unicode for %1 if the message type has a %1 variable for inputting text. |
BYTE[2] |
Null Terminator if there is a %2 Unicode element. (00 00) |
BYTE[len-(2+%1+9)] |
Unicode for %2 if the message type has a %2 variable for inputting text. |
BYTE[2] |
Null Terminator for Packet (00 00) |
Messagetypes 0x0028 - 0x002C:
| Type | Field |
|---|---|
BYTE[4] |
unknown (00 00 00 00) |
BYTE[len-9] |
Unicode for %1 if the message type has a %1 variable for inputting text. |
BYTE[2] |
Null Terminator if there is a %2 Unicode element. (00 00) |
BYTE[len-(2+%1+9)] |
Unicode for %2 if the message type has a %2 variable for inputting text. |
BYTE[2] |
Null Terminator for Packet (00 00) |
MessageType 0x0025 (Message), 0x0026 (Emote), 0x0027 (OOC):
| Type | Field |
|---|---|
BYTE[3] |
Language Code (ENU for english) |
BYTE[1] |
Null Terminator (00) |
BYTE[2] |
Message from (see notes) |
BYTE[?] |
Username in Unicode |
BYTE[2] |
Null Terminator for Username (00 00) |
BYTE[?] |
Unicode Message Sent |
BYTE[2] |
Null Terminator for Message |
MessageType 0x03E8 (create conference):
| Type | Field |
|---|---|
BYTE[4] |
Unknown (00 00 00 00) |
BYTE[?] |
Unicode Channel Name |
BYTE[2] |
Null Terminator for Channel Name (00 00) |
BYTE[2] |
Password Setting (00 30 = No Pass, 00 31 = Password required) |
BYTE[2] |
Null Terminator for packet (00 00) |
MessageType 0x03E9 (Destroy conference):
| Type | Field |
|---|---|
BYTE[4] |
Unknown (00 00 00 00) |
BYTE[?] |
Unicode Channel Name |
BYTE[4] |
Unknown (00 00 00 00) |
MessageType 0x03EB (Display Enter Username window):
| Type | Field |
| --- | --- |
| BYTE[8] | Unknown (00 00 00 00 00 00 00 00) |
MessageType 0x03EC (Close Chat):
| Type | Field |
|---|---|
BYTE[8] |
Unknown (00 00 00 00 00 00 00 00) |
- MessageType 0x03ED (Username accepted, display chat):
| Type | Field |
|---|---|
BYTE[4] |
Unknown (00 00 00 00) |
BYTE[?] |
Unicode Username |
BYTE[4] |
Null Terminator (00 00 00 00) |
MessageType 0x03EE (Add User):
| Type | Field |
|---|---|
BYTE[4] |
Unknown (00 00 00 00) |
BYTE[2] |
User Type (see notes) |
BYTE[?] |
Unicode Username |
BYTE[2] |
Null Terminator (00 00) |
MessageType 0x03EF (Remove User):
| Type | Field |
|---|---|
BYTE[4] |
Unknown (00 00 00 00) |
BYTE[?] |
Unicode Username |
BYTE[2] |
Null Terminator (00 00) |
MessageType 0x03F0 (Clear All Players):
| Type | Field |
|---|---|
BYTE[8] |
Unknown (00 00 00 00 00 00 00 00) |
- MessageType 0x03F1 (You have joined the %1 Conference):
| Type | Field |
|---|---|
BYTE[4] |
Unknown (00 00 00 00) |
BYTE[?] |
Unicode Conference Name (%1) |
BYTE[4] |
Unknown (00 00 00 00) |
Notes
MessageTypes 0x0001 - 0x0024 and 0x0028 - 0x002C: Directly from Chat.enu file:
0x0001: You are already ignoring the maximum number of peolpe.
0x0002: You are already ignoring %1.
0x0003: You are now ignoring %1.
0x0004: You are no longer ignoring %1.
0x0005: You are not ignoring %1.
0x0006: You are no longer ignoring anyone.
0x0007: That is not a valid conference name.
0x0008: There is already a conference of that name.
0x0009: You must have operator status to do this.
0x000A: Conference %1 renamed to %2.
0x000B: You must be in a conference to do this. To join a conference, select one from the Conference menu.
0x000C: There is no player named '%1'.
0x000D: There is no conference named '%1'.
0x000E: That is not the correct password.
0x000F: %1 has chosen to ignore you. None of your messages to them will get through.
0x0010: The moderator of this conference has not given you speaking privileges.
0x0011: You can now receive private messages.
0x0012: You will no longer receive private messages. Those who send you a message will be notified that you are blocking incoming messages.
0x0013: You are now showing your character name to any players who inquire with the whois command.
0x0014: You are no longer showing your character name to any players who inquire with the whois command.
0x0015: %1 is remaining anonymous.
0x0016: %1 has chosen to not receive private messages at the moment.
0x0017: %1 is known in the lands of Britannia as %2.
0x0018: %1 has been kicked out of the conference.
0x0019: %1, a conference moderator, has kicked you out of the conference.
0x001A: You are already in the conference '%1'.
0x001B: %1 is no longer a conference moderator.
0x001C: %1 is now a conference moderator.
0x001D: %1 has removed you from the list of conference moderators.
0x001E: %1 has made you a conference moderator.
0x001F: %1 no longer has speaking privileges in this conference.
0x0020: %1 now has speaking privileges in this conference.
0x0021: %1, a conference moderator, has removed your speaking privileges for this conference.
0x0022: %1, a conference moderator, has granted you speaking privileges in this conference.
0x0023: From now on, everyone in the conference will have speaking privileges by default.
0x0024: From now on, only moderators will have speaking privileges in this conference by default.
0x0028: The password to the conference has been changed.
0x0029: Sorry--the conference named '%1' is full and no more players are allowed in.
0x002A: You are banning %1 from this conference.
0x002B: %1, a conference moderator, has banned you from the conference.
0x002C: You have been banned from this conference.
MessageTypes 0025, 0026, and 0027: Message from is as follows:
0x0030 = user, 0x0031 = moderator, 0x0032 = muted, 0x0034 = me, 0x0035 = system
MessageType 03EE:
- User types are 0030 for User, 0031 for Moderator, and 0032 for Muted User.