VR Driving Enhancements ATS/ETS2 1.44 to 1.52 - ***TEST 3.0 for VR Headset users***

Make your game even better
User avatar
JHTrucker
Expert
Posts: 1356
Joined: February 7th, 2020, 3:19 pm
Location: UK

VR Driving Enhancements ATS/ETS2 1.44 to 1.52 - ***TEST 3.0 for VR Headset users***

Post by JHTrucker » November 25th, 2022, 4:28 pm

This is for, what I think, is a more realistic sim experience and therefore using a real steering wheel is recommended, not only for driving but also for controlling extra features. The goal is to perform every thing in first person and move as seamlessly as possible from inside to outside and back again.

Updated 25/01/2023 - New VRDE v2.0 mod and VRDE controls v2.0. What's new, look here: viewtopic.php?p=56925#p56925
Updated 10/02/2023 - New VRDE v2.1 mod and VRDE controls v2.1. What's new, look here: viewtopic.php?p=57268#p57268
Updated 16/10/2024 - New VRDE v3.0 mod and VRDE controls v3.0. What's new, look here: viewtopic.php?p=66165#p66165

========================================================================================
This 'proof of concept test' should work for ATS/ETS2 game versions 1.44 to 1.49 & 1.51 to 1.52
It will 'crash to desktop' if using game version 1.50 with any of the provided mods.
Note: From game version 1.51 there's no custom VRDE menu due to new UI limitations.

A quick test of Driving Academy (1.52): VRDE functions work correctly but when the on screen text
instructions state "press 'complex' to continue", just press your 'Activate' button.

As this is a test it will only work on some game default trucks,
see "Currently 'supported' SCS trucks" for more info.

If this test is proved to be successful, by someone with a VR Headset, then I'll add
support for all current game default trucks.
========================================================================================


NOTE: I don't have a VR headset, so can't fully test this by just simulating VR inputs on the standard game version using my TrackIR 3, but I do think it will work as VR & TrackIR both share the same game inputs, so if you do have a VR headset and would like these new features, give it a try.

Example (using my 'TrackIR Driving Enhancements' mod), here's what 'refueling' should look like for VR users:
Driver seat -> Centre real steering wheel -> Look over your shoulder to outside (window open or closed) -> Press 'Action' -> Outside.
Turn real steering wheel left/right to 'walk' along side the truck or around the front to the other side.
Look at fuel tank - Press 'Action' - Refueling - Look up at drivers door window - Press 'Action' - Drivers seat.


Also see other TDE demo videos for what to expect: viewtopic.php?p=55562#p55562

==============================================================================

Currently 'supported' SCS trucks:
ATS: Freightliner Cascadia - International 9900i, International LoneStar & International LT - Kenworth T680 & Kenworth W900 - Mack Anthem - Peterbilt 389 & Peterbilt 579 - Volvo VNL 2014 - Westernstar 49X, Westernstar 57X & Westernstar 5700XE.

ETS2: DAF 2021, DAF XF105 & DAF XF - Iveco Hi-way & Iveco Stralis - MAN TGX & MAN TGX Euro 6 - Mercedes Actros & Mercedes New Actros - Renault Magnum, Renault Premium & Renault T - Scania R2009, Scania R, Scania S & Scania Streamline - Volvo FH Classic & Volvo FH.

==============================================================================

Features:
Game version 1.51+: Uses the in game Tobii Eye menu to select the required presets to suit you and any given truck.
Note: The file used to create the custom VRDE menu is no longer available within the game extracted files, hence no custom menu and reduced functionality.

Game version 1.44 to 1.49: An in game menu that has sliders so you can setup all of the 'VR Driving Enhancements' features to suit you and the supported game default trucks and then save as a preset. There's also plenty of presets to use, so you don't have to adjust anything, but you can if you want.

The VRDE mod code must be disabled via the VRDE menu when you use an 'unsupported' truck, resulting in game default VR controls.
Note: If you're driving view is stuck looking back over, its an 'unsupported' truck, disable VRDE code or use a 'supported' truck.
You can also disable the code, if for some reason you want to drive from an SCS non-internal camera view, on any truck.

You can have:
Game default head movement - Game standard unrestricted movement.
or
Manual head movement - Unrestricted movement - You'll have to lean out of the window rather than the game doing it for you.
or
Manual head movement with window blocking - Restricted movement within the cab - Open the window to lean out.

Use the supplied CAM 1 presets in the VRDE menu to choose your preferred mode.

Zoom interior camera with your head instead of a button press (This may not work for VR if FOV is fixed?). Can be disabled if you don't want this.

You can switch GPS screens or dash screens by looking at them and pressing the 'Action' button.
Centre console GPS or windscreen GPS - Change from on/zoom1/zoom2/zoom3/zoom4/off (1.44-1.45).
Centre console GPS or windscreen GPS - Change from zoom1/zoom2/zoom3/zoom4 (1.46+).
Note: SCS removed GPS on/off in 1.46 and instead you now need to assign a separate button for on/off.

You can change from driver seat to passenger seat to sleeper area or outside by looking at the location and pressing the 'Action' button.

You can position the passenger seat & sleeper area cameras where you want them for any given truck, using the VRDE menu, and save as a preset.

When outside, you can 'walk' around your truck by turning your steering wheel & pressing your pedals whilst still having full yaw/pitch/roll & y movement.

When outside, you can attach/detach the trailer & refuel by looking at their trigger points and pressing the 'Action' button.

You can only drive from the driving seat. Steering/accelerator/brake/clutch are all disabled in all other camera views due to those controls being used for walking around your truck.

Optional - As well as the above 'look action' functions, you can further reduce the number of keys/buttons you need for windows and suspension.
Both left & right windows open/close together when pressing just 1 key/button.
Both front & rear suspensions raise/lower with just 1 key/button.

Driver model removed, if you're outside of your truck then nobody should be sat in your seat.

Quick start setup on post 2, including a pre-configured controls.sii file for easy testing.

==============================================================================

Available cameras:
CAM 1 - Game standard driving view.
CAM 2 - NEW - Passenger Seat
CAM SHIFT+2 - Game standard chase view.
CAM 3 - NEW - Sleeper
CAM SHIFT+3 - Game standard top down view.
CAM 4 - NEW - Outside truck - Use your steering wheel to 'walk' around the truck.
CAM SHIFT+4 - Game standard roof view.
CAM 5 - Game standard Lean out view.
CAM 6 - Game standard Bumper view.
CAM 7 - Game standard On-Wheel view.
CAM 8 - Game standard Drive-By view.
CAM 9 - Cam Cycle Disabled. It doesn't work with new cameras.
Remember, this is about realism and so CAM 1, 2, 3 & 4 will be your main cameras.

==============================================================================

In game Tobii Eye menu (game version 1.51+):
Image
Press HOME to access menu mod to make changes as required (can be changed to a key or button of your choice).
Press ESCAPE to go back to driving screen.

VRDE only works with 'supported' trucks - If you're head is stuck looking back over then your truck is 'unsupported'
Enable VRDE code (Tick) or Disable code (Untick) for game default controls when using 'unsupported' trucks

"Extended View Presets" [drop down selector].
This indicates your current active preset only, don't make changes to this!

"Apply Extended View Preset 1" [drop down selector].
Always select the preset you want to use when driving. Whenever you select CAM 1 this preset will be applied.

"Apply Extended View Preset 2" [drop down selector].
Using 'Look Action' or pressing 'CAM 2' will change your position inside the cabin from driving seat to passenger seat.

"Apply Extended View Preset 3" [drop down selector].
Using 'Look Action' or pressing 'CAM 3' will change your position inside the cabin from driving seat to sleeper area.

----------

Changing Driving Seat Preset (game version 1.51+):

"Preset 1 " [drop down selector].
Choose from these defaults:
"1 LHD Game default head movement" <-- Same unrestricted head movement as standard VR game.
"1 LHD Game default & No Head Zoom" <-- Same unrestricted head movement as standard VR game but 'head zoom is disabled'.
"1 LHD Manual head movement" <-- Same unrestricted head movement as standard VR game but you'll need to lean through the window instead of the game doing it for you.
"1 LHD Manual head & window blocking" <-- Restricted head movement with the closed window. Open the window and lean out.

"1 RHD Game default head movement" <-- Same unrestricted head movement as standard VR game.
"1 RHD Game default & No Head Zoom" <-- Same unrestricted head movement as standard VR game but 'head zoom is disabled'.
"1 RHD Manual head movement" <-- Same unrestricted head movement as standard VR game but you'll need to lean through the window instead of the game doing it for you.
"1 RHD Manual head & window blocking" <-- Restricted head movement with the closed window. Open the window and lean out.

----------

Changing Passenger Seat & Sleeper Presets (game version 1.51+):

Preset 2 [Drop Down List]
Select from the list a basic 'Passenger seat' preset you'd like to use. Don't use any other type of preset!
You can choose from:
"2 LHD Passenger Seat 1, 2, 3, 4 & 5"
"2 RHD Passenger Seat 1, 2, 3, 4 & 5"
The number is how far to the passenger side the camera is positioned, 1 is closest to driver side & 5 is passenger side window or further depending on truck used. Select the one that best fits your current truck. ATS 1/2/3/4 - ETS 2/3/4/5 - (ATS cabs are generally narrower than ETS cabs).

