go back to main here

wip

credits

thanks to crton on discord for some information on this format

Structure

The layout seen in X* for Hot Wheels Velocity X Release archives is as follows:

.X*
.

File Header

Offset Type Description
00 u32 Magic always 33620128
04 u32 Magic always 67174574
08 u32 version always 183
12 u32 amount directory | 1 - 49
16 bytes

pseudocode

example of how to get to each directory entry


  header_length = 16;
  after_directory = header_length + ( u32(12) * 24 );

  for (i = 0; i < u32(12); i++) {
        get_hwvx_directory_entry(header_length + (i * 24), after_directory);
    }

hwvx_directory

Offset Type Description
00 u32 version | always 183
04 u32 type of file:
* 0 = car
* 1 = interface
* 2 = item
* 3 = link
* 4 = world
* 5 = colliders
* 6 = world texture
* 7 = geometry
* 8 = share
* 9 = audio
* 10 = music
08 u32 0 - 118
12 u32 value only appears when type = 7(geo)? | 0 - 7143423
16 u32 length of datapack | 108 - 10174256
20 u32 based on type [4]
1,2,3,4,5,6,8,9,10 = offset (hwvx_datapack)
7 = offset (hwvx_geo_datapack)
24 bytes per entry

pseudocode

example handaling a hwvx_directory entry (continuing from hwvx_file_header)


function get_hwvx_directory_entry( dir_entry_offset, after_directory ) {

    offset_datapack = after_directory + u32(dir_entry_offset + 20);

    if( u32(dir_entry_offset + 4) == 7 ) {
        get_hwvx_geo_datapack( offset_datapack );
    } else {
        get_hwvx_datapack( offset_datapack );
    }

}

hwvx_datapack

Offset Type Description
00 u32 Length of Ordered List
04 u32 Length of audio_section section (not including the Sound Offset List)
08 u32 amount of sounds | 0 - 95
12 u32 amount general offsets (5th) section of Patch List | 1 - 37595
16 u32 amount texture (1st) section of Patch List | 0 - 4044
20 u32 amount of textures | 0 - 207
24 u32 offset to textures (from ordered) based on amount [20]
28 u32 amount sound (3rd) section of Patch List | 0 - 124
32 u32 amount of sounds (same value as [08]) | 0 - 95
36 u32 0
40 u32 amount color tables? 256 colors / 1024 bytes per entry | 0 - 174
44 u32 CLUT offset (from ordered) based on amount [40]
48 u32 amount of sections in texture animations | 0,1,3,4,2,5
52 u32 amount texture animation (2nd) section of Patch List | 0,1,5,2,6
56 u32 amount model (4th) section of Patch List | 0 - 593
60 u32 offset to texture animations (from ordered), based on amount [48]
64 u32 amount 0 - 69
68 u32 offset (from ordered), based on amount [64]
72 u32 offset (hwvx_rifx) | 0 - 2757568
76 u32 offset (hwvx_riff) | 0 - 2802176
80-91 b12 shared string 1
92 u32 share 1 file index |1,0,3,2
96 u32 0
100-111 b12 shared string 2
112 u32 share 2 file index ? | 0,1
116 u32 0
120 bytes

if there are any sounds or if file type is music go to audio_section else go to patch_list

pseudocode

example handaling a hwvx_datapack entry (continuing from hwvx_directory)
this is starting from the datapack and going down, its possible to start from the end of the Offset Patch List (opf) and go up using the length in get_hwvx_directory_entry which skips the audio section


function get_hwvx_datapack( offset_datapack ) {
    //calulate lengths & offsets of sections

    datapack_length = 120;

    //audio section
    offset_audio_sec = datapack_length + offset_datapack;
    length_audio_sec = u32(offset_datapack + 4);
    amt_sounds = u32(offset_datapack + 8);

    offset_ipl = offset_audio_sec;
    after_1st_audio_sec;

    if (console == 'ps2') {
        offset_ipl = divisible(offset_ipl, 2048);
        if ( length_audio_sec ) {
            offset_ipl += divisible(amt_sounds * 4, 32);
            after_1st_audio_sec = offset_ipl;
            offset_ipl += length_audio_sec;
            offset_ipl = divisible(offset_ipl, 2048);
        }
    } else {
        if ( length_audio_sec) {
            offset_ipl += divisible(amt_sounds * 4, 32);
            after_1st_audio_sec = offset_ipl;
            offset_ipl += length_audio_sec;
        }
    }

    //index patch list (ipl) length
    ipl_amt_texture = u32(offset_datapack + 16);
    ipl_amt_animation = u32(offset_datapack + 52);
    ipl_amt_sound = u32(offset_datapack + 28);
    ipl_length = ipl_amt_texture + ipl_amt_animation + ipl_amt_sound;
    ipl_length *=8;
    ipl_length = divisible(ipl_length, 32);

    ordered_list_length = u32(offset_datapack);

    offset_ordered_list = offset_ipl + ipl_length;

    //offset patch list (opf)
    offset_opf = offset_ordered_list + ordered_list_length;

    //now offset to the sections

    sound_offset_list( offset_audio_sec, amt_sounds );

    hwvx_get_index_patch_list(offset_datapack, offset_ipl);
    hwvx_get_offset_patch_list(offset_datapack, offset_opf);

    //textures
    texture_amt_per_entry = 16;
    offset_textures = offset_ordered_list + u32(offset_datapack + 24);
    if (console === "gamecube") {
        texture_amt_per_entry = 32;
    }
    for (let i = 0; i < u32(offset_datapack + 20); i++) {
        get_hwvx_texture( offset_textures + (i * texture_amt_per_entry) );
    }

    offset_anims = offset_ordered_list + u32(offset_datapack + 60);
    for (let i = 0; i < u32(offset_datapack + 48); i++) {
        get_hwvx_texture_anims( offset_anims + (i * 12) );
    }

    if (u32(o + 72)) {
        get_hwvx_rifx(after_1st_audio_sec + u32(o + 72))
    }
    if (u32(o + 76)) {
        get_hwvx_riff(after_1st_audio_sec + u32(o + 76))
    }

    switch (type) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 9:
    case 10:
        get_hwvx_basic( offset_ordered_list );
        break
    case 4:
        get_hwvx_world( offset_ordered_list );
        break
    case 5:
        get_hwvx_collision( offset_ordered_list );
        break
    case 6:
        break
    case 8:
        for (let i = 0; i < u32(offset_datapack + 56); i++) {
            get_hwvx_share( offset_ordered_list + (i * 4) );
        }
        break
    }

    offset_hwvx_triggers_and_actions = offset_ordered_list + u32(offset_datapack + 68);
    for (let i = 0; i < u32(offset_datapack + 64); i++) {
        get_hwvx_triggers_and_actions( offset_hwvx_triggers_and_actions + (i * 44) );
    }

}

hwvx_geo_datapack

Offset Type Description
00 u32 length of ordered | 12 - 857064
04 u32 amount patchlist general offsets | 0 - 23413
08 u32 amount patchlist texture indexs | 0 - 369
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 amount patchlist texture anims indexs | 1,0,3,2,4,5,10
32 u32 0
36 u32 amount patchlist padding | 8,28,0,16,20,12,24,4
40 u32 amount patchlist model indexes | 0 - 108
44 b12 shared string
56 u32 always 1
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 u32 0
84 bytes

audio_section

this comes directly after the datapack
if file type is music go to impulse_tracker else go to Sound Offset List


Sound Offset List

comes directly after the datapack if there are any sounds, if not skip to the patch list

Offset Type Description
0 u32 offset to Audio
offset start = Audio
4 bytes per entry

hwvx_audio_list

Offset Type Description
00 u32 offset to sound data
start offset = Audio | 32 - 632688
04 u32 length of sound | 832 - 332736
08 u32 16,4294967295,1920
12 u32 sound sample rate | 8000 - 44145
16 u16 always 4096
18 u16 always 32767
20 u32 0
24 u32 0
28 u32 0
32 bytes per entry

hwvx_audio_data

pc,gc = pcm
ps2 = vag


hwvx_rifx

some RIFX file


hwvx_riff

some RIFF file


patch_list

2 patch list versions are seen, geometry & everything else


hwvx_patch_list

patches the textures indexs/texture anims indexs/sound indexes/model indexs/general offsets into the file.
the offset is based on the next section (Ordered List)
bytes 4 & 6 are reversed for gamecube
To get each section you would do:
patch_list = hwvx_datapack + 120 //after datapack
patch_list += (u32(8) * 4) // after audio section
patch_list += (u32(4)) //start of Texture Indexes
patch_list+= (u32(16) * 8) //start of Texture Animation Indexes
patch_list+= (u32(52) * 8) //start of Sounds
patch_list+= (u32(28) * 8) //start of Ordered List

Texture Indexes (1)

Offset Type Description
0 u32 Offset
4 u16 texture index
6 u16 linked file
0 = same file
DataPack [92] = shared file 1
DataPack [112] = shared file 2
8 bytes per entry

Texture Anims (2)

Offset Type Description
0 u32 Offset
4 u16 Texture Anim index
6 u16 linked file
0 = same file
DataPack [92] = shared file 1
DataPack [112] = shared file 2
8 bytes per entry

Sounds (3)

Offset Type Description
0 u32 Offset
4 u16 Sound index
6 u16 linked file
0 = same file
DataPack [92] = shared file 1
DataPack [112] = shared file 2
8 bytes per entry

geo_patch_list

patches the textures indexs/texture anims indexs/model indexs/general offsets into the file.
the offset is based on the next section (Ordered List)
To get each section you would do:
patch_list = hwvx_geo_datapack + 84 //start of Texture Indexes
patch_list+= (u32(8) * 8) //start of Texture Animation Indexes
patch_list+= (u32(28) * 8) //start of Model Indexes
patch_list+= (u32(40) * 4) //start of General Offsets
patch_list+= (u32(4) * 4) //start of Padding
patch_list+= (u32(36)) //start of Ordered List

Texture Indexes (1)

Offset Type Description
0 u32 Offset
4 u32 Texture Index
8 bytes per entry

Texture Anims (2)

Offset Type Description
0 u32 Offset
4 u32 Texture Anims Index
8 bytes per entry

Models (3)

Offset Type Description
0 u32 Offset
4 u32 Models Indexes
8 bytes per entry

General Offsets (4)

Offset Type Description
0 u32 offset
4 bytes per entry

Padding (5)

values in padding are always 0


Ordered List

to get here offset to the Patch List from the datapack then add the sections together
all sections in the ordered list use the start of the ordered list as the offset

in order the sections contained are:
hwvx_file_specific_section
hwvx_model
hwvx_texture_anims
hwvx_model_anims_1
hwvx_model_anims_2
hwvx_texture
hwvx_texture_data
hwvx_color_table
hwvx_share_end
hwvx_unordered_list
hwvx_texture_anims_0


Ordered List File Specific Section

The first part of the ordered list depends on the type of file

Type Description
0 = car basic
1 = interface basic
2 = item basic
3 = link basic
4 = world hwvx_world
5 = colliders hwvx_collision
6 = world texture no section seen
7 = geometry hwvx_geo_basic
8 = share hwvx_share / also hwvx_share_end seen?
9 = audio basic
10 = music basic

hwvx_basic

Offset Type Description
00 u32 always 1
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_basic_4

Offset Type Description
00 u32 based on hwvx_directory [4]
0 = offset (hwvx_car)
1 = offset (hwvx_interface)
2 = offset (hwvx_item)
3 = offset (hwvx_link)
9 = offset (hwvx_sound_controls)
music = 0
04 u32 0 - 75
8 bytes

hwvx_world

order:
hwvx_world
hwvx_world_124
hwvx_world_140
hwvx_world_132
hwvx_world_12
hwvx_world_20
hwvx_world_36
hwvx_world_36_48
hwvx_Airbox
hwvx_world_36_36
hwvx_world_36_28
hwvx_world_36_48_16
hwvx_world_36_48_24
hwvx_world_76
hwvx_world_92
hwvx_world_52
hwvx_world_52_88t1
hwvx_world_100
hwvx_world_108
hwvx_world_108_40
hwvx_world_108_44t1
hwvx_world_108_44t2
hwvx_world_108_44t3
hwvx_world_108_44t6
hwvx_world_4
hwvx_world_4_20
hwvx_world_4_16
hwvx_world_4_16_4
hwvx_world_120
hwvx_world_routes
hwvx_world_routes_32
hwvx_world_routes_20
hwvx_world_routes_24

Offset Type Description
00 u32 0
04 u32 offset
08 u32 amount 1 - 21
12 u32 offset (hwvx_world_12) based on amount [8]
16 u32 amount 0 - 54
20 u32 offset (hwvx_world_20) based on amount [16]
24 u32 0
28 u32 0
32 u32 amount 1,2,6,15,18,21,23,25
36 u32 offset based on amount [32]
40 u32 0
44 u32 0
48 u32 amount 0,1,2,3,4,6,7,9,10,12
52 u32 offset (hwvx_world_52) based on amount [48]
56 u32 0
60 u32 0
64 u32 0
68 u32 0
72 u32 amount 0 - 25
76 u32 offset (hwvx_world_76) based on amount [72]
80 u32 amount 0,1,2,3,6
84 u32 offset (hwvx_world_76) based on amount [80]
88 u32 amount 0,1,2,3,4
92 u32 offset based on amount [88]
96 u32 amount 0,1,4,11,15
100 u32 offset based on amount [96]
104 u32 amount 10 - 860
108 u32 offset (hwvx_world_108) based on amount [104]
112 u32 0
116 u32 0
120 u32 offset
124 u32 offset string WORLDS_* (points to file name)
128 u32 0
132 u32 offset string WORLDS_* (points to file name)
136 u32 0
140 u32 offset string WORLDS_* (points to file name)
144 u32 0
148 u32 0
152 u32 0
156 u32 offset (hwvx_world_settings)
160 bytes

hwvx_world_124

string listed here


hwvx_world_140

string listed here


hwvx_world_132

string listed here


hwvx_world_12

multi linked to by:
hwvx_world [12]

Offset Type Description
00 float -4257.27880859375 - 4894.14501953125
04 float -801.9620361328125 - 617.6117553710938
08 float -4745.9658203125 - 5114.8671875
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 float -0.06742775440216064,0,0.0524287223815918,0.4570648670196533
20 float -14.032913208007812 - 11.99551773071289
24 float -0.046747684478759766,-0.00923454761505127,0,0.0023209452629089355
28 u8 always 205
29 u8 always 205
30 u8 always 205
31 u8 always 205
32 u32 24 - 13706
36 u32 0
40 u32 0
44 u32 0,1
48 u8 0 - 255
49 u8 0,255
50 u8 0,255
51 u8 0 - 255
52 u8 0,1
53 u8 1,2,3,4,5,6
54 u8 0,1
55 u8 1,32
56 float 10,400,500,700
60 float 200,700,800,1000,1300,2000,4000
64 u32 offset (hwvx_world_idk)
68 u32 offset (hwvx_world_idk)
72 u32 offset (hwvx_world_idk)
76 u32 offset (hwvx_world_idk)
80 u32 0
84 u32 0
88 u32 0
92 u8 0,1
93 u8 always 255
94 u8 0 - 255
95 u8 0
96 bytes per entry

hwvx_world_20

multi linked to by:
hwvx_world [20]

Offset Type Description
00 u32 28 - 11974
04 u32 offset (hwvx_model_anims_1)
08 float 0.5,1,5,7,10,15,24,30
12 u32 offset (hwvx_model_car_sound_link)
16 u32 0
20 u8 always 1
21 u8 0
22 u8 0
23 u8 0
24 u8 0,1
25 u8 0,1
26 u8 0
27 u8 0
28 float 1000,1250,1500,1800,2000,3000,4000
32 bytes per entry

hwvx_world_36

Offset Type Description
00 u32 2 - 12195
04 u32 0
08 u32 0
12 u32 0 - 108
16 u32 0
20 u32 0
24 u32 amount 0 - 2784
28 u32 offset based on amount [24]
32 u32 0,1,2,3,4 maybe amount?
36 u32 offset (hwvx_world_36_36)
40 u32 0
44 u32 0
48 u32 offset (hwvx_world_36_48)
52 u32 0
56 u8 0 - 255
57 u8 0 - 255
58 u8 0 - 255
59 u8 0 - 255
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 bytes per entry

hwvx_world_36_48

linked to by:
hwvx_world_36 [48]

Offset Type Description
00 u32 0
04 u32 amount 0 - 309
08 u32 offset (hwvx_Airbox) based on amount [4]
12 u32 amount 0 - 112
16 u32 offset (hwvx_world_36_48_16) based on amount [12]
20 u32 amount 0 - 54
24 u32 offset (hwvx_world_36_48_24) based on amount [20]
28 u32 0
32 bytes

hwvx_Airbox

multi linked to by:
hwvx_world_36_48 [8]

Offset Type Description
00 float x position | -5432.97216796875 - 5103.130859375
04 float y position | -813.0188598632812 - 806.4737548828125
08 float z position | -4624.4755859375 - 5259.4931640625
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 float rotation? | -0.9927153587341309 - 0.923538863658905
20 float rotation? | -1 - 1
24 float rotation? | -0.997941792011261 - 0.9990482330322266
28 float rotation? | -1 - 1
32 u32 56 - 14031
36 u32 offset (hwvx_world_model_related)
40 float 1,500,600,700,800,900,1000,1500,2000,3004.4951171875
44 u32 0
48 u32 0,1
52 u8 0,1
53 u8 0,1
54 u8 0
55 u8 0
56 u32 0
60 u32 0
64 bytes per entry

hwvx_world_36_36

multi linked to by:
hwvx_world_36 [36]

Offset Type Description
00 u32 375 - 12195
04 u32 0 - 12195
08 u32 0 - 12194
12 u32 0 - 12195
16 bytes

hwvx_world_36_28

