go back to main here

wip

Structure

The layout seen in XPS for Hot Wheels Velocity X PS2 Prototype archives is as follows:

.XPS
.

File Header

Offset Type Description
00 u32 Magic always 33620128
04 u32 Magic always 67174574
08 u32 version | 179,177
12 u32 amount directory | 1 - 45
16 bytes

hwvx_proto_directory

Offset Type Description
00 u32 179,177
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 - 75
12 u32 0 - 7771, value only appears when type = 7(geo)?
16 u32 amount bytes in datapack
20 u32 based on type [4]
1,2,3,4,5,6,8,9,10 = offset (hwvx_proto_datapack)
7 = offset (hwvx_proto_geo_datapack)

to get to the datapack:
datapack = 16 + (directory_entry * 24) + 24
datapack+= u32(20)
24 bytes per entry

datapack

2 datapack versions are seen, geometry & everything else


hwvx_proto_datapack

Offset Type Description
00 u32 Length of Ordered List
04 u32 Length of hwvx_proto_audio_section section (not including the Sound Offset List)
08 u32 amount of sounds | 0 - 92
12 u32 amount general offsets (5th) section of Patch List | 1 - 87949
16 u32 amount texture (1st) section of Patch List | 0 - 1683
20 u32 amount of textures | 0 - 202
24 u32 offset to textures (from ordered) based on amount [20]
28 u32 amount sound (3rd) section of Patch List | 0 - 107
32 u32 amount of sounds (same value as [08]) | 0 - 92
36 u32 0
40 u32 amount color tables? 256 colors / 1024 bytes per entry | 0 - 139
44 u32 CLUT offset (from ordered) based on amount [40]
48 u32 amount of sections in texture animations | 0 - 5
52 u32 amount texture animation (2nd) section of Patch List | 0 - 12
56 u32 amount model (4th) section of Patch List | 0 - 463
60 u32 offset to texture animations (from ordered), based on amount [48]
64 u32 amount 0 - 45
68 u32 offset (hwvx_proto_triggers_and_actions) based on amount [64]
72 u32 offset to hwvx_proto_impulse_tracker
or length of hwvx_proto_audio_list + hwvx_proto_audio_data maybe?
only seen in world files
76 u32 offset to hwvx_proto_audio_data_2
only seen in world & music files
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 hwvx_proto_audio_section else go to patch_list


hwvx_proto_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,2,10,3,0,4,5
32 u32 0
36 u32 amount patchlist padding | 0 - 28
40 u32 amount patchlist model indexes | 0 - 108
44 b12 shared string
56 u32 always 1, prob shared string index
60 u32 0
64 u32 0
68 u32 0
72 u32 0
76 u32 0
80 u32 0
84 bytes

hwvx_proto_audio_section

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


hwvx proto 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_proto_audio_list

Offset Type Description
00 u32 32 - 632688
04 u32 832 - 332736
08 u32 16,4294967295,1920
12 u32 8000 - 44145
16 u16 always 4096
18 u16 always 32767
20 u32 0
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_audio_data

raw vag format, no header


hwvx_proto_impulse_tracker

Impulse Tracker module sound data
Magic: IMPM


hwvx_proto_audio_data_2

raw vag format, no header, background music maybe?


patch_list

2 patch list versions are seen, geometry & everything else


hwvx_proto_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)
To get each section you would do:
patch_list = hwvx_proto_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 Model Offsets
patch_list+= (u32(56) * 8) //start of General Offsets
patch_list+= (u32(12) *4) //start of Ordered List

Texture Indexes (1)

sections with texture patches seen:
hwvx_proto_model_8_8 [24]
hwvx_proto_share_end_8 [0]
hwvx_proto_world_settings [120][124][128][132][136][140][144][148][152]
hwvx_proto_car [68][80]
hwvx_proto_mysterious_24t6 [8]
hwvx_proto_mysterious_24t7_88 [0]
hwvx_proto_mysterious_24t9 [20][24]
hwvx_proto_font [0]
hwvx_proto_interface_16_20t0 [4]t0
hwvx_proto_interface_16_20t0_16_4 [0]
hwvx_proto_interface_text_related_20_4 [0]
hwvx_proto_unknown_thing_4t1_36 [0]
hwvx_proto_asdf [92]
hwvx_proto_item_48 [24]
hwvx_proto_link [16][20]
hwvx_proto_texture_anims_0_20_4 [0]

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

Texture Anims (2)

sections with texture animation patches seen:
hwvx_proto_model_8_8 [0]

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

Sounds (3)

sections with sound patches seen:
hwvx_proto_sound_section [20]

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

Models (4)

sections with model patches seen:
hwvx_proto_geo_basic_0 [8]
hwvx_proto_share [0]
hwvx_proto_world_20_12 [0]
hwvx_proto_world_model_related [0]t0
hwvx_proto_car [84]
hwvx_proto_mysterious_24t5 [8]
hwvx_proto_model_link_4 [0]
hwvx_proto_model_link_12 [0]
hwvx_proto_model_link_56_4 [8]
hwvx_proto_interface_16_20t0 [4]t1
hwvx_proto_unknown_small_model_link_12 [28]
hwvx_proto_grand_section [0]
hwvx_proto_unknown_thing_4t0_36 [0]
hwvx_proto_asdf [16]
hwvx_proto_item_48_0_12 [0]

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

General Offsets (5)

Offset Type Description
0 u32 offset
4 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_proto_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_proto_file_specific_section
hwvx_proto_model
hwvx_proto_texture_anims
hwvx_proto_model_anims_1
hwvx_proto_model_anims_2
hwvx_proto_texture
hwvx_proto_texture_data
hwvx_proto_color_table
hwvx_proto_share_end
hwvx_proto_unordered_list
hwvx_proto_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_proto_world
5 = colliders hwvx_proto_collision
6 = world texture no section seen
7 = geometry hwvx_proto_geo_basic
8 = share hwvx_proto_share / also hwvx_proto_share_end seen?
9 = audio basic
10 = music basic

hwvx_proto_basic

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

hwvx_proto_basic_4

Offset Type Description
00 u32 based on hwvx_proto_directory [4]
0 = offset (hwvx_proto_car)
1 = offset (hwvx_proto_interface)
2 = offset (hwvx_proto_item)
3 = offset (hwvx_proto_link)
9 = offset (hwvx_proto_sound_controls)
music = 0
04 u32 0 - 75
8 bytes

hwvx_proto_geo_basic

Offset Type Description
00 u32 offset
04 u32 offset (hwvx_proto_geo_list)
8 bytes

hwvx_proto_geo_basic_0

based on amount [56] prob

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

hwvx_proto_share

based on amount [56] prob

Offset Type Description
00 u32 patch model
4 bytes per entry

hwvx_proto_world

order:
hwvx_proto_world
hwvx_proto_world_124
hwvx_proto_world_140
hwvx_proto_world_132
hwvx_proto_world_12
hwvx_proto_world_20
hwvx_proto_world_20_12
hwvx_proto_world_36
hwvx_proto_world_36_36
hwvx_proto_world_36_48
hwvx_proto_world_36_48_16
hwvx_proto_world_36_28
hwvx_proto_world_36_48_8
hwvx_proto_world_36_48_24
hwvx_proto_world_44
hwvx_proto_world_116
hwvx_proto_world_76
hwvx_proto_world_52
hwvx_proto_world_52_88t1
hwvx_proto_world_92
hwvx_proto_world_100
hwvx_proto_world_108
hwvx_proto_world_108_40
hwvx_proto_world_108_44t1
hwvx_proto_world_108_44t2
hwvx_proto_world_108_44t3
hwvx_proto_world_108_44t6
hwvx_proto_world_4
hwvx_proto_world_4_20
hwvx_proto_world_4_16
hwvx_proto_world_4_16_4
hwvx_proto_world_120
hwvx_proto_world_120_0

world multi linked sections
hwvx_proto_world_12
hwvx_proto_world_20
hwvx_proto_world_36_36
hwvx_proto_world_36_48
hwvx_proto_world_36_48_8
hwvx_proto_world_36_48_16
hwvx_proto_world_36_48_24
hwvx_proto_world_52
hwvx_proto_world_76
hwvx_proto_world_108
hwvx_proto_world_108_44t6

Offset Type Description
00 u32 0
04 u32 offset
08 u32 amount 1 - 23
12 u32 offset (hwvx_proto_world_12) based on amount [8] |always 256
16 u32 amount 0 - 6584
20 u32 offset (hwvx_proto_world_20) based on amount [16]
24 u32 0
28 u32 0
32 u32 amount 1 - 26
36 u32 offset based on amount [32]
40 u32 amount 0 - 7
44 u32 offset based on amount [40]
48 u32 amount 0 - 10
52 u32 offset (hwvx_proto_world_52) based on amount [48]
56 u32 0
60 u32 0
64 u32 0
68 u32 0
72 u32 amount 0 - 15
76 u32 offset (hwvx_proto_world_76) based on amount [72]
80 u32 amount 0 - 4
84 u32 offset (hwvx_proto_world_84) based on amount [80]
88 u32 amount 0 - 5
92 u32 offset based on amount [88]
96 u32 amount 0 - 15
100 u32 offset based on amount [96]
104 u32 amount 9 - 837
108 u32 offset (hwvx_proto_world_108) based on amount [104]
112 u32 prob amount 0,1
116 u32 offset based on amount [112]
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_proto_world_settings)
160 bytes

hwvx_proto_world_124

string listed here


hwvx_proto_world_140

string listed here


hwvx_proto_world_132

string listed here


hwvx_proto_world_12

multi linked to by:
hwvx_proto_world [12]
hwvx_proto_triggers_and_actions_4t6 [12] 1st entry only

Offset Type Description
00 float -4900.3271484375 - 4894.14501953125
04 float -801.9620361328125 - 617.5931396484375
08 float -4548.1435546875 - 5112.09521484375
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 float -0.11147642135620117 - 0.4570648670196533
20 float -18.378524780273438 - 11.99551773071289
24 float -0.046747684478759766 - 0.0023209452629089355
28 u8 always 205
29 u8 always 205
30 u8 always 205
31 u8 always 205
32 u32 24 - 5848
36 u32 0
40 u32 0
44 u32 1,0,9
48 u8 2 - 255
49 u8 0,255
50 u8 0,255
51 u8 0,255
52 u8 1,0
53 u8 1,5,3,2,4,6
54 u8 1,0
55 u8 1,35
56 float 500,700,300,1000,400
60 float 1000,4000,700,2000,1300
64 u32 offset (hwvx_proto_world_idk)
68 u32 offset (hwvx_proto_world_idk)
72 u32 offset (hwvx_proto_world_idk)
76 u32 offset (hwvx_proto_world_idk)
80 u32 1,0
84 u32 0
88 u32 0
92 u32 1081 - 65535
96 bytes per entry

hwvx_proto_world_20

multi linked to by:
hwvx_proto_world [20]

Offset Type Description
00 u32 314 - 1240
04 u32 offset (hwvx_proto_model_anims_1)
08 float 5,7,10,15,1
12 u32 offset
16 u32 0
20 bytes per entry

hwvx_proto_world_20_12

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

hwvx_proto_world_20_12_16

multi linked to by:
hwvx_proto_world_20_12 [16]

Offset Type Description
00 float always 1
04 float always 1
08 float always 1
12 u32 0
16 u32 0
20 u32 always 1000
24 u32 0
28 u8 always 255
29 u8 always 255
30 u8 always 255
31 u8 always 255
32 float always 1
36 u32 0
40 float 50.96501541137695 - 603.8995971679688
44 u32 0
48 u32 offset (hwvx_proto_car_sub_link)
52 u32 0
56 u32 0
60 u32 0
64 u32 0
68 u32 offset
72 u32 0
76 u32 0
80 bytes

hwvx_proto_world_20_12_16_68

Offset Type Description
00 float -99.2608642578125 - -6.5828857421875
04 float -77.00448608398438 - -5.539306640625
08 float -124.82861328125 - -13.801666259765625
12 u32 0
16 float 6.5828857421875 - 99.26084899902344
20 float 4.16650390625 - 44.3375244140625
24 float 13.8016357421875 - 124.8284912109375
28 u32 0
32 float 50.96501541137695 - 147.0928192138672
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_proto_world_36

Offset Type Description
00 u32 2 - 7771
04 u32 0
08 u32 0
12 u32 0 - 323
16 u32 0
20 u32 0
24 u32 amount bytes 0 - 2624
28 u32 offset based on amount bytes [24]
32 u32 amount? 0,3,1,2,4
36 u32 offset
40 u32 0
44 u32 0
48 u32 offset
52 u32 0
56 u32 0
60 u32 0
64 bytes per entry

hwvx_proto_world_36_36

multi linked to by:
hwvx_proto_world_36 [36]

Offset Type Description
00 u32 208 - 7771
04 u32 0 - 7771
08 u32 0 - 7771
12 u32 0 - 7771
16 bytes

hwvx_proto_world_36_48