Preset 3 [Drop Down List]
Select from the list a basic 'Sleeper' preset you'd like to use. Don't use any other type of preset!
You can choose from:
"3 LHD Sleeper Laid Down 1, 2, 3, 4, 5, 6, 7 & 8"
"3 LHD Sleeper Seat 1, 2, 3, 4, 5, 6, 7 & 8"
"3 RHD Sleeper Laid Down 1, 2, 3, 4, 5, 6, 7 & 8"
"3 RHD Sleeper Seat 1, 2, 3, 4, 5, 6, 7 & 8"
The number is how far to the rear the camera is positioned behind the drivers seat, 1 is closest to drivers seat & 8 far behind.
Select the one that best fits your current truck. ATS 3/4/5/6/7/8 - ETS 1/2/3 - (ATS sleeper cabs are generally longer than ETS cabs).

==============================================================================

In game VRDE menu (game version 1.44 to 1.49):
Note: This is a modded Tobii Eye menu so ignore the balloon tips.
Image
1 - CAM 1: Select your 'Saved' Driving Preset
2 - CAM 2: Select Passenger Seat Preset
3 - CAM 3: Select Sleeper Preset

Press HOME to access menu mod to make changes as required (can be changed to a key or button of your choice).
Press ESCAPE to go back to driving screen.

The Menu mod is in English only and consists of:-

VRDE only works with 'supported' trucks - If you're head is stuck looking back over then your truck is 'unsupported'
Enable VRDE code (Tick) or Disable code (Untick) for game default controls when using 'unsupported' trucks

'Current Active Settings - Adjust & Save' [drop down selector].
Select a suitable preset and adjust the sliders to how you want them for any given truck and then save as a preset so you can quickly select them again.
Select "Disable VR for Mouse only - Select another preset to re-enable". This allows you to turn off head tracking whilst in game, if required only.

"CAM 1: Select your 'Saved' Driving Preset" [drop down selector].
Always select the preset you want to use when driving. Whenever you select CAM 1 this preset will be applied overwriting any unsaved custom settings!

"CAM 2: Select Passenger Seat Preset" [drop down selector].
Pressing 'CAM 2' will change your position inside the cabin from driving seat to passenger seat.

"CAM 3: Select Sleeper Preset" [drop down selector].
Pressing 'CAM 3' will change your position inside the cabin from driving seat to sleeper area.

Using CAM 1 open this menu and make adjustments - 'Current Active Settings' --> custom click + type name and save

Driving position for LHD Truck (Untick) or for RHD Truck (Tick).
Set this to suit your current truck, so all features work correctly.

Head movement control : Dynamic = Game default - Direct = Manual (no auto move through window)
Choose manual if you'd prefer to lean out of the window when you want to and not because you turned your head. Works with or without 'window blocking'.

Using manual head movement control only - Adjust to keep your head inside the closed window
Disable Window Blocking 0% - Turn towards the closed drivers window and reduce this if you clip through it.

Trigger 'Zoom View' when leaning forward (TIR z) - Default 9.0
As standard, when you lean forward you get closer to the dash.
This adds to that feature by allowing you to lean further forward and thereby trigger the in game 'interior camera zoom' feature.
Set the slider to 0.0 to disable. The lower the value the sooner zoom will be triggered.
Feels right to lean forward to read up coming signs. One less button to press!

Zoom Zone - Default 0.55
This allows you to set the area to the left & right that "triggering zoom view" is active to prevent unwanted head zoom at higher head angles.
5.00 = Up to 180 degrees left/right (head zoom always on).
2.5 = Up to 90 degrees left/right.
1.25 = Up to 45 degrees left/right (prevent head zoom when looking around at junctions etc).
0.55 = Up to 20 degrees left/right - Default - (good for head zooming to just read upcoming signs in front of you).

ACTION - 'Look to location' and press -->
You can choose your own Action button.
You can change from driver seat to passenger seat to sleeper area or outside by looking at the location and pressing the 'Action' button.
You can attach/detach the trailer outside, refuel outside, switch GPS screens or switch dash screens by looking at them and pressing the 'Action' button.

Reset Head Tracking - Re-centers your in game head.
Existing game function shown here for completeness.

Using CAM 2/3 open this menu and make adjustments - 'Current Active Settings' --> custom click + type name and save

Move : Left=0.0 - (2.5 Drivers seat) - 5.0=Right ---------- Move : Low=0.0 - (2.5 Drivers seat) - 5.0=High

Move : Front=(0.0 Drivers seat) - 5.0=Back ---------- Pitch : Down=0.0 - (2.5 level) - 5.0=Up

Rotate : Left=1.0 - (3.0 straight ahead) - 5.0=Right

----------

Changing Driving Seat Preset in the VRDE menu (game version 1.44-1.49):

"CAM 1: Select your 'Saved' Driving Preset" [drop down selector].
Choose from these defaults:
"CAM 1: LHD Truck - Game default head movement" <-- Same unrestricted head movement as standard VR game.
"CAM 1: LHD Truck - Game default head movement - No Head Zoom" <-- Same unrestricted head movement as standard VR game but 'head zoom is disabled'.
"CAM 1: LHD Truck - Manual head movement" <-- Same unrestricted head movement as standard VR game but you'll need to lean through the window instead of the game doing it for you.
"CAM 1: LHD Truck - Manual head movement with window blocking" <-- Restricted head movement with the closed window. Open the window and lean out.

"CAM 1: RHD Truck - Game default head movement" <-- Same unrestricted head movement as standard VR game.
"CAM 1: RHD Truck - Game default head movement - No Head Zoom" <-- Same unrestricted head movement as standard VR game but 'head zoom is disabled'.
"CAM 1: RHD Truck - Manual head movement" <-- Same unrestricted head movement as standard VR game but you'll need to lean through the window instead of the game doing it for you.
"CAM 1: RHD Truck - Manual head movement with window blocking" <-- Restricted head movement with the closed window. Open the window and lean out.

If you make adjustments, save "custom" as your own preset by pressing "+" and typing your preset name.
Example: "CAM 1: LHD Truck - My driving preset" etc

----------

Changing Passenger Seat & Sleeper Presets in the VRDE menu (game version 1.44-1.49):

CAM 2: Select Passenger Seat Preset [Drop Down List]
Select from the list a basic 'Passenger seat' preset you'd like to use. Don't use any other type of preset!
You can choose from:
"CAM 2: LHD Passenger Seat 1, 2, 3, 4 & 5"
"CAM 2: RHD Passenger Seat 1, 2, 3, 4 & 5"
The number is how far to the passenger side the camera is positioned, 1 is closest to driver side & 5 is passenger side window or further depending on truck used. Select the one that best fits your current truck. ATS 1/2/3/4 - ETS 2/3/4/5 - (ATS cabs are generally narrower than ETS cabs).

CAM 3: Select Sleeper Preset [Drop Down List]
Select from the list a basic 'Sleeper' preset you'd like to use. Don't use any other type of preset!
You can choose from:
"CAM 3: LHD Sleeper Laid Down 1, 2, 3, 4, 5, 6, 7 & 8"
"CAM 3: LHD Sleeper Seat 1, 2, 3, 4, 5, 6, 7 & 8"
"CAM 3: RHD Sleeper Laid Down 1, 2, 3, 4, 5, 6, 7 & 8"
"CAM 3: RHD Sleeper Seat 1, 2, 3, 4, 5, 6, 7 & 8"
The number is how far to the rear the camera is positioned behind the drivers seat, 1 is closest to drivers seat & 8 far behind.
Select the one that best fits your current truck. ATS 3/4/5/6/7/8 - ETS 1/2/3 - (ATS sleeper cabs are generally longer than ETS cabs).

==============================================================================

Windows & Suspension operation:

The assigned buttons for windows and suspension now show as 'complex'. You can assign your preferred keys/buttons, but you'll lose the below functionality to reduce the number of keys/buttons required, test the below method first.

In game - Keys/buttons menu - Walk Mode - Secondary assignments (keep your preferred walk mode keys/buttons as primary assignments for walking in the garage):
Image
1 (Red) - When not using 'window blocking' you only need 1 button to open/close both windows and 1 button to raise/lower suspension.
Run = Windows open/close - Assign a suitable secondary button.
Crouch = Suspension raise/lower - Assign a suitable secondary button.
This 1 button method can also be used when VRDE is disabled and you are driving an unsupported truck.

2 (Yellow) - If you prefer to use 'window blocking' you need to use 2 buttons for open/close both windows and 2 buttons to raise/lower suspension.
Forward = Windows close - Assign a suitable secondary button.
Back = Windows open - Assign a suitable secondary button.
Left = Suspension raise - Assign a suitable secondary button.
Right = Suspension lower - Assign a suitable secondary button.
This 2 button method can be used in all modes, including when VRDE is disabled and you are driving an unsupported truck.

Note 1: You can only operate the windows and suspension from the drivers seat.
Note 2: You don't need a button for 'reset suspension' as the game will do that for you once you start driving, but you can assign one if required.
Note 3: You only need to assign 2 or 4 buttons.
Note 4: If you'd prefer not to use the above methods then just assign windows & suspension as normal, but doing so will delete the code used by the above methods and will prevent them from working if you decide to use them at some point in the future.
See 'How to fix missing functionality' section on post 4

==============================================================================

Window operation - When using 'window blocking':
You press 'open driver window' button and your head is unblocked, it can now pass through the opening window.
You press 'open driver window' button again and your head is blocked, back to only turning head inside the cab.
You press 'close driver window' button and your head is blocked, back to only turning head inside the cab.

To open driver window to 50% only and therefore still be blocked, do this:
Quick press 'open driver window' button.
When window is ~50% open, quick press 'open driver window' button again. This will stop the window motion and will block your head. So you can open the window as far as you like as long as you then press 'open drivers window' button again to stop the motion and you'll still be blocked.