Offset Type Description
00 float -1 - 1
04 float -1 - 1
08 float -1 - 1
12 float -6166.4599609375 - 5138.7626953125
16 u8 0,1,2,3
17 u8 always 205
18 u8 0 - 205
19 u8 0 - 205
20 u8 always 205
21 u8 always 205
22 u8 always 205
23 u8 always 205
24 u8 always 205
25 u8 always 205
26 u8 always 205
27 u8 always 205
28 u8 always 205
29 u8 always 205
30 u8 always 205
31 u8 always 205
32 bytes per entry

hwvx_world_36_48_16

multi linked to by:
hwvx_world_36_48 [16]

Offset Type Description
00 float -5165.32470703125 - 5032.3779296875
04 float -818.3575439453125 - 1185.3116455078125
08 float -4094.2138671875 - 4646.63623046875
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 float -0.9999660849571228 - 1
20 float -1 - 1
24 float -0.9999662041664124 - 0.9999994039535522
28 float -0.9999706745147705 - 1
32 u32 25 - 13844
36 u32 offset (hwvx_strange)
40 u32 0
44 float 300,400,500,600,700,800,1000,1200,1500
48 u32 0
52 u32 0,1
56 u8 0,1
57 u8 0
58 u8 0
59 u8 0
60 u32 0
64 bytes per entry

hwvx_world_36_48_24

multi linked to by:
hwvx_world_36_48 [24]

Offset Type Description
00 float -5370.78857421875 - 5047.4970703125
04 float -807.3743896484375 - 857.7012939453125
08 float -4530.85400390625 - 5233.3505859375
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u32 35 - 14021
20 u32 0,7000,10000,15000,18000,20000,25000,30000
24 u32 0,1
28 u32 0
32 float 1 - 99999
36 u32 0
40 u32 0,1
44 u32 0
48 u32 0 - 5046272
52 u32 11 - 1044250881
56 u32 0
60 u32 0
64 bytes per entry

hwvx_world_76

multi linked to by:
hwvx_world [76][84]

Offset Type Description
00 u32 offset (hwvx_world_small_section)
4 bytes per entry

hwvx_world_92

Offset Type Description
00 u32 0
04 u32 offset (hwvx_world_text_link)
8 bytes per entry

hwvx_world_52

multi linked to by:
hwvx_world [52]
hwvx_world_52 [88]

Offset Type Description
00 float -0.9996334314346313 - 1
04 float -0.14798127114772797 - 0.05065522342920303
08 float -0.9999871850013733 - 1
12 u32 0
16 float -0.03701553866267204 - 0.008425393141806126
20 float 0.9889901876449585 - 1
24 float -0.05064714327454567 - 0.14793388545513153
28 u32 0
32 float -1 - 0.9999871850013733
36 float -0.011972439475357533,0,8.742277657347586e-8
40 float -0.9997057318687439 - 1
44 u32 0
48 float -3861.453125 - 4338.53955078125
52 float -1255.4114990234375 - 970.4488525390625
56 float -4929.5244140625 - 4501.265625
60 float always 1
64 u32 65 - 13990
68 u32 0
72 u32 0
76 float 10 - 1341.3673095703125
80 u32 0,1
84 u32 0,1,3,4,5,7
88 u32 based on type [80]
0 = offset (hwvx_world_52)
1 = offset
92 u32 0,200,250,500,10000
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 bytes per entry

hwvx_world_52_88t1

Offset Type Description
00 u32 0,1,2,3,4,5,6,7,9,11
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_world_100

Offset Type Description
00 u32 89 - 4280025088
04 u32 offset (hwvx_world_color_section)
08 u32 1,16777216
12 u32 0
16 bytes per entry

hwvx_world_108

multi linked to by:
hwvx_world [108]
hwvx_world_4_16_4 [0]

Offset Type Description
00 u32 182 - 14879
04 u32 0,1
08 u32 0,1
12 u32 0,1,2,3,6
16 float -5433.89404296875 - 5315.07763671875
20 float -1358.3443603515625 - 3061.21337890625
24 float -5154.353515625 - 4641.0791015625
28 u8 0,205
29 u8 0,205
30 u8 0,205
31 u8 0,205
32 float 0 - 9000000
36 float 0 - 5317593
40 u32 offset
44 u32 based on type [12]
1 = offset
2 = offset
3 = offset
6 = offset
48 bytes per entry

hwvx_world_108_40

Offset Type Description
00 float NaN - NaN
04 float NaN - NaN
08 float NaN - NaN
12 float NaN - NaN
16 u8 1,2,3
17 u8 always 205
18 u8 0,1,2,3,5,6,7,205
19 u8 0,1,2,3,5,6,7,205
20 u8 always 205
21 u8 always 205
22 u8 always 205
23 u8 always 205
24 u8 always 205
25 u8 always 205
26 u8 always 205
27 u8 always 205
28 u8 always 205
29 u8 always 205
30 u8 always 205
31 u8 always 205
32 float -1 - 0.9999644756317139
36 float -0.07977977395057678 - 1
40 float -0.9748623371124268 - 1
44 float -4852.57177734375 - 3887.971435546875
48 u8 0,1,2,3
49 u8 always 205
50 u8 0,1,2,205
51 u8 0,1,2,205
52 u8 always 205
53 u8 always 205
54 u8 always 205
55 u8 always 205
56 u8 always 205
57 u8 always 205
58 u8 always 205
59 u8 always 205
60 u8 always 205
61 u8 always 205
62 u8 always 205
63 u8 always 205
64 float -0.12986092269420624 - 5.119487695992575e-7
68 float -1 - 1
72 float -0.29507315158843994 - 0.09289887547492981
76 float -1031.1898193359375 - 733.78076171875
80 u8 0,1,2,3
81 u8 always 205
82 u8 0,1,2,205
83 u8 0,1,2,205
84 u8 always 205
85 u8 always 205
86 u8 always 205
87 u8 always 205
88 u8 always 205
89 u8 always 205
90 u8 always 205
91 u8 always 205
92 u8 always 205
93 u8 always 205
94 u8 always 205
95 u8 always 205
96 float NaN - NaN
100 float NaN - NaN
104 float NaN - NaN
108 float NaN - NaN
112 u8 0,1,2,3
113 u8 always 205
114 u8 0,1,3,7,205
115 u8 0,1,3,7,205
116 u8 always 205
117 u8 always 205
118 u8 always 205
119 u8 always 205
120 u8 always 205
121 u8 always 205
122 u8 always 205
123 u8 always 205
124 u8 always 205
125 u8 always 205
126 u8 always 205
127 u8 always 205
128 float -0.9999644756317139 - 1
132 float -1 - 1
136 float -1 - 0.9748631715774536
140 float -3911.59912109375 - 4615.25830078125
144 u8 0,1,2,3
145 u8 always 205
146 u8 0,1,2,205
147 u8 0,1,2,205
148 u8 always 205
149 u8 always 205
150 u8 always 205
151 u8 always 205
152 u8 always 205
153 u8 always 205
154 u8 always 205
155 u8 always 205
156 u8 always 205
157 u8 always 205
158 u8 always 205
159 u8 always 205
160 float -0.9999644756317139 - 1
164 float -1 - 1
168 float -1 - 0.974868655204773
172 float -3911.59912109375 - 4615.25830078125
176 u8 0,1,3
177 u8 always 205
178 u8 0,4,5,205
179 u8 0,4,5,205
180 u8 always 205
181 u8 always 205
182 u8 always 205
183 u8 always 205
184 u8 always 205
185 u8 always 205
186 u8 always 205
187 u8 always 205
188 u8 always 205
189 u8 always 205
190 u8 always 205
191 u8 always 205
192 float NaN - NaN
196 float NaN - NaN
200 float NaN - NaN
204 float NaN - NaN
208 u8 0,1,2,3
209 u8 always 205
210 u8 0,1,2,6,205
211 u8 0,1,2,6,205
212 u8 always 205
213 u8 always 205
214 u8 always 205
215 u8 always 205
216 u8 always 205
217 u8 always 205
218 u8 always 205
219 u8 always 205
220 u8 always 205
221 u8 always 205
222 u8 always 205
223 u8 always 205
224 float NaN - NaN
228 float NaN - NaN
232 float NaN - NaN
236 float NaN - NaN
240 u8 0,1,2,3
241 u8 always 205
242 u8 0,7,205
243 u8 0,1,7,205
244 u8 always 205
245 u8 always 205
246 u8 always 205
247 u8 always 205
248 u8 always 205
249 u8 always 205
250 u8 always 205
251 u8 always 205
252 u8 always 205
253 u8 always 205
254 u8 always 205
255 u8 always 205
256 float -1 - 1
260 float -1 - 0.2749740779399872
264 float -0.9999963641166687 - 1
268 float -5101.18603515625 - 4199.00146484375
272 u8 0,1,3
273 u8 always 205
274 u8 0,2,205
275 u8 0,2,205
276 u8 always 205
277 u8 always 205
278 u8 always 205
279 u8 always 205
280 u8 always 205
281 u8 always 205
282 u8 always 205
283 u8 always 205
284 u8 always 205
285 u8 always 205
286 u8 always 205
287 u8 always 205
288 float -1 - 1
292 float -1 - 0.05546192079782486
296 float -0.9999963641166687 - 1
300 float -5101.18603515625 - 4199.00146484375
304 u8 0,1
305 u8 always 205
306 u8 always 205
307 u8 always 205
308 u8 always 205
309 u8 always 205
310 u8 always 205
311 u8 always 205
312 u8 always 205
313 u8 always 205
314 u8 always 205
315 u8 always 205
316 u8 always 205
317 u8 always 205
318 u8 always 205
319 u8 always 205
320 float -1 - 0.9999606609344482
324 float -1 - 0.2920631170272827
328 float -0.9999999403953552 - 0.9999962449073792
332 float -4364.1083984375 - 4796.7451171875
336 u8 1,2,3
337 u8 always 205
338 u8 0,1,2,205
339 u8 0,1,2,205
340 u8 always 205
341 u8 always 205
342 u8 always 205
343 u8 always 205
344 u8 always 205
345 u8 always 205
346 u8 always 205
347 u8 always 205
348 u8 always 205
349 u8 always 205
350 u8 always 205
351 u8 always 205
352 float -1 - 0.999960720539093
356 float -1 - 0.29203322529792786
360 float -0.9999999403953552 - 0.9999962449073792
364 float -4364.1083984375 - 4796.7451171875
368 u8 0,1
369 u8 always 205
370 u8 always 205
371 u8 always 205
372 u8 always 205
373 u8 always 205
374 u8 always 205
375 u8 always 205
376 u8 always 205
377 u8 always 205
378 u8 always 205
379 u8 always 205
380 u8 always 205
381 u8 always 205
382 u8 always 205
383 u8 always 205
384 bytes

hwvx_world_108_44t1

Offset Type Description
00 float 0,150
04 float 0,100,120
08 u32 0
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u8 1,2
17 u8 0
18 u8 0
19 u8 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_world_108_44t2

Offset Type Description
00 u8 0,1,95,152,205,221
01 u8 0,65,75,205,221
02 u8 0,65,75,205,221
03 u8 0,1,95,152,205,221
04 u8 12 - 255
05 u8 12 - 255
06 u8 12 - 255
07 u8 12 - 255
08 u32 0
12 u32 0
16 bytes

hwvx_world_108_44t3

Offset Type Description
00 float 7.183896707207607e-41,100
04 float 7.183896707207607e-41,100
08 u32 0
12 u32 0
16 bytes

hwvx_world_108_44t6

multi linked to by:
hwvx_world_108 [44t6]

Offset Type Description
00 float -0.9889901280403137 - 0.8244954943656921
04 float -1 - 0.07059799879789352
08 float -0.9322277307510376 - 1
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u8 0 - 255
17 u8 0 - 255
18 u8 0 - 255
19 u8 always 255
20 u32 0 - 14
24 u8 0,1,2,3
25 u8 0,1
26 u8 0
27 u8 0
28 u32 0
32 bytes

hwvx_world_4

Offset Type Description
00 float -5440.41748046875 - 0
04 float -1203.1905517578125 - 0
08 float -4785.1474609375 - 0
12 u8 0
13 u8 0
14 u8 0
15 u8 0
16 u32 offset based on amount [28]
20 u32 offset based on amount [28]
24 u32 8 - 336
28 u32 9 - 284
32 float always 500
36 float 256.907958984375 - 1203.1905517578125
40 float always 500
44 u32 2 - 22
48 u32 always 1
52 u32 4,6,7,9,10,14,21
56 u32 0
60 u32 0
64 bytes

hwvx_world_4_20

Offset Type Description
00 u32 0 - 237
4 bytes per entry

hwvx_world_4_16

Offset Type Description
00 u32 0
04 u32 0
08 u32 amount 0,1,3,4,5
12 u32 offset (hwvx_world_4_16_4) based on amount [8]
16 u32 amount 0 - 10
20 u32 offset (hwvx_world_4_16_4) based on amount [16]
24 u32 amount 0,1,2
28 u32 offset (hwvx_world_4_16_4) based on amount [24]
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 u32 amount 0 - 124
52 u32 offset (hwvx_world_4_16_4) based on amount [48]
56 bytes per entry

hwvx_world_4_16_4

Offset Type Description
00 u32 offset (hwvx_world_108)
4 bytes per entry

hwvx_world_120

Offset Type Description
00 u32 offset (hwvx_world_routes)
04 u32 0 - 390
08 u8 0 - 255
09 u8 0,255
10 u8 0,255
11 u8 0 - 255
12 u32 0
16 bytes

hwvx_world_routes

multi linked to by:
hwvx_world_120 [0]

Offset Type Description
00 float -5365.6669921875 - 5035.0703125
04 float -840.3659057617188 - 647.9252319335938
08 float -4676.67431640625 - 5145.50732421875
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u32 amount 0 - 12
20 u32 offset based on amount [16]
24 u32 offset based on amount [16]
28 u32 amount 0 - 16
32 u32 offset based on amount [28]
36 float 0 - 300
40 u32 0 - 389
44 float 0 - 219.99989318847656
48 float 0, - 161.333251953125
52 u8 0,1
53 u8 0,20,25,33,40,50,66,75,100
54 u8 0
55 u8 0
56 u32 0
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0 - 389
80 u8 0,1
81 u8 0,1
82 u8 0
83 u8 0
84 u32 0
88 u32 0
92 u32 0
96 bytes per entry

hwvx_world_routes_32

Offset Type Description
00 u32 0 - 389
4 bytes per entry

hwvx_world_routes_20

Offset Type Description
00 float 3.1516268253326416 - 1292.7093505859375
4 bytes per entry

hwvx_world_routes_24

Offset Type Description
00 u32 0 - 388
4 bytes per entry

hwvx_triggers_and_actions

linked to by:
hwvx_datapack [68]

Offset Type Description
00 u32 trigger type/id
0 = TRIGGER_TRUE
1 = TRIGGER_AIRBOX_ENTERED
2 = TRIGGER_AIRBOX_EXITED
3 = TRIGGER_AIRBOX_STOPIN
4 = TRIGGER_DESTRUCTIBLE_KILLED
5 = TRIGGER_CREATURE_KILLED
6 = TRIGGER_ITEM_PICKUP
7 = TRIGGER_INTERFACE_END
8 = TRIGGER_LEVEL_START
9 = TRIGGER_TIME_VALUE_CHECK
10 = TRIGGER_MOVEABLE_END
11 = TRIGGER_VARIABLE_VALUE_CHECK
12 = TRIGGER_VEHICLE_KILLED
13 = TRIGGER_P2P_ACTIVATED
14 = TRIGGER_CREATURE_DROPPED_OFF
15 = TRIGGER_INTERFACE_PACK_END
16 = TRIGGER_VEHICLE_DAMAGE
17 = TRIGGER_PLAYER_VEHICLE_GEAR
18 = TRIGGER_PLAYER_VEHICLE_INAIR
19 = TRIGGER_CODE_VALUE_CHECK
20 = TRIGGER_CREATURE_PICKED_UP
21 = TRIGGER_GAME_ROUNDS_COMPLETE
22 = TRIGGER_GAME_ROUNDS_X_COMPLETE
23 = TRIGGER_ITEM_DROPPED
24 = TRIGGER_MOVEABLE_VOLUME_ENTERED
25 = TRIGGER_SOUND_SEQUENCE_QUEUE_ENDED
26 = TRIGGER_CREATURE_VOLUME_ENTERED
04 u32 based on type [8]
1 = offset
3 = offset
5 = offset
6 = offset
rest = offset
08 u32 type? 0 - 452
12 u32 offset based on amount [16]
16 u32 amount 0,1,2,3,4
20 u32 offset based on amount [28]
24 u32 0
28 u32 amount 1 - 26
32 u32 0
36 u32 0
40 u8 0,1,3
41 u8 0
42 u8 0
43 u8 0
44 bytes per entry

hwvx_triggers_and_actions_4t1

Offset Type Description
00 u32 offset (hwvx_interface)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_triggers_and_actions_4t3

Offset Type Description
00 u32 always 1
04 u32 offset (hwvx_Airbox)
08 u32 1,3
12 u32 0
16 bytes

hwvx_triggers_and_actions_4t5

Offset Type Description
00 u32 always 1
04 u32 unknown type, not sure how this is determined:
hwvx_world_108
hwvx_world_76
hwvx_world_36_48_24
08 u32 0,1
12 float based on type [16]
0 = hwvx_world_12
21,22 = float 0 - 666
16 u32 type 0,21,22
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_triggers_and_actions_4t6

Offset Type Description
00 u32 type
1,2 = skip to trest
4 = 4 offsets
20,21
4 bytes

hwvx_triggers_and_actions_4t6t4

Offset Type Description
04 u32 offset (hwvx_Airbox)
08 u32 offset (hwvx_Airbox)
12 u32 offset (hwvx_Airbox)
16 u32 offset (hwvx_Airbox)
20 u32 always 3
24 u32 0
28 u32 0
28 bytes