multi linked to by:
hwvx_proto_world_36 [48]

Offset Type Description
00 u32 0
04 u32 amount 0 - 296
08 u32 offset based on amount [4]
12 u32 amount 0 - 112
16 u32 offset based on amount [12]
20 u32 amount 0 - 60
24 u32 offset based on amount [20]
28 u32 0
32 bytes

hwvx_proto_world_36_48_16

multi linked to by:
hwvx_proto_world_36_48 [16]

Offset Type Description
00 float -5144.80712890625 - 4953.7333984375
04 float -818.3575439453125 - 630.6139526367188
08 float -4094.2138671875 - 4644.375
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 - 5327
36 u32 offset (hwvx_proto_strange)
40 u32 0
44 float 500,1500,700,600,800,300,400,1000,1200
48 u32 0
52 u32 1,0
56 u32 1,0
60 u32 0
64 bytes

hwvx_proto_world_36_28

Offset Type Description
00 float -1 - 1
04 float -1 - 1
08 float -1 - 1
12 float -6166.4599609375 - 5262.06591796875
16 u8 3,0,1,2
17 u8 always 205
18 u8 1 - 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_proto_world_36_48_8

multi linked to by:
hwvx_proto_world_36_48 [8]

Offset Type Description
00 float -5432.97216796875 - 5053.650390625
04 float -808.5330810546875 - 617.60986328125
08 float -4562.8896484375 - 5259.4931640625
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 float -0.9865983128547668 - 0.708911657333374
20 float -1 - 1
24 float -0.7181445956230164 - 0.7074896097183228
28 float -1 - 1
32 u32 56 - 8272
36 u32 offset (hwvx_proto_world_model_related)
40 float 500,700,600,800,3004.4951171875,1000,1
44 u32 0
48 u32 1,0
52 u32 0,1
56 u32 0
60 u32 0
64 bytes per entry

hwvx_proto_world_36_48_24

multi linked to by:
hwvx_proto_world_36_48 [24]
hwvx_proto_triggers_and_actions_4t5 [4]

Offset Type Description
00 float -5397.0263671875 - 5047.4970703125
04 float -807.3743896484375 - 636.52685546875
08 float -4501.787109375 - 5233.3505859375
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u32 35 - 8399
20 u32 10000,0,30000,60000
24 u32 1,0
28 u32 0
32 float always 500
36 u32 0
40 u32 1,0
44 u32 0
48 u32 1 - 71
52 u32 16842752 - 1044250881
56 u32 0
60 u32 0
64 bytes per entry

hwvx_proto_world_44

Offset Type Description
00 float -3518.383544921875 - 3683.447021484375
04 float -257.639404296875 - 292.9000244140625
08 float -1794.569580078125 - 2959.843994140625
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u32 3682 - 4535
20 u32 offset (hwvx_proto_sound_section)
24 u32 0
28 u32 always 1
32 u32 always 1
36 float 163.15728759765625 - 5000
40 float 245.71278381347656 - 7500
44 u32 0
48 float always 1
52 u32 0
56 u32 0
60 u32 0
64 bytes per entry

hwvx_proto_world_116

Only WORLD2L1_PROTO.XPS ?
Offset Type Description
00 float always 2034.0966796875
04 float always -87.50000762939453
08 float always 3475.563720703125
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 u32 always 4577
20 u32 always 1
24 u32 0
28 u32 0
32 bytes

hwvx_proto_world_76

multi linked to by:
hwvx_proto_world [76]
hwvx_proto_triggers_and_actions_4t5 [4]
hwvx_proto_triggers_and_actions_20_4t7 [8]

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

hwvx_proto_world_84

multi linked to by:
hwvx_proto_world [84]
hwvx_proto_triggers_and_actions_4t5 [4]
hwvx_proto_triggers_and_actions_20_4t7 [8]

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

hwvx_proto_world_52

multi linked to by:
hwvx_proto_world [52]
hwvx_proto_world_52 [88]t0

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.0011643380858004093
20 float 0.9889901876449585 - 1
24 float -0.05064714327454567 - 0.14793388545513153
28 u32 0
32 float -1 - 0.9999871850013733
36 float 0,8.742277657347586e-8
40 float -0.9997057318687439 - 1
44 u32 0
48 float -3662.59765625 - 4338.53955078125
52 float -1069.2884521484375 - 617.5800170898438
56 float -4929.5244140625 - 4275.75
60 float always 1
64 u32 65 - 4849
68 u32 0
72 u32 0
76 float 10,20,40,319.5754089355469,45.971683502197266
80 u32 type 0,1
84 u32 3,5,7,1,0,4
88 u32 based on type [80]
0 = offset hwvx_proto_world_52
1 = offset
92 u32 0,10000,250
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 bytes per entry

hwvx_proto_world_52_88t1

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

hwvx_proto_world_92

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

hwvx_proto_world_100

Offset Type Description
00 u32 89 - 6688
04 u32 offset (hwvx_proto_world_color_section)
08 u32 always 1
12 u32 0
16 bytes per entry

hwvx_proto_world_108

multi linked to by:
hwvx_proto_world [108]
hwvx_proto_world_4_16_4 [0]
hwvx_proto_triggers_and_actions_4t5 [4]

Offset Type Description
00 u32 149 - 8589
04 u32 1,0
08 u32 1,0
12 u32 6,0,2,1,3
16 float -5827.3134765625 - 7324.07861328125
20 float -1358.3443603515625 - 4477.861328125
24 float -8086.6630859375 - 6535.7412109375
28 u8 0,205
29 u8 0,205
30 u8 0,205
31 u8 0,205
32 float 0 - 36000000
36 float 0 - 100000000
40 u32 offset
44 u32 based on type [12]
1 = offset
2 = offset
3 = offset
6 = offset (hwvx_proto_world_108_44t6)
0 - 159632
48 bytes per entry

hwvx_proto_world_108_40

Offset Type Description
00 float -1 - 0.9999644756317139
04 float -0.07977746427059174 - 0.2104722559452057
08 float -0.8660280704498291 - 1
12 float -5121.529296875 - 4084.037841796875
16 u8 3,2,1
17 u8 always 205
18 u8 2,1,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 float -1 - 0.9999644756317139
36 float -0.07977969944477081 - 0.2106786072254181
40 float -0.8660280704498291 - 1
44 float -5121.529296875 - 4084.037841796875
48 u8 0,2,1
49 u8 always 205
50 u8 205,1
51 u8 205,0
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 - 0.000017347667380818166
68 float 0.9706404209136963 - 1
72 float -0.11350507289171219 - 0.24053536355495453
76 float -1281.717529296875 - 726.3453369140625
80 u8 3,2,1
81 u8 always 205
82 u8 2,1,205
83 u8 0,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 -0.12989315390586853 - 0.000017409935026080348
100 float 0.9706399440765381 - 1
104 float -0.11350585520267487 - 0.24053698778152466
108 float -1281.722412109375 - 726.3453979492188
112 u8 0,2,1
113 u8 always 205
114 u8 205,1
115 u8 205,0
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.9999644160270691 - 1
132 float -0.21049530804157257 - 0.07977664470672607
136 float -1 - 0.8660281896591187
140 float -4351.5283203125 - 4498.38916015625
144 u8 3,1
145 u8 always 205
146 u8 2,205
147 u8 0,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.9999644160270691 - 1
164 float -0.21046580374240875 - 0.07977970689535141
168 float -1 - 0.8660281896591187
172 float -4351.5283203125 - 4498.38916015625
176 u8 0,1
177 u8 always 205
178 u8 always 205
179 u8 always 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 -0.00001231977148563601 - 0.1298765242099762
196 float -1 - -0.970640242099762
200 float -0.24053624272346497 - 0.11350502818822861
204 float -792.3660888671875 - 1210.7646484375
208 u8 3,1
209 u8 always 205
210 u8 2,205
211 u8 0,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 -0.000012299539775995072 - 0.12985685467720032
228 float -1 - -0.970640242099762
232 float -0.24053607881069183 - 0.11350544542074203
236 float -792.3660888671875 - 1210.763671875
240 u8 0,1
241 u8 always 205
242 u8 always 205
243 u8 always 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 -0.8660277128219604 - 1
260 float -0.0000119576970973867 - 0.2914239764213562
264 float -0.9998459815979004 - 1
268 float -5101.18603515625 - 4199.00146484375
272 u8 3,1
273 u8 always 205
274 u8 2,205
275 u8 0,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 -0.8660277128219604 - 1
292 float -0.00001722395609249361 - 0.2914203703403473
296 float -0.9998459815979004 - 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.8660268783569336
324 float -0.2914127707481384 - 0.00001725850597722456
328 float -1 - 0.9998459815979004
332 float -4314.54345703125 - 4796.7451171875
336 u8 1,2
337 u8 always 205
338 u8 205,1
339 u8 205,0
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.8660268783569336
356 float -0.2914240062236786 - 0.00001192422496387735
360 float -1 - 0.9998459815979004
364 float -4314.54345703125 - 4796.7451171875
368 u8 0
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_proto_world_108_44t1

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

hwvx_proto_world_108_44t2

Offset Type Description
00 u8 1,221,152
01 u8 0,221,65
02 u8 0,221,75
03 u8 0,221,95
04 u8 50,255,203,152,0
05 u8 115,127,108,89,0
06 u8 153,102,204,255,50,0
07 u8 25,38,44,63,51,0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_world_108_44t3

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

hwvx_proto_world_108_44t6

multi linked to by:
hwvx_proto_world_108 [44t6]

Offset Type Description
00 float -0.7607298493385315 - 0.8718354105949402
04 float -1 - 0.07059799879789352
08 float -0.8989120721817017 - 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 u32 0,2,1,3,256
28 u32 0
32 bytes

hwvx_proto_world_4

Offset Type Description
00 float -7615.1845703125 - 0
04 float -1203.1905517578125 - 0
08 float -7381.078125 - 0
12 u8 always 204
13 u8 always 204
14 u8 always 204
15 u8 always 204
16 u32 offset based on amount [28]
20 u32 offset based on amount [28]
24 u32 8 - 1024
28 u32 1 - 492
32 float 500,400
36 float 278.18109130859375 - 6831.77001953125
40 float 500,400
44 u32 2 - 32
48 u32 2,1
52 u32 10,6,7,4,9,12,21,14,32,11
56 u32 0
60 u32 0
64 bytes

hwvx_proto_world_4_20

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

hwvx_proto_world_4_16

Offset Type Description
00 u32 amount 0 - 25
04 u32 offset (hwvx_proto_world_4_16_4) based on amount [0]
08 u32 amount 0 - 5
12 u32 offset (hwvx_proto_world_4_16_4) based on amount [8]
16 u32 amount 0 - 15
20 u32 offset (hwvx_proto_world_4_16_4) based on amount [16]
24 u32 amount 0 - 2
28 u32 offset (hwvx_proto_world_4_16_4) based on amount [24]
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 u32 amount 0 - 270
52 u32 offset (hwvx_proto_world_4_16_4) based on amount [48]
56 bytes per entry

hwvx_proto_world_4_16_4

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

hwvx_proto_world_120

Offset Type Description
00 u32 offset based on amount [4]
04 u32 amount 0 - 291
08 u8 0 - 255
09 u8 255,0
10 u8 255,0
11 u8 255,0
12 u32 0
16 bytes

hwvx_proto_world_120_0

multi linked to by:
hwvx_proto_world_120 [0]

Offset Type Description
00 float -5375.1669921875 - 5032.7001953125
04 float -807.374267578125 - 743.0345458984375
08 float -4676.67431640625 - 5149.48974609375
12 u8 always 205
13 u8 always 205
14 u8 always 205
15 u8 always 205
16 float 0 - 1905.4068603515625
20 float 0 - 1905.4068603515625
24 float 0 - 794.8197021484375
28 float 0 - 600.2181396484375
32 u8 0 - 255
33 u8 0,128,1
34 u8 0,255
35 u8 0,255
36 u8 0 - 255
37 u8 128,0,1
38 u8 255,0
39 u8 255,0
40 u8 0 - 255
41 u8 128,0,1
42 u8 255,0
43 u8 255,0
44 u8 0 - 255
45 u8 128,0,1
46 u8 255,0
47 u8 255,0
48 u8 0 - 255
49 u8 0,128,1
50 u8 0,255
51 u8 0,255
52 u8 0 - 255
53 u8 0,128,1
54 u8 0,255
55 u8 0,255
56 u8 0 - 255
57 u8 128,0,1
58 u8 255,0
59 u8 255,0
60 u8 0 - 255
61 u8 128,0,1
62 u8 255,0
63 u8 255,0
64 float 0 - 300
68 u32 0 - 290
72 u32 0 - 1130102777
76 float 0 - 146.66659545898438
80 u32 25600,19200,25601,19201,12800,20480,8448,5120,0
84 u8 0
85 u8 always 128
86 u8 always 255
87 u8 always 255
88 u32 0
92 u32 0
96 u32 256,262400,196864,65792,0
100 u32 0 - 271
104 u32 0
108 u32 0
112 bytes per entry

