Boss Format
File Structure (Encrypted)
| Offset | Size | Field | Description |
|---|---|---|---|
0x00 |
4 bytes | Magic | Identification |
0x04 |
8 bytes | Flags/Ver | Container metadata |
0x0C |
12 bytes | IV Seed | The material used to derive the AES Initialization Vector |
0x18 |
8 bytes | Reserved | Padding or unused header space |
0x20 |
Variable | Encrypted Blob | The raw data encrypted with AES-128-CTR |
Decryption Logic
Decryption requires two console-unique or service-unique keys: BOSS_AES_KEY and BOSS_HMAC_KEY
A. IV Construction
The 16-byte Initialization Vector (IV) is constructed by concatenating the seed from the header with a static 4-byte counter.
B. AES Transformation
The algorithm used is AES-128-CTR. The decryption starts at offset 0x20
- Key: 128-bit
BOSS_AES_KEY - Mode: Counter (CTR)
- Input:
File[0x20:]
Decrypted Payload Layout
Stripping the BOSS header and decrypting the blob reveals a secondary internal structure. The first 32 bytes are a signature for the remaining content
| Offset (Decrypted) | Size | Field | Description |
|---|---|---|---|
0x00 |
32 bytes | HMAC-SHA256 | Integrity signature of the inner content |
0x20 |
Variable | Inner Content | The actual data |
Integrity Verification
To ensure the data is valid and the keys are correct, an HMAC-SHA256 must be calculated:
- Isolate the content starting at decrypted offset
0x20 - Hash the content using the
BOSS_HMAC_KEY - Compare the result to the 32-byte header at decrypted offset
0x00
Decrypted Data
The decrypted data inside the file is BYAML.
| Parameter | Example Value | Use |
|---|---|---|
| AddFirstMatchingTime | 30 |
Unknown |
| AddMatchingTime | 0 |
Unknown |
| AfterFesBonusStart | 2016-07-24T19:00:00+09:00 |
Assumed to be when Splatfest results are announced |
| BottleneckThreasholdFrame | 480 |
Unknown |
| DateTime | 2026-02-06T06:00:00Z |
Unknown |
| DisconnectByMemoryHash | true |
Controls whether you're disconnected by hash |
ByamlInfo
This nested object describes the attributes of the source Binary YAML (BYML) container.
| Parameter | Example Value | Description |
|---|---|---|
| BaseByamlStartTime | 2026-02-06T06:00:00.0000000Z |
Unknown. Matches DateTime previously mentioned |
| GenerationTime | 2026-02-06T06:10:05.0610605Z |
Time file was generated |
| Generator | Rotationator 1 |
Generator |
| PhaseLength | 2 |
Duration of each rotation (hrs) |
| RandomSeed | 3438027992 |
Likely seed for generating the map/mode |
| ScheduleLength | 21 |
The total number of unique map rotations |
Phases
Each entry in the Phases array represents a single gameplay window. Below are the keys found in every phase
| Key | Example Value | Description |
|---|---|---|
| GachiRule | cVar, cVlf, cVgl |
Controls what mode/map set |
| GachiStages | MapID: 2, MapID: 3 |
Contains the map IDs for ranked |
| RegularRule | cPnt |
Contains the Turf rule (why isnt this hardcoded?) |
| RegularStages | MapID: 0, MapID: 9 |
Contains the map IDs for Turf |
| Time | 2 |
Assumed to be the length of the rotation (hrs) |
These tables define the historical release dates for maps and equipment.
| Array Name | Example Value | Purpose |
|---|---|---|
| MapFirstAppear | Date: 2015-04-17, MapID: 0 |
Used for new map announcements |
| WeaponFirstAppear | Date: 2015-11-21, WeaponSetID: 5020 |
Unknown |