hwvx_triggers_and_actions_4t6t20

Offset Type Description
04 u32 1,2
08 u32 always 1
12 u32 offset (hwvx_world_12)
16 u32 0
20 float 5000
24 u32 0
28 u32 0
28 bytes

hwvx_triggers_and_actions_4trest

section is ([8] *4) bytes per entry

hwvx_triggers_and_actions_4trest_sec1

Offset Type Description
00 u32 1st amount
4 bytes

hwvx_triggers_and_actions_4trest_sec2

Offset Type Description
00 u32 offseted to:
hwvx_world_36_48
hwvx_Airbox
hwvx_world_36_48_24
hwvx_world_36_36
hwvx_world_108
hwvx_world_12
Also offsets to random sections in collision ???
([0] *4) bytes

hwvx_triggers_and_actions_4trest_sec3

Offset Type Description
00 u32 2nd amount
4 bytes

hwvx_triggers_and_actions_4trest_sec4

Offset Type Description
00 u32 offseted to:
hwvx_world_12
Also offsets to random sections in hwvx_world_12
([0] *4) bytes

hwvx_triggers_and_actions_12

Offset Type Description
00 u32 0,1,6,11,20
04 u32 offset
08 u32 0,5
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0,1,11,20
48 bytes per entry

hwvx_triggers_and_actions_12_4

Offset Type Description
00 u32 type 1,22
04 u32 based on type [0]
1 = offset
22 = 200,100
08 u32 0 - 32
12 u32 / float based on type [16]
0 = u32 variour offsets seen:
hwvx_triggers_and_actions_12_4_4
hwvx_world_76
hwvx_world_36_48_24
hwvx_world_108

rest = float 0 - 30
16 u32 / float based on type [0]
1 = u32 type 0,20,21,22
22 = float 0 - 3
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_actions

Offset Type Description
00 u32 action IDs
AirboxChangeMode = 0
CameraSetTargets = 1
DestructibleChangeMode = 2
FXPointChangeMode = 3
InterfacePlay = 4
ItemChangeMode = 5
EndLevel = 6
TimerChangevalue = 7
TimerChangeMode = 8
MoveableChangeMode = 9
MusicChange = 10
MusicSetSong = 11 (Unused on PC)
NavPointChangeMode = 12
PauseGame = 13
SpeakerChangeMode = 14 (Unused on PC)
TargetArrowSetTarget = 15
VariableChangeValue = 16
VehicleChangeMode = 17
VehicleAISetNamedPath = 18 (Unused on PC)
VertexColorSeqChangeMode = 19
PrintDebugString = 20
VehicleTeleport = 21
VehicleChangeControl = 22
SetPlayerVehicle = 23 (Unused on PC)
VehicleRemoveItem = 24
VehicleRemoveCreature = 25 (Unused on PC)
VariableChangeMode = 26
LoadInterfacePack = 27
PlayInterfacePack = 28
UnloadInterfacePack = 29
EndInterfacePack = 30
EndInterface = 31
HUDChangeMode = 32
ScriptLightChangeMode = 33 (Unused on PC)
CodeVariableModifyValue = 34
MissionObjChangeMode = 35
PauseTACSystem = 36
SwapAIScript = 37
ResetGameRound = 38
RoundComplete = 39
VehicleGiveItem = 40
SetPlayerOrder = 41
PlaySoundSequence = 42
CreatureChangeMode = 43
04 u32 based on type [0] & [8]
0 = offset
[0] 1 = offset
 [8] = 13
 [8] = 14
 [8] = 17
2 = offset
3 = offset
4 = offset
5 = offset
7 = offset
8 = offset
9 = offset
[0] 10 = offset
 [8] = 10
 [8] = 20
12 = offset
[0] 15 = offset
 [8] = 1
 [8] = 5
16 = offset
17 = offset
20 = offset
21 = offset
22 = offset
24 = offset
26 = offset
31 = offset
32 = offset
[0] 34 = offset
 [8] = 5
 [8] = 6
36 = offset
38 = offset
39 = offset
40 = offset
41 = offset
08 u32 1 - 193
12 u32 0 - 18000
16 u8 0,1,255
17 u8 0,255
18 u8 0,255
19 u8 0,1,255
20 u32 0 - 18000
24 bytes per entry

hwvx_actions_4tAirboxChangeMode

hwvx_actions_4tAirboxChangeMode_sec1

Offset Type Description
00 u32 0,1
04 u32 amount
8 bytes

hwvx_actions_4tAirboxChangeMode_sec2

Offset Type Description
00 u32 offseted to:
hwvx_world_108
([4] *4) bytes

hwvx_actions_4tCameraSetTargetst13

Offset Type Description
00 u32 0
04 u32 29,30
08 u32 1,6
12 u32 based on type [8]
1 = offset (hwvx_world_12)
6 = offset (hwvx_world_routes)
16 float 0,15
20 float 0,1,10
24 float 0,1
28 u32 always 1
32 u32 based on type [28]
1 = offset (hwvx_world_12)
36 u32 0
40 float 0,5,10
44 u32 0
48 u32 always 31
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_actions_4tCameraSetTargetst14

Offset Type Description
00 u32 0
04 u32 always 27
08 float 80,90,105
12 u32 1,2,3,6
16 u32 based on type [12]
1 = offset (hwvx_world_12)
2 = offset (hwvx_Airbox)
3 = offset (hwvx_world_36_48_24)
6 = offset (hwvx_world_routes)
20 float -150,-50,-30,0,10,15,35,40
24 float 0 - 100
28 float -130 - 40
32 u32 1,2,3,4,6
36 u32 based on type [32]
1 = offset (hwvx_world_12)
2 = offset (hwvx_Airbox)
3 = offset (hwvx_world_36_48_24)
4 = offset (hwvx_world_20)
6 = offset (hwvx_world_routes)
40 u32 0
44 float 0,6,10,100
48 u32 0
52 u32 always 31
56 u32 0
60 u32 0
64 bytes

hwvx_actions_4tCameraSetTargetst17

Offset Type Description
00 u32 0
04 u32 always 28
08 float 90,105,120
12 float 15,17,18,20,22,25,50,120,220
16 float 0.5,1,80
20 float 0.30000001192092896 - 1
24 u32 1,2,3,6
28 u32 based on type [24]
1 = offset (hwvx_world_12)
2 = offset (hwvx_Airbox)
3 = offset (hwvx_world_36_48_24)
6 = offset (hwvx_world_routes)
32 float -12,0,5,10,40
36 float 0,10,15,20,25
40 u32 0
44 u32 1,2,3,6
48 u32 based on type [44]
1 = offset (hwvx_world_12)
2 = offset (hwvx_Airbox)
3 = offset (hwvx_world_36_48_24)
6 = offset (hwvx_world_routes)
52 float -12,0,5,10
56 float 0,5,100
60 u32 0
64 u32 always 31
68 u32 0
72 u32 0
76 u32 0
80 bytes

hwvx_actions_4tDestructibleChangeMode

hwvx_actions_4tDestructibleChangeMode_sec1

Offset Type Description
00 u32 1,0,3,25
04 u32 amount
8 bytes

hwvx_actions_4tDestructibleChangeMode_sec2

Offset Type Description
00 u32 offseted to:
hwvx_Airbox
([4] *4) bytes

hwvx_actions_4tFXPointChangeMode

hwvx_actions_4tFXPointChangeMode_sec1

Offset Type Description
00 u32 1,0
04 u32 amount
8 bytes

hwvx_actions_4tFXPointChangeMode_sec2

Offset Type Description
00 u32 offseted to:
hwvx_Airbox
([4] *4) bytes

hwvx_actions_4tInterfacePlay

Offset Type Description
00 u32 offset (hwvx_interface)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_actions_4tItemChangeMode

hwvx_actions_4tItemChangeMode_sec1

Offset Type Description
00 u32 1,0
04 u32 amount
8 bytes

hwvx_actions_4tItemChangeMode_sec2

Offset Type Description
00 u32 offseted to:
hwvx_world_36_48_24
([4] *4) bytes

hwvx_actions_4tTimerChangevalue

Offset Type Description
00 u32 15,16,17,45
04 u32 always 1
08 u32 offset (hwvx_world_76)
12 u32 0,1
16 float / u32 based on type [12]
0 = float 0 - 360000
1 = offset (hwvx_world_76)
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tTimerChangeMode

Offset Type Description
00 u32 23,24
04 u32 7,8
08 u32 always 1
12 u32 offset (hwvx_world_76)
16 bytes

hwvx_actions_4tMoveableChangeMode

Offset Type Description
00 u32 3,11,12
04 u32 6,13
08 u32 3,4,5,6,30
12 u32 0
16 u32 0,1
20 u32 offset (hwvx_world_20)
24 u32 offset (hwvx_world_20)
28 u32 0
32 bytes

hwvx_actions_4tMusicChanget10

Offset Type Description
00 float always 1
04 u32 0
08 float always 1
12 u32 0
16 float always 1
20 u32 0
24 u32 6,41
28 u32 0 - 45
32 u32 0,39,40
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_actions_4tMusicChanget20

Offset Type Description
00 float always 1
04 u32 0
08 float always 1
12 u32 0
16 float always 1
20 u32 0
24 u32 6,41
28 u32 0 - 20
32 u32 0,40
36 u32 always 1
40 u32 0
44 u32 0
48 u32 always 1
52 float always 1
56 u32 0
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 always 10
80 bytes

hwvx_actions_4tNavPointChangeMode

hwvx_actions_4tNavPointChangeMode_sec1

Offset Type Description
00 u32 1,0
04 u32 amount
8 bytes

hwvx_actions_4tNavPointChangeMode_sec2

Offset Type Description
00 u32 offseted to:
hwvx_world_routes
([4] *4) bytes

hwvx_actions_4tTargetArrowSetTargett1

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_actions_4tTargetArrowSetTargett5

Offset Type Description
00 u32 1,2,3,4,6
04 u32 based on type [0]
1 = hwvx_world_12
2 = hwvx_Airbox
3 = hwvx_world_36_48_24
4 = hwvx_world_20
6 = hwvx_world_routes
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tVariableChangeValue

Offset Type Description
00 u32 15,16,17
04 u32 always 1
08 u32 offset (hwvx_world_76)
12 u32 0,1,2
16 float based on type [12]
0 = float = -1 - 11
1 = offset (hwvx_world_76)
2 = u32 always 1
20 u32 offset (hwvx_world_12)
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tVehicleChangeMode

hwvx_actions_4tVehicleChangeMode_sec1

Offset Type Description
00 u32 10,9,3,0
04 u32 amount
8 bytes

hwvx_actions_4tVehicleChangeMode_sec2

Offset Type Description
00 u32 offseted to:
hwvx_world_routes
([4] *4) bytes

hwvx_actions_4tPrintDebugString

Offset Type Description
00 u32 4,7,8
04 u32 always 60
08 u32 offset (hwvx_text)
12 u32 0
16 bytes

hwvx_actions_4tVehicleTeleport

Offset Type Description
00 u32 always 1
04 u32 offset (hwvx_world_52)
08 u32 always 1
12 u32 offset (hwvx_world_12)
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tVehicleChangeControl

hwvx_actions_4tVehicleChangeControl_sec1

Offset Type Description
00 u32 35,34
04 u32 0
08 u32 amount
12 bytes

hwvx_actions_4tVehicleChangeControl_sec2

Offset Type Description
00 u32 offseted to:
hwvx_world_12
([8] *4) bytes

hwvx_actions_4tVehicleRemoveItem

Offset Type Description
00 u32 0,1
04 u32 always 1
08 u32 offset (hwvx_world_12)
12 u32 0
16 bytes

hwvx_actions_4tVariableChangeMode

Offset Type Description
00 u32 23,24
04 u32 always 1
08 u32 offset (hwvx_world_76)
12 u32 0
16 bytes

hwvx_actions_4tEndInterface

Offset Type Description
00 u32 always 1
04 u32 offset (hwvx_interface)
08 u32 0
12 u32 0
16 bytes

hwvx_actions_4tHUDChangeMode

Offset Type Description
00 u32 always 1
04 u32 0,1
08 u32 0,1,2
12 u32 0
16 bytes

hwvx_actions_4tCodeVariableModifyValuet5

Offset Type Description
00 u32 always 17
04 u32 100,101,102,106,300,301
08 u32 0 - 56
12 u32 0
16 float 0,1,4
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tCodeVariableModifyValuet6

Offset Type Description
00 u32 15,16,17
04 u32 always 1
08 u32 always 1
12 u32 offset (hwvx_world_12)
16 u32 0,1
20 float / u32 not sure how this is calculated
??? = offset (hwvx_world_76)
??? = float 500,10000
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tPauseTACSystem

Offset Type Description
00 u32 always 7
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_actions_4tResetGameRound

Offset Type Description
00 u32 always 1
04 u32 always 1
08 u32 0,1
12 u32 0
16 bytes

hwvx_actions_4tRoundComplete

Offset Type Description
00 u32 1,2,3,4
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_actions_4tVehicleGiveItem

Offset Type Description
00 u32 type 0,1
04 u32 based on type [0]
0 = offset (hwvx_world_36_48_24)
1 = value 5
08 u32 always 1
12 u32 offset (hwvx_world_12)
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_actions_4tSetPlayerOrder

Offset Type Description
00 u32 offset (hwvx_world_12)
04 u32 offset (hwvx_world_12)
08 u32 offset (hwvx_world_12)
12 u32 offset (hwvx_world_12)
16 bytes

hwvx_collision

Offset Type Description
00 float -5440.41748046875 - 2628.495361328125
04 float -845.314208984375 - 274.95953369140625
08 float -4785.1474609375 - 2001.7733154296875
12 u32 0
16 float -1840.74072265625 - 5082.46826171875
20 float -578.736328125 - 971.1260375976562
24 float -440.14031982421875 - 5246.712890625
28 u32 0
32 u32 offset based on amount [68]
36 u32 always 13
40 float 173.8902130126953 - 435.968994140625
44 float 114.5673828125 - 383.2198486328125
48 float 190.80894470214844 - 447.3970642089844
52 u32 amount 3,4,6,7,8,9,14,20,27,28
56 u32 amount 1,2,3,4
60 u32 amount 5,6,7,8,9,10,20,26,33
64 u32 offset based on amounts [52] * [56] * [60]
68 u32 amount 37 - 881
72 u32 amount 0,1492
76 u32 offset based on amount [72]
80 u32 amount 0 - 8118
84 u32 offset based on amount [80]
88 u32 0,1
92 u32 offset
96 bytes

hwvx_collision_32

Offset Type Description
00 float -5440.41748046875 - 4706.65087890625
04 float -845.314208984375 - 680.969482421875
08 float -4785.1474609375 - 4860.8720703125
12 float -107374176,0,NaN
16 float -5064.60009765625 - 5082.46826171875
20 float -693.3037109375 - 971.1259765625
24 float -4475.44140625 - 5246.712890625
28 u32 0,1232668,1232672,1233940,1233964,3435973836
32 u32 0 - 3435973836
36 u32 0,18481152,479238360,568455328,2161316352,2295206400,3435973836
40 u32 0,18481528,18481616,479238376,1634007927,3435973836
44 u32 0,18481616,18481632,134217728,488477640,568455328,3435973836
48 u32 offset (hwvx_collision_related) based on amount [60]
52 u32 0
56 u32 offset based on amount [60]
60 u32 amount 0 - 3019
64 u32 0 - 429
68 u32 offset (hwvx_collision_related)
72 u32 0
76 u32 0
80 bytes per entry

hwvx_collision_32_56

Offset Type Description
00 u32 0 - 1491
4 bytes per entry

hwvx_collision_64

Offset Type Description
00 u32 0 - 880
4 bytes per entry

hwvx_collision_76

Offset Type Description
00 float -0.9999915957450867 - 0.9999915361404419
04 float -1.0000001192092896 - 1.0000001192092896
08 float -0.9999914765357971 - 0.9999917149543762
12 float -2995.0576171875 - 3389.302734375
16 u32 offset
20 u32 always 3
24 u32 0
28 u32 0
32 bytes per entry

hwvx_collision_76_16

Offset Type Description
00 float 40.01084899902344 - 1390.8360595703125
04 float 274.95953369140625 - 571.034912109375
08 float 2001.7733154296875 - 3350.8623046875
12 float always 1
16 float 40.01084899902344 - 1390.8360595703125
20 float 274.95953369140625 - 571.034912109375
24 float 2001.7733154296875 - 3350.8623046875
28 float always 2
32 float 40.01084899902344 - 1390.8360595703125
36 float 274.95953369140625 - 571.034912109375
40 float 2001.7733154296875 - 3350.8623046875
44 u32 0
48 bytes

hwvx_collision_84

Offset Type Description
00 float -5412.91943359375 - 5081.873046875
04 float -807.8600463867188 - 970.9448852539062
08 float -4666.2177734375 - 5211.57275390625
12 u32 0
16 float -5412.91943359375 - 5070.2802734375
20 float -807.533935546875 - 970.943115234375
24 float -4623.6279296875 - 5246.712890625
28 u32 0
32 u8 always 205
33 u8 always 205
34 u8 always 205
35 u8 always 205
36 u32 0,1
40 u8 always 205
41 u8 always 205
42 u8 always 205
43 u8 always 205
44 u8 always 205
45 u8 always 205
46 u8 always 205
47 u8 always 205
48 bytes per entry

multi linked to by:
hwvx_collision_32 [68]

Offset Type Description
00 float -1.0000001192092896 - 1
04 float -1 - 1.0000001192092896
08 float -1 - 1
12 float -4917.30712890625 - 5035.7841796875
16 u8 0,1
17 u8 0
18 u8 0
19 u8 0,1
20 u8 0 - 255
21 u8 0 - 255
22 u8 0 - 255
23 u8 0 - 255
24 u8 always 205
25 u8 always 205
26 u8 always 205
27 u8 always 205
28 u8 always 205
29 u8 always 205
30 u8 always 205
31 u8 always 205
32 bytes per entry

