XiloOVR
Безоконный SteamVR-оверлей на запястье на C#: чеклист лута, лазерный ввод, чат Twitch и YouTube — не трогая игру.
Что делает
Небольшая панель, прикреплённая к контроллеру в SteamVR — в стиле LIV или OVR Toolkit — для Contractors Showdown: ExfilZone. Показывает чеклист лута и квестовых предметов со счётчиками «собрано/нужно», чтобы проверять, чего ещё не хватает, не открывая меню игры. Указываешь свободной рукой: видимый лазерный луч, триггер добавляет единицу, grip убирает; ячейка «плюс» открывает поиск предмета на VR-клавиатуре по базе из 600+ предметов с иконками. На той же панели — чат Twitch (с ответами, набранными прямо в VR), live-чат YouTube в общей ленте и баннеры о сабах, рейдах и фолловах. Настройки живут во вкладке дашборда SteamVR, а один переключатель регистрирует приложение в собственном списке автозапуска SteamVR.
Как устроено
C# на .NET 8, общается с OpenVR напрямую через официальный C#-биндинг Valve — без Unity и игрового движка. Панель рисуется GDI+ в пиксельный буфер и отправляется в композитор как raw-оверлей, поэтому всё приложение — один самодостаточный исполняемый файл с иконкой в трее и без окон. Наведение — собственный hit-testing поверх API пересечения оверлея; крепление к запястью само восстанавливается после переподключения контроллера и смены сцены. Конфиг, чеклист и база предметов — обычные JSON-файлы, за которыми приложение следит и перезагружает на лету: правишь на десктопе, панель меняется. Чат Twitch по умолчанию читается через анонимный IRC, так что для чтения не нужен логин. Код кросс-компилируется с macOS; каждый push в main собирает скачиваемый артефакт для Windows.
- Принципиально вне рамок: чтение памяти, инъекция DLL, разбор трафика, OCR — приложение ничего не знает о запущенной игре
- Данные о предметах — из community-проекта exfil-zone-assistant (MIT)