hwvx_proto_collision

linked to by
datapack

Offset Type Description
00 float -7615.1845703125 - 2014.007568359375
04 float -1203.1905517578125 - 274.95953369140625
08 float -7381.078125 - 2001.7733154296875
12 u32 0
16 float -1737.190673828125 - 5082.46826171875
20 float -578.736328125 - 6371.3984375
24 float -440.14031982421875 - 5313.22705078125
28 u32 0
32 u32 offset based on amount [68]
36 u32 always 13
40 float 47.28360366821289 - 499.32843017578125
44 float 27.316530227661133 - 910.5322875976562
48 float 47.30649948120117 - 500.87188720703125
52 u32 amount 6 - 70
56 u32 amount 1 - 15
60 u32 amount 13 - 70
64 u32 offset based on amounts [52]*[56]*[60]
68 u32 amount 228 - 3879
72 u32 amount 0 - 84034
76 u32 offset based on amount [76]
80 u32 amount 0 - 7065
84 u32 offset based on amount [80]
88 u32 0,1
92 u32 offset
96 bytes

hwvx_proto_collision_32

Offset Type Description
00 float -7615.28466796875 - 4932.041015625
04 float -1203.29052734375 - 5517.3271484375
08 float -7381.17822265625 - 5079.640625
12 float 0,-107374176
16 float -7361.2939453125 - 5082.568359375
20 float -1002.8632202148438 - 6371.49853515625
24 float -7127.091796875 - 5313.3271484375
28 u32 0,3435973836
32 u32 0,3435973836
36 u32 0,3435973836
40 u32 0,3435973836
44 u32 0,3435973836
48 u32 offset based on amount [60], somestimes no offset
52 u32 0
56 u32 offset based on amount [60]
60 u32 amount 0 - 2827
64 u32 0 - 798
68 u32 offset end of hwvx_proto_collision_32_48, somestimes no offset
72 u32 0
76 u32 0
80 bytes per entry

hwvx_proto_collision_32_48

multi linked to by:
hwvx_proto_collision_32 [48]

Offset Type Description
00 float -1.0000001192092896 - 1.0000001192092896
04 float -1.0000001192092896 - 1.0000001192092896
08 float -1.0000001192092896 - 1
12 float -5525.7998046875 - 5629.787109375
16 u32 0
20 u8 1,255
21 u8 0,255
22 u8 0 - 255
23 u8 255,0,1,2,3,5
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_proto_collision_32_56

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

hwvx_proto_collision_64

Offset Type Description
00 u32 ? - ?
4 bytes per entry

hwvx_proto_collision_76

Offset Type Description
00 float NaN - NaN
04 float NaN - NaN
08 float NaN - NaN
12 float NaN - NaN
16 u32 offset
20 u32 always 3
24 u32 0
28 u32 0,1
32 bytes per entry

hwvx_proto_collision_76_16

Offset Type Description
00 float -7615.1845703125 - 5074.33984375
04 float -1203.1905517578125 - 5517.79296875
08 float -7381.078125 - 5313.22705078125
12 float always 1
16 float -6764.828125 - 4241.375
20 float -1203.1905517578125 - 6371.3984375
24 float -6530.72119140625 - 4462.87060546875
28 float always 2
32 float -7615.1845703125 - 5074.33984375
36 float -1203.1905517578125 - 5517.79296875
40 float -7381.078125 - 5313.22705078125
44 u32 0
48 bytes

hwvx_proto_collision_84

Offset Type Description
00 float -5412.91943359375 - 5070.2802734375
04 float -338.8578186035156 - 888.73876953125
08 float -4640.5732421875 - 5246.94189453125
12 u32 0
16 float -5412.91943359375 - 5081.873046875
20 float -336.6822509765625 - 970.7125854492188
24 float -4621.38330078125 - 5246.94189453125
28 u32 0
32 u8 always 205
33 u8 always 205
34 u8 always 205
35 u8 always 205
36 u32 0
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_proto_collision [92]

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

hwvx_proto_triggers_and_actions

linked to by:
hwvx_proto_datapack [68]

Offset Type Description
00 u32 1 - 23
04 u32 based on type [8]
1 = offset
3 = offset
5 = offset
6 = offset
rest = offset
08 u32 type? 0 - 269
12 u32 offset based on amount [16]
16 u32 amount 0 - 3
20 u32 offset based on amount [28]
24 u32 offset
28 u32 amount 1 - 18
32 u32 0,1
36 u32 0
40 u32 0,3,1
44 bytes per entry

hwvx_proto_triggers_and_actions_4t1

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

hwvx_proto_triggers_and_actions_4t3

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

hwvx_proto_triggers_and_actions_4t5

Offset Type Description
00 u32 always 1
04 u32 unknown type, not sure how this is determined:
hwvx_proto_world_36_48_24
hwvx_proto_world_76
hwvx_proto_world_108
08 u32 1,0
12 u32 / float based on type [16]
0 = links to other world sections
 hwvx_proto_world_12
 hwvx_proto_world_36_48_24
22 = float 0,60,50,666,777,555,4,5,20,10,2,3,1
16 u32 0,22
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_triggers_and_actions_4t6

Offset Type Description
00 u32 always 21
04 u32 always 2
08 u32 always 1
12 u32 offset (hwvx_proto_world_12) 1st entry only
16 u32 0
20 float 5999,1499
24 u32 0
28 u32 0
32 bytes

hwvx_proto_triggers_and_actions_4trest

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

hwvx_proto_triggers_and_actions_4trest_sec1

Offset Type Description
00 u32 1st amount
4 bytes

hwvx_proto_triggers_and_actions_4trest_sec2

Offset Type Description
00 u32 offseted to:
hwvx_proto_world_36_48
hwvx_proto_world_36_48_8
hwvx_proto_world_36_48_24
hwvx_proto_world_36_36
hwvx_proto_world_108
hwvx_proto_world_12
Also offsets to random sections in collision ???
([0] *4) bytes

hwvx_proto_triggers_and_actions_4trest_sec3

Offset Type Description
00 u32 2nd amount
4 bytes

hwvx_proto_triggers_and_actions_4trest_sec4

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

hwvx_proto_triggers_and_actions_12

Offset Type Description
00 u32 0,11,6,1
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 bytes per entry

hwvx_proto_triggers_and_actions_12_4

Offset Type Description
00 u32 always 1
04 u32 offset hwvx_proto_world_36_48_24 sometimes ???
08 u32 0,1
12 float based on type [16]
0 = offset (hwvx_proto_world_12)
rest = float 0,1,5,10,30,
16 u32 22,21,20,0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_triggers_and_actions_20

Offset Type Description
00 u32 type? 0 - 39, some sections are probably combined
04 u32 based on type [0] & [8]
0 = offset
[0] 1 = offset
 [8] = 12
 [8] = 13
 [8] = 16
2 = offset
3 = offset
4 = offset
5 = offset
6 = offset
7,16 = offset
8 = offset
9 = offset
[0] 10 = offset
 [8] = 10
 [8] = 20
12 = offset
15 = offset
17 = offset
20 = offset
21 = offset
22 = offset
24 = offset
26 = offset
31 = offset
32 = offset
34 = offset
36 = offset
38 = offset
39 = offset
08 u32 type? amount (bytes *4) ???? 1 - 116
12 u32 0 - 8000
16 u8 255,1
17 u8 255,0
18 u8 255,0
19 u8 255,0
20 u32 0 - 8000
24 bytes per entry

hwvx_proto_triggers_and_actions_20_4t0

hwvx_proto_triggers_and_actions_20_4t0_sec1

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

hwvx_proto_triggers_and_actions_20_4t0_sec2

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

hwvx_proto_triggers_and_actions_20_4t1t12

Offset Type Description
00 u32 always 30
04 u32 type 1,6
1 = hwvx_proto_world_12
6 = hwvx_proto_world_120_0
08 u32 based on type [4]
1 = offset (hwvx_proto_world_12)
6 = offset (hwvx_proto_world_120_0)
12 float 0,15
16 float 0,10,1
20 float 0,1
24 u32 type 1,6,2
28 u32 based on type [24]
1 = offset (hwvx_proto_world_12)
2 = offset (hwvx_proto_world_36_48_8)
6 = offset (hwvx_proto_world_120_0)
32 u32 0
36 float 0,5,10
40 u32 0
44 u32 always 31
48 bytes

hwvx_proto_triggers_and_actions_20_4t1t13

Offset Type Description
00 u32 always 27
04 float 105,90
08 u32 type 6,2,1
12 u32 based on type [8]
1 = offset (hwvx_proto_world_12)
2 = offset (hwvx_proto_world_36_48_8)
6 = offset (hwvx_proto_world_120_0)
16 float 0,15
20 float 0,5,1
24 float 15,0,1
28 u32 type 1,6,2
32 u32 based on type [28]
1 = offset (hwvx_proto_world_12)
2 = offset (hwvx_proto_world_36_48_8)
6 = offset (hwvx_proto_world_120_0)
36 u32 0
40 float 0,10
44 float 0,20
48 u32 always 31
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_proto_triggers_and_actions_20_4t1t16

Offset Type Description
00 u32 always 28
04 float 105,120
08 float 18,17,85,15
12 float 0.5,1,0
16 float 1,0.8999999761581421,0.699999988079071,0.800000011920929
20 u32 type 1,2
24 u32 based on type [20]
1 = offset (hwvx_proto_world_12)
2 = offset (hwvx_proto_world_36_48_8)
28 float 10,0
32 float 10,120,0,5
36 u32 0
40 u32 type 1,2
44 u32 based on type [40]
1 = offset (hwvx_proto_world_12)
2 = offset (hwvx_proto_world_36_48_8)
48 u32 0
52 float 0,5,80
56 u32 0
60 u32 always 31
64 bytes

hwvx_proto_triggers_and_actions_20_4t2

hwvx_proto_triggers_and_actions_20_4t2_sec1

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

hwvx_proto_triggers_and_actions_20_4t2_sec2

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

hwvx_proto_triggers_and_actions_20_4t3

hwvx_proto_triggers_and_actions_20_4t3_sec1

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

hwvx_proto_triggers_and_actions_20_4t3_sec2

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

hwvx_proto_triggers_and_actions_20_4t4

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

hwvx_proto_triggers_and_actions_20_4t5

hwvx_proto_triggers_and_actions_20_4t5_sec1

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

hwvx_proto_triggers_and_actions_20_4t5_sec2

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

hwvx_proto_triggers_and_actions_20_4t6

Offset Type Description
00 u32 5,4
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_triggers_and_actions_20_4t7

Offset Type Description
00 u32 17,15
04 u32 always 1
08 u32 offset (hwvx_proto_world_76)
12 u32 0
16 float 0 - 600000
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_triggers_and_actions_20_4t8

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

hwvx_proto_triggers_and_actions_20_4t9

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

hwvx_proto_triggers_and_actions_20_4t10t10

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

hwvx_proto_triggers_and_actions_20_4t10t20

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 always 41
28 u32 20,48,34,64,56
32 u32 always 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_proto_triggers_and_actions_20_4t12

hwvx_proto_triggers_and_actions_20_4t12_sec1

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

hwvx_proto_triggers_and_actions_20_4t12_sec2

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

hwvx_proto_triggers_and_actions_20_4t15

Offset Type Description
00 u32 type?
0 = 0
1 = /hwvx_proto_world_12
2 = hwvx_proto_world_36_48_8
3 = hwvx_proto_world_36_48_24
6 = hwvx_proto_world_120_0
04 u32 based on type [0]
1 = hwvx_proto_world_12
2 = hwvx_proto_world_36_48_8
3 = hwvx_proto_world_36_48_24
6 = hwvx_proto_world_120_0
[8] *4 bytes

hwvx_proto_triggers_and_actions_20_4t17

hwvx_proto_triggers_and_actions_20_4t17_sec1

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

hwvx_proto_triggers_and_actions_20_4t17_sec2

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

hwvx_proto_triggers_and_actions_20_4t20

Offset Type Description
00 u32 4,1,7
04 u32 always 60
08 u32 offset (hwvx_proto_text) offset text section
12 u32 0
16 bytes

hwvx_proto_triggers_and_actions_20_4t21

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

hwvx_proto_triggers_and_actions_20_4t22

hwvx_proto_triggers_and_actions_20_4t22_sec1

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

hwvx_proto_triggers_and_actions_20_4t22_sec2

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

hwvx_proto_triggers_and_actions_20_4t24

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

hwvx_proto_triggers_and_actions_20_4t26

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

hwvx_proto_triggers_and_actions_20_4t31

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

hwvx_proto_triggers_and_actions_20_4t32

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

hwvx_proto_triggers_and_actions_20_4t34

Offset Type Description
00 u32 17,15
04 u32 300,101,100
08 u32 0 - 31
12 u32 0
16 float 1,34,35,20,16,28,29
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_triggers_and_actions_20_4t36

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