multi linked to by:
hwvx_collision [92]

Offset Type Description
00 u32 offset
04 u32 offset same as hwvx_collision_settings
08 u32 0
12 u32 0
16 bytes

hwvx_geo_basic

Offset Type Description
00 u32 offset sometimes
04 u32 offset sometimes
8 bytes

hwvx_geo_basic_0

based on amount [56] prob

Offset Type Description
00 u32 4 - 11595
04 u32 0
08 u32 patch model
12 bytes per entry

hwvx_share

based on amount [56] prob

Offset Type Description
00 u32 patch model
4 bytes per entry

hwvx_model

multi linked to by:
hwvx_model_car_sound_link [0]

Offset Type Description
00 u16 type
2 = pc version
4101 = ps2 version
8195 = gamecube version
02 u16 amount | 1 - 5
04 u32 0,7
08 u32 based on type [0], also based on amount [2]
8195 = offset gc vers
4101 = offset ps2 vers
2 = offset pc vers
12 u32 offset based on amount [2]
16 float -0.9685837030410767,-0.0005000000237487257
20 float -2,-0.0005000000237487257
24 float -0.9589033722877502,-0.0005000000237487257
28 float 0.0008660254534333944,2.436023712158203
32 float 0.0005000000237487257,0.9685831069946289
36 float 0,0.0005000000237487257
40 float 0.0005000000237487257,0.9980267882347107
44 float 2.0015093822309118e-32,0.0008660254534333944,1.7016308307647705
48 float -2.980232238769531e-7,0
52 float -1,0
56 float 0,0.019561707973480225
60 u32 0
64 bytes

hwvx_model_gc_8

Offset Type Description
00 u8 0
01 u8 0
02 u8 0
03 u8 1,2
04 u32 0
08 u32 offset
12 u32 offset
16 u32 offset
20 u32 offset
24 bytes per entry

hwvx_model_gc_8_8

Offset Type Description
00 u32 patch Animation 2052,2054,2068,4096,4097,8193,8196,8198,8212,8214
04 u8 0 - 255
05 u8 0 - 255
06 u8 0 - 255
07 u8 0 - 255
08 u32 0
12 u32 offset
16 u32 960,2400
20 u32 65558,327680
24 u32 patch texture
28 u32 offset
32 bytes

hwvx_model_gc_8_8_12

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_model_gc_8_8_28

some data

hwvx_model_gc_8_12

sometimes section is just an array of floats, not sure how this is calculated

Offset Type Description
00 u32 length of hwvx_model_gc_8_16sec1? maybe offset
04 u32 length of ? maybe offset
08 u32 length of ? maybe offset
12 u32 length of hwvx_model_gc_8_12
16 bytes

hwvx_model_gc_8_16sec1

Offset Type Description
00 float ?
([0] /4) bytes

other float arrays seen?


hwvx_model_gc_8_16

Offset Type Description
00 u32 0,10,30
04 u32 5,6,15
08 u32 0,6
12 u32 5,6,15
16 u32 0,5
20 u32 0,6
24 u32 0,6
28 u32 0,6
32 bytes

hwvx_model_ps2_8

Offset Type Description
00 u8 1,2
01 u8 0
02 u8 1,2
03 u8 0
04 u32 6,174
08 u32 offset
12 u32 456349648,587407560
16 u8 0,48,136,160,176
17 u8 0,27,48,167,192
18 u8 0,126,130,179,219
19 u8 0,34,39,40
20 u32 offset
24 u32 0
28 u32 0
32 bytes

hwvx_model_ps2_8_8

Offset Type Description
00 u32 patch Animation 0,65536,262144,327680,393216,1310720,1376256,1441792
04 u8 0 - 255
05 u8 0 - 255
06 u8 0 - 255
07 u8 0,2,5,32,48,64,128,192,255
08 u32 0
12 u32 offset
16 u32 2,52,132
20 u32 0,5,1441793
24 u32 patch texture
28 u8 104,168,240
29 u8 65,66,88
30 u8 3,51
31 u8 27,35
32 bytes

hwvx_model_ps2_8_8_12

some data

hwvx_model_pc_8

Offset Type Description
00 u8 0
01 u8 0
02 u8 amount | 1,2,3,4,6,15,60
03 u8 0
04 u32 0
08 u32 offset based on amount [2]
12 u32 offset
16 u32 offset
20 u32 hwvx_model_string
24 bytes per entry

hwvx_model_pc_8_8

Offset Type Description
00 u8 0
01 u8 0
02 u8 0,1
03 u8 8,16,32
04 u8 0 - 255
05 u8 0 - 255
06 u8 0 - 255
07 u8 0,2,32,48,64,128,192,255
08 u32 0
12 u32 offset
16 u32 2,52,132
20 u32 0,5,1441793
24 u32 patch texture
28 u32 offset
32 bytes per entry

hwvx_model_pc_8_8_12

???
Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_model_pc_8_8_28

some data

hwvx_model_pc_8_12

sections seen:
hwvx_model_pc_8_12_type_a
hwvx_model_pc_8_12_type_b

hwvx_model_pc_8_12_type_a

Offset Type Description
00 u32 offset
04 u32 offset
08 u32 offset
12 u32 offset
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_model_pc_8_12_type_a

some data 16 byte floats

hwvx_model_pc_8_12_type_a

colors?

hwvx_model_pc_8_12_type_a

prob vertices

hwvx_model_pc_8_12_type_a

??? some data 16 byte floats

hwvx_model_pc_8_12_type_b

array of floats?


hwvx_model_pc_8_16

Offset Type Description
00 u32 0,10,30
04 u32 5,6,15
08 u32 0,6
12 u32 5,6,15
16 u32 0,5
20 u32 0,6
24 u32 0,6
28 u32 0,6
32 bytes

hwvx_model_string

name of texture when first imported?


hwvx_model_12

Offset Type Description
00 float 40 - 1000000000
4 bytes per entry

hwvx_texture_anims

linked to by:
hwvx_datapack [60]

Offset Type Description
00 u32 offset (hwvx_texture_anims_0), to end of ordered
04 u32 0
08 u32 0
12 bytes per entry

hwvx_model_anims_1

multi linked to by:
hwvx_car [72]
hwvx_model_link [16]
hwvx_item_48_0 [16]
hwvx_world_20 [4]

Offset Type Description
00 u32 always 1
04 u32 always 3
08 float 0,1
12 float 1,5,20,30,45,60,90,100,110
16 u32 amount 1,2,3,5,6,7
20 u32 7,14,21,35,42,49
24 u32 offset
28 u32 offset
32 u32 offset
36 u32 offset based on amount [48]
40 u32 0 - 96
44 u32 offset based on amount [16]
48 u32 amount 0,2,3,4,5,6,10
52 u8 160,188,196,205
53 u8 91,155,189,205
54 u8 17,18,19,21,92,205
55 u8 20,36,205
56 u8 48,104,205,208
57 u8 80,145,189,205
58 u8 17,18,19,21,92,205
59 u8 20,36,205
60 u8 16,205
61 u8 188,205
62 u8 3,205
63 u8 120,205
64 bytes

hwvx_model_anims_1_24

4 - 24 bytes seen


hwvx_model_anims_1_28

12 - 32 bytes seen

hwvx_model_anims_1_28_sec1

Offset Type Description
00 u16 127
??? bytes

hwvx_model_anims_1_28_sec2

Offset Type Description
00 string string sometimes | Rotation / Steering
??? bytes

hwvx_model_anims_1_32

16 - 496 bytes seen

floats

hwvx_model_anims_1_36

Offset Type Description
00 float -0.1280108541250229 - 0.12730559706687927
04 float -0.18450942635536194 - 0.36374297738075256
08 float -0.34272292256355286 - 0.2513327896595001
12 float -3.0225775241851807 - 6
16 bytes per entry

hwvx_model_anims_1_44

Offset Type Description
00 float -1.2580000162124634 - 1.496351957321167
04 float -14227988480 - 1.065486078644644e+34
08 float -0.5 - 1
12 float -431602080 - 2
16 float -431602080 - 1.75
20 float -431602080 - 1
24 bytes per entry

hwvx_model_anims_2

multi linked to by:
hwvx_car [76]
hwvx_model_link [20]
hwvx_model_link_56 [8]
hwvx_car_128 [96]
hwvx_car_228 [0]
hwvx_item [52]
hwvx_item_48 [28]
hwvx_item_48_0 [20]
hwvx_world_model_related [20]

Offset Type Description
00 u32 amount 1 - 7
04 u8 0 - 180
05 u8 0 - 247
06 u8 0 - 248
07 u8 0 - 244
08 u32 0,1
12 u32 0
16 u32 offset based on amount [0]
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_model_anims_2_16

Offset Type Description
00 float -0.7071067690849304,-0.08715574443340302,0,1
04 float -0.1736481785774231,0,0.1736481785774231
08 u32 0,0.0030252328142523766
12 float 0,0.7071067690849304,0.9848077297210693,0.9961947202682495,1
16 float -3.002809524536133,-1.75,-0.75,-0.2291913479566574,-1.0269562977782698e-15,0,0.2290000021457672,0.75,1.75,2.997190475463867
20 float -0.5 - 6
24 float -3.0225775241851807 - 3.5
28 u8 0,1,2,3,4
29 u8 0 - 219
30 u8 1,3,5,255
31 u8 0 - 205
32 bytes per entry

hwvx_texture

offseted from hwvx_datapack
values 00,02,04,06 are always little endian

pc/ps2 is 16 bytes per entry
gamecube version is 32 bytes per entry

Offset Type Description
00 u16 texture type
* 0 = RGB
* 1 = RGBA uncompressed
* 2 = 8-bit Indexed
* 4 = dxt1
* 5 = dxt5
02 u16 x
04 u16 y
06 u16 mip maps
08 u32 offset texture data
12 u32 CLUT index
16/32 bytes per entry

texture_data

RGB,RGBA,8-bit Indexed seen


color table

1024 / 256 colors per entry, offseted from hwvx_datapack


hwvx_share_end

Offset Type Description
00 u32 offset string
04 u32 amount always 95
08 u32 offset based on amount [4]
12 u32 amount always 15
16 u32 offset based on amount [12]
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_share_end_8

Offset Type Description
00 u32 patch texture
4 bytes per entry

hwvx_share_end_16

Offset Type Description
00 u32 patch sound 0 - 14
04 u32 0
8 bytes per entry

Unordered List

sections here appear whenever they are linked and do not have a set order

multi linked

hwvx_world_text_link
hwvx_model_car_sound_link
hwvx_world_color_section
hwvx_world_idk
hwvx_some_world_thing
hwvx_world_small_section
hwvx_world_model_related
hwvx_car_related
hwvx_car_path_related
hwvx_car_link
hwvx_car_unknown_link
hwvx_text
hwvx_font
hwvx_strange
hwvx_unknown
hwvx_unknown_thing
hwvx_asdf
hwvx_unknown_idk_sec
hwvx_grand_section
hwvx_unknown_whatever
hwvx_unknown_small_model_link
hwvx_unknown_link_section
hwvx_sound_controls
hwvx_sound_section
hwvx_interface
hwvx_interface_unknown
hwvx_interface_text_related

just linked

hwvx_geo_list
hwvx_collision_settings
hwvx_car
hwvx_model_link
hwvx_mysterious
hwvx_item
hwvx_world_settings
hwvx_link
hwvx_texture_anims_0

multi linked to by:
hwvx_world_92 [4]

Offset Type Description
00 u8 0,1,2
01 u8 always 23
02 u8 1,2,3,4
03 u8 0
04 u32 0
08 u32 1,2,4,8,16,32,64,128,256
12 u32 offset (hwvx_world_small_section)
16 u32 offset (hwvx_world_small_section)
20 u32 offset (hwvx_text)
24 u32 offset (hwvx_text)
28 u32 0
32 bytes

multi linked to by:
hwvx_world_20 [12]

Offset Type Description
00 u32 patch model
04 u8 0
05 u8 0,1
06 u8 0
07 u8 0
08 u32 0
12 u32 0
16 u32 offset (hwvx_car_link)
20 u32 0
24 u32 0,1
28 u32 offset
32 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u8 always 3
17 u8 0
18 u8 0
19 u8 0
20 u32 0
24 u32 offset (hwvx_sound_controls)
28 u32 0
32 bytes

hwvx_world_color_section

multi linked to by:
hwvx_world_100 [4]

Offset Type Description
00 u32 amount 5,7,10
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_world_color_section_4

Offset Type Description
00 u8 0,61,87,128,255
01 u8 0,37,59,61,66,72,84,128,192,255
02 u8 0,38,39,72,75,85,128,192,255
03 u8 always 255
04 u8 0,1
05 u8 0
06 u8 0
07 u8 0
08 float 0,25,100,125,250,300,400,500,1000
12 bytes per entry

hwvx_world_idk

multi linked to by:
hwvx_world_12 [64]

Offset Type Description
00 float 0.3330000042915344 - 200
04 float always 1
08 float always 1
12 float 0 - 1466.666015625
16 float always 1
20 float 0.10000000149011612,0.30000001192092896,0.5,0.75,1,1.25,1.5,2
24 float 0,0.25,0.5,0.75,0.800000011920929,1
28 float 0.10000000149011612 - 3
32 u8 always 255
33 u8 always 255
34 u8 0
35 u8 0
36 u8 always 3
37 u8 0
38 u8 1,3,5,7
39 u8 0,33,66,100
40 u32 0
44 u32 amount 1,2,3
48 u32 offset based on amount [44]
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_world_idk_48

Offset Type Description
00 u32 offset (hwvx_some_world_thing)
04 u32 amount 0,1,2,3
08 u32 offset based on amount [4]
12 bytes per entry

hwvx_world_idk_48_8

Offset Type Description
00 u32 offset (hwvx_some_world_thing)
04 u32 0,1
08 u32 offset
12 bytes per entry

hwvx_world_idk_48_8_8

Offset Type Description
00 u32 offset (hwvx_some_world_thing)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_some_world_thing

multi linked to by:
hwvx_world_idk_48 [0]

Offset Type Description
00 u8 1,3,6,8,9,11,14
01 u8 0,1
02 u8 0,3
03 u8 0
04 u8 0
05 u8 0,1
06 u8 0
07 u8 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 float 0,50,75,150,200,250,20000,512000
28 u32 0
32 float 0,30,60,105
36 float 0,40
40 float 0,10,60
44 u32 0
48 u32 0
52 u32 0,5000,10000
56 u32 0
60 u32 0
64 u32 100,200,300
68 u32 50,75,100
72 u32 0
76 u32 0
80 u32 0
84 u32 0
88 u32 offset
92 u32 0
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 u32 0
116 u32 offset string get_hwvx_string
120 u32 0
124 u32 0
128 bytes

hwvx_some_world_thing_88

Offset Type Description
00 u8 0
01 u8 0
02 u8 always 1
03 u8 0
04 u8 0
05 u8 0
06 u16 always 1
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_world_small_section

multi linked to by:
hwvx_world_76 [0]
hwvx_world_text_link [12][16]

Offset Type Description
00 u8 0,1,2,3
01 u8 0,1
02 u8 0,12,13,99
03 u8 0,1
01 u8 0,1
02 u8 0,12
03 u8 0
04 u32 0 - 3315351552
08 float 0 - 610000
12 u32 offset
16 bytes

hwvx_world_small_section_12

Offset Type Description
00 u8 0,23,24
01 u8 0,7,8
02 u8 0
03 u8 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

multi linked to by:
hwvx_Airbox [36]

Offset Type Description
00 u32 based on type [4]
0 = patch model
1 = offset (hwvx_model_link)
04 u8 type 0,1
05 u8 0,1,2
06 u8 0,1
07 u8 0,1
08 float 0 - 6000
12 u32 offset (hwvx_sound_controls)
16 u32 offset (hwvx_car_link)
20 u32 offset (hwvx_model_anims_2)
24 u32 amount 0,1,2,3
28 u32 offset (hwvx_mysterious) based on amount [24]
32 bytes

hwvx_geo_list

linked to by:
hwvx_geo_basic [4]

Offset Type Description
00 u32 amount 326,714,818,1509,2386,2955,4561,5875
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_geo_list_4

Offset Type Description
00 u32 amount 1,2,3,4
04 u32 offset
08 u32 offset based on amount [0]
12 u8 0 - 255
13 u8 5 - 255
14 u8 0 - 255
15 u8 always 255
16 u32 probably not an offset
20 bytes per entry

hwvx_geo_list_4_8

Offset Type Description
00 float -431602080 - 0.9998182058334351
4 bytes per entry

hwvx_geo_list_4_4

Offset Type Description
00 u32 0 - 14
04 u32 0 - 14
08 u32 0,2,3,4,6,7,9,10,11
12 u32 0,3,9
16 bytes

hwvx_collision_settings

linked to by:
hwvx_collision_link [0][4]

Offset Type Description
00 u8 0,1
01 u8 0,1
02 u8 0
03 u8 0
04 float 5,15
08 float 75,100,200
12 float 5,10,15
16 float 75,100,200
20 float 0.75,1
24 float 0.05000000074505806,0.30000001192092896,0.5
28 float 70,125
32 float always 1
36 float always 1
40 u32 0
44 u32 0
48 u32 offset (hwvx_unknown)
52 u32 offset (hwvx_unknown_thing)
56 u32 0
60 u32 offset (hwvx_sound_section)
64 u32 offset (hwvx_unknown)
68 u32 amount 1,3
72 u32 offset based on amount [68]
76 u32 amount 1,3
80 u32 offset same as hwvx_collision_settings_72 based on amount [76]
84 u32 0
88 u32 0
92 u32 0
96 bytes

