Page 1 of 1

Multiple Universal Cameras v5.0 (Internal & External with look function) for ATS & ETS2 1.38-1.50 - Updated 18/05/2024

Posted: September 2nd, 2021, 5:51 pm
by JHTrucker
Note: This isn't a mod to just drop into your mod manager, you'll also need to follow instructions and edit your controls.sii file.

If you want internal cameras only use "Extra Cabin Cameras" viewtopic.php?p=44428#p44428
If you want external cameras only use "Multiple Universal External Cameras" viewtopic.php?p=33833#p33833
Otherwise read on.


------------------------------------------------------------------------------------------

UPDATED 12/04/2022 - New menu mod v2 and associated line edits as date highlighted. What's new? Look here: viewtopic.php?p=50488#p50488
UPDATED 17/05/2022 - New menu mods v2.1 (1.38-143) & v3.0 (1.44). What's new? Look here: viewtopic.php?p=50870#p50870
UPDATED 28/06/2022 - Improvements for CAM 1 camera movement with the associated line edits date highlighted. What's new? Look here: viewtopic.php?f=23&t=2179&p=51680#p51680
UPDATED 12/08/2022 - New menu mod v4.0 (1.45). What's new? Look here: viewtopic.php?p=52728#p52728
UPDATED 24/11/2022 - New menu mods v2.2 (1.38-1.43), v3.1 (1.44) & v4.1 (1.45-1.46) and associated line edits as date highlighted. What's new? Look here: viewtopic.php?p=55528#p55528
UPDATED 01/12/2023 - New menu mod v4.2 (1.45+) - No actual change from v4.1, only game version reference is now 1.45+
UPDATED 18/05/2024 - New menu mod, v5.0, required to prevent a "crash to desktop" when using game version 1.50

==============================================================================
Confirmed to work for ATS/ETS2 game versions 1.38 to 1.50
The game will crash to desktop due to the new UI in game version 1.51
The Tobii Eye menu file that I need to modify to create the menu is no longer available
from the extracted 1.51 game files.
==============================================================================


This is a combination of my "Extra Cabin Cameras" & "Multiple Universal External Cameras".
You can now create internal and external cameras and assign up to 3 of them, at any one time, to CAM 6/7/8 buttons.
All your created presets from ECC or MUEC can still be used.

Problems that can't currently be fixed due to game or my limitations:
Example: Using just the standard game, select Cam 1 and press escape to open the menu. Press and hold Cam 2 key and press escape to return to driving screen. You are back to driving view but it's still on Cam 1 despite the fact you are pressing & holding Cam 2 button. Therefore the game will only change cameras when you're actually on the driving screen and not in the menu.
With the above in mind:
Unlike ECC & MUEC it's now possible to open the menu with any camera selected which may lead to selecting the wrong preset, from the top preset drop down list, for your current camera, internal preset selected on external camera and vice versa resulting in an incorrect but deliberate 'high up in the clouds' view when closing the menu.
Pressing '9' (or just open/close MUC menu) fixes this by auto switching cameras if required and will then display your chosen preset correctly.
Image
This can be avoided by following the information in the "How to temporarily use a camera preset (not assigned to CAM 6/7/8)" section below.
Note: Using CAM 6/7/8 will always switch internal to external and vice versa correctly.

The game code always sets the variable I use to specify internal (1) or external (0) cameras to '1' on every game startup.
If you left the game with an internal camera in use then it will look correct at next startup.
If you left the game with an external camera in use then you'll see a low quality dash or be 'high up in the clouds' at next startup.
Press '9' or any camera button to fix.

Note: Switching cameras using the buttons 1/2/3/4/5/6/7/8/shift+6/shift+7/shift+8 all work correctly switching from game standard or MUC internal to game standard or MUC external.

Note: Tobii Eye can't be used as this uses the Tobii Eye menu and variables and will therefore mess up your Tobii Eye setup!!!
VR isn't supported just because I assumed no one would want this for VR.


Demo (17/05/2022) - Ignore the image quality - Game on lowest graphics settings and recorded on old camera phone (720p).


Internal Cameras:
Passenger seat, Sleeper seat or Sleeper laid down.
You can switch to sleeper position before activating in game sleep... if you really want this option!
Or you can "Move To" these new cameras using your real steering wheel to move you through the cabin to your chosen camera position.
You can look around upto 90 degrees left/right & ~70 degrees up/down limited by each truck interior camera file.
Example W900 internal cameras - Some trucks have transparent seats when viewed from sleeper and/or gaps in the cabin.
Image
Example DAF 2021 XG+ 'Move To' Sleeper - Use real steering wheel for movement.
Image
Note: CAM 1 has full game standard movement. There's no edited interior camera files in the mod.

External Cameras:
These cameras have collision enabled. Meaning a high up chase camera will duck under bridges as required so you don't loose sight of your truck.
You can look around upto 180 degrees left/right & 90 degrees up/down.
Example W900 Hood camera looking around - Use analogue controller thumbstick / Look buttons / TrackIR
Image

***New 12/04/2022***
Walk around your truck:
This camera mode allows you to use your analogue controls (steering/accelerator/brake/look) to walk a path around your truck.
See "How to 'Walk Around Your Truck'" section at the bottom of this post.

***New 28/06/2022***
Optional - In the driving seat.
Press 'CAM 1' for game standard look movement.
Press 'CAM 6' (with required preset) for "always on" auto centre look movement that has the same driving view as CAM 1.
Therefore you can toggle between CAM 1 & CAM 6 for the required look movement control.

***New 12/04/2022***
Optional - Control DEVCAM using your analogue controls, as well as or instead of, the default mouse & keyboard.
See "How to control DEVCAM using your analogue controls" section at the bottom of this post.

You can use the preset 'templates' and adjust the sliders to place the camera anywhere inside or outside of the cab.
You can use this with SCS game standard trucks or mod trucks.

Requirements for use:
Attached Menu Mod and edited controls.sii & config_local.cfg files as detailed below.
At least one of the following:
Keyboard - Instant look left/right/back.
Standard game TrackIR - Look left/right/up/down & move left/right/up/down/forward/backward (TIR x/y/z) when using external chase cam's. (MUC cameras only, CAM 1 still has full 6DOF movement).
Analogue gamepad - look left/right/up/down with auto centre. Note: This works the same as my CAM 1 "Analogue look left/right/up/down auto centre" mod and so you can just apply this mod and its edits without loosing anything.
Mouse only works for the standard SCS cameras, CAM 1 & 2.

In game menu - Press shift + 9 or shift + numlock to open.
Image

Available cameras:
CAM 1 - Game standard driving view.
CAM 2 - Game standard chase view.
CAM 3 - Game standard top down view.
CAM 4 - Game standard roof view.
CAM 5 - New 'Look Behind' view.
CAM 6 - New - Assign an internal or external preset via the menu.
CAM 7 - New - Assign an internal or external preset via the menu.
CAM 8 - New - Assign an internal or external preset via the menu.
CAM 9 - Cam Cycle Disabled. It doesn't work with new cameras.
CAM 'Shift + 6' - Game standard Bumper view.
CAM 'Shift + 7' - Game standard On-Wheel view.
CAM 'Shift + 8' - Game standard Drive-By view.

Preset Templates (EXT = External & INT = Internal):
Cam 6/7/8 EXTernal - Adjust Sliders & Save - Template (Origin - ground level in front of truck)
Cam 6/7/8 INTernal - LHD - Adjust Sliders & Save - Template (Origin - LHD drivers seat)
Cam 6/7/8 INTernal - RHD - Adjust Sliders & Save - Template (Origin - RHD drivers seat)

EXT - Bumper - Look Left/Right 90 Degrees - Template
EXT - Bumper - Look Left/Right Down The Side - Template
EXT - Chase - Far - Template
EXT - Chase - Far - 'No look left/right height reduction' - Template
EXT - Chase - Near - Template
EXT - Chase - Near - Look Left/Right 90 Degrees - Template
EXT - Chase - Very Far - Template
EXT - Chase - Very Far & High - Template
EXT - Chase - Very Far - 'No look left/right height reduction' - Template
EXT - Chase - Offset Left Side - Template
EXT - Chase - Offset Right Side - Template
EXT - Drone - Template
EXT - Drone - Very High - Template
EXT - Drone - Ultra High - Template
EXT - Hood - Look Left/Right 90 Degrees - Template
EXT - Hood - Look Left/Right Down The Side - Template
EXT - Hood - Look Left/Right Down The Side - Steer Look - Template
EXT - Look Behind - High - Template
EXT - Look Behind - Offset Left Side - Template
EXT - Look Behind - Offset Right Side - Template
EXT - Lean Out Drivers Window - LHD Template
EXT - Lean Out Drivers Window - RHD Template
EXT - Refuel - LHD Template
EXT - Refuel - RHD Template
EXT - Roof - Look Left/Right Down The Side - Template
EXT - Roof - Look Left/Right Down The Side - Steer Look - Template
EXT - Roof - Look Left/Right Straight Back - Template
EXT - Walk Around Truck - xHD xxx - Far Distance ***New 12/04/2022***
EXT - Walk Around Truck - xHD xxx - Near Distance ***New 12/04/2022***
EXT - Walk Around Truck - xHD xxx - Offset - Far Distance ***New 12/04/2022***
EXT - Walk Around Truck - xHD xxx - Offset - Near Distance ***New 12/04/2022***
EXT - Walk Facing Truck - xHD xxx - Far Distance ***New 24/11/2022***
EXT - Walk Facing Truck - xHD xxx - Near Distance ***New 24/11/2022***
EXT - Walk Facing Truck - xHD xxx - Offset - Far Distance ***New 24/11/2022***
EXT - Walk Facing Truck - xHD xxx - Offset - Near Distance ***New 24/11/2022***
Note 1: 'xHD' is shown as LHR or RHD in menu - 'xxx' is shown as ATS or ETS in menu - Total of 24 'walk' presets.
Note 2: 'Walk Around Truck' & 'Walk Facing Truck' aren't templates you can make changes to, like the other presets, they're camera modes only.
Note 3: 'Offset' versions allow you to stand further away from your truck and trailer(s).
Note 4: 'Walk Around Truck' presets will keep your head facing back down the side of the truck as you turn your steering to walk around it.
Note 5: 'Walk Facing Truck' presets will keep your head facing the truck as you turn your steering to walk around it.

