bnv - themeldingwars/Documentation GitHub Wiki

.bnv files are environment assets. A file is nothing but the environment layer (0x50001) that zone files carry below ZONE_DEFAULT_ENVIRONMENT and scZone files in their environment layer.

They live in the asset database, system/assetdb/<bucket>/<assetId>.bnv. 1962 ships a single one, 00162032.bnv.

Implementations

  • FauFau reads it. It only reads the layer tree, the environment layers themselves aren't decoded.

010 Editor Templates

There's no template for the file itself, but _common_gtlayer.bt has names for the ids of the environment layers (ENVIRONMENT_0031 and so on).

Format

Little endian. The whole file is one marked layer, described on the zone page:

Field Type Notes
marker uint64 0x12ED5A12ED5B12ED
id uint32 0x50001
length uint32 The rest of the file
layers Layer[] The environment layers

The 1962 file has 13 child layers, with ids like 0x191, 0x22, 0x130 and 0x3E8.

Open questions

  • What the environment layers contain. Since zones, self-contained zones and .bnv files share them, decoding them once covers all three.
⚠️ **GitHub.com Fallback** ⚠️