hwvx_collision_settings_72

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

hwvx_car

linked to by:
hwvx_basic_4 [0]t0

Offset Type Description
00 u32 0
04 float 0.5 - 3.5
08 float 0,1,2
12 u32 0
16 u8 always 75
17 u8 always 1
18 u8 0
19 u8 0
20 u32 39321600,600
24 u32 always 20
28 float 7100 - 10000
32 float 6500,6000
36 float 4000,3500
40 float always 1000
44 float 12,15
48 float always 1.25
52 float 1.149999976158142,1.25
56 float always 1
60 float 1,10
64 u32 0
68 u32 patch texture
72 u32 offset (hwvx_model_anims_1)
76 u32 offset (hwvx_model_anims_2)
80 u32 patch texture
84 u32 patch model
88 u32 0
92 u32 offset (hwvx_sound_section)
96 u32 offset (hwvx_sound_section)
100 u32 offset (hwvx_sound_section)
104 u32 0
108 u32 offset
112 u32 0
116 u32 0
120 u32 offset
124 u32 offset
128 u32 offset
132 u32 offset
136 u32 offset
140 u32 offset
144 u32 offset (hwvx_car_related)
148 u32 offset (hwvx_car_related)
152 u32 offset (hwvx_car_related)
156 u32 offset (hwvx_car_related)
160 u32 offset (hwvx_car_link)
164 u32 offset
168 u32 0
172 u32 offset
176 u32 offset (hwvx_unknown)
180 u32 0
184 u32 0
188 u32 0
192 u32 0
196 u32 0
200 u32 0
204 u32 0
208 u32 amount always 4
212 u32 offset based on amount [208]
216 u32 amount always 5
220 u32 offset based on amount [216]
224 u32 amount always 10
228 u32 offset (hwvx_car_228) based on amount [224]
232 u32 amount always 5
236 u32 offset (hwvx_car_228) based on amount [232]
240 u32 0
244 u32 0
248 u32 always 1
252 u32 offset
256 u32 always 1
260 u32 offset
264 u32 1,2
268 u32 offset
272 u32 0
276 u32 0
280 u32 amount always 5
284 u32 offset (hwvx_car_220) based on amount [280]
288 bytes

hwvx_car_108

Offset Type Description
00 u8 0,10
01 u8 5,10
02 u8 5,10
03 u8 40,45
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_car_120

Offset Type Description
00 float -0.20000000298023224 - -0.05000000074505806
04 float 0,0.10000000149011612
08 float 0,0.02500000037252903,0.10000000149011612
12 u32 0
16 u32 offset
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u8 5,25,50
37 u8 5,25,50
38 u8 5,25,50
39 u8 0
40 u32 0
44 u32 0
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 u32 0
84 u32 0
88 u32 0
92 u32 0
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 bytes

hwvx_car_124

Offset Type Description
00 float 0,50
04 float 0,5
08 u32 0
12 float always 100
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_car_128

Offset Type Description
00 float 0,0.44999998807907104
04 float -0.5 - 2.5
08 float -3,-2,-1.5,-1.2999999523162842,-1.25,-1,-0.5,0,0.25,1
12 float always 1
16 u32 always 200
20 float 5,6,7.5
24 u32 0
28 u32 0
32 float always 5000
36 float always 0.20000000298023224
40 float always 0.30000001192092896
44 float always 0.0010000000474974513
48 u32 0
52 float 0.6000000238418579 - 1
56 float 25,50,60,100
60 float 50,100
64 float always 900
68 float 220,290,300,10000
72 u32 0
76 u32 0
80 u32 0
84 u32 0
88 u32 0
92 float 0.03999999910593033 - 0.15000000596046448
96 u32 offset (hwvx_model_anims_2)
100 float 0.20000000298023224 - 0.8500000238418579
104 float 4500,14000,15000,18000,20000,22000
108 float 0,1
112 u32 0
116 u32 0
120 u32 0
124 u32 0
128 u32 amount always 3
132 u32 offset (hwvx_car_128_132) based on amount [128]
136 u32 amount 2,3
140 u32 offset (hwvx_car_128_132) based on amount [136]
144 u32 offset
148 u32 0
152 u32 0
156 u32 0
160 bytes

hwvx_car_128_132

Offset Type Description
00 u8 type 0,4
01 u8 0
02 u8 0
03 u8 0
04 u32 based on type [0]
0 = offset
4 = offset
08 u32 0
12 bytes per entry

hwvx_car_128_132_4t0

Offset Type Description
00 float 75,85
04 float 24,25,28,30,30.399999618530273,33,35,36,37.400001525878906
08 float 3.5999999046325684,4.300000190734863,8
12 float always 40
16 float always 20
20 float 0.23499999940395355,0.41499999165534973
24 float always 0.5
28 u32 0
32 bytes

hwvx_car_128_132_4t4

Offset Type Description
00 u32 0
04 float 1,1.2999999523162842,1.5,1.75,2,2.5,3
08 float 0,4,5,6,6.5,7,8.5,12
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_car_128_144

Offset Type Description
00 u32 0
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_car_128_144_4

Offset Type Description
00 float always 75
04 float always 20
08 float always 5
12 float always 40
16 float always 20
20 u32 0
24 float always 0.5
28 u32 0
32 bytes

hwvx_car_132

Offset Type Description
00 u32 0
04 float -0.3499999940395355,0
08 float 0,15
12 u32 0
16 u32 offset (hwvx_interface)
20 u32 0
24 u32 offset (hwvx_interface)
28 u32 offset (hwvx_interface)
32 u32 0
36 u32 0
40 u32 0
44 u32 offset
48 u32 0
52 float 8.705625980860278e-24 - 1.2036025378334795e+22
56 u32 0
60 u32 0
64 bytes

hwvx_car_132_44

Offset Type Description
00 u8 always 255
01 u8 always 255
02 u8 always 255
03 u8 always 255
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_car_136

Offset Type Description
00 u32 0
04 float always 2
08 float 0,1.5
12 u32 0
16 u32 0
20 float 0.30000001192092896 - 1
24 float always 1
28 float always 0.25
32 float always 1
36 float always 600
40 float 0,1.5
44 float always 2000
48 u32 always 200
52 float always 37
56 float always 1000
60 float always 300
64 u32 0
68 u32 0
72 float always 1
76 u32 0
80 u32 0
84 u32 0
88 u32 0
92 u32 0
96 bytes

hwvx_car_140

Offset Type Description
00 float 1.7999999523162842 - 2.5999999046325684
04 float 1.7999999523162842 - 2.5999999046325684
08 float 2.4000000953674316 - 3.200000047683716
12 float always 400
16 float always 0.5
20 float always 20
24 float always 120
28 float always 100
32 float always 1
36 float always 5
40 u32 always 100
44 float 50,100
48 float always 1100
52 u32 amount always 9
56 u32 offset based on amount [52]
60 u32 amount 5,6
64 u32 offset (hwvx_car_140_64) based on amount [60]
68 u32 0
72 u32 offset (hwvx_text)
76 u32 amount always 1
80 u32 offset (hwvx_car_140_64) based on amount [76]
84 float always 60
88 u32 0
92 u32 0
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 bytes

hwvx_car_140_56

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

hwvx_car_140_64

Offset Type Description
00 u32 offset (hwvx_text)
4 bytes per entry

hwvx_car_164

Offset Type Description
00 u32 0
04 u32 always 1
08 u32 offset
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_car_164_8

Offset Type Description
00 u32 0
04 u32 0
08 float -6,0
12 u32 0
16 u8 0,1
17 u8 0
18 u8 0
19 u8 0
20 float 3,4,5
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_car_172

Offset Type Description
00 float always 12100
04 float always 900
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_car_212

Offset Type Description
00 float 0.8360000252723694 - 2.255000114440918
04 float always 1.2000000476837158
08 float always 1.2000000476837158
12 float 0.800000011920929 - 1.399999976158142
16 float 900,1000,1100,1200,1250
20 float 0,1,1.5
24 float 1.899999976158142 - 4.699999809265137
28 float 150,180,200,250
32 float 1500,2000
36 float 0 - 0.800000011920929
40 float 1,2.5
44 u32 0
48 u32 0
52 u32 0
56 float 9999,99999
60 u8 always 1
61 u8 0
62 u8 always 1
63 u8 0,1
64 u16 1,2,3,4,5,6,7,8
66 u8 always 1
67 u8 0
68 u32 0
72 u32 0
76 u32 0
80 bytes per entry

hwvx_car_220

Offset Type Description
00 float 0 - 0.05000000074505806
04 u32 offset (hwvx_sound_section)
8 bytes per entry

hwvx_car_228

Offset Type Description
00 u32 offset (hwvx_model_anims_2)
04 u32 amount 0 - 33
08 u32 offset based on amount [4]
12 bytes per entry

hwvx_car_252

Offset Type Description
00 u32 0
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_car_252_4

Offset Type Description
00 u32 always 1
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_car_252_4_4

Offset Type Description
00 u32 always 64
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_car_260

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 u32 0
52 u32 always 1
56 u32 offset
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 bytes

hwvx_car_260_56

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_car_268

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

multi linked to by:
hwvx_car [144]

Offset Type Description
00 float 0.3330000042915344,0.75,1,1.25,2
04 float always 1
08 float always 1
12 float 0,168.66659545898438,190.6665802001953,212.66656494140625,1466.666015625
16 float always 1
20 float 0.5,0.75,1,1.5
24 float 0,0.25,0.5,0.75,1
28 float 0.10000000149011612,0.25,0.4000000059604645,0.5,1,1.5
32 u8 always 255
33 u8 always 255
34 u8 0
35 u8 0
36 u8 always 3
37 u8 0
38 u8 1,3,5,7
39 u8 0,33,66,100
40 u32 0
44 u32 amount 1,2,3
48 u32 offsetbased on amount [44]
52 u32 0
56 u32 0
60 u32 0
64 bytes

Offset Type Description
00 u32 offset (hwvx_car_path_related)
04 u32 amount 0,1,2
08 u32 offset based on amount [4]
12 bytes per entry

Offset Type Description
00 u32 offset (hwvx_car_path_related)
04 u32 0
08 u32 0
12 bytes per entry

multi linked to by:
hwvx_car_related_48 [0]
hwvx_car_related_48_8 [0]

Offset Type Description
00 u8 1,3,9,10,14
01 u8 0,1
02 u8 0,1,3
03 u8 0
04 u8 0
05 u8 0,1
06 u8 0
07 u8 0
08 u32 0
12 u32 0
16 u32 0
20 float 0,1,50
24 float 0,200,1000,2000,3000,20000
28 u32 0
32 float 0,180
36 float 0,50
40 float 0,10,100
44 u32 0
48 u32 0
52 u32 0,1000,2000,5000,10000,20000
56 u32 0
60 u32 0
64 u32 200,300
68 u32 0,100
72 u32 0
76 u32 0
80 u32 0
84 u32 0
88 u32 offset
92 u32 0
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 u32 0
116 u32 offset string
120 u32 0
124 u32 0
128 bytes

Offset Type Description
00 u8 0
01 u8 0
02 u8 always 1
03 u8 0
04 u8 0
05 u8 0
06 u16 always 1
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

multi linked to by:
hwvx_car [160]

Offset Type Description
00 float 0.5,0.699999988079071
04 float 0.5,0.699999988079071
08 float 0.5,0.699999988079071
12 u32 0
16 u8 0,3,4,7
17 u8 0,1
18 u8 0
19 u8 0
20 u32 1000,1100,1300,1350,1450,1500,1600,1700
24 u32 0,1,5,10,25
28 u8 0,119,255
29 u8 0,1,255
30 u8 0,1,255
31 u8 0,119,255
32 float 15,20,25,40
36 float -150,-145,-140,-135,-130
40 float 0 - 610.9417114257812
44 float 300 - 600
48 u32 offset (hwvx_car_unknown_link)
52 u32 amount 0,1,2
56 u32 offset based on amount [52]
60 u32 0,1
64 u32 offset
68 u32 offset
72 u32 0
76 u32 0
80 bytes

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

Offset Type Description
00 u32 offset (hwvx_unknown) sometimes
04 u32 0
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 float -5 - -3
04 float -1.399999976158142,-1,-0.5,-0.25,0,0.5
08 float -14 - -4.400000095367432
12 u32 0
16 float 3 - 5
20 float 2 - 5.25
24 float 3.5 - 13
28 u32 0
32 float 8.876091957092285 - 19.217504501342773
36 u32 0
40 u32 0
44 u32 0
48 bytes

multi linked to by:
hwvx_car_link [48]

Offset Type Description
00 u32 0
04 float 5,10
08 float 75,100,200
12 float 5,10
16 float 75,100,200
20 float 0.800000011920929 - 1.2000000476837158
24 float 0.10000000149011612 - 0.6000000238418579
28 float 70,71
32 float always 1
36 float always 1
40 u32 0
44 u32 0
48 u32 offset (hwvx_unknown)
52 u32 0
56 u32 0
60 u32 offset (hwvx_sound_section)
64 u32 offset (hwvx_unknown)
68 u32 amount always 1,2
72 u32 offset based on amount [68]
76 u32 amount always 1,2
80 u32 offset (hwvx_car_unknown_link_72) based on amount [76]
84 u32 0
88 u32 0
92 u32 0
96 bytes

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

linked to by:
hwvx_car_120 [16]
hwvx_mysterious [24]t9

Offset Type Description
00 u32 0,1
04 u32 offset
08 u32 amount 5 - 7
12 u32 offset based on amount [8]
16 u32 offset (hwvx_model_anims_1)
20 u32 offset (hwvx_model_anims_2)
24 float 0.009999999776482582 - 40
28 u8 0,1
29 u8 always 1
30 u8 0
31 u8 0,2,255
32 u32 offset
36 u32 offset
40 u32 0
44 u32 0,1
48 u32 offset
52 u32 offset
56 u32 offset
60 u32 0
64 bytes

Offset Type Description
00 u32 patch model
04 u32 0
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 patch model
04 u32 0 - 524288
8 bytes per entry

Offset Type Description
00 u32 0
04 float 1,10
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 float 2,10
04 float 3,20,60
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u8 always 1
17 u8 0
18 u8 0
19 u8 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

Offset Type Description
00 float -6.448999881744385,-4.5,-4.25,-4.0320000648498535,-4,-3.740000009536743,0
04 float -5.203999996185303,-1.5,-1.25,-0.9620000123977661,-0.75,-0.5,0,0.5
08 float -14.487000465393066,-9.5,-9.170000076293945,-9,-8,0,7.5,9,9.75,10
12 u32 0
16 float 0,3.740000009536743,4,4.0320000648498535,4.25,4.5,6.448999881744385
20 float 0,2,2.049999952316284,3,3.0799999237060547,3.25,3.5,3.621999979019165
24 float -9,0,7.5,7.53000020980835,9,10.5,13.803999900817871
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

Offset Type Description
00 u32 amount 6,8,10,11,12,16
04 u32 offset base on amount [0]
08 u32 offset (hwvx_model_anims_2)
12 u32 0
16 bytes

Offset Type Description
00 u8 0,1,2
01 u8 always 1
02 u8 always 1
03 u8 0
04 u32 0,4,7,262144,458752
08 u32 patch model
12 u32 offset
16 u32 offset
20 u32 0
24 u32 0
28 bytes per entry

Offset Type Description
00 float -4.133831977844238 - 4.133831977844238
04 float -2.5355870723724365 - 2.4116299152374268
08 float -12 - 10.199999809265137
12 u32 0
16 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_text

multi linked to by:
hwvx_interface_16_20t1 [0]
hwvx_interface_16_20t1_8 [0]
hwvx_interface_text_related [0]
hwvx_car_140 [72]
hwvx_car_140_64 [0]
hwvx_item [32]
hwvx_world_text_link [20][24]

Offset Type Description
00 u32 offset string
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_font

multi linked to by:
hwvx_interface_16_20t1 [4]
hwvx_interface_text_related [8]

Offset Type Description
00 u32 patch texture
04 u32 offset (hwvx_sound_section)
08 u32 789504,1052673,1581056,1583105,2103296,2104833,17829888,18751488,19404800
12 u32 0
16 u32 0
20 u32 0,40
24 u32 0,1
28 u32 offset
32 u32 amount 0,18,19,29
36 u32 offset based on amount [32]
40 float 12,15,16,23,24,32
44 u32 0
48 bytes

hwvx_font_28

Offset Type Description
00 float -4,-3,-2,-1,0
04 u32 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_font_36

Offset Type Description
00 u32 32 - 1509949440
04 float 9 - 32
08 u32 0
12 bytes per entry

hwvx_mysterious

linked to by:
hwvx_car_228 [8]

Offset Type Description
00 float -1.5,0,1.5
04 float -10 - 20
08 float -2.5 - 5
12 u32 0
16 u8 type 1,2,3,5,6,8,9,10,99
17 u8 0,1
18 u16 0,1,2,3,4,5
20 float 0 - 118
24 u32 based on type [16]
1 = offset (hwvx_unknown)
2 = offset (hwvx_strange)
3 = offset (hwvx_sound_controls)
5 = offset
6 = offset
7 = offset
8 = offset (hwvx_model_link)
9 = offset
10 = offset
28 u32 0
32 bytes per entry

hwvx_mysterious_24t5

Offset Type Description
00 u32 0
04 u32 0
08 u32 32 - 1349040
12 u32 0
16 u32 0
20 u32 amount | 1,2,3,4,5,7,8
24 u32 offset based on amount [20]
28 u32 amount | 0,1,2,3,4,6,22,33
32 u32 offset based on amount [20]
36 u32 0
40 u32 0
44 u32 offset
48 bytes

hwvx_mysterious_24t5_24