hwvx_proto_triggers_and_actions_20_4t38

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

hwvx_proto_triggers_and_actions_20_4t39

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

hwvx_proto_triggers_and_actions_24

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

hwvx_proto_triggers_and_actions_24_4

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 always 6
28 u32 0
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_proto_model

Offset Type Description
00 u16 always 4101
02 u16 amount 1 - 5
04 u32 type 0,7,8
08 u32 offset based on amount [2]
12 u32 offset based on amount [2]
16 float -600.8631591796875 - 120.830810546875
20 float -112.98240661621094 - 1.8349437713623047
24 float -427.9849548339844 - 68.0478515625
28 float 0.0008660254534333944 - 610.9417114257812
32 float -124.373046875 - 600.863037109375
36 float -2.1619873046875 - 127.62903594970703
40 float -62.103515625 - 427.9842529296875
44 u32 0
48 float -107374176 - 1.025291217818081e+34
52 float NaN - NaN
56 float NaN - NaN
60 u32 0
64 bytes

hwvx_proto_model_8

Offset Type Description
00 u8 1,2
01 u8 0
02 u8 amount 1 - 35
03 u8 0
04 u32 4 - 5505
08 u32 offset based on amount [2]
12 u32 182011664 - 1227428072
16 u8 0,56,216
17 u8 0,13,25
18 u8 0,108
19 u8 0,15
20 u32 offset string imported texture name?
24 bytes per entry

hwvx_proto_model_12

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

hwvx_proto_model_string

name of texture when first imported?


hwvx_proto_model_8_8

Offset Type Description
00 u32 patch Animation
04 u8 0 - 255
05 u8 0 - 255
06 u8 0 - 255
07 u8 0 - 255
08 u32 0
12 u32 based on type [4] from hwvx_proto_model
0 = offset
7 = offset
8 = offset
16 u32 1 - 1832
20 u32 0 - 4294901760
24 u32 patch texture
28 u32 182018528 - 1227428936
32 bytes per entry

hwvx_proto_model_8_8_12t0

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u16 9 - 10125
18 u8 0
19 u8 always 96
20 u32 0
24 u32 0
28 u32 0
32 u16 0
34 u8 0
35 u8 always 3
36 u8 always 220
37 u8 always 1
38 u8 0
39 u8 always 2
40 u8 always 4
41 u8 always 4
42 u8 0
43 u8 always 1
44 u8 0
45 u8 always 128
46 u8 always 1
47 u8 always 108
48 u8 3 - 79
49 u8 always 128
50 u8 0
51 u8 0
52 u8 0
53 u8 always 64
54 u8 46,14
55 u8 always 48
56 u16 always 1298
58 u16 0
60 u8 0
61 u8 0
62 u8 0
63 u8 0
64 u8 always 3
65 u8 always 1
66 u8 0
67 u8 always 1
68 u8 always 1
69 u8 always 128
70 u8 amount 3 - 79
71 u8 always 108
72 bytes
followed by hwvx_proto_model_8_8_12_modeldata

hwvx_proto_model_8_8_12t7

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

hwvx_proto_model_8_8_12t8

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u32 always 197121
20 u32 offset (hwvx_proto_model_8_8_12t7_20)
24 u32 always 197892
28 u32 offset (hwvx_proto_model_8_8_12t7_20)
32 u32 always 460038
36 u32 offset (hwvx_proto_model_8_8_12t7_20)
40 u32 0
44 u32 0
48 bytes

hwvx_proto_model_8_8_12t7_20

Offset Type Description
00 u16 112,331,85
02 u16 always 24576
04 u32 0
08 u32 0
12 u32 0
16 u32 always 50331648
20 u32 always 33554928
24 u32 always 16778244
28 u32 always 1812037632
32 u32 32784,32795,32780
36 u32 always 2416820224
40 u32 always 307307794
44 u32 always 5
48 u8 always 3
49 u8 always 1
50 u8 0
51 u8 always 1
52 u8 always 1
53 u8 always 128
54 u8 amount hwvx_proto_model_8_8_12_modeldata
55 u8 always 108
56 bytes
followed by hwvx_proto_model_8_8_12_modeldata

hwvx_proto_model_8_8_12_modeldata

hwvx_proto_model_8_8_12_modeldata_sec1

based on previous sections amount
Offset Type Description
00 float -1.889305591583252 - 0.5935239791870117
04 float -9.9150390625 - 4.993503570556641
08 u8 0
09 u8 0
10 u8 0,128,32,64,192
11 u8 0,165,166,179,51
12 u8 255,0,1
13 u8 255,0
14 u8 255,0
15 u8 255,0
16 bytes per entry

hwvx_proto_model_8_8_12_modeldata_sec2

Offset Type Description
00 u8 always 2
01 u8 always 128
02 u8 amount
03 u8 always 100
4 bytes

hwvx_proto_model_8_8_12_modeldata_sec3

array of floats, based on amount [2]
Offset Type Description
00 float 0 - 1
04 float 0 - 4
8 bytes per entry

hwvx_proto_model_8_8_12_modeldata_sec4

Offset Type Description
00 u8 always 3
01 u8 always 128
02 u8 amount
03 u8 always 104
4 bytes

hwvx_proto_model_8_8_12_modeldata_sec5

based on amount [2]
Offset Type Description
00 float -0.5608059763908386 - 0.5608059763908386
04 float -0.8237742185592651 - 0.9473644495010376
08 float -0.9723348617553711 - 0.9723081588745117
12 bytes per entry

hwvx_proto_texture_anims

linked to by:
hwvx_proto_datapack [60]

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

hwvx_proto_model_anims_1

multi linked to by:
hwvx_proto_car [72]
hwvx_proto_model_link [16]
hwvx_proto_item_48_0 [16]
hwvx_proto_world_20 [4]

Offset Type Description
00 u32 always 1
04 u32 always 3
08 float -10,0,-1.2480000257492065,1
12 float 10,3,2,1,100,24,5
16 u32 amount
20 u32 56,49,63
24 u32 offset
28 u32 offset
32 u32 offset
36 u32 offset based on amount [48]
40 u32 2,0
44 u32 offset based on amount [16]
48 u32 amount 0 - 4
52 u8 188,183,13
53 u8 155,0,9
54 u8 17 - 254
55 u8 35,14,36,0,46,63,33
56 u8 104,189,248
57 u8 145,0,181
58 u8 17 - 254
59 u8 35,14,36,0,46,191,33
60 u8 16,240,193,0
61 u8 188,182,0
62 u8 3,192,0
63 u8 120,0
64 bytes

hwvx_proto_model_anims_1_24

4 - 24 bytes seen

Offset Type Description
00 u8 0
01 u8 20,0
02 u8 0,10
03 u8 5,0,4
04 u8 0,64
05 u8 0,1,160
06 u8 0
07 u8 0
8 bytes

hwvx_proto_model_anims_1_28

12 - 32 bytes seen

hwvx_proto_model_anims_1_28_sec1

Offset Type Description
00 u16 127
??? bytes

hwvx_proto_model_anims_1_28_sec2

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

hwvx_proto_model_anims_1_32

16 - 496 bytes seen

Offset Type Description
00 float always -10
04 float always 10
08 float ?
08 float ?
16+ bytes

hwvx_proto_model_anims_1_36

Offset Type Description
00 float ?
04 float ?
08 float ?
12 float ?
16 bytes per entry

hwvx_proto_model_anims_1_44

Offset Type Description
00 float -4.480576992034912 - 4.480000019073486
04 float -2.363856792449951 - 2.682101249694824
08 float -11.154407501220703 - 10.425529479980469
12 float -2.328306384496992e-12 - 239932768256
16 float -4.336808689942018e-19 - 8.96831017167883e-44
20 float -0.0013084333622828126 - 3.918868709144226e-30
24 bytes per entry

hwvx_proto_model_anims_2

multi linked to by:
hwvx_proto_car [76]
hwvx_proto_model_link [20]
hwvx_proto_model_link_56 [8]
hwvx_proto_car_128 [96]
hwvx_proto_car_228 [0]
hwvx_proto_item [52]
hwvx_proto_item_48 [28]
hwvx_proto_item_48_0 [20]
hwvx_proto_world_model_related [20]

Offset Type Description
00 u32 amount 7 - 9
04 u8 20 - 252
05 u8 3 - 250
06 u8 0 - 255
07 u8 32,34,33,10,31,35,36
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_proto_model_anims_2_16

Offset Type Description
00 float 0,1
04 float 0,-0.1736481785774231,0.1736481785774231
08 float 0,0.0030252328142523766
12 float 1,0.9999954104423523
16 float -4 - 4
20 float -2.1973865032196045 - 2.682101249694824
24 float -8.9235258102417 - 10.425529479980469
28 u8 5,1,0,4
29 u8 0 - 253
30 u8 255,2,1
31 u8 0 - 255
32 bytes per entry

hwvx_proto_texture

linked to by:
hwvx_proto_datapack [24]

Offset Type Description
00 u16 texture type
* 0 = RGB
* 1 = RGBA uncompressed
* 2 = 8-bit Indexed
02 u16 x | 64,256,128,32,16
04 u16 y | 64,256,128,32,16
06 u16 mip maps | 7,0,8,6,4,3,9,5
08 u32 offset texture data
12 u32 CLUT index | 0 - 138
16 bytes per entry

texture_data

RGB,RGBA,8-bit Indexed seen


color table

linked to by:
hwvx_proto_datapack [44]

1024 / 256 colors per entry, offseted from hwvx_proto_datapack


hwvx_proto_share_end

only seen in HW_SHARE.XPS, does this even do anything ???

Offset Type Description
00 u32 offset string HW_share
04 u32 amount textures, always 96
08 u32 offset based on amount [4]
12 u32 0
16 u16 0
18 u16 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_share_end_8

Offset Type Description
00 u32 patch texture
4 bytes per entry

Unordered List

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

sections seen

broke list:

multi linked

hwvx_proto_world_color_section
hwvx_proto_world_small_section
hwvx_proto_world_model_related
hwvx_proto_world_idk
hwvx_proto_some_world_thing
hwvx_proto_car_related
hwvx_proto_strange
hwvx_proto_text
hwvx_proto_font
hwvx_proto_interface
hwvx_proto_interface_text_related
hwvx_proto_unknown
hwvx_proto_unknown_idk_sec
hwvx_proto_unknown_link_section
hwvx_proto_grand_section
hwvx_proto_unknown_thing
hwvx_proto_asdf
hwvx_proto_sound_controls
hwvx_proto_sound_section

just linked

hwvx_proto_world_text_link
hwvx_proto_world_settings
hwvx_proto_geo_list
hwvx_proto_collision_settings
hwvx_proto_car
hwvx_proto_car_link
hwvx_proto_mysterious
hwvx_proto_model_link
hwvx_proto_item
hwvx_proto_link
hwvx_proto_texture_anims_0


hwvx_proto_world_color_section

multi linked to by:
hwvx_proto_world_100 [4]

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

hwvx_proto_world_color_section_4

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 always 255
04 u32 1,0
08 float 0 - 60000
12 bytes per entry

linked to by:
hwvx_proto_world_92 [4]

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

hwvx_proto_world_settings

linked to by:
hwvx_proto_world [156]

Offset Type Description
00 u32 0
04 float 5416.828125 - 16517.71484375
08 float 5416.828125 - 16517.71484375
12 float always 100
16 float always 100
20 float 50,33,120,40,75,192,245,25,221
24 float 2500,3000,5000,2000
28 u32 0
32 u8 0
33 u8 always 96
34 u8 always 106
35 u8 always 70
36 u32 0
40 float always 200
44 float 0.10000000149011612,0.07500000298023224
48 float always 0.5
52 float always 1
56 float always 1
60 u32 0
64 u32 0
68 u32 0
72 u32 0
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 15,5
108 float 200,175
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_proto_car_link
hwvx_proto_world_36_48
hwvx_proto_world_36_48_8
hwvx_proto_world_36_48_24
hwvx_proto_world_108_44t6
hwvx_proto_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_proto_font)
204 u32 offset (hwvx_proto_interface)
208 u32 0
212 u32 0
216 u32 0
220 u32 0
224 u32 offset
228 u32 offset
232 u32 amount 0 - 4
236 u32 offset based on amount [232]
240 u32 amount always 3
244 u32 offset based on amount [240]
248 u32 amount always 2
252 u32 offset base on amount [248], same as hwvx_proto_world_settings_244
256 u32 amount 0 - 2
260 u32 offset based on amount[256]
264 u32 0
268 u32 0
272 u32 0
276 u32 0
280 u32 0
284 u32 0
288 u32 0
292 u32 0
296 u32 0
300 u32 0
304 bytes

hwvx_proto_world_settings_192

Offset Type Description
00 u8 255,128,220,110,16,233,119,180,189
01 u8 188,128,182,64,100,40,88,196,150
02 u8 177,140,150,0,100,148,35,226,220
03 u8 103,200,220,128,60,160,255,89,40,59
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_world_settings_196

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