To open driver window fully, do this:
Quick press 'open driver window' button and leave it to open.
Your head isn't blocked whilst the window is opening, so just wait for it to finish.

Note 1: Pressing 'close driver window' button will always block your head no matter how open the window is.

Note 2: Every time you start the game your head will be blocked whether the window is open or closed. The controls.sii file gets no feedback from the game to set it correctly. Just press 'open driver window' button to get back in sync if required.

Note 3: You should only press the window buttons with the truck electricity on.

==============================================================================

For the best experience use 'Look Action':
Image
D = Drivers Seat, P = Passenger Seat & O = Outside truck

1 = From drivers seat - Look to passenger seat trigger zone and press 'Action'.
2 = From drivers seat - Look to sleeper trigger zone and press 'Action'.
3 = From drivers seat - With steering centered, look over your shoulder to outside trigger zone and press 'Action'.
4 = From outside drivers door - With steering centered, look up to drivers door window and press 'Action'.
5 = From passenger seat - Look to driver seat trigger zone and press 'Action'.
6 = From passenger seat - Look to sleeper trigger zone and press 'Action'.
7 = From drivers seat - Look to dash & look down slightly to the trigger zone and press 'Action'.
8 = From drivers seat - Look to gps (windscreen or console mounted) trigger zone and press 'Action'.
Not shown on above trigger zones sketch:
Amended (9-12) 10/02/2023
9 = From sleeper area - Look up at ceiling and press 'Action' to sleep. You must already be parked on a rest icon.
10 = From sleeper area - Look down from the ceiling whilst keeping your head within ~45 degrees left/right and press 'Action' to return to the drivers seat. If your head is turned too far left/right, nothing will happen.
11 = From drivers seat - Look down between drivers seat and passenger seat (~90 degrees right LHD or ~90 left RHD & ~60 degrees down) and press 'Action' to switch to devcam. After using devcam in the usual way, press 'Action' again to switch back to outside drivers door.
12 = From drivers seat - Look down at the drivers inside door handle (~90 degrees left LHD or ~90 right RHD & ~45 degrees down) and press 'Action' to switch to outside.

Trigger zones for refuel & crank handle when using 'Action' button:
It's not possible to distinguish between different truck chassis lengths and where the fuel tank(s) are located.
This pic shows the trigger zones for drivers door (purple), refueling (yellow) and 'attach/detach' crank handle (red). Fuel and crank handle zones are the same at the passenger side. This should work for all truck types and lengths.
Image
Note: ATS fuel tanks are closer to or under the drivers door area compared to ETS but having the trigger area here would cause an 'activation' every time you exit the truck and may result in activating sleep/job select etc when it wasn't wanted.
You can still use your 'Activate' button to refuel inside or outside if you really want to.

Outside movement limits:
Enter and exit the truck via the drivers door for LHD or RHD.
The yellow line represents the 'walk' path around the truck.
Outside the drivers door is the start point when your real steering wheel is centered. Turn it left or right to 'walk' around whilst you have full VR yaw/pitch/roll/y to look where you want to.
Image
Use your real clutch pedal to move away from your truck and trailer (blue line) but keeping parallel with the yellow 'walk' path around your truck and trailer.
Useful if you want to stand back to take a screenshot from eye level, check external cab accessories or step to the side to 'walk' past a wide load on the trailer etc.
Image
Note 1: Refueling and 'look up to get back into cab' actions are disabled if the clutch pedal is pressed as you won't be next to the truck.

Amended 10/02/2023
If your truck and trailer(s) are not inline then you can use your real accelerator and brake pedals to adjust the walk path to suit.
Press Accelerator Pedal (A) to turn the path to the right.
Press Brake Pedal (B) to turn the path to the left.
Turn your real steering wheel as normal to 'walk' the adjusted path whilst keeping a constant pressure on the required pedal (see post 3 for 'stepped' options).

Image

Note 1: If your pedals have "dirty pots" then the movement will be jittery due to the fluctuating values coming from the pedals potentiometers.
Note 2: The adjustment point where the path turns is fixed to avoid 'walking' through your truck.
Note 3: If your truck & trailer(s) are not inline and you 'walk' into the side of your trailer, you'll walk straight through it. It's not ideal but the game code reacts to collision data in a way that would feel uncomfortable when wearing a VR headset.
Note 4: Extra 'walk' options available on post 3.
Last edited by JHTrucker on October 18th, 2024, 5:53 pm, edited 23 times in total.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
Extra Cameras: viewtopic.php?p=46034#p46034
User avatar
JHTrucker
Expert
Posts: 1356
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: VR Driving Enhancements

Post by JHTrucker » November 25th, 2022, 4:29 pm

Quick start guide
This is the easiest way to test if you want to use VRDE or not.
By using this 'quick start' you'll need to re-setup all your game controls for buttons, keys, wheel, pedals, shifter & Force Feedback settings etc.

Setup - You need to do these 3 steps:
1 - Add the VR Driving Enhancements mod.
2 - Use the supplied controls.sii file or copy/paste the manual edits in to your own file.
3 - Edit your config_local.cfg file.

New 16/10/2024 For game version 1.51+
Download VR Driving Enhancements v3.0 (1.51+).zip
OR
New 10/02/2023 For game version 1.44-1.49
Download VR Driving Enhancements v2.1 (1.44-1.49).zip

New 16/10/2024
Download VRDE controls 16-10-2024.zip

Download from this link: --> https://mega.nz/folder/G5Jl3LjD#26gi4EyHf1F-JnN0FNr0HQ

From the zip file, add the mod 'VR Driving Enhancements...' to your mod folder.

Look here --> American or Euro Truck Simulator 2\profiles\Your Profile\controls.sii
Rename your controls.sii file for backup.
Copy the supplied controls.sii file into your profile folder.
Note: The game will auto update this controls.sii file to match your game version but will retain all the VRDE line edits.

Look here --> American or Euro Truck Simulator 2\profiles\Your Profile\config_local.cfg
For ATS - Edit your config_local.cfg with the following:
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR"
uset g_eye_preset_3 "g:lhd_sleeper4"
uset g_eye_preset_2 "g:lhd_pass_seat3"
uset g_eye_preset_1 "g:LHD_VR_Headset"

For ETS2 - Edit your config_local.cfg with the following:
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR"
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR"
uset g_eye_preset_3 "g:lhd_sleeper2"
uset g_eye_preset_2 "g:lhd_pass_seat3"
uset g_eye_preset_1 "g:LHD_VR_Headset"

Note: If you use ATS mod trucks (with a hood) in ETS2 then you'll need to use these 2 line edits instead to avoid 'walking' through the truck hood.
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR"

Start the game and add the mod 'VR Driving Enhancements' to the top of your mod manager list or test using a mod free profile first.

The above defaults are for a LHD truck with a sleeper, so choose a LHD truck to test with.

At the driving screen press '1', '2', '3' & '4' a few times.
You should jump from driving seat to passenger seat to sleeper area to outside drivers door.
You should have full game standard VR movement in the driving seat.
Look left/right/up/down in passenger seat, sleeper area and outside.
Note: Refer to first post for Passenger seat & sleeper preset details.

For best results use 'Look Action' rather than pressing 1, 2, 3 & 4:
Use the VRDE menu to assign a suitable 'Action' button. Default is 'numpad multiply'.

From the driving seat, look at the passenger seat and press 'Action'. Passenger seat. Now look back at the drivers seat and press 'Action'.
Note: Refer to the first post for 'Look Action' descriptions and trigger points.

Now re-setup your controls for steering & pedals etc but don't assign any controls to functions shown as 'complex', see post 4 (Q & A Section).
Refer to the first post for assigning buttons to windows and suspension.

Don't click 'Reset to default' at the bottom of the keys/buttons & controller menu's as that will remove the VRDE line edits!
You can click 'Force Feedback - Reset to defaults' if required.

'Activate' is game default 'enter key', it can be changed to your preferred key/button, see post 4 (Q & A Section).

That's it, if you need help, just ask.

==============================================================================

Manually adding VRDE edits to your own controls.sii file:

The following lines should be in this format:
config_lines[???]: "mix name `...VRDE code...`"
For example: Missing the " from the end of the line will prevent the game from loading the controls.sii file and then it'll reset the whole file back to game defaults.
Take your time to carefully copy/paste all the required line edits.

Note: The line numbers are different between game versions. The numbers shown are from my 1.44 version, yours may be different.
Just match the "mix name" and paste the highlighted part into the correct line number to suit your game version.

Always copy your controls.sii file so you have a backup.

config_lines[191]: "mix cam1 `keyboard.key1?0 | ((keyboard.key2?0 | keyboard.key3?0) * ! sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_yscale * abs(sign(c_et_gv_ext - 0.01)) * c_et_head) | ((eyepause?0 * sign(deadzone(clamp(hmdpitch?0, -0.0, 0.5), 0.175))) * abs(sign(c_et_gv_ext - 0.01)) * ! sign(dclutch?0) * ! c_et_yscale * ! abs(sign(deadzone(msteering?0, 0.05))) * c_et_head) + (((eyepause?0 * ! ((abs(sign(deadzone(clamp(hmdyaw?0, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.375))) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * abs(sign(clamp(deadzone(hmdpitch?0, 0.3), -1.0, 0.0))))) * c_et_xscale * ! c_et_yscale)) * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * c_et_xscale * abs(sign(c_et_gv_ext - 0.01)) * c_et_head)`"

