dag - Tkachov/ALERT GitHub Wiki

dag.py | sections/dag/unknowns.py | rivet's format doc

Summary

Defines dependency graph for assets. DAT1 format, sometimes zlib-compressed. Includes assets' names, thus is useful when making 'hashes.txt'. Assets are not required to be listed here, so it usually stays unchanged in modding.

Has DependencyDag string in it, and Dag obviously stands for "directed acyclic graph".

Magic is 0x891F77AF (compressed, SO/MSMR/MM) or 0xB8EF3955 (not compressed, RCRA/i30/i33).

As this file doesn't have to be edited for mods to work, it typically isn't. Because of that, ALERT implementation is very incomplete. Other implementations: Ripped Apart, rivet.

Sections

$\color{#33C0D3}{◆}$ Asset Ids
$\color{#101A6C}{◆}$ Asset Names
$\color{#A0266B}{◆}$ Asset Types
$\color{#958372}{◆}$ Dependency Links Heads
$\color{#C91D1C}{◆}$ Dependency Links
$\color{#FEC699}{◆}$ LC Link Heads


$\color{#33C0D3}{◆}$ 933C0D32: Asset Ids

x933C0D32_Section

Array of 64-bit assets' ids.


$\color{#101A6C}{◆}$ D101A6CC: Asset Names

AssetNamesSection

Array of 32-bit offsets to assets' name strings.


$\color{#A0266B}{◆}$ 7A0266BC: Asset Types

AssetTypeSection

Array of 1-byte values indicating assets' types. For deducted types, see the code.


$\color{#958372}{◆}$ F958372E: Dependency Links Heads

DependenciesSection

Array of 32-bit indexes of items that are heads of dependencies linked lists.


$\color{#C91D1C}{◆}$ BC91D1CC: Dependency Links

xBC91D1CC_Section

Array of 32-bit indexes of assets (from $\color{#33C0D3}{◆}$ 933C0D32, $\color{#101A6C}{◆}$ D101A6CC and $\color{#A0266B}{◆}$ 7A0266BC).


$\color{#FEC699}{◆}$ BFEC699F: LC Link Heads

xBFEC699F_Section

Array of 32-bit indexes of items that are heads of dependencies linked lists, similarly to $\color{#958372}{◆}$ F958372E?


⚠️ **GitHub.com Fallback** ⚠️