Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of AdrenalBoost v0.1.0
AdrenalBoost.dll
Decompiled a day agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Security.Permissions; using BepInEx; using BepInEx.Configuration; using HarmonyLib; using Jotunn.Extensions; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: AssemblyTitle("RepairKey")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("EZB")] [assembly: AssemblyProduct("RepairKey")] [assembly: AssemblyCopyright("Copyright © 2026")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("e3243d22-4307-4008-ba36-9f326008cde5")] [assembly: AssemblyFileVersion("0.1.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("0.1.0.0")] namespace AdrenalBoost; [BepInPlugin("adrenalboost.valheim.mod", "adrenalBoost", "0.1.0")] [BepInDependency(/*Could not decode attribute arguments.*/)] public sealed class AdrenalBoost : BaseUnityPlugin { public const string ModGuid = "adrenalboost.valheim.mod"; public const string ModName = "adrenalBoost"; public const string ModVersion = "0.1.0"; internal static ConfigEntry<float> GainMultiplier; internal static ConfigEntry<float> DrainDelayMultiplier; internal static ConfigEntry<float> FullRequirementMultiplier; private Harmony _harmony; private void Awake() { //IL_00c9: Unknown result type (might be due to invalid IL or missing references) //IL_00d3: Expected O, but got Unknown ConfigFile config = ((BaseUnityPlugin)this).Config; AcceptableValueBase val = (AcceptableValueBase)(object)new AcceptableValueRange<float>(0.1f, 20f); GainMultiplier = ConfigFileExtensions.BindConfig<float>(config, "Adrenaline", "GainMultiplier", 2f, "Multiplier for positive adrenaline gains (1 = vanilla).", true, (int?)null, val, (Action<ConfigEntryBase>)null, (ConfigurationManagerAttributes)null); ConfigFile config2 = ((BaseUnityPlugin)this).Config; val = (AcceptableValueBase)(object)new AcceptableValueRange<float>(0.1f, 20f); DrainDelayMultiplier = ConfigFileExtensions.BindConfig<float>(config2, "Adrenaline", "DrainDelayMultiplier", 2f, "Multiplier for the time before adrenaline starts draining (1 = vanilla).", true, (int?)null, val, (Action<ConfigEntryBase>)null, (ConfigurationManagerAttributes)null); ConfigFile config3 = ((BaseUnityPlugin)this).Config; val = (AcceptableValueBase)(object)new AcceptableValueRange<float>(0.1f, 10f); FullRequirementMultiplier = ConfigFileExtensions.BindConfig<float>(config3, "Adrenaline", "FullRequirementMultiplier", 0.5f, "Multiplier for the adrenaline needed to activate a trinket (1 = vanilla).", true, (int?)null, val, (Action<ConfigEntryBase>)null, (ConfigurationManagerAttributes)null); _harmony = new Harmony("adrenalboost.valheim.mod"); _harmony.PatchAll(typeof(AdrenalBoost).Assembly); ((BaseUnityPlugin)this).Logger.LogInfo((object)"adrenalBoost patches installed."); } private void OnDestroy() { Harmony harmony = _harmony; if (harmony != null) { harmony.UnpatchSelf(); } } } [HarmonyPatch(typeof(Player), "AddAdrenaline")] internal static class AdrenalineGainPatch { private static void Prefix(ref float v) { if (v > 0f) { v *= AdrenalBoost.GainMultiplier.Value; } } private static void Postfix(float v, ref float ___m_adrenalineDegenTimer) { if (v > 0f) { ___m_adrenalineDegenTimer *= AdrenalBoost.DrainDelayMultiplier.Value; } } } [HarmonyPatch(typeof(Player), "GetMaxAdrenaline")] internal static class AdrenalineThresholdPatch { private static void Postfix(ref float __result) { if (__result > 0f) { __result *= AdrenalBoost.FullRequirementMultiplier.Value; } } }