Updates/MorePeak v1.9.2 Released - Updated for PEAK v1.54.b
Modsv1.9.2

MorePeak v1.9.2 Released - Updated for PEAK v1.54.b

SM

Sean McKeen

February 26, 2026

MorePeak v1.9.2 is a small update to the mod that adds compatibility with PEAK v1.54.b as well as some other fixes and improvements.

#peak#modding#development

MorePeak v1.9.3 Released - Updated for PEAK v1.54.b.b

🌟

What's New

  • Fixed level selection for PEAK v1.54.b (MapBaker.AllLevels renamed to ScenePaths)
  • Fixed host detection to use NetCode.Session.IsHost instead of deprecated PhotonNetwork.IsMasterClient
  • Fixed HUD display not appearing on screen
  • Added in-game verbose logging toggle (disabled by default)

What happened?

PEAK v1.54.b renamed the AllLevels field on MapBaker to ScenePaths. The old compiled mod contained a field-access instruction (ldfld AllLevels) that threw a MissingFieldException at runtime, silently breaking all level selection.

MorePeak.cs - Old Code
1if (__instance?.AllLevels == null || __instance.AllLevels.Length == 0)
2 return true;
3for (int i = 0; i < __instance.AllLevels.Length; i++) {
4 string logScenePath = __instance.AllLevels[i] ?? "Unknown";
5 
C#
MorePeak.cs - New Code
1if (__instance?.ScenePaths == null || __instance.ScenePaths.Length == 0)
2 return true;
3for (int i = 0; i < __instance.ScenePaths.Length; i++) {
4 string logScenePath = __instance.ScenePaths[i] ?? "Unknown";
5 
C#

Host detection updated

The game deprecated PhotonNetwork.IsMasterClient in favour of its own NetCode.Session.IsHost abstraction.

MorePeak.cs - Old Code
1if (PhotonNetwork.InRoom && !PhotonNetwork.IsMasterClient)
2 return true;
3string clientInfo = PhotonNetwork.IsMasterClient ? "[MASTER]" : "[CLIENT]";
C#
MorePeak.cs - New Code
1if (NetCode.Session.InRoom && !NetCode.Session.IsHost)
2 return true;
3string clientInfo = NetCode.Session.IsHost ? "[HOST]" : "[CLIENT]";
C#

HUD display fix

The on-screen level display was never appearing because Start() deactivated the HUD's own GameObject, which permanently stopped Unity from calling Update() on it.

MorePeakHUD.cs - Old Code
1// Deactivating the gameobject stops Update() from ever running again!
2tmpText.gameObject.SetActive(false);
C#
MorePeakHUD.cs - New Code
1// Hide only the TMP component — the gameobject (and Update()) stays active.
2tmpText.enabled = false;
C#