RadiatorExtrem-PeakVersionBypass 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).

Last updated a month ago
Total downloads 4622
Total rating 1 
Categories Quality Of Life Optimization AI Generated
Dependency string RadiatorExtrem-PeakVersionBypass-1.2.0
Dependants 1 other package depends on this package

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.