INT - LHD ATS Passenger Seat Template
INT - LHD ATS 48 Sleeper Laid down Template LHS (Head Left Hand Side)
INT - LHD ATS 48 Sleeper Laid down Template RHS (Head Right Hand Side)
INT - LHD ATS 48 Sleeper Seat Template
INT - LHD ATS 72 Sleeper Laid down Template LHS (Head Left Hand Side)
INT - LHD ATS 72 Sleeper Laid down Template RHS (Head Right Hand Side)
INT - LHD ATS 72 Sleeper Seat Template

INT - LHD ETS Passenger Seat Template
INT - LHD ETS Sleeper Laid down Template LHS (Head Left Hand Side)
INT - LHD ETS Sleeper Laid down Template RHS (Head Right Hand Side)
INT - LHD ETS Sleeper Seat 1 Template
INT - LHD ETS Sleeper Seat 2 Template

INT - RHD ETS Passenger Seat Template
INT - RHD ETS Sleeper Laid down Template LHS (Head Left Hand Side)
INT - RHD ETS Sleeper Laid down Template RHS (Head Right Hand Side)
INT - RHD ETS Sleeper Seat 1 Template
INT - RHD ETS Sleeper Seat 2 Template
Note: 'Seat 1 Template' is sat on the bed between the front seats whereas 'Seat 2 Template' is on the end of the bed.

Example Presets (supplied in "eye_tracking_presets" folder):
EXT - Bumper - Kenworth W900
EXT - Hood - ETS LHD ***New 12/04/2022***
EXT - Hood - ETS RHD ***New 12/04/2022***
EXT - Hood - Freightliner Cascadia 2019
EXT - Hood - International Lonestar
EXT - Hood - Kenworth T680
EXT - Hood - Kenworth W900
EXT - Hood - Mach Anthem
EXT - Hood - Peterbilt 389
EXT - Hood - Peterbilt 579
EXT - Hood - Westernstar 49x
EXT - Hood - Volvo VNL
EXT - Roof - Peterbilt 389
EXT - Roof - Kenworth W900
Note: Externally ATS truck cabs are very different shapes and sizes whereas ETS2 truck cabs are all very similar dimensions. You can therefore just use the 'Templates' without having to save a preset for each ETS2 truck if you want to.

LHD Freightliner Cascadia 2019 Move To Passenger Seat
LHD Freightliner Cascadia 2019 Passenger Seat
LHD Freightliner Cascadia 2019 48 Sleeper Laid Down
LHD Freightliner Cascadia 2019 48 Sleeper Seat
LHD Freightliner Cascadia 2019 72 Sleeper Laid Down
LHD Freightliner Cascadia 2019 72 Sleeper Move To Laid Down LHS
LHD Freightliner Cascadia 2019 72 Sleeper Move To Laid Down RHS
LHD Freightliner Cascadia 2019 72 Sleeper Move To Microwave
LHD Freightliner Cascadia 2019 72 Sleeper Seat

LHD Scania 2016 Passenger Seat
LHD Scania 2016 Sleeper Laid Down LHS
LHD Scania 2016 Sleeper Laid Down RHS
LHD Scania 2016 Sleeper Move To Laid Down LHS
LHD Scania 2016 Sleeper Move To Laid Down RHS
LHD Scania 2016 Sleeper Seat 1
LHD Scania 2016 Sleeper Seat 2

RHD Renault T Passenger Seat
RHD Renault T Sleeper Laid Down
RHD Renault T Sleeper Seat 1
RHD Renault T Sleeper Seat 2

The menu mod is in English only - Press 'shift + 9' to open.
Here's what each option does from top to bottom - if you need to translate them.

Enable MUC code (Tick) or Disable MUC code (Untick) then remove this mod.
***Only untick to disable code & remove menu mod if you require a mod free profile with game standard cameras***

Select a 'Preset' then adjust sliders to suit & Save '+' - [Drop down list]

EXT Steer Look : 1.00=90 Degrees Left / Right <-- Use with a steering wheel for best results.

Move : INT Left=0.0 - Driving Seat=2.5 - Right=5.0 : EXT Left=0.0 - Centre=2.5 - Right=5.0

Move : INT Low=0.0 - Driving Seat=2.5 - High=5.0 : EXT Just above ground=0.0 - Very High=5.0

Move : INT Driving Seat=0.0 - Behind=5.0 : EXT In Front of Truck=0.0 - Far Behind=5.0

Pitch : 90 Degrees Down=0.0 - Level=2.5 - 90 Degrees Up=5.0 (Truck cam only allows ~70 degrees (3.9) internally)

Rotate : INT 90 Degrees (EXT 180) Left=1.0 - Centre=3.0 - INT 90 Degrees (EXT 180) Right=5.0

INT: Enable 'Move to camera location' - Adjust sliders first - TICK & SAVE - Centre real steering wheel & turn to passenger side.
***See below "How to 'Move to camera location'" for more info***
OR
EXT: Auto move camera position when looking left / right - Useful for chase cam views to get closer to truck at junctions.
***See note below for extra info on 'Auto move camera' option.***

INT: LHD Truck (Untick) or RHD Truck (Tick) - Set this to ensure 'Move to camera location' works correctly.
OR
EXT: Look movement - Half (untick) - Full (tick) : 'Half' is useful to prevent the camera rotating back through the truck (eg. Bumper).
***See note below for extra info on 'Look Movement' option.***

Cam 6 - Select a 'Preset' from the list ---> - [Drop down list]

Cam 7 - Select a 'Preset' from the list ---> - [Drop down list]

Cam 8 - Select a 'Preset' from the list ---> - [Drop down list]

Setup - You need to do these 3 steps:
1 - Add the correct menu mod for your game version.
2 - Edit your controls.sii file or use the supplied one.
3 - Edit your config_local.cfg file.

***New 18/05/2024***
Add the mod "Multiple Universal Cameras.scs" to your mod folder.
Multiple Universal Cameras v2.2.scs for game version 1.38-1.43
Multiple Universal Cameras v3.1.scs for game version 1.44
Multiple Universal Cameras v4.21.scs for game version 1.45-1.49
Multiple Universal Cameras v5.0.scs for game version 1.50
(All mods have the exact same functions, just use the correct one for your game version).
Multiple Universal Cameras v2.2, v3.1, v4.21 & v5.0.zip --> https://mega.nz/file/q8YCWQgJ#UA-ka6MHj ... ucjLGp5y2c

Put the supplied "eye_tracking_presets" folder into your games home directory (the one with your MOD folder).
Example - C:\Users\TEST\Documents\American Truck Simulator\MOD
Example - C:\Users\TEST\Documents\American Truck Simulator\eye_tracking_presets\xxxxxx.sii etc (all camera presets are stored here).
This folder is only created by the game if you have a Tobii Eye device. If you have and don't use Tobii Eye now then just rename your original folder to "OLD eye_tracking_presets" to avoid problems.

***New 24/11/2022***
This supplied 'controls.sii' file is a game default file with all current MUC line edits applied to it.
By using this 'controls.sii' file you'll need to re-setup all your game controls for buttons, keys, wheel, pedals, shifter & Force Feedback settings etc.
Or don't use this file and apply the MUC line edits to your 'controls.sii' file instead. The choice is yours!
controls 24-11-2022 --> https://mega.nz/file/johgyJ5J#gHU51Is5w ... QyYr-XgROY
NOTE: Read the Readme.txt file within the zip for further details.

Here are the required edits for your config_local.cfg file that's in the same folder as your controls.sii file. Use notepad/wordpad etc:
(American/Euro Truck Simulator 2\profiles\Your Profile\config_local.cfg)

uset g_eye_preset_5 "g:tobii_head_only"

Set 'uset g_eye_preset_4' to setup your preferred movement control for CAM 1:***Amended 28/06/2022***
Setup when using TrackIR:
uset g_eye_preset_4 "g:tobii_4c"
OR
Setup when using analogue controller thumbstick look or button look. Both have "always on" auto centre look movement (mouse is disabled):
uset g_eye_preset_4 "g:tobii_4c"
OR
Setup when using analogue controller thumbstick look, button look or mouse look. All have game standard look movement:
uset g_eye_preset_4 "g:default"
OR
Setup when using analogue controller thumbstick look, button look or mouse look. Toggle between game standard and auto centre look movement:
uset g_eye_preset_4 "g:default"
When driving a LHD Truck - In the MUC menu set 'CAM 6' to "Cam 6/7/8 INTernal - LHD - Adjust Sliders & Save - Template".
When driving a RHD Truck - In the MUC menu set 'CAM 6' to "Cam 6/7/8 INTernal - RHD - Adjust Sliders & Save - Template".
Note: You can use 'CAM 6/7/8' cameras.
Press 'CAM 1' for game standard look movement (Thumbstick, Button or Mouse look).
Press 'CAM 6' for "always on" auto centre look movement that has the same driving view as CAM 1 (Thumbstick or Button look).
Therefore you can toggle between CAM 1 & CAM 6 for the required look movement control.

