sampy/notes/packet_writeup.md
2020-04-04 16:04:40 +02:00

726 B

General packet

Client to server spesific

  • Encode (encrypt) data
    • use first byte as checksum
      • every byte ^ 0xAA added together
    • xor
      • Server port ^ 0xCCCC
      • Every other byte
    • Lookup table (use byte as indexing value)

Shared

  • Can be internal packet

Internal packet

condition name bit length type notes
messageNumber 0x10 ushort
reliability 0x04 uchar Has to be over 5 (value > 5)
reliability in (7, 10, 9) orderingChannel 0x05
reliability in (7, 10, 9) orderingIndex 0x10 ushort
isSplitPacket 0x01 bool Drop packet as we no longer support split packet?
isSplitPacket == 0 dataBitLength 0x10 ushort
isSplitPacket == 0 data dataBitLength uchar*