Controls.sii file changes to enhance the trucking experience. First post Updated 20/02/2025

Make your game even better
User avatar
fra_xt
Posts: 12
Joined: January 25th, 2025, 1:22 pm

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 20/10/2024

Post by fra_xt » February 10th, 2025, 10:04 pm

Here I come again, pardon

@JHTrucker that works awesome!! Now it's much more professional :)

For some reason that I don't understand I had to slightly modify one of the values to get 1:1 scroll-wheel-to-wheel-animation ratio but I think it should be fine

If you agree I think we can call this code final :grin: just to recap here are the lines to paste in the controls.sii file, together with steering wheel mode setting in-game.
"A" is the amount of ticks in half a rotation of your scroll wheel; "B" is the in-game steering wheel animation degrees

Code: Select all

"mix lookpos7 `memory(mouse.button_middle?0, ! lookpos7)`"
"mix lookpos8 `max(min(memory(scrol_up + scrol_dwn, lookpos8 + ((scrol_up - scrol_dwn) * (1/A)*(480/B)*(1.0 + (4.0 * lookpos7)))), 0.5), -0.5)`"
"mix lookpos9 `max(min(memory(scrol_dwn + scrol_up, lookpos9 + ((scrol_dwn - scrol_up) * (1/A)*(480/B)*(1.0 + (4.0 * lookpos7)))), 0.5), -0.5)`"
"mix dsteerleft `keyboard.larrow?0 + lookpos8?0`"
"mix dsteerright `keyboard.rarrow?0 + lookpos9?0`"
Anyone should then set their preferred button for lookpos7, and also play with the lookpos7 multipliers to get the suitable experience

If you're ok with it I'd love to post a link to this stuff on the SCS forum to tease them a bit :D in the meantime thanks again for your help, it's been amazing
User avatar
JHTrucker
Expert
Posts: 1389
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 20/10/2024

Post by JHTrucker » February 11th, 2025, 11:34 pm

@fra_xt - If what we've created fulfills your original requirements... then yes, its done.

However, hope you don't mind and sorry if I come across as a teacher, marking your work... But for clarity I think you need to edit your post to add some missing info, something like this?:

Steering that using MS Dial or Mouse Scroll Wheel.
Requires:
A game controller, but it won't be used for steering, then set, for example:
In game, Controls = keyboard + controller (xbox360)
Controller subtype = Wheel
OR
If you don't have a controller, add this to your controls.sii file:
config_lines[2]: "device joy `di8.'{Used to force analogue steering for MS Dial}'`"
In game, Controls = keyboard + missing di8 {Used to force analogue steering for MS Dial}
Controller subtype = Wheel
Note: You'll get the 'missing controller' popup, just close it and continue to drive.

Steering Sensitivity Slider = 100% (far right)
Steering Non-linearity Slider = 0% (far left)
Or you can adjust to suit.

Note: Lookpos7 is used to toggle 'on demand' faster steering on/off, assign a button as required.

-----

You'll also need to add your disable scrolling for cam2.

I'll add your post to my list.

Happy for you to share a link to here, but be careful... If you're a long time scs forum member then you'll probably be ok to post a link.
My story, from a couple of years ago:
There's a lot of stuff on this forum, for things that may or may not be useful to the "bestcommunityever", but after seeing too many people requesting multimonitor help on the scs forum and only getting basic non-helpful replies, I decided to join and point them in the right direction, all the info here is free to see and nobody has to join this forum to use it...
I got an instant life time ban (my account requires manual unlocking by an admin), the reason, promoting paid content...

But whilst your still here, if you haven't looked beyond this "controls" topic then perhaps check out the main section, “Tweaking and Enhancing the Game - Make your game better”.
If doing things like, climbing into the sleeper and laying down before sleeping, climbing out of the truck to refuel, use the crank handle & walk around the truck etc, appeals to you, then look at "Driving Enhancements"... your scroll steering can still be used...

Thanks, you provided a fun challenge.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
Driving Enhancements: viewtopic.php?p=67254#p67254
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
User avatar
fra_xt
Posts: 12
Joined: January 25th, 2025, 1:22 pm

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 20/10/2024

Post by fra_xt » February 18th, 2025, 11:19 pm

I'm back :)

@JHTrucker don't worry, you are a good teacher :) I'm sorry for rushing it a bit, here's the complete message to be added to your post if you like it

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

Steer your truck with Mouse Scroll Wheel or Surface Dial