Set these for default CAM 6/7/8 cameras (you can change these in the MUC menu):
uset g_eye_preset_3 "g:ext_drone_uhigh"
uset g_eye_preset_2 "g:ext_chase_near"
uset g_eye_preset_1 "g:ext_hood"

Close & save.

Here are the required manual edits for your controls.sii file:
Make a backup copy of controls.sii file for safe keeping, just in case.
(American/Euro Truck Simulator 2\profiles\Your Profile\controls.sii)

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.

***Amended 12/04/2022***
config_lines[191]: "mix cam1 `keyboard.key1?0 | keyboard.key9?0 * sign(c_et_xscale + ! c_et_hv_mode) | ((keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0) * ! sign(keyboard.lshift?0 + keyboard.rshift?0) * sign(abs(c_et_gv_ext - 0.123456)) * c_et_head * c_et_xscale)`"

config_lines[192]: "mix cam2 `keyboard.key2?0 | semantical.cam2?0`" <-- This is game default

config_lines[193]: "mix cam3 `keyboard.key3?0 | semantical.cam3?0`" <-- This is game default

config_lines[194]: "mix cam4 `keyboard.key4?0 | semantical.cam4?0`" <-- This is game default

config_lines[195]: "mix cam5 `keyboard.key5?0 | keyboard.key9?0 * ! c_et_xscale | ((keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0) * ! sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head * ! c_et_xscale)`"

config_lines[196]: "mix cam6 `keyboard.key6?0 * ! c_et_head | keyboard.key6?0 * sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head`"

config_lines[197]: "mix cam7 `keyboard.key7?0 * ! c_et_head | keyboard.key7?0 * sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head`"

config_lines[198]: "mix cam8 `keyboard.key8?0 * ! c_et_head | keyboard.key8?0 * sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head`"

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

***Amended 12/04/2022***
config_lines[278]: "mix headtron `((c_et_hv_mode | (! sign(c_et_yawsc) * ! sign(c_et_pitchsc) * ! sign(c_etwm_yawsc) * ! sign(c_etwm_pitsc) * sign(c_et_hv_exp) * ! c_et_hv_mode * ! c_et_xscale)) * sign(abs(c_et_gv_ext - 0.123456)) * c_et_head) | trackiron | ! sign(abs(c_et_gv_ext - 0.123456)) * c_et_head`"

***Amended 24/11/2022***
config_lines[279]: "mix headtryaw `((((deadzone(steering, c_steer_dz ) * (c_et_gv_res * 0.5)) * c_et_hv_mode * ! lookpos1?0 * ! lookpos2?0 * ! lookpos3?0 * ! lookpos4?0 * ! lookpos5?0 * ! lookleft?0 * ! lookright?0) + (((((-c_et_hv_exp + 3.0) * 0.5 * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) + sign(lookpos1?0 + (lookleft?0 * lookright?0)) + (0.5 * lookpos5?0) + (0.25 * lookpos3?0 + (0.25 * lookpos3?0 * lookpos5?0 * c_et_pos)) + (0.375 * lookleft?0) + (-0.5 * lookpos4?0) + (-0.25 * lookpos2?0 - (0.25 * lookpos2?0 * lookpos4?0 * c_et_pos)) + (-0.375 * lookright?0)) * c_et_hv_mode) + (clamp(deadzone(pow(-sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), 3), c_lr_dz) * (0.5 + (0.5 * c_et_pos)), -0.5 - (0.5 * c_et_pos), 0.5 + (0.5 * c_et_pos)) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0) * ! trackiron * (1.0 - 0.5 * ! abs(sign(c_et_hv_exp - c_et_hv_mode)))) + clamp(sel(trackiron * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0), trackiryaw, 0), -0.5 - (0.5 * c_et_pos), 0.5 + (0.5 * c_et_pos))) * (1.0 - abs((steering * (c_et_gv_res * (0.5 + 0.5 * ! c_et_pos))) * c_et_hv_mode * ! lookpos1?0 * ! lookpos2?0 * ! lookpos3?0 * ! lookpos4?0 * ! lookpos5?0 * ! lookleft?0 * ! lookright?0 * (1.0 - 0.5 * ! abs(sign(c_et_hv_exp - 1)))))) * c_et_head * ! c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + ((((clamp((((-c_et_hv_exp + 3.0) * 0.25) * c_et_head) + sel(! trackiron, deadzone(pow(-sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), 3), c_lr_dz), 0) + sel(trackiron, trackiryaw, 0) + sel(! trackiron, (0.5 * lookpos5?0) + (-0.5 * lookpos4?0) + (0.2 * lookpos3?0) + (-0.2 * lookpos2?0) + (0.375 * lookleft?0) + (-0.375 * lookright?0), 0), (-0.5 - ! sign(8.5 - c_et_hv_exp) - ! c_et_head - ! c_et_hv_mode - (0.5 * ! sign(abs(c_et_yawsc - 2.5)) * ! sign(abs(c_et_pitchsc - 2.5)) * ! sign(c_etwm_yawsc))), (0.5 + ! sign(c_et_hv_exp + 2.5) + ! c_et_head + ! c_et_hv_mode + (0.5 * ! sign(abs(c_et_yawsc - 2.5)) * ! sign(abs(c_et_pitchsc - 2.5)) * ! sign(c_etwm_yawsc))))) * ((! c_et_hv_ac + (sign(deadzone(clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.98))) * sign(c_et_pos - 0.5) * c_et_hv_ac) + ! c_et_head)) + (((clamp(steering, -0.35 * ! c_et_pos, 0.35 * c_et_pos) * 2) - (deadzone(clamp(steering, -0.7 * ! c_et_pos, 0.7 * c_et_pos), 0.4) * 1.4) + ((-c_et_hv_exp + 3.0) * 0.25) * deadzone(clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.7) * sign(c_et_pos - 0.5)) * (c_et_hv_ac - sign(deadzone(abs(steering), 0.98))) * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp)) * c_et_hv_ac * c_et_head) + (((-c_et_hv_exp + 3.0) * 0.25) * c_et_hv_ac * (! sign(c_et_hv_exp + 2.5) + ! sign(8.5 - c_et_hv_exp)) * c_et_head)) * c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((0.375 * lookleft?0) + (0.2 * lookpos3?0) + (0.5 * lookpos5?0) + (-0.375 * lookright?0) + (-0.2 * lookpos2?0) + (-0.5 * lookpos4?0)) * ! sign(c_et_yawsc) * ! sign(c_et_pitchsc) * ! sign(c_etwm_yawsc) * ! c_et_hv_mode * ! trackiron * c_et_head) + ((lookleft?0 * lookright?0 | lookpos2?0 * lookpos3?0 | lookpos4?0 * lookpos5?0) * ! sign(abs(c_et_yawsc - 2.5)) * ! sign(abs(c_et_pitchsc - 2.5)) * ! sign(c_etwm_yawsc) * sign(0.5 - c_et_pos) * ! trackiron * c_et_head) + (((sel(trackiron, trackiryaw, 0)) + (sign(! c_et_pos - 0.5) + (((0.5 - c_et_pos) + (clamp(-msteering, -0.375 * ! c_et_pos, 0.375 * c_et_pos) * 2.667)) * c_et_hv_res) + deadzone(-sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), c_lr_dz) + (((sign(lookpos3) * 0.85) + (sign(lookpos5) * 0.35) + (sign(lookleft?0) * 0.35)) + -((sign(lookpos4) * 0.35) + (sign(lookpos2) * 0.85) + (sign(lookright?0) * 0.35))))) * ! sign(abs(c_et_gv_ext - 0.123456)) * sign(abs(c_et_pitchsc + 100.0)) * c_et_head) + ((sel(trackiron, trackiryaw, 0) + (deadzone(pow(-sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), 3), c_lr_dz))) * ! c_et_head)`"

