TH8a gear shifter and how to use the 7th position

Post Reply
Eewec
Posts: 50
Joined: 19 Apr 2021 13:00

TH8a gear shifter and how to use the 7th position

#1 Post by Eewec » 07 May 2021 16:09

I've been playing for a few months now with a TH8a shifter. During that time it's been bugging me that as far as the game is concerned you have 7 positions + neutral.

I decided to see if this could be changed. Good news peeps :D It can!

Having spent far too much time looking in to this, I thought I'd share with the community on how to get that last gear shift position to actually do something.

First, if you're using Steam, you'll need to make your profile local so you can get at the settings. To do this open the game, select "Manage Profiles" , select the profile you want to use the TH8a shifter, then click "Edit Profile". Now untick "Use Steam Cloud" and click apply. If you've already setup your TH8a you can close the game again now, if not, quickly setup the normal 6 gears plus reverse now then close the game.

Now you need to open windows explorer and head on over to "C:\Users\<Profile name>\Documents\Euro Truck Simulator 2\profiles" and open the directory there with the long serious of characters. There might be multiple if you have more than one profile. That series of characters is actually a hex representation of your profile name, so go google search for a hex to text converter to figure out the right one.

Open the directory and in there is a file called "controls.sii". Open that and find the line;

Code: Select all

 config_lines[418]: "mix gear8 `semantical.gear8?0`"
Directly above that line will be the line;

Code: Select all

 config_lines[417]: "mix gear7 `joy2.b6?0 | semantical.gear7?0`"
or something very similar. For me. my Gearbox is my second controller, hence joy2.

So we want to change

Code: Select all

 config_lines[418]: "mix gear8 `semantical.gear8?0`"
into

Code: Select all

 config_lines[418]: "mix gear8 `joy2.b7?0 | semantical.gear8?0`"
That means the game will now see the seventh position. However, the software gearbox doesn't yet.

In the same directory as "controls.sii" are various premade gearbox configs. After a bit of research, I figured out how to make my own that works.

Make a file called "gearbox_layout_th8a.sii" and edit it to include the following;

Code: Select all

