The BepInEx console will not appear when launching like it does for other games on Thunderstore (you can turn it back on in your BepInEx.cfg file). If your PEAK crashes on startup, add -dx12 to your launch parameters.
Decompiled source of MesaOrAlpine v1.0.0
MesaOrAlpine.dll
Decompiled a week agousing System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Text; using BepInEx; using HarmonyLib; using Microsoft.CodeAnalysis; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("MesaOrAlpine")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("MesaOrAlpine")] [assembly: AssemblyTitle("MesaOrAlpine")] [assembly: AssemblyVersion("1.0.0.0")] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] internal sealed class NullableAttribute : Attribute { public readonly byte[] NullableFlags; public NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] internal sealed class NullableContextAttribute : Attribute { public readonly byte Flag; public NullableContextAttribute(byte P_0) { Flag = P_0; } } } namespace MesaOrAlpine { [BepInPlugin("chuxiaaaa.MesaOrAlpine", "MesaOrAlpine", "1.0.0")] public class MesaOrAlpine : BaseUnityPlugin { private void Awake() { Harmony.CreateAndPatchAll(typeof(MountainProgressHandlerPatch), (string)null); } } [HarmonyPatch(typeof(MountainProgressHandler))] [HarmonyWrapSafe] public class MountainProgressHandlerPatch { [CompilerGenerated] private sealed class <ShowMessage>d__1 : IEnumerator<object>, IEnumerator, IDisposable { private int <>1__state; private object <>2__current; public MountainProgressHandler __instance; private ProgressPoint[] <>s__1; private int <>s__2; private ProgressPoint <item>5__3; private StringBuilder <sb>5__4; object IEnumerator<object>.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public <ShowMessage>d__1(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>s__1 = null; <item>5__3 = null; <sb>5__4 = null; <>1__state = -2; } private bool MoveNext() { //IL_0026: Unknown result type (might be due to invalid IL or missing references) //IL_0030: Expected O, but got Unknown //IL_0078: Unknown result type (might be due to invalid IL or missing references) //IL_007e: Invalid comparison between Unknown and I4 //IL_0086: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Invalid comparison between Unknown and I4 switch (<>1__state) { default: return false; case 0: <>1__state = -1; <>2__current = (object)new WaitForSeconds(10f); <>1__state = 1; return true; case 1: <>1__state = -1; <>s__1 = __instance.progressPoints; for (<>s__2 = 0; <>s__2 < <>s__1.Length; <>s__2++) { <item>5__3 = <>s__1[<>s__2]; if ((int)<item>5__3.biome == 6 || (int)<item>5__3.biome == 2) { <sb>5__4 = new StringBuilder(); <sb>5__4.AppendLine("Today " + <item>5__3.localizedTitle); GUIManager.instance.SetHeroTitle(<sb>5__4.ToString(), <item>5__3.clip); return false; } <item>5__3 = null; } <>s__1 = null; return false; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } [HarmonyPostfix] [HarmonyPatch("InitProgressPoints")] public static void InitProgressPoints(MountainProgressHandler __instance) { ((MonoBehaviour)GUIManager.instance).StartCoroutine(ShowMessage(__instance)); } [IteratorStateMachine(typeof(<ShowMessage>d__1))] public static IEnumerator ShowMessage(MountainProgressHandler __instance) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new <ShowMessage>d__1(0) { __instance = __instance }; } } }