***Amended 28/06/2022***
config_lines[280]: "mix headtrpitch `(((((-0.1 * sign(lookpos1?0 + (lookleft?0 * lookright?0))) + (((c_etwm_pitsc - ((c_etwm_pitsc - 2.28) * abs(headtryaw)) * c_et_hv_ac * ! abs(sign(c_et_hv_exp - 3.0))) - 2.5) * 0.2) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * c_et_hv_mode) + (deadzone(pow(-sel(c_jilookud, -j_look_ud?0, j_look_ud?0), 3), (c_ud_dz * ! c_et_hv_ac) + ((c_etwm_yawsc * 0.1) * c_et_hv_ac)) * (0.2 + (0.8 * c_et_pos * ! c_et_hv_ac * sign(4.0 - ! abs(sign(deadzone(c_et_yawsc - 2.5, 0.2))) - ! sign(deadzone(c_et_pitchsc, 0.4)) - ! sign(deadzone(c_etwm_yawsc, 0.99)) - ! abs(sign(c_et_hv_exp - 3.0))))) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0) * ! trackiron) + clamp(sel(trackiron * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0), trackirpitch, 0), -0.25 - (0.75 * c_et_pos * sign(4.0 - ! abs(sign(deadzone(c_et_yawsc - 2.5, 0.2))) - ! sign(deadzone(c_et_pitchsc, 0.4)) - ! sign(deadzone(c_etwm_yawsc, 0.99)) - ! abs(sign(c_et_hv_exp - 3.0)))), 0.25 + (0.75 * c_et_pos * sign(4.0 - ! abs(sign(deadzone(c_et_yawsc - 2.5, 0.2))) - ! sign(deadzone(c_et_pitchsc, 0.4)) - ! sign(deadzone(c_etwm_yawsc, 0.99)) - ! abs(sign(c_et_hv_exp - 3.0)))))) * c_et_head * ! c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((clamp((((c_etwm_pitsc - 2.5) * 0.2) * c_et_head) + deadzone(pow(-sel(c_jilookud, -j_look_ud?0, j_look_ud?0), 3), c_ud_dz) + sel(trackiron, trackirpitch, 0), -0.5, 0.5) * ((! c_et_hv_ac + (sign(deadzone(clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.98))) * sign(c_et_pos - 0.5) * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp)) * c_et_hv_ac) + ! c_et_head)) + ((((c_etwm_pitsc - 2.5) * 0.2) * deadzone(clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.5) * sign(c_et_pos - 0.5)) * (c_et_hv_ac - sign(deadzone(abs(steering), 0.98))) * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp)) * c_et_hv_ac * c_et_head) + (((c_etwm_pitsc - 2.5) * 0.2) * c_et_hv_ac * (! sign(c_et_hv_exp + 2.5) + ! sign(8.5 - c_et_hv_exp)) * c_et_head)) * c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((sel(trackiron, trackirpitch, 0)) + ((deadzone(-sel(c_jilookud, -j_look_ud?0, j_look_ud?0), c_ud_dz) * 0.5) - ((sign(lookpos5) * 0.05) + (sign(lookpos4) * 0.05)))) * ! sign(abs(c_et_gv_ext - 0.123456)) * sign(abs(c_et_pitchsc + 100.0)) * c_et_head) + (! sign(abs(c_et_pitchsc + 100.0)) * -0.5 * c_et_head) + ((sel(trackiron, trackirpitch, 0) + (deadzone(pow(-sel(c_jilookud, -j_look_ud?0, j_look_ud?0), 3), c_ud_dz))) * ! c_et_head)`"

***Amended 12/04/2022***
config_lines[281]: "mix headtrroll `(sel(trackiron & c_ht_roll, trackirroll, 0) * sign(abs(c_et_pitchsc + 100.0)) * sign(! c_et_hv_ac + ! c_et_xscale + ! c_et_head)) + ((sel(trackiron & c_ht_roll, trackirroll, 0) * (sign(deadzone(clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.98))) * sign(c_et_pos - 0.5) * c_et_hv_ac) + ((clamp(steering, -0.3 * ! c_et_pos, 0.3 * c_et_pos) - deadzone(clamp(steering, -0.5 * ! c_et_pos, 0.5 * c_et_pos), 0.3)) * 0.333 * c_et_hv_ac * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp)))) * sign(abs(c_et_gv_ext - 0.123456)) * c_et_xscale * c_et_head`"

***Amended 28/06/2022***
config_lines[282]: "mix headtrx `((((((0.0 * sign(lookpos1?0 + (lookleft?0 * lookright?0))) + ((c_et_yawsc * 3.0) - 7.5) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * c_et_hv_mode) + ((clamp(headtryaw * (1.0 + (c_etwm_yawsc * 0.1)), -0.5, 0.5) * (c_etwm_yawsc * 10)) * (1.0 - abs(deadzone(headtryaw, 0.5))) * c_et_hv_ac) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * sign(c_et_hv_exp - 1) + (((((-headtryaw + 1.0) * 25.0) * c_et_hv_ac) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * ! sign(c_et_hv_exp - 1)) + (clamp(sel(trackiron, trackirx, 0), -0.1, 0.1) * ! c_et_hv_mode) + (clamp(sel(trackiron, trackirx, 0), -1.0, 1.0) * c_etwm_yawsc * c_et_hv_mode * c_et_hv_ac * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0) * ! abs(sign(c_et_hv_exp - 3))) + (-((abs(headtryaw) - 0.4) * 3.0) * sign(deadzone(headtryaw, 0.4)) * (c_et_pos * ! c_et_hv_ac * ! abs(sign(deadzone(c_et_yawsc - 2.5, 0.2))) * ! sign(deadzone(c_et_pitchsc, 0.4)) * ! sign(deadzone(c_etwm_yawsc, 0.99)) * ! abs(sign(c_et_hv_exp - 3.0)) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)))) * c_et_head * ! c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((((((c_et_yawsc - 2.5) * 0.6) * ! c_et_hv_ac) + (clamp(-steering, -0.5 * c_et_pos, 0.5 * ! c_et_pos) - ((((c_et_yawsc - 2.5) * 0.6) - (0.5 * sign(-steering))) * deadzone(clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.5) * sign(-steering))) * c_et_hv_ac * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp))) * c_et_head) + (clamp(sel(trackiron, trackirx, 0), -0.1, 0.1) * sign(! c_et_hv_mode + ! c_et_head)) + (((c_et_yawsc - 2.5) * 0.6) * c_et_hv_ac * (! sign(c_et_hv_exp + 2.5) + ! sign(8.5 - c_et_hv_exp)) * c_et_head)) * c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((((-(((sign(msteering + abs(msteering))) * abs((0 - (abs(deadzone(clamp(msteering * 4, -1.0, 1.0), 0.5)))) * 3.9 * (1 + (dclutch * 2.4))) - (1.6 * (1 + (dclutch * 3)))) * -1)) * ! c_et_pos) + (((((sign(msteering - abs(msteering))) * abs((0 - (abs(deadzone(clamp(msteering * 4, -1.0, 1.0), 0.5)))) * 3.9 * (1 + (dclutch * 2.4))) + (1.6 * (1 + (dclutch * 3)))))) * c_et_pos))) * ! sign(abs(c_et_gv_ext - 0.123456))* sign(abs(c_et_pitchsc + 100.0)) * c_et_head) + (clamp(sel(trackiron, trackirx, 0), -0.1, 0.1) * ! c_et_head)`"

***Amended 28/06/2022***
config_lines[283]: "mix headtry `(((((2.0 * sign(lookpos1?0 + (lookleft?0 * lookright?0))) + ((((c_et_pitchsc - ((c_et_pitchsc - 0.4) * abs(headtryaw)) * c_et_hv_ac * ! abs(sign(c_et_hv_exp - 3.0))) + clamp(sel(trackiron, trackiry, 0), -c_et_pitchsc * (1.0 - abs(headtryaw * abs(sign(c_et_hv_exp - 1)))), c_et_pitchsc * (1.0 - abs(headtryaw * abs(sign(c_et_hv_exp - 1))))) * c_et_hv_mode * c_et_hv_ac) * 10.0) - 1.5) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * c_et_hv_mode) + clamp(sel(trackiron, trackiry, 0), -0.05, 0.05) * ! c_et_hv_mode) * c_et_head * ! c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((((((c_et_pitchsc - 2.5) * 0.25) * ! c_et_hv_ac) + (clamp(abs(steering), -0.0, (0.15 + (c_etwm_yawsc * 0.04))) + ((((c_et_pitchsc - 2.5) * 0.25) - ((0.15 + (c_etwm_yawsc * 0.04)) * abs(steering))) * deadzone(clamp(abs(steering), -0.0, 1.0), 0.5))) * clamp(sign(steering) * sign(c_et_pos - 0.5), -0.0, 1.0) * c_et_hv_ac * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp))) * c_et_head) + (clamp(sel(trackiron, trackiry, 0), -0.05, 0.05) * sign(! c_et_hv_mode + ! c_et_head)) + (((c_et_pitchsc - 2.5) * 0.25) * c_et_hv_ac * (! sign(c_et_hv_exp + 2.5) + ! sign(8.5 - c_et_hv_exp)) * c_et_head)) * c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((-0.8 - (! sign(abs(c_et_pitchsc + 100.0)) * 10)) - (0.8 * (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))) + clamp(sel(trackiron, trackiry, 0), -0.8, 0.1)) * ! sign(abs(c_et_gv_ext - 0.123456)) * c_et_head) + (((666 * c_et_xscale * ! c_ht_on) + (666 * ! c_et_xscale * c_ht_on)) * c_et_hv_mode * sign(abs(c_et_pitchsc + 100.0)) * c_et_head) + (clamp(sel(trackiron, trackiry, 0), -0.05, 0.05) * ! c_et_head)`"