config_lines[192]: "mix cam2 `keyboard.key2?0 * sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head | keyboard.key2?0 * ! c_et_head`"

config_lines[193]: "mix cam3 `keyboard.key3?0 * sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head | keyboard.key3?0 * ! c_et_head`"

config_lines[194]: "mix cam4 `keyboard.key4?0 * sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head | keyboard.key4?0 * ! c_et_head`"

config_lines[195]: "mix cam5 `keyboard.key5?0 | semantical.cam5?0`"

config_lines[199]: "mix camcycle `keyboard.key9?0 * ! c_et_head`"

config_lines[200]: "mix camdbg `keyboard.key0?0 | (eyepause?0 * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * abs(sign(clamp(deadzone(hmdpitch?0, 0.3), -1.0, 0.0))) * abs(sign(deadzone(clamp(hmdyaw?0, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.375)))) * c_et_xscale * c_et_yscale * abs(sign(c_et_gv_ext - 0.01)) * c_et_head`"

config_lines[205]: "mix camzoom `(((sign(clamp(deadzone((-hmdz?0 * ! sign(abs(deadzone(hmdyaw, 0.249999)))) + (hmdz?0 * sign(abs(deadzone(hmdyaw, 0.45)))) + (abs(hmdx?0) * sign(abs(deadzone(hmdyaw, 0.2)))), (c_et_gv_inf * 0.95) * ((1 - abs(clamp(hmdyaw * 0.5, -0.125, 0.125))) * ! sign(abs(deadzone(hmdyaw, 0.224999))) + (0.875 + abs(deadzone(clamp(hmdyaw, -0.45, 0.45), 0.225) * 0.25)) * sign(abs(deadzone(hmdyaw, 0.225))))), -0.0, 1.0)) * hmdon * sign(c_et_gv_inf) * ! sign(abs(deadzone(hmdyaw, c_et_gv_res))) * c_et_xscale)) * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * c_et_head)`"

Amended 10/02/2023
config_lines[241]: "mix lookpos7 `(normalize(sel(c_jzbrake, sel(c_jibrake, -j_brake?0, j_brake?0), sel(c_jibrake, j_brake?1 * -0.5 + 0.5, j_brake?-1 * 0.5 + 0.5)), c_brake_dz) + semantical.abackward?0) * ! c_et_yscale * c_et_head`"

Amended 10/02/2023
config_lines[242]: "mix lookpos8 `(normalize(sel(c_jzthrottle, sel(c_jithrottle, -j_throttle?0, j_throttle?0), sel(c_jithrottle, j_throttle?1 * -0.5 + 0.5, j_throttle?-1 * 0.5 + 0.5)), c_throt_dz) + semantical.aforward?0) * ! c_et_yscale * c_et_head`"

config_lines[243]: "mix lookpos9 `(normalize(sel(c_jzclutch, sel(c_jiclutch, -j_clutch?0, j_clutch?0), sel(c_jiclutch, j_clutch?1 * -0.5 + 0.5, j_clutch?-1 * 0.5 + 0.5)), c_clutch_dz) + semantical.clutch?0) * ! c_et_yscale * c_et_head`"

config_lines[278]: "mix headtron `hmdon * abs(sign(c_et_gv_ext - 0.01)) | ! c_et_head`"

Amended 10/02/2023
config_lines[279]: "mix headtryaw `((((((sel(hmdon, hmdyaw, 0) + (sign(0.5 - c_et_pos) * 10.0 * c_et_hv_mode) + (sign(0.5 - c_et_pos) * 2.0 * ! c_et_hv_mode) + (sign(0.5 - c_et_pos) * 2.0 * ! c_et_hv_mode * abs(sign(deadzone(clamp(hmdx, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.4))) * ! sign(c_et_gv_end)) + (sign(0.5 - c_et_pos) * 2.0 * ! c_et_hv_mode * abs(sign(deadzone(clamp(hmdx, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.4))) * sign(c_et_gv_end) * ! c_ht_on)) * c_et_yscale) + (sel(hmdon, hmdyaw, 0) + (sign(0.5 - c_et_pos) * 7.0)) * ! c_et_yscale) * c_et_xscale) + ((((-c_et_hv_exp + 3.0) * 0.5) + hmdyaw - (sign(0.5 - c_et_pos) * 2.0)) * ! c_et_xscale)) * sign(c_et_gv_ext) * c_et_head) + (sel(hmdon, hmdyaw, 0) * ! c_et_head)`"

config_lines[280]: "mix headtrpitch `((((sel(hmdon, hmdpitch, 0)) * c_et_xscale) + ((((c_etwm_pitsc - 2.5) * 0.2) + sel(hmdon, hmdpitch, 0)) * ! c_et_xscale)) * sign(c_et_gv_ext) * c_et_head) + (sel(hmdon, hmdpitch, 0) * ! c_et_head)`"

config_lines[281]: "mix headtrroll `(sel(hmdon, hmdroll, 0))`"

Amended 10/02/2023
config_lines[282]: "mix headtrx `(((((((((sign(msteering + abs(msteering))) * abs((0.0 - (abs(deadzone(clamp(msteering * 4, -1.0, 1.0), 0.5)))) * 3.9 * (1 + (c_et_hv_end * 0.1) + (dclutch * 2.4))) - (1.35 * (1 + (c_et_hv_end * 0.1 * ! (c_et_gv_exp - 1)) + (dclutch * 4)))) * ! c_et_pos) + (((sign(msteering - abs(msteering))) * abs((0.0 - (abs(deadzone(clamp(msteering * 4, -1.0, 1.0), 0.5)))) * 3.9 * (1 + (c_et_hv_end * 0.1) + (dclutch * 2.4))) + (1.35 * (1 + (c_et_hv_end * 0.1 * ! (c_et_gv_exp - 1)) + (dclutch * 4)))) * c_et_pos) + mpedals + (((clamp(sel(hmdon, -hmdx, 0), -0.25 - (0.75 * (sign(-sign(msteering - 0.15) + 1.0))), 0.25 + (0.75 * (sign(sign(msteering - 0.2) + 1.0)))) * ! c_et_pos * ! (c_et_gv_exp - 1)) + (clamp(sel(hmdon, -hmdx, 0), -0.25 - (0.75 * (sign(-sign(msteering + 0.2) + 1.0))), 0.25 + (0.75 * (sign(sign(msteering + 0.15) + 1.0)))) * c_et_pos * ! (c_et_gv_exp - 1)) + (sel(hmdon, -hmdx, 0) * (c_et_gv_exp - 1))) * (1.0 - abs(clamp(deadzone(msteering * 8, 0.15), -1.0 * c_et_pos, 1.0 * ! c_et_pos)) + abs(clamp(deadzone(msteering * 3, 0.8), -1.0 * c_et_pos, 1.0 * ! c_et_pos))) * c_et_hv_end)) * ! c_et_yscale) + (sel(hmdon, hmdx, 0) * c_et_yscale * ! sign(c_et_gv_end)) + (((clamp(sel(hmdon, hmdx, 0), -(! c_ht_on + (c_et_gv_end * 0.5 * c_ht_on)), 1.0) * ! c_et_pos) + (clamp(sel(hmdon, hmdx, 0), -1.0, (! c_ht_on + (c_et_gv_end * 0.5 * c_ht_on))) * c_et_pos)) * c_et_yscale * sign(c_et_gv_end) * ! c_et_hv_mode)) * c_et_xscale) + ((((c_et_yawsc - 2.5) * 0.8) + clamp(hmdx, -0.2 - (0.4 * ! c_et_pos), 0.2 + (0.4 * c_et_pos)) * ! sign(c_etwm_yawsc)) * ! c_et_xscale)) * sign(c_et_gv_ext) * c_et_head) + (sel(hmdon, hmdx, 0) * ! c_et_head)`"

config_lines[283]: "mix headtry `((((((-0.8 + clamp(hmdy, -1.0, 1.0)) * ! c_et_yscale) + (sel(hmdon, hmdy, 0) * c_et_yscale * ! sign(c_et_gv_end)) + (clamp(sel(hmdon, hmdy, 0), -0.1 , 0.3) * c_et_yscale * sign(c_et_gv_end) * ! c_et_hv_mode)) * c_et_xscale) + ((((c_et_pitchsc - 2.5) * 0.45) + clamp(hmdy, -0.1, 0.5) * ! sign(c_etwm_yawsc)) * ! c_et_xscale)) * sign(c_et_gv_ext) * c_et_head) + (sel(hmdon, hmdy, 0) * ! c_et_head)`"

config_lines[284]: "mix headtrz `((((((-0.1 - abs(clamp(-msteering * 2, -0.25 * ! c_et_pos, 0.25 * c_et_pos) * ((14 * c_et_zscale) + (dclutch * 50 * (abs(clamp(msteering * 2, -0.375, 0.375)) - abs(deadzone(clamp(msteering * 2, -0.625, 0.625), 0.375))))) * ! c_et_yscale) + abs(deadzone(clamp(-msteering * 1.25, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.75) * (3.75 * c_et_zscale) * ! c_et_yscale) + abs(deadzone(msteering, (0.25 * (sign(msteering - (msteering * 2) + abs(msteering))) * c_et_pos) + (0.25 * (-sign(msteering - (msteering * 2) - abs(msteering))) * ! c_et_pos)) * 28) * ! sign((sign(abs(1.01 - c_et_zscale)) + sign(abs(0.61 - c_et_zscale))) - 1) + (clamp(sel(hmdon, -hmdz, 0), -0.25, 0.25) * c_et_hv_end)) * ! c_et_yscale) + (sel(hmdon, hmdz, 0) * c_et_yscale * ! sign(c_et_gv_end)) + (clamp(sel(hmdon, hmdz, 0), -0.55 , 0.1) * c_et_yscale * sign(c_et_gv_end) * ! c_et_hv_mode)) * c_et_xscale) + (((c_etwm_yawsc * 0.5) + clamp(hmdz, -0.5, 0.05) * ! sign(c_etwm_yawsc)) * ! c_et_xscale)) * sign(c_et_gv_ext) * c_et_head) + (sel(hmdon, hmdz, 0) * ! c_et_head)`"

