American Truck Simulator

American Truck Simulator

View Stats:
Iridium117 Mar 9, 2021 @ 4:43pm
Can I bind 2 buttons to one function? (Xbox One Controller)
So I want to know if there's a way to map a combination of two buttons on my controller to one function. An example of this is the cruise control; default has you pressing 'X' to set your cruise. What I would like to do is hold 'X' and press up on the D-pad to increase the cruise, hold 'X' and down to decrease, hold 'X' and press right D-pad to resume, and so on a so forth.

Another example is the realistic automatic. Right now my RB is shift up (either to neutral from reverse or to drive from neutral) and my LB is shift down. What I would like to do is leave it that same way, but add holding 'A' and tapping RB would trigger 'Hint shift up,' and the same for shift down on LB.

I suppose you'd call it dynamic controller binding, is that possible in ATS? The only other example of a game that did this is Elite Dangerous. Almost ALL of the controller bindings are dynamic. Holding A, B, X, or Y and hitting the D-pad does 16 different things! Seeing as there are a plethora of things to control on a truck that I can't seem to do without a keyboard, I'd like to know if this is an option.


Before you give me slack, I play in VR. I don't know my keyboard that well, but I have my controller memorized. And since I can't afford a wheel, this is what I've got. I don't drive truck anymore, but I wanna keep my skills somewhat sharp.
< >
Showing 1-9 of 9 comments
Eddie Yantz Mar 9, 2021 @ 7:07pm 
"UCR" & "vJoy" together work fabulously for me. I bind my truck-driving gas&clutch pedals (two axis) into one vJoy axis to use my pedals for single axis helicopter yaw control (tail-rotor).

UCR allows tons of combining and splitting options for buttons and axis to a vJoy controller. Then you map vJoy in the game. Both UCR & vJoy are free so documentation is meager, but they work great after you figure them out. UCR = Universal Controller Remapper (github) and vJoy = (virtual joystick) for your internet search.
Fury6 Mar 11, 2021 @ 2:16pm 
You certainly can, but... you're going to need to learn some things -

Starting here:
https://eurotrucksimulator2.com/input_config.php#components
--

The bonus is, once you understand the input subsystem there's an awful lot you can do with it.
Last edited by Fury6; Mar 11, 2021 @ 2:19pm
That would be a help for some no doubt. I wish I could unbind two things from the same button. I built a button box with mechanical toggle switches, and all I wish for is the ability to control the running lights on off on one, and headlights on the other.
Right now, I throw one switch ON for RL, then OFF for headlights. This makes them out of sync when turning off.
Small dreams I suppose.
Iridium117 Mar 11, 2021 @ 7:33pm 
Originally posted by Fury6:
You certainly can, but... you're going to need to learn some things -

Starting here:
https://eurotrucksimulator2.com/input_config.php#components
--

The bonus is, once you understand the input subsystem there's an awful lot you can do with it.

Ah I see, so I can manually configure my inputs. A bit of a hassle, but nothing I can't handle, I already bound multiple things to one input already, I just didn't realize I could bind multiple inputs to one output. Thank you
Fury6 Mar 12, 2021 @ 8:19pm 
Originally posted by Iridium117:
[...]
Ah I see, so I can manually configure my inputs. A bit of a hassle, but nothing I can't handle, I already bound multiple things to one input already, I just didn't realize I could bind multiple inputs to one output. Thank you

I use a steering wheel and one of the things I do for my own input setup is exactly what you're describing above... In my case I assign two of my on-wheel buttons to a shift function using logic operators. My wheel (G-27) has 27 buttons in total (wheel+shifter) and sacrificing two of those to a shift function gives me 25 * 4 - 6 potential button functions on that one controller alone [although in my case it's actually (25-6) * 4 because I don't apply the shift logic to the 6 active gear selector positions]. Not saying I necessarily use them all, but the flexibility is there.

Iridium117 Mar 13, 2021 @ 8:36pm 
Originally posted by Fury6:
Originally posted by Iridium117:
[...]
Ah I see, so I can manually configure my inputs. A bit of a hassle, but nothing I can't handle, I already bound multiple things to one input already, I just didn't realize I could bind multiple inputs to one output. Thank you

I use a steering wheel and one of the things I do for my own input setup is exactly what you're describing above... In my case I assign two of my on-wheel buttons to a shift function using logic operators. My wheel (G-27) has 27 buttons in total (wheel+shifter) and sacrificing two of those to a shift function gives me 25 * 4 - 6 potential button functions on that one controller alone [although in my case it's actually (25-6) * 4 because I don't apply the shift logic to the 6 active gear selector positions]. Not saying I necessarily use them all, but the flexibility is there.

Would you mind giving me an example of one of the lines in the config file on how you got that to work? I seem to be having some difficulties...
Fury6 Mar 21, 2021 @ 1:22am 
Sorry for the late response...