***Amended 28/06/2022***
config_lines[284]: "mix headtrz `(((((-7.5 * sign(lookpos1?0 + (lookleft?0 * lookright?0))) + (((c_etwm_yawsc * 10.0) - 7.5) * (1.0 - (abs(clamp(deadzone(-sel(c_jilookud, -j_look_ud?0, j_look_ud?0), c_ud_dz * 2), -(1.0 - abs(headtryaw)), 0.0)) * c_et_hv_ac * ! trackiron * sign(c_et_hv_exp - 1)) + (clamp(sel(trackiron, trackirz, 0), -1.0, 0.5) * c_et_hv_ac)) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * abs(clamp(abs((headtryaw * 2) * c_et_hv_ac * sign(c_et_hv_exp - 1)), -0.0, 1.0) - 1)) * c_et_hv_mode) + (clamp(sel(trackiron, trackirz, 0), -0.2, 0.05) * ! c_et_hv_mode) - ((abs(clamp(deadzone(headtryaw, 0.5), -0.93, 0.93)) * 11) * c_et_hv_ac * sign(c_et_hv_exp - 1) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0) * ! lookpos2?0 * ! lookpos3?0 * ! lookpos4?0 * ! lookpos5?0) + abs(((((-headtryaw + 1.0) * 15.0) * c_et_hv_ac) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)) * ! sign(c_et_hv_exp - 1)) + (-abs(headtryaw) * 0.5 * (c_et_pos * ! c_et_hv_ac * ! abs(sign(deadzone(c_et_yawsc - 2.5, 0.2))) * ! sign(deadzone(c_et_pitchsc, 0.4)) * ! sign(deadzone(c_etwm_yawsc, 0.99)) * ! abs(sign(c_et_hv_exp - 3.0)) * ! lookpos1?0 * sign(! lookleft?0 + ! lookright?0)))) * c_et_head * ! c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + ((((((c_etwm_yawsc * 0.5) * ! c_et_hv_ac) + ((c_etwm_yawsc * 0.5) * (clamp(steering, -1.0 * ! c_et_pos, 1.0 * c_et_pos) * sign(c_et_pos - 0.5) * c_et_hv_ac * (sign(c_et_hv_exp + 2.5) * sign(8.5 - c_et_hv_exp))))) * c_et_head) + (clamp(sel(trackiron, trackirz, 0), -0.2, 0.05) * sign(! c_et_hv_mode + ! c_et_head)) + ((c_etwm_yawsc * 0.5) * c_et_hv_ac * (! sign(c_et_hv_exp + 2.5) + ! sign(8.5 - c_et_hv_exp)) * c_et_head)) * c_et_xscale * sign(abs(c_et_gv_ext - 0.123456))) + (((0.0 - abs(clamp(-msteering * 2, -0.25 * ! c_et_pos, 0.25 * c_et_pos) * ((14 - (5.5 * c_et_hv_ac)) + (dclutch * 50 * (abs(clamp(msteering * 2, -0.375, 0.375)) - abs(deadzone(clamp(msteering * 2, -0.625, 0.625), 0.375)))))) + abs(deadzone(clamp(-msteering * 1.25, -1.0 * ! c_et_pos, 1.0 * c_et_pos), 0.75) * (3.75 - (1.46 * c_et_hv_ac))) + 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)) * (8 + (c_et_hv_end * 100))))) * ! sign(abs(c_et_gv_ext - 0.123456)) * sign(abs(c_et_pitchsc + 100.0)) * c_et_head) + (clamp(sel(trackiron, trackirz, 0), -0.2, 0.05) * ! c_et_head)`"

***New 28/06/2022***
config_lines[285]: "mix headtrwmon `trackiron`"

***New 12/04/2022***
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(abs(c_et_gv_ext - 0.123456) + ! c_et_head)`"

***New 12/04/2022***
config_lines[296]: "mix msteering `((-mouse.rel_position.x?0 * c_msens) * sign(abs(c_et_gv_ext - 0.123456) + ! c_et_head)) + (-sel(c_jisteer, -j_steer?0, j_steer?0) * ! sign(abs(c_et_gv_ext - 0.123456)) * c_et_head)`"

***New 12/04/2022***
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(abs(c_et_gv_ext - 0.123456) + ! c_et_head)`"

***New 12/04/2022***
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)) * sign(abs(c_et_gv_ext - 0.123456) + ! c_et_head)`"

***New 12/04/2022***
config_lines[304]: "mix dclutch `((c_et_hv_sta * 15) + 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)) * 2.0 * ! sign(abs(c_et_gv_ext - 0.123456)) * c_et_head`"
OR
Alternative line edit that splits the 'walk away' movement (brake pedal/thumbstick) into 4 steps instead of a continuous, but twitchy, movement.
config_lines[304]: "mix dclutch `((c_et_hv_sta * 15) + (sign(deadzone(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), 0.25)) * 0.25) + (sign(deadzone(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), 0.5)) * 0.25) + (sign(deadzone(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), 0.75)) * 0.25) + (sign(deadzone(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), 0.95)) * 0.25)) * 2.0 * ! sign(abs(c_et_gv_ext - 0.123456)) * c_et_head`"

***New 12/04/2022***
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) + ! sign(abs(c_et_gv_ext - 0.123456)) * c_et_head`"

config_lines[379]: "mix eyecfg `modifier(shift_only, keyboard.key9?0) | modifier(shift_only, keyboard.numlock?0)`"

config_lines[507]: "mix headtren `(keyboard.key1?0 * ! c_ht_on | ((keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0) * ! sign(keyboard.lshift?0 + keyboard.rshift?0) | keyboard.key9?0) * ! c_ht_on * c_et_xscale * c_et_hv_mode | (keyboard.key2?0 | keyboard.key3?0 | keyboard.key4?0 | keyboard.key5?0 | ((keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0) * sign(keyboard.lshift?0 + keyboard.rshift?0))) * c_ht_on | ((keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0) * ! sign(keyboard.lshift?0 + keyboard.rshift?0) | keyboard.key9?0) * c_ht_on * ! c_et_xscale * c_et_hv_mode) * c_et_head`"

config_lines[510]: "mix eyepreset1 `keyboard.key6?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head`"

config_lines[511]: "mix eyepreset2 `keyboard.key7?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head`"

config_lines[512]: "mix eyepreset3 `keyboard.key8?0 * ! sign(keyboard.lshift?0 + keyboard.rshift?0) * c_et_head`"

config_lines[513]: "mix eyepreset4 `(keyboard.key1?0) * c_et_head`"

***Amended 12/04/2022***
config_lines[514]: "mix eyepreset5 `(keyboard.key2?0 | keyboard.key3?0 | keyboard.key4?0 | keyboard.key5?0 | (keyboard.key6?0 | keyboard.key7?0 | keyboard.key8?0) * sign(keyboard.lshift?0 + keyboard.rshift?0) | keyboard.key0?0 * sign(abs(c_et_gv_ext - 0.123456))) * c_et_head`"

Close & save.

To use keyboard look functions:
In the games Keys Menu, assign your look keys for these actions (if required):
Look Left (Default Number Pad /) = To Look 68 Degrees Left ***New 28/06/2022***
Look Right (Default Number Pad *) = To Look 68 Degrees Right ***New 28/06/2022***
Look Left & Look Right = Look Behind or Look back out of window (CAM 6/7/8) ***New 28/06/2022***
Interior Look Forward (Default Number pad 5) = Look Behind
Interior Look Up Left (Default Number pad 7) = Look 45 Degrees Left
Interior Look Left (Default Number pad 4) = Look 90 Degrees Left
Interior Look Up Right (Default Number pad 9) = Look 45 Degrees Right
Interior Look Right (Default Number pad 6) = Look 90 Degrees Right
Note 1: The look view is instant and you must press & hold the button. Letting go of the button will instantly centre the view.
Note 2: Press & hold 'Interior Look Up Left' & 'Interior Look Left' To Look 180 Degrees Left.
Note 3: Press & hold 'Interior Look Up Right' & 'Interior Look Right' To Look 180 Degrees Right.
Note 4: Yes you can also assign game pad buttons instead of using the keyboard to look.

To use analogue look functions:
Setup controller as normal in game, like so:
OPTIONS - CONTROLLERS - Keyboard+Controller
Pick your "Look up/down axis" & "Look left/right axis"
Adjust dead zones & axis mode as required.

NOTE: Don't change any key bindings in the game menu's that state "COMPLEX".
The above edits are the reason those are "complex".

That's it, go try it out.

TIP: Re-open the saved control.sii file before running the game for the first time. This prevents the game resetting your controls.sii file if you made an error.
If the new cameras don't work, open the console, if you see one of the above lines in red text, you need to check that line again for a typo or a bad copy/paste. Save the controls.sii file but don't close it and then run the game again.
Once you are happy all is working as intended you can keep the controls.sii file closed.
Here's an example of an error in line "mix headtrx `........ as indicated in the red box. The green box is how it should look when correct.
Image
Example errors in your game.log.txt file and how to fix them:
This error will prevent MUC from working all together. It's caused by missing a " from the end of one of the line edits. Be careful when copy/pasting as this error can cause the game to reset the whole file back to game defaults.
00:00:04.454 : <ERROR> [unit] File '<C:/Users/TEST/Documents/American Truck Simulator | /home>/profiles/xxxx/controls.sii', line 519:
00:00:04.454 : <ERROR> Expecting string value, found '"'
00:00:04.454 : <ERROR> load_unit_tree() - Failed to load unit tree from file (/home/profiles/xxxx/controls.sii)

To locate the problem subtract 6 from the line number stated. For example: 519-6=513
So the error is caused by the line starting "config_lines[513]:..."
Re-copy/paste the matching "mix name..." line edit from your line 513 into your controls.sii file.

This error will allow some MUC functions to work but the MUC function associated to this line won't. The game will reset this line to game default.
00:00:04.453 : <ERROR> [inp] line "mix name...`" is malformed
Re-copy/paste the matching "mix name..." line edit into your controls.sii file.

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

How to temporarily use a camera preset (not assigned to CAM 6/7/8):
Internal camera preset:
Select CAM 1 and then open the menu with 'shift + 9'.
Select an internal preset "INT ...", "LHD ..." or "RHD ..." from the top preset drop down list and press 'Escape'.

