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 Magni v1.2.3
Magni.dll
Decompiled 4 days agousing System; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Configuration; using ConditionalConfigSync; using HarmonyLib; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: AssemblyTitle("Magni")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Crystal")] [assembly: AssemblyProduct("Magni")] [assembly: AssemblyCopyright("Copyright © 2026 Crystal Ferrai")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("32a6e5cb-3899-484c-8146-4cb67131cbf9")] [assembly: AssemblyFileVersion("1.2.3.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyVersion("1.2.3.0")] namespace Magni; [BepInPlugin("dev.crystal.magni", "Magni", "1.2.3.0")] [BepInDependency(/*Could not decode attribute arguments.*/)] [BepInProcess("valheim.exe")] [BepInProcess("valheim_server.exe")] public class MagniPlugin : BaseUnityPlugin { [HarmonyPatch(typeof(Player))] private static class Player_Patches { [HarmonyPatch("GetMaxCarryWeight")] [HarmonyPostfix] private static void GetMaxCarryWeight_Postfix(Player __instance, ref float __result) { __result *= CarryCapacityMultiplier.Value; } } public const string ModId = "dev.crystal.magni"; public const string ModName = "Magni"; public const string ModVersion = "1.2.3.0"; internal static readonly ConfigSync ConfigSync = new ConfigSync("dev.crystal.magni") { DisplayName = "Magni", CurrentVersion = "1.2.3.0", MinimumRequiredVersion = "1.2.3.0", ModRequired = true, ModRequirementMode = (ModRequirementMode)1 }; public static ConfigEntry<float> CarryCapacityMultiplier; private static Harmony sPlayerHarmony; private void Awake() { //IL_0055: Unknown result type (might be due to invalid IL or missing references) //IL_005f: Expected O, but got Unknown CarryCapacityMultiplier = ((BaseUnityPlugin)this).Config.Bind<float>("Weight", "CarryCapacityMultiplier", 2f, "Multiplier to apply to max carry weight capacity. Game default = 1.0. Mod default = 2.0. [The value will be enforced on a server.]"); CarryCapacityMultiplier.SettingChanged += CarryCapacity_SettingChanged; ((ConditionalConfigSync)ConfigSync).AddConfigEntry<float>(CarryCapacityMultiplier, (ConfigSyncMode)0); ClampConfig(); sPlayerHarmony = new Harmony("dev.crystal.magni_Player"); sPlayerHarmony.PatchAll(typeof(Player_Patches)); } private void OnDestroy() { sPlayerHarmony.UnpatchSelf(); } private static void ClampConfig() { if (CarryCapacityMultiplier.Value < 0f) { CarryCapacityMultiplier.Value = 0f; } if (CarryCapacityMultiplier.Value > 1000f) { CarryCapacityMultiplier.Value = 1000f; } } private void CarryCapacity_SettingChanged(object sender, EventArgs e) { ClampConfig(); } }