Локальный HUD-оверлей для R.E.P.O., который показывает информацию о текущем забеге в отдельном прозрачном окне поверх игры.
Оригинальный автор: EgorSalad (Dunweir)
Автор мультиплеерного форка: NeverFun21
OverlayHUD — неофициальный фанатский проект. Он не связан с semiwork, издателем R.E.P.O. или Thunderstore. Данный репозиторий является оптимизированным форком, созданным для идеальной работы в мультиплеере.
Оригинальный мод отлично работал для хоста, но вызывал рассинхронизацию у клиентов и просадки производительности. Этот форк полностью решает эти проблемы:
- Полная поддержка клиентов: Оверлей корректно активируется у всех игроков в лобби (включая магазин) и автоматически скрывается на Арене.
- Глобальная синхронизация (Photon Events): Игроки с установленным модом образуют невидимую сеть. Если один игрок обнаружил монстра, он появляется в оверлее у всей команды. Хост раздает клиентам точный таймер респавна до миллисекунд.
- Синхронизация здоровья (HP Fix): Убраны задержки полоски здоровья при получении урона монстрами.
- Ultimate Optimization: Сетевые HTTP-запросы плагина переведены на технологию
Keep-Alive. Мод больше не спамит тысячами TCP-соединений, что полностью устраняет скачки пинга и падение FPS.
HUD умеет показывать:
- встреченных монстров и их уровень силы;
- текущее и максимальное здоровье монстров;
- состояние монстра и оставшееся время до респавна (или иконку 💀 для неизвестного таймера);
- номер уровня и таймер прохождения;
- улучшения игрока и текущую/потерянную стоимость ценностей на карте.
Настройки окна:
- прозрачное окно поверх игры (пропуск кликов сквозь окно);
- перетаскивание и привязка к краям экрана;
- изменение масштаба интерфейса и количества колонок;
- русский и английский интерфейс;
- умное скрытие при удержании
Tabили потере фокуса окна (Alt-Tab).
| Сочетание | Действие |
|---|---|
Ctrl+Alt+O |
Показать или скрыть окно |
Ctrl+Alt+I |
Включить или выключить пропуск кликов |
Ctrl+Alt+R |
Перезагрузить страницу оверлея |
Ctrl+Alt+Q |
Закрыть OverlayHUD |
Мод можно установить двумя способами: вручную или через менеджер модов (Thunderstore Mod Manager / r2modman / Gale).
Требования: Установленный BepInEx (версии 5.x).
- Скачайте файлы
OverlayHUD.dllиOverlayHUD_app.zipиз раздела Releases. - В менеджере модов выберите профиль игры, перейдите в Settings и нажмите Browse profile folder (Открыть папку профиля).
- Перейдите по пути
BepInEx\plugins\. - Создайте новую папку для мода. Назовите её коротко (например,
OverlayHUD).⚠️ Важно: В Windows есть ограничение на длину пути (260 символов). Если название папки будет слишком длинным, оверлей не сможет распаковать свои файлы и не появится на экране (Ошибка0x80010135). - Поместите оба скачанных файла в эту папку.
- Не распаковывайте
OverlayHUD_app.zipвручную! Просто запустите игру, и плагин сам извлечет локальный сервер.
- Скачайте установочный
.zipпакет мода из раздела Releases. - Откройте менеджер модов и выберите ваш профиль с игрой R.E.P.O.
- Для Gale: Нажмите кнопку Import сверху, выберите Local mod и укажите скачанный архив.
- Для Thunderstore: Перейдите во вкладку Settings -> Import local mod и выберите архив. Менеджер установит всё автоматически.
flowchart LR
Game["R.E.P.O."] --> Plugin["OverlayHUD.dll<br/>BepInEx + Harmony + Photon"]
Plugin -->|"HTTP JSON (Keep-Alive)<br/>127.0.0.1:8787"| Server["Локальный Node.js server"]
Server -->|"State + Server-Sent Events"| Web["HTML / CSS / JavaScript HUD"]
Web --> Electron["Прозрачное Electron-окно"]
- Игровой плагин (
Plugin.cs): Загружается через BepInEx и с помощью Harmony подписывается на игровые события. Новая система кэшированияReflectionснижает нагрузку на Unity, аPhotonEventsсинхронизирует обнаружение мобов между клиентами. - Локальный сервер (
server.js): Хранит состояние HUD. Слушает только127.0.0.1:8787(данные не уходят в интернет). - Desktop-приложение: Создаёт прозрачное click-through окно Electron. Плагин безопасно распаковывает
OverlayHUD_app.zipпри старте и запускаетOverlayHUD.exe.
Главный источник информации — файл BepInEx/LogOutput.log.
Если HUD не появляется:
- Проверьте, что игра запущена в windowed или borderless режиме (обычное окно не может отображаться поверх exclusive fullscreen).
- Убедитесь, что папка мода имеет короткое название (иначе архив не распакуется).
- Проверьте наличие
OverlayHUD_app/OverlayHUD.exeрядом с DLL мода. - Убедитесь, что порт
8787не занят другим процессом.
Исходный код OverlayHUD распространяется по лицензии MIT. Шрифты (Roboto, Teko), зависимости (Electron, Node.js, BepInEx), игровые изображения и торговые марки не перелицензируются под MIT. Их условия и сведения об авторстве перечислены в файле THIRD_PARTY_NOTICES.md.