External camera preset:
Select CAM 5 and then open the menu with 'shift + 9'.
Select an external preset "EXT - ..." from the top preset drop down list and press 'Escape'.

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

How to create a camera preset:
Internal camera preset:
Select CAM 1 and then open the menu with 'shift + 9'.
Select an internal preset ("Cam 6/7/8 Internal - _HD - Adjust sliders & save", "INT - ... Template" or "LHD/RHD... presets") from the top drop down list and adjust as required.
Press 'Escape' to view your camera and 'shift + 9' to re-open the menu and make any required changes.
Do this until you are happy the camera looks and/or moves as you want it to.
Save the camera as a preset and assign it to one of the menu CAM 6/7/8 buttons.

External camera preset:
Select CAM 5 and then open the menu with 'shift + 9'.
Select an external preset ("Cam 6/7/8 External - Adjust sliders & save" or "EXT - ...") from the top drop down list and adjust as required.
Press 'Escape' to view your camera and 'shift + 9' to re-open the menu and make any required changes.
Do this until you are happy the camera looks and/or moves as you want it to.
Save the camera as a preset and assign it to one of the menu CAM 6/7/8 buttons.

How to save and delete a camera preset:
Where you see 'Custom' (after positioning your camera) on the menu top preset box, click '+' then type your preset name in the box and press 'enter'.
If you type the same name as an existing preset you can overwrite it if required.
You can also delete presets. On the top preset box, click 'x' and the currently displayed preset will be deleted.
Note: You can't delete or change the mod standard presets, 'Cam 1 - Mouse & Keyboard (Don't Use) / Cam 1 - TrackIR & Analogue Controller (Don't Use) / Cam 5 only (Don't Use)' & '... - Templates'.
All presets created are stored in the games 'eye_tracking_presets' folder.
The preset lists have all 'templates' listed first followed by:
"Templates above ---^^^ or User created presets below ---vvv"
and then user created presets are listed.

Your new preset is now selectable from the CAM 6/7/8 drop down lists.

Note: To make it easy to find your presets in the list you should prefix internal presets with "LHD -" or "RHD -" and external presets with "EXT -".

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

Note: 'Auto move camera position when looking left / right' - External Cameras Only.
When using any 'chase cam' your height and pitch will automatically reduce as you turn left/right until you are 180 degrees and facing your truck.
To disable this 'auto reduce height/pitch function', if required, for your 'preset chase cam', set it's 'camera rotation' from 3.00 (straight ahead) to 3.01 (almost straight ahead). Then a high up chase cam will always stay high up when turning the view.

Note: 'Look Movement' Half (90 degrees left/right) or Full (180 degrees left/right) - External Cameras Only
If you don't want the camera to rotate through the truck, for example 'lean out' or 'bumper' cams, then set to 'Half'.
Using 'Full' with Hood & Roof cams will rotate to look down the side of your truck if the camera is placed in the truck cab area and this strict criteria is followed:
Move Left / Right Slider = 2.31 to 2.69 (centre of truck area - centre varies per truck)
Move Up / Down Slider = 0.00 to 0.40 (ground to just above general roof height)
Move Forward / Backward = 0.00 to 0.99 (in front of the truck to approx back of cab area)
Camera Rotate = 3.00 (straight ahead only)
Auto Move - Untick
Look Movement - Tick
Any values outside of the above will disable this 'look around the side of truck' option.

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

How to 'Move to camera location' - Internal Cameras Only:
With this TICKED you will move from the drivers seat to your selected cabin camera location rather than instant switching.
You need to be using an actual steering wheel (ideally) or analogue gamepad thumbstick / joystick for steering. Mouse or button steering won't work and can't work as they are not analogue devices.
Example:
Select the preset you want to use. TICK Enable 'Move to camera location' box and save as a 'Move To' preset and assign it to one CAM 6/7/8 buttons.
Using CAM 1 - Centre your real steering wheel - Select the 'Move Enabled' cabin camera CAM 6/7/8 you want to move to.
You will still be sat in the driving seat until you turn your real steering wheel towards the passenger side.
You will then move through the cabin to the point where the selected camera is positioned at the speed that you turn your wheel.
So you can move from driving seat to laid down in the sleeper. Press 'sleep' and then wake up and turn your wheel back to the centre point to get back into the driving seat.
Note 1: Always press CAM 1 when ready to drive away.
Note 2: If you want to adjust a 'Move To' camera then UNTICK first, make adjustments and check position is ok before you TICK 'Move To' & SAVE again.
Note 3: Ensure LHD Truck (Untick) or RHD Truck (Tick) is set correctly otherwise movement will be strange.

All the internal cameras / templates are static by default and will therefore just switch when pressing CAM 6/7/8.
TICK Enable 'Move to camera location' box and save as a 'Move To' preset so you have both options to choose from.
"LHD Freightliner Cascadia 2019 72 Sleeper Laid Down RHS" <-- Instant switch to Right Hand Side of sleeper.
"LHD Freightliner Cascadia 2019 72 Sleeper Move To Laid Down RHS" <-- Move to Right Hand Side of sleeper.

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

How to 'Walk Around Your Truck': ***New 12/04/2022***
Add one of the 'Walk Around Your Truck' presets to CAM 6, CAM 7 or CAM 8 in the menu.
Select that 'Walk Around Your Truck' CAM to 'Walk Around Your Truck'.

Requires:
Setup your devices in games controls menu first.
Analogue Steer (Wheel / Thumbstick / Joystick) to walk around your truck
Analogue Accelerator (Pedal / Thumbstick / Trigger) to crouch beside your truck
Analogue Brake (Pedal / Thumbstick / Trigger) to stand back from your truck
Analogue Look Left/Right/Up/Down (Thumbstick / Joystick) to look Left/Right/Up/Down
or
TrackIR to look Left/Right/Up/Down/Crouch/Tip toes

This won't work, and can't be made to work, with mouse & keyboard only as they are digital and we need analogue inputs.
'Walking' works best when using a wheel as you can hold your position much easier than you can when using a gamepad thumbstick for steering.
Note: Your truck steering/accelerator/brake/clutch are all disabled to prevent your truck moving when using those same controls for 'walking'.

Walking movement limits:
The yellow line represents the 'walk' path around the truck.
Outside the drivers door (LHD or RHD) is the start point, when your steering is centered. Use your steering wheel/thumbstick/joystick to 'walk' around the path.
The blue line represents the path as you move away from your truck, by pressing your brake pedal/thumbstick/trigger.
Image
You can look around by using headtracking/analogue look left/right/up/down.
You can therefore refuel whilst stood next to the trucks tank or attach/detach your trailer.
SCS don't provide any further gameplay elements and so you'll have to pretend you are doing pre-delivery safety checks etc.

Note 1: If your brake pedal has a "dirty pot" then the 'move away' movement will be jittery due to the fluctuating values coming from the pedals potentiometer. Alternative line edit available that splits that movement into 4 steps instead - See line edit for "mix dclutch...
Note 2: If your truck & trailer(s) are not inline and you 'walk' into the side of your trailer, you'll hop over it rather than pass through it. It's not ideal but that's how the game code reacts to collision data.

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

How to control DEVCAM using your analogue controls: ***New 12/04/2022***
Ensure you have 'Multiple Universal Cameras' setup and working correctly before adding this.
Click this link for the required extra line edits: viewtopic.php?p=50460#p50460

Select CAM 1 or CAM 5 and open the menu mod.
Select "Cam 0 - DEVCAM analogue control - Close menu - Press '0'" from the top drop down list.
Close menu - The screen will go black.
Press '0' and DEVCAM will now have analogue control and default mouse & keyboard control.

Or when 'Walk Around Your Truck' camera mode is in use, press '0' and DEVCAM will now have analogue control and default mouse & keyboard control.

Note 1: When 'DEVCAM analogue control' is used your truck steering/accelerator/brake/clutch functions are disabled, otherwise your truck would drive around as you move the DEVCAM.

Note 2: If you want to drive your truck whilst using DEVCAM then don't pick the above preset. Just press '0' to have default mouse & keyboard control only.

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

Q & A Section:
All cameras will switch correctly when pressing 1, 2, 3, 4, 5, 6, 7, 8, shift + 6, shift + 7 or shift + 8 but just using the top right drop down list in the menu to temporarily use a preset may cause it to display incorrectly.
Always change to CAM 1 and then open menu and pick an internal preset only or change to CAM 5 and then open menu and pick an external preset only.

This post is FULL - Q & A now here: viewtopic.php?p=55526#p55526

Re: Multiple Universal Cameras (Internal & External with look function) for ATS & ETS2 1.38 to 1.43

Posted: April 9th, 2022, 4:16 pm
by JHTrucker
Optional extra - Control DEVCAM with your analogue controllers for use with my 'Extra Cabin Cameras', 'Multiple Universal External Cameras' or 'Multiple Universal Cameras' mods only.
(If you use keyboard & mouse only, you'll be wasting your time adding this as it won't work for you).

NOTE: These aren't standalone line edits, you need to also be using ECC v3, MUEC v6 or MUC v2 line edits and assoicated mod. If you only want the analogue DEVCAM control and nothing else, then look here instead: viewtopic.php?p=50209#p50209

Analogue gamepad (example - xbox 360):
Steering Axis = Devcam Move left/right
Accelerator Axis = Devcam Move forwards
Brake Axis = Devcam Move backwards
Look Left-Right Axis = Devcam Look left/right
Look Up-Down Axis = Devcam Look up/down
The above axis should already be setup in the games 'controls' menu.

Demo - Ignore the image quality - Game on lowest graphics settings and recorded on old camera phone (720p).


To enable this mode in game do the following:
For ECC v3+ - Select CAM 1 and open the menu mod.
For MUEC v6+ - Select CAM 5 and open the menu mod.
For MUC v2+ - Select CAM 1 or CAM 5 and open the menu mod.
Select "Cam 0 - DEVCAM analogue control - Close menu - Press '0'" from the top drop down list.
Close menu - The screen will go black.
Press '0' and DEVCAM will now have analogue control and default mouse & keyboard control.

Or when using MUEC or MUC and 'Walk Around Your Truck' camera mode is in use, press '0' and DEVCAM will now have analogue control and default mouse & keyboard control.

Note 1: When 'DEVCAM analogue control' is used your truck steering/accelerator/brake/clutch functions are disabled, otherwise your truck would drive around as you move the DEVCAM.

Note 2: If you want to drive your truck whilst using DEVCAM then don't pick the above preset. Just press '0' to have default mouse & keyboard control only.

Required line edits (game version 1.43) - Copy & paste the following:
NOTE: Always match the "mix name" as the line number may be different.

config_lines[175]: "mix dbgfwd `keyboard.num8?0 | (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(abs(c_et_gv_ext - 0.123456))`"

config_lines[176]: "mix dbgback `keyboard.num5?0 | (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(abs(c_et_gv_ext - 0.123456))`"

config_lines[177]: "mix dbgleft `keyboard.num4?0 | -(sel(c_jisteer, -j_steer?0, j_steer?0)) * ! sign(abs(c_et_gv_ext - 0.123456))`"

config_lines[178]: "mix dbgright `keyboard.num6?0 | (sel(c_jisteer, -j_steer?0, j_steer?0)) * ! sign(abs(c_et_gv_ext - 0.123456))`"

You can change '2' to adjust the speed of look left/right turning.
config_lines[209]: "mix camuilr `(-mouse.rel_position.x?0 * c_msens) + (deadzone(-sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), c_lr_dz) * 2 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

You can change '1' to adjust the speed of look up/down movement.
If you have Look up/down set with "Inverted and Centered" use this line:
config_lines[210]: "mix camuiud `(-mouse.rel_position.y?0 * sel(c_minvert, -c_msens, c_msens)) + (deadzone(-sel(c_jilookud, -j_look_ud?0, j_look_ud?0), c_ud_dz) * 1 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

If you have Look up/down set with "Centered" use this line:
config_lines[210]: "mix camuiud `(-mouse.rel_position.y?0 * sel(c_minvert, -c_msens, c_msens)) + (deadzone(sel(c_jilookud, -j_look_ud?0, j_look_ud?0), c_ud_dz) * 1 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

Use your indicators or any gamepad/joystick buttons to speed up & slow down instead of the mouse wheel.
Replace joy.b5?0 & joy.b6?0 (flappy paddles on G27 wheel) with your preferred buttons.
config_lines[197]: "mix camzoomin `mouse.wheel_up?0 | joy.b5?0 & ! sign(abs(c_et_gv_ext - 0.123456)) | semantical.camzoomin?0`"

config_lines[198]: "mix camzoomout `mouse.wheel_down?0 | joy.b6?0 & ! sign(abs(c_et_gv_ext - 0.123456)) | semantical.camzoomout?0`"

That's it for gamepad.

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

Control DEVCAM with your steering wheel & pedals and a joystick or shifter:
Steering Axis = Devcam Look left/right
Accelerator Axis = Devcam Move forwards
Brake Axis = Devcam Move backwards
Look Left-Right Axis = Devcam Move left/right
Look Up-Down Axis = Devcam Look up/down
If using a joystick, assign it to look up/down/left/right in games controls menu.
Wheel Buttons = Devcam Move left/right
H-Shifter 1st & 5th = Devcam Move left/right
Wheel Buttons = Devcam Look up/down
H-Shifter 3rd & 4th = Devcam Look up/down
H-Shifter 4th & 3rd = Devcam Look up/down

Apply the above DEVCAM line edits and then make the below changes to suit your setup:

-----------------------------------------------------------------------------------------------

Steering Axis = Devcam Look left/right
You can change '2' to adjust the speed of look left/right turning.
config_lines[209]: "mix camuilr `(-mouse.rel_position.x?0 * c_msens) + ((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) * 2 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

-----------------------------------------------------------------------------------------------

Joystick Look Left/Right Axis = Devcam Move left
config_lines[177]: "mix dbgleft `keyboard.num4?0 | (deadzone(-sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), c_lr_dz) * ! sign(abs(c_et_gv_ext - 0.123456)))`"

Joystick Look Left/Right Axis = Devcam Move right
config_lines[178]: "mix dbgright `keyboard.num6?0 | (deadzone(sel(c_jilooklr, -j_look_lr?0, j_look_lr?0), c_lr_dz) * ! sign(abs(c_et_gv_ext - 0.123456)))`"

OR

Wheel button = Devcam Move left
Change joy.b1?0 to your button/D-pad etc.
config_lines[177]: "mix dbgleft `keyboard.num4?0 | (joy.b1?0 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

Wheel button = Devcam Move right
Change joy.b2?0 to your button/D-pad etc.
config_lines[178]: "mix dbgright `keyboard.num6?0 | (joy.b2?0 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

-----------------------------------------------------------------------------------------------

Wheel Button = Devcam Look Up/Down
Change joy.b3?0 (up) & joy.b4?0 (down) to your button/D-pad etc.
You can change '1' to adjust the speed of look up/down movement.
config_lines[210]: "mix camuiud `(-mouse.rel_position.y?0 * sel(c_minvert, -c_msens, c_msens)) + ((joy.b3?0 - joy.b4?0) * 1 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

-----------------------------------------------------------------------------------------------

H-Shifter Gear 1st / 5th = Devcam Move left/right
config_lines[177]: "mix dbgleft `keyboard.num4?0 | (-mouse.rel_position.x?0 + (gear2?0 * ! sign(abs(c_et_gv_ext - 0.123456))))`"

config_lines[178]: "mix dbgright `keyboard.num6?0 | (-mouse.rel_position.x?0 + (gear6?0 * ! sign(abs(c_et_gv_ext - 0.123456))))`"

H-Shifter Gear 3rd / 4th = Devcam Look up/down
You can change '1' to adjust the speed of look up/down movement.
3rd Pitch up - 4th Pitch down
config_lines[210]: "mix camuiud `(-mouse.rel_position.y?0 * sel(c_minvert, -c_msens, c_msens)) + ((gear4?0 - gear5?0) * 1 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

4th (pull gearstick back) Pitch up - 3rd (push gearstick forward) Pitch down - Aeroplane mode
config_lines[210]: "mix camuiud `(-mouse.rel_position.y?0 * sel(c_minvert, -c_msens, c_msens)) + ((gear5?0 - gear4?0) * 1 * ! sign(abs(c_et_gv_ext - 0.123456)))`"

Note: My G27 H-Shiter - gear2?0 = 1st : gear4?0 = 3rd : gear5?0 = 4th : gear6?0 = 5th

You may have to change gear2?0 / gear4?0 / gear5?0 / gear6?0 to suit your particular shifter setup.

Note 2: Using a wheel/pedals/shifter, you now have a flying truck, but doing a repeated 'loop the loop' will make you feel sick!

Re: Multiple Universal Cameras (Internal & External with look function) for ATS & ETS2 1.38 to 1.43

Posted: April 12th, 2022, 6:00 pm
by JHTrucker
First post update.
What's new?
New 'Multiple Universal Cameras v2' mod.

Added 'Walk Around Your Truck' Camera mode.
This camera mode allows you to use your analogue controls (steering/accelerator/brake/look) to walk a path around your truck.

Added "Cam 0 - DEVCAM analogue control - Close menu - Press '0'" preset.
If selected, this allows you to control DEVCAM via your analogue controls for steering, accelerator, brake etc.
This requires extra line edits and is considered 'optional' as mouse & keyboard users can't use this.

Amended line edits: 185, 272, 273, 274, 275, 276, 277, 278 & 501.
New lines edits: 289, 290, 294, 295, 298 & 299.

As always, all posted line edits have been re-applied to a default controls.sii file to check they all work as intended and no errors.

That should now complete the development of MUC. An update should only be required if a future game update breaks it.

Re: Multiple Universal Cameras (Internal & External with look function) for ATS & ETS2 1.38 to 1.44 - Updated 17/05/2022

Posted: May 17th, 2022, 6:55 pm
by JHTrucker
First post update.
What's new?

New MUC mods:
Multiple Universal Cameras v2.1.scs for game version 1.38-1.43
Multiple Universal Cameras v3.0.scs for game version 1.44
(Both mods have the exact same functions, just use the correct one for your game version).

The line edits have been re-numbered to match my 1.44 version, just match the "mix name" when applying to your game version.

NOTE: There's no actual changes to the line edits and so if you were using 'MUC v2' you only need to now change to the correct mod to suit your game version.

When using game version 1.44 and a preset that you previously created prior to 1.44 then you'll get a harmless yellow warnings in your console / game log:
<WARNING> Ignoring obsolete attribute 'gaze_view_scale' of unit...

To fix that warning just delete your preset and create & save it again.

--------------------------------

SCS broke MUC in 1.44 because they removed 2 existing Tobii Eye variables / menu sliders:
gaze_view_scale
head_view_scale
And replaced them with 6 new ones:
head_view_drive_yaw_scale
head_view_drive_pitch_scale
head_view_drive_roll_scale
head_view_walk_yaw_scale
head_view_walk_pitch_scale
head_view_walk_roll_scale
And yet SCS didn't even bother to tell Tobii Eye users that they have these new settings in the update Blog change log!

Re: Multiple Universal Cameras (Internal & External with look function) for ATS & ETS2 1.38 to 1.44 - Updated 28/06/2022

Posted: June 28th, 2022, 5:10 pm
by JHTrucker
UPDATE: Improvements for driving seat camera movement, CAM 1, when using Analogue Controller or Button look.
Note: There's a slight difference in the way CAM 1 works compared to ECC & MUEC.

Added toggle function for CAM 1 look left/right control (game standard or instant with instant re-centre).

Added 'Look Left' & 'Look Right' buttons. These can be used instead of or as well as the existing 'Interior Look' buttons.
Using CAM 1 & instant look movement, press both 'Look Left' & 'Look Right' to look back out of the drivers window.
Using CAM 6/7/8 (MUC external cameras), press both 'Look Left' & 'Look Right' to look back over.

Amended controls.sii line: "mix headtryaw...', "mix headtrpitch...', "mix headtrx...', "mix headtry...' & "mix headtrz...'

New controls.sii line: "mix headtrwmon...'

Re-written setup instructions for config_local.cfg edits to make it clear what 'look' options you have.
Set 'uset g_eye_preset_4' to setup your preferred movement control for CAM 1.

There's no changes to the MUC menu mods, keep using the currently available ones.

----------

Example - For CAM 1 when using a wheel with 2 buttons assigned to 'look left' & 'look right':
Toggle between CAM 1 game standard 'slow moving left/right' and CAM 6 'instant look left/right & auto centre' and also 'instant look back out of the drivers window'.
Use standard 'slow moving look left/right' as required, reversing or when you need to set a fixed look position etc.
Use 'instant look left/right' when driving to make it easier to see at junctions, glance at the side mirror or look back when joining a motorway etc.

When using 'instant look left/right' you press and hold your assigned key/button for 'Look Left' or 'Look Right'.
When you stop pressing 'Look Left' or 'Look Right' the view will instant re-centre.
If you press both 'Look Left' & 'Look Right' at the same time you'll instantly look back out of the drivers window.

These 2 buttons will now also work with instant look left/right for all MUC presets.

----------

The first post has all this updated information added to it.

Re: Multiple Universal Cameras v4 (Internal & External with look function) for ATS & ETS2 1.38 to 1.45 - Updated 12/08/2

Posted: August 12th, 2022, 5:52 pm
by JHTrucker
First post update.
What's new?

Added 'mp_mod_optional: true' to 'MUC v4.0' mod as per the SCS 1.45 Blog so you can join multiplayer servers whilst still using MUC.

Note: Convoy host must tick 'Enable Optional Mods' when creating the server.

SCS Blog: 1.45 Update Release.
"If you are a modder in our community, please note that your modification must be tagged as "mp_mod_optional" to be recognised as a MOD that can be ignored by a convoy server that allow for missing optional MODs."

That statement from SCS is rather vague, a map mod can't possibly be 'optional' for example, so i'm sure the game code must scan 'optional' mods for files that cannot be 'optional' and then block them.
With that in mind, my mods may or may not be allowed, now or at some point in the future.

Re: Multiple Universal Cameras v4 (Internal & External with look function) for ATS & ETS2 1.38 to 1.45 - Updated 12/08/2

Posted: October 17th, 2022, 6:02 pm
by JHTrucker
First post update.

What's new? - Nothing, if you're already setup and working.

For easy testing, I've added a game default 'controls.sii' file with all current line edits applied to it.
By using this 'controls.sii' file you'll need to re-setup all your game controls for buttons, keys, wheel, pedals, shifter & Force Feedback settings etc.
Or don't use this file and apply the line edits to your 'controls.sii' file instead. The choice is yours!

Added external links to mod so you don't need to register on here.

Re: Multiple Universal Cameras (Internal & External with look function) for ATS & ETS2

Posted: November 24th, 2022, 3:50 pm
by JHTrucker
MUC Q & A Section: (moved from first post due to hitting post character limit of 60000).

All cameras will switch correctly when pressing 1, 2, 3, 4, 5, 6, 7, 8, shift + 6, shift + 7 or shift + 8 but just using the top right drop down list in the menu to temporarily use a preset may cause it to display incorrectly.
Always change to CAM 1 and then open menu and pick an internal preset only or change to CAM 5 and then open menu and pick an external preset only.

Q - Do I have to apply all those line edits every time SCS update the game?
A - No. At least I've never had to. The line numbers may change but that's not a problem.

Q - Why show line edits stating "<-- This is game default"?
A - If you want to test between ECC, MUEC or MUC you won't then have left over edits that would affect your current setup.

Q - Does it matter which preset I modify?
A - Never use 'Cam 1 Mouse & Keyboard (Don't Use)', 'Cam 1 TrackIR & Analogue Controller (Don't Use)' or 'Cam 5 only (Don't Use)' as a starting point. Use one of the other presets that best matches where you want the camera positioned and adjust sliders to suit.

