WorldRef_Z - widberg/fmtk GitHub Wiki

ImZouna WorldRef_Z

See also: IWR File Format

struct WorldRef_Z : Object_Z {
    // thiscall 7AAD40
    crc32_t nodeCRC32;
    crc32_t warpCRC32;
    crc32_t gameObjCRC32;
    crc32_t unused14;
    crc32_t genWorldCRC32;
    crc32_t nodeCRC322;
    PascalArray<std::uint32_t> unused17s;
    PascalArray<std::uint8_t> unuseds;
    PascalArray<Mat4f> mats;
    // end thiscalls
    Vec3f pointA;
    Vec3f pointB;
    PascalArray<struct UUIDPair {
        std::uint32_t uuid0;
            // some number that looks like a crc32 but isn't
            // these values are generally close to each other
        std::uint32_t uuid1;
    }> uuidPairs;
    PascalStringNULL initScript;
        // semi-colon-separated list of TSC commands
        // EX: "OpenBF WORLD\USA1_REGION_HUB_SALTLAKE_37923066;LoadWorldRef DB:>LEVELS>HUBS>QUARTIER_1>3DNODEGEOMETRY>HUB_SALTLAKE.TWORLDREF;CloseBF"
    PascalArray<crc32_t> nodeCRC32s;
    std::uint32_t zero;
        // Always 0
        // Never read by the game
};
//------------------------------------------------
//--- 010 Editor v11.0.1 Binary Template
//------------------------------------------------

struct WorldRef_Z
{
    uint32 unknown11;
    uint32 unknown12;
    uint32 unknown13;
    uint32 unknown14;
    uint32 unknown15;
    uint32 unknown16;
    uint32 unknown17Count;
    uint32 unknown17s[unknown17Count];
    uint32 unknownCount;
    byte unknowns[unknownCount];
    uint32 unknown0Count;
    float unknown0s[unknown0Count * 16];
    uint32 unknown1;
    uint32 unknown2;
    uint32 unknown3;
    uint32 unknown4;
    uint32 unknown5;
    uint32 unknown6;
    uint32 unknown7Count;
    struct Unknown7
    {
        uint32 unknown0;
        uint32 unknown1;
    } unknown7s[unknown7Count];
    uint32 unknown8Count;
    byte unknown8s[unknown8Count];
    uint32 unknown9Count;
    uint32 unknown9s[unknown9Count];
    uint32 zero;
} worldref;
⚠️ **GitHub.com Fallback** ⚠️