here's an extract containing my POV pad view commands:
"mix cam1 `keyboard.key1?0 | semantical.cam1?0 | joy.pov1_up?0 & (!joy.b20?0 & !joy.b22?0)`" "mix cam2 `keyboard.key2?0 | semantical.cam2?0 | joy.pov1_up?0 & (joy.b20?0 & !joy.b22?0)`" "mix cam3 `keyboard.key3?0 | semantical.cam3?0 | joy.pov1_down?0 & (joy.b20?0 & !joy.b22?0)`" "mix cam4 `keyboard.key4?0 | semantical.cam4?0 | joy.pov1_left?0 & (joy.b20?0 & !joy.b22?0)`" "mix cam5 `keyboard.key5?0 | semantical.cam5?0 | joy.pov1_down?0 & (!joy.b20?0 & !joy.b22?0)`" ... "mix cam8 `keyboard.key8?0 | semantical.cam8?0 | joy.pov1_right?0 & (joy.b20?0 & !joy.b22?0)`" ... "mix lookpos1 `keyboard.num5?0 | semantical.lookpos1?0 | joy.pov1_up?0 & (!joy.b20?0 & !joy.b22?0)`" "mix lookpos2 `keyboard.num9?0 | semantical.lookpos2?0 | joy.pov1_right?0 & (!joy.b20?0 & joy.b22?0)`" "mix lookpos3 `keyboard.num7?0 | semantical.lookpos3?0 | joy.pov1_left?0 & (!joy.b20?0 & joy.b22?0)`" "mix lookpos4 `keyboard.num6?0 | semantical.lookpos4?0 | joy.pov1_right?0 & (!joy.b20?0 & !joy.b22?0)`" "mix lookpos5 `keyboard.num4?0 | semantical.lookpos5?0 | joy.pov1_left?0 & (!joy.b20?0 & !joy.b22?0)`"

Button 20 & 22 on device 'joy' are my shift buttons. Pressing the pad directionals unshifted gives me four different views (internals + out-the-window), pressing the pad directionals with button 20 held down gives me four alternate different views (externals in this case), pressing pad directionals with button 22 held down gives me another potential four different views (though only three are actually being used).

The pad directionals with both shift buttons pressed are as yet unused.

The logicals are
| = OR & = AND ! = NOT
Iridium117 Apr 6, 2021 @ 2:38pm 
Originally posted by Fury6:
Sorry for the late response...

here's an extract containing my POV pad view commands:
"mix cam1 `keyboard.key1?0 | semantical.cam1?0 | joy.pov1_up?0 & (!joy.b20?0 & !joy.b22?0)`" "mix cam2 `keyboard.key2?0 | semantical.cam2?0 | joy.pov1_up?0 & (joy.b20?0 & !joy.b22?0)`" "mix cam3 `keyboard.key3?0 | semantical.cam3?0 | joy.pov1_down?0 & (joy.b20?0 & !joy.b22?0)`" "mix cam4 `keyboard.key4?0 | semantical.cam4?0 | joy.pov1_left?0 & (joy.b20?0 & !joy.b22?0)`" "mix cam5 `keyboard.key5?0 | semantical.cam5?0 | joy.pov1_down?0 & (!joy.b20?0 & !joy.b22?0)`" ... "mix cam8 `keyboard.key8?0 | semantical.cam8?0 | joy.pov1_right?0 & (joy.b20?0 & !joy.b22?0)`" ... "mix lookpos1 `keyboard.num5?0 | semantical.lookpos1?0 | joy.pov1_up?0 & (!joy.b20?0 & !joy.b22?0)`" "mix lookpos2 `keyboard.num9?0 | semantical.lookpos2?0 | joy.pov1_right?0 & (!joy.b20?0 & joy.b22?0)`" "mix lookpos3 `keyboard.num7?0 | semantical.lookpos3?0 | joy.pov1_left?0 & (!joy.b20?0 & joy.b22?0)`" "mix lookpos4 `keyboard.num6?0 | semantical.lookpos4?0 | joy.pov1_right?0 & (!joy.b20?0 & !joy.b22?0)`" "mix lookpos5 `keyboard.num4?0 | semantical.lookpos5?0 | joy.pov1_left?0 & (!joy.b20?0 & !joy.b22?0)`"

Button 20 & 22 on device 'joy' are my shift buttons. Pressing the pad directionals unshifted gives me four different views (internals + out-the-window), pressing the pad directionals with button 20 held down gives me four alternate different views (externals in this case), pressing pad directionals with button 22 held down gives me another potential four different views (though only three are actually being used).

The pad directionals with both shift buttons pressed are as yet unused.

The logicals are
| = OR & = AND ! = NOT


HOLY ♥♥♥♥♥♥♥ MUSHROOMS BATMAN

Thank you, the logics alone made a hell of a lot more sense!
Iridium117 Apr 6, 2021 @ 2:39pm 
.....and apparently japaense mushrooms got censored....

I guess i couldn't get away with that one lol
< >
Showing 1-9 of 9 comments
Per page: 1530 50

Date Posted: Mar 9, 2021 @ 4:43pm
Posts: 9