Q - My internal camera preset has a low quality interior, what's wrong?
A - You have created it using an external camera preset. Select an internal camera preset and adjust again.

Q - My external camera preset has the exterior of the truck missing, what's wrong?
A - You have created it using an internal camera preset. Select an external camera preset and adjust again.

Q - What's the best way to avoid my chosen preset (top right drop down list) displaying wrongly?
A - Assign it to CAM 6/7/8 in the menu or change to CAM 1 and then open menu and pick an internal preset only or change to CAM 5 and then open menu and pick an external preset only.

Q - Why is the interior look left/right movement restricted to 90 degrees.
A - Looking beyond 90 degrees will cause the interior to change to low quality as the game thinks your head is now outside.
Camera rotation is also part of that 90 degrees limit. So if you rotate the camera 90 degrees left then you can't look any further.

Q - How do I use 'steer look slider' for CAM 1?
A - That slider will only work for external cameras assigned to CAM 6, 7 or 8. Use game original 'steer look' in the controls menu for CAM 1.

Q - I want a roof cam that looks straight back but it keeps moving to the side when using 'Look movement full'.
A - Simply set 'Camera Rotation' to 3.01 instead of 3.00 to disable the 'look around the side' movement when camera is positioned within the 'trigger area'.

Q - After adjusting the sliders to my liking I then change cameras and my adjustments have gone!
A - Never change cameras when making adjustments to the sliders. Save your preset as shown above so your new view will always be selectable.

