AOS REVIVALJoin Discord
Voxel engineers constructing a large timber structure in Ace of Spades Battle Builder
Wire intelligence // revision 168

Binary field manual

Every packet.Byte by byte.

A source-checked catalog of all retail Ace of Spades: Battle Builder packet IDs: direction, field order, encoding, byte width, implementation status, and the corrected layouts observed by the BattleSpades runtime.

119retail packet IDs
0–118complete ID range
1 bytepacket identifier
LEdefault byte order
Read this first

Where the bytes begin

The layouts below describe the decoded application packet. Byte zero is always the one-byte packet ID. ENet transport headers, the outer 0x30/0x31/0x32wrapper, LZF chunk framing, and any compression savings are not included in the displayed size.

Most numeric values are little-endian. A fixed16consumes two bytes and stores a sign-magnitude value at 1/64 precision. Orientation uses its own measured 1/8192 encoding. Strings are UTF-8-compatible bytes terminated by 00.

Decoded application payload
BYTE 0PACKET IDBYTE 1…NORDERED FIELDSVARIABLECOUNTED DATA

ENet → wrapper prefix → LZF chunks → packet ID → payload

Evidence labels
Live-verified
Confirmed against a clean retail client, captures, or an active two-client path.
Implementation-backed
Serializer and current server behavior agree; further retail coverage may still improve confidence.
Provisional
Recovered or defined but unused; uncertainty remains visible instead of being guessed away.
Packet browser

Retail IDs 0–118

Search by ID, packet name, field, feature, or behavior. Open an entry for its complete layout in exact wire order.

Outside the retail range

BattleSpades diagnostic reservations

These are development-handler IDs, not original Protocol 168 packets. They stay outside the searchable retail catalog so another implementation cannot mistake them for a stable client contract.

  1. 241DebugParityToggleOpt-in parity capture control
  2. 242DebugClientSampleRate-limited client position sample
  3. 243DebugClientEventBounded diagnostic event marker
How claims are promoted

Evidence before confidence

  1. 01
    Observe

    Capture a clean retail client in one controlled scenario and preserve exact bytes and behavior.

  2. 02
    Recover

    Trace native/decompiled read and write order, constants, branches, and crash-sensitive sentinels.

  3. 03
    Implement

    Decode defensively, bound variable data, and keep transport, simulation, and presentation ownership separate.

  4. 04
    Verify

    Replay tests and two-client sessions before changing a field from provisional to live-verified.

Reference notes

Common packet questions

Do the packet sizes include the packet ID byte?

Yes. Every size and formula on this page includes the one-byte application packet ID. ENet headers, the 0x30/0x31/0x32 wrapper prefix, LZF chunk framing, and compression effects are outside the listed size.

What byte order does Protocol 168 use?

Most integers, fixed-point values, and floating-point values are little-endian. Colour triplets are written blue, green, red. HelpMessage is an unusual provisional exception whose recovered writer uses a big-endian float for delay.

Does Planned mean the layout is definitely correct?

No. Planned means a packet class exists in the recovered retail surface but BattleSpades does not activate it. Those entries are marked Provisional where a clean live-client capture or receiver-path validation is still missing.

Why do some packet sizes use formulas?

Strings, lists, entity properties, map chunks, and other counted payloads are variable length. Their formulas show the fixed shell plus each repeated record, string terminator, or raw byte count.

Are BattleSpades diagnostic IDs part of the retail protocol?

No. IDs 241–243 are BattleSpades development-handler reservations for opt-in parity tooling. They are intentionally separated from the 119 retail IDs and do not claim a stable original-client wire layout.

Found a capture that changes the evidence?

Help make the wire record sharper.

Join the DiscordOpen BattleSpades