CREATION ENGINE MODDING DEVHUB
Authoritative architectural blueprints, binary format specifications, Scaleform GFx AS3 pipelines, and datamining runbooks for Fallout 76 developers.
Bethesda BA2 Binary Header (BTDX)
Offset 0x00 - 0x18
Bethesda Archive 2 (BA2) files begin with a strict 24-byte header. Any non-BTDX magic signature causes instant engine load rejections.
| Offset | Type | Field Name | FO76 Vanilla Value | Description |
|---|---|---|---|---|
| 0x00 (0) | uint32 LE | Magic Signature | 0x58445442 ("BTDX") | Fixed Bethesda identifier. Must match exactly. |
| 0x04 (4) | uint32 LE | Version | 0x00000001 (1) | Version 1 is mandatory for FO76. Next-Gen (v7/v8) crashes FO76. |
| 0x08 (8) | uint32 LE | Archive Subtype | GNRL or DX10 | 0x4C524E47 (GNRL) or 0x30315844 (DX10 textures). |
| 0x0C (12) | uint32 LE | File Count | Varies | Total number of file records packed inside the archive. |
| 0x10 (16) | uint64 LE | Name Table Offset | Offset (bytes) | Byte pointer to raw filename strings table. |
Fallout 4 Next-Gen update (CK v1.10.943) introduced version 7 and 8 BA2s. The internal compression and chunk structure remain identical to version 1. To use Next-Gen archives in Fallout 76, patch byte offset 4 to uint32 1:
python3 -c "import sys; f=open(sys.argv[1],'r+b'); f.seek(4); f.write(b'\x01\x00\x00\x00'); f.close()" target.ba2
NIF Mesh Header
BS v155 / GamebryoGamebryo File Format, Version 20.2.0.7\n
Read sequentially from offset 0x00 to newline (0x0A).
- Version Bin:
0x14020007(uint32 LE) - Endianness:
0x01(Little-Endian) - User Version:
131(Creation Engine) - BS Version:
155(Fallout 76 Mesh)
DX10 texture entries do not store raw headers. Devs must prepend a 128-byte DDS header (Magic 0x20534444, Size 124, Flags 0x00021007) before piping chunks.