hwvx_proto_world_settings_196_28

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

hwvx_proto_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_proto_world_settings_228

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

hwvx_proto_world_settings_236

Offset Type Description
00 u32 offset
4 bytes per entry

hwvx_proto_world_settings_236_0

Offset Type Description
00 u32 256,65792
04 u32 0,1,10
08 u32 80,1000,50,100
12 u32 0,200
16 u32 0
20 float 0.10000000149011612,0
24 u32 always 1
28 u32 offset
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_proto_world_settings_236_0_28

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

hwvx_proto_world_settings_244

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

hwvx_proto_world_settings_260

Offset Type Description
00 u32 0,3
04 u32 offset
08 u32 0
12 bytes per entry

hwvx_proto_world_settings_260_4

Offset Type Description
00 u8 0
01 u8 0
02 u8 150,0
03 u8 66,0
04 u8 0
05 u8 0
06 u8 160,64
07 u8 65,64
08 u8 0
09 u8 0
10 u8 160,0
11 u8 64,0
12 u8 0
13 u8 0
14 u8 32,0
15 u8 66,0
16 u8 0
17 u8 0
18 u8 160,112
19 u8 65,66
20 u8 0
21 u8 0
22 u8 0,32
23 u8 0,65
24 u8 0
25 u8 0
26 u8 0,96
27 u8 0,64
28 u8 0,205
29 u8 0,204
30 u8 0,76
31 u8 0,62
32 bytes

hwvx_proto_world_small_section

multi linked to by:
hwvx_proto_world_76 [0]
hwvx_proto_world_text_link [12][16]

Offset Type Description
00 u32 17563904,786688,17629440,0
04 u32 512,2,64,1,4,8,16,32,128,256
08 float 0 - 610000
12 u32 offset
16 bytes

hwvx_proto_world_small_section_12

Offset Type Description
00 u32 2071,1815,1792,2048
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_grand_section = hwvx_proto_world_model_related ?

multi linked to by:
hwvx_proto_world_36_48_8 [36]
hwvx_proto_unknown_4 [4]t6

Offset Type Description
00 u32 based on type [4]
0 = patch model
1 = offset (hwvx_proto_model_link)
04 u8 0,1
05 u8 1,0
06 u8 0,1
07 u8 0
08 float 0,10,1500,1,500
12 u32 offset (hwvx_proto_sound_controls)
16 u32 offset (hwvx_proto_car_link)
20 u32 offset (hwvx_proto_model_anims_2)
24 u32 amount 0 - 4
28 u32 offset (hwvx_proto_mysterious) based on amount [24] 0 - 5934368
32 bytes

hwvx_proto_world_idk

multi linked to by:
hwvx_proto_world_12 [64][68][72][76]
maybe same as hwvx_proto_car_related?

Offset Type Description
00 float 0.5,1,2,1.5
04 float always 1
08 float always 1
12 float 0 - 1466.666015625
16 float always 1
20 float 2,1,100
24 float 1,0,50
28 u32 0
32 u32 always 65535
36 u8 always 3
37 u8 0
38 u8 always 1
39 u8 always 100
40 u32 0
44 u32 amount
48 u32 offset based on amount [44]
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_proto_world_idk_48

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

hwvx_proto_world_idk_48_8

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

hwvx_proto_some_world_thing

multi linked to by:
hwvx_proto_world_idk_48 [0]
hwvx_proto_world_idk_48_8 [0]

Offset Type Description
00 u32 1 - 196622
04 u32 256,0
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 float 0 - 20000
28 u32 0
32 float 180,50,60,45,0,105
36 float 0,5,40
40 float 10,60,15,1
44 u32 0,50
48 u32 0
52 u32 10000,0
56 u32 3000,0
60 u32 4000,0
64 u32 300,100,200
68 u32 0,100,50,75
72 u32 1000,0
76 u32 4000,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 strings item pickup,Nearest Waypoints,Shoot PLAYER anywhere,hw ram player
120 u32 0
124 u32 0
128 bytes

hwvx_proto_some_world_thing_88

Offset Type Description
00 u32 131074,65536
04 u32 0,65536
08 u32 50,0
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_geo_list

linked to by:
hwvx_proto_geo_basic [4]

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

hwvx_proto_geo_list_4

Offset Type Description
00 u32 amount 1 - 4
04 u32 offset
08 u32 offset based on amount [0]
12 u8 0 - 255
13 u8 0 - 255
14 u8 0 - 255
15 u8 always 255
16 u32 offset offets appear to be malformed, these still appear in the patch list
20 bytes per entry

hwvx_proto_geo_list_4_4

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

hwvx_proto_geo_list_4_8

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

hwvx_proto_geo_list_4_16

Offset Type Description
00 float ?
? 4-4452 bytes

hwvx_proto_collision_settings

linked to by:
hwvx_proto_collision_link [0]

Offset Type Description
00 u32 0,257
04 float always 5
08 float 75,100
12 float 10,5
16 float 75,100
20 float 1,0.75,0.699999988079071
24 float 0.30000001192092896,0.05000000074505806
28 float 70,125
32 float always 1
36 float always 1
40 u32 0
44 u32 0
48 u32 offset (hwvx_proto_unknown)
52 u32 offset (hwvx_proto_unknown_thing)
56 u32 0
60 u32 offset (hwvx_proto_sound_section)
64 u32 offset (hwvx_proto_unknown)
68 u32 amount 1 - 3
72 u32 offset based on amount [68]
76 u32 amount 1 - 3
80 u32 offset based on amount [76], same as hwvx_proto_collision_settings_72
84 u32 0
88 u32 0
92 u32 0
96 bytes

hwvx_proto_collision_settings_72

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

hwvx_proto_car

linked to by:
hwvx_proto_basic_4 [0]

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u32 always 355
20 u32 always 600
24 u32 always 1
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 index always 2
72 u32 offset (hwvx_proto_model_anims_1)
76 u32 offset (hwvx_proto_model_anims_2)
80 u32 patch texture index always 3
84 u32 patch model
88 u32 0
92 u32 offset (hwvx_proto_sound_section)
96 u32 offset (hwvx_proto_sound_section)
100 u32 0
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_proto_car_related)
148 u32 offset (hwvx_proto_car_related)
152 u32 offset (hwvx_proto_car_related)
156 u32 offset (hwvx_proto_car_related)
160 u32 offset
164 u32 offset
168 u32 0
172 u32 offset
176 u32 0
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 based on amount [224]
232 u32 amount always 5
236 u32 offset based on amount [232], same as hwvx_proto_car_228
240 u32 0,1
244 u32 offset based on amount [240] same as hwvx_proto_car_228
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 based on amount [280], same as hwvx_proto_car_220
288 bytes

hwvx_proto_car_108

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

hwvx_proto_car_120

Offset Type Description
00 float -0.20000000298023224 - -0.05000000074505806
04 float 0,0.10000000149011612
08 float 0,0.10000000149011612,0.02500000037252903
12 u32 0
16 u32 offset
20 u32 0
24 u32 0
28 u32 0
32 u32 0
36 u32 328965,1644825,3289650
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_proto_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_proto_car_128

Offset Type Description
00 float 0,0.25
04 float 0.5,1,0,1.5,0.75,2.5,0.25,-0.5
08 float 0,-0.5,-1,-1.5,-2,0.5,-1.2999999523162842,-3
12 float always 1
16 u32 always 200
20 float 6,7.5,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.699999988079071,0.75,1,0.6000000238418579
56 float 100,50,60,25
60 float 100,50
64 float always 1
68 float 10000,220,300,290
72 u32 0
76 u32 0
80 u32 0
84 u32 0
88 u32 0
92 float 0.019999999552965164,0.009999999776482582,0.03999999910593033
96 u32 offset (hwvx_proto_model_anims_2)
100 float always 1
104 float always 1
108 float 0,1
112 u32 0
116 u32 0
120 u32 0
124 u32 0
128 u32 amount? always 6
132 u32 offset based on amount [128]
136 u32 amount? 3,0
140 u32 offset base on amount [136], same as hwvx_proto_car_128_132
144 u32 0
148 u32 0
152 u32 0
156 u32 0
160 bytes

hwvx_proto_car_128_132

Offset Type Description
00 u32 type? 1,4,3,2
04 u32 based on type [0]
1 = offset
2 = offset
3 = offset
4 = offset
08 u32 0
12 bytes per entry

hwvx_proto_car_128_132_4t1

Offset Type Description
00 float 0.30000001192092896,0.4000000059604645
04 float always 230
08 float always 50
12 float always 3
16 float always 6
20 u32 0
24 u32 0
28 u32 0
32 float 75,85,95,90,115
36 float -16.399999618530273 - 2
40 float 18.799999237060547 - 43.599998474121094
44 float 2.700000047683716 - 4.900000095367432
48 bytes

hwvx_proto_car_128_132_4t2

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

hwvx_proto_car_128_132_4t3

Offset Type Description
00 u32 0
04 float always 3
08 u32 0
12 u32 0
16 float always 105
20 float always 21
24 float always 7
28 float always 0.5
32 bytes

hwvx_proto_car_128_132_4t4

Offset Type Description
00 u32 0
04 float 3,2,2.5
08 float 5,4,8,15
12 u32 0
16 u32 0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_car_132

Offset Type Description
00 u32 0
04 u32 0
08 u32 0
12 u32 0
16 u32 offset (hwvx_proto_interface)
20 u32 0
24 u32 offset (hwvx_proto_interface)
28 u32 offset (hwvx_proto_interface)
32 u32 0
36 u32 0
40 u32 0
44 u32 offset
48 u32 0
52 u32 422077484 - 1680023130
56 u32 0
60 u32 0
64 bytes

hwvx_proto_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_proto_car_136

Offset Type Description
00 u32 0
04 float always 2
08 float 1.5,0
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 1.5,0
44 float always 2000
48 u32 always 200
52 float 37,25
56 float always 1000
60 float 300,0
64 u32 0
68 u32 0
72 float always 1
76 u32 0
80 bytes

hwvx_proto_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 75,2.5
28 float 60,2
32 float always 1
36 float always 5
40 u32 always 100
44 float always 10
48 float always 650
52 u32 amount always 9
56 u32 offset based on amount [52]
60 u32 amount 5 - 6
64 u32 offsetbased on amount [60]
68 u32 0
72 u32 0
76 u32 always 1
80 u32 offset same as (hwvx_proto_car_140_56) based on amount [76]
84 float 35,1.5
88 u32 0
92 u32 0
96 u32 0
100 u32 0
104 u32 0
108 u32 0
112 bytes

hwvx_proto_car_140_56

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

hwvx_proto_car_140_64

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

hwvx_proto_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_proto_car_164_8

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

hwvx_proto_car_172

Offset Type Description
00 u8 0
01 u8 always 16
02 u8 always 61
03 u8 always 70
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_proto_car_212

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

hwvx_proto_car_220

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

hwvx_proto_car_228

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

hwvx_proto_car_252

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

hwvx_proto_car_252_4

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

hwvx_proto_car_252_4_4

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

hwvx_proto_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_proto_car_260_56

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

hwvx_proto_car_268

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

multi linked to by:
hwvx_proto_car [144][148][152][156]

Offset Type Description
00 float always 1
04 float always 1
08 float always 1
12 float 1466.666015625,146.66659545898438
16 float always 1
20 float always 1
24 u32 0
28 u32 0
32 u8 always 255
33 u8 always 255
34 u8 0
35 u8 0
36 u8 always 3
37 u8 0
38 u8 always 1
39 u8 always 100
40 u32 0
44 u32 amount 1 - 2
48 u32 offset based on amount [44]
52 u32 0
56 u32 0
60 u32 0
64 bytes

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

Offset Type Description
00 u8 10,3,1,14
01 u8 0
02 u8 1,0
03 u8 0
04 u32 256,0
08 u32 0
12 u32 0
16 u32 0
20 float 0,50,10,200
24 float 2000,0,1000,20000,500,1500
28 u32 0
32 float 180,0
36 float 0,40,100
40 float 10,60,150
44 u32 0
48 u32 0
52 u32 10000,0,1000,2000
56 u32 0
60 u32 0
64 u32 always 300
68 u32 0,100
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 u32 0
116 u32 offset string
path follow
AR_path_follow
Nearest Waypoints
Attack PLAYER anywhere
Shoot VEHICLE anywhere
120 u32 0
124 u32 0
128 bytes

linked to by:
hwvx_proto_car [160]
hwvx_proto_grand_section [16]
hwvx_proto_world_model_related [16]

Offset Type Description
00 float 0.5,1
04 float 0.5,1
08 float 0.5,1
12 u32 0
16 u32 0,256
20 u32 1000,1200,1100,1300,1600,1500,1700,1450,1350
24 u32 0,5,10,1
28 u8 255,119
29 u8 255,1
30 u8 255,0
31 u8 255,0
32 float 20,25,15,40
36 float -130,-135,-140,-145,-150
40 float 4.310662746429443 - 610.9417114257812
44 float 0,600
48 u32 offset (hwvx_proto_car_sub_link)
52 u32 amount 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_proto_unknown)
4 bytes per entry

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

