Был куплен комплект руль и 2 педали (тормоз и газ), затем решил докупить еще одну педаль - сцепление. Но тут поджидала проблема - игра не хочет работать с педалью сцепления без коробки передач... секвентальная не поддерживает педаль сцепления, только ручная, только хардкор 😎.
Ну пришло сперва самое простое решение - берем и подключаем любой дополнительный геймпад/джойстик и назначаем на нем кнопки на номера передач (главное чтобы кнопок хватило 😊). Да, это работает. но с одним условием - пока сцепление не отпущено или газ на минимуме, необходимо удерживать нужную кнопку.
Немного времени использования такой версии КПП приступил к поиску решения проблемы... Решение было найдено и немного переделано под себя. Ниже предоставленные настройки проверены в ОС Linux Debian, Steam-версии игры 1.58, тягач Volvo, и 3 варианта коробки передач.
Настройка игры через меню.
Первым делом в разделе игры "Кнопки и клавиши", подраздел "Трансмиссия", настраиваем клавиши или кнопки для повышения и понижения КПП, соответственно "Передача вверх" и "Передача вниз".
В разделе "Настройка устройств", подраздел "Трансмиссия". Нас интересует пункт "Трансмиссия" - в нём выбираем "Ручная (с делителем)".
Далее переходим в подраздел "Рычаг КПП". В пункте "Вариант" ставим "С делителем", пункт "Режим ручного переключения передач" устанавливаем "Простой с сигналом".
Выходим из игры и приступаем к следующему этапу.
Корректировка файла настроек игры.
Внимание!!! Настройку выполняем в зависимости от купленной и установленной КПП в Вашем тягаче!
Необходимо найти конфигурационный файл controls.sii, он расположен в библиотеке steam в том месте где игра установлена, по умолчанию домашней папке ~/.steam/steam или если вы добавляли новую директорию то в ней. Переходим по следующему пути в директории библиотеки:
/steamapps/compatdata/227300/pfx/drive_c/users/steamuser/Documents/Euro Truck Simulator 2/steam_profiles/КОД_ПРОФИЛЯ
Где КОД_ПРОФИЛЯ - буквенно-цифровое наименование директории, возможно таких директорий будет несколько, если вы используете несколько аккаунтов steam на одном компьютере для игры.
В данной директории нас интересует файл controls.sii. На всякий случай сделайте копию файла перед началом внесения правок, например сохраните с именем controls.sii.bak.
Открываем в своем любимом редакторе этот файл. Внимание, номера строк могут отличаться от приведенных ниже!!! Не изменяйте эти номера.
Для хранения "номера" передачи я использовал параметры hmdx и hmdy. Возможно они используются для VR, но так как у меня его нет, поэтому ... мне не мешает.
Ищем строки mix с конкретным параметром, см. ниже, которые и будем менять.
Правка для КПП на 6 передач
Подготавливаем "счетчик":
config_lines[295]: "mix hmdx `max(min(memory((gearup | geardown) & gt(clutch, 0.75), hmdy + sel( gearup, 1.0, -1.0 )), 6.0 ), -1.0 )`"
config_lines[296]: "mix hmdy `memory(!gearup & !geardown, hmdx)`"
Нейтраль:
config_lines[481]: "mix gear0 `(gte(hmdx,0.0)<e(hmdx,0.0)) | semantical.gear0?0`"
Конфигурация передач R + 1..6:
config_lines[534]: "mix gear1 `(gte(hmdx,-1.0)<e(hmdx,-1.0)) | semantical.gear1?0`"
config_lines[535]: "mix gear2 `(gte(hmdx,1.0)<e(hmdx,1.0)) | semantical.gear2?0`"
config_lines[536]: "mix gear3 `(gte(hmdx,2.0)<e(hmdx,2.0)) | semantical.gear3?0`"
config_lines[537]: "mix gear4 `(gte(hmdx,3.0)<e(hmdx,3.0)) | semantical.gear4?0`"
config_lines[538]: "mix gear5 `(gte(hmdx,4.0)<e(hmdx,4.0)) | semantical.gear5?0`"
config_lines[539]: "mix gear6 `(gte(hmdx,5.0)<e(hmdx,5.0)) | semantical.gear6?0`"
config_lines[540]: "mix gear7 `(gte(hmdx,6.0)<e(hmdx,6.0)) | semantical.gear7?0`"
Правка для КПП на 12 передач
Подготавливаем "счетчик":config_lines[295]: "mix hmdx `max(min(memory((gearup | geardown) & gt(clutch, 0.75), hmdy + sel( gearup, 1.0, -1.0 )), 12.0 ), -2.0 )`"
config_lines[296]: "mix hmdy `memory(!gearup & !geardown, hmdx)`"
Нейтраль:
config_lines[481]: "mix gear0 `(gte(hmdx,0.0)<e(hmdx,0.0)) | semantical.gear0?0`"
Включаем/выключаем первый переключатель режима КПП:
config_lines[528]: "mix gearsel1on `lte( hmdx,-2.0 ) | gte( hmdx, 7.0 ) | semantical.gearsel1on?0`"
config_lines[529]: "mix gearsel1off `!gearsel1on | semantical.gearsel1off?0`"
Конфигурация передач R1..2 + 1..12:
config_lines[534]: "mix gear1 `(gte(hmdx,-2.0)<e(hmdx,-1.0)) | semantical.gear1?0`"
config_lines[535]: "mix gear2 `(gte(hmdx,1.0)<e(hmdx,1.0)) | (gte(hmdx,7.0)<e(hmdx,7.0)) | semantical.gear2?0`"
config_lines[536]: "mix gear3 `(gte(hmdx,2.0)<e(hmdx,2.0)) | (gte(hmdx,8.0)<e(hmdx,8.0)) | semantical.gear3?0`"
config_lines[537]: "mix gear4 `(gte(hmdx,3.0)<e(hmdx,3.0)) | (gte(hmdx,9.0)<e(hmdx,9.0)) | semantical.gear4?0`"
config_lines[538]: "mix gear5 `(gte(hmdx,4.0)<e(hmdx,4.0)) | (gte(hmdx,10.0)<e(hmdx,10.0)) | semantical.gear5?0`"
config_lines[539]: "mix gear6 `(gte(hmdx,5.0)<e(hmdx,5.0)) | (gte(hmdx,11.0)<e(hmdx,11.0)) | semantical.gear6?0`"
config_lines[540]: "mix gear7 `(gte(hmdx,6.0)<e(hmdx,6.0)) | (gte(hmdx,12.0)<e(hmdx,12.0)) | semantical.gear7?0`"
Правка для КПП на 12+2 передач
config_lines[295]: "mix hmdx `max(min(memory((gearup | geardown) & gt(clutch, 0.75), hmdy + sel( gearup, 1.0, -1.0 )), 14.0 ), -4.0 )`"
config_lines[296]: "mix hmdy `memory(!gearup & !geardown, hmdx)`"
Нейтраль:
config_lines[481]: "mix gear0 `(gte(hmdx,0.0)<e(hmdx,0.0)) | semantical.gear0?0`"
Включаем/выключаем первый переключатель режима КПП:
config_lines[528]: "mix gearsel1on `lte( hmdx,-3.0 ) | gte( hmdx,13.0 ) | semantical.gearsel1on?0`"
config_lines[529]: "mix gearsel1off `!gearsel1on | semantical.gearsel1off?0`"
Включаем/выключаем второй переключатель режима КПП:
config_lines[531]: "mix gearsel2on `gte( hmdx,-4.0 ) & lte( hmdx,-4.0 ) | gte( hmdx,-2.0 ) & lte( hmdx,-2.0 ) | gte( hmdx,7.0 ) & lte( hmdx,14.0 ) | semantical.gearsel2on?0`"config_lines[532]: "mix gearsel2off `!gearsel2on |semantical.gearsel2off?0`"
Конфигурация передач R1..4 + С1..2 + 1..12:
config_lines[534]: "mix gear1 `(gte(hmdx,-4.0)<e(hmdx,-1.0)) | semantical.gear1?0`"
config_lines[535]: "mix gear2 `(gte(hmdx,1.0)<e(hmdx,1.0)) | (gte(hmdx,7.0)<e(hmdx,7.0)) | (gte(hmdx,13.0)<e(hmdx,13.0)) | semantical.gear2?0`"
config_lines[536]: "mix gear3 `(gte(hmdx,2.0)<e(hmdx,2.0)) | (gte(hmdx,8.0)<e(hmdx,8.0)) | (gte(hmdx,14.0)<e(hmdx,14.0)) | semantical.gear3?0`"
config_lines[537]: "mix gear4 `(gte(hmdx,3.0)<e(hmdx,3.0)) | (gte(hmdx,9.0)<e(hmdx,9.0)) | semantical.gear4?0`"
config_lines[538]: "mix gear5 `(gte(hmdx,4.0)<e(hmdx,4.0)) | (gte(hmdx,10.0)<e(hmdx,10.0)) | semantical.gear5?0`"
config_lines[539]: "mix gear6 `(gte(hmdx,5.0)<e(hmdx,5.0)) | (gte(hmdx,11.0)<e(hmdx,11.0)) | semantical.gear6?0`"
config_lines[540]: "mix gear7 `(gte(hmdx,6.0)<e(hmdx,6.0)) | (gte(hmdx,12.0)<e(hmdx,12.0))| semantical.gear7?0`"
Пользуемся назначенными кнопками ранее и выжимом педали сцепления как минимум на 75%.