Offset Type Description
00 float 0 - 125
04 float 0 - 15
08 float 0 - 125
12 u32 0
16 u32 0,1,256,512
20 float 0 - 9250
24 u32 0
28 u32 0
32 bytes

hwvx_mysterious_24t5_32

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 0,255
04 u32 0,1,256,513,768
08 float 0 - 500
12 bytes

hwvx_mysterious_24t5_44

Offset Type Description
00 float 0,0.25,0.5,1
04 float 0,0.10000000149011612,0.25,0.5,1,3
08 float 0,0.10000000149011612,0.25,0.5,1
12 u32 0
16 float -960 - 1440
20 float -100,0,50,100,120,220,222,400
24 u32 0
28 u32 0
32 bytes

hwvx_mysterious_24t6

Offset Type Description
00 u8 0,1
01 u8 2,5
02 u8 0,1
03 u8 0,1
04 u8 always 1
05 u8 0
06 u8 0
07 u8 0
08 u32 patch texture
12 u32 amount 1,2
16 u32 offset based on amount [12]
20 u32 amount 1,2,3
24 u32 offset (hwvx_mysterious_24t6_16) based on amount [20]
28 u32 amount 2,3,4,5,6
32 u32 offset based on amount [28]
36 u32 offset
40 u32 offset
44 u32 0
48 float 0,30,40,50,60,100,360,720
52 float 0,120,150,190,200,300
56 float 0,1
60 u32 0
64 bytes

hwvx_mysterious_24t6_16

Offset Type Description
00 float -360 - 2160
04 float 0,1
08 float 0,1
12 u32 0
16 u8 0,1
17 u8 0,2
18 u8 0
19 u8 0
20 float 0 - 3456
24 u32 0
28 u32 0
32 bytes per entry

hwvx_mysterious_24t6_32

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 10,255
04 u8 0,1
05 u8 0,1,3
06 u8 0
07 u8 0
08 float 0 - 1500
12 bytes per entry

hwvx_mysterious_24t6_36

Offset Type Description
00 float 30,40,50,60,100
04 float 120,150,190,200,300
08 u32 0
12 u32 0
16 bytes

hwvx_mysterious_24t6_40

Offset Type Description
00 u32 0
04 u32 0
08 float -1,1
12 u32 0
16 float 70,80,90,110,120
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_mysterious_24t7

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 u8 always 2
33 u8 0,2
34 u8 0
35 u8 0
36 u32 always 100
40 u32 0
44 u32 0
48 float 1.75,1,2
52 float 5,0.25,0.5
56 float 0,5
60 float always 1
64 float 1,3
68 u32 amount 1,3,5
72 u32 offset based on amount [68]
76 u32 always 1
80 u32 offset
84 u32 0,1
88 u32 offset
92 u32 0
96 bytes

hwvx_mysterious_24t7_72

Offset Type Description
00 u8 0,24,36,40,54,71,124,176,221,255
01 u8 0,43,46,61,67,70,93,131,225,255
02 u8 0,41,60,72,80,88,90,121,167,255
03 u8 0,255
04 u32 0
08 float 0,200,500,1000,1500
12 bytes per entry

hwvx_mysterious_24t7_80

Offset Type Description
00 u8 0,255
01 u8 0,255
02 u8 0,255
03 u8 0
04 u32 0
08 u32 0
12 bytes

hwvx_mysterious_24t7_88

Offset Type Description
00 u32 patch texture
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_mysterious_24t9

Offset Type Description
00 u8 always 2
01 u8 2,5
02 u8 0,1
03 u8 0,1
04 float always 32
08 float 10,15
12 u32 0
16 u32 0
20 u32 patch texture
24 u32 patch texture
28 u32 offset
32 u32 offset
36 u8 0,15
37 u8 3,15
38 u8 12,15
39 u8 12,15
40 u32 133,50,125
44 u32 125,1000
48 u8 always 3
49 u8 0
50 u8 0
51 u8 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_mysterious_24t9_28

Offset Type Description
00 u8 0,255
01 u8 128,255
02 u8 0,16
03 u8 0,255
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_mysterious_24t9_32

Offset Type Description
00 u8 0,255
01 u8 64,255
02 u8 0,16
03 u8 0,128,200
4 bytes

hwvx_mysterious_24t10

Offset Type Description
00 u32 0
04 u32 amount 1,2,3,4
08 u32 offset based on amount [4]
12 u32 0
16 bytes

hwvx_mysterious_24t10_8

Offset Type Description
00 float -4.640999794006348,0.012000000104308128,4.640999794006348
04 float -2,0,5
08 float -28 - 17
12 u32 0
16 u8 5,6
17 u8 0
18 u8 0
19 u8 0
20 u32 0
24 u32 offset
28 u32 0
32 bytes per entry

hwvx_mysterious_24t10_8_24

Offset Type Description
00 u8 0
01 u8 0,2,5
02 u8 0
03 u8 0
04 u8 0,1
05 u8 0
06 u8 0
07 u8 0
08 u32 based on type [1]
0 = patch model
2,5 = patch texture
12 u32 amount 0,1,2
16 u32 offset based on amount [12]
20 u32 amount 1,3
24 u32 offset (hwvx_mysterious_24t10_8_24_16) based on amount [20]
28 u32 amount 1,3
32 u32 offset based on amount [28]
36 u32 0
40 u32 0
44 u32 offset
48 float 0,1,90
52 float 0,1
56 float 0,1
60 u32 0
64 bytes

hwvx_mysterious_24t10_8_24_16

Offset Type Description
00 float -360,-270,0,90,450
04 float 0,360
08 float 0,360
12 u32 0
16 u8 0,1
17 u8 0
18 u8 0
19 u8 0
20 float 0,1600,2000
24 u32 0
28 u32 0
32 bytes per entry

hwvx_mysterious_24t10_8_24_32

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 10,5,255
04 u8 0,1
05 u8 0
06 u8 0
07 u8 0
08 float 0,250,321,333
12 bytes per entry

hwvx_mysterious_24t10_8_24_44

Offset Type Description
00 float 0,1
04 float 0,1
08 float 0,1
12 u32 0
16 float -360,0,100,180,200
20 float 0,180,400,720
24 u32 0
28 u32 0
32 bytes

hwvx_strange

multi linked to by:
hwvx_world_36_48_16 [36]

Offset Type Description
00 u8 0,1
01 u8 always 1
02 u8 0,1
03 u8 0
04 u32 0,1
08 u32 50,100,500
12 u32 0,1500
16 u32 0,1148846080
20 float -0.009999999776482582 - 0.10000000149011612
24 u32 amount 1,3
28 u32 offset based on amount [24]
32 u32 offset (hwvx_sound_controls)
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_strange_28

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

hwvx_unknown

multi linked to by:
hwvx [unknown]
hwvx_car_140_56 [0]
hwvx_car_unknown_link [48][64]
hwvx_car_unknown_link_72 [0]
hwvx_car_link_56 [0]
hwvx_car_link_64 [0]
hwvx_strange_28 [0]
hwvx_collision_settings [48][64]
hwvx_collision_settings_72 [0]

Offset Type Description
00 u32 amount 1,2,3,4,5,7,8,10
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_unknown_4

Offset Type Description
00 u32 type 1,2,3,5,10,11,12,15,26
04 u32 based on type [0]
1 = offset (hwvx_unknown_thing)
2 = offset (hwvx_asdf)
3 = offset (hwvx_unknown)
4 = offset
5 = offset (hwvx_unknown_idk_sec)
6 = offset (hwvx_world_model_related)
7 = offset (hwvx_grand_section)
8 = offset (hwvx_unknown_whatever)
10 = offset (hwvx_sound_section)
26 = offset (hwvx_sound_controls)
29 = offset (hwvx_unknown_small_model_link)
11,12,13,14,15,30 = u32 not offset
08 u32 based on type [0]
1,2,3,4,7,10,29 = offset (hwvx_unknown_4_8t1)
5,6,8,26 = offset (hwvx_unknown_4_8t5)
12 bytes per entry

hwvx_unknown_4_4t4

Offset Type Description
00 u32 256,65536,65792
04 u32 0,25,200
08 u32 100,200,300
12 u32 0,200
16 u32 0
20 u32 0
24 u32 always 1
28 u32 offset
32 u32 offset (hwvx_sound_controls)
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_unknown_4_4t4_28

Offset Type Description
00 u32 offset (hwvx_unknown)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_unknown_4_8t1

Offset Type Description
00 u32 0,1,2,3,5,10,15,20,25
04 u32 0,1,2,3,5,10,20,25,30
08 float -25 - 2500
12 float -25,0,5,10,25,30,40,45,50,100
16 float -50,-25,0,1,1000
20 float -50,-25,-5,-3,-1,0
24 float -200 - 25
28 float -20,-10,-5,0,2,10,20
32 u8 0,1
33 u8 type 0,1,2
34 u8 0,1,2,3,4
35 u8 0,1
36 float 0 - 1
40 u32 based on type [33]
1 = offset
2 = offset
44 u32 offset
48 bytes

hwvx_unknown_4_8t1_40t1

Offset Type Description
00 float 0 - 0.25
04 float 0,6
08 float 0,1,2.5,3,10,25
12 float 0,4
16 float 0,3,12
20 float 0,16,5
24 u32 0
28 u32 0
32 bytes

hwvx_unknown_4_8t1_40t2

Offset Type Description
00 float 0,0.10000000149011612,1,3,4,10,20,30
04 float 0,0.5,1.5,5,10,30,40,50,450
08 u8 0
09 u8 0,1,2
10 u8 0
11 u8 0
12 u32 based on type [9]
0 = offset
1 = offset
2 = offset
16 bytes

hwvx_unknown_4_8t1_40t2_12t0

Offset Type Description
00 float always 1
04 float 0.5,1
08 float 1,4
12 u32 0
16 bytes

hwvx_unknown_4_8t1_40t2_12t1

Offset Type Description
00 float 0.5,0.75,1
04 u32 0
08 u32 0
12 u32 0
16 u8 2,4
17 u8 0
18 u8 0
19 u8 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_unknown_4_8t1_40t2_12t2

Offset Type Description
00 float 0,3
04 float 0,2.5,3
08 float 0,15
12 u32 0
16 u8 1,2
17 u8 0,1
18 u8 0
19 u8 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_unknown_4_8t1_44

Offset Type Description
00 float -90,0,2,10,15,90
04 float 0,45,60
08 float -25,0,25,90
12 float 0,45,60
16 u8 0,2,3,66
17 u8 0,180
18 u8 0,180
19 u8 0,66
20 float 0,45,60
24 u32 0
28 u32 0
32 bytes

hwvx_unknown_4_8t5

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u8 0,1
25 u8 0,1
26 u8 0
27 u8 0
28 u32 offset
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_unknown_4_8t5_28

Offset Type Description
00 u32 -10,-2,0,2,10
04 u32 0
08 float -10,-3,-2,1.5
12 u32 0
16 float -10,0,5,10
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_unknown_thing

multi linked to by:
hwvx_unknown_4 [4t1]
hwvx_collision_settings [52]

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0
03 u8 1,10
04 u32 based on type [0]
0 = offset
1 = offset
08 u32 150,200,250,500,1000,1500,2000,3000,4000
12 u32 0,1000,2000,3000
16 float 300,500
20 u32 amount 1,2,3,4,5
24 u32 offset based on amount [20]
28 u32 0,1
32 u32 offset
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_unknown_thing_4t0

Offset Type Description
00 u8 0,1
01 u8 0,1,2
02 u8 2,3
03 u8 0,1
04 float -500,0,500,1000
08 float 0,1000
12 float 0.10000000149011612,1
16 float 0,2
20 u32 0,100
24 u32 offset (hwvx_sound_controls)
28 u32 0
32 u32 amount 1,2,3
36 u32 offset based on amount [32]
40 u32 amount 1,2,3
44 u32 offset based on amount [40]
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_unknown_thing_4t0_36

Offset Type Description
00 u32 patch model
4 bytes per entry

hwvx_unknown_thing_4t0_44

Offset Type Description
00 float 0,0.5,1,3,5,10,25,100
04 float 0,0.5,1,2,3,5,10
08 float 0,0.5,1,5,25,100
12 u32 0
16 u32 0
20 float 0,50,150,200,500
24 u32 0
28 u32 0
32 bytes per entry

hwvx_unknown_thing_4t1

Offset Type Description
00 u8 2,3
01 u8 0
02 u8 0
03 u8 0
04 float 0,180,4,179
08 float 0,180
12 float -360,-200,-100,-30,-2,0,500,1000
16 float 0,60,200,400,500,720
20 float 0,0.8999999761581421,1,2,3
24 float 0,0.30000001192092896,0.75,1,2
28 u32 0
32 u32 amount 1,2,6
36 u32 offset based on amount [32]
40 u32 amount 1,2,3
44 u32 offset based on amount [40]
48 bytes

hwvx_unknown_thing_4t1_36

Offset Type Description
00 u32 patch texture 0 - 65
4 bytes per entry

hwvx_unknown_thing_4t1_44

Offset Type Description
00 float 0 - 75
04 u8 0
05 u8 0,1
06 u8 0
07 u8 0
08 float 0 - 3500
12 bytes per entry

hwvx_unknown_thing_4t2

Offset Type Description
00 u8 2,5
01 u8 0,1
02 u8 0
03 u8 0
04 float 0.5 - 1
08 float 0 - 1.7999999523162842
12 u32 amount 1 - 2
16 u32 offset based on amount [12]
20 u32 amount 1 - 3
24 u32 offset based on amount [20]
28 u32 0
32 bytes

hwvx_unknown_thing_4t2_16

Offset Type Description
00 float 0.5,3
04 u32 0
08 float 0,150
12 bytes per entry

hwvx_unknown_thing_4t2_24

Offset Type Description
00 u8 0,192,255
01 u8 0,66
02 u8 0,255
03 u8 0,255
04 u32 0
08 float 50,100
12 bytes per entry

hwvx_unknown_thing_24

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 0,255
04 u8 0,1
05 u8 0,1,2
06 u8 0
07 u8 0
08 float 0 - 2000
12 bytes per entry

hwvx_unknown_thing_32

Offset Type Description
00 u32 offset (hwvx_unknown)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_asdf

multi linked to by:
hwvx_unknown_4 [4t2]

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0,1
03 u8 0,1,3
04 u8 0,1,2
05 u8 0,1
06 u8 5,10
07 u8 0,1
08 u8 0,1
09 u8 0
10 u8 0
11 u8 0
12 u32 based on type [4]
1 = offset
2 = offset
16 u32 patch model
20 u32 1000,1500,2000,3000,5000,15000
24 u32 0,6000,2000
28 u32 0,1,5,20,50,66,75,300
32 u32 0
36 u32 0
40 u32 0
44 float 0.0010000000474974513,0.25,0.5,1,2,2.5,5,8
48 float 0,0.0010000000474974513,0.20000000298023224,1
52 float 0,9,10,15,20,25,30
56 u32 25,50,100
60 float 0,0.05000000074505806,0.550000011920929,1.5499999523162842
64 float 0,75,150,5000
68 u8 0,71
69 u8 80,195
70 u8 80,195
71 u8 0,71
72 float 100,400
76 float 10,20
80 u32 0
84 u32 1000,8000
88 u32 0
92 u32 patch texture
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 u32 offset (hwvx_unknown)
116 u32 offset (hwvx_unknown)
120 u32 offset (hwvx_unknown)
124 u32 0
128 u32 0
132 u32 0
136 u32 0
140 u32 amount 0,1,2,3
144 u32 offset based on amount [140]
148 u32 amount 0,1,2
152 u32 offset based on amount [148]
156 u32 amount 0,1,2,4,10
160 u32 offset (hwvx_mysterious) based on amount [156]
164 u32 offset
168 u32 offset
172 u32 offset
176 bytes

hwvx_asdf_12t1

Offset Type Description
00 u32 50,100,250
04 u32 0,300,50,100
08 u32 0
12 u32 0
16 bytes

hwvx_asdf_12t2

Offset Type Description
00 float always 50
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_asdf_144

Offset Type Description
00 float 1,1.5,2,2.5,3,5,10
04 float 1,1.5,2,2.5,3,5,10
08 float 1,1.5,2,3,5,10,25,100,500,1000
12 u32 0
16 u32 0
20 float 0,50,150,300,500,1000,4500
24 u32 0
28 u32 0
32 bytes per entry

hwvx_asdf_152

Offset Type Description
00 u8 0,216,255
01 u8 0,76,128,180,255
02 u8 0,25,128,192,255
03 u8 0,255
04 u32 0
08 float 0,50
12 bytes per entry

hwvx_asdf_164

Offset Type Description
00 float 0,90
04 u32 0
08 float 0,90
12 float 0,180
16 float 0,130
20 u32 0
24 float -360,0
28 float 0,10,20,60
32 float -100,0
36 float 0,200
40 float 0,?
44 float 0,?
48 bytes

hwvx_asdf_168

Offset Type Description
00 u8 0
01 u8 0
02 u8 0,100,150,250
03 u8 0,100,150,250
04 float 0.5,3,5
08 float 0,100,200
12 float 0,75,150
16 float 300,500,1500,2000
20 float 10,150,250,1000
24 float 0.10000000149011612,1,2
28 float 15,60,180
32 float 0,10
36 float 1000,1500
40 u32 0
44 float 30,90,145,180
48 bytes

hwvx_asdf_172

Offset Type Description
00 u8 200,255
01 u8 196,255
02 u8 180,255
03 u8 128,255
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_unknown_idk_sec

multi linked to by:
hwvx_unknown_4 [4t5]

Offset Type Description
00 u8 always 1
01 u8 0,1
02 u8 0,1
03 u8 0,1
04 u8 0,1
05 u8 0,1,2
06 u8 0
07 u8 0
08 u32 always 1
12 u32 0,200,250,500,875,900,1000,1300
16 u32 0,250,500,1000
20 u32 0,50,100,250,300,500,1000
24 u32 0,500,600,1000,2000
28 u32 offset
32 u32 offset
36 u32 offset
40 u32 offset
44 u32 always 1
48 u32 offset
52 u32 0
56 u32 0
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 bytes