SiiNunit
{
direct_gearbox_config : _nameless.28d.th8a.00v1 {
 name: "TH8a"
 clutch_mode: analog
 selector_mode: range_split
 gears: 17
 gears[0]: _nameless.Gear.Neutral
 gears[1]: _nameless.Gear.Crawling.Low
 gears[2]: _nameless.Gear.Crawling.High
 gears[3]: _nameless.Gear.First.Low
 gears[4]: _nameless.Gear.First.High
 gears[5]: _nameless.Gear.Second.Low
 gears[6]: _nameless.Gear.Second.High
 gears[7]: _nameless.Gear.Third.Low
 gears[8]: _nameless.Gear.Third.High
 gears[9]: _nameless.Gear.Forth.Low
 gears[10]: _nameless.Gear.Forth.High
 gears[11]: _nameless.Gear.Fifth.Low
 gears[12]: _nameless.Gear.Fifth.High
 gears[13]: _nameless.Gear.Sixth.Low
 gears[14]: _nameless.Gear.Sixth.High
 gears[15]: _nameless.Gear.Reverse.Low
 gears[16]: _nameless.Gear.Reverse.High
}

direct_gearbox_gear : _nameless.Gear.Neutral {
 gear_impulse_index: 0
 selector_1: -1
 selector_2: -1
 gear: 0
 name: N
}

direct_gearbox_gear : _nameless.Gear.Reverse.Low {
 gear_impulse_index: 1
 selector_1: -1
 selector_2: 0
 gear: -1
 name: RL
}

direct_gearbox_gear : _nameless.Gear.Reverse.High {
 gear_impulse_index: 1
 selector_1: -1
 selector_2: 1
 gear: -2
 name: RH
}

direct_gearbox_gear : _nameless.Gear.Crawling.Low {
 gear_impulse_index: 2
 selector_1: -1
 selector_2: 0
 gear: 1
 name: C1
}

direct_gearbox_gear : _nameless.Gear.Crawling.High {
 gear_impulse_index: 2
 selector_1: -1
 selector_2: 1
 gear: 2
 name: C2
}

direct_gearbox_gear : _nameless.Gear.First.Low {
 gear_impulse_index: 3
 selector_1: -1
 selector_2: 0
 gear: 3
 name: 1L
}

direct_gearbox_gear : _nameless.Gear.First.High {
 gear_impulse_index: 3
 selector_1: -1
 selector_2: 1
 gear: 4
 name: 1H
}

direct_gearbox_gear : _nameless.Gear.Second.Low {
 gear_impulse_index: 4
 selector_1: -1
 selector_2: 0
 gear: 5
 name: 2L
}

direct_gearbox_gear : _nameless.Gear.Second.High {
 gear_impulse_index: 4
 selector_1: -1
 selector_2: 1
 gear: 6
 name: 2H
}

direct_gearbox_gear : _nameless.Gear.Third.Low {
 gear_impulse_index: 5
 selector_1: -1
 selector_2: 0
 gear: 7
 name: 3L
}

direct_gearbox_gear : _nameless.Gear.Third.High {
 gear_impulse_index: 5
 selector_1: -1
 selector_2: 1
 gear: 8
 name: 3H
}

direct_gearbox_gear : _nameless.Gear.Forth.Low {
 gear_impulse_index: 6
 selector_1: -1
 selector_2: 0
 gear: 9
 name: 4L
}

direct_gearbox_gear : _nameless.Gear.Forth.High {
 gear_impulse_index: 6
 selector_1: -1
 selector_2: 1
 gear: 10
 name: 4H
}

direct_gearbox_gear : _nameless.Gear.Fifth.Low {
 gear_impulse_index: 7
 selector_1: -1
 selector_2: 0
 gear: 11
 name: 5L
}

direct_gearbox_gear : _nameless.Gear.Fifth.High {
 gear_impulse_index: 7
 selector_1: -1
 selector_2: 1
 gear: 12
 name: 5H
}

direct_gearbox_gear : _nameless.Gear.Sixth.Low {
 gear_impulse_index: 8
 selector_1: -1
 selector_2: 0
 gear: 13
 name: 6L
}

direct_gearbox_gear : _nameless.Gear.Sixth.High {
 gear_impulse_index: 8
 selector_1: -1
 selector_2: 1
 gear: 14
 name: 6H
}

}
Save that file in the same profile folder as the others and then open the game.

Select Options -> Controls and scroll down to "Shifter layout". In that drop down menu, if everything went correctly, should be an option called "TH8a". The layout is for 12+2 gears in the following layout;
hshifter_splitterv1.gif
hshifter_splitterv1.gif (6.99 KiB) Viewed 2471 times
This only uses the second selector switch you have so in theory you could have another 16 gear positions by using the other one.

EDIT; I've made a version 2 with the following layout which cuts down considerably on having to use the second selector;
hshifter_splitter.gif
hshifter_splitter.gif (7.1 KiB) Viewed 2489 times
with the following file saved as "gearbox_layout_th8a_v2.sii";

Code: Select all