Offset Type Description
00 float -5.125 - -3
04 float 0,-0.5,-1.399999976158142,-1,0.5
08 float -13.25 - -4.400000095367432
12 u32 0
16 float 3 - 5.125
20 float 2.25 - 5.25
24 float 3.5 - 13
28 u32 0
32 float 9.013877868652344 - 18.338825225830078
36 u32 0
40 u32 0
44 u32 0
48 bytes

multi linked to by:
hwvx_proto_car_link [48]
hwvx_proto_world_20_12_16 [48]

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

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

hwvx_proto_mysterious

linked to by:
hwvx_proto_car_228 [8]
hwvx_proto_model_link [48]
hwvx_proto_item_48_0 [48]
hwvx_proto_item [60]
hwvx_proto_asdf [160]

Offset Type Description
00 float -4.75 - 4.75
04 float -2 - 5
08 float -15 - 13
12 u32 0
16 u8 type? 4,9,1,6,5,2,7,3,99
17 u8 1,0
18 u8 0,7,5,8,6
19 u8 0
20 float -1,1,0,50,40,30,20,10
24 u32 based on type [16]
1 = offset (hwvx_proto_unknown)
2 = offset (hwvx_proto_strange)
3 = offset (hwvx_proto_sound_controls)
5 = offset
6 = offset
7 = offset
9 = offset
28 u32 0
32 bytes per entry

hwvx_proto_mysterious_24t5

Offset Type Description
00 u32 0
04 u32 0
08 u32 patch model
12 u32 0
16 u32 0
20 u32 amount 1 - 5
24 u32 offset based on amount [20]
28 u32 amount 0 - 11
32 u32 offset based on amount [28]
36 u32 0
40 u32 0
44 u32 offset
48 bytes

hwvx_proto_mysterious_24t5_24

Offset Type Description
00 float 0 - 40
04 float 0.4000000059604645 - 40
08 float 0 - 12
12 u32 0
16 u32 0,1,256,512
20 float 0,250,100,75,500,1500,200
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_mysterious_24t5_32

Offset Type Description
00 u8 0,255,79,97,80,192,128,204
01 u8 0,255,80,52,8,128
02 u8 0,255,48,31,32,87,233,128,63
03 u8 255,0
04 u32 0,1
08 float 0,100,200,150,75,175,25,225
12 bytes per entry

hwvx_proto_mysterious_24t5_44

Offset Type Description
00 float 1,0
04 float 0,0.10000000149011612,1
08 float 0,1,0.10000000149011612
12 u32 0
16 float 1440,0,250,-360,-720
20 float 0,500
24 u32 0
28 u32 0
32 bytes

hwvx_proto_mysterious_24t6

Offset Type Description
00 u8 0,1
01 u8 2,5
02 u8 0
03 u8 0,1
04 u32 always 1
08 u32 patch texture
12 u32 amount 1 - 2
16 u32 offset based on amount [12]
20 u32 amount 1 - 3
24 u32 offsetbased on amount [20]
28 u32 1,49,4
32 u32 offset based on amount [28]
36 u32 offset
40 u32 0
44 u32 0
48 bytes

hwvx_proto_mysterious_24t6_16

Offset Type Description
00 float -360 - 2160
04 float 0,360
08 float 0,360
12 u32 0
16 u32 0,1
20 float 0,3000,1000,2000,333,500,250,1600,1700,2500
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_mysterious_24t6_24

Offset Type Description
00 float 2.5,0,35,32,2
04 float 1,6,0,30,60
08 float 1,6,0,30,60
12 u32 0
16 u32 0,1
20 float 0,500
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_mysterious_24t6_32

Offset Type Description
00 u8 0,255,119,97
01 u8 0,255,120,51
02 u8 0,160,72,31
03 u8 5,10,255
04 u32 0,1
08 float 0,333
12 bytes per entry

hwvx_proto_mysterious_24t6_36

Offset Type Description
00 float always 100
04 float 400,300
08 u32 0
12 u32 0
16 bytes

hwvx_proto_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 u32 2,5
36 u32 always 100
40 u32 0
44 u32 0
48 float 0.25,3
52 float always 0.5
56 u32 0
60 float always 1
64 float always 1
68 u32 amount 2 - 3
72 u32 offsetbased on amount [68]
76 u32 always 1
80 u32 offset
84 u32 0,1
88 u32 offset
92 u32 0
96 bytes

hwvx_proto_mysterious_24t7_72

Offset Type Description
00 u8 0,31,255,192,128
01 u8 0,61,255,75
02 u8 0,97
03 u8 0,255
04 u32 0
08 float 0,500,250
12 bytes per entry

hwvx_proto_mysterious_24t7_80

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

hwvx_proto_mysterious_24t7_88

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

hwvx_proto_mysterious_24t9

Offset Type Description
00 u8 always 2
01 u8 always 2
02 u8 0,1
03 u8 0,1
04 float 32,16,25
08 float 5,10
12 u32 0
16 u32 0
20 u32 patch texture
24 u32 patch texture
28 u32 offset
32 u32 offset
36 u8 1,0,10,11
37 u8 1,2,12
38 u8 1,12,0
39 u8 1,15
40 u32 33,150,100
44 u32 33,100
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_proto_mysterious_24t9_28

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

hwvx_proto_mysterious_24t9_32

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

hwvx_proto_strange

multi linked to by:
hwvx_proto_mysterious [24t2]
hwvx_proto_world_36_48_16 [36]

Offset Type Description
00 u32 always 256
04 u32 0
08 u32 125,250,150,100,67
12 u32 0,1500
16 u32 0
20 float 0.009999999776482582,0.014999999664723873
24 u32 amount 1 - 3
28 u32 offset based on amount [24]
32 u32 offset (hwvx_proto_sound_controls)
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_proto_strange_28

Offset Type Description
00 u32 offset (hwvx_proto_unknown) unknown? 0 - 1309280
4 bytes per entry

linked to by:
hwvx_proto_car_120 [16]
hwvx_proto_world_model_related [0]t1

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_proto_model_anims_1)
20 u32 offset (hwvx_proto_model_anims_2)
24 float 30,0.009999999776482582,40
28 u8 1,0
29 u8 always 1
30 u8 0
31 u8 2,0,255
32 u32 offset
36 u32 offset
40 u32 0
44 u32 amount
48 u32 offset (hwvx_proto_mysterious) based on amount [44]
52 u32 offset
56 u32 offset
60 u32 0
64 bytes

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

Offset Type Description
00 u32 patch model
04 u32 5,6,2,4,7,0,1,3,8
8 bytes per entry

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

Offset Type Description
00 float 2,1,30,10
04 float 3,60,120,39,50,30,43,20,150
08 u32 0
12 u32 0
16 bytes

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

Offset Type Description
00 u32 amount 8 - 16
04 u32 offset based on amount [0]
08 u32 offset (hwvx_proto_model_anims_2)
12 u32 0
16 bytes

Offset Type Description
00 u8 2,1,0
01 u8 always 1
02 u8 1,0
03 u8 0
04 u32 7,0,4,5
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 - 12.760353088378906
12 u32 0
16 bytes

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

hwvx_proto_text

multi linked to by:
hwvx_proto_interface_16_20t1 [0]
hwvx_proto_interface_16_20t1_8_4 [0]
hwvx_proto_interface_16_20t2_4 [16]
hwvx_proto_item [32]
hwvx_proto_item_48 [16]
hwvx_proto_car_140_64 [0]
hwvx_proto_world_text_link [20][24]
hwvx_proto_triggers_and_actions_20_4t20 [8]

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

hwvx_proto_font

multi linked to by:
hwvx_proto_interface_16_20t1 [4]
hwvx_proto_interface_text_related [8]
hwvx_proto_interface_16_20t10 [16]
hwvx_proto_world_settings [200]

Offset Type Description
00 u32 patch texture
04 u32 offset (hwvx_proto_sound_section) sometimes
08 u32 18751488,19404800,2103296,1576960,17961472
12 u32 0
16 u32 0
20 u32 0,50
24 u32 0,1
28 u32 offset
32 u32 amount 0 - 29
36 u32 offset based on amount [32]
40 float 32,15,26,24,16,18
44 u32 0
48 bytes

hwvx_proto_font_28

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

hwvx_proto_font_36

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

hwvx_proto_interface

multi linked to by:
hwvx_proto_basic_4 [0]
hwvx_proto_interface_16_60 [0]
hwvx_proto_interface_16_68_20_8 [0]
hwvx_proto_interface_24_8 [0]t1
hwvx_proto_car_132 [16][24][28]
hwvx_proto_world_settings [204]
hwvx_proto_triggers_and_actions_4t1 [0]
hwvx_proto_triggers_and_actions_20_4t4 [0]
hwvx_proto_triggers_and_actions_20_4t31 [4]

Offset Type Description
00 u32 0,8
04 u32 1000,6000,0
08 u32 0,3600
12 u32 amount
16 u32 offset based on amount [12]
20 u32 amount
24 u32 offset based on amount [20]
28 u32 offset
32 u32 offset (hwvx_proto_sound_controls)
36 u32 offset (hwvx_proto_sound_controls)
40 u32 offset (hwvx_proto_sound_controls)
44 u32 offset (hwvx_proto_sound_controls)
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_proto_interface_16

Offset Type Description
00 u8 1,34,33,9,3
01 u8 type? 0,1,2,4,6,10,11,12
02 u8 0
03 u8 0
04 u32 0
04 u32 0
08 u8 0,1
09 u8 0,1,2
10 u8 0,2,1
11 u8 0
12 u8 0,255,254,253
13 u8 0,255
14 u8 0
15 u8 0
16 u32 0,50,51
20 u32 based on type [1]
0 = offset
1,12 = offset
2 = offset
4 = offset
6 = 0
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 1,-1,0,2.5,-2.5
52 float -1.4299999475479126 - 1
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 - 3
104 u32 offset based on amount [100]
108 bytes per entry

hwvx_proto_interface_16_20t0

Offset Type Description
00 u8 0,3,1
01 u8 0,5,2,3
02 u8 0
03 u8 0
04 u32 based on type [0]
0 = patch texture
1 = patch model
08 u32 0
12 u32 0
16 u32 based on type [0]
3 = offset
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_interface_16_20t0_16

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

hwvx_proto_interface_16_20t0_16_4

Offset Type Description
00 u32 patch texture
4 bytes per entry

hwvx_proto_interface_16_20t1

Offset Type Description
00 u32 offset (hwvx_proto_text) sometimes
04 u32 offset (hwvx_proto_font)
08 u32 offset
12 u32 16908288,17104896,327680
16 u32 256,0,65792,65793
20 u32 3277400,5767768,8388736,13107840
24 float 0,2
28 u32 0
32 bytes

hwvx_proto_interface_16_20t1_8

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

hwvx_proto_interface_16_20t1_8_4

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

hwvx_proto_interface_16_20t2

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

hwvx_proto_interface_16_20t2_4

Offset Type Description
00 u8 always 1
01 u8 2,0,1
02 u8 0,1
03 u8 0,1,4,3,2
04 u32 1 - 11957
08 u32 0,1,2,3,4,5,6,7
12 u32 offset string audio file, 0 - 1942176
16 u32 offset (hwvx_proto_text)
20 u32 offset (hwvx_proto_interface_text_related)
24 u32 amount
28 u32 offset based on amount [24]
32 bytes per entry

hwvx_proto_interface_16_20t2_4_28

Offset Type Description
00 u32 always 3, maybe amount
04 u32 offset
8 bytes per entry

hwvx_proto_interface_16_20t2_4_28_4

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

hwvx_proto_interface_16_20t4

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

hwvx_proto_interface_16_20t4_4

Offset Type Description
00 float 0,-100,-50,50,-20,20,30,80
04 float 0,-50,-100,-140,60,80,-30,50,25,75
08 u32 0
12 u32 0
16 u8 always 255
17 u8 always 255
18 u8 always 255
19 u8 always 255
20 u32 0
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_interface_16_20t10