hwvx_unknown_idk_sec_28

Offset Type Description
00 u8 2,3,7
01 u8 0
02 u8 0,1
03 u8 0,1,2,3,4,5,6
04 u32 0
08 u32 0
12 u32 0,5,10,19,50,100,150,200,1000,2500
16 float -200 - 1500
20 float 0,1,1.0099999904632568,12,5000,10000
24 u32 offset (hwvx_unknown)
28 u32 0,2
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_unknown_idk_sec_32

Offset Type Description
00 u8 2,3
01 u8 0
02 u8 0
03 u8 0
04 u32 amount 3,4
08 u32 offset based on amount [4]
12 u32 0
16 bytes

hwvx_unknown_idk_sec_32_8

Offset Type Description
00 u8 0,35,48,79,97,135,171,192,255
01 u8 0 - 255
02 u8 0 - 192
03 u8 always 255
04 u32 0
08 float 0 - 900
12 bytes per entry

hwvx_unknown_idk_sec_36

Offset Type Description
00 u32 always 2
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_unknown_idk_sec_36_4

Offset Type Description
00 float 0.009999999776482582 - 0.20000000298023224
04 u32 0
08 u32 0
12 u32 0
16 u8 0
17 u8 0,1
18 u8 0
19 u8 0
20 float 250,500,1000
24 u32 0
28 u32 0
32 bytes

hwvx_unknown_idk_sec_40

Offset Type Description
00 u32 always 2
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_unknown_idk_sec_40_4

Offset Type Description
00 float 0,0.10000000149011612,0.20000000298023224,0.25,0.5,1
04 float 0,500,600,1000,2000
08 u32 0
12 u32 0
16 bytes

hwvx_unknown_idk_sec_48

Offset Type Description
00 float 0,14,15,20,25,30,50,75,100
04 float 28 - 300
08 u32 0
12 u32 0
16 bytes

hwvx_grand_section

multi linked to by:
hwvx_unknown_4 [4]t7

Offset Type Description
00 u32 patch model
04 u8 0
05 u8 always 1
06 u8 0,1
07 u8 0
08 u8 0
09 u8 0
10 u8 always 250
11 u8 always 67
12 u32 0
16 u32 offset (hwvx_car_link)
20 u32 0
24 u32 always 1
28 u32 offset (hwvx_mysterious)
32 bytes

hwvx_unknown_whatever

multi linked to by:
hwvx_unknown_4 [4t8]

Offset Type Description
00 u8 0
01 u8 always 1
02 u8 0
03 u8 always 2
04 u32 300,1500
08 u32 0
12 u32 amount always 2
16 u32 offset based on amount [12]
20 u32 amount 2,3
24 u32 offset based on amount [20]
28 u32 0
32 bytes

hwvx_unknown_whatever_16

Offset Type Description
00 float 8,10,20
04 u32 0
08 float 0,300,1200
12 bytes per entry

hwvx_unknown_whatever_24

Offset Type Description
00 u8 0,160,255
01 u8 0,160,255
02 u8 0,255
03 u8 always 255
04 u32 0
08 float 0,50,250,500,1000
12 bytes per entry

multi linked to by:
hwvx_unknown_4 [4]t29

Offset Type Description
00 u32 1000,1500,3000,6000
04 u32 1000,1500,2500,4000
08 u32 amount 2 - 38
12 u32 offset based on amount [8]
16 bytes

Offset Type Description
00 float -101.08348846435547 - 54.79854965209961
04 float -28.107044219970703 - 229.51388549804688
08 float -174.10214233398438 - 139.29507446289062
12 u32 0
16 float 0,100,1200
20 float -180 - 180
24 float 0 - 600
28 u32 patch model
32 u32 offset (hwvx_unknown_link_section)
36 u32 0
40 u32 0
44 u32 0
48 bytes per entry

multi linked to by:
hwvx_unknown_small_model_link_12 [32]

Offset Type Description
00 u32 256,65536
04 u32 0
08 u32 50,100
12 u32 0,200
16 u32 0
20 u32 0
24 u32 amount 1,3
28 u32 offset based on amount [24]
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

hwvx_item

linked to by:
hwvx_basic_4 [0]t2

Offset Type Description
00 u8 1,2,3,6,7,10,11
01 u8 0,1
02 u8 0 - 244
03 u8 0 - 244
04 u8 0,1
05 u8 0
06 u8 0
07 u8 0
08 float 0,10,300,700,799,800,1000,1200,1500,5000
12 float 0,6,12,15,20
16 float 0 - 10
20 u32 0
24 float 0,10,25
28 float 0,10,25
32 u32 offset (hwvx_text) Item name
36 u32 offset (hwvx_unknown)
40 u32 0
44 u32 offset (hwvx_unknown)
48 u32 offset
52 u32 offset (hwvx_model_anims_2)
56 u32 amount 0,1,2,3,4,5,7
60 u32 offset (hwvx_mysterious) based on amount [44]
64 bytes

hwvx_item_48

Offset Type Description
00 u32 offset
04 u32 0
08 u32 0
12 u32 0
16 u32 offset (hwvx_text)
20 u32 0
24 u32 patch texture 0,2
28 u32 offset (hwvx_model_anims_2)
32 u32 0,1600,2000
36 u32 1,100,200,400,800
40 u32 100,2000,3200
44 u8 0,2
45 u8 0,10,20
46 u8 0,1
47 u8 0,1
48 u32 100,500,1500,2000,2500,3000,4000,6000,7500,15000
52 u8 1,14
53 u8 0,1
54 u8 0
55 u8 0
56 float 0,20,150
60 float 100,120,150,200,250,500,750,1000,2000
64 float 0,180
68 float 0,10,15,45,135,180
72 float 0,5,10,15,30,90,120,180
76 float 1 - 5000
80 float 0,100
84 u32 0
88 u32 0
92 u32 0
96 bytes

hwvx_item_48_0

Offset Type Description
00 u32 0
04 u32 0
08 u32 amount 0,1,2,3,5,6
12 u32 offset based on amount [8]
16 u32 offset (hwvx_model_anims_1)
20 u32 offset (hwvx_model_anims_2)
24 float 30,40
28 u8 0,1
29 u8 always 1
30 u8 always 1
31 u8 always 2
32 u32 offset
36 u32 offset
40 u32 offset
44 u32 amount 1,3,5,8,9,15,18,19,22
48 u32 offset (hwvx_mysterious) based on amount [44]
52 u32 offset
56 u32 0
60 u32 0
64 bytes

hwvx_item_48_0_12

Offset Type Description
00 u32 patch model 32 - 65344
04 u16 0,1,2,3,4,5,6
06 u8 0
07 u8 0
8 bytes per entry

hwvx_item_48_0_32

Offset Type Description
00 float 0,1
04 float 1,9,15,29
08 u32 0
12 u32 0
16 bytes

hwvx_item_48_0_36

Offset Type Description
00 float 1,10,15,30,45
04 float 10,20,30,45,60,75,90,110,120
08 u32 0
12 u32 0
16 bytes

hwvx_item_48_0_40

Offset Type Description
00 float 0,1,15,20,30,31,45,60,91
04 float 0 - 100
08 u32 0
12 u32 0
16 bytes

hwvx_item_48_0_52

Offset Type Description
00 float -4,-3,0
04 u32 0
08 float -4,-2,0
12 u32 0
16 float 0,3,4
20 float 0,3
24 float 0,4,7
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_sound_controls

multi linked to by:
hwvx_interface [32][36][40][44]
hwvx_interface_16_104_8 [48]
hwvx_interface_16_68_20_8 [20]
hwvx_model_car_sound_link_28 [24]
hwvx_world_model_related [12]

Offset Type Description
00 u32 250 - 30000
04 u8 0,1
05 u8 0,1
06 u8 0
07 u8 0
08 u32 amount 1,2,3,4,5,9,15
12 u32 offset based on amount [8]
16 bytes

hwvx_sound_controls_12

Offset Type Description
00 float 0 - 22700
04 u8 0,1
05 u8 0
06 u8 0
07 u8 0
08 u32 amount 1 - 11
12 u32 offset based on amount [8]
16 bytes per entry

hwvx_sound_controls_12_12

Offset Type Description
00 u32 offset (hwvx_sound_section)
4 bytes per entry

hwvx_sound_section

multi linked to by:
hwvx_sound [section]
hwvx_interface_24_8 [20]
hwvx_collision_settings [60]
hwvx_car_unknown_link [60]

Offset Type Description
00 u8 0,1
01 u8 1,8,9,10
02 u8 0,1
03 u8 0,1
04 u32 0,1000
08 float 0.20000000298023224 - 1
12 float 0.8500000238418579 - 1
16 float 0 - 0.05000000074505806
20 u32 patch sound | 0,1,2,3,4,5
24 u32 offset
28 u32 0,1
32 u32 offset
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_sound_section_24

Offset Type Description
00 u8 0,1
01 u8 0,200,250
02 u8 0,200,250
03 u8 0,66
04 float 0,1800
08 u32 0
12 bytes

hwvx_sound_section_32

Offset Type Description
00 float 0.4749999940395355 - 1
04 u32 0
08 u32 0
12 float 0,1
16 bytes

hwvx_world_settings

linked to by:
hwvx_world [156]

Offset Type Description
00 u32 0
04 float 5416.828125 - 11401.7626953125
08 float 5416.828125 - 11401.7626953125
12 float always 100
16 float always 100
20 float 25,33,40,50,75,120,140,180,221,245
24 float 1000,2000,2500,3000,4000,5000
28 u32 0
32 u8 0,68,69
33 u8 0,9,28,40,59,128,187,237,250
34 u8 0,64,128,137,175,187,192,237
35 u8 0,68
36 u32 always 1050253722
40 float 80,200
44 float always 0.07500000298023224
48 float 0.699999988079071,0.800000011920929,0.8999999761581421,1
52 float always 1
56 float always 1
60 u32 0
64 u32 always 1050253722
68 u32 always 1117782016
72 u32 always 1033476506
76 u32 0
80 u32 0
84 u32 0
88 float 0.3179999887943268 - 0.7170000076293945
92 float 0.30300000309944153 - 0.9039999842643738
96 float 0.09000000357627869 - 0.15000000596046448
100 float 0.09000000357627869 - 0.15000000596046448
104 float always 15
108 float always 200
112 float always 5
116 float always 100
120 u32 patch texture
124 u32 patch texture
128 u32 patch texture
132 u32 patch texture
136 u32 patch texture
140 u32 patch texture
144 u32 patch texture
148 u32 patch texture
152 u32 patch texture
156 u32 offseted to by: hwvx_world
hwvx_car_link
hwvx_world_36_48
hwvx_Airbox
hwvx_world_36_48_24
hwvx_world_108_44t6
hwvx_world_76
+ ?
160 u32 offset string HW_Cars
164 u32 offset string HW_Items
168 u32 0
172 u32 0
176 u32 0
180 u32 0
184 u32 0
188 u32 0
192 u32 offset
196 u32 offset
200 u32 offset (hwvx_font)
204 u32 offset (hwvx_interface)
208 u32 0
212 u32 0
216 u32 0
220 u32 0
224 u32 offset
228 u32 offset
232 u32 0
236 u32 0
240 u32 amount always 3
244 u32 offset (hwvx_world_settings_244) based on amount [240]
248 u32 amount always 2
252 u32 offset (hwvx_world_settings_244) based on amount [248]
256 u32 0
260 u32 0
264 u32 0
268 u32 0
272 u32 offset
276 u32 0
280 u32 0
284 u32 0
288 u32 0
292 u32 0
296 u32 0
300 u32 0
304 bytes

hwvx_world_settings_192

Offset Type Description
00 u8 8 - 255
01 u8 0 - 204
02 u8 0 - 255
03 u8 59 - 225
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_world_settings_196

Offset Type Description
00 u32 256,65536
04 u32 0
08 u32 always 50
12 u32 0
16 u32 0
20 u32 0
24 u32 always 1
28 u32 offset
32 u32 offset (hwvx_sound_controls)
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_world_settings_196_28

Offset Type Description
00 u32 offset (hwvx_unknown)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_world_settings_224

Offset Type Description
00 float always 0.18000000715255737
04 float always 1
08 float always 1
12 float always 1
16 float always 1
20 float always 160000
24 float always 490000
28 u32 0
32 bytes

hwvx_world_settings_228

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_world_settings_244

Offset Type Description
00 u32 offset (hwvx_unknown)
4 bytes per entry

hwvx_world_settings_272

Offset Type Description
00 u32 0
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_world_settings_272_4

Offset Type Description
00 float always 75
04 float always 20
08 float always 5
12 float always 40
16 float always 20
20 u32 0
24 float always 0.5
28 u32 0
32 bytes

hwvx_interface

multi linked to by:
hwvx_interface_16_60 [0]
hwvx_interface_24_8 [0]t1
hwvx_interface_16_68_20_8 [0]
hwvx_car_132 [16][24][28]

Offset Type Description
00 u16 0,8
02 u16 0
04 u32 0,600,900,1500,4000,6000
08 u32 0,600,900,1001,1500,2100
12 u32 amount 1 - 71
16 u32 offset based on amount [12]
20 u32 amount 0,1,2,3
24 u32 offset based on amount [20]
28 u32 offset
32 u32 offset (hwvx_sound_controls)
36 u32 offset (hwvx_sound_controls)
40 u32 offset (hwvx_sound_controls)
44 u32 offset (hwvx_sound_controls)
48 u32 offset
52 u32 1,4,5
56 float 0.3799999952316284,0.5,0.699999988079071,0.800000011920929,1
60 u8 0,1
61 u8 0
62 u8 0
63 u8 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 bytes

hwvx_interface_16

Offset Type Description
00 u8 1,3,9,33,34
01 u8 type 0,1,2,6,7,10,12
02 u8 0
03 u8 0
04 u32 0
08 u8 0,1
09 u8 0,1
10 u8 0 - 40
11 u8 0 - 40
12 u8 0,243,253,254,255
13 u8 0,243,253,254,255
14 u8 0
15 u8 0
16 u32 0 - 51
20 u32 based on type [1]
0 = offset
1,12 = offset
2 = offset
10 = offset
11 = offset
24 u8 always 255
25 u8 always 255
26 u8 always 255
27 u8 always 255
28 u8 always 255
29 u8 always 255
30 u8 always 255
31 u8 always 255
32 u8 always 255
33 u8 always 255
34 u8 always 255
35 u8 always 255
36 u8 always 255
37 u8 always 255
38 u8 always 255
39 u8 always 255
40 u8 always 255
41 u8 always 255
42 u8 always 255
43 u8 always 255
44 u8 always 255
45 u8 always 255
46 u8 always 255
47 u8 always 255
48 float -18 - 10
52 float -6.5 - 2.200000047683716
56 u32 0
60 u32 offset
64 u32 0
68 u32 offset
72 u32 offset
76 u32 0
80 u32 0
84 u32 0
88 u32 0
92 u32 0
96 u32 offset
100 u32 amount 1,2,3
104 u32 offset based on amount [100]
108 bytes per entry

hwvx_interface_16_20t0

Offset Type Description
00 u8 0,3
01 u8 0,2,3,5
02 u8 0
03 u8 0
04 u32 patch texture
08 u32 0
12 u32 0
16 u32 offset
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_16_20t0_16

Offset Type Description
00 u32 amount 1 - 36
04 u32 offset based on amount [0]
08 u32 40,66,1000
12 u8 0,1
13 u8 0
14 u8 0 - 17
15 u8 0 - 17
16 bytes

hwvx_interface_16_20t0_16_4

Offset Type Description
00 u32 patch texture
4 bytes per entry

hwvx_interface_16_20t1

Offset Type Description
00 u32 offset (hwvx_text)
04 u32 offset (hwvx_font)
08 u32 offset
12 u8 0
13 u8 0
14 u8 2,5
15 u8 0,1
16 u8 0,1
17 u8 0,1,2
18 u8 0,1
19 u8 0
20 u8 0 - 244
21 u8 0 - 250
22 u8 0 - 245
23 u8 0 - 245
24 float -7,-6,0,1,2,7,10
28 u32 0
32 bytes

hwvx_interface_16_20t1_8

Offset Type Description
00 u32 amount 2 - 57
04 u32 offset based on amount [0]
08 u8 always 1
09 u8 0
10 u8 0 - 15
11 u8 0 - 15
12 u32 0
16 bytes

hwvx_interface_16_20t1_8_4

Offset Type Description
00 u32 offset (hwvx_text)
4 bytes per entry

hwvx_interface_16_20t2

Offset Type Description
00 u32 amount 17 - 68
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_20t2_4

Offset Type Description
00 u8 0,1
01 u8 0 - 40
02 u8 0,1
03 u8 0,1
04 u32 1 - 512000
08 u32 0 - 118
12 u32 offset string
16 u32 offset (hwvx_text)
20 u32 offset (hwvx_interface_text_related)
24 u32 amount 0,1,2,3,4,5,6
28 u32 offset based on amount [24]
32 bytes per entry

hwvx_interface_16_20t2_4_28

Offset Type Description
00 u8 always 3
01 u8 0
02 u8 0
03 u8 0
04 u32 offset
8 bytes per entry

hwvx_interface_16_20t2_4_28_4

Offset Type Description
00 u8 0
01 u8 0 - 20
02 u8 0,1,2,3,4,5,6
03 u8 0,1,2,3,4,5,6
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_20t10

Offset Type Description
00 u32 50,100,150,170,520,580,600
04 u32 80,110,170,180,184,186,345,420,440
08 u32 always 1
12 u32 1,3,5,6,7,9,15
16 u32 offset (hwvx_font)
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_interface_16_20t11

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0
03 u8 0
04 u32 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_16_60

