Skip to content

Commit 130971c

Browse files
committed
Support for 1.52
1 parent 619b62a commit 130971c

File tree

5 files changed

+98
-95
lines changed

5 files changed

+98
-95
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
## 1.52
2+
- Updated to support 1.52
3+
14
## 1.51
25
- Updated to support 1.51
36

dist/ts-fmod-plugin.dll

0 Bytes
Binary file not shown.

ts-fmod-plugin/common.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
namespace common
44
{
5-
inline const char* plugin_version = "1.51";
6-
constexpr uint32_t supported_game_version = 51;
5+
inline const char* plugin_version = "1.52";
6+
constexpr uint32_t supported_game_version = 52;
77

88
inline FMOD_GUID get_guid(const std::string& s_guid)
99
{

ts-fmod-plugin/memory_structure.h

Lines changed: 89 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -31,96 +31,96 @@ class unit_t // Size: 0x0010
3131

3232
static_assert(sizeof(unit_t) == 0x10);
3333

34-
class game_actor_u : public unit_t // Size: 0x10A0
34+
class game_actor_u : public unit_t // Size: 0x10A8
3535
{
3636
public:
37-
char pad_0010[8]; // 0x0010 (0x08)
38-
class game_physics_vehicle_u* game_physics_vehicle; // 0x0018 (0x08)
39-
class visual_interior_u* visual_interior; // 0x0020 (0x08)
40-
class game_actor_hud_u* game_actor_hud; // 0x0028 (0x08)
41-
char pad_0030[88]; // 0x0030 (0x58)
42-
class history_stream_set_u* history_stream_set; // 0x0088 (0x08)
43-
char pad_0090[24]; // 0x0090 (0x18)
44-
class history_manager_u* history_manager; // 0x00A8 (0x08)
45-
class game_trailer_actor_u* game_trailer_actor; // 0x00B0 (0x08)
46-
char pad_00B8[96]; // 0x00B8 (0x60)
47-
uint32_t current_camera; // 0x0118 (0x04) 2 = int, 1 = chase, 7 = top, 5 = roof, 4 = side_back, 3 = hood, 6 = side_front, 9 = cinematic, 0 = dev
48-
char pad_011C[8]; // 0x011C (0x08)
49-
uint32_t engine_state; // 0x0124 (0x04) 0 = engine off, 1 = starting, 2 = running, 3 = shutting down
50-
char pad_0128[8]; // 0x0128 (0x08)
51-
uint8_t parking_brake; // 0x0130 (0x01)
52-
char pad_0131[63]; // 0x0131 (0x3f)
53-
float speed_limiter; // 0x0170 (0x04)
54-
float road_speed_limit; // 0x0174 (0x04)
55-
char pad_0178[52]; // 0x0178 (0x34)
56-
uint16_t light_state; // 0x01AC (0x02) (flags) 6 = parking, 8 = low, 7 = high, 5 = beacons
57-
char pad_01AE[2]; // 0x01AE (0x02)
58-
uint16_t additional_illumination; // 0x01B0 (0x02) (flags) 3 = front, 4 = roof
59-
char pad_01B2[14]; // 0x01B2 (0x0e)
60-
float wipers_intermittent_time; // 0x01C0 (0x04) Countdown before wipers move again when in intermittent setting
61-
float wipers_position; // 0x01C4 (0x04) 0 = down start, 1 = down end ???
62-
float rpm; // 0x01C8 (0x04)
63-
float air_pressure; // 0x01CC (0x04)
64-
float brake_pressure; // 0x01D0 (0x04)
65-
float max_air_pressure; // 0x01D4 (0x04)
66-
char pad_01D8[8]; // 0x01D8 (0x08)
67-
float oil_temp; // 0x01E0 (0x04)
68-
char pad_01E4[4]; // 0x01E4 (0x04)
69-
float water_temp; // 0x01E8 (0x04)
70-
char pad_01EC[4]; // 0x01EC (0x04)
71-
float battery_voltage; // 0x01F0 (0x04)
72-
char pad_01F4[8]; // 0x01F4 (0x08)
73-
float turbo_pressure; // 0x01FC (0x04) ?
74-
char pad_0200[16]; // 0x0200 (0x10)
75-
float light_switch; // 0x0210 (0x04) 0 = off, 0.5 = parking, 1 = low beam
76-
float light_switch_state; // 0x0214 (0x04) 0 = off, 0.5 = parking, 1 = low beam (instant)
77-
float high_beam_stick; // 0x0218 (0x04) 0 = off, 1 = on
78-
float high_beam_state; // 0x021C (0x04) 0 = off, 1 = on (instant)
79-
float light_horn_stick; // 0x0220 (0x04) 0 = off, 1 = on
80-
float light_horn_state; // 0x0224 (0x04) 0 = off, 1 = on (instant)
81-
float indicator_stick; // 0x0228 (0x04) 0 = left indicator, 0.5 = none, 1 = right
82-
float indicator_state; // 0x022C (0x04) 0 = left indicator, 0.5 = none, 1 = right (instant)
83-
float hazard_warning_btn; // 0x0230 (0x04) 0 = off, 1 = on
84-
float hazard_warning_state; // 0x0234 (0x04) 0 = off, 1 = on (instant)
85-
float beacon_switch; // 0x0238 (0x04) 0 = off, 1 = on
86-
float beacon_state; // 0x023C (0x04) 0 = off, 1 = on (instant)
87-
char pad_0240[8]; // 0x0240 (0x08)
88-
float handbrake_handle; // 0x0248 (0x04) 0 = off, 1 = on
89-
float handbrake_state; // 0x024C (0x04) 0 = off, 1 = on (instant)
90-
char pad_0250[16]; // 0x0250 (0x10)
91-
float engine_brake_stick; // 0x0260 (0x04) 0 = off, 1 = full; steps dependant on engine data
92-
float engine_brake_state; // 0x0264 (0x04) 0 = off, 1 = full (instant); steps dependant on engine data
93-
char pad_0268[20]; // 0x0268 (0x14)
94-
float wipers_stick; // 0x027C (0x04) 0 = off, 0.333 = intermittent, 0.666 = slow, 1 = fast
95-
float wipers_state; // 0x0280 (0x04) 0 = off, 0.333 = intermittent, 0.666 = slow, 1 = fast (instant)
96-
char pad_0284[12]; // 0x0284 (0x0c)
97-
uint8_t left_window_moving_direction; // 0x0290 (0x01) 1 = got to end down; 2 = got to end up; 16 = down; 32 = up
98-
uint8_t is_left_window_moving; // 0x0291 (0x01) 1 = down auto; 16 = down holding btn; 2 = auto up; 32 = up holding button
99-
char pad_0292[2]; // 0x0292 (0x02)
100-
float left_window_state; // 0x0294 (0x04) 0 = up; 1 = down
101-
float left_window_btn; // 0x0298 (0x04) 0 = up; 0.5 off; 1 = down
102-
float left_window_btn_state; // 0x029C (0x04) 0 = up; 0.5 off; 1 = down (instant)
103-
float N00002B28; // 0x02A0 (0x04)
104-
char pad_02A4[4]; // 0x02A4 (0x04)
105-
uint8_t right_window_moving_direction; // 0x02A8 (0x01) 1 = got to end down; 2 = got to end up; 16 = down; 32 = up
106-
uint8_t is_right_window_moving; // 0x02A9 (0x01) 1 = down auto; 16 = down holding btn; 2 = auto up; 32 = up holding button
107-
char pad_02AA[2]; // 0x02AA (0x02)
108-
float right_window_state; // 0x02AC (0x04) 0 = up; 1 = down
109-
float right_window_btn; // 0x02B0 (0x04) 0 = up; 0.5 off; 1 = down
110-
float right_window_btn_state; // 0x02B4 (0x04) 0 = up; 0.5 off; 1 = down (instant)
111-
char pad_02B8[1884]; // 0x02B8 (0x75c)
112-
class N00009B3C* N00002C10; // 0x0A14 (0x08)
113-
char pad_0A1C[144]; // 0x0A1C (0x90)
114-
class model_object_u* model_object; // 0x0AAC (0x08)
115-
char pad_0AB4[16]; // 0x0AB4 (0x10)
116-
class physics_gearbox_sequential_u* physics_gearbox_sequential; // 0x0AC4 (0x08)
117-
class physics_gearbox_automatic_u* physics_gearbox_automatic; // 0x0ACC (0x08)
118-
class physics_gearbox_direct_u* physics_gearbox_direct; // 0x0AD4 (0x08)
119-
char pad_0ADC[8]; // 0x0ADC (0x08)
120-
class accessory_head_lights_data_u* accessory_head_lights_data; // 0x0AE4 (0x08)
121-
char pad_0AEC[1184]; // 0x0AEC (0x4a0)
122-
token_t N00002CB4; // 0x0F8C (0x08)
123-
char pad_0F94[268]; // 0x0F94 (0x10c)
37+
char pad_0010[8]; //0x0010 (0x08)
38+
class game_physics_vehicle_u* game_physics_vehicle; //0x0018 (0x08)
39+
class visual_interior_u* visual_interior; //0x0020 (0x08)
40+
class game_actor_hud_u* game_actor_hud; //0x0028 (0x08)
41+
char pad_0030[88]; //0x0030 (0x58)
42+
class history_stream_set_u* history_stream_set; //0x0088 (0x08)
43+
char pad_0090[24]; //0x0090 (0x18)
44+
class history_manager_u* history_manager; //0x00A8 (0x08)
45+
class game_trailer_actor_u* game_trailer_actor; //0x00B0 (0x08)
46+
char pad_00B8[96]; //0x00B8 (0x60)
47+
uint32_t current_camera; //0x0118 (0x04) 2 = int, 1 = chase, 7 = top, 5 = roof, 4 = side_back, 3 = hood, 6 = side_front, 9 = cinematic, 0 = dev
48+
char pad_011C[8]; //0x011C (0x08)
49+
uint32_t engine_state; //0x0124 (0x04) 0 = engine off, 1 = starting, 2 = running, 3 = shutting down
50+
char pad_0128[8]; //0x0128 (0x08)
51+
uint8_t parking_brake; //0x0130 (0x01)
52+
char pad_0131[63]; //0x0131 (0x3f)
53+
float speed_limiter; //0x0170 (0x04)
54+
float road_speed_limit; //0x0174 (0x04)
55+
char pad_0178[52]; //0x0178 (0x34)
56+
uint16_t light_state; //0x01AC (0x02) (flags) 6 = parking, 8 = low, 7 = high, 5 = beacons
57+
char pad_01AE[2]; //0x01AE (0x02)
58+
uint16_t additional_illumination; //0x01B0 (0x02) (flags) 3 = front, 4 = roof
59+
char pad_01B2[14]; //0x01B2 (0x0e)
60+
float wipers_intermittent_time; //0x01C0 (0x04) Countdown before wipers move again when in intermittent setting
61+
float wipers_position; //0x01C4 (0x04) 0 = down start, 1 = down end ???
62+
float rpm; //0x01C8 (0x04)
63+
float air_pressure; //0x01CC (0x04)
64+
float brake_pressure; //0x01D0 (0x04)
65+
float max_air_pressure; //0x01D4 (0x04)
66+
char pad_01D8[8]; //0x01D8 (0x08)
67+
float oil_temp; //0x01E0 (0x04)
68+
char pad_01E4[4]; //0x01E4 (0x04)
69+
float water_temp; //0x01E8 (0x04)
70+
char pad_01EC[4]; //0x01EC (0x04)
71+
float battery_voltage; //0x01F0 (0x04)
72+
char pad_01F4[8]; //0x01F4 (0x08)
73+
float turbo_pressure; //0x01FC (0x04) ?
74+
char pad_0200[16]; //0x0200 (0x10)
75+
float light_switch; //0x0210 (0x04) 0 = off, 0.5 = parking, 1 = low beam
76+
float light_switch_state; //0x0214 (0x04) 0 = off, 0.5 = parking, 1 = low beam (instant)
77+
float high_beam_stick; //0x0218 (0x04) 0 = off, 1 = on
78+
float high_beam_state; //0x021C (0x04) 0 = off, 1 = on (instant)
79+
float light_horn_stick; //0x0220 (0x04) 0 = off, 1 = on
80+
float light_horn_state; //0x0224 (0x04) 0 = off, 1 = on (instant)
81+
float indicator_stick; //0x0228 (0x04) 0 = left indicator, 0.5 = none, 1 = right
82+
float indicator_state; //0x022C (0x04) 0 = left indicator, 0.5 = none, 1 = right (instant)
83+
float hazard_warning_btn; //0x0230 (0x04) 0 = off, 1 = on
84+
float hazard_warning_state; //0x0234 (0x04) 0 = off, 1 = on (instant)
85+
float beacon_switch; //0x0238 (0x04) 0 = off, 1 = on
86+
float beacon_state; //0x023C (0x04) 0 = off, 1 = on (instant)
87+
char pad_0240[8]; //0x0240 (0x08)
88+
float handbrake_handle; //0x0248 (0x04) 0 = off, 1 = on
89+
float handbrake_state; //0x024C (0x04) 0 = off, 1 = on (instant)
90+
char pad_0250[16]; //0x0250 (0x10)
91+
float engine_brake_stick; //0x0260 (0x04) 0 = off, 1 = full; steps dependant on engine data
92+
float engine_brake_state; //0x0264 (0x04) 0 = off, 1 = full (instant); steps dependant on engine data
93+
char pad_0268[20]; //0x0268 (0x14)
94+
float wipers_stick; //0x027C (0x04) 0 = off, 0.333 = intermittent, 0.666 = slow, 1 = fast
95+
float wipers_state; //0x0280 (0x04) 0 = off, 0.333 = intermittent, 0.666 = slow, 1 = fast (instant)
96+
char pad_0284[20]; //0x0284 (0x14)
97+
uint8_t left_window_moving_direction; //0x0298 (0x01) 1 = got to end down; 2 = got to end up; 16 = down; 32 = up
98+
uint8_t is_left_window_moving; //0x0299 (0x01) 1 = down auto; 16 = down holding btn; 2 = auto up; 32 = up holding button
99+
char pad_029A[2]; //0x029A (0x02)
100+
float left_window_state; //0x029C (0x04) 0 = up; 1 = down
101+
float left_window_btn; //0x02A0 (0x04) 0 = up; 0.5 off; 1 = down
102+
float left_window_btn_state; //0x02A4 (0x04) 0 = up; 0.5 off; 1 = down (instant)
103+
float N00002B28; //0x02A8 (0x04)
104+
char pad_02AC[4]; //0x02AC (0x04)
105+
uint8_t right_window_moving_direction; //0x02B0 (0x01) 1 = got to end down; 2 = got to end up; 16 = down; 32 = up
106+
uint8_t is_right_window_moving; //0x02B1 (0x01) 1 = down auto; 16 = down holding btn; 2 = auto up; 32 = up holding button
107+
char pad_02B2[2]; //0x02B2 (0x02)
108+
float right_window_state; //0x02B4 (0x04) 0 = up; 1 = down
109+
float right_window_btn; //0x02B8 (0x04) 0 = up; 0.5 off; 1 = down
110+
float right_window_btn_state; //0x02BC (0x04) 0 = up; 0.5 off; 1 = down (instant)
111+
char pad_02C0[1880]; //0x02C0 (0x758)
112+
class N00009B3C* N00002C10; //0x0A18 (0x08)
113+
char pad_0A20[136]; //0x0A20 (0x88)
114+
class model_object_u* model_object; //0x0AA8 (0x08)
115+
char pad_0AB0[16]; //0x0AB0 (0x10)
116+
class physics_gearbox_sequential_u* physics_gearbox_sequential; //0x0AC0 (0x08)
117+
class physics_gearbox_automatic_u* physics_gearbox_automatic; //0x0AC8 (0x08)
118+
class physics_gearbox_direct_u* physics_gearbox_direct; //0x0AD0 (0x08)
119+
char pad_0AD8[8]; //0x0AD8 (0x08)
120+
class accessory_head_lights_data_u* accessory_head_lights_data; //0x0AE0 (0x08)
121+
char pad_0AE8[1184]; //0x0AE8 (0x4a0)
122+
token_t N00002CB4; //0x0F88 (0x08)
123+
char pad_0F90[280]; //0x0F90 (0x118)
124124

125125
public:
126126
float get_light_switch_state() const
@@ -164,7 +164,7 @@ class game_actor_u : public unit_t // Size: 0x10A0
164164
}
165165
};
166166

167-
static_assert(sizeof(game_actor_u) == 0x10A0);
167+
static_assert(sizeof(game_actor_u) == 0x10A8);
168168

169169
class sound_t
170170
{

ts-fmod-plugin/ts-fmod-plugin.rc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ END
5151
//
5252

5353
VS_VERSION_INFO VERSIONINFO
54-
FILEVERSION 1,51,0,0
55-
PRODUCTVERSION 1,51,0,0
54+
FILEVERSION 1,52,0,0
55+
PRODUCTVERSION 1,52,0,0
5656
FILEFLAGSMASK 0x3fL
5757
#ifdef _DEBUG
5858
FILEFLAGS 0x1L
@@ -69,12 +69,12 @@ BEGIN
6969
BEGIN
7070
VALUE "CompanyName", "Dario Wouters"
7171
VALUE "FileDescription", "Sound Plugin for ATS/ETS2"
72-
VALUE "FileVersion", "1.51.0.0"
72+
VALUE "FileVersion", "1.52.0.0"
7373
VALUE "InternalName", "ts-fmod-plugin.dll"
7474
VALUE "LegalCopyright", "Copyright (C) 2023"
7575
VALUE "OriginalFilename", "ts-fmod-plugin.dll"
7676
VALUE "ProductName", "Sound Plugin for ATS/ETS2"
77-
VALUE "ProductVersion", "1.51.0.0"
77+
VALUE "ProductVersion", "1.52.0.0"
7878
END
7979
END
8080
BLOCK "VarFileInfo"

0 commit comments

Comments
 (0)