Offset Type Description
00 u32 500,477,600
04 u32 383,110,440
08 u32 6,7,9,1
12 u32 8,2,1
16 u32 offset (hwvx_proto_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_proto_interface_16_20t11

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

hwvx_proto_interface_16_60

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

hwvx_proto_interface_16_68

Offset Type Description
00 u8 0 - 35
01 u8 0 - 35
02 u8 0 - 30
03 u8 0 - 35
04 u32 0 - 34
08 u32 amount
12 u32 offset based on amount [8]
16 u32 amount
20 u32 offset based on amount [16]
24 u32 0
28 u32 0
32 bytes

hwvx_proto_interface_16_68_12

Offset Type Description
00 u32 0 - 15
04 u32 1,0,4294967295,5,2
08 u32 1,0,4294967291,5,4294967294
12 u8 0,1,252,253,7,255,4
13 u8 0,255
14 u8 0,255
15 u8 0,255
16 u32 0,4294967295,3,1,4294967289,4294967292
20 bytes per entry

hwvx_proto_interface_16_68_20

Offset Type Description
00 u32 4,21,30
04 u32 0,100,1
08 u32 offset
12 bytes per entry

hwvx_proto_interface_16_68_20_8

Offset Type Description
00 u32 based on type [5]
1 = offset (hwvx_proto_interface)
11 = offset
04 u8 type? 2,0,1
05 u8 1 - 23
06 u8 0,1,2
07 u8 0
08 u32 offset
12 u32 0
16 u32 0
20 u32 0
24 u32 offset
28 u32 0,1
32 u32 offset
36 u32 0,4294967286,10
40 u32 0
44 u32 0
48 u32 0
52 u32 0
56 u32 0
60 u32 0
64 bytes

hwvx_proto_interface_16_68_20_8_8

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

hwvx_proto_interface_16_68_20_8_8_0

Offset Type Description
00 u32 0,65536,131072,458752,327680
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_interface_16_68_20_8_8_4

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

hwvx_proto_interface_16_68_20_8_24

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

hwvx_proto_interface_16_68_20_8_32

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

hwvx_proto_interface_16_72

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

hwvx_proto_interface_16_72_8

Offset Type Description
00 u32 1,2
04 u32 1,0,2,3,4,5
08 u32 offset
12 bytes per entry

hwvx_proto_interface_16_72_8_8

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

hwvx_proto_interface_16_72_8_8_4

Offset Type Description
00 u32 1 - 3670016
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_interface_16_96

Offset Type Description
00 u32 amount 1 - 4
04 u32 offset based on amount [0]
08 u32 amount 1 - 2
12 u32 offset based on amount [8] / same as hwvx_proto_interface_16_96_4
16 u32 amount 1 - 3
20 u32 offset based on amount [16] / same as hwvx_proto_interface_16_96_4
24 u32 amount 1 - 4
28 u32 offset based on amount [24]
32 u32 amount 1 - 4
36 u32 offset based on amount [32]
40 u32 0
44 u32 0
48 bytes

hwvx_proto_interface_16_96_4

Offset Type Description
00 float -2500 - 1000
04 float -13 - 1000
08 float 0,1,-1,30,180
12 u32 0
16 u32 0,1,769,768,256,512,257
20 float 0 - 15000
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_interface_16_96_28

Offset Type Description
00 u8 0 - 255
01 u8 0 - 255
02 u8 0 - 255
03 u8 255,0,166,175,128,64,191,32,48
04 u32 0,512,1,513,256,769,768
08 float 0 - 16382
12 bytes per entry

hwvx_proto_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 - 5
28 float 0 - 12
32 u32 0,769,768,1
36 float 0,50,500,1700,1000,100
40 bytes per entry

hwvx_proto_interface_16_104

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

hwvx_proto_interface_16_104_8

Offset Type Description
00 u32 amount 1 - 3
04 u32 offset based on amount [0]
08 u32 amount
12 u32 offset based on amount [8]
16 u32 amount
20 u32 offset based on amount [16]
24 u32 amount
28 u32 offset based on amount [24]
32 u32 amount
36 u32 offset based on amount [32]
40 u32 amount
44 u32 offset based on amount [40]
48 u32 0
52 u32 amount? 0,1
56 u32 offset based on amount? [52]
60 bytes

hwvx_proto_interface_16_104_8_4

Offset Type Description
00 u32 1,0
04 float 0 - 7500
8 bytes per entry

hwvx_proto_interface_16_104_8_12

Offset Type Description
00 float 149,48,485,592,-30,320,670
04 float -19,188,-144,64,189,250,227,240,227.5
08 u32 0
12 u32 0
16 u32 0,256,512
20 float 0,1000,300,10
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_interface_16_104_8_20

Offset Type Description
00 u8 0,255,153,27
01 u8 0,255,153,129,224,192,66,128
02 u8 0,255,188,207,128,87
03 u8 255,0,128,64,100
04 u32 0,256,257,512,1
08 float 0 - 3000
12 bytes per entry

hwvx_proto_interface_16_104_8_28

Offset Type Description
00 float 0 - 4096
04 float 0 - 2784
08 float 1,32
12 u32 0
16 u32 0,1,256
20 float 0,300,200,3000,400,500
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_interface_16_104_8_36

Offset Type Description
00 float 0.00800000037997961,0.024000000208616257
04 float 0.00800000037997961,0,1,-1,0.75
08 u32 0
12 u32 0
16 u32 0
20 u32 0
24 float 0.9919999837875366,0.9760000109672546
28 float 0.9919999837875366,1,5,6,4,3
32 u32 0,769
36 float 1700,100,0
40 bytes per entry

hwvx_proto_interface_16_104_8_44

Offset Type Description
00 float -90,0
04 u32 0
08 u32 0
12 u32 0
16 u32 0,512
20 float 0,300
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_interface_16_104_8_56

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

hwvx_proto_interface_16_104_8_56_4

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

hwvx_proto_interface_16_68_20_8_0t11

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

hwvx_proto_interface_16_68_20_8_0t11_4

Offset Type Description
00 u32 amount always 2
04 u32 offset based on amount [0]
8 bytes per entry

hwvx_proto_interface_16_68_20_8_0t11_4_4

Offset Type Description
00 u32 offset
4 bytes per entry

hwvx_proto_interface_16_68_20_8_0t11_4_4_0

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

hwvx_proto_interface_16_68_20_8_0t11_4_4_0_4

Offset Type Description
00 u32 65536,196609,655360
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_interface_24

hwvx_proto_interface_24 = hwvx_proto_interface_16_68_20 ?
Offset Type Description
00 u32 4,21,3,30,31
04 u32 0,600,90000,6000
08 u32 offset
12 bytes per entry

hwvx_proto_interface_24_8

Offset Type Description
00 u32 based on type [5]
1 = offset (hwvx_proto_interface)
11 = offset
04 u8 0,1,3
05 u8 type? 3,2,17,1,11,15,20,24
06 u8 0,100
07 u8 0
08 u32 based on type [5]
15 = offset
17 = offset
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 0
56 u32 0
60 u32 0
64 bytes

hwvx_proto_interface_24_8_0t11

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

hwvx_proto_interface_24_8_0t11_4

Offset Type Description
00 u32 amount always 2
04 u32 offset based on amount [0]
8 bytes per entry

hwvx_proto_interface_24_8_0t11_4_4

Offset Type Description
00 u32 offset
4 bytes per entry

hwvx_proto_interface_24_8_0t11_4_4_0

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

hwvx_proto_interface_24_8_0t11_4_4_0_4

Offset Type Description
00 u32 65536,1,65537,0,196609,131072,196608
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_interface_24_8_8t15

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

hwvx_proto_interface_24_8_8t15_0

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

hwvx_proto_interface_24_8_8t15_4

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

hwvx_proto_interface_24_8_8t17

Offset Type Description
00 u8 always 1
01 u8 0
02 u8 15,0,5
03 u8 0
04 u32 0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_interface_28

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

hwvx_proto_interface_28_4

Offset Type Description
00 u8 0,1,3
01 u8 0,1
02 u16 0
04 u32 0,1
08 u32 0 - 512000
12 u32 0 - 35
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_proto_interface_28_4_16

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

hwvx_proto_interface_28_4_16_4

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

hwvx_proto_interface_48

Offset Type Description
00 u32 offset string HW_music, only if [4] = 1?
04 u32 0,1
08 u32 0
12 u32 0
16 bytes

multi linked to by:
hwvx_proto_interface_16_20t2_4 [20]

Offset Type Description
00 u32 offset (hwvx_proto_text)
04 u32 0
08 u32 offset (hwvx_proto_font)
12 u32 offset
16 u32 amount 1 - 7
20 u32 offset based on amount [16]
24 u32 amount 1 - 7
28 u32 offset based on amount [24] / same section as hwvx_proto_interface_text_related_20
32 u32 0
36 u32 0
40 u32 0
44 u32 amount 1 - 5
48 u32 offset based on amount [44] / same section as hwvx_proto_interface_text_related_20
52 u32 offset
56 u32 0
60 u32 0
64 bytes

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

Offset Type Description
00 u32 amount 1 - 6
04 u32 offset based on amount [0]
08 u32 1000,200,100,500,300
12 u32 0
16 bytes per entry

Offset Type Description
00 u32 patch texture
4 bytes per entry

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

hwvx_proto_unknown

multi linked to by:
hwvx_proto_item [36][44]
hwvx_proto_car_140_56 [0]
hwvx_proto_car_sub_link [48][64]
hwvx_proto_car_sub_link_72 [0]
hwvx_proto_car_link_56 [0]
hwvx_proto_car_link_64 [0]
hwvx_proto_strange_28 [0]
hwvx_proto_unknown_4 [4]
hwvx_proto_unknown_thing_32 [0]
hwvx_proto_unknown_idk_sec_28 [24]
hwvx_proto_asdf [112][116][120]
hwvx_proto_world_settings_196_28 [0]
hwvx_proto_world_settings_236_0_28 [0]
hwvx_proto_world_settings_244 [0]
hwvx_proto_collision_settings [48][60][64]
hwvx_proto_collision_settings_72 [0]
hwvx_proto_unknown_4_4t4_28 [0]
hwvx_proto_unknown_link_section_28 [0]

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

hwvx_proto_unknown_4

Offset Type Description
00 u32 type 1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 15, 26, 29,30
04 u32 based on type [0]
1 = offset (hwvx_proto_unknown_thing)
2 = offset (hwvx_proto_asdf)
3 = offset (hwvx_proto_unknown)
4 = offset
5 = offset (hwvx_proto_unknown_idk_sec)
6 = offset (hwvx_proto_world_model_related)
7 = offset (hwvx_proto_grand_section)
8 = offset
10 = offset (hwvx_proto_sound_section)
11 = 5,100,3,200,95
12,13,14,30 = 0
15 = 600,50,200,75,100
26 = offset (hwvx_proto_sound_controls)
29 = offset (hwvx_proto_unknown_small_model_link)
08 u32 based on type [0]
1,2,3,4,7,10,29 = offset
5,6,8,26 = offset
12 bytes per entry

hwvx_proto_unknown_4_8t1

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

hwvx_proto_unknown_4_8t1_40t1

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

hwvx_proto_unknown_4_8t1_40t2

Offset Type Description
00 float 0,20
04 float 0,5
08 u8 0
09 u8 type? 0,2,1
10 u8 128,0
11 u8 64,192,0
12 u32 based on type [9]
0 = offset
1 = offset
2 = offset
16 bytes

hwvx_proto_unknown_4_8t1_40t2_12t0

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

hwvx_proto_unknown_4_8t1_40t2_12t1

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

hwvx_proto_unknown_4_8t1_40t2_12t2

Offset Type Description
00 float 50,3
04 float 10,30
08 float 0,15
12 u32 0
16 u32 2,257
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_unknown_4_8t1_44

Offset Type Description
00 float 0,-5
04 float 0,10
08 float 0,-95,85,180,-5
12 float 180,0,10
16 u32 0,2,3,1
20 float 0,30
24 u32 0
28 u32 0
32 bytes

hwvx_proto_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 u32 256,0
28 u32 offset
32 u32 0
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_proto_unknown_4_8t5_28

Offset Type Description
00 float 0,10,-10,1,-1
04 u32 0
08 float -1,1,0
12 u32 0
16 float 8,-8,0
20 u32 0
24 u32 0
28 u32 0
32 bytes

hwvx_proto_unknown_4_4t4

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

hwvx_proto_unknown_4_4t4_28

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

hwvx_proto_unknown_4_4t8

Offset Type Description
00 u8 0
01 u8 always 1
02 u8 0
03 u8 3,2
04 u32 5000,3000
08 u32 0
12 u32 amount
16 u32 offset based on amount [12]
20 u32 amount 4 - 5
24 u32 offset base on amount [20]
28 u32 0
32 bytes

hwvx_proto_unknown_4_4t8_16

Offset Type Description
00 float 10,80,100
04 u32 0
08 float 0,750
12 bytes per entry

hwvx_proto_unknown_4_4t8_24

Offset Type Description
00 u8 0,135,143,48
01 u8 0,135,176,63
02 u8 0,135,188,80
03 u8 always 255
04 u32 0
08 float 0,250,3250,1500,300,900
12 bytes per entry

multi linked to by:
hwvx_proto_unknown_4 [4]t29

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

Offset Type Description
00 float 3.368000030517578,-3.368000030517578
04 float always -0.8539999723434448
08 float -6.526000022888184,7.247000217437744
12 u32 0
16 float 100,1200,0
20 float -180 - 180
24 float 0 - 600
28 u32 patch model
32 u32 offset (hwvx_proto_unknown_link_section)
36 u32 0
40 u32 0
44 u32 0
48 bytes per entry

hwvx_proto_unknown_idk_sec

multi linked to by:
hwvx_proto_unknown_4 [4t5]

Offset Type Description
00 u32 16777217,257,1
04 u32 512,0
08 u32 always 1
12 u32 0,1000
16 u32 0,250
20 u32 50,0
24 u32 0,500
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_proto_unknown_idk_sec_28

Offset Type Description
00 u8 7,3
01 u8 0
02 u8 always 1
03 u8 0,6,5
04 u32 0
08 u32 0
12 u32 0,100,5
16 float -25,75,250,0
20 float 0,10000
24 u32 offset (hwvx_proto_unknown)
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_proto_unknown_idk_sec_32

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

hwvx_proto_unknown_idk_sec_32_8

Offset Type Description
00 u8 192,79,0
01 u8 157,33,0
02 u8 0,26
03 u8 always 255
04 u32 0
08 float 0,100,200
12 bytes per entry

hwvx_proto_unknown_idk_sec_36

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

hwvx_proto_unknown_idk_sec_36_4

Offset Type Description
00 float 0.009999999776482582,0.05000000074505806
04 u32 0
08 u32 0
12 u32 0
16 u32 0,256
20 float 500,250
24 u32 0
28 u32 0
32 bytes

hwvx_proto_unknown_idk_sec_40

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

hwvx_proto_unknown_idk_sec_40_4

Offset Type Description
00 float 0.25,0.10000000149011612
04 float 0,1000,500
08 u32 0
12 u32 0
16 u32 0
16 bytes per entry

hwvx_proto_unknown_idk_sec_48

Offset Type Description
00 float 20,5,10
04 float 30,8,20
08 u32 0
12 u32 0
16 bytes

multi linked to by:
hwvx_proto_unknown_small_model_link_12 [32]

Offset Type Description
00 u32 always 256
04 u32 0
08 u32 100,50
12 u32 200,0
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_proto_unknown)
4 bytes per entry