Q - I have no mouse movement in CAM 1, what's wrong?
A - Look back at "Set 'uset g_eye_preset_4' to setup your preferred movement control for CAM 1:".

Q - Why use camcycle key 9 for the menu?
A - Camcycle doesn't display these new cameras correctly, so best not to use it for that.

Q - Do I have to reset to defaults all the line edits so I can play multiplayer as that doesn't support mods currently in 1.41?
A - No. Just open the menu mod and UNTICK 'Enable MUC code' to disable it and then remove the mod. Your cameras will then function exactly as the standard game. When you want to use 'MUC' again for singleplayer, just add mod and TICK 'Enable MUC code' in the menu mod.

Q - Every time I try to open the menu mod the game crashes to desktop.
A - Check the statement for "Confirmed to work for ATS/ETS2 game versions..." at the top of the first post. Ensure you are using the correct mod for your game version.

Re: Multiple Universal Cameras v4.1 (Internal & External with look function) for ATS & ETS2 1.38-1.46 - Updated 24/11/20

Posted: November 24th, 2022, 4:04 pm
by JHTrucker
First post update.

What's new? - Reference to game version 1.46 added.

New menu mods: Multiple Universal Cameras v2.2 (1.38-1.43), v3.1 (1.44) & v4.1 (1.45-1.46).

Increased drop down list size for 'CAM 6', 'CAM 7' & 'CAM 8'.

Renamed 'walk' presets to:
EXT - Walk Around Truck - xHD xxx - Far Distance
EXT - Walk Around Truck - xHD xxx - Near Distance
EXT - Walk Around Truck - xHD xxx - Offset - Far Distance
EXT - Walk Around Truck - xHD xxx - Offset - Near Distance
(12 in total, LHD/RHD/ATS/ETS)

Added new 'walk' presets:
EXT - Walk Facing Truck - xHD xxx - Far Distance
EXT - Walk Facing Truck - xHD xxx - Near Distance
EXT - Walk Facing Truck - xHD xxx - Offset - Far Distance
EXT - Walk Facing Truck - xHD xxx - Offset - Near Distance
(12 in total, LHD/RHD/ATS/ETS)

The above 'Walk Facing Truck...' presets will keep your head facing the truck as you turn your steering to walk around it. All existing 'look' and 'walk' movements can still be used.

Amended line edit date highlighted for:
config_lines[279]: "mix headtryaw...
('Walk Facing Truck...' won't work if you forget to change this).

New 'quick start' controls.sii 24-11-2022 file.

Re: Multiple Universal Cameras v5.0 (Internal & External with look function) for ATS & ETS2 1.38-1.50 - Updated 18/05/20

Posted: May 18th, 2024, 4:06 pm
by JHTrucker
First post update:

New menu mod, MUC v5.0, required to prevent a "crash to desktop" when using game version 1.50

Note: There's nothing new, accept the "washed out" look caused by the amazing new ui SCS has now implemented into the game.