PEAK Pathfinder
PEAK connection helper with UDP GameServer retry history, WSS/443 Voice transport fix, and an optional full WSS/443 mode.
| Last updated | a month ago |
| Total downloads | 3051 |
| Total rating | 2 |
| Categories | Mods Tools Quality Of Life AI Generated |
| Dependency string | GHEB-PEAK_Pathfinder-0.6.10 |
| Dependants | 0 other packages depend on this package |
This mod requires the following mods to function
BepInEx-BepInExPack_PEAK
BepInEx pack for PEAK. Preconfigured and ready to use.
Preferred version: 5.4.75301README
PEAK Pathfinder
PEAK Pathfinder is a free client-side connection helper for PEAK. It is intended for a specific class of Photon connectivity problems where the game can reach Photon services but assigned GameServer connections over UDP are blocked, filtered, or unstable.
Multiplayer requirement: PEAK Pathfinder must be installed on every player in the session. Before connecting, all players must select the same Pathfinder connection mode. Do not mix UDP Server Selection and Secure WSS/443 in the same session.
PEAK Pathfinder is not a VPN or proxy and cannot fix every possible networking problem.
Video demonstration
Watch the PEAK Pathfinder demonstration on YouTube
The video shows the first-run UDP learning/retry flow, immediate skipping of already-known BAD GameServer assignments, /24 subnet rejection after sufficient BAD history, the local GOOD/BAD history file, and the optional WSS/443 mode.
Connection modes
UDP Server Selection
Keeps the main Photon game connection on UDP.
- Checks the Photon GameServer assigned to the player.
- Uses a 60-second stability check for an unknown server.
- Stores the latest GOOD/BAD result for exact GameServer IPs locally and rejects known BAD assignments immediately on later attempts.
- The first connections may take noticeably longer while PEAK Pathfinder builds local history for the player's network.
- As that history grows, the retry/scanning stage can become significantly faster. Rejection of an already-known BAD assignment itself is immediate, because the mod does not wait for the same timeout again. Total connection time still depends on which GameServer Photon assigns next.
- A whole
/24range is only promoted to BAD after 4 distinct currently-BAD IPs in that range and no currently-GOOD IP there. - Photon Voice uses WSS/443 independently of the MAIN UDP GameServer connection.
Secure WSS/443
Uses Photon's WebSocket Secure transport over TCP/TLS port 443 instead of the normal UDP GameServer path.
This mode is intended for cases where the problem is specifically related to Photon UDP. During development, WSS/443 avoided the observed UDP GameServer timeout on an affected test connection. It is not guaranteed to solve every ISP/network issue and it may increase latency.
The UDP GOOD/BAD database and 60-second UDP scan are not used in this mode.
Voice chat
Starting with v0.6.10, Pathfinder prepares Photon Voice for WSS/443 in both connection modes. This is intended to avoid depending on a separate UDP Voice GameServer when Photon Voice UDP is affected by the same network restrictions.
The v0.6.10 implementation moves the WSS preparation earlier than v0.6.9. Pathfinder gives VoiceConnection a private WSS settings clone, requests Voice transport construction with WebSocketSecure, and temporarily forces the exact Realtime ConnectUsingSettings settings instance to Protocol=WebSocketSecure and Port=443 while Photon builds the connection. It does not rewrite Voice ServerPortOverrides or EnableProtocolFallback, and it does not manually replace redirected Master/GameServer addresses. Photon remains responsible for the normal NameServer → MasterServer → GameServer redirect flow.
The Voice issue reported in earlier versions is fixed in v0.6.10. Multiplayer testing confirmed that Pathfinder now reaches the actual Photon Voice connection as WSS/443. Because the Voice transport is configured locally on each computer, Pathfinder must be installed on every player, and all players must select the same connection mode before connecting.
How to use
UDP Server Selection
- Make sure every player has PEAK Pathfinder installed.
- Make sure every player selects UDP Server Selection before connecting.
- Start an online game normally.
- Then wait while PEAK Pathfinder checks the assigned Photon GameServers.
During early attempts, the online session may start and then disconnect a few seconds later. PEAK Pathfinder can then return through PEAK's normal flow and begin another attempt with a newly assigned GameServer.
This is expected while an unstable server is being discovered. Do not restart PEAK and do not repeatedly start the connection manually — wait for the automatic retry flow. The PEAK application itself is not restarted; only the current online session/connection attempt may end.
An unknown server is checked for up to 60 seconds. Once the current server passes that stability check, continue playing normally.
Secure WSS/443
- Make sure every player has PEAK Pathfinder installed.
- Make sure every player selects Secure WSS/443 before connecting.
- Start an online game normally.
- PEAK Pathfinder will configure the local player's main Photon connection to use WSS/TCP/TLS port 443.
Important: all players in the session should use the same Pathfinder mode. Do not mix Secure WSS/443 and UDP Server Selection within the same session.
This mode does not scan UDP GameServers or build the UDP BAD-server history.
Testing status
PEAK Pathfinder has been manually tested in actual PEAK sessions on two affected user setups reporting the same connection symptom.
The primary development setup was also used for detailed transport isolation with Photon/BepInEx logs: Photon NameServer and Master connectivity over UDP remained available while problematic assigned GameServer UDP connections could join and then time out. The UDP retry/learning workflow and the WSS/443 alternative were exercised in-game during development.
This is real functional testing, but it is not evidence of universal compatibility across all ISPs, countries, routers, or causes of connection failure. The README intentionally limits its claims to the behavior that has been reproduced during testing.
Special thanks to BlackUFA and Antell13 for reporting the Voice chat problem. Their feedback helped reproduce the issue and verify the v0.6.10 Voice fix.
Local data
PEAK Pathfinder stores its server history locally in:
BepInEx/plugins/PeakPathfinder/data/
Files:
bad_servers.txt— manual blacklist only; one IPv4 address or/24prefix per line.udp_server_results.csv— local server-check history and the automatically learned GOOD/BAD state used on later UDP attempts.
The in-game Open data folder button asks Unity to open this directory using Application.OpenURL; the mod does not launch explorer.exe directly.
AI disclosure
Generative AI was used during development to assist with reverse-engineering analysis, C# implementation/refactoring, documentation, and package artwork.
AI output was not treated as proof that networking behavior or safety was correct. Functional behavior was reproduced in actual PEAK sessions. A separate manual runtime safety check of the compiled release is performed by the author before resubmission/public release.
Installation
Thunderstore / r2modman
Install PEAK Pathfinder with a Thunderstore-compatible mod manager. BepInExPack_PEAK is declared as a dependency and will be installed automatically if needed.
Manual
- Install
BepInExPack_PEAK. - Open the downloaded PEAK Pathfinder archive.
- Open the
pluginsfolder inside the archive. - Copy the
PeakPathfinderfolder to:
PEAK/BepInEx/plugins/
The final path should be:
PEAK/BepInEx/plugins/PeakPathfinder/PeakPathfinder.dll
Support
PEAK Pathfinder is completely free. If the mod helped you and you would like to support continued development, tips are optional:
Support PEAK Pathfinder on Boosty
Support is completely voluntary and does not affect how the mod works.
Disclaimer
PEAK Pathfinder is an independent fan-made project and is not an official PEAK mod. The author is not a representative, employee, or partner of the developers of PEAK, Landfall, or Photon.
PEAK Pathfinder — на русском
PEAK Pathfinder — бесплатный клиентский мод для PEAK, предназначенный для конкретного класса проблем подключения к Photon: когда игра может обращаться к сервисам Photon, но назначенное соединение с GameServer по UDP блокируется, фильтруется или работает нестабильно.
Требование для сетевой игры: PEAK Pathfinder должен быть установлен у каждого игрока в сессии. Перед подключением все игроки должны выбрать одинаковый режим Pathfinder. Не смешивайте «Подбор UDP-серверов» и «Защищённое соединение (WSS/443)» в одной сессии.
PEAK Pathfinder не является VPN или прокси и не может устранить все возможные сетевые проблемы.
Видео-демонстрация
Посмотреть демонстрацию PEAK Pathfinder на YouTube
В видео показаны первый UDP-поиск и накопление истории, мгновенное отбрасывание уже известных BAD GameServer, отбрасывание /24-подсети после накопления достаточной BAD-истории, локальный файл GOOD/BAD-истории и альтернативный режим WSS/443.
Режимы подключения
Подбор UDP-серверов
Основное игровое соединение Photon остаётся на UDP.
- Проверяет назначенный Photon GameServer.
- Для неизвестного сервера выполняет проверку стабильности в течение 60 секунд.
- Локально хранит последний актуальный GOOD/BAD-результат для конкретных GameServer IP и при следующих попытках сразу отклоняет уже известные BAD-IP.
- Первые подключения могут занимать заметно больше времени, пока PEAK Pathfinder накапливает историю именно для сети игрока.
- По мере накопления истории этап перебора и повторных попыток может значительно ускориться. Отбрасывание уже известного BAD-IP происходит сразу, без повторного ожидания того же таймаута. Общее время подключения всё равно зависит от того, какой GameServer Photon назначит следующим.
- Вся подсеть
/24помечается BAD только после 4 разных IP с актуальным статусом BAD и при отсутствии актуального GOOD-IP в этой подсети. - Photon Voice при этом использует WSS/443 независимо от основного UDP GameServer-соединения.
Защищённое соединение WSS/443
Использует WebSocket Secure Photon через TCP/TLS порт 443 вместо обычного UDP-маршрута GameServer.
Режим предназначен для случаев, когда проблема связана именно с Photon UDP. Во время разработки WSS/443 позволял избежать наблюдавшегося UDP GameServer timeout на проблемном тестовом подключении. Это не гарантирует решение любой проблемы провайдера/сети, а задержка может увеличиться.
В этом режиме база GOOD/BAD UDP-серверов и 60-секундное UDP-сканирование не используются.
Голосовой чат
Начиная с v0.6.10, Pathfinder подготавливает Photon Voice для WSS/443 в обоих режимах подключения. Это должно убрать зависимость голосового чата от отдельного UDP Voice GameServer, если UDP Voice попадает под те же сетевые ограничения.
В v0.6.10 переключение перенесено на более ранний уровень, потому что тест v0.6.9 показал: изменения peer и клонированного низкоуровневого аргумента было недостаточно, и фактический PhotonPeer.Connect всё ещё мог оставаться UDP. Теперь Pathfinder создаёт для VoiceConnection отдельную WSS-копию настроек, запрашивает создание Voice-транспорта с WebSocketSecure и временно выставляет Protocol=WebSocketSecure и Port=443 именно в том экземпляре настроек, который Realtime читает перед фактическим подключением. При этом мод не переписывает ServerPortOverrides или EnableProtocolFallback и не подменяет вручную адреса Master/GameServer. Переходы NameServer → MasterServer → GameServer остаются за штатной логикой Photon.
Проблема с голосовым чатом, о которой сообщали в предыдущих версиях, исправлена в v0.6.10. Сетевые тесты подтвердили, что Pathfinder теперь доводит фактическое подключение Photon Voice до WSS/443. Поскольку транспорт Voice настраивается локально на каждом компьютере, Pathfinder должен быть установлен у каждого игрока, а перед подключением у всех должен быть выбран одинаковый режим.
Как пользоваться
Подбор UDP-серверов
- Убедитесь, что PEAK Pathfinder установлен у каждого игрока.
- Перед подключением убедитесь, что у всех выбран режим «Подбор UDP-серверов».
- Запустите сетевую игру как обычно.
- После этого ждите, пока PEAK Pathfinder проверяет назначаемые Photon GameServer.
Во время первых попыток сетевая сессия может запуститься, а затем через несколько секунд прерваться. После этого PEAK Pathfinder может пройти через штатный сценарий PEAK и начать новую попытку уже с заново назначенным GameServer.
Это ожидаемое поведение во время обнаружения нестабильного сервера. Не перезапускайте PEAK и не запускайте подключение вручную снова и снова — дождитесь автоматической повторной попытки. Само приложение PEAK не перезапускается: завершиться может только текущая сетевая сессия/попытка подключения.
Неизвестный сервер проверяется до 60 секунд. Когда текущий сервер успешно пройдёт проверку стабильности, можно продолжать играть как обычно.
Защищённое соединение WSS/443
- Убедитесь, что PEAK Pathfinder установлен у каждого игрока.
- Перед подключением убедитесь, что у всех выбран режим «Защищённое соединение (WSS/443)».
- Запустите сетевую игру как обычно.
- PEAK Pathfinder настроит основное соединение Photon локального игрока на WSS/TCP/TLS порт 443.
Важно: все игроки в сессии должны использовать один и тот же режим Pathfinder. Не смешивайте «Защищённое соединение (WSS/443)» и «Подбор UDP-серверов» в одной сессии.
В этом режиме UDP GameServer не перебираются и база проблемных UDP-серверов не обучается.
Статус тестирования
PEAK Pathfinder вручную проверялся в реальных игровых сессиях PEAK на двух пользовательских системах с одинаковым симптомом проблемы подключения.
На основной системе разработки дополнительно изолировалось поведение транспортов по Photon/BepInEx-логам: соединения Photon NameServer и Master по UDP оставались доступны, тогда как проблемное назначенное соединение GameServer по UDP могло подключиться, а затем завершиться таймаутом. Во время разработки в игре проверялись UDP-перебор/обучение и альтернативный режим WSS/443.
Это реальная функциональная проверка, но она не доказывает универсальную совместимость со всеми провайдерами, странами, роутерами и причинами сетевых проблем. Поэтому описание намеренно ограничивает обещания тем поведением, которое действительно воспроизводилось при тестировании.
Отдельное спасибо BlackUFA и Antell13 за сообщения о проблеме с голосовым чатом. Их обратная связь помогла воспроизвести проблему и подтвердить исправление Voice в v0.6.10.
Локальные данные
История проверок хранится локально в:
BepInEx/plugins/PeakPathfinder/data/
bad_servers.txt— только ручной чёрный список; по одному IPv4-адресу или/24-префиксу в строке.udp_server_results.csv— локальная история проверок и автоматически накопленная GOOD/BAD-база, используемая при следующих UDP-попытках.
Кнопка «Открыть папку с файлами» просит Unity открыть эту директорию через Application.OpenURL; прямой запуск explorer.exe мод больше не выполняет.
Раскрытие использования ИИ
Генеративный ИИ использовался при разработке как помощник для анализа reverse-engineering, реализации/рефакторинга C#, документации и изображения пакета.
Результаты ИИ не считаются доказательством корректности сетевого поведения или безопасности. Функциональность воспроизводилась в реальных игровых сессиях PEAK. Перед повторной отправкой/публичным релизом автор отдельно выполняет ручную runtime-проверку безопасности уже скомпилированной версии.
Установка
Thunderstore / r2modman
Установите PEAK Pathfinder через совместимый с Thunderstore менеджер модов. BepInExPack_PEAK указан как зависимость и при необходимости установится автоматически.
Вручную
- Установите
BepInExPack_PEAK. - Откройте скачанный архив PEAK Pathfinder.
- Откройте внутри архива папку
plugins. - Скопируйте папку
PeakPathfinderв:
PEAK/BepInEx/plugins/
В итоге файл должен находиться здесь:
PEAK/BepInEx/plugins/PeakPathfinder/PeakPathfinder.dll
Поддержка
PEAK Pathfinder остаётся полностью бесплатным. Если мод вам помог и вы хотите поддержать дальнейшую разработку:
Поддержать PEAK Pathfinder на Boosty
Поддержка полностью добровольная и не влияет на работу мода.
Дисклеймер
PEAK Pathfinder — независимый фанатский проект и не является официальным модом PEAK. Автор не является представителем, сотрудником или партнёром разработчиков PEAK, Landfall или Photon.