config_lines[285]: "mix headtrwmon `hmdon * sign(abs(sign(c_et_gv_ext - 0.01)) + ! c_et_head)`"

AMENDED 16/10/2024
*** Game version 1.44-1.49 ***
config_lines[295]: "mix steering `(dsteering - (pow(normalize(abs(sel(c_jisteer, -j_steer?0, j_steer?0)), c_steer_dz), (1.0 + c_steer_func * 0.5)) * sign(sel(c_jisteer, -j_steer?0, j_steer?0))) - semantical.steering?0) * sign((c_et_xscale * c_et_yscale) + ! c_et_head)`"
OR
*** Game version 1.51+ ***
config_lines[295]: "mix steering `(dsteering - memory(j_steer_c?1, (pow(normalize(abs(sel(c_jisteer, -j_steer?0, j_steer?0)), c_steer_dz), (1.0 + c_steer_func * 0.5)) * sign(sel(c_jisteer, -j_steer?0, j_steer?0)))) - semantical.steering?0) * sign((c_et_xscale * c_et_yscale) + ! c_et_head)`"

config_lines[296]: "mix msteering `((-mouse.rel_position.x?0 * c_msens) * ! c_et_head) + (-sel(c_jisteer, -j_steer?0, j_steer?0) * c_et_head)`"

Amended 10/02/2023
config_lines[297]: "mix mpedals `((-mouse.rel_position.y?0 * c_msens) * ! c_et_head) + ((((lookpos7?0 * 14 * deadzone(clamp(-msteering, -0.0, 1.0), ((0.25 - (0.05 * ! sign(abs(0.61 - c_et_zscale)))) * ! c_et_pos) + ((0.538 - (0.063 * ! sign(abs(0.61 - c_et_zscale)))) * c_et_pos))) + (lookpos7?0 * 14 * deadzone(clamp(msteering, -0.0, 1.0), ((0.4 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * ! c_et_pos) + (0.1 * c_et_pos))) + (lookpos8?0 * 14 * -deadzone(clamp(-msteering, -0.0, 1.0), (0.1 * ! c_et_pos) + ((0.4 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * c_et_pos))) + (lookpos8?0 * 14 * -deadzone(clamp(msteering, -0.0, 1.0), ((0.538 - (0.063 * ! sign(abs(0.61 - c_et_zscale)))) * ! c_et_pos) + ((0.25 - (0.05 * ! sign(abs(0.61 - c_et_zscale)))) * c_et_pos))))) * sign(clutch) * ! sign(dclutch) * ! c_et_yscale * ! c_et_gv_end * c_et_head) + ((((((sign(normalize(lookpos7?0, 0.25)) * 0.25) + (sign(normalize(lookpos7?0, 0.5)) * 0.25) + (sign(normalize(lookpos7?0, 0.75)) * 0.25) + (sign(normalize(lookpos7?0, 0.95)) * 0.25)) * 14 * deadzone(clamp(-msteering, -0.0, 1.0), ((0.25 - (0.05 * ! sign(abs(0.61 - c_et_zscale)))) * ! c_et_pos) + ((0.538 - (0.063 * ! sign(abs(0.61 - c_et_zscale)))) * c_et_pos))) + (((sign(normalize(lookpos7?0, 0.25)) * 0.25) + (sign(normalize(lookpos7?0, 0.5)) * 0.25) + (sign(normalize(lookpos7?0, 0.75)) * 0.25) + (sign(normalize(lookpos7?0, 0.95)) * 0.25)) * 14 * deadzone(clamp(msteering, -0.0, 1.0), ((0.4 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * ! c_et_pos) + (0.1 * c_et_pos))) + (((sign(normalize(lookpos8?0, 0.25)) * 0.25) + (sign(normalize(lookpos8?0, 0.5)) * 0.25) + (sign(normalize(lookpos8?0, 0.75)) * 0.25) + (sign(normalize(lookpos8?0, 0.95)) * 0.25)) * 14 * -deadzone(clamp(-msteering, -0.0, 1.0), (0.1 * ! c_et_pos) + ((0.4 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * c_et_pos))) + (((sign(normalize(lookpos8?0, 0.25)) * 0.25) + (sign(normalize(lookpos8?0, 0.5)) * 0.25) + (sign(normalize(lookpos8?0, 0.75)) * 0.25) + (sign(normalize(lookpos8?0, 0.95)) * 0.25)) * 14 * -deadzone(clamp(msteering, -0.0, 1.0), ((0.538 - (0.063 * ! sign(abs(0.61 - c_et_zscale)))) * ! c_et_pos) + ((0.25 - (0.05 * ! sign(abs(0.61 - c_et_zscale)))) * c_et_pos)))))) * sign(clutch) * ! sign(dclutch) * ! c_et_yscale * c_et_gv_end * c_et_head`"

AMENDED 16/10/2024
*** Game version 1.44-1.49 ***
config_lines[300]: "mix aforward `(normalize(sel(c_jzthrottle, sel(c_jithrottle, -j_throttle?0, j_throttle?0), sel(c_jithrottle, j_throttle?1 * -0.5 + 0.5, j_throttle?-1 * 0.5 + 0.5)), c_throt_dz) + semantical.aforward?0) * sign((c_et_xscale * c_et_yscale) + ! c_et_head)`"
OR
*** Game version 1.51+ ***
config_lines[300]: "mix aforward `(memory(j_throttle_c?1, normalize(sel(c_jzthrottle, sel(c_jithrottle, -j_throttle?0, j_throttle?0), sel(c_jithrottle, j_throttle?1 * -0.5 + 0.5, j_throttle?-1 * 0.5 + 0.5)), c_throt_dz)) + semantical.aforward?0) * sign((c_et_xscale * c_et_yscale) + ! c_et_head)`"

AMENDED 16/10/2024
*** Game version 1.44-1.49 ***
config_lines[301]: "mix abackward `(normalize(sel(c_jzbrake, sel(c_jibrake, -j_brake?0, j_brake?0), sel(c_jibrake, j_brake?1 * -0.5 + 0.5, j_brake?-1 * 0.5 + 0.5)), c_brake_dz) + semantical.abackward?0) * sign((c_et_xscale * c_et_yscale) + ! c_et_head)`"
OR
*** Game version 1.51+ ***
config_lines[301]: "mix abackward `(memory(j_brake_c?1, normalize(sel(c_jzbrake, sel(c_jibrake, -j_brake?0, j_brake?0), sel(c_jibrake, j_brake?1 * -0.5 + 0.5, j_brake?-1 * 0.5 + 0.5)), c_brake_dz)) + semantical.abackward?0) * sign((c_et_xscale * c_et_yscale) + ! c_et_head)`"

config_lines[304]: "mix dclutch `((lookpos9?0 * 1.5 * ! c_et_gv_end) + (((sign(deadzone(lookpos9?0, 0.25)) * 0.25) + (sign(deadzone(lookpos9?0, 0.5)) * 0.25) + (sign(deadzone(lookpos9?0, 0.75)) * 0.25) + (sign(deadzone(lookpos9?0, 0.95)) * 0.25)) * c_et_gv_end)) * ! c_et_yscale * c_et_head`"

AMENDED 16/10/2024
*** Game version 1.44-1.49 ***
config_lines[305]: "mix clutch `(normalize(sel(c_jzclutch, sel(c_jiclutch, -j_clutch?0, j_clutch?0), sel(c_jiclutch, j_clutch?1 * -0.5 + 0.5, j_clutch?-1 * 0.5 + 0.5)), c_clutch_dz) + semantical.clutch?0) + (! c_et_yscale * c_et_head)`"
OR
*** Game version 1.51+ ***
config_lines[305]: "mix clutch `(memory(j_clutch_c?1, normalize(sel(c_jzclutch, sel(c_jiclutch, -j_clutch?0, j_clutch?0), sel(c_jiclutch, j_clutch?1 * -0.5 + 0.5, j_clutch?-1 * 0.5 + 0.5)), c_clutch_dz)) + semantical.clutch?0) + (! c_et_yscale * c_et_head)`"

Activate button - keyboard.enter?0 is game default, if you have something different then it's ok to keep it, just add the rest of the line.
config_lines[306]: "mix activate `keyboard.enter?0 | ((eyepause?0 * (sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.04) * ! sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.115)) * ! c_et_pos) | sign(deadzone(clamp(msteering, -0.0, 1.0), 0.35 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * ! sign(deadzone(clamp(msteering, -0.0, 1.0), 0.43 - (0.038 * ! sign(abs(0.61 - c_et_zscale))))) * ! c_et_pos) | sign(deadzone(clamp(msteering, -0.0, 1.0), 0.04) * ! sign(deadzone(clamp(msteering, -0.0, 1.0), 0.115)) * c_et_pos) | sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.35 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * ! sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.43 - (0.038 * ! sign(abs(0.61 - c_et_zscale))))) * c_et_pos)) * ! sign(dclutch) * ! c_et_yscale * abs(sign(c_et_gv_ext - 0.01)) * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)) | (eyepause?0 * sign(clamp(deadzone(hmdpitch?0 + ((c_etwm_pitsc - 2.5) * 0.2), 0.3), -0.0, 0.5)) * sign(deadzone(c_etwm_yawsc, 0.5)) * ! c_et_xscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1))) * c_et_head`"

