Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

CMessage (0x3A)

Previous: CMenuCode | Client action index | Next: CBulletin

CMessage is client-to-server action 0x3A in the 4.21 protocol.

Direction: client to server

Encrypted: Yes. See Sequence and XOR Transformation.

Payload offsets begin with the first byte after the action. The frame marker, frame length, action, sequence, and trailing zero are excluded.

Payload format

OffsetWidthFieldEstablished meaning
0x001dialog_typeType byte retained from the server-created message dialog.
0x014object_idBig-endian object identifier retained by the dialog.
0x052pursuit_idBig-endian server pursuit or interaction identifier.
0x072next_stepBig-endian stored step value plus one.
0x091response_typeValue 1 in the confirmed question-answer builders.
0x0A1answerSelected answer index passed to the dialog’s answer virtual.

Queue call sites

Queue callContaining IDA functionFunction address
Darkages.exe:0x0047E85Csub_47E7D0Darkages.exe:0x0047E7D0
Darkages.exe:0x0047F9ACsub_47F920Darkages.exe:0x0047F920
Darkages.exe:0x0047FA89sub_47F9C0Darkages.exe:0x0047F9C0
Darkages.exe:0x004805CCsub_480540Darkages.exe:0x00480540
Darkages.exe:0x004806A9sub_4805E0Darkages.exe:0x004805E0
Darkages.exe:0x0048113Csub_4810B0Darkages.exe:0x004810B0
Darkages.exe:0x004812AEsub_481150Darkages.exe:0x00481150
Darkages.exe:0x00481EECsub_481E60Darkages.exe:0x00481E60
Darkages.exe:0x0048205Bsub_481F00Darkages.exe:0x00481F00
Darkages.exe:0x00482B5Csub_482AD0Darkages.exe:0x00482AD0
Darkages.exe:0x00482F1Csub_482B70Darkages.exe:0x00482B70

Confirmed question answer form

ui_question_message_dialog_send_answer and ui_question_message_face_dialog_send_answer each submit 12 logical bytes including the action, exactly matching the fields above. These dialogs are created by SPursuitMenu subtypes 2 and 6. Other CMessage builders use related dialog variants and still require separate field comparison before their additional semantics are named.

See UI, Input, and Packet Flows.