Requirements
- external controller (will not be used for steering) or see the first line of code

Controls.sii file changes

Code: Select all

"device joy `di8.'{force analogue steering for Scroll Wheel and MS Dial only if you don't have a controller}'`"
"mix camzoomin `keyboard.pgup?0 | semantical.camzoomin?0`"
"mix camzoomout `keyboard.pgdn?0 | semantical.camzoomout?0`"
"mix lookpos7 `memory(mouse.button_middle?0, ! lookpos7)`"
"mix lookpos8 `max(min(memory(scrol_up + scrol_dwn, lookpos8 + ((scrol_up - scrol_dwn) * (2/A)*(480/B)*(1.0 + (4.0 * lookpos7)))), 0.5), -0.5)`"
"mix lookpos9 `max(min(memory(scrol_dwn + scrol_up, lookpos9 + ((scrol_dwn - scrol_up) * (2/A)*(480/B)*(1.0 + (4.0 * lookpos7)))), 0.5), -0.5)`"
"mix dsteerleft `keyboard.larrow?0 + lookpos8?0`"
"mix dsteerright `keyboard.rarrow?0 + lookpos9?0`"
set "A" as the number of ticks in a full rotation of your scroll wheel (for MS Dial it's 1800); set "B" as the in-game steering wheel animation degrees number

In-game settings
- input type = Keyboard + controller (Xbox360, ...) only if you have a controller, else see above
- controller subtype = wheel
- steering non-linearity = 0 (adjust to taste)
- steering sensitivity = 1.0 (adjust to taste, shouldn't affect scroll wheel steering)

How it works
- controller (existing or not) is used for scroll wheel to analogue steering conversion
- chasing camera zoom is replaced with PageUp and PageDown; you may need to unassing them if they were already assigned to something, or choose different buttons in config.sii for zooming
- lookpos7 is used to alternate between slow and fast steering; default button is mouse middle button, or set another button in config.sii
- because of event-based functions limitation, if you scroll really fast you may lose some steering ticks, so you'll have to toggle fast steering
- in slow mode, the in-game steering wheel should turn the same as your scroll wheel
- works with trackpad too, but "A" value needs to be experimented with

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

Hope it is fine this way, sorry if I made changes to what you suggested but I hope it is clear like this too. Else I'll make adjustments as needed

I won't be leaving this forum anytime soon :) I think this method might also be interesting for changing stuff on the fly (steering sensitivity etc, as you've already done) by multiplying the lookpos8/9 values by the variable you want. Of course feel free to do anything you want with it

Thanks for your suggestion about posting on the SCS forum, it's a shame they banned you. I guess that will be a problem, maybe I'll try contacting a moderator before posting any link

Thanks again for your help :good2:
User avatar
JHTrucker
Expert
Posts: 1389
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 18/02/2025

Post by JHTrucker » February 19th, 2025, 10:44 pm

@fra_xt - No need to be sorry! I did say "something like this?" The choice was yours.

Anyway, I think I was wrong to give the original idea of a fake controller when there's no controller to attach... Having just thought about it again, any one without a controller can just pick the game default "Keyboard + Controller (xbox360)" and then choose "wheel", you'll still get the "missing controller popup", but just X it off.
That should simplify your post, if you wish to edit it.

I've now linked your post in my list.

Being instant banned was probably for the best, I'd have just wasted too much time on a forum that the devs themselves should reply too in certain topics, instead of leaving it to their members...

Out of interest I typed my JHTrucker into the SCS forum search box and got 17 post references, all from other members that referred to me and about half of them posted direct links to here... so some can do it, but I certainly couldn't!

Never mind, I like being here, if people manage to find my work and like it, they're welcome.

If you have another idea you need help with, you know where I am.
Thanks.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
Driving Enhancements: viewtopic.php?p=67254#p67254
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
User avatar
JHTrucker
Expert
Posts: 1389
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: Controls.sii file changes to enhance the trucking experience.

Post by JHTrucker » February 20th, 2025, 2:39 pm

Comfort Blinker Function - Game version 1.41+

These edits will add a 'comfort blinker' function to the trucks indicators.
Mainly used on motorways when changing lanes. Allows the chosen indicator to flash only 4 times (or set to as many times as you want), so there's no need to worry about it being left on.

Using game default keys as an example:
Quick Press [ to indicate left as normal.
Press & Hold [ for 0.5 seconds (stop pressing as soon as the indicator comes on) to enable the left indicator to blink for only 2 seconds.

Quick Press ] to indicate right as normal.
Press & Hold ] for 0.5 seconds (stop pressing as soon as the indicator comes on) to enable the right indicator to blink for only 2 seconds.

You can set how long you want the indicators to blink for, just change 2000 (2 seconds) to suit your requirement.

Replace keyboard.lbracket?0 & keyboard.rbracket?0 with your preferred key/button.
"mix lblinker `short_press(keyboard.lbracket?0, 490) | semantical.lblinker?0`"
"mix lblinkerh `memory(long_press(keyboard.lbracket?0 * ! lblinkerh, 500) + (keyboard.rbracket?0 * lblinkerh) + long_press(lblinkerh, 2000), ! lblinkerh) | semantical.lblinkerh?0`"

Replace keyboard.lbracket?0 & keyboard.rbracket?0 with your preferred key/button.
"mix rblinker `short_press(keyboard.rbracket?0, 490) | semantical.rblinker?0`"
"mix rblinkerh `memory(long_press(keyboard.rbracket?0 * ! rblinkerh, 500) + (keyboard.lbracket?0 * rblinkerh) + long_press(rblinkerh, 2000), ! rblinkerh) | semantical.rblinkerh?0`"

----------

If you use an actual indicator stalk, where the indicators are held on whilst the stalk is either up or down, then you'll probably need to use these edits instead:

Quick flick stalk on/off, for the given direction, to enable the chosen indicator to blink for only 2 seconds.

You can set how long you want the indicators to blink for, just change 2000 (2 seconds) to suit your requirement.

Replace joy.b1?0 & joy.b2?0 with your preferred key/button.
"mix lblinker `semantical.lblinker?0`"
"mix lblinkerh `long_press(joy.b1?0, 600) + memory(short_press(joy.b1?0 * ! lblinkerh, 590) + (joy.b2?0 * lblinkerh) + long_press(lblinkerh, 2000), ! lblinkerh) | semantical.lblinkerh?0`"

Replace joy.b1?0 & joy.b2?0 with your preferred key/button.
"mix rblinker `semantical.rblinker?0`"
"mix rblinkerh `long_press(joy.b2?0, 600) + memory(short_press(joy.b2?0 * ! rblinkerh, 590) + (joy.b1?0 * rblinkerh) + long_press(rblinkerh, 2000), ! rblinkerh) | semantical.rblinkerh?0`"


Go back to the first post for the full list of what's available: viewtopic.php?p=24744#p24744
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
Driving Enhancements: viewtopic.php?p=67254#p67254
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
User avatar
fra_xt
Posts: 12
Joined: January 25th, 2025, 1:22 pm

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 18/02/2025

Post by fra_xt » February 23rd, 2025, 10:47 pm

JHTrucker wrote:
February 19th, 2025, 10:44 pm
I've now linked your post in my list.

If you have another idea you need help with, you know where I am.
Thanks.
That's awesome, thanks :)

Since you mentioned it I also thought it would be possible to select keyboard+controller without an actual controller plugged in, but as of now on my PC it does not seem to be possible anymore :shok: so I think we'll leave it as is, it's the safest route anyway

By the way I have some news! Of course now that I gave up looking for it I found someone else that had the same idea as mine. I'll link here two Autohotkey methods that may help with scroll wheel steering
https://steamcommunity.com/sharedfiles/ ... 3009247119
https://www.autohotkey.com/boards/viewtopic.php?t=88958

By experimenting with Autohotkey I have discovered that it's actually the MS Dial that loses inputs above a certain rotation speed, it's not the game's fault (at least not completely). So in the end the config.sii method works just as well as any Autohotkey method, but at least we know :scratch_one-s_head: At this point I'm pretty sure the MS Dial API is needed for it to not skip inputs

I'm glad you found an happier forum over here, most of the time the SCS forum is good for gossip. But as you saw your work is known over there too eheh :grin:
User avatar
JHTrucker
Expert
Posts: 1389
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 20/02/2025

Post by JHTrucker » February 24th, 2025, 3:31 pm

@fra_xt - I'm all about forcing the game to do things I want rather than resorting to using external programs... The autohotkey stuff is interesting never the less.
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
Driving Enhancements: viewtopic.php?p=67254#p67254
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
kutyafal
Posts: 2
Joined: March 14th, 2025, 12:15 pm

Re: Controls.sii file changes to enhance the trucking experience.

Post by kutyafal » March 14th, 2025, 12:25 pm

(Edited as requested)

Hi @JHTrucker, I love the comfort blinker timer function. I use a turn signal stalk assembly that is made from an IRL unit so it has two positions in each direction: a momentary for the timed activation (like in your script) and a permanent that gets canceled when the wheel is returned to center. The cancel is mechanical and I currently don't have a way to activate it. However, would it be possible to change your comfort blinker script so the second, permanent position of the stalk would activate the regular, non-timer blinker function? Then I could use the in-game auto-cancel setting and (of course) I would have to return the turn signal stalk to center after the turn manually. But this way there would be two options, one for the timer blinker, the second position is for the permanent until manual center. Many thanks for your work!
Last edited by kutyafal on March 16th, 2025, 9:57 am, edited 1 time in total.
User avatar
JHTrucker
Expert
Posts: 1389
Joined: February 7th, 2020, 3:19 pm
Location: UK

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 20/02/2025

Post by JHTrucker » March 14th, 2025, 9:32 pm

@kutyafal - We should be able to fix that... I'm just trying to get my head around it...

Two positions in each direction, so when you flick it up it will flick back again or push further up to latch on?
Does the stalk have 4 button positions? Example: joy.b1, b2, b3 & b4 ?

In the mean time, please could you edit your post to remove the quote, because once updated, anyone seeing your post may think that's the most up to date code.

Luckily for you, I'd never heard of 'comfort blinkers' until I saw someone on SCS forum requesting it, with no replies...

Any Mods for Comfort Blinkers? (or Planned for Update 1.54?)
#1 Post by emigg7 » 08 Feb 2025 17:14

Hello everyone,
I was wondering if there are any mods available that add comfort blinkers (three-blink turn signals) to ETS2/ATS. I couldn't find anything so far.
If there is no mod for this yet, would it be possible for someone to create one? I think it would be a great addition for realism and ease of use.
Also, does anyone know if SCS is planning to implement this feature in update 1.54 or in the future?



EDIT:
This is how I created the 'stalk' way to work, I assumed there's only 2 buttons for up/down:

Quick flick up/middle or down/middle, would be the momentary activation which would start the 2 seconds timer in the given direction.

Flick up or down, would initiate permanent activation in the given direction, as the stalk stays in that position.
Manually flick back to middle to turn off, the wheel rotation has no affect.

But you are asking?
That the games 'auto cancel' be used to turn off the permanent activation even though the stalk is still up or down and you'd then just manually return the stalk to the middle position?

But if you have to manually return the stalk to the middle anyway, why bother having the 'auto cancel' enabled at all? Just return to middle to turn off the indicator.
I can supply an 'auto cancel' version, if that's what you want? But how many buttons does your stalk have?
multimon_config.sii files: viewtopic.php?p=17658#p17658
controls.sii edits: viewtopic.php?p=24744#p24744
Driving Enhancements: viewtopic.php?p=67254#p67254
TrackIR Driving Enhancements: viewtopic.php?p=46613#p46613
kutyafal
Posts: 2
Joined: March 14th, 2025, 12:15 pm

Re: Controls.sii file changes to enhance the trucking experience. First post Updated 20/02/2025

Post by kutyafal » March 16th, 2025, 10:31 am

Hi, thanks for your reply! Sorry to be confusing (I was a bit confused myself) but yes, my turn signal stalk assembly is literally out of a car/truck with a USB encoder. So, it works as you described, flick up/down for the momentary and move further up or down into a permanent position. Both modes/positions are encoded to provide only one button command, one button for left, one for right. I see that my current code as I copied yours contain some remnants from my previous attempt, so I'll clean that up and test it.

Basically, I guess, what I'm asking for is not possible without the mechanical cancel activated somehow. I'm also using another method and that is with JoyToKey to send a simple "[" or "]" command to use with the in-game autocancel function when I flick to the momentary position. This of course doesn't have timer and I don't think it's possible to combine the two methods.

So, I simplify my question: would it be possible to implement what I do with JoyToKey into the controls config so I don't have to remember to run yet another helper program? So basically to use flick up/down (and return to center) to send a "[" or "]" to the game which there are mapped to left and right turn signal? This way the autocancel would work but no timer of course.

I don't know yet which one I'd like long-term but at least I would not need a helper program.

Many thanks and I would also love to know where could I find the reference to all the commands and how the whole thing works so I could tweak it myself. Oh, how do I comment a line in the script while I'm doing some testing? Is it even possible?
Post Reply