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 StaminaAdjuster v1.0.1
BepInEx/plugins/StaminaAdjuster.dll
Decompiled 2 months agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using HarmonyLib; using Microsoft.CodeAnalysis; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETFramework,Version=v4.7.1", FrameworkDisplayName = "")] [assembly: AssemblyCompany("StaminaAdjuster")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+45474b8f820e22b4b62e4177fd48df206621e63c")] [assembly: AssemblyProduct("Allows all stamina values to be changed from a config.")] [assembly: AssemblyTitle("StaminaAdjuster")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)] internal sealed class RefSafetyRulesAttribute : Attribute { public readonly int Version; public RefSafetyRulesAttribute(int P_0) { Version = P_0; } } } namespace StaminaAdjuster { [BepInPlugin("StaminaAdjuster", "Allows all stamina values to be changed from a config.", "1.0.0")] public class Plugin : BaseUnityPlugin { internal static ManualLogSource Logger; public static ConfigEntry<float> JumpStaminaUsageSprinting; public static ConfigEntry<float> SprintStaminaUsage; public static ConfigEntry<float> JumpStaminaUsage; public static ConfigEntry<float> MaxClimbStaminaUsage; public static ConfigEntry<float> MinClimbStaminaUsage; public static ConfigEntry<float> VineClimbingStaminaUsage; public static ConfigEntry<float> RopeIdleStaminaUsage; public static ConfigEntry<float> RopeClimbingStaminaUsage; internal static ConfigEntry<float> StaminaLungeCost; private void Awake() { //IL_0165: Unknown result type (might be due to invalid IL or missing references) //IL_016b: Expected O, but got Unknown JumpStaminaUsageSprinting = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "JumpStaminaUsageSprinting", 0.15f, "The amount of stamina used when jumping while sprinting. Default is 0.15."); SprintStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "SprintStaminaUsage", 0.025f, "The amount of stamina used when sprinting. Default is 0.025."); JumpStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "JumpStaminaUsage", 0.05f, "The amount of stamina used when jumping. Default is 0.05."); MaxClimbStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "MaxClimbStaminaUsage", 0.1f, "The max amount of stamina used when climbing realtive to your speed while climbing. Default is 0.1."); MinClimbStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "MinClimbStaminaUsage", 0.02f, "The min amount of stamina used when climbing realtive to your speed while climbing. Default is 0.02."); VineClimbingStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "VineClimbingStaminaUsage", 0.04f, "The amount of stamina used when climbing vines. Default is 0.04."); RopeIdleStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "RopeIdleStaminaUsage", 0.005f, "DISCLAIMER ROPES SEEM TO BREAK ON 0 STAMINA PLEASE SET TO 0.0001 | The amount of stamina used when idle on ropes. Default is 0.005."); RopeClimbingStaminaUsage = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "RopeClimbingStaminaUsage", 0.005f, "DISCLAIMER ROPES SEEM TO BREAK ON 0 STAMINA PLEASE SET TO 0.0001 | The amount of stamina used when climbing ropes. Default is 0.005."); StaminaLungeCost = ((BaseUnityPlugin)this).Config.Bind<float>("Settings", "StaminaLungeCost", 0.2f, "The amount of stamina used when lunging. Default is 0.2."); Logger = ((BaseUnityPlugin)this).Logger; Logger.LogInfo((object)"Plugin StaminaAdjuster is loaded!"); Harmony val = new Harmony("StaminaAdjuster"); val.PatchAll(); if (RopeClimbingStaminaUsage.Value <= 0.0001f) { RopeClimbingStaminaUsage.Value = 0.0001f; } if (RopeIdleStaminaUsage.Value <= 0.0001f) { RopeIdleStaminaUsage.Value = 0.0001f; } if (VineClimbingStaminaUsage.Value <= 0.0001f) { VineClimbingStaminaUsage.Value = 0.0001f; } } } [HarmonyPatch(typeof(CharacterMovement), "Start")] internal class Patch { private static void Postfix(CharacterMovement __instance) { __instance.jumpStaminaUsageSprinting = Plugin.JumpStaminaUsageSprinting.Value; __instance.sprintStaminaUsage = Plugin.SprintStaminaUsage.Value; __instance.jumpStaminaUsage = Plugin.JumpStaminaUsage.Value; } } [HarmonyPatch(typeof(CharacterClimbing), "Start")] internal class Patch2 { private static void Postfix(CharacterClimbing __instance) { __instance.maxStaminaUsage = Plugin.MaxClimbStaminaUsage.Value; __instance.minStaminaUsage = Plugin.MinClimbStaminaUsage.Value; } } [HarmonyPatch(typeof(CharacterVineClimbing), "Start")] internal class Patch3 { private static void Postfix(CharacterVineClimbing __instance) { __instance.staminaUsage = Plugin.VineClimbingStaminaUsage.Value; } } [HarmonyPatch(typeof(CharacterRopeHandling), "Start")] internal class Patch4 { private static void Postfix(CharacterRopeHandling __instance) { __instance.staminaUsage = Plugin.RopeIdleStaminaUsage.Value; __instance.staminaUsageUp = Plugin.RopeClimbingStaminaUsage.Value; } } [HarmonyPatch(typeof(CharacterClimbing), "RPCA_ClimbJump")] public class Patch5 { public static bool inmethod; private static void Postfix() { inmethod = false; } private static void Prefix() { inmethod = true; } } [HarmonyPatch(typeof(Character), "UseStamina")] public class Patch6 { private static void Prefix(ref float usage) { if (Patch5.inmethod) { usage = Plugin.StaminaLungeCost.Value; } } } public static class MyPluginInfo { public const string PLUGIN_GUID = "StaminaAdjuster"; public const string PLUGIN_NAME = "Allows all stamina values to be changed from a config."; public const string PLUGIN_VERSION = "1.0.0"; } }