The BepInEx console will not appear when launching like it does for other games on Thunderstore. This is normal (and helps prevent crashes during startup). You can turn it back on in your BepInEx.cfg file.
Decompiled source of PEAK Unbound v1.3.0
PEAKUnbound.dll
Decompiled a week 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 Microsoft.CodeAnalysis; using UnityEngine.InputSystem; [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.2", FrameworkDisplayName = ".NET Framework 4.7.2")] [assembly: AssemblyCompany("PEAKUnbound")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("My first plugin")] [assembly: AssemblyTitle("PEAKUnbound")] [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 PEAKUnbound { [BepInPlugin("PEAKUnbound", "My first plugin", "1.0.0")] public class Plugin : BaseUnityPlugin { internal static ManualLogSource Logger; private static ConfigEntry<string> configPause; private static ConfigEntry<string> configForward; private static ConfigEntry<string> configBackward; private static ConfigEntry<string> configLeft; private static ConfigEntry<string> configRight; private static ConfigEntry<string> configLook; private static ConfigEntry<string> configJump; private static ConfigEntry<string> configSprint; private static ConfigEntry<string> configSprintToggle; private static ConfigEntry<string> configInteract; private static ConfigEntry<string> configDrop; private static ConfigEntry<string> configCrouch; private static ConfigEntry<string> configCrouchToggle; private static ConfigEntry<string> configUsePrimary; private static ConfigEntry<string> configUseSecondary; private static ConfigEntry<string> configScrollUp; private static ConfigEntry<string> configScrollDown; private static ConfigEntry<string> configPushToTalk; private static ConfigEntry<string> configEmote; private static ConfigEntry<string> configPing; private static ConfigEntry<string> configSelectSlotForward; private static ConfigEntry<string> configSelectSlotBackward; private static ConfigEntry<string> configSpectateLeft; private static ConfigEntry<string> configSpectateRight; private static ConfigEntry<string> configScrollButtonLeft; private static ConfigEntry<string> configScrollButtonRight; private static ConfigEntry<string> configHotBarAction1; private static ConfigEntry<string> configHotBarAction2; private static ConfigEntry<string> configHotBarAction3; private void RebindMoveKeys() { //IL_0120: Unknown result type (might be due to invalid IL or missing references) //IL_0125: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_00a7: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Unknown result type (might be due to invalid IL or missing references) //IL_00ba: Unknown result type (might be due to invalid IL or missing references) //IL_00c4: Unknown result type (might be due to invalid IL or missing references) //IL_00c9: Unknown result type (might be due to invalid IL or missing references) //IL_00d7: Unknown result type (might be due to invalid IL or missing references) //IL_00e1: Unknown result type (might be due to invalid IL or missing references) //IL_00e6: Unknown result type (might be due to invalid IL or missing references) //IL_00f4: Unknown result type (might be due to invalid IL or missing references) //IL_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_0111: Unknown result type (might be due to invalid IL or missing references) InputAction val = InputSystem.actions.FindAction("Move", false); if (val == null) { Logger.LogInfo((object)"Move action not found."); return; } for (int i = 0; i < val.bindings.Count; i++) { InputBinding val2 = val.bindings[i]; if (((InputBinding)(ref val2)).isPartOfComposite) { BindingSyntax val3; switch (((InputBinding)(ref val2)).name) { case "up": val3 = InputActionSetupExtensions.ChangeBinding(val, i); ((BindingSyntax)(ref val3)).WithPath(configForward.Value); break; case "down": val3 = InputActionSetupExtensions.ChangeBinding(val, i); ((BindingSyntax)(ref val3)).WithPath(configBackward.Value); break; case "left": val3 = InputActionSetupExtensions.ChangeBinding(val, i); ((BindingSyntax)(ref val3)).WithPath(configLeft.Value); break; case "right": val3 = InputActionSetupExtensions.ChangeBinding(val, i); ((BindingSyntax)(ref val3)).WithPath(configRight.Value); break; } } } } private void RebindScrollAction() { //IL_00c7: Unknown result type (might be due to invalid IL or missing references) //IL_00cc: Unknown result type (might be due to invalid IL or missing references) //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_003e: Unknown result type (might be due to invalid IL or missing references) //IL_0043: Unknown result type (might be due to invalid IL or missing references) //IL_0048: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_008d: Unknown result type (might be due to invalid IL or missing references) //IL_009b: Unknown result type (might be due to invalid IL or missing references) //IL_00a5: Unknown result type (might be due to invalid IL or missing references) //IL_00aa: Unknown result type (might be due to invalid IL or missing references) //IL_00b8: Unknown result type (might be due to invalid IL or missing references) InputAction val = InputSystem.actions.FindAction("Scroll", false); if (val == null) { Logger.LogInfo((object)"Scroll action not found."); return; } for (int i = 0; i < val.bindings.Count; i++) { InputBinding val2 = val.bindings[i]; if (!((InputBinding)(ref val2)).isPartOfComposite) { continue; } string name = ((InputBinding)(ref val2)).name; string text = name; BindingSyntax val3; if (!(text == "up")) { if (text == "down") { val3 = InputActionSetupExtensions.ChangeBinding(val, i); ((BindingSyntax)(ref val3)).WithPath(configScrollDown.Value); } } else { val3 = InputActionSetupExtensions.ChangeBinding(val, i); ((BindingSyntax)(ref val3)).WithPath(configScrollUp.Value); } } } private void Awake() { //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_014a: Unknown result type (might be due to invalid IL or missing references) //IL_014f: Unknown result type (might be due to invalid IL or missing references) //IL_015c: Unknown result type (might be due to invalid IL or missing references) //IL_01ac: Unknown result type (might be due to invalid IL or missing references) //IL_01b1: Unknown result type (might be due to invalid IL or missing references) //IL_01be: Unknown result type (might be due to invalid IL or missing references) //IL_020e: Unknown result type (might be due to invalid IL or missing references) //IL_0213: Unknown result type (might be due to invalid IL or missing references) //IL_0220: Unknown result type (might be due to invalid IL or missing references) //IL_0270: Unknown result type (might be due to invalid IL or missing references) //IL_0275: Unknown result type (might be due to invalid IL or missing references) //IL_0282: Unknown result type (might be due to invalid IL or missing references) //IL_02d2: Unknown result type (might be due to invalid IL or missing references) //IL_02d7: Unknown result type (might be due to invalid IL or missing references) //IL_02e4: Unknown result type (might be due to invalid IL or missing references) //IL_0334: Unknown result type (might be due to invalid IL or missing references) //IL_0339: Unknown result type (might be due to invalid IL or missing references) //IL_0346: Unknown result type (might be due to invalid IL or missing references) //IL_0396: Unknown result type (might be due to invalid IL or missing references) //IL_039b: Unknown result type (might be due to invalid IL or missing references) //IL_03a8: Unknown result type (might be due to invalid IL or missing references) //IL_03f8: Unknown result type (might be due to invalid IL or missing references) //IL_03fd: Unknown result type (might be due to invalid IL or missing references) //IL_040a: Unknown result type (might be due to invalid IL or missing references) //IL_045a: Unknown result type (might be due to invalid IL or missing references) //IL_045f: Unknown result type (might be due to invalid IL or missing references) //IL_046c: Unknown result type (might be due to invalid IL or missing references) //IL_04bc: Unknown result type (might be due to invalid IL or missing references) //IL_04c1: Unknown result type (might be due to invalid IL or missing references) //IL_04ce: Unknown result type (might be due to invalid IL or missing references) //IL_051e: Unknown result type (might be due to invalid IL or missing references) //IL_0523: Unknown result type (might be due to invalid IL or missing references) //IL_0530: Unknown result type (might be due to invalid IL or missing references) //IL_0580: Unknown result type (might be due to invalid IL or missing references) //IL_0585: Unknown result type (might be due to invalid IL or missing references) //IL_0592: Unknown result type (might be due to invalid IL or missing references) //IL_05e2: Unknown result type (might be due to invalid IL or missing references) //IL_05e7: Unknown result type (might be due to invalid IL or missing references) //IL_05f4: Unknown result type (might be due to invalid IL or missing references) //IL_0646: Unknown result type (might be due to invalid IL or missing references) //IL_064b: Unknown result type (might be due to invalid IL or missing references) //IL_0658: Unknown result type (might be due to invalid IL or missing references) //IL_06aa: Unknown result type (might be due to invalid IL or missing references) //IL_06af: Unknown result type (might be due to invalid IL or missing references) //IL_06bc: Unknown result type (might be due to invalid IL or missing references) Logger = ((BaseUnityPlugin)this).Logger; Logger.LogInfo((object)"Plugin PEAKUnbound is loaded!"); configPause = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Pause", "<Keyboard>/escape", "Pause Button"); BindingSyntax val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Pause", false), 0); ((BindingSyntax)(ref val)).WithPath(configPause.Value); CharacterInput.action_pause = InputSystem.actions.FindAction("Pause", false); configForward = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Forward", "<Keyboard>/w", "Forward Movement Button"); configBackward = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Backward", "<Keyboard>/s", "Backward Movement Button"); configLeft = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Left", "<Keyboard>/a", "Left Movement Button"); configRight = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Right", "<Keyboard>/d", "Right Movement Button"); RebindMoveKeys(); configJump = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Jump", "<Keyboard>/space", "Jump Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Jump", false), 0); ((BindingSyntax)(ref val)).WithPath(configJump.Value); CharacterInput.action_jump = InputSystem.actions.FindAction("Jump", false); configSprint = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Sprint", "<Keyboard>/leftShift", "Sprint Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Sprint", false), 0); ((BindingSyntax)(ref val)).WithPath(configSprint.Value); CharacterInput.action_sprint = InputSystem.actions.FindAction("Sprint", false); configInteract = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Interact", "<Keyboard>/e", "Interact Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Interact", false), 0); ((BindingSyntax)(ref val)).WithPath(configInteract.Value); CharacterInput.action_interact = InputSystem.actions.FindAction("Interact", false); configDrop = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Drop", "<Keyboard>/q", "Drop Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Drop", false), 0); ((BindingSyntax)(ref val)).WithPath(configDrop.Value); CharacterInput.action_drop = InputSystem.actions.FindAction("Drop", false); configCrouch = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Crouch", "<Keyboard>/ctrl", "Crouch Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Crouch", false), 0); ((BindingSyntax)(ref val)).WithPath(configCrouch.Value); CharacterInput.action_crouch = InputSystem.actions.FindAction("Crouch", false); configUsePrimary = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Use Primary", "<Mouse>/leftButton", "Use Primary Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("UsePrimary", false), 0); ((BindingSyntax)(ref val)).WithPath(configUsePrimary.Value); CharacterInput.action_usePrimary = InputSystem.actions.FindAction("UsePrimary", false); configUseSecondary = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Use Secondary", "<Mouse>/rightButton", "Use Secondary Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("UseSecondary", false), 0); ((BindingSyntax)(ref val)).WithPath(configUseSecondary.Value); CharacterInput.action_useSecondary = InputSystem.actions.FindAction("UseSecondary", false); configPushToTalk = ((BaseUnityPlugin)this).Config.Bind<string>("General", "PushToTalk", "<Keyboard>/v", "PushToTalk Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("PushToTalk", false), 0); ((BindingSyntax)(ref val)).WithPath(configPushToTalk.Value); CharacterInput.push_to_talk = InputSystem.actions.FindAction("PushToTalk", false); configEmote = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Emote", "<Keyboard>/r", "Emote Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Emote", false), 0); ((BindingSyntax)(ref val)).WithPath(configEmote.Value); CharacterInput.action_emote = InputSystem.actions.FindAction("Emote", false); configPing = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Ping", "<Mouse>/middleButton", "Ping Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Ping", false), 0); ((BindingSyntax)(ref val)).WithPath(configPing.Value); CharacterInput.action_ping = InputSystem.actions.FindAction("Ping", false); configSpectateLeft = ((BaseUnityPlugin)this).Config.Bind<string>("General", "SpectateLeft", "<Keyboard>/a", "SpectateLeft Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("SpectateLeft", false), 0); ((BindingSyntax)(ref val)).WithPath(configSpectateLeft.Value); CharacterInput.action_spectateLeft = InputSystem.actions.FindAction("SpectateLeft", false); configSpectateRight = ((BaseUnityPlugin)this).Config.Bind<string>("General", "SpectateRight", "<Keyboard>/d", "SpectateRight Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("SpectateRight", false), 0); ((BindingSyntax)(ref val)).WithPath(configSpectateRight.Value); CharacterInput.action_spectateRight = InputSystem.actions.FindAction("SpectateRight", false); configHotBarAction1 = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Hotbar1", "<Keyboard>/1", "Hotbar1 Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Hotbar1", false), 0); ((BindingSyntax)(ref val)).WithPath(configHotBarAction1.Value); CharacterInput.hotbarActions[0] = InputSystem.actions.FindAction("Hotbar1", false); configHotBarAction2 = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Hotbar2", "<Keyboard>/2", "Hotbar2 Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Hotbar2", false), 0); ((BindingSyntax)(ref val)).WithPath(configHotBarAction2.Value); CharacterInput.hotbarActions[1] = InputSystem.actions.FindAction("Hotbar2", false); configHotBarAction3 = ((BaseUnityPlugin)this).Config.Bind<string>("General", "Hotbar3", "<Keyboard>/3", "Hotbar3 Button"); val = InputActionSetupExtensions.ChangeBinding(InputSystem.actions.FindAction("Hotbar3", false), 0); ((BindingSyntax)(ref val)).WithPath(configHotBarAction3.Value); CharacterInput.hotbarActions[2] = InputSystem.actions.FindAction("Hotbar3", false); } } public static class MyPluginInfo { public const string PLUGIN_GUID = "PEAKUnbound"; public const string PLUGIN_NAME = "My first plugin"; public const string PLUGIN_VERSION = "1.0.0"; } }