Проекты
Программная модификация контроллеров средствами Windows
Тип участника:
Физическое лицо
Полное наименование организации/физического лица/авторского или творческого коллектива:
Чепрасов Андрей Вячеславович
Контактное лицо: ФИО:
Чепрасов Андрей Вячеславович
ФИО всех участников авторского/творческого коллектива:
Чепрасов Андрей Вячеславович
Идея и краткое описание ИТ-проекта:
Проект представляет собой легковесную десктопную утилиту, решающую проблему аппаратной несовместимости современного периферийного оборудования (многокомпонентных рулевых баз, педальных блоков, джойстиков) со сложными профессиональными автосимуляторами и киберспортивными дисциплинами (такими как Richard Burns Rally, Forza Horizon).
Существующие решения используют программные эмуляторы (создающие виртуальные контроллеры), которые неизбежно вносят задержку ввода и искажают эффекты физической обратной связи. Идея WinJoy-Tweaker заключается в отказе от эмуляции: программа на системном уровне переопределяет бинарный профиль устройства прямо в реестре Windows. В результате операционная система аппаратно и с нулевой задержкой распознает устройство в нужной для игры конфигурации.
Существующие решения используют программные эмуляторы (создающие виртуальные контроллеры), которые неизбежно вносят задержку ввода и искажают эффекты физической обратной связи. Идея WinJoy-Tweaker заключается в отказе от эмуляции: программа на системном уровне переопределяет бинарный профиль устройства прямо в реестре Windows. В результате операционная система аппаратно и с нулевой задержкой распознает устройство в нужной для игры конфигурации.
Перечень решаемых задач:
1. Безопасное чтение, лексический анализ и десериализация бинарных ключей реестра Windows (проприетарная структура JOYREGHWCONFIG).
2. Опрос скрытых аппаратных характеристик устройств через низкоуровневые COM-интерфейсы подсистемы DirectInput.
3. Системное переопределение типа контроллера (руль/геймпад/штурвал) и маппинг логических осей.
4. Обеспечение информационной безопасности через нативный менеджер резервного копирования (автоматическая генерация файлов формата .reg для отката к заводским настройкам).
2. Опрос скрытых аппаратных характеристик устройств через низкоуровневые COM-интерфейсы подсистемы DirectInput.
3. Системное переопределение типа контроллера (руль/геймпад/штурвал) и маппинг логических осей.
4. Обеспечение информационной безопасности через нативный менеджер резервного копирования (автоматическая генерация файлов формата .reg для отката к заводским настройкам).
Описание функциональных возможностей и элементов проекта:
RegistryEngine: ядро программы, взаимодействующее с реестром в пространстве текущего пользователя (не требует прав администратора).
DeviceInspector: модуль фонового сканирования DirectInput-устройств (сбор данных о мертвых зонах, гранулярности и поддержке Force Feedback).
BackupManager: нативный парсер, позволяющий создавать резервные копии и восстанавливать их без использования системной утилиты regedit.exe.
GUI: современный интерфейс с поддержкой тёмной темы, защитой от некорректного ввода и динамической локализацией на лету.
DeviceInspector: модуль фонового сканирования DirectInput-устройств (сбор данных о мертвых зонах, гранулярности и поддержке Force Feedback).
BackupManager: нативный парсер, позволяющий создавать резервные копии и восстанавливать их без использования системной утилиты regedit.exe.
GUI: современный интерфейс с поддержкой тёмной темы, защитой от некорректного ввода и динамической локализацией на лету.
Дата внедрения (в случае, если предполагается запуск проекта в эксплуатацию):
-
Используемые платформы, средства разработки:
Язык: ISO C++ (для системной логики) и C++/CLI (для графического интерфейса).
Платформа: ОС Windows 10/11 (x64).
Технологии и API: Win32 API (Advapi32.lib), COM-интерфейсы, Microsoft DirectX SDK (DirectInput 8), Windows Forms (.NET).
Среда разработки: Microsoft Visual Studio 2026.
Платформа: ОС Windows 10/11 (x64).
Технологии и API: Win32 API (Advapi32.lib), COM-интерфейсы, Microsoft DirectX SDK (DirectInput 8), Windows Forms (.NET).
Среда разработки: Microsoft Visual Studio 2026.
Стоимость разработки системы:
0 рублей
Средний размер ежегодных затрат на эксплуатацию:
0 рублей
Перспективы развития:
Внедрение системы профилирования: возможность сохранять, импортировать и экспортировать конфигурации .lck для конкретных игр; создание открытой базы данных популярных профилей на GitHub; внедрение поддержки преобразования осей для кастомных DIY-контроллеров на базе Arduino/STM32.
Достижение поставленных целей:
Проект представляет собой полностью завершенный MVP (Release Candidate). Успешно реализован весь запланированный функционал: программа считывает данные из подсистемы DirectInput, десериализует ключи реестра, применяет пользовательские модификации и генерирует нативные файлы резервных копий. Работоспособность и эффективность утилиты аппаратно подтверждена на реальном оборудовании (включая Arduino/SparkFun контроллеры) в связке с играми Forza Horizon и Richard Burns Rally. Продукт готов к эксплуатации.
Актуальность, экономическая или социальная полезность:
Актуальность обусловлена стремительным развитием индустрии киберспорта и симрейсинга. Экономическая полезность проекта заключается в том, что пользователи могут бесшовно интегрировать имеющееся (или устаревшее) периферийное оборудование, а также самодельные DIY-контроллеры на базе микроконтроллеров Arduino в новейшие симуляторы. Это избавляет игроков от необходимости покупки новых, дорогих и сертифицированных рулевых баз (стоимостью от 50 тыс. рублей), значительно снижая финансовый порог входа в киберспорт.
Масштабируемость, способность к взаимодействию с другими системами, мобильность:
Программа является полностью портативной — не требует установки в систему и дополнительных библиотек. Способность к взаимодействию максимальна: поскольку утилита меняет настройки контроллера на базовом уровне ОС Windows, результат её работы автоматически распознается любыми игровыми движками (Unreal Engine, Unity, проприетарные движки симуляторов) без написания плагинов. Масштабируемость обеспечивается возможностью обмена конфигурационными .reg файлами между пользователями для быстрого импорта профилей рулей.
Обоснованность применяемых проектных решений:
- Использование технологии C++/CLI обосновано необходимостью объединения удобного графического интерфейса (WinForms) и неуправляемого кода (вызовы Win32 API) без потерь производительности на маршаллинг данных.
- Работа исключительно в ветке реестра HKEY_CURRENT_USER обоснована требованиями безопасности — это защищает систему от фатальных сбоев и не требует прав администратора (без запросов UAC).
- Отказ от вызова системной утилиты regedit.exe в пользу написания собственного нативного генератора и лексера резервных копий позволил избежать ложных срабатываний антивирусных систем защиты ОС.
Оригинальность, новизна, отличие от аналогов либо отсутствие аналогов:
Ключевое отличие от существующих аналогов (x360ce, vJoy, UCR) заключается в полном отказе от программной эмуляции. Аналоги создают виртуальные драйверы, перехватывающие сигнал, что неизбежно вносит задержку ввода и искажает физику обратной связи. WinJoy-Tweaker напрямую модифицирует нативные бинарные структуры (JOYREGHWCONFIG) в системном реестре. Новизна состоит в успешном реверс-инжиниринге спецификаций мультимедиа (mmddk.h) для управления современными HID-устройствами, что обеспечивает абсолютно нулевую задержку ввода.
Гарантирую достоверность предоставленной в заявке информации. Подтверждаю, что организация не находится в состоянии ликвидации, банкротства, реорганизации (Только для организаций):
Да
Презентация проекта pdf:
Загрузить