Offset Type Description
00 u32 offset (hwvx_interface)
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68

Offset Type Description
00 u8 1,2,3,4,5,6,7,8
01 u8 0,1,2,3,4,5,6,7,8
02 u8 0,1,2,3,4,5,6,7,8
03 u8 0,1,2,3
04 u8 0,1,3,4
05 u8 0
06 u8 0
07 u8 0
08 u32 amount 0,8
12 u32 offset based on amount [8]
16 u32 amount 0,1,2,4
20 u32 offset based on amount [16]
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_interface_16_68_12

Offset Type Description
00 u32 0,1,2,3
04 u32 0,1,4294967295
08 u32 0,1,4294967295
12 u8 0,1,255
13 u8 0,255
14 u8 0,255
15 u8 0,1,255
16 u32 0,1,4294967295
20 bytes per entry

hwvx_interface_16_68_20

Offset Type Description
00 u8 4,21,30
01 u8 0
02 u8 0
03 u8 0
04 u32 0,10,100,2000,4000
08 u32 offset
12 bytes per entry

hwvx_interface_16_68_20_8

Offset Type Description
00 u32 based on type [5]
1,32 = offset (hwvx_interface)
11 = offset
04 u8 0,1,3
05 u8 1,2,3,11,12,13,14,16,18,25
06 u8 0,1,2
07 u8 0,1,2
08 u32 based on type [5]
6,15 = offset
17 = offset
12 u32 offset string
16 u32 0
20 u32 offset (hwvx_sound_controls)
24 u32 offset
28 u32 0,1
32 u32 offset
36 u32 0,10,4294967286
40 u32 0
44 u32 0
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_interface_16_68_20_8_0t11

Offset Type Description
00 u32 amount 1,2,4
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68_20_8_0t11_4

Offset Type Description
00 u8 2,3
01 u8 0
02 u8 0
03 u8 0
04 u32 based on type [0]
2 = offset
3 = offset
8 bytes per entry

hwvx_interface_16_68_20_8_0t11_4_4t3

Offset Type Description
00 u8 0
01 u8 0
02 u16 1,2
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68_20_8_8t15

Offset Type Description
00 u32 offset
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68_20_8_8t15_0

Offset Type Description
00 u8 0
01 u8 0
02 u16 1,2,3,4,5,7
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68_20_8_8t15_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u16 0,4
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68_20_8_8t17

Offset Type Description
00 u8 always 1
01 u8 0
02 u8 0
03 u8 always 4
04 u32 0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_16_68_20_8_24

Offset Type Description
00 u8 always 4
01 u8 0,50
02 u8 0,51
03 u8 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_68_20_8_32

Offset Type Description
00 u8 0,2,3,4,6,7,13
01 u8 0
02 u8 0
03 u8 0
04 u8 0,1,254,255
05 u8 0,255
06 u8 0,255
07 u8 0,1,10,246,254,255
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_72

Offset Type Description
00 u8 0,1,2,3
01 u8 0
02 u8 0
03 u8 0
04 u32 amount 0,1,2,3,4,6,7,9,10
08 u32 offset based on amount [4]
12 u32 0
16 bytes

hwvx_interface_16_72_8

Offset Type Description
00 u8 1,2
01 u8 0
02 u8 0
03 u8 0
04 u32 0 - 4294967295
08 u32 offset
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 bytes per entry

hwvx_interface_16_72_8_8

Offset Type Description
00 u8 0,88,100,101,102,105,106,149,201,211
01 u8 0,1,2
02 u8 0 - 20
03 u8 0 - 211
04 u32 offset
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_72_8_8_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u16 0 - 30
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_16_96

Offset Type Description
00 u32 amount 1,2,3,4,6,9,32
04 u32 offset based on amount [0]
08 u32 amount 1,2,4
12 u32 offset (hwvx_interface_16_96_4) based on amount [8]
16 u32 amount 1,2,3,4,10
20 u32 offset (hwvx_interface_16_96_4) based on amount [16]
24 u32 amount 1,2,3,4,5,7,8
28 u32 offset based on amount [24]
32 u32 amount 1,2,4
36 u32 offset based on amount [32]
40 u32 0
44 u32 0
48 bytes

hwvx_interface_16_96_4

Offset Type Description
00 float -320 - 1000
04 float -360 - 1000
08 float -1,0,1,19,30,180
12 u32 0
16 u8 0,1
17 u8 0,1,2
18 u8 0
19 u8 0
20 float 0 - 127000
24 u32 0
28 u32 0
32 bytes per entry

hwvx_interface_16_96_28

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 0 - 255
04 u8 0,1
05 u8 0,1,2,3
06 u8 0
07 u8 0
08 float 0 - 5000
12 bytes per entry

hwvx_interface_16_96_36

Offset Type Description
00 float 0 - 1
04 float -0.10000000149011612 - 3
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 float 0 - 13
28 float 0 - 12
32 u8 0,1
33 u8 0,3
34 u8 0
35 u8 0
36 float 0,50,100,500
40 bytes per entry

hwvx_interface_16_104

Offset Type Description
00 u8 0,1,2,4,5
01 u8 0
02 u8 0
03 u8 0
04 u32 0,1000
08 u32 offset
12 bytes per entry

hwvx_interface_16_104_8

Offset Type Description
00 u32 amount 0,1,2,3
04 u32 offset based on amount [0]
08 u32 amount 0,1,2,3,4,5,6,7
12 u32 offset based on amount [8]
16 u32 amount 0,1,2,3,4,5,6
20 u32 offset based on amount [16]
24 u32 amount 0,1,2,3,5
28 u32 offset based on amount [24]
32 u32 amount 0,2,3
36 u32 offset based on amount [32]
40 u32 amount 0,1,2,4
44 u32 offset based on amount [40]
48 u32 offset (hwvx_sound_controls)
52 u32 0
56 u32 0
60 bytes

hwvx_interface_16_104_8_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0
03 u8 0
04 float 0 - 7500
8 bytes per entry

hwvx_interface_16_104_8_12

Offset Type Description
00 float -130 - 939
04 float -300 - 550
08 float -1,0
12 u32 0
16 u8 0
17 u8 0,1,2
18 u8 0
19 u8 0
20 float 0 - 3000
24 u32 0
28 u32 0
32 bytes per entry

hwvx_interface_16_104_8_20

Offset Type Description
00 u8 0,27,30,60,87,153,157,192,255
01 u8 0 - 255
02 u8 0,30,60,87,128,188,207,242,255
03 u8 0,48,64,128,255
04 u8 0,1
05 u8 0,1,2,3
06 u8 0
07 u8 0
08 float 0 - 1700
12 bytes per entry

hwvx_interface_16_104_8_28

Offset Type Description
00 float 0 - 4096
04 float 0 - 2784
08 float always 1
12 u32 0
16 u8 0,1
17 u8 0,1,2
18 u8 0
19 u8 0
20 float 0 - 3300
24 u32 0
28 u32 0
32 bytes per entry

hwvx_interface_16_104_8_36

Offset Type Description
00 float 0 - 0.5509999990463257
04 float 0,0.00800000037997961,0.10000000149011612,0.19499999284744263,0.375
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 float 0.2460000067949295 - 1
28 float 0 - 1
32 u8 0,1
33 u8 0,1,2
34 u8 0
35 u8 0
36 float 0,100,200,300,750,1000,1100,1700
40 bytes per entry

hwvx_interface_16_104_8_44

Offset Type Description
00 float -200,-90,-20,0,5,90
04 u32 0
08 u32 0
12 u32 0
16 u8 0
17 u8 0,1,2
18 u8 0
19 u8 0
20 float 0,100,300,600,800,1000
24 u32 0
28 u32 0
32 bytes per entry

hwvx_interface_24

Offset Type Description
00 u8 2,3,4,13,14,21,30,31
01 u8 0
02 u8 0
03 u8 0
04 u32 0,1,6000,30000,129018
08 u32 offset
12 bytes per entry

hwvx_interface_24_8

Offset Type Description
00 u32 based on type [5]
1 = offset (hwvx_interface)
11 = offset
04 u8 0,3,2,1,0
05 u8 1,2,3,11,12,17,29
06 u8 0,1
07 u8 0,1
08 u32 offset (hwvx_interface_24_8_8t17)
12 u32 0
16 u32 0
20 u32 offset (hwvx_sound_controls)
24 u32 0
28 u32 0,1
32 u32 offset
36 u32 0,106,107
40 u32 0
44 u32 0
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_interface_24_8_0t11

Offset Type Description
00 u32 amount 1,2,7,8,9
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_interface_24_8_0t11_4

Offset Type Description
00 u8 always 2
01 u8 0
02 u8 0
03 u8 0
04 u32 offset
8 bytes per entry

hwvx_interface_24_8_0t11_4_4

Offset Type Description
00 u32 offset
04 u32 offset
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_24_8_0t11_4_4_0

Offset Type Description
00 u32 107 - 510
04 u32 offset
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_24_8_0t11_4_4_0_4

Offset Type Description
00 u16 0
02 u16 0,1,2,3,4,5,6,7,8
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_24_8_0t11_4_4_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0,1,2,3,4,5,6,8
03 u8 0 - 12
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_24_8_8t17

Offset Type Description
00 u8 always 1
01 u8 0
02 u8 0,4
03 u8 0,4
04 u32 0
08 u32 0
12 u32 0
16 u32 0,12
20 u32 0,768,4352,66048
24 u32 offset
28 u32 0
32 bytes

hwvx_interface_24_8_8t17_24

Offset Type Description
00 u32 always 262145
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_24_8_32

Offset Type Description
00 u8 0,1,2,3,4,8
01 u8 0
02 u8 0
03 u8 0
04 u8 0,1,255
05 u8 0,255
06 u8 0,255
07 u8 0,1,255
08 u32 0
12 u32 0
16 bytes

hwvx_interface_28

Offset Type Description
00 u32 amount 0 - 21
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

hwvx_interface_28_4

Offset Type Description
00 u8 0,1,2,3
01 u8 0,1
02 u16 0,1,256
04 u32 0,1,5,19,23,29,39,4294455296,4294967295
08 u32 0 - 512000
12 u32 0 - 56
16 u32 offset
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 u32 0
52 bytes per entry

hwvx_interface_28_4_16

Offset Type Description
00 u32 100 - 601
04 u32 offset
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_28_4_16_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0 - 30
03 u8 0 - 30
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_48

Offset Type Description
00 u32 offset string HW_music
04 u32 0,1,2,3
08 u32 0
12 u32 0
16 bytes

hwvx_interface_unknown

multi linked to by:
hwvx_interface_16_68_20_8_0t11_4 [4t2]

Offset Type Description
00 u32 offset
04 u32 offset
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_unknown_0

Offset Type Description
00 u32 106 - 510
04 u32 offset
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_interface_unknown_0_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u16 0,1,2,3,4,8,9,10
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_interface_unknown_4

Offset Type Description
00 u8 0,1
01 u8 0
02 u16 0 - 12
04 u32 0
08 u32 0
12 u32 0
16 bytes

multi linked to by:
hwvx_interface_16_20t2_4 [20]

Offset Type Description
00 u32 offset (hwvx_text)
04 u32 0
08 u32 offset (hwvx_font)
12 u32 offset
16 u32 amount 1,5,6
20 u32 offset (hwvx_interface_text_related_20) based on amount [16]
24 u32 amount 1,3,7,8,9,10,11
28 u32 offset (hwvx_interface_text_related_20) based on amount [24]
32 u32 0
36 u32 0
40 u32 0
44 u32 amount 0,1,2
48 u32 offset (hwvx_interface_text_related_20) based on amount [44]
52 u32 offset
56 u32 0
60 u32 0
64 bytes

Offset Type Description
00 u8 0,64,110,150,180,210,225,255
01 u8 0,64,80,100,175,180,192,255
02 u8 0,42,64,128,150,180,196,255
03 u8 0,255
04 u32 0
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 amount 1 - 22
04 u32 offset based on amount [0]
08 u32 33,50,66,100,1000
12 u32 0
16 bytes per entry

Offset Type Description
00 u32 patch texture
4 bytes per entry

Offset Type Description
00 float 0.699999988079071,1
04 float 0.699999988079071,1
08 float always 1
12 u32 0
16 bytes

linked to by:
hwvx_basic_4 [0]t3

Offset Type Description
00 u32 0
04 u32 offset string HW_IPack
08 u32 offset string HW_Cars
12 u32 offset string HW_Items
16 u32 offset string HW_share
20 u32 patch texture
24 u32 patch texture
28 u32 0
32 u32 0
36 u32 offset
40 u32 always 6
44 u32 amount always 6
48 u32 offset based on amount [44]
52 u32 amount always 17
56 u32 offset based on amount [52]
60 u32 amount always 6
64 u32 offset based on amount [60]
68 u32 0
72 u32 0
76 u32 0
80 bytes

Offset Type Description
00 u8 always 1
01 u8 0
02 u8 0
03 u8 0
04 u32 always 30000
08 u32 offset
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

Offset Type Description
00 u32 amount always 14
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u32 offset
12 u32 offset string WORLDS_*
16 u32 always 1
20 u32 offset
24 u32 always 1
28 u32 offset
32 bytes per entry

Offset Type Description
00 u32 offset string HW_IPack
04 u32 always 2
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u16 always 99
10 u16 0
12 u32 0
16 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u8 1,4,0
01 u8 0
02 u8 0
03 u8 0
04 u32 offset strings seen FMV_ hqlogo, FMV_glogo, FMV_hwboot
08 u32 offset
12 bytes per entry

Offset Type Description
00 u32 offset string HW_IPack
04 u32 5,4,1
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 offset
4 bytes per entry

Offset Type Description
00 u32 amount 14,18,6,8,5,0,1
04 u32 offset based on amount [0]
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 amount 3,2,0,1,6,4,5
04 u32 offset based on amount [0]
08 u32 offset
12 u32 offset string WORLDS_*
16 u32 1,0
20 u32 offset
24 u32 1,0
28 u32 offset
32 bytes per entry

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0
03 u8 0
04 u32 based on type [0]
0 = offset string FMV_hw*
1 = offset
8 bytes per entry

Offset Type Description
00 u32 offset string HW_IPack,HW_brief
04 u32 0 - 13
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 offset string HW_IPack
04 u32 always 2
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 amount 0,2,1
04 u32 offset based on amount [0]
08 u16 1,99
10 u16 0
12 u32 0
16 bytes

Offset Type Description
00 u8 0,1
01 u8 0
02 u8 0
03 u8 0
04 u32 based on type [0]
0 = string FMV_hw_end
1 = offset
8 bytes per entry

Offset Type Description
00 u32 offset string HW_IPack
04 u32 9,8
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 offset
4 bytes per entry

Offset Type Description
00 u32 offset
04 u32 0
08 u32 0
12 u32 0
16 bytes

Offset Type Description
00 u32 offset
04 u32 offset
08 u32 offset
12 u32 0
16 bytes

Offset Type Description
00 u8 always 1
01 u8 0,2
02 u8 10,8
03 u8 8,10,15,13
04 u8 14,11,255
05 u8 13,15,8,10,14
06 u8 255,12
07 u8 15,13,9
08 u8 always 4
09 u8 always 6
10 u8 always 5
11 u8 always 7
12 u8 11,9
13 u8 9,11,13,14,12
14 u8 0
15 u8 always 2
16 bytes

Offset Type Description
00 u8 0
01 u8 0
02 u8 65,36
03 u8 17,35
04 u8 38,88
05 u8 40,67
06 u8 0
07 u8 16,90
08 u8 87,38
09 u8 83,40
10 u8 always 39
11 u8 always 37
12 u8 68,34
13 u8 32,83
14 u8 192,17
15 u8 0
16 bytes

Offset Type Description
00 u8 always 1
01 u8 5,6
02 u8 11,2
03 u8 12,2,7,255
04 u8 9,13
05 u8 7,6
06 u8 always 255
07 u8 6,7,9,8,11
08 u8 4,255
09 u8 5,255
10 u8 3,255
11 u8 2,255
12 u8 13,3
13 u8 8,12,11,6,9
14 u8 255,8,12
15 u8 always 255
16 bytes

hwvx_texture_anims_0

linked to by:
hwvx_texture_anims [0]

Offset Type Description
00 u32 0
04 u32 amount 0,1,3
08 u32 offset based on amount [4]
12 u32 amount 1,2,6,7,11
16 u32 offset based on amount [12]
20 u32 offset
24 u32 0
28 u32 0
32 bytes

hwvx_texture_anims_0_8

Offset Type Description
00 u8 0,136,233,255
01 u8 0,120,255
02 u8 0,135,136,233
03 u8 always 255
04 u8 0,1
05 u8 0,3
06 u8 0
07 u8 0
08 float 0,1,500,999
12 bytes per entry

hwvx_texture_anims_0_16

Offset Type Description
00 float 0,0.25,0.5,1,3
04 float -1,0,0.25,0.5,0.75,1
08 float 0,1,100,250,1000,10000,60000
12 u8 0,1
13 u8 0,3
14 u8 0
15 u8 0
16 bytes per entry

hwvx_texture_anims_0_20

Offset Type Description
00 u32 amount 1 - 7
04 u32 offset based on amount [0]
08 u32 0 - 1000
12 u32 0
16 bytes

hwvx_texture_anims_0_20_4

Offset Type Description
00 u32 patch texture
4 bytes per entry

Offset Patch List

linked to by the datapack
Patches offsets into the file, bytes 4 & 6 are reversed for gamecube

Models (1)

Offset Type Description
0 u32 Offset
4 u16 Model index
6 u16 linked file
0 = same file
DataPack [92] = shared file 1
DataPack [112] = shared file 2
8 bytes per entry

General Offsets (2)

Offset Type Description
0 u32 offset
4 bytes per entry