SiiNunit
{
direct_gearbox_config : _nameless.28d.th8a.00v2 {
 name: "TH8a V2"
 clutch_mode: analog
 selector_mode: range_split
 gears: 17
 gears[0]: _nameless.Gear1.Neutral
 gears[1]: _nameless.Gear1.Crawling.Low
 gears[2]: _nameless.Gear1.Crawling.High
 gears[3]: _nameless.Gear1.First.Low
 gears[4]: _nameless.Gear1.First.High
 gears[5]: _nameless.Gear1.Second.Low
 gears[6]: _nameless.Gear1.Second.High
 gears[7]: _nameless.Gear1.Third.Low
 gears[8]: _nameless.Gear1.Third.High
 gears[9]: _nameless.Gear1.Forth.Low
 gears[10]: _nameless.Gear1.Forth.High
 gears[11]: _nameless.Gear1.Fifth.Low
 gears[12]: _nameless.Gear1.Fifth.High
 gears[13]: _nameless.Gear1.Sixth.Low
 gears[14]: _nameless.Gear1.Sixth.High
 gears[15]: _nameless.Gear1.Reverse.Low
 gears[16]: _nameless.Gear1.Reverse.High
}

direct_gearbox_gear : _nameless.Gear1.Neutral {
 gear_impulse_index: 0
 selector_1: -1
 selector_2: -1
 gear: 0
 name: N
}

direct_gearbox_gear : _nameless.Gear1.Reverse.Low {
 gear_impulse_index: 1
 selector_1: -1
 selector_2: 0
 gear: -1
 name: RL
}

direct_gearbox_gear : _nameless.Gear1.Reverse.High {
 gear_impulse_index: 1
 selector_1: -1
 selector_2: 1
 gear: -2
 name: RH
}

direct_gearbox_gear : _nameless.Gear1.Crawling.Low {
 gear_impulse_index: 2
 selector_1: -1
 selector_2: 0
 gear: 1
 name: C1
}

direct_gearbox_gear : _nameless.Gear1.Crawling.High {
 gear_impulse_index: 3
 selector_1: -1
 selector_2: 0
 gear: 2
 name: C2
}

direct_gearbox_gear : _nameless.Gear1.First.Low {
 gear_impulse_index: 4
 selector_1: -1
 selector_2: 0
 gear: 3
 name: 1L
}

direct_gearbox_gear : _nameless.Gear1.First.High {
 gear_impulse_index: 5
 selector_1: -1
 selector_2: 0
 gear: 4
 name: 1H
}

direct_gearbox_gear : _nameless.Gear1.Second.Low {
 gear_impulse_index: 6
 selector_1: -1
 selector_2: 0
 gear: 5
 name: 2L
}

direct_gearbox_gear : _nameless.Gear1.Second.High {
 gear_impulse_index: 7
 selector_1: -1
 selector_2: 0
 gear: 6
 name: 2H
}

direct_gearbox_gear : _nameless.Gear1.Third.Low {
 gear_impulse_index: 8
 selector_1: -1
 selector_2: 0
 gear: 7
 name: 3L
}

direct_gearbox_gear : _nameless.Gear1.Third.High {
 gear_impulse_index: 8
 selector_1: -1
 selector_2: 1
 gear: 8
 name: 3H
}

direct_gearbox_gear : _nameless.Gear1.Forth.Low {
 gear_impulse_index: 2
 selector_1: -1
 selector_2: 1
 gear: 9
 name: 4L
}

direct_gearbox_gear : _nameless.Gear1.Forth.High {
 gear_impulse_index: 3
 selector_1: -1
 selector_2: 1
 gear: 10
 name: 4H
}

direct_gearbox_gear : _nameless.Gear1.Fifth.Low {
 gear_impulse_index: 4
 selector_1: -1
 selector_2: 1
 gear: 11
 name: 5L
}

direct_gearbox_gear : _nameless.Gear1.Fifth.High {
 gear_impulse_index: 5
 selector_1: -1
 selector_2: 1
 gear: 12
 name: 5H
}

direct_gearbox_gear : _nameless.Gear1.Sixth.Low {
 gear_impulse_index: 6
 selector_1: -1
 selector_2: 1
 gear: 13
 name: 6L
}

direct_gearbox_gear : _nameless.Gear1.Sixth.High {
 gear_impulse_index: 7
 selector_1: -1
 selector_2: 1
 gear: 14
 name: 6H
}

}
Leandro3065
Posts: 1
Joined: 15 Jan 2023 14:40

Re: TH8a gear shifter and how to use the 7th position

#2 Post by Leandro3065 » 15 Jan 2023 14:45

Hello my good and kind sir.
So, i've been messing around with this and i just seem to cant figure it out,
my idea was to use your code and make my own, what i wanted to do was make the gears on the th8a (1,2,3,4,5,6,7,R) correspond to 1,4,6,8,10,11,12,R) ingame
But everytime i edit the file, not even the name shows up on controls it just says "splitter" and uses common splitter settings, i dont know what i'm doing wrong...

Would you do me the favor of editing the file, please?
Thank you.
Last edited by Leandro3065 on 15 Jan 2023 14:46, edited 1 time in total.
Post Reply

Return to “Steering wheel + pedals”

Who is online

Users browsing this forum: No registered users and 1 guest