---
title: "Packet 63: PackChunk"
description: "Carries raw resource-pack bytes. No inner length prefix is present; the decoded packet boundary supplies the length."
canonical: "https://aosplay.net/protocol-168/packets/63"
markdown: "https://aosplay.net/docs/protocol-168/packets/63.md"
last_updated: "2026-07-16"
protocol: "Ace of Spades Battle Builder 168"
packet_id_decimal: "63"
packet_id_hex: "0x3F"
direction: "Inactive"
family: "Map sync"
implementation_status: "Planned"
evidence: "Provisional"
wire_size: "1 + remaining payload bytes"
---

# Packet 63: PackChunk

> Carries raw resource-pack bytes. No inner length prefix is present; the decoded packet boundary supplies the length.

- **Decimal ID:** 63
- **Hex ID:** 0x3F
- **Direction:** Inactive
- **Family:** Map sync
- **Status:** Planned
- **Evidence:** Provisional
- **Wire size:** 1 + remaining payload bytes

## Implementation note

The generated reader still references an obsolete get() helper, so this unused receive path needs cleanup before activation.

## Exact wire layout

The application packet ID is the first byte. The remaining rows are in decode order. Byte sizes exclude ENet headers, wrapper prefixes, LZF chunk framing, and compression effects.

| # | Field | Encoding | Bytes | Purpose | Condition |
| ---: | --- | --- | ---: | --- | --- |
| 0 | `packet_id` | u8 | 1 | Always 63 (0x3F). | — |
| 1 | `data` | raw bytes | remainder | Resource-pack chunk payload. | — |

## Encoding conventions

- `LE` means least-significant byte first.
- `fixed16` is two-byte sign-magnitude at 1/64 precision.
- `orientation16` uses the measured 1/8192 orientation mapping.
- NUL strings consume their encoded byte length plus one `00` terminator.
- Counted arrays repeat immediately in the documented order.

## Related resources

- [HTML packet page](https://aosplay.net/protocol-168/packets/63)
- [Complete packet catalog](https://aosplay.net/protocol-168/packets)
- [Packet catalog in Markdown](https://aosplay.net/docs/protocol-168/packets.md)
- [Protocol 168 guide](https://aosplay.net/protocol-168)