Trailer attach/detach button - keyboard.t?0 is game default, if you have something different then it's ok to keep it, just add the rest of the line.
config_lines[313]: "mix attach `keyboard.t?0 | (eyepause?0 * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * (sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.18) * ! sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.37)) * ! c_et_pos) | sign(deadzone(clamp(msteering, -0.0, 1.0), 0.48 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * ! sign(deadzone(clamp(msteering, -0.0, 1.0), 0.615 - (0.038 * ! sign(abs(0.61 - c_et_zscale))))) * ! c_et_pos) | sign(deadzone(clamp(msteering, -0.0, 1.0), 0.18) * ! sign(deadzone(clamp(msteering, -0.0, 1.0), 0.37)) * c_et_pos) | sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.48 - (0.038 * ! sign(abs(0.61 - c_et_zscale)))) * ! sign(deadzone(clamp(-msteering, -0.0, 1.0), 0.615 - (0.038 * ! sign(abs(0.61 - c_et_zscale))))) * c_et_pos)) * abs(sign(deadzone(clamp(hmdpitch, -1.0, 0.0), 0.05))) * ! c_et_yscale * abs(sign(c_et_gv_ext - 0.01))) * c_et_head`"

config_lines[314]: "mix frontsuspup `(camwalk_crou?0 * c_ht_on * ! sign(c_et_gv_end) | camwalk_left?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[315]: "mix frontsuspdwn `(camwalk_crou?0 * ! c_ht_on * ! sign(c_et_gv_end) | camwalk_righ?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[316]: "mix rearsuspup `(camwalk_crou?0 * c_ht_on * ! sign(c_et_gv_end) | camwalk_left?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[317]: "mix rearsuspdwn `(camwalk_crou?0 * ! c_ht_on * ! sign(c_et_gv_end) | camwalk_righ?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[339]: "mix rwinopen `(camwalk_run?0 * ! c_ht_on * ! sign(c_et_gv_end) | camwalk_back?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[340]: "mix rwinclose `(camwalk_run?0 * c_ht_on * ! sign(c_et_gv_end) | camwalk_for?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[341]: "mix lwinopen `(camwalk_run?0 * ! c_ht_on * ! sign(c_et_gv_end) | camwalk_back?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[342]: "mix lwinclose `(camwalk_run?0 * c_ht_on * ! sign(c_et_gv_end) | camwalk_for?0) * c_et_xscale * c_et_yscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[343]: "mix eyecfg `keyboard.home?0`"

Dashboard display mode button - keyboard.i?0 is game default, if you have something different then it's ok to keep it, just add the rest of the line.
config_lines[375]: "mix display `keyboard.i?0 | (eyepause?0 * abs(sign(deadzone(clamp(hmdpitch, -1.0, 0.0), 0.01))) * (! sign(abs(deadzone(hmdyaw, 0.015)))) * c_et_xscale * c_et_yscale * abs(sign(c_et_gv_ext - 0.01))) * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * c_et_head`"

Amended 10/02/2023
config_lines[377]: "mix dashmapzoom `(eyepause?0 * ! abs(sign(deadzone(hmdpitch, 0.33))) * (sign(deadzone(clamp(-hmdyaw, -0.0, 1.0), 0.075) * ! sign(abs(deadzone(hmdyaw, 0.275))) * ! c_et_pos) | sign(deadzone(clamp(hmdyaw, -0.0, 1.0), 0.03) * ! sign(abs(deadzone(hmdyaw, 0.175))) * ! c_et_pos) | sign(deadzone(clamp(hmdyaw, -0.0, 1.0), 0.075) * ! sign(abs(deadzone(hmdyaw, 0.275))) * c_et_pos) | sign(deadzone(clamp(-hmdyaw, -0.0, 1.0), 0.03) * ! sign(abs(deadzone(hmdyaw, 0.175))) * c_et_pos)) * c_et_xscale * c_et_yscale * abs(sign(c_et_gv_ext - 0.01))) * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * c_et_head`"

config_lines[507]: "mix headtren `(((((lwinopen?0 * ! c_et_pos) + (lwinclose?0 * ! c_et_pos * ! c_ht_on) + (rwinopen?0 * c_et_pos) + (rwinclose?0 * c_et_pos * ! c_ht_on)) * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * sign(c_et_gv_end)) + ((camwalk_run?0 | camwalk_crou?0) * ! sign(c_et_gv_end))) * c_et_xscale * c_et_yscale * c_et_head) + ((camwalk_run?0 | camwalk_crou?0) * ! c_et_head)`"

config_lines[509]: "mix eyepause `keyboard.nummultiply?0`"

Amended 10/02/2023
config_lines[510]: "mix eyepreset1 `(keyboard.key1?0 | (eyepause?0 * sign(deadzone(clamp(hmdpitch?0, -0.0, 0.5), 0.175))) * ! sign(dclutch?0) * ! c_et_yscale * ! abs(sign(deadzone(msteering?0, 0.05))) | (eyepause?0 * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.375)) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * ! abs(sign(deadzone(hmdpitch?0, 0.125))) * ! sign(deadzone(c_etwm_yawsc, 0.4)) * ! c_et_xscale * ! c_et_pos) | (eyepause?0 * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.375)) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * ! abs(sign(deadzone(hmdpitch?0, 0.125))) * ! sign(deadzone(c_etwm_yawsc, 0.4)) * ! c_et_xscale * c_et_pos) | (eyepause?0 * ! sign(clamp(deadzone(hmdpitch?0 + ((c_etwm_pitsc - 2.5) * 0.2), 0.2), -0.0, 0.5)) * ! abs(sign(deadzone(hmdyaw?0, 0.35))) * sign(deadzone(c_etwm_yawsc, 0.5)) * ! c_et_xscale * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1))) * abs(sign(c_et_gv_ext - 0.01)) * c_et_head`"

config_lines[511]: "mix eyepreset2 `(eyepause?0 * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.375) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * ! abs(sign(deadzone(hmdpitch?0, 0.125))) * ! c_et_pos) | eyepause?0 * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.375) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * ! abs(sign(deadzone(hmdpitch?0, 0.125))) * c_et_pos) | keyboard.key2?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0)) * c_et_yscale * abs(sign(c_et_gv_ext - 0.01)) * c_et_head`"

config_lines[512]: "mix eyepreset3 `(eyepause?0 * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.7) * c_et_xscale * ! c_et_pos) | eyepause?0 * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.7) * c_et_xscale * c_et_pos) | eyepause?0 * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.7) * ! c_et_xscale * ! c_et_pos) | eyepause?0 * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.7) * ! c_et_xscale * c_et_pos) | keyboard.key3?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0)) * c_et_yscale * abs(sign(c_et_gv_ext - 0.01)) * c_et_head`"

Amended 10/02/2023
config_lines[513]: "mix eyepreset4 `((sign(eyepause?0) * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.725)) * ! abs(sign(deadzone(msteering?0, 0.035))) * c_et_xscale * c_et_yscale) | (sign(eyepause?0) * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.375)) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * abs(sign(clamp(deadzone(hmdpitch?0, 0.2), -1.0, 0.0))) * ! abs(sign(deadzone(msteering?0, 0.035))) * c_et_xscale * c_et_yscale) | keyboard.key4?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0) | camdbg?0 * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.375)) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * abs(sign(clamp(deadzone(hmdpitch?0, 0.3), -1.0, 0.0))) | ((keyboard.key2?0 | keyboard.key3?0 | keyboard.key4?0) * sign(keyboard.lshift?0 + keyboard.rshift?0) | keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0 | keyboard.key0?0)) * abs(sign(c_et_gv_ext - 0.01)) * ! c_et_pos * c_et_head`"

Amended 10/02/2023
config_lines[514]: "mix eyepreset5 `((sign(eyepause?0) * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.725)) * ! abs(sign(deadzone(msteering?0, 0.035))) * c_et_xscale * c_et_yscale) | (sign(eyepause?0) * sign(deadzone(clamp(-hmdyaw?0, -0.0, 1.0), 0.375)) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * abs(sign(clamp(deadzone(hmdpitch?0, 0.2), -1.0, 0.0))) * ! abs(sign(deadzone(msteering?0, 0.035))) * c_et_xscale * c_et_yscale) | keyboard.key4?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0) | camdbg?0 * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1) * sign(deadzone(clamp(hmdyaw?0, -0.0, 1.0), 0.375)) * ! sign(abs(deadzone(hmdyaw?0, 0.55))) * abs(sign(clamp(deadzone(hmdpitch?0, 0.3), -1.0, 0.0))) | ((keyboard.key2?0 | keyboard.key3?0 | keyboard.key4?0) * sign(keyboard.lshift?0 + keyboard.rshift?0) | keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0 | keyboard.key0?0)) * abs(sign(c_et_gv_ext - 0.01)) * c_et_pos * c_et_head`"

That's it.
Last edited by JHTrucker on October 16th, 2024, 4:31 pm, edited 25 times in total.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
Extra Cameras: viewtopic.php?p=46034#p46034
User avatar
JHTrucker
Expert
Posts: 1356
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: VR Driving Enhancements

Post by JHTrucker » November 25th, 2022, 4:29 pm

VRDE Optional functions
Note: Ensure VRDE is working as intended before making these changes.

All available outside 'walk' options:

All outside options have full HMD Yaw, Pitch, Roll & Y. Steering wheel provides X (across front of truck) & Z (down sides of truck).
Key to descriptions:
Steer walk = Turn your wheel to 'walk' around your truck.
Pedal variable left/right movement = Accelerator/brake/clutch pedals provide continuous variable movement towards or away from your truck/trailer(s).
Pedal stepped left/right movement = Accelerator/brake/clutch pedals provide stepped movement towards or away from your truck/trailer(s). Easier to control.
Wide path with x/z movement = Enables HMD to provide a small amount of X & Z movement towards or away from your truck/trailer(s).
Wide path with x unlimited/z movement = As above except unlimited X movement means you can walk into the side of your truck/trailer(s).

Look here --> American or Euro Truck Simulator 2\profiles\Your Profile\config_local.cfg

For ATS - Edit your config_local.cfg with the following:
Steer walk + Pedal variable left/right movement
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR" <-- Default used with 'Quick Start'
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR" <-- Default used with 'Quick Start'
OR
Steer walk + Pedal variable left/right movement + Wide path with x/z movement
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR_xz"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR_xz"
OR
Steer walk + Pedal variable left/right movement + Wide path with x unlimited/z movement - New 10/02/2023
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR_xz2"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR_xz2"
OR
Steer walk + Pedal stepped left/right movement
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR_step"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR_step"
OR
Steer walk + Pedal stepped left/right movement + Wide path with x/z movement
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR_stepxz"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR_stepxz"
OR
Steer walk + Pedal stepped left/right movement + Wide path with x unlimited/z movement - New 10/02/2023
uset g_eye_preset_5 "g:RHD_ATS_outside_steerVR_stepxz2"
uset g_eye_preset_4 "g:LHD_ATS_outside_steerVR_stepxz2"


For ETS2 - Edit your config_local.cfg with the following:
Steer walk + Pedal variable left/right movement
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR" <-- Default used with 'Quick Start'
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR" <-- Default used with 'Quick Start'
OR
Steer walk + Pedal variable left/right movement + Wide path with x/z movement
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR_xz"
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR_xz"
OR
Steer walk + Pedal variable left/right movement + Wide path with x unlimited/z movement - New 10/02/2023
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR_xz2"
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR_xz2"
OR
Steer walk + Pedal stepped left/right movement
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR_step"
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR_step"
OR
Steer walk + Pedal stepped left/right movement + Wide path with x/z movement
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR_stepxz"
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR_stepxz"
OR
Steer walk + Pedal stepped left/right movement + Wide path with x unlimited/z movement - New 10/02/2023
uset g_eye_preset_5 "g:RHD_ETS_outside_steerVR_stepxz2"
uset g_eye_preset_4 "g:LHD_ETS_outside_steerVR_stepxz2"

Note: If you use ATS default trucks in ETS2 then you'll need to use the ATS line edits instead to avoid 'walking' through the truck hood.

==============================================================================

Operate drivers side window only - The passenger side window will remain closed at all times

Use the 1 or 2 button window function for opening/closing driver side window only. Edits shown work for left hand drive or right hand drive trucks.

config_lines[339]: "mix rwinopen `(camwalk_run?0 * ! c_ht_on * ! sign(c_et_gv_end) | camwalk_back?0) * c_et_xscale * c_et_yscale * c_et_pos * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[340]: "mix rwinclose `(camwalk_run?0 * c_ht_on * ! sign(c_et_gv_end) | camwalk_for?0) * c_et_xscale * c_et_yscale * c_et_pos * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[341]: "mix lwinopen `(camwalk_run?0 * ! c_ht_on * ! sign(c_et_gv_end) | camwalk_back?0) * c_et_xscale * c_et_yscale * ! c_et_pos * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

config_lines[342]: "mix lwinclose `(camwalk_run?0 * c_ht_on * ! sign(c_et_gv_end) | camwalk_for?0) * c_et_xscale * c_et_yscale * ! c_et_pos * sign(abs(mouse.rel_position.x?0 + hmd.device.position.yaw?0) + 1)`"

==============================================================================
Last edited by JHTrucker on February 10th, 2023, 6:50 pm, edited 4 times in total.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
Extra Cameras: viewtopic.php?p=46034#p46034
User avatar
JHTrucker
Expert
Posts: 1356
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: VR Driving Enhancements

Post by JHTrucker » November 25th, 2022, 4:30 pm

VRDE Q & A Section:

Controller questions:
Q - VRDE doesn't work or the control.sii file changes when using a gamepad controller, can this be fixed?
A - Using the steam controller support may cause problems. I've never used it and have it disabled, that way the game will use all control functions that are specified within the games controls.sii file.
To disable steam controller support:
In Steam Library - Right Click Game - Properties - Controller - Select - Disable Steam Input

General questions:
Q - How can I change opening the VRDE menu from 'HOME' key to another key or button of my choice?
A - Change this line in controls.sii to add your preferred key or button: "mix eyecfg `keyboard.tab?0`" <--- Example using TAB key

Q - Do I need to press '1' every time I start the game?
A - No. Just when ever you open the VRDE menu and change CAM 1 to a different 'driving preset' and close it, you then have to apply that preset by pressing '1'. Note: Every time you change from/to cam 1/2/3/4 you're applying that cameras preset.

Q - Some of the menu sliders don't work.
A - Ensure you are using the correct mod version to match your game version.

Q - My game crashes to desktop every time I access the menu mod.
A - Check the statement for "This test should work for ATS/ETS2 game versions..." at the top of the first post.

Q - In the driving view my head is stuck looking back over, what's wrong?
A - You are using an 'unsupported' truck. Use one of the 'supported' trucks from the list at the top of the first post or open VRDE menu and disable VRDE code, resulting in game default controls only.
A - If the mod truck you are driving uses one of the game default interior camera files then is should be 'supported' as long as the VRDE mod is at the top of your mod manager list.

Q - How can I drive when using game default external cameras? My controls are disabled.
A - You can't as the VRDE outside 'walking' is controlled by them. You can disable VRDE code via the VRDE menu and then use external cameras to drive... but really, why would you?

Q - My head isn't blocked by the closed window and the movement is strange.
A - Ensure you have the correct LHD/RHD menu setting to suit your current truck - Driving position for LHD truck (untick) or RHD truck (tick) or select a correct 'Preset' for CAM 1.

Q - The outside view is under the passenger seat inside the truck.
A - Ensure you have the correct LHD/RHD menu setting to suit your current truck - Driving position for LHD truck (untick) or RHD truck (tick) or select a correct 'Preset' for CAM 1.

Q - I can't exit my truck using 'Look Action' with steering centered or pressing '4'. What's wrong?
A - Check config_local.cfg uset g_eye_preset_4 & 5 - Refer to post 3 for all available options.

Q - 'Look Action' doesn't work to get outside.
A - Your real steering wheel needs to be centered before looking over your shoulder and pressing 'Action' to ensure you'll be stood outside the drivers door.

Q - Using window blocking. Every time I start the game my head is blocked but the window is open.
A - At game start your head is always blocked as the controls.sii file gets no feedback from the game to set it correctly. Just press open window to get back in sync.

Q - How can I assign 'Activate' to my preferred key/buttons as it's now "Complex"?
A - Refer to below 'How to fix missing functionality' section.

Q - How can I assign 'window open/close' to my preferred key/buttons as they're now "Complex"?
A - Refer to post 1 for default window functionality and setup. Or don't use that functionality and just assign buttons as normal.

Q - How can I assign 'suspension raise/lower' to my preferred key/buttons as they're now "Complex"?
A - Refer to post 1 for default suspension functionality and setup. Or don't use that functionality and just assign buttons as normal.

Q - Why does the head movement feel strange whilst in the driving seat?
A - I think you'll need to set this to default "0" (if you have previously changed it):
Your Profile - config.cfg - uset g_hmd_no_artifical_movement "0" <- Default
Note: You can select one of the "CAM 1: ... Manual head movement" presets so that all the head movements are yours.

Q - In game version 1.51+, my truck is now driving when 'walking' around it, what's wrong?
A - Game update 1.51 automatically replaces the VRDE line edits for, "mix steering", "mix aforward", "mix abackward" & "mix clutch" with new game default ones. Just copy/paste the VRDE ones from post 2 to fix it. The game shouldn't do that again.
Note: Any profile you use that hasn't been used on game version 1.51+ will get the above problem. There's no fix required if you choose to use the supplied 'quick start' controls.sii file.

Q - In Driving Academy (1.52+) the on screen text instruction state "press 'complex' to continue", why?
A - That's asking for your 'Activate' key/button to be pressed. The VRDE code is what makes it 'complex'.

==============================================================================

How to fix missing functionality

Check that the VRDE functions are working first, before doing this, making a copy/paste mistake will break the VRDE functions or reset the controls.sii file to game default.

'Look Action' will activate refueling or sleep when you're in the sleeper area, looking at the ceiling and parked on a rest icon.
You'll therefore need an 'Activate' button for all other 'Activation' functions.

Q - How can I assign 'Activate' to my preferred key/button as it's now "Complex"?
A - Refer to post 2 for line edit --> config_lines[306]: "mix activate `keyboard.enter?0 | ...`" - Replace keyboard.enter?0 with your prefered key/button.

'Look Action' can perform the below actions without needing to assign any buttons but you'll need those buttons if you're driving an unsupported truck where VRDE has to be disabled.

Q - How can I assign 'Attach' to my preferred key/button as it's now "Complex"?
A - Refer to post 2 for line edit --> config_lines[313]: "mix attach `keyboard.t?0 | ...`" - Replace keyboard.t?0 with your prefered key/button.

Q - How can I assign 'Dashboard display mode' to my preferred key/button as it's now "Complex"?
A - Refer to post 2 for line edit --> config_lines[375]: "mix display `keyboard.i?0 | ...`" - Replace keyboard.i?0 with your prefered key/button.

Q - How can I assign 'Navigation zoom mode' to my preferred key/button as it's now "Complex"?
A - There's no default for this. Edit this line to add your preferred key at the start --> config_lines[377]: "mix dashmapzoom `your key here | ...`" - Example using 'z' key --> config_lines[377]: "mix dashmapzoom `keyboard.z?0 | (eyepause?0...`"

Q - How can I use the 1 or 2 button suspension functions after I assigned buttons over "Complex"?
A - Refer to post 2 and re-apply all these line edits:
config_lines[314]: "mix frontsuspup `...
config_lines[315]: "mix frontsuspdwn `...
config_lines[316]: "mix rearsuspup `...
config_lines[317]: "mix rearsuspdwn `...
Refer to post 1 for setup details and operation.

Q - How can I use 1 or 2 button window functions after I assigned buttons over "Complex"?
A - Refer to post 2 and re-apply all these line edits:
config_lines[339]: "mix rwinopen `...
config_lines[340]: "mix rwinclose `...
config_lines[341]: "mix lwinopen `...
config_lines[342]: "mix lwinclose `...
Refer to post 1 for setup details and operation.
Last edited by JHTrucker on October 18th, 2024, 5:59 pm, edited 8 times in total.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
Extra Cameras: viewtopic.php?p=46034#p46034
User avatar
JHTrucker
Expert
Posts: 1356
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: VR Driving Enhancements

Post by JHTrucker » November 25th, 2022, 4:30 pm

Example demo videos of what to expect using my TrackIR and TDE mod.
If you can't replicate the below videos using your VR headset and the VRDE mod & line edits, let me know!

TDE - Change to/from Drivers Seat, Passenger Seat, Sleeper & Outside.
Driver seat -> Look to Passenger side -> Press 'Action' -> Passenger seat.
Driver seat or Passenger Seat -> Look to Sleeper -> Press 'Action' -> Sleeper (position is whatever you have set for CAM 3.
Passenger seat -> Look to Driver side -> Press 'Action' -> Driver seat.
Sleeper (no look required) -> Press 'Action' -> Driver seat.


TDE - Refueling
Driver seat -> Centre real steering wheel -> Look over your shoulder to outside (window open or closed) -> Press 'Action' -> Outside.
Turn real steering wheel left/right to 'walk' along side the truck or around the front to the other side.
Look at fuel tank - Press 'Action' - Refueling - Look up at drivers door window - Press 'Action' - Drivers seat.


TDE - Trailer Pickup.
Driver seat -> Centre real steering wheel -> Look over your shoulder to outside -> Press 'Action' -> Outside.
'Walk' around front of truck and down the other side to the crank handle (if that's where it is) - Look down at it - Press 'Action' - Turn and 'walk' back around to the drivers door.
Look up to Driver door window -> Press 'Action' -> Driver seat.


TDE - Trailer delivered.
Driver seat -> Centre real steering wheel -> Look over your shoulder to outside -> Press 'Action' -> Outside.
'Walk' around front of truck and down the other side to the crank handle (if that's where it is) - Look down at it - Press 'Action' - JOB COMPLETE - Pick a new job or Continue - Desktop Drive Button - Turn and 'walk' back around to the drivers door.
Look up to Driver door window -> Press 'Action' -> Driver seat.


TDE - Truck Service.
Driver seat -> Centre real steering wheel -> Look over your shoulder to outside -> Press 'Action' -> Outside.
Press 'Activate' (as normal) to enter service.
Exit service -> Look up to Driver door window -> Press 'Action' -> Driver seat.


TDE - Play time over.
Park your truck somewhere suitable - Look at the sleeper - Press 'Action' - laid down in sleeper - Exit game.
The next time you play the game, you'll start from your bed - Press 'Action' - Drivers seat.

Note: If you need to sleep, change to sleeper and look at the ceiling then press 'action' button.
Last edited by JHTrucker on February 2nd, 2023, 7:10 pm, edited 1 time in total.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
Extra Cameras: viewtopic.php?p=46034#p46034
PDoggNZ
Posts: 4
Joined: December 30th, 2022, 4:29 am

Re: VR Driving Enhancements ATS/ETS2 1.44-1.46 - ***TEST for VR Headset users***

Post by PDoggNZ » December 30th, 2022, 4:32 am

Hey mate love the mod. When I exit cabin and am facing the trailer in VR I can only look right freely it won’t let me look left while on the left side of the truck. LHD SCS W900 should I edit the truck azimuths or will it be something to do with Tobi?

Merry Christmas btw
PDoggNZ
Posts: 4
Joined: December 30th, 2022, 4:29 am

Re: VR Driving Enhancements ATS/ETS2 1.44-1.46 - ***TEST for VR Headset users***

Post by PDoggNZ » December 30th, 2022, 4:35 am

Hey mate, when I exit the cabin and am facing the trailer outside the truck in VR I can only move my head to the right for some reason. Anytime I try turn left it gets to parrelel with the truck the entire screen moves as of it weren’t in VR.

Any help would be appreciated. Other than that the mod works great for VR. Well done
PDoggNZ
Posts: 4
Joined: December 30th, 2022, 4:29 am

Re: VR Driving Enhancements ATS/ETS2 1.44-1.46 - ***TEST for VR Headset users***

Post by PDoggNZ » December 30th, 2022, 10:58 am

I’ve also deactivated all mods that influence cameras and changed the azimuths on the w900 but nothing seems to work. It’s like it’s set to 180’ range of movement. When looking forward to the hood from the left side of I turn my head into the truck it will ping back to the rear view and not allow any movement vr related until I turn back the other way. Other than that it’s worked flawlessly.
User avatar
JHTrucker
Expert
Posts: 1356
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: VR Driving Enhancements ATS/ETS2 1.44-1.46 - ***TEST for VR Headset users***

Post by JHTrucker » December 31st, 2022, 3:40 pm

@PDoggNZ - Thanks for taking the time to try this and reply!

I'm trying to understand your problem... whilst simulating VR with my TrackIR it all works as expected and so the difference is if the VR .exe does something different to the regular game .exe.

Just to clarify, Tobii isn't used in anyway, it's just the variables made available that i'm using to work the menu and line edits.
When you are stood outside your truck you are no longer using interior cam files and so editing azimuths won't change anything.
Outside is using a modified CAM 5... can you try a different truck other than w900 as that is the only truck in the game that uses it's own CAM 5 file.

Have you watched all the TDE demo videos, so you know what to expect from all features?
Does your head get blocked by the closed window?
Can you use 'look action' button to change to passenger seat/sleeper area?
Does the VRDE menu open so you can change presets etc?
And the other stuff...

Just a thought, when you exit your truck, you are looking to your far left, press 'action', it then changes to cam 5 and you are still looking far left and so you need to look to the right so you are looking towards the front and keep turning right as you end up looking down the side of the trailer. This 'down the side of the trailer' is the centre point, you can look left/right 180 degree from here.
Look at my refueling video for example and watch my head movement once outside the truck door, I always turn to the right as I can't turn left at that point and if I could... using TrackIR I wouldn't be able to see my monitor any more.

Or, if you look straight ahead from the driver seat, cam 1, press '4' to exit truck, you'll be looking straight back down the side of your trailer, that's the outside centre point from which you can look 180 degree left/right.

I think because you use VR you're expecting to just turn your head in any direction as you're always facing your screen but there's a 180 degrees limit left/right.
I can increase the limit but it would speed up your on screen movement meaning your VR view would be turning quicker than your real head movement and probably make you feel sick.

One last thought, in VR without my VRDE mod activated can you use CAM 5 (lean out of the window view)? or is it not available? If VR can't use game default CAM 5 then that's the problem.

I hope that helps?
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
Extra Cameras: viewtopic.php?p=46034#p46034
PDoggNZ
Posts: 4
Joined: December 30th, 2022, 4:29 am

Re: VR Driving Enhancements ATS/ETS2 1.44-1.46 - ***TEST for VR Headset users***

Post by PDoggNZ » January 1st, 2023, 4:45 am

With mod deactivated and default control.sii the cam 5 works fine with full 360’ rotation on the w900 scs. Changed to scs 389 Pete cam 5 and same story, full 360’ movement. With controls.sii only mod deactivate in the 389 Pete cam 1 goes to cab, cam 2-3 does nothing (because mods deactivated) cam 4 shows the original cam 5 view. So it’s moved over one from 5 to 4. With Mod activated the passenger seat and sleep work, the look over shoulder to exit cab works and the walk works but the default camera position for anything other than cabin view is pointing to the rear. External chase view and all are defaulted to the rear. With mod active if I press cam 5 (#5) nothing happens when I press cam 4 it takes me outside the truck. Head does not get blocked because i haven’t got it set to block window in the mod menu (which shows up fine) in Cam 4 I have only 180’ of movement where as in your refueling demonstration you have 360.
Post Reply