hwvx_proto_grand_section

multi linked to by:
hwvx_proto_unknown_4 [4t7]

Offset Type Description
00 u32 patch model
04 u32 always 256
08 float always 500
12 u32 0
16 u32 offset (hwvx_proto_car_link)
20 u32 0
24 u32 amount always 1
28 u32 offset (hwvx_proto_mysterious) based on amount [24]
32 bytes

hwvx_proto_unknown_thing

multi linked to by:
hwvx_proto_unknown_4 [4]t1
hwvx_proto_collision_settings [52]

Offset Type Description
00 u32 0 1,2
04 u32 based on type [0]
0 = offset
1 = offset
2 = offset
08 u32 150,250,500
12 u32 0,1000,3000,2000
16 float 300,500
20 u32 4,2,3,1,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_proto_unknown_thing_4t0

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

hwvx_proto_unknown_thing_4t0_36

Offset Type Description
00 u32 patch model
4 bytes per entry

hwvx_proto_unknown_thing_4t0_44

Offset Type Description
00 float 0.5,3,1,2,12,10
04 float 0.5,3,1,2,12,10
08 float 0.5,1,5
12 u32 0
16 u32 0,256,512
20 float 0,50,200,1000,4000
24 u32 0
28 u32 0
32 bytes per entry

hwvx_proto_unknown_thing_4t1

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

hwvx_proto_unknown_thing_4t1_36

Offset Type Description
00 u32 patch texture
4 bytes per entry

hwvx_proto_unknown_thing_4t1_44

Offset Type Description
00 float 20,30,5,75,50,0,1,3,2,10
04 u32 0,256
08 float 0,50,100,75,175,400,200,3000,2000
12 bytes per entry

hwvx_proto_unknown_thing_4t2

Offset Type Description
00 u32 5,2
04 float 1,0.5
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_proto_unknown_thing_4t2_16

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

hwvx_proto_unknown_thing_4t2_24

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

hwvx_proto_unknown_thing_24

Offset Type Description
00 u8 0,255,31,87,47
01 u8 0,255,192,61,110
02 u8 0,255,97,145
03 u8 32,128,0,255
04 u32 0,1
08 float 0,25,50,75,100,150,300
12 bytes per entry

hwvx_proto_unknown_thing_32

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

hwvx_proto_asdf

multi linked to by:
hwvx_proto_unknown_4 [4t2]

Offset Type Description
00 u8 always 1
01 u8 0
02 u8 0,1
03 u8 6,0,1
04 u8 1,0,2
05 u8 1,0
06 u8 always 10
07 u8 1,0
08 u32 0,1
12 u32 based on type [4]
1 = offset
2 = offset
16 u32 patch model
20 u32 5000,2000,1000,1500
24 u32 6000,2000,0
28 u32 5,50,1,150
32 u32 0
36 u32 0
40 u32 0
44 float 2.5,1,0.10000000149011612,5,2
48 float 0.20000000298023224,0.25,0.4000000059604645,0.5
52 float 0,50,10,15,30,20,25
56 u32 100,50,25
60 float 0,0.550000011920929,0.05000000074505806,1.5499999523162842
64 float 75,0,5000
68 u8 0
69 u8 80,0
70 u8 195,200
71 u8 71,66
72 float 100,400,0
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_proto_unknown)
116 u32 offset (hwvx_proto_unknown)
120 u32 offset (hwvx_proto_unknown)
124 u32 0
128 u32 0
132 u32 0
136 u32 0
140 u32 amount 0 - 3
144 u32 offset based on amount [140]
148 u32 amount 0 - 2
152 u32 offset based on amount [148]
156 u32 amount 1 - 2
160 u32 offset (hwvx_proto_mysterious) based on amount [156]
164 u32 offset
168 u32 offset
172 u32 offset
176 bytes

hwvx_proto_asdf_12t1

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

hwvx_proto_asdf_12t2

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

hwvx_proto_asdf_144

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

hwvx_proto_asdf_152

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

hwvx_proto_asdf_164

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

hwvx_proto_asdf_168

Offset Type Description
00 u32 9830400,6553600,3276800
04 float always 5
08 float 200,125,150
12 float 150,100
16 float 2000,300
20 float 1000,300,250
24 float 1,2.5,0.10000000149011612
28 float 180,90
32 float 0,10
36 float 1000,2500
40 u32 0
44 float always 180
48 bytes

hwvx_proto_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_proto_item

linked to by:
hwvx_proto_basic_4 [0]t2

Offset Type Description
00 u8 2,6,1,3,7,10,11
01 u8 1,0
02 u8 0,244,100
03 u8 0,1
04 u8 always 255
05 u8 always 255
06 u8 always 255
07 u8 always 255
08 float 300,0,10
12 float 12,15,0,6
16 float 10,0,6,5,1
20 u32 0
24 float 25,0,10
28 float 25,0,10
32 u32 offset (hwvx_proto_text) Item name
36 u32 offset
40 u32 0
44 u32 offset (hwvx_proto_unknown)
48 u32 offset
52 u32 offset (hwvx_proto_model_anims_2)
56 u32 3,4,5,1,7,0
60 u32 offset (hwvx_proto_mysterious) based on amount [56]
64 bytes

hwvx_proto_item_48

Offset Type Description
00 u32 offset
04 u32 0
08 u32 0
12 u32 0
16 u32 offset (hwvx_proto_text)
20 u32 0
24 u8 patch texture index always 0
25 u8 0
26 u8 204,0
27 u8 204,0
28 u32 offset (hwvx_proto_model_anims_2)
32 u32 1000,0,2000
36 u32 250,500,1000,100,1
40 u32 2000,100
44 u32 0,69379,77059
48 u32 3000,15000,5000,2000,2500,10000,1000,100,1500
52 u32 257,1,270
56 float 0,150,20
60 float 1000,500,120,100,150,750,200,250,2000
64 float 0,180
68 float 180,10,45,15,0,135
72 float 180,10,0,120,5,30
76 float 1 - 5000
80 u32 0
84 u32 0
88 u32 0
92 u32 0
96 bytes

hwvx_proto_item_48_0

Offset Type Description
00 u32 0
04 u32 0
08 u32 amount 0 - 7
12 u32 offset based on amount [8]
16 u32 offset (hwvx_proto_model_anims_1)
20 u32 offset (hwvx_proto_model_anims_2)
24 float 30,10
28 u32 always 33620225
32 u32 offset
36 u32 offset
40 u32 offset
44 u32 amount
48 u32 offset (hwvx_proto_mysterious) based on amount [44]
52 u32 offset
56 u32 0
60 u32 0
64 bytes

hwvx_proto_item_48_0_12

Offset Type Description
00 u32 patch model
04 u32 0,1,2,3,4,6,5
8 bytes per entry

hwvx_proto_item_48_0_32

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

hwvx_proto_item_48_0_36

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

hwvx_proto_item_48_0_40

Offset Type Description
00 float 90,0,20,30,1,45,31,60,15
04 float 100,9,29,44,21,60,75,90,1,0
08 u32 0
12 u32 0
16 bytes

hwvx_proto_item_48_0_52

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

linked to by:
hwvx_proto_basic_4 [0]t3

offset order:
44
4
52
8
12
60

Offset Type Description
00 u32 0
04 u32 offset string HW_IPack (main menu?)
08 u32 offset string HW_Cars
12 u32 offset string HW_Items
16 u32 patch texture index always 0
20 u32 patch texture index always 1
24 float always 100
28 float always 100
32 u32 0
36 u32 always 1
40 u32 amount 5
44 u32 offset based on amount [40]
48 u32 amount 8
52 u32 offset based on amount [48]
56 u32 amount 6
60 u32 offset based on amount [56]
64 bytes

Offset Type Description
00 u32 type? 1,4,0
04 u32 based on type [0]
0 = offset string, thqlogo,bglogo,hwtrail
08 u32 based on type [0]
1,4 = offset
12 bytes per entry

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

Offset Type Description
00 u32 offset
4 bytes per entry

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

Offset Type Description
00 u32 amount 0 - 3
04 u32 offset based on amount [0]
08 u32 offset
12 u32 offset string world files
16 u32 always 1
20 u32 offset
24 u32 always 1
28 u32 offset
32 bytes per entry

Offset Type Description
00 u32 type? 0,1
04 u32 based on type [0]
0 = offset string m1Intro
1 = offset
8 bytes per entry

Offset Type Description
00 u32 offset string HW_IPack, hw_brief
04 u32 0,3,1
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 0
04 u32 0
08 u32 1,99
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

strange values linked, not strings or floats?

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 always 12
07 u8 15,13,9
08 u32 always 117769732
12 u32 33556747,33557257,33557771,33558025
16 bytes

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

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

hwvx_proto_sound_controls

multi linked to by:
hwvx_proto_basic_4 [0]t9
hwvx_proto_unknown_4 [4]t26
hwvx_proto_interface [32][36][40][44]
hwvx_proto_strange [32]
hwvx_proto_world_settings_196 [32]
hwvx_proto_world_model_related [12]
hwvx_proto_unknown_thing_4t0 [24]

Offset Type Description
00 u32 0,5000
04 u32 25
08 u32 amount 1 - 3
12 u32 offset based on amount [8]
16 bytes

hwvx_proto_sound_controls_12

Offset Type Description
00 float 0,500,250
04 u32 0,1
08 u32 amount 1 - 8
12 u32 offset based on amount [8]
16 bytes per entry

hwvx_proto_sound_controls_12_12

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

hwvx_proto_sound_section

multi linked to by:
hwvx_proto_sound_controls_12_12 [0]
hwvx_proto_font [4]
hwvx_proto_car [92][96]
hwvx_proto_car_220 [4]
hwvx_proto_unknown_4 [4]t10
hwvx_proto_world_44 [20]
hwvx_proto_car_sub_link [60]

Offset Type Description
00 u8 0,1
01 u8 5,3
02 u8 0,1
03 u8 0
04 u32 0,1000
08 float 0.5,0.4000000059604645
12 float 0.5,0.800000011920929,0.75
16 float 0,0.05000000074505806,0.10000000149011612
20 u32 patch sound
24 u32 offset
28 u32 amount | 0,1
32 u32 offset based on amount [28]
36 u32 0
40 u32 0
44 u32 0
48 bytes

hwvx_proto_sound_section_24

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

hwvx_proto_sound_section_32

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

hwvx_proto_texture_anims_0

linked to by:
hwvx_proto_texture_anims [0]

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

hwvx_proto_texture_anims_0_20

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

hwvx_proto_texture_anims_0_20_4

Offset Type Description
00 u32 patch texture
4 bytes per entry

hwvx_proto_texture_anims_0_8

Offset Type Description
00 u8 136,233,255,0
01 u8 120,255,0,128
02 u8 135,233,136,0,255,128
03 u8 always 255
04 u32 1,0,769,768
08 float 0,500,999,1,333
12 bytes per entry

hwvx_proto_texture_anims_0_16

Offset Type Description
00 float 0,1,0.25,0.5,3
04 float 0,1,-1,0.25,0.5,0.75
08 float 0,250,1000,1,60000,10000,100
12 u32 1,0,769,768
16 bytes per entry