You are viewing a potentially older version of this package. View all versions.
RadiatorExtrem-PeakVersionBypass-1.2.0 icon

PeakVersionBypass

Skips the game's server version check, restores the offline island timer, and auto-syncs the daily dev message (cached for offline use).

Date uploaded a month ago
Version 1.2.0
Download link RadiatorExtrem-PeakVersionBypass-1.2.0.zip
Downloads 4600
Dependency string RadiatorExtrem-PeakVersionBypass-1.2.0

This mod requires the following mods to function

BepInEx-BepInExPack_PEAK-5.4.75301 icon
BepInEx-BepInExPack_PEAK

BepInEx pack for PEAK. Preconfigured and ready to use.

Preferred version: 5.4.75301

README

PEAK Version Bypass

Skips PEAK's mandatory server version check and restores the offline island rotation timer and dev message.

Transparency note: this plugin was built with AI assistance (vibecoded, end to end — diagnosis of the game's IL, the Harmony patches, the docs you're reading). It still solves a real problem that affects many players — being locked out of the game by the server version gate — and every claim in this README was verified against a running game. Source is fully available in Plugin.cs; read it before you trust it.

Problem it solves: on every launch, MainMenuPageHandler asks peaklogin3.azurewebsites.net/api/VersionCheck whether your build is current. If the server says no — or is unreachable — the game shows a VERSIONOUTOFDATE modal whose only option is closing the game. This plugin removes that gate entirely.

What it does

Patch Effect
CloudAPI.CheckVersion (prefix, skip original) The version gate is removed: VersionOkay is always true, so the modal never appears. The response callback is still invoked locally, so the menu gets a valid island timer and dev message.
MainMenuPageHandler.get_CanSkipVersionCheck (postfix) If a version modal somehow still appears, it gets a skip button instead of a single "close game" option.

The plugin fetches the real daily dev message and shows it in the menu:

  • On launch it queries the endpoint the game uses (bounded to ~2.5 s, so the menu never freezes).
  • The real message is persisted to CachedMessage and reused on later, offline launches.
  • If the server is unreachable, it falls back to CachedMessage, then DevMessage, then the built-in default.

The island timer is replicated from the game's own offline fallback math (NextLevelService.CreateFallbackData): 24 h rotation anchored to 2025-06-14 17:00 UTC. Countdown and island index behave exactly like the vanilla offline mode.

Installation (mod manager)

r2modman / Gale / Thunderstore Mod Manager: install this package from the manager, profile PEAK, then Launch. Done.

Installation (manual)

  1. You need BepInEx 5 (BepInExPack PEAK) installed in the game folder.
  2. Copy BepInEx/plugins/PeakVersionBypass.dll into your game's BepInEx/plugins/ folder.
  3. Launch the game. The version modal will not appear.

Configuration

BepInEx/config/com.black.peakversionbypass.cfg:

[General]
## Fallback text shown in the menu's Dev Message slot when the real server
## message cannot be fetched.
# Setting type: String
# Default value: we updated the frogs again
DevMessage = we updated the frogs again

## Last known real dev message, auto-updated while online. Leave empty to
## fall back to DevMessage.
# Setting type: String
# Default value:
CachedMessage =
  • CachedMessage is overwritten automatically on every successful fetch. You normally never touch it; it's what lets the menu still show the last real message when you're offline.
  • DevMessage is only a fallback: it shows when the server can't be reached and there is no cached value yet.

Compatibility

  • BepInEx 5.4.23.x (BepInExPack PEAK 5.4.75301 or equivalent), Unity 6 Mono runtime.
  • Harmony patches are narrow (one method prefix + one property postfix) and use AccessTools name-based lookup with null guards, so the plugin degrades gracefully — it logs warnings instead of crashing if a game update renames the patched members.
  • Compatible with other plugins: it does not detour anything other mods typically hook (no Player, NetworkManager, Photon, or Steamworks patches). If another mod also patches CloudAPI.CheckVersion, both apply; the last prefix returning false wins, which is the expected Harmony behavior.

Known limitations

  • Multiplayer: lobbies hosted on newer game builds can still refuse your client (Photon app-version / lobby PeakVersion property mismatch). That is server-side intent, not something this plugin can or should bypass — play with others on the same build.
  • The Unable to start Unity log writer line some setups print at boot is a known cosmetic BepInEx 5.4.23 + Unity 6 issue, unrelated to this plugin.

Troubleshooting

Check BepInEx/LogOutput.log for:

[Info  :PEAK Version Bypass] Patched CloudAPI.CheckVersion
[Info  :PEAK Version Bypass] Patched MainMenuPageHandler.get_CanSkipVersionCheck -> true
[Info  :PEAK Version Bypass] PEAK Version Bypass ready (2 patches applied)

If you see warnings instead, a game update renamed the patched members — the game will still run, but the version check will be active again.

License

MIT — do whatever, credit appreciated.

CHANGELOG

Changelog

1.2.0

  • Live dev-message sync: the menu now shows the real daily dev message from the game's own endpoint (peaklogin3.azurewebsites.net), fetched on every launch. The message is cached in CachedMessage so it persists across offline sessions.
  • New config key CachedMessage (auto-updated, leave empty to fall back to DevMessage).
  • DevMessage is now only a fallback for when the server cannot be reached and no cached value exists.
  • The island timer and version-check bypass are unchanged from 1.1.0.

1.1.0

  • Island rotation timer (Tempo de Ilha) now populated using the game's own offline fallback math (epoch 2025-06-14 17:00 UTC, 24 h rotation).
  • Dev message configurable via BepInEx config (DevMessage).
  • Verified end-to-end: NextLevelData receives real index + countdown.

1.0.0

  • Initial release. CloudAPI.CheckVersion bypass + CanSkipVersionCheck=true.