Автор Тема: Инверсия оси X стика Dualshock PS4  (Прочитано 594 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vladimirur

  • Пользователь
  • Сообщений: 3
    • Просмотр профиля
Инверсия оси X стика Dualshock PS4
« : 30 Январь 2024, 12:47:50 »
Привет, такая ситуация:
Не все игры PS4 поддерживают в настройках инверсию по оси X, как-то можно программно, или механически инверсировать в джойстике ось Х в стике Dualshock PS4?

Онлайн Ogr

  • Пользователь
  • Сообщений: 7393
    • Просмотр профиля
Инверсия оси X стика Dualshock PS4
« Ответ #1 : 02 Февраль 2024, 16:00:49 »
или механически инверсировать в джойстике ось Х в стике Dualshock PS4?
Полагаю, если перенаправить сигналы от этих контактов местами, то направление оси инвертируется.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5005
    • Просмотр профиля
Инверсия оси X стика Dualshock PS4
« Ответ #2 : 02 Февраль 2024, 16:33:29 »
https://www.reddit.com/r/PS4/comments/a2zmgi/to_all_x_inverters_on_ps4_here_is_a_solution_for/. Он через Remote Play транслирует PS4 на ПК. Геймпад подключен к ПК, через платную программу инвертирует ось X (думаю есть бесплатные программы), потом обратно подключает HDMI, чтобы выводить изображение как обычно, а ввод с геймпада остаётся инвертированным как раньше. Только не понял, что значит "подключить HDMI обратно", он что ли использовал монитор/телевизор на PS4 и ПК попеременно. Замечу, что HDMI подключать на горячую нельзя (одно из устройств должно быть выключено - монитор/телевизор или устройство вывода).

Услышал недавно про устройства для читеров для PS5, которые компенсирую отдачу и т. п. в сетевых шутерах (их стали блокировать), т. е. можно сделать устройство прокладку между геймпадом и консолью для инверсии.

Для взломанной консоли нашёлся сразу плагин с изменением раскладки кнопок под каждую игру: https://github.com/GoldHEN/GoldHEN_Plugins_Repository#gamepad-helper-plugin. Там нет осей (только для мёртвой зоны), но наличие такого плагина говорит о том, что можно найти или дописать самому настройку инверсии.

Оффлайн vladimirur

  • Пользователь
  • Сообщений: 3
    • Просмотр профиля
Инверсия оси X стика Dualshock PS4
« Ответ #3 : 05 Февраль 2024, 09:38:24 »
Спасибо, буду изучать, конечно в приоритете программное изменение настроек)

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5005
    • Просмотр профиля
Инверсия оси X стика Dualshock PS4
« Ответ #4 : 06 Февраль 2024, 00:25:34 »
vladimirur, если взломанная консоль, то попробуйте спросить на 4pda или где обсуждают взломанные PS4 (например, https://www.pspx.ru). Плагин, который указал, несложно отредактировать, но компилируйте сами. Например, изменить функцию deadzone_apply https://github.com/GoldHEN/GoldHEN_Plugins_Repository/blob/1e93d84246d6813e8023f54b88bc34840491201e/plugin_src/gamepad_helper/source/main.c#L75:
int deadzone_apply(ScePadData* pData) {
    if (g_enableDeadZone) {
        pData->leftStick.x = 255 - pData->leftStick.x; // Добавил
        pData->rightStick.x = 255 - pData->rightStick.x; // Добавил
        pData->leftStick.x = check_deadzone(pData->leftStick.x, g_deadZoneLeft);
        pData->leftStick.y = check_deadzone(pData->leftStick.y, g_deadZoneLeft);
        pData->rightStick.x = check_deadzone(pData->rightStick.x, g_deadZoneRight);
        pData->rightStick.y = check_deadzone(pData->rightStick.y, g_deadZoneRight);
    }
    return 0;
}
Тогда при активации мёртвой зоны будет инверсия по X. Только значение центра 128 (0x80), будет постоянно между 127 и 128 меняться (255-127=128, 255-128=127). Это не проблема, если deadzone от 1 и выше.

Оффлайн vladimirur

  • Пользователь
  • Сообщений: 3
    • Просмотр профиля
Инверсия оси X стика Dualshock PS4
« Ответ #5 : 06 Февраль 2024, 10:23:11 »
Sharpnull, Консоль не взламывали, обычная PS4 из М-видео. Спасибо)