Table of Contents

Unicode TextEntry (0xC2)

Moongate Packet Classes

  • UnicodeTextEntryPacket (Incoming, Variable, length -1) from src/Moongate.Network.Packets/Incoming/Speech/UnicodeTextEntryPacket.cs

Current Moongate Behavior

Moongate currently has packet classes for this opcode.

Packet Build

Type Field
BYTE[1] cmd
BYTE[2] length
BYTE[4] player id
BYTE[4] message id

If (server_version of this packet)

Type Field
BYTE[10] all 0's .. have to be there, otherwise client crash

If (client_version)

Type Field
BYTE[4] unknown, always 1
BYTE[3] language code, i.e. DEA, ENU etc.
BYTE[?] unicode Text

Subcommand Build

N/A

Notes

Client version is the reply packet. Server starts with a server side 0xc2. server can pick any message id to identify it. The next text entry from client after 0xc2 server side is client reply with a 0xc2 sent back. First 11 bytes relayed from server packet, plus 0 0 0 1 plus 3 bytes language code + Unicode text. Server side packet always has length 0x15.