### Harmony id=StartGameBannerlordCheats, version=2.3.1.1, location=E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord.Harmony\bin\Gaming.Desktop.x64_Shipping_Client\0Harmony.dll, env/clr=6.0.12, platform=Win32NT ### Started from virtual System.Void BannerlordCheats.SubModule::OnSubModuleLoad(), location E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord Cheats Reload\bin\Gaming.Desktop.x64_Shipping_Client\BannerlordCheats.dll ### At 2024-04-02 02.07.42 ### Patch: static TaleWorlds.Core.ItemObject TaleWorlds.Core.Crafting::InitializePreCraftedWeaponOnLoad(TaleWorlds.Core.ItemObject itemObject, TaleWorlds.Core.WeaponDesign craftedData, TaleWorlds.Localization.TextObject itemName, TaleWorlds.Core.BasicCultureObject culture) ### Replacement: static TaleWorlds.Core.ItemObject TaleWorlds.Core.Crafting::TaleWorlds.Core.Crafting.InitializePreCraftedWeaponOnLoad_Patch1(TaleWorlds.Core.ItemObject itemObject, TaleWorlds.Core.WeaponDesign craftedData, TaleWorlds.Localization.TextObject itemName, TaleWorlds.Core.BasicCultureObject culture) IL_0000: Local var 0: TaleWorlds.Core.ItemObject IL_0000: ldnull IL_0001: stloc 0 (TaleWorlds.Core.ItemObject) IL_0005: // start original IL_0005: ldarg.1 IL_0006: ldfld TaleWorlds.Core.CraftingTemplate TaleWorlds.Core.WeaponDesign::Template IL_000B: ldarg.3 IL_000C: ldarg.2 IL_000D: newobj System.Void TaleWorlds.Core.Crafting::.ctor(TaleWorlds.Core.CraftingTemplate craftingTemplate, TaleWorlds.Core.BasicCultureObject culture, TaleWorlds.Localization.TextObject name) IL_0012: dup IL_0013: ldarg.1 IL_0014: callvirt System.Void TaleWorlds.Core.Crafting::set_CurrentWeaponDesign(TaleWorlds.Core.WeaponDesign value) IL_0019: dup IL_001A: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_001F: dup IL_0020: ldarg.1 IL_0021: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Core.WeaponDesign item) IL_0026: stfld System.Collections.Generic.List`1 TaleWorlds.Core.Crafting::_history IL_002B: dup IL_002C: ldarg.0 IL_002D: callvirt System.Void TaleWorlds.Core.Crafting::SetItemObject(TaleWorlds.Core.ItemObject itemObject) IL_0032: ldfld TaleWorlds.Core.ItemObject TaleWorlds.Core.Crafting::_craftedItemObject IL_0037: // end original IL_0037: stloc 0 (TaleWorlds.Core.ItemObject) IL_003B: ldloca 0 (TaleWorlds.Core.ItemObject) IL_003F: ldarga 0 IL_0043: ldarga 1 IL_0047: ldarga 2 IL_004B: ldarga 3 IL_004F: call static System.Void BannerlordCheats.Patches.Smithing.LoadingWeaponProperties::Postfix(TaleWorlds.Core.ItemObject& __result, TaleWorlds.Core.ItemObject& itemObject, TaleWorlds.Core.WeaponDesign& craftedData, TaleWorlds.Localization.TextObject& itemName, TaleWorlds.Core.BasicCultureObject& culture) IL_0054: ldloc 0 (TaleWorlds.Core.ItemObject) IL_0058: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Module::LoadSubModules() ### Replacement: static System.Void TaleWorlds.MountAndBlade.Module::TaleWorlds.MountAndBlade.Module.LoadSubModules_Patch0(TaleWorlds.MountAndBlade.Module this) IL_0000: Local var 0: System.Collections.Generic.List`1 IL_0000: Local var 1: System.String[] IL_0000: Local var 2: System.String IL_0000: Local var 3: System.Int32 IL_0000: Local var 4: TaleWorlds.ModuleManager.ModuleInfo IL_0000: Local var 5: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 6: TaleWorlds.ModuleManager.ModuleInfo IL_0000: Local var 7: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 8: TaleWorlds.ModuleManager.SubModuleInfo IL_0000: Local var 9: System.String IL_0000: Local var 10: System.String IL_0000: Local var 11: System.String IL_0000: Local var 12: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 13: System.String IL_0000: Local var 14: System.String IL_0000: Local var 15: System.String IL_0000: Local var 16: System.Reflection.Assembly IL_0000: Local var 17: System.Reflection.Assembly IL_0000: Local var 18: System.String IL_0000: // start original IL_0000: ldstr "Loading submodules..." IL_0005: ldc.i4.0 IL_0006: ldc.i4.s 12 IL_0008: ldc.i8 17592186044416 IL_0011: call static System.Void TaleWorlds.Engine.MBDebug::Print(System.String message, System.Int32 logLevel, TaleWorlds.Library.DebugColor color, System.UInt64 debugFilter) IL_0016: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_001B: stloc.0 IL_001C: call static System.String[] TaleWorlds.Engine.Utilities::GetModulesNames() IL_0021: stloc.1 IL_0022: ldc.i4.0 IL_0023: stloc.3 IL_0024: br => Label0 IL_0029: Label2 IL_0029: ldloc.1 IL_002A: ldloc.3 IL_002B: ldelem.ref IL_002C: call static TaleWorlds.ModuleManager.ModuleInfo TaleWorlds.ModuleManager.ModuleHelper::GetModuleInfo(System.String moduleId) IL_0031: stloc.s 4 (TaleWorlds.ModuleManager.ModuleInfo) IL_0033: ldloc.s 4 (TaleWorlds.ModuleManager.ModuleInfo) IL_0035: brfalse => Label1 IL_003A: ldloc.0 IL_003B: ldloc.s 4 (TaleWorlds.ModuleManager.ModuleInfo) IL_003D: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.ModuleManager.ModuleInfo item) IL_0042: ldloc.1 IL_0043: ldloc.3 IL_0044: ldelem.ref IL_0045: call static System.Void TaleWorlds.ObjectSystem.XmlResource::GetMbprojxmls(System.String moduleName) IL_004A: ldloc.1 IL_004B: ldloc.3 IL_004C: ldelem.ref IL_004D: call static System.Void TaleWorlds.ObjectSystem.XmlResource::GetXmlListAndApply(System.String moduleName) IL_0052: Label1 IL_0052: ldloc.3 IL_0053: ldc.i4.1 IL_0054: add IL_0055: stloc.3 IL_0056: Label0 IL_0056: ldloc.3 IL_0057: ldloc.1 IL_0058: ldlen IL_0059: conv.i4 IL_005A: blt => Label2 IL_005F: call static System.String TaleWorlds.Library.Common::get_ConfigName() IL_0064: stloc.2 IL_0065: ldloc.0 IL_0066: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_006B: stloc.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.ModuleInfo]) .try { IL_006D: br => Label3 IL_0072: Label18 IL_0072: ldloca.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.ModuleInfo]) IL_0074: call virtual TaleWorlds.ModuleManager.ModuleInfo System.Collections.Generic.Enumerator::get_Current() IL_0079: stloc.s 6 (TaleWorlds.ModuleManager.ModuleInfo) IL_007B: ldloc.s 6 (TaleWorlds.ModuleManager.ModuleInfo) IL_007D: ldfld System.Collections.Generic.List`1 TaleWorlds.ModuleManager.ModuleInfo::SubModules IL_0082: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0087: stloc.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.SubModuleInfo]) .try { IL_0089: br => Label4 IL_008E: Label16 IL_008E: ldloca.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.SubModuleInfo]) IL_0090: call virtual TaleWorlds.ModuleManager.SubModuleInfo System.Collections.Generic.Enumerator::get_Current() IL_0095: stloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_0097: ldarg.0 IL_0098: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_009A: call System.Boolean TaleWorlds.MountAndBlade.Module::CheckIfSubmoduleCanBeLoadable(TaleWorlds.ModuleManager.SubModuleInfo subModuleInfo) IL_009F: brfalse => Label5 IL_00A4: ldarg.0 IL_00A5: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.MountAndBlade.Module::_loadedSubmoduleTypes IL_00AA: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_00AC: callvirt System.String TaleWorlds.ModuleManager.SubModuleInfo::get_SubModuleClassType() IL_00B1: callvirt virtual System.Boolean System.Collections.Generic.Dictionary`2::ContainsKey(System.String key) IL_00B6: brtrue => Label6 IL_00BB: ldloc.s 6 (TaleWorlds.ModuleManager.ModuleInfo) IL_00BD: callvirt System.String TaleWorlds.ModuleManager.ModuleInfo::get_FolderPath() IL_00C2: ldstr "bin" IL_00C7: ldloc.2 IL_00C8: call static System.String System.IO.Path::Combine(System.String path1, System.String path2, System.String path3) IL_00CD: stloc.s 9 (System.String) IL_00CF: ldloc.s 9 (System.String) IL_00D1: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_00D3: callvirt System.String TaleWorlds.ModuleManager.SubModuleInfo::get_DLLName() IL_00D8: call static System.String System.IO.Path::Combine(System.String path1, System.String path2) IL_00DD: stloc.s 10 (System.String) IL_00DF: call static System.String TaleWorlds.Library.ManagedDllFolder::get_Name() IL_00E4: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_00E6: callvirt System.String TaleWorlds.ModuleManager.SubModuleInfo::get_DLLName() IL_00EB: call static System.String System.String::Concat(System.String str0, System.String str1) IL_00F0: stloc.s 11 (System.String) IL_00F2: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_00F4: callvirt System.Collections.Generic.List`1 TaleWorlds.ModuleManager.SubModuleInfo::get_Assemblies() IL_00F9: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_00FE: stloc.s 12 (System.Collections.Generic.List`1+Enumerator[System.String]) .try { IL_0100: br => Label7 IL_0105: Label10 IL_0105: ldloca.s 12 (System.Collections.Generic.List`1+Enumerator[System.String]) IL_0107: call virtual System.String System.Collections.Generic.Enumerator::get_Current() IL_010C: stloc.s 13 (System.String) IL_010E: ldloc.s 9 (System.String) IL_0110: ldloc.s 13 (System.String) IL_0112: call static System.String System.IO.Path::Combine(System.String path1, System.String path2) IL_0117: stloc.s 14 (System.String) IL_0119: call static System.String TaleWorlds.Library.ManagedDllFolder::get_Name() IL_011E: ldloc.s 13 (System.String) IL_0120: call static System.String System.String::Concat(System.String str0, System.String str1) IL_0125: stloc.s 15 (System.String) IL_0127: ldloc.s 14 (System.String) IL_0129: call static System.Boolean System.IO.File::Exists(System.String path) IL_012E: brfalse => Label8 IL_0133: ldloc.s 14 (System.String) IL_0135: ldc.i4.1 IL_0136: call static System.Reflection.Assembly TaleWorlds.Library.AssemblyLoader::LoadFrom(System.String assemblyFile, System.Boolean show_error) IL_013B: pop IL_013C: br => Label9 IL_0141: Label8 IL_0141: ldloc.s 15 (System.String) IL_0143: ldc.i4.1 IL_0144: call static System.Reflection.Assembly TaleWorlds.Library.AssemblyLoader::LoadFrom(System.String assemblyFile, System.Boolean show_error) IL_0149: pop IL_014A: Label7 IL_014A: Label9 IL_014A: ldloca.s 12 (System.Collections.Generic.List`1+Enumerator[System.String]) IL_014C: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0151: brtrue => Label10 IL_0156: leave => Label11 IL_015B: leave => (autogenerated) } // end try .finally { IL_0160: ldloca.s 12 (System.Collections.Generic.List`1+Enumerator[System.String]) IL_0162: constrained. System.Collections.Generic.List`1+Enumerator[System.String] IL_0168: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_016D: endfinally IL_016E: leave => (autogenerated) } // end handler IL_016F: Label11 IL_016F: ldloc.s 10 (System.String) IL_0171: call static System.Boolean System.IO.File::Exists(System.String path) IL_0176: brfalse => Label12 IL_017B: ldloc.s 10 (System.String) IL_017D: ldc.i4.1 IL_017E: call static System.Reflection.Assembly TaleWorlds.Library.AssemblyLoader::LoadFrom(System.String assemblyFile, System.Boolean show_error) IL_0183: stloc.s 16 (System.Reflection.Assembly) IL_0185: ldarg.0 IL_0186: ldloc.s 16 (System.Reflection.Assembly) IL_0188: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_018A: callvirt System.String TaleWorlds.ModuleManager.SubModuleInfo::get_SubModuleClassType() IL_018F: call System.Void TaleWorlds.MountAndBlade.Module::AddSubModule(System.Reflection.Assembly subModuleAssembly, System.String name) IL_0194: br => Label13 IL_0199: Label12 IL_0199: ldloc.s 11 (System.String) IL_019B: call static System.Boolean System.IO.File::Exists(System.String path) IL_01A0: brfalse => Label14 IL_01A5: ldloc.s 11 (System.String) IL_01A7: ldc.i4.1 IL_01A8: call static System.Reflection.Assembly TaleWorlds.Library.AssemblyLoader::LoadFrom(System.String assemblyFile, System.Boolean show_error) IL_01AD: stloc.s 17 (System.Reflection.Assembly) IL_01AF: ldarg.0 IL_01B0: ldloc.s 17 (System.Reflection.Assembly) IL_01B2: ldloc.s 8 (TaleWorlds.ModuleManager.SubModuleInfo) IL_01B4: callvirt System.String TaleWorlds.ModuleManager.SubModuleInfo::get_SubModuleClassType() IL_01B9: call System.Void TaleWorlds.MountAndBlade.Module::AddSubModule(System.Reflection.Assembly subModuleAssembly, System.String name) IL_01BE: br => Label15 IL_01C3: Label14 IL_01C3: ldstr "Cannot find: " IL_01C8: ldloc.s 10 (System.String) IL_01CA: call static System.String System.String::Concat(System.String str0, System.String str1) IL_01CF: ldstr "Error" IL_01D4: stloc.s 18 (System.String) IL_01D6: ldloc.s 18 (System.String) IL_01D8: ldc.i4.4 IL_01D9: call static System.Void TaleWorlds.Library.Debug::ShowMessageBox(System.String lpText, System.String lpCaption, System.UInt32 uType) IL_01DE: Label4 IL_01DE: Label5 IL_01DE: Label6 IL_01DE: Label13 IL_01DE: Label15 IL_01DE: ldloca.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.SubModuleInfo]) IL_01E0: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_01E5: brtrue => Label16 IL_01EA: leave => Label17 IL_01EF: leave => (autogenerated) } // end try .finally { IL_01F4: ldloca.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.SubModuleInfo]) IL_01F6: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.SubModuleInfo] IL_01FC: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0201: endfinally IL_0202: leave => (autogenerated) } // end handler IL_0203: Label3 IL_0203: Label17 IL_0203: ldloca.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.ModuleInfo]) IL_0205: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_020A: brtrue => Label18 IL_020F: leave => Label19 IL_0214: leave => (autogenerated) } // end try .finally { IL_0219: ldloca.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.ModuleInfo]) IL_021B: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.ModuleManager.ModuleInfo] IL_0221: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0226: endfinally IL_0227: leave => (autogenerated) } // end handler IL_0228: Label19 IL_0228: ldarg.0 IL_0229: call System.Void TaleWorlds.MountAndBlade.Module::InitializeSubModules() IL_022E: // end original IL_022E: ret DONE ### Patch: static System.Collections.Generic.List`1 TaleWorlds.Library.CommandLineFunctionality::CollectCommandLineFunctions() ### Replacement: static System.Collections.Generic.List`1 TaleWorlds.Library.CommandLineFunctionality::TaleWorlds.Library.CommandLineFunctionality.CollectCommandLineFunctions_Patch0() IL_0000: Local var 0: System.Collections.Generic.List`1 IL_0000: Local var 1: System.Reflection.Assembly[] IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Reflection.Assembly IL_0000: Local var 4: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 5: System.Reflection.MethodInfo[] IL_0000: Local var 6: System.Int32 IL_0000: Local var 7: System.Reflection.MethodInfo IL_0000: Local var 8: System.Object[] IL_0000: Local var 9: TaleWorlds.Library.CommandLineFunctionality/CommandLineArgumentFunction IL_0000: Local var 10: System.String IL_0000: Local var 11: System.String IL_0000: Local var 12: TaleWorlds.Library.CommandLineFunctionality/CommandLineFunction IL_0000: // start original IL_0000: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_0005: stloc.0 IL_0006: call static System.AppDomain System.AppDomain::get_CurrentDomain() IL_000B: callvirt System.Reflection.Assembly[] System.AppDomain::GetAssemblies() IL_0010: stloc.1 IL_0011: ldc.i4.0 IL_0012: stloc.2 IL_0013: br => Label0 IL_0018: Label11 IL_0018: ldloc.1 IL_0019: ldloc.2 IL_001A: ldelem.ref IL_001B: stloc.3 IL_001C: ldloc.3 IL_001D: call static System.Boolean TaleWorlds.Library.CommandLineFunctionality::CheckAssemblyReferencesThis(System.Reflection.Assembly assembly) IL_0022: brfalse => Label1 IL_0027: ldloc.3 IL_0028: ldnull IL_0029: call static System.Collections.Generic.List`1 TaleWorlds.Library.Extensions::GetTypesSafe(System.Reflection.Assembly assembly, System.Func`2 func) IL_002E: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0033: stloc.s 4 (System.Collections.Generic.List`1+Enumerator[System.Type]) .try { IL_0035: br => Label2 IL_003A: Label9 IL_003A: ldloca.s 4 (System.Collections.Generic.List`1+Enumerator[System.Type]) IL_003C: call virtual System.Type System.Collections.Generic.Enumerator::get_Current() IL_0041: ldc.i4.s 56 IL_0043: callvirt abstract virtual System.Reflection.MethodInfo[] System.Type::GetMethods(System.Reflection.BindingFlags bindingAttr) IL_0048: stloc.s 5 (System.Reflection.MethodInfo[]) IL_004A: ldc.i4.0 IL_004B: stloc.s 6 (System.Int32) IL_004D: br => Label3 IL_0052: Label8 IL_0052: ldloc.s 5 (System.Reflection.MethodInfo[]) IL_0054: ldloc.s 6 (System.Int32) IL_0056: ldelem.ref IL_0057: stloc.s 7 (System.Reflection.MethodInfo) IL_0059: ldloc.s 7 (System.Reflection.MethodInfo) IL_005B: ldtoken TaleWorlds.Library.CommandLineFunctionality+CommandLineArgumentFunction IL_0060: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_0065: ldc.i4.0 IL_0066: call static System.Object[] TaleWorlds.Library.Extensions::GetCustomAttributesSafe(System.Reflection.MethodInfo method, System.Type attributeType, System.Boolean inherit) IL_006B: stloc.s 8 (System.Object[]) IL_006D: ldloc.s 8 (System.Object[]) IL_006F: brfalse => Label4 IL_0074: ldloc.s 8 (System.Object[]) IL_0076: ldlen IL_0077: brfalse => Label5 IL_007C: ldloc.s 8 (System.Object[]) IL_007E: ldc.i4.0 IL_007F: ldelem.ref IL_0080: isinst TaleWorlds.Library.CommandLineFunctionality+CommandLineArgumentFunction IL_0085: stloc.s 9 (TaleWorlds.Library.CommandLineFunctionality+CommandLineArgumentFunction) IL_0087: ldloc.s 9 (TaleWorlds.Library.CommandLineFunctionality+CommandLineArgumentFunction) IL_0089: brfalse => Label6 IL_008E: ldloc.s 7 (System.Reflection.MethodInfo) IL_0090: callvirt virtual System.Type System.Reflection.MethodInfo::get_ReturnType() IL_0095: ldtoken System.String IL_009A: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_009F: call static System.Boolean System.Type::op_Inequality(System.Type left, System.Type right) IL_00A4: brtrue => Label7 IL_00A9: ldloc.s 9 (TaleWorlds.Library.CommandLineFunctionality+CommandLineArgumentFunction) IL_00AB: ldfld System.String TaleWorlds.Library.CommandLineArgumentFunction::Name IL_00B0: stloc.s 10 (System.String) IL_00B2: ldloc.s 9 (TaleWorlds.Library.CommandLineFunctionality+CommandLineArgumentFunction) IL_00B4: ldfld System.String TaleWorlds.Library.CommandLineArgumentFunction::GroupName IL_00B9: ldstr "." IL_00BE: ldloc.s 10 (System.String) IL_00C0: call static System.String System.String::Concat(System.String str0, System.String str1, System.String str2) IL_00C5: stloc.s 11 (System.String) IL_00C7: ldloc.0 IL_00C8: ldloc.s 11 (System.String) IL_00CA: callvirt virtual System.Void System.Collections.Generic.List`1::Add(System.String item) IL_00CF: ldtoken System.Func`2[System.Collections.Generic.List`1[System.String],System.String] IL_00D4: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_00D9: ldloc.s 7 (System.Reflection.MethodInfo) IL_00DB: call static System.Delegate System.Delegate::CreateDelegate(System.Type type, System.Reflection.MethodInfo method) IL_00E0: castclass System.Func`2[System.Collections.Generic.List`1[System.String],System.String] IL_00E5: newobj System.Void TaleWorlds.Library.CommandLineFunction::.ctor(System.Func`2, System.String> commandlinefunc) IL_00EA: stloc.s 12 (TaleWorlds.Library.CommandLineFunctionality+CommandLineFunction) IL_00EC: ldsfld System.Collections.Generic.Dictionary`2 TaleWorlds.Library.CommandLineFunctionality::AllFunctions IL_00F1: ldloc.s 11 (System.String) IL_00F3: ldloc.s 12 (TaleWorlds.Library.CommandLineFunctionality+CommandLineFunction) IL_00F5: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.String key, TaleWorlds.Library.CommandLineFunction value) IL_00FA: Label4 IL_00FA: Label5 IL_00FA: Label6 IL_00FA: Label7 IL_00FA: ldloc.s 6 (System.Int32) IL_00FC: ldc.i4.1 IL_00FD: add IL_00FE: stloc.s 6 (System.Int32) IL_0100: Label3 IL_0100: ldloc.s 6 (System.Int32) IL_0102: ldloc.s 5 (System.Reflection.MethodInfo[]) IL_0104: ldlen IL_0105: conv.i4 IL_0106: blt => Label8 IL_010B: Label2 IL_010B: ldloca.s 4 (System.Collections.Generic.List`1+Enumerator[System.Type]) IL_010D: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0112: brtrue => Label9 IL_0117: leave => Label10 IL_011C: leave => (autogenerated) } // end try .finally { IL_0121: ldloca.s 4 (System.Collections.Generic.List`1+Enumerator[System.Type]) IL_0123: constrained. System.Collections.Generic.List`1+Enumerator[System.Type] IL_0129: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_012E: endfinally IL_012F: leave => (autogenerated) } // end handler IL_0130: Label1 IL_0130: Label10 IL_0130: ldloc.2 IL_0131: ldc.i4.1 IL_0132: add IL_0133: stloc.2 IL_0134: Label0 IL_0134: ldloc.2 IL_0135: ldloc.1 IL_0136: ldlen IL_0137: conv.i4 IL_0138: blt => Label11 IL_013D: ldloc.0 IL_013E: // end original IL_013E: ret DONE ### Patch: virtual System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::OnBeforeInitialModuleScreenSetAsRoot() ### Replacement: static System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::TaleWorlds.MountAndBlade.MBSubModuleBase.OnBeforeInitialModuleScreenSetAsRoot_Patch2(TaleWorlds.MountAndBlade.MBSubModuleBase this) IL_0000: // start original IL_0000: // end original IL_0000: ldarg.0 IL_0001: call static System.Void Bannerlord.ButterLib.SubModuleWrappers2.Patches.MBSubModuleBasePatch::OnBeforeInitialModuleScreenSetAsRootPostfix(TaleWorlds.MountAndBlade.MBSubModuleBase __instance) IL_0006: ldarg.0 IL_0007: call static System.Void Bannerlord.Harmony.SubModule::OnBeforeInitialModuleScreenSetAsRootPostfix(TaleWorlds.MountAndBlade.MBSubModuleBase __instance) IL_000C: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::LoadBehaviorData() ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager.LoadBehaviorData_Patch1(TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager this) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 1: TaleWorlds.CampaignSystem.CampaignBehaviorBase IL_0000: Local var 2: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 2 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 2 (System.Boolean) IL_000E: ldloc 2 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg.0 IL_0018: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_001D: call static System.Void Bannerlord.ButterLib.Implementation.ObjectSystem.Patches.CampaignBehaviorManagerPatch::OnGameLoadedPrefix(System.Object ____campaignBehaviorDataStore) IL_0022: Label1 IL_0022: nop IL_0023: ldloc 2 (System.Boolean) IL_0027: brfalse => Label0 IL_002C: // start original IL_002C: ldarg.0 IL_002D: ldfld System.Collections.Generic.List`1 TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviors IL_0032: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0037: stloc.0 .try { IL_0038: br => Label2 IL_003D: Label3 IL_003D: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_003F: call virtual TaleWorlds.CampaignSystem.CampaignBehaviorBase System.Collections.Generic.Enumerator::get_Current() IL_0044: stloc.1 IL_0045: ldarg.0 IL_0046: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_004B: ldloc.1 IL_004C: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::LoadBehaviorData(TaleWorlds.CampaignSystem.CampaignBehaviorBase campaignBehavior) IL_0051: Label2 IL_0051: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0053: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0058: brtrue => Label3 IL_005D: leave => Label4 IL_0062: leave => (autogenerated) } // end try .finally { IL_0067: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0069: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase] IL_006F: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0074: endfinally IL_0075: leave => (autogenerated) } // end handler IL_0076: Label4 IL_0076: ldarg.0 IL_0077: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_007C: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::ClearBehaviorData() IL_0081: // end original IL_0081: Label0 IL_0081: ret DONE ### Patch: System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::OnBeforeSave() ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager.OnBeforeSave_Patch1(TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager this) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 1: TaleWorlds.CampaignSystem.CampaignBehaviorBase IL_0000: // start original IL_0000: ldarg.0 IL_0001: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_0006: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::ClearBehaviorData() IL_000B: ldarg.0 IL_000C: ldfld System.Collections.Generic.List`1 TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviors IL_0011: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0016: stloc.0 .try { IL_0017: br => Label0 IL_001C: Label1 IL_001C: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_001E: call virtual TaleWorlds.CampaignSystem.CampaignBehaviorBase System.Collections.Generic.Enumerator::get_Current() IL_0023: stloc.1 IL_0024: ldarg.0 IL_0025: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_002A: ldloc.1 IL_002B: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::SaveBehaviorData(TaleWorlds.CampaignSystem.CampaignBehaviorBase campaignBehavior) IL_0030: Label0 IL_0030: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0032: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0037: brtrue => Label1 IL_003C: leave => Label2 IL_0041: leave => (autogenerated) } // end try .finally { IL_0046: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0048: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase] IL_004E: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0053: endfinally IL_0054: leave => (autogenerated) } // end handler IL_0055: // end original IL_0055: Label2 IL_0055: ldarg.0 IL_0056: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_005B: call static System.Void Bannerlord.ButterLib.Implementation.ObjectSystem.Patches.CampaignBehaviorManagerPatch::OnBeforeSavePostfix(System.Object ____campaignBehaviorDataStore) IL_0060: ret DONE ### Harmony id=bannerlord.mcm.mainmenuscreeninjection_v4, version=2.3.1.1, location=E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord.Harmony\bin\Gaming.Desktop.x64_Shipping_Client\0Harmony.dll, env/clr=6.0.12, platform=Win32NT ### Started from System.Void MCM.UI.Functionality.DefaultGameMenuScreenHandler::.ctor(BUTR.DependencyInjection.Logger.IBUTRLogger`1 logger), location E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord.MBOptionScreen\bin\Gaming.Desktop.x64_Shipping_Client\MCMv5.UI.dll ### At 2024-04-02 02.07.45 ### Patch: System.Void TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM::RefreshMenuOptions() ### Replacement: static System.Void TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM::TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM.RefreshMenuOptions_Patch1(TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM this) IL_0000: Local var 0: System.Collections.Generic.IEnumerator`1 IL_0000: Local var 1: TaleWorlds.MountAndBlade.InitialStateOption IL_0000: // start original IL_0000: ldarg.0 IL_0001: newobj System.Void TaleWorlds.Library.MBBindingList`1::.ctor() IL_0006: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM::set_MenuOptions(TaleWorlds.Library.MBBindingList`1 value) IL_000B: call static TaleWorlds.Core.GameStateManager TaleWorlds.Core.GameStateManager::get_Current() IL_0010: callvirt TaleWorlds.Core.GameState TaleWorlds.Core.GameStateManager::get_ActiveState() IL_0015: pop IL_0016: call static TaleWorlds.MountAndBlade.Module TaleWorlds.MountAndBlade.Module::get_CurrentModule() IL_001B: callvirt System.Collections.Generic.IEnumerable`1 TaleWorlds.MountAndBlade.Module::GetInitialStateOptions() IL_0020: callvirt abstract virtual System.Collections.Generic.IEnumerator`1 System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_0025: stloc.0 .try { IL_0026: br => Label0 IL_002B: Label1 IL_002B: ldloc.0 IL_002C: callvirt abstract virtual TaleWorlds.MountAndBlade.InitialStateOption System.Collections.Generic.IEnumerator`1::get_Current() IL_0031: stloc.1 IL_0032: ldarg.0 IL_0033: call TaleWorlds.Library.MBBindingList`1 TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM::get_MenuOptions() IL_0038: ldloc.1 IL_0039: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuOptionVM::.ctor(TaleWorlds.MountAndBlade.InitialStateOption initialStateOption) IL_003E: callvirt virtual System.Void System.Collections.ObjectModel.Collection`1::Add(TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuOptionVM item) IL_0043: Label0 IL_0043: ldloc.0 IL_0044: callvirt abstract virtual System.Boolean System.Collections.IEnumerator::MoveNext() IL_0049: brtrue => Label1 IL_004E: leave => Label2 IL_0053: leave => (autogenerated) } // end try .finally { IL_0058: ldloc.0 IL_0059: brfalse => Label3 IL_005E: ldloc.0 IL_005F: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0064: Label3 IL_0064: endfinally IL_0065: leave => (autogenerated) } // end handler IL_0066: Label2 IL_0066: ldarg.0 IL_0067: call static System.Boolean TaleWorlds.Engine.Utilities::IsOnlyCoreContentEnabled() IL_006C: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM::set_IsDownloadingContent(System.Boolean value) IL_0071: // end original IL_0071: ldarg.0 IL_0072: ldarg.0 IL_0073: ldflda TaleWorlds.Library.MBBindingList`1 TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM::_menuOptions IL_0078: call static System.Void MCM.UI.Functionality.DefaultGameMenuScreenHandler::RefreshMenuOptionsPostfix(TaleWorlds.MountAndBlade.ViewModelCollection.InitialMenu.InitialMenuVM __instance, TaleWorlds.Library.MBBindingList`1& ____menuOptions) IL_007D: ret DONE ### Patch: System.Void TaleWorlds.CampaignSystem.CampaignBehaviorBase::.ctor() ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignBehaviorBase::TaleWorlds.CampaignSystem.CampaignBehaviorBase..ctor_Patch2(TaleWorlds.CampaignSystem.CampaignBehaviorBase this) IL_0000: // start original IL_0000: ldarg.0 IL_0001: call System.Void System.Object::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.0 IL_0008: call System.Type System.Object::GetType() IL_000D: callvirt abstract virtual System.String System.Reflection.MemberInfo::get_Name() IL_0012: stfld System.String TaleWorlds.CampaignSystem.CampaignBehaviorBase::StringId IL_0017: // end original IL_0017: ldarg.0 IL_0018: ldarg.0 IL_0019: ldflda System.String TaleWorlds.CampaignSystem.CampaignBehaviorBase::StringId IL_001E: call static System.Void Bannerlord.ButterLib.Implementation.SaveSystem.Patches.BehaviourNamePatch::CampaignBehaviorBaseCtorPostfix(TaleWorlds.CampaignSystem.CampaignBehaviorBase __instance, System.String& ___StringId) IL_0023: ldarg.0 IL_0024: ldarg.0 IL_0025: ldflda System.String TaleWorlds.CampaignSystem.CampaignBehaviorBase::StringId IL_002A: call static System.Void Bannerlord.ButterLib.Implementation.SaveSystem.Patches.BehaviourNamePatch::CampaignBehaviorBaseCtorPostfix(TaleWorlds.CampaignSystem.CampaignBehaviorBase __instance, System.String& ___StringId) IL_002F: ret DONE ### Patch: static System.Boolean TaleWorlds.SaveSystem.TypeExtensions::IsContainer(System.Type type, TaleWorlds.SaveSystem.ContainerType& containerType) ### Replacement: static System.Boolean TaleWorlds.SaveSystem.TypeExtensions::TaleWorlds.SaveSystem.TypeExtensions.IsContainer_Patch2(System.Type type, TaleWorlds.SaveSystem.ContainerType& containerType) IL_0000: Local var 0: System.Type IL_0000: Local var 1: System.Boolean IL_0000: Local var 2: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Boolean) IL_0009: ldc.i4 0 IL_000E: stloc 2 (System.Boolean) IL_0012: ldc.i4.1 IL_0013: stloc 2 (System.Boolean) IL_0017: ldloc 2 (System.Boolean) IL_001B: brfalse => Label1 IL_0020: ldarg 0 IL_0024: ldarg 1 IL_0028: ldloca 1 (System.Boolean) IL_002C: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.TypeExtensionsPatch::IsContainerPrefix(System.Type type, TaleWorlds.SaveSystem.ContainerType& containerType, System.Boolean& __result) IL_0031: stloc 2 (System.Boolean) IL_0035: Label1 IL_0035: nop IL_0036: ldloc 2 (System.Boolean) IL_003A: brfalse => Label2 IL_003F: ldarg 0 IL_0043: ldarg 1 IL_0047: ldloca 1 (System.Boolean) IL_004B: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.TypeExtensionsPatch::IsContainerPrefix(System.Type type, TaleWorlds.SaveSystem.ContainerType& containerType, System.Boolean& __result) IL_0050: stloc 2 (System.Boolean) IL_0054: Label2 IL_0054: nop IL_0055: ldloc 2 (System.Boolean) IL_0059: brfalse => Label0 IL_005E: // start original IL_005E: ldarg.1 IL_005F: ldc.i4.0 IL_0060: stind.i4 IL_0061: ldarg.0 IL_0062: callvirt virtual System.Boolean System.Type::get_IsGenericType() IL_0067: brfalse => Label3 IL_006C: ldarg.0 IL_006D: callvirt virtual System.Boolean System.Type::get_IsGenericTypeDefinition() IL_0072: brtrue => Label4 IL_0077: ldarg.0 IL_0078: callvirt virtual System.Type System.Type::GetGenericTypeDefinition() IL_007D: stloc.0 IL_007E: ldloc.0 IL_007F: ldtoken System.Collections.Generic.Dictionary`2[TKey,TValue] IL_0084: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_0089: call static System.Boolean System.Type::op_Equality(System.Type left, System.Type right) IL_008E: brfalse => Label5 IL_0093: ldarg.1 IL_0094: ldc.i4.2 IL_0095: stind.i4 IL_0096: ldc.i4.1 IL_0097: br => Label11 IL_009C: Label5 IL_009C: ldloc.0 IL_009D: ldtoken System.Collections.Generic.List`1[T] IL_00A2: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_00A7: call static System.Boolean System.Type::op_Equality(System.Type left, System.Type right) IL_00AC: brfalse => Label6 IL_00B1: ldarg.1 IL_00B2: ldc.i4.1 IL_00B3: stind.i4 IL_00B4: ldc.i4.1 IL_00B5: br => Label12 IL_00BA: Label6 IL_00BA: ldloc.0 IL_00BB: ldtoken TaleWorlds.Library.MBList`1[T] IL_00C0: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_00C5: call static System.Boolean System.Type::op_Equality(System.Type left, System.Type right) IL_00CA: brfalse => Label7 IL_00CF: ldarg.1 IL_00D0: ldc.i4.5 IL_00D1: stind.i4 IL_00D2: ldc.i4.1 IL_00D3: br => Label13 IL_00D8: Label7 IL_00D8: ldloc.0 IL_00D9: ldtoken TaleWorlds.Library.MBReadOnlyList`1[T] IL_00DE: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_00E3: call static System.Boolean System.Type::op_Equality(System.Type left, System.Type right) IL_00E8: brfalse => Label8 IL_00ED: ldarg.1 IL_00EE: ldc.i4.6 IL_00EF: stind.i4 IL_00F0: ldc.i4.1 IL_00F1: br => Label14 IL_00F6: Label8 IL_00F6: ldloc.0 IL_00F7: ldtoken System.Collections.Generic.Queue`1[T] IL_00FC: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_0101: call static System.Boolean System.Type::op_Equality(System.Type left, System.Type right) IL_0106: brfalse => Label9 IL_010B: ldarg.1 IL_010C: ldc.i4.4 IL_010D: stind.i4 IL_010E: ldc.i4.1 IL_010F: br => Label15 IL_0114: Label3 IL_0114: Label4 IL_0114: ldarg.0 IL_0115: callvirt System.Boolean System.Type::get_IsArray() IL_011A: brfalse => Label10 IL_011F: ldarg.1 IL_0120: ldc.i4.3 IL_0121: stind.i4 IL_0122: ldc.i4.1 IL_0123: br => Label16 IL_0128: Label9 IL_0128: Label10 IL_0128: ldc.i4.0 IL_0129: // end original IL_0129: Label11 IL_0129: Label12 IL_0129: Label13 IL_0129: Label14 IL_0129: Label15 IL_0129: Label16 IL_0129: stloc 1 (System.Boolean) IL_012D: Label0 IL_012D: ldloc 1 (System.Boolean) IL_0131: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddBasicTypeDefinition(TaleWorlds.SaveSystem.Definition.BasicTypeDefinition basicTypeDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddBasicTypeDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.BasicTypeDefinition basicTypeDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddBasicTypeDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase basicTypeDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddBasicTypeDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase basicTypeDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_basicTypeDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.BasicTypeDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_basicTypeDefinitionsWithId IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.BasicTypeDefinition value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_007B: ldarg.1 IL_007C: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: ldarg.0 IL_0088: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_008D: ldarg.1 IL_008E: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0093: ldarg.1 IL_0094: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0099: // end original IL_0099: Label0 IL_0099: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddClassDefinition(TaleWorlds.SaveSystem.Definition.TypeDefinition classDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddClassDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.TypeDefinition classDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddClassDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase classDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddClassDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase classDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_classDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_classDefinitionsWithId IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinition value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_007B: ldarg.1 IL_007C: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: ldarg.0 IL_0088: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_008D: ldarg.1 IL_008E: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0093: ldarg.1 IL_0094: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0099: // end original IL_0099: Label0 IL_0099: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddContainerDefinition(TaleWorlds.SaveSystem.Definition.ContainerDefinition containerDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddContainerDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.ContainerDefinition containerDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddContainerDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase containerDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddContainerDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase containerDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_containerDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.ContainerDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_containerDefinitionsWithId IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.ContainerDefinition value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_007B: ldarg.1 IL_007C: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: ldarg.0 IL_0088: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_008D: ldarg.1 IL_008E: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0093: ldarg.1 IL_0094: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0099: // end original IL_0099: Label0 IL_0099: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddEnumDefinition(TaleWorlds.SaveSystem.Definition.EnumDefinition enumDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddEnumDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.EnumDefinition enumDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddEnumDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase enumDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddEnumDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase enumDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_enumDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.EnumDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_enumDefinitionsWithId IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.EnumDefinition value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_007B: ldarg.1 IL_007C: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: ldarg.0 IL_0088: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_008D: ldarg.1 IL_008E: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0093: ldarg.1 IL_0094: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0099: // end original IL_0099: Label0 IL_0099: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddGenericClassDefinition(TaleWorlds.SaveSystem.Definition.GenericTypeDefinition genericClassDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddGenericClassDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.GenericTypeDefinition genericClassDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddGenericClassDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase genericClassDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddGenericClassDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase genericClassDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_genericClassDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.GenericTypeDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0069: ldarg.1 IL_006A: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_007B: ldarg.1 IL_007C: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: // end original IL_0087: Label0 IL_0087: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddGenericStructDefinition(TaleWorlds.SaveSystem.Definition.GenericTypeDefinition genericStructDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddGenericStructDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.GenericTypeDefinition genericStructDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddGenericStructDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase genericStructDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddGenericStructDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase genericStructDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_genericStructDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.GenericTypeDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0069: ldarg.1 IL_006A: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_007B: ldarg.1 IL_007C: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: // end original IL_0087: Label0 IL_0087: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddInterfaceDefinition(TaleWorlds.SaveSystem.Definition.InterfaceDefinition interfaceDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddInterfaceDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.InterfaceDefinition interfaceDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddInterfaceDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase interfaceDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddInterfaceDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase interfaceDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_interfaceDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.InterfaceDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_interfaceDefinitionsWithId IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.InterfaceDefinition value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_007B: ldarg.1 IL_007C: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: ldarg.0 IL_0088: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_008D: ldarg.1 IL_008E: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0093: ldarg.1 IL_0094: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0099: // end original IL_0099: Label0 IL_0099: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddRootClassDefinition(TaleWorlds.SaveSystem.Definition.TypeDefinition rootClassDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddRootClassDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.TypeDefinition rootClassDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddRootClassDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase rootClassDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddRootClassDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase rootClassDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_rootClassDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0069: ldarg.1 IL_006A: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_007B: ldarg.1 IL_007C: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: // end original IL_0087: Label0 IL_0087: ret DONE ### Patch: System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddStructDefinition(TaleWorlds.SaveSystem.Definition.StructDefinition structDefinition) ### Replacement: static System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.AddStructDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, TaleWorlds.SaveSystem.Definition.StructDefinition structDefinition) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarg.0 IL_001C: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_0021: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddStructDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase structDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0026: stloc 0 (System.Boolean) IL_002A: Label1 IL_002A: nop IL_002B: ldloc 0 (System.Boolean) IL_002F: brfalse => Label2 IL_0034: ldarg 1 IL_0038: ldarg.0 IL_0039: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_003E: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::AddStructDefinitionPrefix(TaleWorlds.SaveSystem.Definition.TypeDefinitionBase structDefinition, System.Collections.Generic.Dictionary`2 ____allTypeDefinitions) IL_0043: stloc 0 (System.Boolean) IL_0047: Label2 IL_0047: nop IL_0048: ldloc 0 (System.Boolean) IL_004C: brfalse => Label0 IL_0051: // start original IL_0051: ldarg.0 IL_0052: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_structDefinitions IL_0057: ldarg.1 IL_0058: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_005D: ldarg.1 IL_005E: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.StructDefinition value) IL_0063: ldarg.0 IL_0064: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_structDefinitionsWithId IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_006F: ldarg.1 IL_0070: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.StructDefinition value) IL_0075: ldarg.0 IL_0076: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitions IL_007B: ldarg.1 IL_007C: callvirt System.Type TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_Type() IL_0081: ldarg.1 IL_0082: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Type key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0087: ldarg.0 IL_0088: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.SaveSystem.Definition.DefinitionContext::_allTypeDefinitionsWithId IL_008D: ldarg.1 IL_008E: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_0093: ldarg.1 IL_0094: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(TaleWorlds.SaveSystem.Definition.SaveId key, TaleWorlds.SaveSystem.Definition.TypeDefinitionBase value) IL_0099: // end original IL_0099: Label0 IL_0099: ret DONE ### Patch: TaleWorlds.SaveSystem.Definition.ContainerDefinition TaleWorlds.SaveSystem.Definition.DefinitionContext::ConstructContainerDefinition(System.Type type, System.Reflection.Assembly definedAssembly) ### Replacement: static TaleWorlds.SaveSystem.Definition.ContainerDefinition TaleWorlds.SaveSystem.Definition.DefinitionContext::TaleWorlds.SaveSystem.Definition.DefinitionContext.ConstructContainerDefinition_Patch2(TaleWorlds.SaveSystem.Definition.DefinitionContext this, System.Type type, System.Reflection.Assembly definedAssembly) IL_0000: Local var 0: TaleWorlds.SaveSystem.ContainerType IL_0000: Local var 1: TaleWorlds.SaveSystem.Definition.SaveId IL_0000: Local var 2: TaleWorlds.SaveSystem.Definition.SaveId IL_0000: Local var 3: TaleWorlds.SaveSystem.Definition.ContainerSaveId IL_0000: Local var 4: TaleWorlds.SaveSystem.Definition.ContainerDefinition IL_0000: Local var 5: System.Type IL_0000: Local var 6: System.Type IL_0000: Local var 7: System.Type IL_0000: Local var 8: System.Type IL_0000: Local var 9: TaleWorlds.SaveSystem.Definition.ContainerDefinition IL_0000: Local var 10: System.Boolean IL_0000: ldnull IL_0001: stloc 9 (TaleWorlds.SaveSystem.Definition.ContainerDefinition) IL_0005: ldc.i4 0 IL_000A: stloc 10 (System.Boolean) IL_000E: ldc.i4.1 IL_000F: stloc 10 (System.Boolean) IL_0013: ldloc 10 (System.Boolean) IL_0017: brfalse => Label1 IL_001C: ldarg 1 IL_0020: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::ConstructContainerDefinitionPrefix(System.Type type) IL_0025: stloc 10 (System.Boolean) IL_0029: Label1 IL_0029: nop IL_002A: ldloc 10 (System.Boolean) IL_002E: brfalse => Label2 IL_0033: ldarg 1 IL_0037: call static System.Boolean Bannerlord.ButterLib.Implementation.SaveSystem.Patches.DefinitionContextPatch::ConstructContainerDefinitionPrefix(System.Type type) IL_003C: stloc 10 (System.Boolean) IL_0040: Label2 IL_0040: nop IL_0041: ldloc 10 (System.Boolean) IL_0045: brfalse => Label0 IL_004A: // start original IL_004A: ldarg.1 IL_004B: ldloca.s 0 (TaleWorlds.SaveSystem.ContainerType) IL_004D: call static System.Boolean TaleWorlds.SaveSystem.TypeExtensions::IsContainer(System.Type type, TaleWorlds.SaveSystem.ContainerType& containerType) IL_0052: pop IL_0053: ldnull IL_0054: stloc.1 IL_0055: ldnull IL_0056: stloc.2 IL_0057: ldloc.0 IL_0058: ldc.i4.1 IL_0059: beq => Label3 IL_005E: ldloc.0 IL_005F: ldc.i4.5 IL_0060: beq => Label4 IL_0065: ldloc.0 IL_0066: ldc.i4.6 IL_0067: beq => Label5 IL_006C: ldloc.0 IL_006D: ldc.i4.4 IL_006E: bne.un => Label6 IL_0073: Label3 IL_0073: Label4 IL_0073: Label5 IL_0073: ldarg.1 IL_0074: callvirt virtual System.Type[] System.Type::get_GenericTypeArguments() IL_0079: ldc.i4.0 IL_007A: ldelem.ref IL_007B: stloc.s 5 (System.Type) IL_007D: ldarg.0 IL_007E: ldloc.s 5 (System.Type) IL_0080: call TaleWorlds.SaveSystem.Definition.TypeDefinitionBase TaleWorlds.SaveSystem.Definition.DefinitionContext::GetTypeDefinition(System.Type type) IL_0085: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_008A: stloc.1 IL_008B: br => Label7 IL_0090: Label6 IL_0090: ldloc.0 IL_0091: ldc.i4.2 IL_0092: bne.un => Label8 IL_0097: ldarg.1 IL_0098: callvirt virtual System.Type[] System.Type::get_GenericTypeArguments() IL_009D: ldc.i4.0 IL_009E: ldelem.ref IL_009F: stloc.s 6 (System.Type) IL_00A1: ldarg.0 IL_00A2: ldloc.s 6 (System.Type) IL_00A4: call TaleWorlds.SaveSystem.Definition.TypeDefinitionBase TaleWorlds.SaveSystem.Definition.DefinitionContext::GetTypeDefinition(System.Type type) IL_00A9: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_00AE: stloc.1 IL_00AF: ldarg.1 IL_00B0: callvirt virtual System.Type[] System.Type::get_GenericTypeArguments() IL_00B5: ldc.i4.1 IL_00B6: ldelem.ref IL_00B7: stloc.s 7 (System.Type) IL_00B9: ldarg.0 IL_00BA: ldloc.s 7 (System.Type) IL_00BC: call TaleWorlds.SaveSystem.Definition.TypeDefinitionBase TaleWorlds.SaveSystem.Definition.DefinitionContext::GetTypeDefinition(System.Type type) IL_00C1: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_00C6: stloc.2 IL_00C7: br => Label9 IL_00CC: Label8 IL_00CC: ldloc.0 IL_00CD: ldc.i4.3 IL_00CE: bne.un => Label10 IL_00D3: ldarg.1 IL_00D4: callvirt abstract virtual System.Type System.Type::GetElementType() IL_00D9: stloc.s 8 (System.Type) IL_00DB: ldarg.0 IL_00DC: ldloc.s 8 (System.Type) IL_00DE: call TaleWorlds.SaveSystem.Definition.TypeDefinitionBase TaleWorlds.SaveSystem.Definition.DefinitionContext::GetTypeDefinition(System.Type type) IL_00E3: callvirt TaleWorlds.SaveSystem.Definition.SaveId TaleWorlds.SaveSystem.Definition.TypeDefinitionBase::get_SaveId() IL_00E8: stloc.1 IL_00E9: Label7 IL_00E9: Label9 IL_00E9: Label10 IL_00E9: ldloc.0 IL_00EA: ldloc.1 IL_00EB: ldloc.2 IL_00EC: newobj System.Void TaleWorlds.SaveSystem.Definition.ContainerSaveId::.ctor(TaleWorlds.SaveSystem.ContainerType containerType, TaleWorlds.SaveSystem.Definition.SaveId keyId, TaleWorlds.SaveSystem.Definition.SaveId valueId) IL_00F1: stloc.3 IL_00F2: ldarg.1 IL_00F3: ldloc.3 IL_00F4: ldarg.2 IL_00F5: newobj System.Void TaleWorlds.SaveSystem.Definition.ContainerDefinition::.ctor(System.Type type, TaleWorlds.SaveSystem.Definition.ContainerSaveId saveId, System.Reflection.Assembly definedAssembly) IL_00FA: stloc.s 4 (TaleWorlds.SaveSystem.Definition.ContainerDefinition) IL_00FC: ldarg.0 IL_00FD: ldloc.s 4 (TaleWorlds.SaveSystem.Definition.ContainerDefinition) IL_00FF: call System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddContainerDefinition(TaleWorlds.SaveSystem.Definition.ContainerDefinition containerDefinition) IL_0104: ldloc.0 IL_0105: ldc.i4.1 IL_0106: bne.un => Label11 IL_010B: ldarg.0 IL_010C: ldtoken TaleWorlds.Library.MBList`1[T] IL_0111: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_0116: ldarg.1 IL_0117: callvirt virtual System.Type[] System.Type::GetGenericArguments() IL_011C: callvirt virtual System.Type System.Type::MakeGenericType(System.Type[] typeArguments) IL_0121: ldc.i4.5 IL_0122: ldloc.1 IL_0123: ldloc.2 IL_0124: newobj System.Void TaleWorlds.SaveSystem.Definition.ContainerSaveId::.ctor(TaleWorlds.SaveSystem.ContainerType containerType, TaleWorlds.SaveSystem.Definition.SaveId keyId, TaleWorlds.SaveSystem.Definition.SaveId valueId) IL_0129: ldarg.2 IL_012A: newobj System.Void TaleWorlds.SaveSystem.Definition.ContainerDefinition::.ctor(System.Type type, TaleWorlds.SaveSystem.Definition.ContainerSaveId saveId, System.Reflection.Assembly definedAssembly) IL_012F: call System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddContainerDefinition(TaleWorlds.SaveSystem.Definition.ContainerDefinition containerDefinition) IL_0134: ldarg.0 IL_0135: ldtoken TaleWorlds.Library.MBReadOnlyList`1[T] IL_013A: call static System.Type System.Type::GetTypeFromHandle(System.RuntimeTypeHandle handle) IL_013F: ldarg.1 IL_0140: callvirt virtual System.Type[] System.Type::GetGenericArguments() IL_0145: callvirt virtual System.Type System.Type::MakeGenericType(System.Type[] typeArguments) IL_014A: ldc.i4.6 IL_014B: ldloc.1 IL_014C: ldloc.2 IL_014D: newobj System.Void TaleWorlds.SaveSystem.Definition.ContainerSaveId::.ctor(TaleWorlds.SaveSystem.ContainerType containerType, TaleWorlds.SaveSystem.Definition.SaveId keyId, TaleWorlds.SaveSystem.Definition.SaveId valueId) IL_0152: ldarg.2 IL_0153: newobj System.Void TaleWorlds.SaveSystem.Definition.ContainerDefinition::.ctor(System.Type type, TaleWorlds.SaveSystem.Definition.ContainerSaveId saveId, System.Reflection.Assembly definedAssembly) IL_0158: call System.Void TaleWorlds.SaveSystem.Definition.DefinitionContext::AddContainerDefinition(TaleWorlds.SaveSystem.Definition.ContainerDefinition containerDefinition) IL_015D: Label11 IL_015D: ldloc.s 4 (TaleWorlds.SaveSystem.Definition.ContainerDefinition) IL_015F: // end original IL_015F: stloc 9 (TaleWorlds.SaveSystem.Definition.ContainerDefinition) IL_0163: Label0 IL_0163: ldloc 9 (TaleWorlds.SaveSystem.Definition.ContainerDefinition) IL_0167: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::LoadBehaviorData() ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager.LoadBehaviorData_Patch2(TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager this) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 1: TaleWorlds.CampaignSystem.CampaignBehaviorBase IL_0000: Local var 2: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 2 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 2 (System.Boolean) IL_000E: ldloc 2 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg.0 IL_0018: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_001D: call static System.Void Bannerlord.ButterLib.Implementation.ObjectSystem.Patches.CampaignBehaviorManagerPatch::OnGameLoadedPrefix(System.Object ____campaignBehaviorDataStore) IL_0022: Label1 IL_0022: nop IL_0023: ldloc 2 (System.Boolean) IL_0027: brfalse => Label2 IL_002C: ldarg.0 IL_002D: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_0032: call static System.Void Bannerlord.ButterLib.Implementation.ObjectSystem.Patches.CampaignBehaviorManagerPatch::OnGameLoadedPrefix(System.Object ____campaignBehaviorDataStore) IL_0037: Label2 IL_0037: nop IL_0038: ldloc 2 (System.Boolean) IL_003C: brfalse => Label0 IL_0041: // start original IL_0041: ldarg.0 IL_0042: ldfld System.Collections.Generic.List`1 TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviors IL_0047: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_004C: stloc.0 .try { IL_004D: br => Label3 IL_0052: Label4 IL_0052: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0054: call virtual TaleWorlds.CampaignSystem.CampaignBehaviorBase System.Collections.Generic.Enumerator::get_Current() IL_0059: stloc.1 IL_005A: ldarg.0 IL_005B: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_0060: ldloc.1 IL_0061: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::LoadBehaviorData(TaleWorlds.CampaignSystem.CampaignBehaviorBase campaignBehavior) IL_0066: Label3 IL_0066: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0068: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_006D: brtrue => Label4 IL_0072: leave => Label5 IL_0077: leave => (autogenerated) } // end try .finally { IL_007C: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_007E: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase] IL_0084: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0089: endfinally IL_008A: leave => (autogenerated) } // end handler IL_008B: Label5 IL_008B: ldarg.0 IL_008C: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_0091: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::ClearBehaviorData() IL_0096: // end original IL_0096: Label0 IL_0096: ret DONE ### Patch: System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::OnBeforeSave() ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager.OnBeforeSave_Patch2(TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager this) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 1: TaleWorlds.CampaignSystem.CampaignBehaviorBase IL_0000: // start original IL_0000: ldarg.0 IL_0001: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_0006: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::ClearBehaviorData() IL_000B: ldarg.0 IL_000C: ldfld System.Collections.Generic.List`1 TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviors IL_0011: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0016: stloc.0 .try { IL_0017: br => Label0 IL_001C: Label1 IL_001C: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_001E: call virtual TaleWorlds.CampaignSystem.CampaignBehaviorBase System.Collections.Generic.Enumerator::get_Current() IL_0023: stloc.1 IL_0024: ldarg.0 IL_0025: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_002A: ldloc.1 IL_002B: callvirt System.Void TaleWorlds.CampaignSystem.CampaignBehaviorDataStore::SaveBehaviorData(TaleWorlds.CampaignSystem.CampaignBehaviorBase campaignBehavior) IL_0030: Label0 IL_0030: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0032: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0037: brtrue => Label1 IL_003C: leave => Label2 IL_0041: leave => (autogenerated) } // end try .finally { IL_0046: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase]) IL_0048: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.CampaignBehaviorBase] IL_004E: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0053: endfinally IL_0054: leave => (autogenerated) } // end handler IL_0055: // end original IL_0055: Label2 IL_0055: ldarg.0 IL_0056: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_005B: call static System.Void Bannerlord.ButterLib.Implementation.ObjectSystem.Patches.CampaignBehaviorManagerPatch::OnBeforeSavePostfix(System.Object ____campaignBehaviorDataStore) IL_0060: ldarg.0 IL_0061: ldfld TaleWorlds.CampaignSystem.CampaignBehaviorDataStore TaleWorlds.CampaignSystem.CampaignBehaviors.CampaignBehaviorManager::_campaignBehaviorDataStore IL_0066: call static System.Void Bannerlord.ButterLib.Implementation.ObjectSystem.Patches.CampaignBehaviorManagerPatch::OnBeforeSavePostfix(System.Object ____campaignBehaviorDataStore) IL_006B: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Module::FinalizeSubModules() ### Replacement: static System.Void TaleWorlds.MountAndBlade.Module::TaleWorlds.MountAndBlade.Module.FinalizeSubModules_Patch2(TaleWorlds.MountAndBlade.Module this) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: // start original IL_0000: ldarg.0 IL_0001: ldfld TaleWorlds.Library.MBList`1 TaleWorlds.MountAndBlade.Module::_submodules IL_0006: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_000B: stloc.0 .try { IL_000C: br => Label0 IL_0011: Label1 IL_0011: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0013: call virtual TaleWorlds.MountAndBlade.MBSubModuleBase System.Collections.Generic.Enumerator::get_Current() IL_0018: callvirt virtual System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::OnSubModuleUnloaded() IL_001D: Label0 IL_001D: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_001F: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0024: brtrue => Label1 IL_0029: leave => Label2 IL_002E: leave => (autogenerated) } // end try .finally { IL_0033: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0035: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase] IL_003B: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0040: endfinally IL_0041: leave => (autogenerated) } // end handler IL_0042: // end original IL_0042: Label2 IL_0042: ldarg.0 IL_0043: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.ModulePatch::FinalizeSubModulesPostfix(TaleWorlds.MountAndBlade.Module __instance) IL_0048: ldarg.0 IL_0049: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.ModulePatch::FinalizeSubModulesPostfix(TaleWorlds.MountAndBlade.Module __instance) IL_004E: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Module::SetInitialModuleScreenAsRootScreen() ### Replacement: static System.Void TaleWorlds.MountAndBlade.Module::TaleWorlds.MountAndBlade.Module.SetInitialModuleScreenAsRootScreen_Patch1(TaleWorlds.MountAndBlade.Module this) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 1: System.String IL_0000: Local var 2: System.String IL_0000: Local var 3: TaleWorlds.MountAndBlade.VideoPlaybackState IL_0000: // start original IL_0000: call static TaleWorlds.Core.GameStateManager TaleWorlds.Core.GameStateManager::get_Current() IL_0005: ldarg.0 IL_0006: call TaleWorlds.Core.GameStateManager TaleWorlds.MountAndBlade.Module::get_GlobalGameStateManager() IL_000B: beq => Label0 IL_0010: ldarg.0 IL_0011: call TaleWorlds.Core.GameStateManager TaleWorlds.MountAndBlade.Module::get_GlobalGameStateManager() IL_0016: call static System.Void TaleWorlds.Core.GameStateManager::set_Current(TaleWorlds.Core.GameStateManager value) IL_001B: Label0 IL_001B: ldarg.0 IL_001C: call TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.MountAndBlade.Module::get_SubModules() IL_0021: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0026: stloc.0 .try { IL_0027: br => Label1 IL_002C: Label2 IL_002C: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_002E: call virtual TaleWorlds.MountAndBlade.MBSubModuleBase System.Collections.Generic.Enumerator::get_Current() IL_0033: callvirt virtual System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::OnBeforeInitialModuleScreenSetAsRoot() IL_0038: Label1 IL_0038: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_003A: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_003F: brtrue => Label2 IL_0044: leave => Label3 IL_0049: leave => (autogenerated) } // end try .finally { IL_004E: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0050: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase] IL_0056: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_005B: endfinally IL_005C: leave => (autogenerated) } // end handler IL_005D: Label3 IL_005D: ldarg.0 IL_005E: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.ModulePatch::DelayedScreenAsRootEvent(TaleWorlds.MountAndBlade.Module instance) IL_0063: ldarg.0 IL_0064: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.ModulePatch::DelayedScreenAsRootEvent(TaleWorlds.MountAndBlade.Module instance) IL_0069: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsDedicatedServer() IL_006E: brtrue => Label4 IL_0073: ldstr "Native" IL_0078: call static System.String TaleWorlds.ModuleManager.ModuleHelper::GetModuleFullPath(System.String moduleId) IL_007D: ldstr "Videos/TWLogo_and_Partners.ivf" IL_0082: call static System.String System.String::Concat(System.String str0, System.String str1) IL_0087: stloc.1 IL_0088: ldstr "Native" IL_008D: call static System.String TaleWorlds.ModuleManager.ModuleHelper::GetModuleFullPath(System.String moduleId) IL_0092: ldstr "Videos/TWLogo_and_Partners.ogg" IL_0097: call static System.String System.String::Concat(System.String str0, System.String str1) IL_009C: stloc.2 IL_009D: ldarg.0 IL_009E: ldfld System.Boolean TaleWorlds.MountAndBlade.Module::_splashScreenPlayed IL_00A3: brtrue => Label5 IL_00A8: ldloc.1 IL_00A9: call static System.Boolean System.IO.File::Exists(System.String path) IL_00AE: brfalse => Label6 IL_00B3: ldloc.2 IL_00B4: ldstr "" IL_00B9: call static System.Boolean System.String::op_Equality(System.String a, System.String b) IL_00BE: brtrue => Label7 IL_00C3: ldloc.2 IL_00C4: call static System.Boolean System.IO.File::Exists(System.String path) IL_00C9: brfalse => Label8 IL_00CE: Label7 IL_00CE: call static System.Boolean System.Diagnostics.Debugger::get_IsAttached() IL_00D3: brtrue => Label9 IL_00D8: ldarg.0 IL_00D9: call TaleWorlds.Core.GameStateManager TaleWorlds.MountAndBlade.Module::get_GlobalGameStateManager() IL_00DE: callvirt TaleWorlds.MountAndBlade.VideoPlaybackState TaleWorlds.Core.GameStateManager::CreateState() IL_00E3: stloc.3 IL_00E4: ldloc.3 IL_00E5: ldloc.1 IL_00E6: ldloc.2 IL_00E7: ldsfld System.String System.String::Empty IL_00EC: ldc.r4 30 IL_00F1: ldc.i4.1 IL_00F2: callvirt System.Void TaleWorlds.MountAndBlade.VideoPlaybackState::SetStartingParameters(System.String videoPath, System.String audioPath, System.String subtitleFileBasePath, System.Single frameRate, System.Boolean canUserSkip) IL_00F7: ldloc.3 IL_00F8: ldarg.0 IL_00F9: ldftn System.Void TaleWorlds.MountAndBlade.Module::b__69_0() IL_00FF: newobj System.Void System.Action::.ctor(System.Object object, System.IntPtr method) IL_0104: callvirt System.Void TaleWorlds.MountAndBlade.VideoPlaybackState::SetOnVideoFinisedDelegate(System.Action onVideoFinised) IL_0109: ldarg.0 IL_010A: call TaleWorlds.Core.GameStateManager TaleWorlds.MountAndBlade.Module::get_GlobalGameStateManager() IL_010F: ldloc.3 IL_0110: ldc.i4.0 IL_0111: callvirt System.Void TaleWorlds.Core.GameStateManager::CleanAndPushState(TaleWorlds.Core.GameState gameState, System.Int32 level) IL_0116: ldarg.0 IL_0117: ldc.i4.1 IL_0118: stfld System.Boolean TaleWorlds.MountAndBlade.Module::_splashScreenPlayed IL_011D: br => Label14 IL_0122: Label5 IL_0122: Label6 IL_0122: Label8 IL_0122: Label9 IL_0122: ldarg.0 IL_0123: ldc.i4.0 IL_0124: call System.Void TaleWorlds.MountAndBlade.Module::OnInitialModuleScreenActivated(System.Boolean isFromSplashScreenVideo) IL_0129: // end original IL_0129: Label4 IL_0129: Label14 IL_0129: call static System.Void MCM.UI.Adapter.MCMv5.SubModule::OnAfterSetInitialModuleScreenAsRootScreen() IL_012E: ret DONE ### Patch: virtual System.Void TaleWorlds.MountAndBlade.MBGameManager::OnGameStart(TaleWorlds.Core.Game game, TaleWorlds.Core.IGameStarter gameStarter) ### Replacement: static System.Void TaleWorlds.MountAndBlade.MBGameManager::TaleWorlds.MountAndBlade.MBGameManager.OnGameStart_Patch0(TaleWorlds.MountAndBlade.MBGameManager this, TaleWorlds.Core.Game game, TaleWorlds.Core.IGameStarter gameStarter) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: // start original IL_0000: call static TaleWorlds.Core.Game TaleWorlds.Core.Game::get_Current() IL_0005: newobj System.Void TaleWorlds.MountAndBlade.MonsterMissionDataCreator::.ctor() IL_000A: callvirt System.Void TaleWorlds.Core.Game::set_MonsterMissionDataCreator(TaleWorlds.Core.IMonsterMissionDataCreator value) IL_000F: call static TaleWorlds.MountAndBlade.Module TaleWorlds.MountAndBlade.Module::get_CurrentModule() IL_0014: callvirt TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.MountAndBlade.Module::get_SubModules() IL_0019: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_001E: stloc.0 .try { IL_001F: br => Label0 IL_0024: Label1 IL_0024: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0026: call virtual TaleWorlds.MountAndBlade.MBSubModuleBase System.Collections.Generic.Enumerator::get_Current() IL_002B: ldarg.1 IL_002C: ldarg.2 IL_002D: callvirt virtual System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::OnGameStart(TaleWorlds.Core.Game game, TaleWorlds.Core.IGameStarter gameStarterObject) IL_0032: Label0 IL_0032: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0034: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0039: brtrue => Label1 IL_003E: leave => Label2 IL_0043: leave => (autogenerated) } // end try .finally { IL_0048: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_004A: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase] IL_0050: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0055: endfinally IL_0056: leave => (autogenerated) } // end handler IL_0057: Label2 IL_0057: ldarg.1 IL_0058: ldarg.2 IL_0059: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.MBGameManagerPatch::DelayedOnGameStartEvent(TaleWorlds.Core.Game game, TaleWorlds.Core.IGameStarter gameStarter) IL_005E: ldarg.1 IL_005F: ldarg.2 IL_0060: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.MBGameManagerPatch::DelayedOnGameStartEvent(TaleWorlds.Core.Game game, TaleWorlds.Core.IGameStarter gameStarter) IL_0065: call static TaleWorlds.Core.Game TaleWorlds.Core.Game::get_Current() IL_006A: ldarg.2 IL_006B: callvirt abstract virtual System.Collections.Generic.IEnumerable`1 TaleWorlds.Core.IGameStarter::get_Models() IL_0070: callvirt TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.Core.Game::AddGameModelsManager(System.Collections.Generic.IEnumerable`1 inputComponents) IL_0075: pop IL_0076: ldnull IL_0077: ldftn static System.SByte TaleWorlds.MountAndBlade.MBActionSet::GetBoneIndexWithId(System.String actionSetId, System.String boneId) IL_007D: newobj System.Void System.Func`3::.ctor(System.Object object, System.IntPtr method) IL_0082: stsfld System.Func`3 TaleWorlds.Core.Monster::GetBoneIndexWithId IL_0087: ldnull IL_0088: ldftn static System.Boolean TaleWorlds.MountAndBlade.MBActionSet::GetBoneHasParentBone(System.String actionSetId, System.SByte boneIndex) IL_008E: newobj System.Void System.Func`3::.ctor(System.Object object, System.IntPtr method) IL_0093: stsfld System.Func`3 TaleWorlds.Core.Monster::GetBoneHasParentBone IL_0098: // end original IL_0098: ret DONE ### Patch: virtual System.Void TaleWorlds.MountAndBlade.MBGameManager::OnGameEnd(TaleWorlds.Core.Game game) ### Replacement: static System.Void TaleWorlds.MountAndBlade.MBGameManager::TaleWorlds.MountAndBlade.MBGameManager.OnGameEnd_Patch0(TaleWorlds.MountAndBlade.MBGameManager this, TaleWorlds.Core.Game game) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: // start original IL_0000: call static TaleWorlds.MountAndBlade.Module TaleWorlds.MountAndBlade.Module::get_CurrentModule() IL_0005: callvirt TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.MountAndBlade.Module::get_SubModules() IL_000A: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_000F: stloc.0 .try { IL_0010: br => Label0 IL_0015: Label1 IL_0015: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0017: call virtual TaleWorlds.MountAndBlade.MBSubModuleBase System.Collections.Generic.Enumerator::get_Current() IL_001C: ldarg.1 IL_001D: callvirt virtual System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::OnGameEnd(TaleWorlds.Core.Game game) IL_0022: Label0 IL_0022: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_0024: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_0029: brtrue => Label1 IL_002E: leave => Label2 IL_0033: leave => (autogenerated) } // end try .finally { IL_0038: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase]) IL_003A: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MBSubModuleBase] IL_0040: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0045: endfinally IL_0046: leave => (autogenerated) } // end handler IL_0047: Label2 IL_0047: ldarg.1 IL_0048: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.MBGameManagerPatch::DelayedOnGameEndEvent(TaleWorlds.Core.Game game) IL_004D: ldarg.1 IL_004E: call static System.Void Bannerlord.ButterLib.Implementation.MBSubModuleBaseExtended.Patches.MBGameManagerPatch::DelayedOnGameEndEvent(TaleWorlds.Core.Game game) IL_0053: call static System.Void TaleWorlds.MountAndBlade.MissionGameModels::Clear() IL_0058: ldarg.0 IL_0059: ldarg.1 IL_005A: call virtual System.Void TaleWorlds.Core.GameManagerBase::OnGameEnd(TaleWorlds.Core.Game game) IL_005F: // end original IL_005F: ret DONE ### Patch: static System.Collections.Generic.IEnumerable`1 TaleWorlds.MountAndBlade.Options.OptionsProvider::GetGameKeyCategoriesList(System.Boolean isMultiplayer) ### Replacement: static System.Collections.Generic.IEnumerable`1 TaleWorlds.MountAndBlade.Options.OptionsProvider::TaleWorlds.MountAndBlade.Options.OptionsProvider.GetGameKeyCategoriesList_Patch2(System.Boolean isMultiplayer) IL_0000: Local var 0: System.Collections.Generic.IEnumerable`1 IL_0000: ldnull IL_0001: stloc 0 (System.Collections.Generic.IEnumerable`1[System.String]) IL_0005: // start original IL_0005: ldc.i4.s -2 IL_0007: newobj System.Void TaleWorlds.MountAndBlade.Options.d__24::.ctor(System.Int32 <>1__state) IL_000C: dup IL_000D: ldarg.0 IL_000E: stfld System.Boolean TaleWorlds.MountAndBlade.Options.d__24::<>3__isMultiplayer IL_0013: // end original IL_0013: stloc 0 (System.Collections.Generic.IEnumerable`1[System.String]) IL_0017: ldloc 0 (System.Collections.Generic.IEnumerable`1[System.String]) IL_001B: call static System.Collections.Generic.IEnumerable`1 Bannerlord.ButterLib.Implementation.HotKeys.Patches.OptionsProviderPatches::GetGameKeyCategoriesListPostfix(System.Collections.Generic.IEnumerable`1 values) IL_0020: call static System.Collections.Generic.IEnumerable`1 Bannerlord.ButterLib.Implementation.HotKeys.Patches.OptionsProviderPatches::GetGameKeyCategoriesListPostfix(System.Collections.Generic.IEnumerable`1 values) IL_0025: ret DONE ### Harmony id=bannerlord.uiextender.ex.viewmodels.MCM.UI, version=2.3.1.1, location=E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord.Harmony\bin\Gaming.Desktop.x64_Shipping_Client\0Harmony.dll, env/clr=6.0.12, platform=Win32NT ### Started from System.Void Bannerlord.UIExtenderEx.Components.ViewModelComponent::.ctor(System.String moduleName), location E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord.UIExtenderEx\bin\Gaming.Desktop.x64_Shipping_Client\Bannerlord.UIExtenderEx.dll ### At 2024-04-02 02.07.45 ### Patch: System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::.ctor(System.Boolean autoHandleClose, TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode optionsMode, System.Action`1 onKeybindRequest, System.Action onBrightnessExecute, System.Action onExposureExecute) ### Replacement: static System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM..ctor_Patch0(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM this, System.Boolean autoHandleClose, TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode optionsMode, System.Action`1 onKeybindRequest, System.Action onBrightnessExecute, System.Action onExposureExecute) IL_0000: Local var 0: System.Boolean IL_0000: Local var 1: System.Boolean IL_0000: Local var 2: System.Boolean IL_0000: Local var 3: TaleWorlds.Localization.TextObject IL_0000: Local var 4: TaleWorlds.Library.ApplicationVersion IL_0000: // start original IL_0000: ldarg.0 IL_0001: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_0006: stfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_dynamicResolutionOptions IL_000B: ldarg.0 IL_000C: ldc.i4.s 29 IL_000E: call static System.Int32 TaleWorlds.Engine.Options.NativeSelectionOptionData::GetOptionsLimit(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_0013: ldc.i4.1 IL_0014: sub IL_0015: stfld System.Int32 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_overallConfigCount IL_001A: ldarg.0 IL_001B: call System.Void TaleWorlds.Library.ViewModel::.ctor() IL_0020: ldarg.0 IL_0021: ldarg.3 IL_0022: stfld System.Action`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onKeybindRequest IL_0027: ldarg.0 IL_0028: ldarg.1 IL_0029: stfld System.Boolean TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_autoHandleClose IL_002E: ldarg.0 IL_002F: ldarg.2 IL_0030: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::set_CurrentOptionsMode(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode value) IL_0035: ldarg.0 IL_0036: ldarg.s 4 IL_0038: stfld System.Action TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onBrightnessExecute IL_003D: ldarg.0 IL_003E: ldarg.s 5 IL_0040: stfld System.Action TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onExposureExecute IL_0045: ldarg.0 IL_0046: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_004B: stfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_groupedCategories IL_0050: call static System.Void TaleWorlds.Engine.Options.NativeOptions::RefreshOptionsData() IL_0055: ldarg.0 IL_0056: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_CurrentOptionsMode() IL_005B: ldc.i4.2 IL_005C: ceq IL_005E: stloc.0 IL_005F: ldarg.0 IL_0060: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_CurrentOptionsMode() IL_0065: ldc.i4.0 IL_0066: ceq IL_0068: stloc.1 IL_0069: ldarg.0 IL_006A: ldarg.0 IL_006B: ldstr "{=2zcrC0h1}Gameplay" IL_0070: ldnull IL_0071: newobj System.Void TaleWorlds.Localization.TextObject::.ctor(System.String value, System.Collections.Generic.Dictionary`2 attributes) IL_0076: ldloc.1 IL_0077: ldloc.0 IL_0078: call static TaleWorlds.MountAndBlade.Options.OptionCategory TaleWorlds.MountAndBlade.Options.OptionsProvider::GetGameplayOptionCategory(System.Boolean isMainMenu, System.Boolean isMultiplayer) IL_007D: ldc.i4.1 IL_007E: ldc.i4.1 IL_007F: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::.ctor(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM options, TaleWorlds.Localization.TextObject name, TaleWorlds.MountAndBlade.Options.OptionCategory category, System.Boolean isEnabled, System.Boolean isResetSupported) IL_0084: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gameplayOptionCategory IL_0089: ldarg.0 IL_008A: ldarg.0 IL_008B: ldstr "{=xebFLnH2}Audio" IL_0090: ldnull IL_0091: newobj System.Void TaleWorlds.Localization.TextObject::.ctor(System.String value, System.Collections.Generic.Dictionary`2 attributes) IL_0096: ldloc.0 IL_0097: call static TaleWorlds.MountAndBlade.Options.OptionCategory TaleWorlds.MountAndBlade.Options.OptionsProvider::GetAudioOptionCategory(System.Boolean isMultiplayer) IL_009C: ldc.i4.1 IL_009D: ldc.i4.0 IL_009E: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::.ctor(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM options, TaleWorlds.Localization.TextObject name, TaleWorlds.MountAndBlade.Options.OptionCategory category, System.Boolean isEnabled, System.Boolean isResetSupported) IL_00A3: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_audioOptionCategory IL_00A8: ldarg.0 IL_00A9: ldarg.0 IL_00AA: ldstr "{=gamevideo}Video" IL_00AF: ldnull IL_00B0: newobj System.Void TaleWorlds.Localization.TextObject::.ctor(System.String value, System.Collections.Generic.Dictionary`2 attributes) IL_00B5: ldloc.1 IL_00B6: ldarg.0 IL_00B7: ldftn System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::OnBrightnessClick() IL_00BD: newobj System.Void System.Action::.ctor(System.Object object, System.IntPtr method) IL_00C2: ldarg.0 IL_00C3: ldftn System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::OnExposureClick() IL_00C9: newobj System.Void System.Action::.ctor(System.Object object, System.IntPtr method) IL_00CE: ldarg.0 IL_00CF: ldftn System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::ExecuteBenchmark() IL_00D5: newobj System.Void System.Action::.ctor(System.Object object, System.IntPtr method) IL_00DA: call static TaleWorlds.MountAndBlade.Options.OptionCategory TaleWorlds.MountAndBlade.Options.OptionsProvider::GetVideoOptionCategory(System.Boolean isMainMenu, System.Action onBrightnessClick, System.Action onExposureClick, System.Action onBenchmarkClick) IL_00DF: ldc.i4.1 IL_00E0: ldc.i4.0 IL_00E1: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::.ctor(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM options, TaleWorlds.Localization.TextObject name, TaleWorlds.MountAndBlade.Options.OptionCategory category, System.Boolean isEnabled, System.Boolean isResetSupported) IL_00E6: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_videoOptionCategory IL_00EB: ldc.i4.0 IL_00EC: stloc.2 IL_00ED: ldc.i4.1 IL_00EE: stloc.2 IL_00EF: ldarg.0 IL_00F0: ldarg.0 IL_00F1: ldstr "{=fM9E7frB}Performance" IL_00F6: ldnull IL_00F7: newobj System.Void TaleWorlds.Localization.TextObject::.ctor(System.String value, System.Collections.Generic.Dictionary`2 attributes) IL_00FC: ldloc.0 IL_00FD: call static TaleWorlds.MountAndBlade.Options.OptionCategory TaleWorlds.MountAndBlade.Options.OptionsProvider::GetPerformanceOptionCategory(System.Boolean isMultiplayer) IL_0102: ldloc.2 IL_0103: ldc.i4.0 IL_0104: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::.ctor(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM options, TaleWorlds.Localization.TextObject name, TaleWorlds.MountAndBlade.Options.OptionCategory category, System.Boolean isEnabled, System.Boolean isResetSupported) IL_0109: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_performanceOptionCategory IL_010E: ldarg.0 IL_010F: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_groupedCategories IL_0114: ldarg.0 IL_0115: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_videoOptionCategory IL_011A: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM item) IL_011F: ldarg.0 IL_0120: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_groupedCategories IL_0125: ldarg.0 IL_0126: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_audioOptionCategory IL_012B: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM item) IL_0130: ldarg.0 IL_0131: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_groupedCategories IL_0136: ldarg.0 IL_0137: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gameplayOptionCategory IL_013C: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM item) IL_0141: ldarg.0 IL_0142: ldarg.0 IL_0143: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_performanceOptionCategory IL_0148: callvirt System.Collections.Generic.IEnumerable`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetManagedOptions() IL_014D: stfld System.Collections.Generic.IEnumerable`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_performanceManagedOptions IL_0152: ldarg.0 IL_0153: ldarg.0 IL_0154: ldfld System.Action`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onKeybindRequest IL_0159: ldarg.0 IL_015A: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_CurrentOptionsMode() IL_015F: ldc.i4.2 IL_0160: ceq IL_0162: call static System.Collections.Generic.IEnumerable`1 TaleWorlds.MountAndBlade.Options.OptionsProvider::GetGameKeyCategoriesList(System.Boolean isMultiplayer) IL_0167: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GameKeys.GameKeyOptionCategoryVM::.ctor(System.Action`1 onKeybindRequest, System.Collections.Generic.IEnumerable`1 gameKeyCategories) IL_016C: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GameKeys.GameKeyOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gameKeyCategory IL_0171: ldstr "{=SQpGQzTI}Controller" IL_0176: ldnull IL_0177: newobj System.Void TaleWorlds.Localization.TextObject::.ctor(System.String value, System.Collections.Generic.Dictionary`2 attributes) IL_017C: stloc.3 IL_017D: ldarg.0 IL_017E: ldarg.0 IL_017F: ldloc.3 IL_0180: call static TaleWorlds.MountAndBlade.Options.OptionCategory TaleWorlds.MountAndBlade.Options.OptionsProvider::GetControllerOptionCategory() IL_0185: ldc.i4.1 IL_0186: ldc.i4.1 IL_0187: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GamepadOptions.GamepadOptionCategoryVM::.ctor(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM options, TaleWorlds.Localization.TextObject name, TaleWorlds.MountAndBlade.Options.OptionCategory category, System.Boolean isEnabled, System.Boolean isResetSupported) IL_018C: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GamepadOptions.GamepadOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gamepadCategory IL_0191: ldarg.0 IL_0192: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_0197: stfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_019C: ldarg.0 IL_019D: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_01A2: ldarg.0 IL_01A3: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_videoOptionCategory IL_01A8: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Library.ViewModel item) IL_01AD: ldarg.0 IL_01AE: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_01B3: ldarg.0 IL_01B4: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_performanceOptionCategory IL_01B9: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Library.ViewModel item) IL_01BE: ldarg.0 IL_01BF: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_01C4: ldarg.0 IL_01C5: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_audioOptionCategory IL_01CA: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Library.ViewModel item) IL_01CF: ldarg.0 IL_01D0: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_01D5: ldarg.0 IL_01D6: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gameplayOptionCategory IL_01DB: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Library.ViewModel item) IL_01E0: ldarg.0 IL_01E1: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_01E6: ldarg.0 IL_01E7: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GameKeys.GameKeyOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gameKeyCategory IL_01EC: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Library.ViewModel item) IL_01F1: ldarg.0 IL_01F2: ldfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_categories IL_01F7: ldarg.0 IL_01F8: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GamepadOptions.GamepadOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_gamepadCategory IL_01FD: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.Library.ViewModel item) IL_0202: ldarg.0 IL_0203: ldc.i4.0 IL_0204: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::SetSelectedCategory(System.Int32 index) IL_0209: ldarg.s 4 IL_020B: brtrue => Label0 IL_0210: ldarg.0 IL_0211: ldnull IL_0212: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.BrightnessOptionVM::.ctor(System.Action`1 onClose) IL_0217: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::set_BrightnessPopUp(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.BrightnessOptionVM value) IL_021C: Label0 IL_021C: ldarg.s 5 IL_021E: brtrue => Label1 IL_0223: ldarg.0 IL_0224: ldnull IL_0225: newobj System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.ExposureOptionVM::.ctor(System.Action`1 onClose) IL_022A: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::set_ExposurePopUp(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.ExposureOptionVM value) IL_022F: Label1 IL_022F: call static TaleWorlds.Core.Game TaleWorlds.Core.Game::get_Current() IL_0234: brfalse => Label2 IL_0239: ldarg.0 IL_023A: ldfld System.Boolean TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_autoHandleClose IL_023F: brfalse => Label3 IL_0244: call static TaleWorlds.Core.Game TaleWorlds.Core.Game::get_Current() IL_0249: callvirt TaleWorlds.Core.GameStateManager TaleWorlds.Core.Game::get_GameStateManager() IL_024E: ldarg.0 IL_024F: callvirt System.Void TaleWorlds.Core.GameStateManager::RegisterActiveStateDisableRequest(System.Object requestingInstance) IL_0254: Label2 IL_0254: Label3 IL_0254: ldarg.0 IL_0255: ldarg.0 IL_0256: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_VideoOptions() IL_025B: ldc.i4.s 24 IL_025D: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_0262: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_refreshRateOption IL_0267: ldarg.0 IL_0268: ldarg.0 IL_0269: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_VideoOptions() IL_026E: ldc.i4.s 23 IL_0270: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_0275: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_resolutionOption IL_027A: ldarg.0 IL_027B: ldarg.0 IL_027C: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_VideoOptions() IL_0281: ldc.i4.s 21 IL_0283: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_0288: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_monitorOption IL_028D: ldarg.0 IL_028E: ldarg.0 IL_028F: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_VideoOptions() IL_0294: ldc.i4.s 20 IL_0296: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_029B: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_displayModeOption IL_02A0: ldarg.0 IL_02A1: ldarg.0 IL_02A2: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_PerformanceOptions() IL_02A7: ldc.i4.s 29 IL_02A9: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_02AE: isinst TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.StringOptionDataVM IL_02B3: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.StringOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_overallOption IL_02B8: ldarg.0 IL_02B9: ldarg.0 IL_02BA: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_PerformanceOptions() IL_02BF: ldc.i4.s 48 IL_02C1: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_02C6: stfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_dlssOption IL_02CB: ldarg.0 IL_02CC: newobj System.Void System.Collections.Generic.List`1::.ctor() IL_02D1: dup IL_02D2: ldarg.0 IL_02D3: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_PerformanceOptions() IL_02D8: ldc.i4.s 71 IL_02DA: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_02DF: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM item) IL_02E4: dup IL_02E5: ldarg.0 IL_02E6: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_PerformanceOptions() IL_02EB: ldc.i4.s 72 IL_02ED: callvirt TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::GetOption(TaleWorlds.Engine.Options.NativeOptionsType optionType) IL_02F2: callvirt virtual System.Void System.Collections.Generic.List`1::Add(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GenericOptionDataVM item) IL_02F7: stfld System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_dynamicResolutionOptions IL_02FC: ldarg.0 IL_02FD: ldc.i4.1 IL_02FE: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::set_IsConsole(System.Boolean value) IL_0303: ldarg.0 IL_0304: ldfld TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_performanceOptionCategory IL_0309: dup IL_030A: brtrue => Label4 IL_030F: pop IL_0310: br => Label5 IL_0315: Label4 IL_0315: ldarg.0 IL_0316: ldftn System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::UpdateDependentConfigs(TaleWorlds.Engine.Options.IOptionData data, System.Single val) IL_031C: newobj System.Void System.Action`2::.ctor(System.Object object, System.IntPtr method) IL_0321: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GroupedOptionCategoryVM::InitializeDependentConfigs(System.Action`2 updateDependentConfigs) IL_0326: Label5 IL_0326: ldarg.0 IL_0327: ldc.i4.0 IL_0328: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::set_IsConsole(System.Boolean value) IL_032D: ldarg.0 IL_032E: call static TaleWorlds.Library.ApplicationVersion TaleWorlds.Engine.Utilities::GetApplicationVersionWithBuildNumber() IL_0333: stloc.s 4 (TaleWorlds.Library.ApplicationVersion) IL_0335: ldloca.s 4 (TaleWorlds.Library.ApplicationVersion) IL_0337: constrained. TaleWorlds.Library.ApplicationVersion IL_033D: callvirt virtual System.String System.Object::ToString() IL_0342: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::set_GameVersionText(System.String value) IL_0347: ldarg.0 IL_0348: callvirt virtual System.Void TaleWorlds.Library.ViewModel::RefreshValues() IL_034D: ldsfld System.Action TaleWorlds.InputSystem.Input::OnGamepadActiveStateChanged IL_0352: ldarg.0 IL_0353: ldftn System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::OnGamepadActiveStateChanged() IL_0359: newobj System.Void System.Action::.ctor(System.Object object, System.IntPtr method) IL_035E: call static System.Delegate System.Delegate::Combine(System.Delegate a, System.Delegate b) IL_0363: castclass System.Action IL_0368: stsfld System.Action TaleWorlds.InputSystem.Input::OnGamepadActiveStateChanged IL_036D: ldarg.0 IL_036E: ldc.i4.1 IL_036F: stfld System.Boolean TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_isInitialized IL_0374: ldarg.0 IL_0375: ldstr ".ctor" IL_037A: call static System.Void Bannerlord.UIExtenderEx.Patches.ViewModelWithMixinPatch::Constructor(TaleWorlds.Library.ViewModel viewModel, System.String _) IL_037F: // end original IL_037F: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::.ctor(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode optionsMode, System.Action onClose, System.Action`1 onKeybindRequest, System.Action onBrightnessExecute, System.Action onExposureExecute) ### Replacement: static System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM..ctor_Patch0(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM this, TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode optionsMode, System.Action onClose, System.Action`1 onKeybindRequest, System.Action onBrightnessExecute, System.Action onExposureExecute) IL_0000: // start original IL_0000: ldarg.0 IL_0001: ldc.i4.0 IL_0002: ldarg.1 IL_0003: ldarg.3 IL_0004: ldnull IL_0005: ldnull IL_0006: call System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::.ctor(System.Boolean autoHandleClose, TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsMode optionsMode, System.Action`1 onKeybindRequest, System.Action onBrightnessExecute, System.Action onExposureExecute) IL_000B: ldarg.0 IL_000C: ldarg.2 IL_000D: stfld System.Action TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onClose IL_0012: ldarg.0 IL_0013: ldarg.s 4 IL_0015: stfld System.Action TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onBrightnessExecute IL_001A: ldarg.0 IL_001B: ldarg.s 5 IL_001D: stfld System.Action TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::_onExposureExecute IL_0022: ldarg.0 IL_0023: ldstr ".ctor" IL_0028: call static System.Void Bannerlord.UIExtenderEx.Patches.ViewModelWithMixinPatch::Constructor(TaleWorlds.Library.ViewModel viewModel, System.String _) IL_002D: // end original IL_002D: ret DONE ### Patch: virtual System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::OnFinalize() ### Replacement: static System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM.OnFinalize_Patch0(TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM this) IL_0000: // start original IL_0000: ldarg.0 IL_0001: call virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_0006: ldarg.0 IL_0007: call TaleWorlds.MountAndBlade.ViewModelCollection.Input.InputKeyItemVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_DoneInputKey() IL_000C: dup IL_000D: brtrue => Label0 IL_0012: pop IL_0013: br => Label1 IL_0018: Label0 IL_0018: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_001D: Label1 IL_001D: ldarg.0 IL_001E: call TaleWorlds.MountAndBlade.ViewModelCollection.Input.InputKeyItemVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_CancelInputKey() IL_0023: dup IL_0024: brtrue => Label2 IL_0029: pop IL_002A: br => Label3 IL_002F: Label2 IL_002F: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_0034: Label3 IL_0034: ldarg.0 IL_0035: call TaleWorlds.MountAndBlade.ViewModelCollection.Input.InputKeyItemVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_PreviousTabInputKey() IL_003A: dup IL_003B: brtrue => Label4 IL_0040: pop IL_0041: br => Label5 IL_0046: Label4 IL_0046: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_004B: Label5 IL_004B: ldarg.0 IL_004C: call TaleWorlds.MountAndBlade.ViewModelCollection.Input.InputKeyItemVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_NextTabInputKey() IL_0051: dup IL_0052: brtrue => Label6 IL_0057: pop IL_0058: br => Label7 IL_005D: Label6 IL_005D: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_0062: Label7 IL_0062: ldarg.0 IL_0063: call TaleWorlds.MountAndBlade.ViewModelCollection.Input.InputKeyItemVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_ResetInputKey() IL_0068: dup IL_0069: brtrue => Label8 IL_006E: pop IL_006F: br => Label9 IL_0074: Label8 IL_0074: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_0079: Label9 IL_0079: ldarg.0 IL_007A: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GamepadOptions.GamepadOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_GamepadOptions() IL_007F: dup IL_0080: brtrue => Label10 IL_0085: pop IL_0086: br => Label11 IL_008B: Label10 IL_008B: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_0090: Label11 IL_0090: ldarg.0 IL_0091: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.GameKeys.GameKeyOptionCategoryVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_GameKeyOptionGroups() IL_0096: dup IL_0097: brtrue => Label12 IL_009C: pop IL_009D: br => Label13 IL_00A2: Label12 IL_00A2: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_00A7: Label13 IL_00A7: ldarg.0 IL_00A8: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.ExposureOptionVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_ExposurePopUp() IL_00AD: dup IL_00AE: brtrue => Label14 IL_00B3: pop IL_00B4: br => Label15 IL_00B9: Label14 IL_00B9: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_00BE: Label15 IL_00BE: ldarg.0 IL_00BF: call TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.BrightnessOptionVM TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::get_BrightnessPopUp() IL_00C4: dup IL_00C5: brtrue => Label16 IL_00CA: pop IL_00CB: br => Label17 IL_00D0: Label16 IL_00D0: callvirt virtual System.Void TaleWorlds.Library.ViewModel::OnFinalize() IL_00D5: Label17 IL_00D5: ldsfld System.Action TaleWorlds.InputSystem.Input::OnGamepadActiveStateChanged IL_00DA: ldarg.0 IL_00DB: ldftn System.Void TaleWorlds.MountAndBlade.ViewModelCollection.GameOptions.OptionsVM::OnGamepadActiveStateChanged() IL_00E1: newobj System.Void System.Action::.ctor(System.Object object, System.IntPtr method) IL_00E6: call static System.Delegate System.Delegate::Remove(System.Delegate source, System.Delegate value) IL_00EB: castclass System.Action IL_00F0: stsfld System.Action TaleWorlds.InputSystem.Input::OnGamepadActiveStateChanged IL_00F5: ldarg.0 IL_00F6: ldstr "OnFinalize" IL_00FB: call static System.Void Bannerlord.UIExtenderEx.Patches.ViewModelWithMixinPatch::Finalize(TaleWorlds.Library.ViewModel viewModel, System.String _) IL_0100: // end original IL_0100: ret DONE ### Patch: virtual System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::OnBeforeInitialModuleScreenSetAsRoot() ### Replacement: static System.Void TaleWorlds.MountAndBlade.MBSubModuleBase::TaleWorlds.MountAndBlade.MBSubModuleBase.OnBeforeInitialModuleScreenSetAsRoot_Patch1(TaleWorlds.MountAndBlade.MBSubModuleBase this) IL_0000: // start original IL_0000: // end original IL_0000: ldarg.0 IL_0001: call static System.Void Bannerlord.ButterLib.SubModuleWrappers2.Patches.MBSubModuleBasePatch::OnBeforeInitialModuleScreenSetAsRootPostfix(TaleWorlds.MountAndBlade.MBSubModuleBase __instance) IL_0006: ret DONE ### Harmony id=BannerlordCheats, version=2.3.1.1, location=E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord.Harmony\bin\Gaming.Desktop.x64_Shipping_Client\0Harmony.dll, env/clr=6.0.12, platform=Win32NT ### Started from virtual System.Void BannerlordCheats.SubModule::OnGameInitializationFinished(TaleWorlds.Core.Game game), location E:\XboxGames\Mount & Blade II- Bannerlord\Content\Modules\Bannerlord Cheats Reload\bin\Gaming.Desktop.x64_Shipping_Client\BannerlordCheats.dll ### At 2024-04-02 02.08.09 ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel::GetCostForPlayer(TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop workshop) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel::TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel.GetCostForPlayer_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel this, TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop workshop) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt TaleWorlds.CampaignSystem.Settlements.Workshops.WorkshopType TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop::get_WorkshopType() IL_000F: callvirt System.Int32 TaleWorlds.CampaignSystem.Settlements.Workshops.WorkshopType::get_EquipmentCost() IL_0014: ldarg.1 IL_0015: callvirt abstract virtual TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Settlements.SettlementArea::get_Settlement() IL_001A: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_001F: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_Prosperity() IL_0024: conv.i4 IL_0025: ldc.i4.2 IL_0026: mul IL_0027: add IL_0028: ldarg.1 IL_0029: callvirt System.Int32 TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop::get_Capital() IL_002E: add IL_002F: // end original IL_002F: stloc 0 (System.Int32) IL_0033: ldarga 1 IL_0037: ldloca 0 (System.Int32) IL_003B: call static System.Void BannerlordCheats.Patches.Workshops.WorkshopBuyingCostPercentage::GetCostForPlayer(TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop& workshop, System.Int32& __result) IL_0040: ldloc 0 (System.Int32) IL_0044: ret DONE ### Patch: System.Int32 TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop::get_Expense() ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop::TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop.get_Expense_Patch1(TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop this) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.WorkshopModel TaleWorlds.CampaignSystem.GameModels::get_WorkshopModel() IL_0018: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.WorkshopModel::get_DailyExpense() IL_001D: // end original IL_001D: stloc 0 (System.Int32) IL_0021: ldarga 0 IL_0025: ldloca 0 (System.Int32) IL_0029: call static System.Void BannerlordCheats.Patches.Workshops.WorkshopDailyExpensePercentage::Expense(TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop& __instance, System.Int32& __result) IL_002E: ldloc 0 (System.Int32) IL_0032: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel::GetCostForNotable(TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop workshop) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel::TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel.GetCostForNotable_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultWorkshopModel this, TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop workshop) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt TaleWorlds.CampaignSystem.Settlements.Workshops.WorkshopType TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop::get_WorkshopType() IL_000F: callvirt System.Int32 TaleWorlds.CampaignSystem.Settlements.Workshops.WorkshopType::get_EquipmentCost() IL_0014: ldarg.1 IL_0015: callvirt abstract virtual TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Settlements.SettlementArea::get_Settlement() IL_001A: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_001F: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_Prosperity() IL_0024: conv.i4 IL_0025: add IL_0026: ldarg.1 IL_0027: callvirt System.Int32 TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop::get_Capital() IL_002C: add IL_002D: // end original IL_002D: stloc 0 (System.Int32) IL_0031: ldarga 1 IL_0035: ldloca 0 (System.Int32) IL_0039: call static System.Void BannerlordCheats.Patches.Workshops.WorkshopSellingCostMultiplier::GetSellingCost(TaleWorlds.CampaignSystem.Settlements.Workshops.Workshop& workshop, System.Int32& __result) IL_003E: ldloc 0 (System.Int32) IL_0042: ret DONE ### Patch: TaleWorlds.Library.MBBindingList`1 TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::GetResultPropertyList(TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingSecondaryUsageItemVM usageItem) ### Replacement: static TaleWorlds.Library.MBBindingList`1 TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM.GetResultPropertyList_Patch1(TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM this, TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingSecondaryUsageItemVM usageItem) IL_0000: Local var 0: TaleWorlds.Library.MBBindingList`1 IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: TaleWorlds.Core.ItemModifier IL_0000: Local var 3: System.Collections.Generic.IEnumerator`1 IL_0000: Local var 4: TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem IL_0000: Local var 5: System.Single IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: System.Single IL_0000: Local var 8: TaleWorlds.Library.MBBindingList`1 IL_0000: Local var 9: System.Boolean IL_0000: ldnull IL_0001: stloc 8 (TaleWorlds.Library.MBBindingList`1[TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM]) IL_0005: ldc.i4 0 IL_000A: stloc 9 (System.Boolean) IL_000E: ldc.i4.1 IL_000F: stloc 9 (System.Boolean) IL_0013: ldloc 9 (System.Boolean) IL_0017: brfalse => Label1 IL_001C: ldarg 1 IL_0020: ldloca 8 (TaleWorlds.Library.MBBindingList`1[TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM]) IL_0024: ldarga 0 IL_0028: call static System.Boolean BannerlordCheats.Patches.Smithing.CraftedWeaponModifierBonus::Prefix(TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingSecondaryUsageItemVM usageItem, TaleWorlds.Library.MBBindingList`1& __result, TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM& __instance) IL_002D: stloc 9 (System.Boolean) IL_0031: Label1 IL_0031: nop IL_0032: ldloc 9 (System.Boolean) IL_0036: brfalse => Label0 IL_003B: // start original IL_003B: newobj System.Void TaleWorlds.Library.MBBindingList`1::.ctor() IL_0040: stloc.0 IL_0041: ldarg.1 IL_0042: brtrue => Label2 IL_0047: ldloc.0 IL_0048: br => Label20 IL_004D: Label2 IL_004D: ldarg.1 IL_004E: callvirt System.Int32 TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingSecondaryUsageItemVM::get_UsageIndex() IL_0053: stloc.1 IL_0054: ldarg.0 IL_0055: ldloc.1 IL_0056: call System.Void TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::TrySetSecondaryUsageIndex(System.Int32 usageIndex) IL_005B: ldarg.0 IL_005C: call System.Void TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::RefreshStats() IL_0061: ldarg.0 IL_0062: ldfld TaleWorlds.CampaignSystem.CampaignBehaviors.ICraftingCampaignBehavior TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::_craftingBehavior IL_0067: callvirt abstract virtual TaleWorlds.Core.ItemModifier TaleWorlds.CampaignSystem.CampaignBehaviors.ICraftingCampaignBehavior::GetCurrentItemModifier() IL_006C: stloc.2 IL_006D: ldarg.0 IL_006E: call TaleWorlds.Library.MBBindingList`1 TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::get_PrimaryPropertyList() IL_0073: callvirt virtual System.Collections.Generic.IEnumerator`1 System.Collections.ObjectModel.Collection`1::GetEnumerator() IL_0078: stloc.3 .try { IL_0079: br => Label3 IL_007E: Label17 IL_007E: ldloc.3 IL_007F: callvirt abstract virtual TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem System.Collections.Generic.IEnumerator`1::get_Current() IL_0084: stloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0086: ldc.r4 0 IL_008B: stloc.s 5 (System.Single) IL_008D: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_008F: ldfld TaleWorlds.Core.CraftingStatTypes TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Type IL_0094: ldc.i4.0 IL_0095: ceq IL_0097: stloc.s 6 (System.Boolean) IL_0099: ldloc.2 IL_009A: brfalse => Label4 IL_009F: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00A1: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_00A6: stloc.s 7 (System.Single) IL_00A8: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00AA: ldfld TaleWorlds.Core.CraftingStatTypes TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Type IL_00AF: ldc.i4.5 IL_00B0: bne.un => Label5 IL_00B5: ldloc.2 IL_00B6: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00B8: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_00BD: conv.i4 IL_00BE: callvirt System.Int32 TaleWorlds.Core.ItemModifier::ModifyDamage(System.Int32 baseDamage) IL_00C3: conv.r4 IL_00C4: stloc.s 7 (System.Single) IL_00C6: br => Label6 IL_00CB: Label5 IL_00CB: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00CD: ldfld TaleWorlds.Core.CraftingStatTypes TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Type IL_00D2: ldc.i4.3 IL_00D3: bne.un => Label7 IL_00D8: ldloc.2 IL_00D9: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00DB: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_00E0: conv.i4 IL_00E1: callvirt System.Int32 TaleWorlds.Core.ItemModifier::ModifySpeed(System.Int32 baseSpeed) IL_00E6: conv.r4 IL_00E7: stloc.s 7 (System.Single) IL_00E9: br => Label8 IL_00EE: Label7 IL_00EE: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00F0: ldfld TaleWorlds.Core.CraftingStatTypes TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Type IL_00F5: ldc.i4.4 IL_00F6: bne.un => Label9 IL_00FB: ldloc.2 IL_00FC: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_00FE: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_0103: conv.i4 IL_0104: callvirt System.Int32 TaleWorlds.Core.ItemModifier::ModifyDamage(System.Int32 baseDamage) IL_0109: conv.r4 IL_010A: stloc.s 7 (System.Single) IL_010C: br => Label10 IL_0111: Label9 IL_0111: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0113: ldfld TaleWorlds.Core.CraftingStatTypes TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Type IL_0118: ldc.i4.2 IL_0119: bne.un => Label11 IL_011E: ldloc.2 IL_011F: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0121: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_0126: conv.i4 IL_0127: callvirt System.Int32 TaleWorlds.Core.ItemModifier::ModifySpeed(System.Int32 baseSpeed) IL_012C: conv.r4 IL_012D: stloc.s 7 (System.Single) IL_012F: br => Label12 IL_0134: Label11 IL_0134: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0136: ldfld TaleWorlds.Core.CraftingStatTypes TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Type IL_013B: ldc.i4.6 IL_013C: bne.un => Label13 IL_0141: ldloc.2 IL_0142: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0144: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_0149: conv.i4 IL_014A: callvirt System.Int32 TaleWorlds.Core.ItemModifier::ModifySpeed(System.Int32 baseSpeed) IL_014F: conv.r4 IL_0150: stloc.s 7 (System.Single) IL_0152: Label6 IL_0152: Label8 IL_0152: Label10 IL_0152: Label12 IL_0152: Label13 IL_0152: ldloc.s 7 (System.Single) IL_0154: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0156: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_015B: beq => Label14 IL_0160: ldloc.s 7 (System.Single) IL_0162: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0164: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_0169: sub IL_016A: stloc.s 5 (System.Single) IL_016C: Label4 IL_016C: Label14 IL_016C: ldarg.0 IL_016D: call System.Boolean TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignVM::get_IsInOrderMode() IL_0172: brfalse => Label15 IL_0177: ldloc.0 IL_0178: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_017A: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Description IL_017F: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0181: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_0186: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0188: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_TargetValue() IL_018D: ldloc.s 5 (System.Single) IL_018F: ldloc.s 6 (System.Boolean) IL_0191: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_0193: callvirt System.Boolean TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_IsExceedingBeneficial() IL_0198: ldc.i4.1 IL_0199: newobj System.Void TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM::.ctor(TaleWorlds.Localization.TextObject description, System.Single craftedValue, System.Single requiredValue, System.Single changeAmount, System.Boolean showFloatingPoint, System.Boolean isExceedingBeneficial, System.Boolean showTooltip) IL_019E: callvirt virtual System.Void System.Collections.ObjectModel.Collection`1::Add(TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM item) IL_01A3: br => Label16 IL_01A8: Label15 IL_01A8: ldloc.0 IL_01A9: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_01AB: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::Description IL_01B0: ldloc.s 4 (TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem) IL_01B2: callvirt System.Single TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.CraftingListPropertyItem::get_PropertyValue() IL_01B7: ldloc.s 5 (System.Single) IL_01B9: ldloc.s 6 (System.Boolean) IL_01BB: newobj System.Void TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM::.ctor(TaleWorlds.Localization.TextObject description, System.Single value, System.Single changeAmount, System.Boolean showFloatingPoint) IL_01C0: callvirt virtual System.Void System.Collections.ObjectModel.Collection`1::Add(TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM item) IL_01C5: Label3 IL_01C5: Label16 IL_01C5: ldloc.3 IL_01C6: callvirt abstract virtual System.Boolean System.Collections.IEnumerator::MoveNext() IL_01CB: brtrue => Label17 IL_01D0: leave => Label18 IL_01D5: leave => (autogenerated) } // end try .finally { IL_01DA: ldloc.3 IL_01DB: brfalse => Label19 IL_01E0: ldloc.3 IL_01E1: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_01E6: Label19 IL_01E6: endfinally IL_01E7: leave => (autogenerated) } // end handler IL_01E8: Label18 IL_01E8: ldloc.0 IL_01E9: // end original IL_01E9: Label20 IL_01E9: stloc 8 (TaleWorlds.Library.MBBindingList`1[TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM]) IL_01ED: Label0 IL_01ED: ldloc 8 (TaleWorlds.Library.MBBindingList`1[TaleWorlds.CampaignSystem.ViewModelCollection.WeaponCrafting.WeaponDesign.WeaponDesignResultPropertyItemVM]) IL_01F1: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CampaignEvents::OnNewItemCrafted(TaleWorlds.Core.ItemObject itemObject, TaleWorlds.Core.ItemModifier overriddenItemModifier, System.Boolean isCraftingOrderItem) ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignEvents::TaleWorlds.CampaignSystem.CampaignEvents.OnNewItemCrafted_Patch1(TaleWorlds.CampaignSystem.CampaignEvents this, TaleWorlds.Core.ItemObject itemObject, TaleWorlds.Core.ItemModifier overriddenItemModifier, System.Boolean isCraftingOrderItem) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarga 1 IL_001B: ldarga 2 IL_001F: ldarga 3 IL_0023: call static System.Boolean BannerlordCheats.Patches.Smithing.CraftedWeaponModifierSave::Prefix(TaleWorlds.Core.ItemObject& itemObject, TaleWorlds.Core.ItemModifier& overriddenItemModifier, System.Boolean& isCraftingOrderItem) IL_0028: stloc 0 (System.Boolean) IL_002C: Label1 IL_002C: nop IL_002D: ldloc 0 (System.Boolean) IL_0031: brfalse => Label0 IL_0036: // start original IL_0036: call static TaleWorlds.CampaignSystem.CampaignEvents TaleWorlds.CampaignSystem.CampaignEvents::get_Instance() IL_003B: ldfld TaleWorlds.CampaignSystem.MbEvent`3 TaleWorlds.CampaignSystem.CampaignEvents::_onNewItemCraftedEvent IL_0040: ldarg.1 IL_0041: ldarg.2 IL_0042: ldarg.3 IL_0043: callvirt System.Void TaleWorlds.CampaignSystem.MbEvent`3::Invoke(TaleWorlds.Core.ItemObject t1, TaleWorlds.Core.ItemModifier t2, System.Boolean t3) IL_0048: // end original IL_0048: Label0 IL_0048: ret DONE ### Patch: virtual System.Int32[] TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::GetSmithingCostsForWeaponDesign(TaleWorlds.Core.WeaponDesign weaponDesign) ### Replacement: static System.Int32[] TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel.GetSmithingCostsForWeaponDesign_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel this, TaleWorlds.Core.WeaponDesign weaponDesign) IL_0000: Local var 0: System.Int32[] IL_0000: Local var 1: TaleWorlds.Core.WeaponDesignElement[] IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: TaleWorlds.Core.WeaponDesignElement IL_0000: Local var 4: System.Collections.Generic.List`1/Enumerator> IL_0000: Local var 5: System.ValueTuple`2 IL_0000: Local var 6: System.Int32[] IL_0000: ldnull IL_0001: stloc 6 (System.Int32[]) IL_0005: // start original IL_0005: ldc.i4.s 9 IL_0007: newarr System.Int32 IL_000C: stloc.0 IL_000D: ldarg.1 IL_000E: callvirt TaleWorlds.Core.WeaponDesignElement[] TaleWorlds.Core.WeaponDesign::get_UsedPieces() IL_0013: stloc.1 IL_0014: ldc.i4.0 IL_0015: stloc.2 IL_0016: br => Label0 IL_001B: Label6 IL_001B: ldloc.1 IL_001C: ldloc.2 IL_001D: ldelem.ref IL_001E: stloc.3 IL_001F: ldloc.3 IL_0020: brfalse => Label1 IL_0025: ldloc.3 IL_0026: callvirt System.Boolean TaleWorlds.Core.WeaponDesignElement::get_IsValid() IL_002B: brfalse => Label2 IL_0030: ldloc.3 IL_0031: callvirt TaleWorlds.Core.CraftingPiece TaleWorlds.Core.WeaponDesignElement::get_CraftingPiece() IL_0036: callvirt TaleWorlds.Library.MBReadOnlyList`1> TaleWorlds.Core.CraftingPiece::get_MaterialsUsed() IL_003B: callvirt System.Collections.Generic.Enumerator> System.Collections.Generic.List`1>::GetEnumerator() IL_0040: stloc.s 4 (System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]]) .try { IL_0042: br => Label3 IL_0047: Label4 IL_0047: ldloca.s 4 (System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]]) IL_0049: call virtual System.ValueTuple`2 System.Collections.Generic.Enumerator>::get_Current() IL_004E: stloc.s 5 (System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]) IL_0050: ldloc.0 IL_0051: ldloc.s 5 (System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]) IL_0053: ldfld TaleWorlds.Core.CraftingMaterials System.ValueTuple`2::Item1 IL_0058: ldelema System.Int32 IL_005D: dup IL_005E: ldind.i4 IL_005F: ldloc.s 5 (System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]) IL_0061: ldfld System.Int32 System.ValueTuple`2::Item2 IL_0066: sub IL_0067: stind.i4 IL_0068: Label3 IL_0068: ldloca.s 4 (System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]]) IL_006A: call virtual System.Boolean System.Collections.Generic.Enumerator>::MoveNext() IL_006F: brtrue => Label4 IL_0074: leave => Label5 IL_0079: leave => (autogenerated) } // end try .finally { IL_007E: ldloca.s 4 (System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]]) IL_0080: constrained. System.Collections.Generic.List`1+Enumerator[System.ValueTuple`2[TaleWorlds.Core.CraftingMaterials,System.Int32]] IL_0086: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_008B: endfinally IL_008C: leave => (autogenerated) } // end handler IL_008D: Label1 IL_008D: Label2 IL_008D: Label5 IL_008D: ldloc.2 IL_008E: ldc.i4.1 IL_008F: add IL_0090: stloc.2 IL_0091: Label0 IL_0091: ldloc.2 IL_0092: ldloc.1 IL_0093: ldlen IL_0094: conv.i4 IL_0095: blt => Label6 IL_009A: ldloc.0 IL_009B: ldc.i4.8 IL_009C: ldelema System.Int32 IL_00A1: dup IL_00A2: ldind.i4 IL_00A3: ldc.i4.1 IL_00A4: sub IL_00A5: stind.i4 IL_00A6: ldloc.0 IL_00A7: // end original IL_00A7: stloc 6 (System.Int32[]) IL_00AB: ldarg 1 IL_00AF: ldloca 6 (System.Int32[]) IL_00B3: call static System.Void BannerlordCheats.Patches.Smithing.SmithingCostPercentage::GetSmithingCostsForWeaponDesign(TaleWorlds.Core.WeaponDesign weaponDesign, System.Int32[]& __result) IL_00B8: ldloc 6 (System.Int32[]) IL_00BC: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::GetCraftingPartDifficulty(TaleWorlds.Core.CraftingPiece craftingPiece) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel.GetCraftingPartDifficulty_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel this, TaleWorlds.Core.CraftingPiece craftingPiece) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt System.Boolean TaleWorlds.Core.CraftingPiece::get_IsEmptyPiece() IL_000F: brtrue => Label0 IL_0014: ldarg.1 IL_0015: callvirt System.Int32 TaleWorlds.Core.CraftingPiece::get_PieceTier() IL_001A: ldc.i4.s 50 IL_001C: mul IL_001D: br => Label1 IL_0022: Label0 IL_0022: ldc.i4.0 IL_0023: // end original IL_0023: Label1 IL_0023: stloc 0 (System.Int32) IL_0027: ldarg 1 IL_002B: ldloca 0 (System.Int32) IL_002F: call static System.Void BannerlordCheats.Patches.Smithing.SmithingDifficultyPercentage::GetCraftingPartDifficulty(TaleWorlds.Core.CraftingPiece craftingPiece, System.Int32& __result) IL_0034: ldloc 0 (System.Int32) IL_0038: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::GetEnergyCostForRefining(TaleWorlds.Core.RefiningFormula& refineFormula, TaleWorlds.CampaignSystem.Hero hero) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel.GetEnergyCostForRefining_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel this, TaleWorlds.Core.RefiningFormula& refineFormula, TaleWorlds.CampaignSystem.Hero hero) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000B: ldc.r4 6 IL_0010: ldc.i4.0 IL_0011: ldnull IL_0012: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0017: ldarg.2 IL_0018: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crafting::get_PracticalRefiner() IL_001D: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0022: brfalse => Label0 IL_0027: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0029: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crafting::get_PracticalRefiner() IL_002E: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0033: ldnull IL_0034: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0039: Label0 IL_0039: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003B: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0040: conv.i4 IL_0041: // end original IL_0041: stloc 1 (System.Int32) IL_0045: ldarg 1 IL_0049: ldarg 2 IL_004D: ldloca 1 (System.Int32) IL_0051: call static System.Void BannerlordCheats.Patches.Smithing.SmithingEnergyCostPercentageRefining::GetEnergyCostForRefining(TaleWorlds.Core.RefiningFormula& refineFormula, TaleWorlds.CampaignSystem.Hero hero, System.Int32& __result) IL_0056: ldloc 1 (System.Int32) IL_005A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::GetEnergyCostForSmelting(TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Hero hero) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel.GetEnergyCostForSmelting_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel this, TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Hero hero) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000B: ldc.r4 10 IL_0010: ldc.i4.0 IL_0011: ldnull IL_0012: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0017: ldarg.2 IL_0018: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crafting::get_PracticalSmelter() IL_001D: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0022: brfalse => Label0 IL_0027: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0029: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crafting::get_PracticalSmelter() IL_002E: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0033: ldnull IL_0034: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0039: Label0 IL_0039: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003B: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0040: conv.i4 IL_0041: // end original IL_0041: stloc 1 (System.Int32) IL_0045: ldarg 1 IL_0049: ldarg 2 IL_004D: ldloca 1 (System.Int32) IL_0051: call static System.Void BannerlordCheats.Patches.Smithing.SmithingEnergyCostPercentageSmelting::GetEnergyCostForSmelting(TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Hero hero, System.Int32& __result) IL_0056: ldloc 1 (System.Int32) IL_005A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::GetEnergyCostForSmithing(TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Hero hero) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel.GetEnergyCostForSmithing_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultSmithingModel this, TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Hero hero) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000B: ldc.i4.s 10 IL_000D: ldc.i4.5 IL_000E: ldarg.1 IL_000F: callvirt TaleWorlds.Core.ItemTiers TaleWorlds.Core.ItemObject::get_Tier() IL_0014: mul IL_0015: add IL_0016: conv.r4 IL_0017: ldc.i4.0 IL_0018: ldnull IL_0019: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_001E: ldarg.2 IL_001F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crafting::get_PracticalSmith() IL_0024: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0029: brfalse => Label0 IL_002E: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0030: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crafting::get_PracticalSmith() IL_0035: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_003A: ldnull IL_003B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0040: Label0 IL_0040: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0042: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0047: conv.i4 IL_0048: // end original IL_0048: stloc 1 (System.Int32) IL_004C: ldarg 1 IL_0050: ldarg 2 IL_0054: ldloca 1 (System.Int32) IL_0058: call static System.Void BannerlordCheats.Patches.Smithing.SmithingEnergyCostPercentageSmithing::GetEnergyCostForSmithing(TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Hero hero, System.Int32& __result) IL_005D: ldloc 1 (System.Int32) IL_0061: ret DONE ### Patch: virtual System.Boolean TaleWorlds.CampaignSystem.CampaignBehaviors.CraftingCampaignBehavior::IsOpened(TaleWorlds.Core.CraftingPiece craftingPiece, TaleWorlds.Core.CraftingTemplate craftingTemplate) ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.CampaignBehaviors.CraftingCampaignBehavior::TaleWorlds.CampaignSystem.CampaignBehaviors.CraftingCampaignBehavior.IsOpened_Patch1(TaleWorlds.CampaignSystem.CampaignBehaviors.CraftingCampaignBehavior this, TaleWorlds.Core.CraftingPiece craftingPiece, TaleWorlds.Core.CraftingTemplate craftingTemplate) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt System.Boolean TaleWorlds.Core.CraftingPiece::get_IsGivenByDefault() IL_000F: brtrue => Label0 IL_0014: ldarg.0 IL_0015: ldfld System.Collections.Generic.Dictionary`2> TaleWorlds.CampaignSystem.CampaignBehaviors.CraftingCampaignBehavior::_openedPartsDictionary IL_001A: ldarg.2 IL_001B: callvirt virtual System.Collections.Generic.List`1 System.Collections.Generic.Dictionary`2>::get_Item(TaleWorlds.Core.CraftingTemplate key) IL_0020: ldarg.1 IL_0021: callvirt virtual System.Boolean System.Collections.Generic.List`1::Contains(TaleWorlds.Core.CraftingPiece item) IL_0026: br => Label1 IL_002B: Label0 IL_002B: ldc.i4.1 IL_002C: // end original IL_002C: Label1 IL_002C: stloc 0 (System.Boolean) IL_0030: ldarg 1 IL_0034: ldloca 0 (System.Boolean) IL_0038: call static System.Void BannerlordCheats.Patches.Smithing.UnlockAllParts::IsOpened(TaleWorlds.Core.CraftingPiece craftingPiece, System.Boolean& __result) IL_003D: ldloc 0 (System.Boolean) IL_0041: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::GetConstructionProgressPerHour(TaleWorlds.Core.SiegeEngineType type, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side) ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel.GetConstructionProgressPerHour_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel this, TaleWorlds.Core.SiegeEngineType type, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Nullable`1 IL_0000: Local var 6: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 7: System.Nullable`1 IL_0000: Local var 8: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 9: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 10: TaleWorlds.CampaignSystem.Settlements.Buildings.Building IL_0000: Local var 11: TaleWorlds.CampaignSystem.Siege.SiegeEvent/SiegeEngineConstructionProgress IL_0000: Local var 12: TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject IL_0000: Local var 13: TaleWorlds.CampaignSystem.Settlements.Settlement IL_0000: Local var 14: TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject IL_0000: Local var 15: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 15 (System.Single) IL_0009: // start original IL_0009: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000B: ldc.r4 0 IL_0010: ldc.i4.0 IL_0011: ldnull IL_0012: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0017: ldarg.0 IL_0018: ldarg.3 IL_0019: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.SiegeEventModel::GetAvailableManDayPower(TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side) IL_001E: stloc.1 IL_001F: ldarg.1 IL_0020: callvirt System.Int32 TaleWorlds.Core.SiegeEngineType::get_ManDayCost() IL_0025: conv.r4 IL_0026: stloc.2 IL_0027: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0029: ldc.r4 1 IL_002E: ldloc.2 IL_002F: ldloc.1 IL_0030: div IL_0031: ldc.r4 24 IL_0036: mul IL_0037: div IL_0038: ldarg.0 IL_0039: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::_baseConstructionSpeedText IL_003E: ldnull IL_003F: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0044: ldarg.0 IL_0045: ldarg.2 IL_0046: ldarg.3 IL_0047: callvirt abstract virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_BattleSide() IL_004C: callvirt abstract virtual TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.ComponentInterfaces.SiegeEventModel::GetEffectiveSiegePartyForSide(TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.Core.BattleSideEnum side) IL_0051: stloc.3 IL_0052: ldloc.3 IL_0053: brfalse => Label0 IL_0058: ldloc.3 IL_0059: brtrue => Label1 IL_005E: ldloca.s 5 (System.Nullable`1[System.Int32]) IL_0060: initobj System.Nullable`1[System.Int32] IL_0066: br => Label2 IL_006B: Label1 IL_006B: ldloc.3 IL_006C: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.MobileParty::get_EffectiveEngineer() IL_0071: stloc.s 6 (TaleWorlds.CampaignSystem.Hero) IL_0073: ldloc.s 6 (TaleWorlds.CampaignSystem.Hero) IL_0075: brtrue => Label3 IL_007A: ldloca.s 7 (System.Nullable`1[System.Int32]) IL_007C: initobj System.Nullable`1[System.Int32] IL_0082: ldloc.s 7 (System.Nullable`1[System.Int32]) IL_0084: br => Label4 IL_0089: Label3 IL_0089: ldloc.s 6 (TaleWorlds.CampaignSystem.Hero) IL_008B: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Engineering() IL_0090: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetSkillValue(TaleWorlds.Core.SkillObject skill) IL_0095: newobj System.Void System.Nullable`1::.ctor(System.Int32 value) IL_009A: Label4 IL_009A: stloc.s 5 (System.Nullable`1[System.Int32]) IL_009C: Label2 IL_009C: ldloc.s 5 (System.Nullable`1[System.Int32]) IL_009E: stloc.s 7 (System.Nullable`1[System.Int32]) IL_00A0: ldloca.s 7 (System.Nullable`1[System.Int32]) IL_00A2: call System.Boolean System.Nullable`1::get_HasValue() IL_00A7: brtrue => Label5 IL_00AC: ldc.i4.0 IL_00AD: br => Label6 IL_00B2: Label5 IL_00B2: ldloca.s 7 (System.Nullable`1[System.Int32]) IL_00B4: call System.Int32 System.Nullable`1::GetValueOrDefault() IL_00B9: Label6 IL_00B9: ldc.i4.0 IL_00BA: ble => Label7 IL_00BF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Engineering() IL_00C4: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_SiegeEngineProductionBonus() IL_00C9: ldloc.3 IL_00CA: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00CC: call static System.Void Helpers.SkillHelper::AddSkillBonusForParty(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_00D1: Label0 IL_00D1: Label7 IL_00D1: ldc.r4 0 IL_00D6: stloc.s 4 (System.Single) IL_00D8: ldarg.3 IL_00D9: callvirt abstract virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_BattleSide() IL_00DE: brtrue => Label8 IL_00E3: ldarg.2 IL_00E4: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_00E9: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_00EE: ldfld TaleWorlds.Library.MBList`1 TaleWorlds.CampaignSystem.Settlements.Town::Buildings IL_00F3: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_00F8: stloc.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) .try { IL_00FA: br => Label9 IL_00FF: Label10 IL_00FF: ldloca.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) IL_0101: call virtual TaleWorlds.CampaignSystem.Settlements.Buildings.Building System.Collections.Generic.Enumerator::get_Current() IL_0106: stloc.s 10 (TaleWorlds.CampaignSystem.Settlements.Buildings.Building) IL_0108: ldloc.s 4 (System.Single) IL_010A: ldloc.s 10 (TaleWorlds.CampaignSystem.Settlements.Buildings.Building) IL_010C: ldc.i4.s 9 IL_010E: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Buildings.Building::GetBuildingEffectAmount(TaleWorlds.CampaignSystem.Settlements.Buildings.BuildingEffectEnum effect) IL_0113: add IL_0114: stloc.s 4 (System.Single) IL_0116: Label9 IL_0116: ldloca.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) IL_0118: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_011D: brtrue => Label10 IL_0122: leave => Label11 IL_0127: leave => (autogenerated) } // end try .finally { IL_012C: ldloca.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) IL_012E: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building] IL_0134: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0139: endfinally IL_013A: leave => (autogenerated) } // end handler IL_013B: Label11 IL_013B: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_013D: ldloc.s 4 (System.Single) IL_013F: ldc.r4 0.01 IL_0144: mul IL_0145: ldarg.0 IL_0146: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::_constructionSpeedProjectBonusText IL_014B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0150: ldarg.2 IL_0151: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_0156: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_015B: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Settlements.Town::get_Governor() IL_0160: stloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0162: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0164: brtrue => Label12 IL_0169: ldnull IL_016A: br => Label13 IL_016F: Label12 IL_016F: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0171: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_0176: Label13 IL_0176: brfalse => Label14 IL_017B: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_017D: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_0182: ldarg.2 IL_0183: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_0188: bne.un => Label15 IL_018D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Engineering() IL_0192: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_SiegeEngineProductionBonus() IL_0197: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0199: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_019E: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01A0: ldc.i4.m1 IL_01A1: ldc.i4.1 IL_01A2: ldc.i4.0 IL_01A3: call static System.Void Helpers.SkillHelper::AddSkillBonusForCharacter(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.CampaignSystem.ExplainedNumber& stat, System.Int32 baseSkillOverride, System.Boolean isBonusPositive, System.Int32 extraSkillValue) IL_01A8: Label8 IL_01A8: Label14 IL_01A8: Label15 IL_01A8: ldarg.2 IL_01A9: brtrue => Label16 IL_01AE: ldnull IL_01AF: br => Label17 IL_01B4: Label16 IL_01B4: ldarg.2 IL_01B5: ldfld TaleWorlds.CampaignSystem.Siege.BesiegerCamp TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegerCamp IL_01BA: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Siege.BesiegerCamp::get_LeaderParty() IL_01BF: Label17 IL_01BF: brfalse => Label18 IL_01C4: ldarg.2 IL_01C5: ldfld TaleWorlds.CampaignSystem.Siege.BesiegerCamp TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegerCamp IL_01CA: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Siege.BesiegerCamp::get_LeaderParty() IL_01CF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Sweatshops() IL_01D4: ldc.i4.1 IL_01D5: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_01DA: brfalse => Label19 IL_01DF: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01E1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Sweatshops() IL_01E6: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_01EB: ldnull IL_01EC: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01F1: Label18 IL_01F1: Label19 IL_01F1: ldloc.3 IL_01F2: brfalse => Label20 IL_01F7: ldarg.3 IL_01F8: callvirt abstract virtual TaleWorlds.CampaignSystem.Siege.SiegeEnginesContainer TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_SiegeEngines() IL_01FD: ldfld TaleWorlds.CampaignSystem.Siege.SiegeEngineConstructionProgress TaleWorlds.CampaignSystem.Siege.SiegeEnginesContainer::SiegePreparations IL_0202: stloc.s 11 (TaleWorlds.CampaignSystem.Siege.SiegeEvent+SiegeEngineConstructionProgress) IL_0204: ldloc.s 11 (TaleWorlds.CampaignSystem.Siege.SiegeEvent+SiegeEngineConstructionProgress) IL_0206: brfalse => Label21 IL_020B: ldloc.s 11 (TaleWorlds.CampaignSystem.Siege.SiegeEvent+SiegeEngineConstructionProgress) IL_020D: callvirt System.Boolean TaleWorlds.CampaignSystem.Siege.SiegeEngineConstructionProgress::get_IsConstructed() IL_0212: brtrue => Label22 IL_0217: ldloc.3 IL_0218: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_021D: ldc.i4.0 IL_021E: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0223: brfalse => Label23 IL_0228: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_022F: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0234: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_0239: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_023E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0243: br => Label24 IL_0248: Label21 IL_0248: Label22 IL_0248: Label23 IL_0248: ldarg.1 IL_0249: callvirt System.Boolean TaleWorlds.Core.SiegeEngineType::get_IsRanged() IL_024E: brtrue => Label25 IL_0253: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_Scaffolds() IL_0258: br => Label26 IL_025D: Label25 IL_025D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0262: Label26 IL_0262: stloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_0264: ldloc.3 IL_0265: ldloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_0267: ldc.i4.0 IL_0268: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_026D: brfalse => Label27 IL_0272: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0274: ldloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_0276: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_027B: ldloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_027D: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0282: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0287: Label20 IL_0287: Label24 IL_0287: Label27 IL_0287: ldarg.3 IL_0288: callvirt abstract virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_BattleSide() IL_028D: brtrue => Label28 IL_0292: ldarg.2 IL_0293: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_0298: stloc.s 13 (TaleWorlds.CampaignSystem.Settlements.Settlement) IL_029A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_Salvager() IL_029F: stloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02A1: ldloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02A3: ldloc.s 13 (TaleWorlds.CampaignSystem.Settlements.Settlement) IL_02A5: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_02AA: call static System.Boolean Helpers.PerkHelper::GetPerkValueForTown(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Settlements.Town town) IL_02AF: brfalse => Label29 IL_02B4: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02B6: ldloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02B8: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_02BD: ldloc.s 13 (TaleWorlds.CampaignSystem.Settlements.Settlement) IL_02BF: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Settlement::get_Militia() IL_02C4: mul IL_02C5: ldloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02C7: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_02CC: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02D1: Label28 IL_02D1: Label29 IL_02D1: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02D3: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_02D8: // end original IL_02D8: stloc 15 (System.Single) IL_02DC: ldarga 1 IL_02E0: ldarga 2 IL_02E4: ldarga 3 IL_02E8: ldloca 15 (System.Single) IL_02EC: call static System.Void BannerlordCheats.Patches.Sieges.EnemySiegeBuildingSpeedPercentage::GetConstructionProgressPerHour(TaleWorlds.Core.SiegeEngineType& type, TaleWorlds.CampaignSystem.Siege.SiegeEvent& siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide& side, System.Single& __result) IL_02F1: ldloc 15 (System.Single) IL_02F5: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::GetConstructionProgressPerHour(TaleWorlds.Core.SiegeEngineType type, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side) ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel.GetConstructionProgressPerHour_Patch2(TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel this, TaleWorlds.Core.SiegeEngineType type, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Nullable`1 IL_0000: Local var 6: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 7: System.Nullable`1 IL_0000: Local var 8: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 9: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 10: TaleWorlds.CampaignSystem.Settlements.Buildings.Building IL_0000: Local var 11: TaleWorlds.CampaignSystem.Siege.SiegeEvent/SiegeEngineConstructionProgress IL_0000: Local var 12: TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject IL_0000: Local var 13: TaleWorlds.CampaignSystem.Settlements.Settlement IL_0000: Local var 14: TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject IL_0000: Local var 15: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 15 (System.Single) IL_0009: // start original IL_0009: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000B: ldc.r4 0 IL_0010: ldc.i4.0 IL_0011: ldnull IL_0012: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0017: ldarg.0 IL_0018: ldarg.3 IL_0019: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.SiegeEventModel::GetAvailableManDayPower(TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side) IL_001E: stloc.1 IL_001F: ldarg.1 IL_0020: callvirt System.Int32 TaleWorlds.Core.SiegeEngineType::get_ManDayCost() IL_0025: conv.r4 IL_0026: stloc.2 IL_0027: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0029: ldc.r4 1 IL_002E: ldloc.2 IL_002F: ldloc.1 IL_0030: div IL_0031: ldc.r4 24 IL_0036: mul IL_0037: div IL_0038: ldarg.0 IL_0039: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::_baseConstructionSpeedText IL_003E: ldnull IL_003F: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0044: ldarg.0 IL_0045: ldarg.2 IL_0046: ldarg.3 IL_0047: callvirt abstract virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_BattleSide() IL_004C: callvirt abstract virtual TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.ComponentInterfaces.SiegeEventModel::GetEffectiveSiegePartyForSide(TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.Core.BattleSideEnum side) IL_0051: stloc.3 IL_0052: ldloc.3 IL_0053: brfalse => Label0 IL_0058: ldloc.3 IL_0059: brtrue => Label1 IL_005E: ldloca.s 5 (System.Nullable`1[System.Int32]) IL_0060: initobj System.Nullable`1[System.Int32] IL_0066: br => Label2 IL_006B: Label1 IL_006B: ldloc.3 IL_006C: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.MobileParty::get_EffectiveEngineer() IL_0071: stloc.s 6 (TaleWorlds.CampaignSystem.Hero) IL_0073: ldloc.s 6 (TaleWorlds.CampaignSystem.Hero) IL_0075: brtrue => Label3 IL_007A: ldloca.s 7 (System.Nullable`1[System.Int32]) IL_007C: initobj System.Nullable`1[System.Int32] IL_0082: ldloc.s 7 (System.Nullable`1[System.Int32]) IL_0084: br => Label4 IL_0089: Label3 IL_0089: ldloc.s 6 (TaleWorlds.CampaignSystem.Hero) IL_008B: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Engineering() IL_0090: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetSkillValue(TaleWorlds.Core.SkillObject skill) IL_0095: newobj System.Void System.Nullable`1::.ctor(System.Int32 value) IL_009A: Label4 IL_009A: stloc.s 5 (System.Nullable`1[System.Int32]) IL_009C: Label2 IL_009C: ldloc.s 5 (System.Nullable`1[System.Int32]) IL_009E: stloc.s 7 (System.Nullable`1[System.Int32]) IL_00A0: ldloca.s 7 (System.Nullable`1[System.Int32]) IL_00A2: call System.Boolean System.Nullable`1::get_HasValue() IL_00A7: brtrue => Label5 IL_00AC: ldc.i4.0 IL_00AD: br => Label6 IL_00B2: Label5 IL_00B2: ldloca.s 7 (System.Nullable`1[System.Int32]) IL_00B4: call System.Int32 System.Nullable`1::GetValueOrDefault() IL_00B9: Label6 IL_00B9: ldc.i4.0 IL_00BA: ble => Label7 IL_00BF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Engineering() IL_00C4: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_SiegeEngineProductionBonus() IL_00C9: ldloc.3 IL_00CA: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00CC: call static System.Void Helpers.SkillHelper::AddSkillBonusForParty(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_00D1: Label0 IL_00D1: Label7 IL_00D1: ldc.r4 0 IL_00D6: stloc.s 4 (System.Single) IL_00D8: ldarg.3 IL_00D9: callvirt abstract virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_BattleSide() IL_00DE: brtrue => Label8 IL_00E3: ldarg.2 IL_00E4: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_00E9: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_00EE: ldfld TaleWorlds.Library.MBList`1 TaleWorlds.CampaignSystem.Settlements.Town::Buildings IL_00F3: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_00F8: stloc.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) .try { IL_00FA: br => Label9 IL_00FF: Label10 IL_00FF: ldloca.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) IL_0101: call virtual TaleWorlds.CampaignSystem.Settlements.Buildings.Building System.Collections.Generic.Enumerator::get_Current() IL_0106: stloc.s 10 (TaleWorlds.CampaignSystem.Settlements.Buildings.Building) IL_0108: ldloc.s 4 (System.Single) IL_010A: ldloc.s 10 (TaleWorlds.CampaignSystem.Settlements.Buildings.Building) IL_010C: ldc.i4.s 9 IL_010E: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Buildings.Building::GetBuildingEffectAmount(TaleWorlds.CampaignSystem.Settlements.Buildings.BuildingEffectEnum effect) IL_0113: add IL_0114: stloc.s 4 (System.Single) IL_0116: Label9 IL_0116: ldloca.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) IL_0118: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_011D: brtrue => Label10 IL_0122: leave => Label11 IL_0127: leave => (autogenerated) } // end try .finally { IL_012C: ldloca.s 9 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building]) IL_012E: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Settlements.Buildings.Building] IL_0134: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0139: endfinally IL_013A: leave => (autogenerated) } // end handler IL_013B: Label11 IL_013B: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_013D: ldloc.s 4 (System.Single) IL_013F: ldc.r4 0.01 IL_0144: mul IL_0145: ldarg.0 IL_0146: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultSiegeEventModel::_constructionSpeedProjectBonusText IL_014B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0150: ldarg.2 IL_0151: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_0156: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_015B: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Settlements.Town::get_Governor() IL_0160: stloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0162: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0164: brtrue => Label12 IL_0169: ldnull IL_016A: br => Label13 IL_016F: Label12 IL_016F: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0171: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_0176: Label13 IL_0176: brfalse => Label14 IL_017B: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_017D: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_0182: ldarg.2 IL_0183: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_0188: bne.un => Label15 IL_018D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Engineering() IL_0192: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_SiegeEngineProductionBonus() IL_0197: ldloc.s 8 (TaleWorlds.CampaignSystem.Hero) IL_0199: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_019E: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01A0: ldc.i4.m1 IL_01A1: ldc.i4.1 IL_01A2: ldc.i4.0 IL_01A3: call static System.Void Helpers.SkillHelper::AddSkillBonusForCharacter(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.CampaignSystem.ExplainedNumber& stat, System.Int32 baseSkillOverride, System.Boolean isBonusPositive, System.Int32 extraSkillValue) IL_01A8: Label8 IL_01A8: Label14 IL_01A8: Label15 IL_01A8: ldarg.2 IL_01A9: brtrue => Label16 IL_01AE: ldnull IL_01AF: br => Label17 IL_01B4: Label16 IL_01B4: ldarg.2 IL_01B5: ldfld TaleWorlds.CampaignSystem.Siege.BesiegerCamp TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegerCamp IL_01BA: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Siege.BesiegerCamp::get_LeaderParty() IL_01BF: Label17 IL_01BF: brfalse => Label18 IL_01C4: ldarg.2 IL_01C5: ldfld TaleWorlds.CampaignSystem.Siege.BesiegerCamp TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegerCamp IL_01CA: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Siege.BesiegerCamp::get_LeaderParty() IL_01CF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Sweatshops() IL_01D4: ldc.i4.1 IL_01D5: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_01DA: brfalse => Label19 IL_01DF: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01E1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Sweatshops() IL_01E6: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_01EB: ldnull IL_01EC: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01F1: Label18 IL_01F1: Label19 IL_01F1: ldloc.3 IL_01F2: brfalse => Label20 IL_01F7: ldarg.3 IL_01F8: callvirt abstract virtual TaleWorlds.CampaignSystem.Siege.SiegeEnginesContainer TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_SiegeEngines() IL_01FD: ldfld TaleWorlds.CampaignSystem.Siege.SiegeEngineConstructionProgress TaleWorlds.CampaignSystem.Siege.SiegeEnginesContainer::SiegePreparations IL_0202: stloc.s 11 (TaleWorlds.CampaignSystem.Siege.SiegeEvent+SiegeEngineConstructionProgress) IL_0204: ldloc.s 11 (TaleWorlds.CampaignSystem.Siege.SiegeEvent+SiegeEngineConstructionProgress) IL_0206: brfalse => Label21 IL_020B: ldloc.s 11 (TaleWorlds.CampaignSystem.Siege.SiegeEvent+SiegeEngineConstructionProgress) IL_020D: callvirt System.Boolean TaleWorlds.CampaignSystem.Siege.SiegeEngineConstructionProgress::get_IsConstructed() IL_0212: brtrue => Label22 IL_0217: ldloc.3 IL_0218: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_021D: ldc.i4.0 IL_021E: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0223: brfalse => Label23 IL_0228: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_022F: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0234: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_0239: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_023E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0243: br => Label24 IL_0248: Label21 IL_0248: Label22 IL_0248: Label23 IL_0248: ldarg.1 IL_0249: callvirt System.Boolean TaleWorlds.Core.SiegeEngineType::get_IsRanged() IL_024E: brtrue => Label25 IL_0253: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_Scaffolds() IL_0258: br => Label26 IL_025D: Label25 IL_025D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0262: Label26 IL_0262: stloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_0264: ldloc.3 IL_0265: ldloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_0267: ldc.i4.0 IL_0268: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_026D: brfalse => Label27 IL_0272: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0274: ldloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_0276: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_027B: ldloc.s 12 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_027D: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0282: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0287: Label20 IL_0287: Label24 IL_0287: Label27 IL_0287: ldarg.3 IL_0288: callvirt abstract virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Siege.ISiegeEventSide::get_BattleSide() IL_028D: brtrue => Label28 IL_0292: ldarg.2 IL_0293: ldfld TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Siege.SiegeEvent::BesiegedSettlement IL_0298: stloc.s 13 (TaleWorlds.CampaignSystem.Settlements.Settlement) IL_029A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_Salvager() IL_029F: stloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02A1: ldloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02A3: ldloc.s 13 (TaleWorlds.CampaignSystem.Settlements.Settlement) IL_02A5: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_02AA: call static System.Boolean Helpers.PerkHelper::GetPerkValueForTown(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Settlements.Town town) IL_02AF: brfalse => Label29 IL_02B4: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02B6: ldloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02B8: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_02BD: ldloc.s 13 (TaleWorlds.CampaignSystem.Settlements.Settlement) IL_02BF: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Settlement::get_Militia() IL_02C4: mul IL_02C5: ldloc.s 14 (TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject) IL_02C7: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_02CC: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02D1: Label28 IL_02D1: Label29 IL_02D1: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02D3: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_02D8: // end original IL_02D8: stloc 15 (System.Single) IL_02DC: ldarga 1 IL_02E0: ldarga 2 IL_02E4: ldarga 3 IL_02E8: ldloca 15 (System.Single) IL_02EC: call static System.Void BannerlordCheats.Patches.Sieges.EnemySiegeBuildingSpeedPercentage::GetConstructionProgressPerHour(TaleWorlds.Core.SiegeEngineType& type, TaleWorlds.CampaignSystem.Siege.SiegeEvent& siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide& side, System.Single& __result) IL_02F1: ldarg 1 IL_02F5: ldarg 2 IL_02F9: ldarg 3 IL_02FD: ldloca 15 (System.Single) IL_0301: call static System.Void BannerlordCheats.Patches.Sieges.SiegeBuildingSpeedMultiplier::GetConstructionProgressPerHour(TaleWorlds.Core.SiegeEngineType type, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, TaleWorlds.CampaignSystem.Siege.ISiegeEventSide side, System.Single& __result) IL_0306: ldloc 15 (System.Single) IL_030A: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultBuildingConstructionModel::CalculateDailyConstructionPower(TaleWorlds.CampaignSystem.Settlements.Town town, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultBuildingConstructionModel::TaleWorlds.CampaignSystem.GameComponents.DefaultBuildingConstructionModel.CalculateDailyConstructionPower_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultBuildingConstructionModel this, TaleWorlds.CampaignSystem.Settlements.Town town, System.Boolean includeDescriptions) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldc.r4 0 IL_0011: ldarg.2 IL_0012: ldnull IL_0013: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0018: ldarg.0 IL_0019: ldarg.1 IL_001A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_001C: ldc.i4.0 IL_001D: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultBuildingConstructionModel::CalculateDailyConstructionPowerInternal(TaleWorlds.CampaignSystem.Settlements.Town town, TaleWorlds.CampaignSystem.ExplainedNumber& result, System.Boolean omitBoost) IL_0022: pop IL_0023: ldloc.0 IL_0024: // end original IL_0024: stloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0028: ldarga 1 IL_002C: ldarga 2 IL_0030: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0034: call static System.Void BannerlordCheats.Patches.Settlements.ConstructionPowerMultiplier::CalculateDailyConstructionPower(TaleWorlds.CampaignSystem.Settlements.Town& town, System.Boolean& includeDescriptions, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0039: ldloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003D: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_FoodChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Town::TaleWorlds.CampaignSystem.Settlements.Town.get_FoodChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Town this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementFoodModel TaleWorlds.CampaignSystem.GameModels::get_SettlementFoodModel() IL_0018: ldarg.0 IL_0019: ldc.i4.1 IL_001A: ldc.i4.0 IL_001B: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementFoodModel::CalculateTownFoodStocksChange(TaleWorlds.CampaignSystem.Settlements.Town town, System.Boolean includeMarketStocks, System.Boolean includeDescriptions) IL_0020: stloc.0 IL_0021: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0023: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0028: // end original IL_0028: stloc 1 (System.Single) IL_002C: ldarga 0 IL_0030: ldloca 1 (System.Single) IL_0034: call static System.Void BannerlordCheats.Patches.Settlements.DailyFoodBonus::FoodChange(TaleWorlds.CampaignSystem.Settlements.Town& __instance, System.Single& __result) IL_0039: ldloc 1 (System.Single) IL_003D: ret DONE ### Patch: System.Int32 TaleWorlds.CampaignSystem.Settlements.Town::get_GarrisonChange() ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.Settlements.Town::TaleWorlds.CampaignSystem.Settlements.Town.get_GarrisonChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Town this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementGarrisonModel TaleWorlds.CampaignSystem.GameModels::get_SettlementGarrisonModel() IL_0018: ldarg.0 IL_0019: call TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Settlements.SettlementComponent::get_Owner() IL_001E: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.PartyBase::get_Settlement() IL_0023: ldc.i4.0 IL_0024: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementGarrisonModel::CalculateGarrisonChange(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, System.Boolean includeDescriptions) IL_0029: stloc.0 IL_002A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_002C: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0031: conv.i4 IL_0032: // end original IL_0032: stloc 1 (System.Int32) IL_0036: ldarga 0 IL_003A: ldloca 1 (System.Int32) IL_003E: call static System.Void BannerlordCheats.Patches.Settlements.DailyGarrisonBonus::GarrisonChange(TaleWorlds.CampaignSystem.Settlements.Town& __instance, System.Int32& __result) IL_0043: ldloc 1 (System.Int32) IL_0047: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Village::get_HearthChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Village::TaleWorlds.CampaignSystem.Settlements.Village.get_HearthChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Village this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementProsperityModel TaleWorlds.CampaignSystem.GameModels::get_SettlementProsperityModel() IL_0018: ldarg.0 IL_0019: ldc.i4.0 IL_001A: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementProsperityModel::CalculateHearthChange(TaleWorlds.CampaignSystem.Settlements.Village village, System.Boolean includeDescriptions) IL_001F: stloc.0 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0027: // end original IL_0027: stloc 1 (System.Single) IL_002B: ldarga 0 IL_002F: ldloca 1 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Settlements.DailyHearthsBonus::HearthChange(TaleWorlds.CampaignSystem.Settlements.Village& __instance, System.Single& __result) IL_0038: ldloc 1 (System.Single) IL_003C: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_LoyaltyChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Town::TaleWorlds.CampaignSystem.Settlements.Town.get_LoyaltyChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Town this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementLoyaltyModel TaleWorlds.CampaignSystem.GameModels::get_SettlementLoyaltyModel() IL_0018: ldarg.0 IL_0019: ldc.i4.0 IL_001A: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementLoyaltyModel::CalculateLoyaltyChange(TaleWorlds.CampaignSystem.Settlements.Town town, System.Boolean includeDescriptions) IL_001F: stloc.0 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0027: // end original IL_0027: stloc 1 (System.Single) IL_002B: ldarga 0 IL_002F: ldloca 1 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Settlements.DailyLoyaltyBonus::LoyaltyChange(TaleWorlds.CampaignSystem.Settlements.Town& __instance, System.Single& __result) IL_0038: ldloc 1 (System.Single) IL_003C: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_MilitiaChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Town::TaleWorlds.CampaignSystem.Settlements.Town.get_MilitiaChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Town this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementMilitiaModel TaleWorlds.CampaignSystem.GameModels::get_SettlementMilitiaModel() IL_0018: ldarg.0 IL_0019: call TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Settlements.SettlementComponent::get_Owner() IL_001E: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.PartyBase::get_Settlement() IL_0023: ldc.i4.0 IL_0024: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementMilitiaModel::CalculateMilitiaChange(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, System.Boolean includeDescriptions) IL_0029: stloc.0 IL_002A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_002C: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0031: // end original IL_0031: stloc 1 (System.Single) IL_0035: ldarga 0 IL_0039: ldloca 1 (System.Single) IL_003D: call static System.Void BannerlordCheats.Patches.Settlements.DailyMilitiaBonusTown::MilitiaChange(TaleWorlds.CampaignSystem.Settlements.Town& __instance, System.Single& __result) IL_0042: ldloc 1 (System.Single) IL_0046: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Village::get_MilitiaChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Village::TaleWorlds.CampaignSystem.Settlements.Village.get_MilitiaChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Village this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementMilitiaModel TaleWorlds.CampaignSystem.GameModels::get_SettlementMilitiaModel() IL_0018: ldarg.0 IL_0019: call TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Settlements.SettlementComponent::get_Owner() IL_001E: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.PartyBase::get_Settlement() IL_0023: ldc.i4.0 IL_0024: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementMilitiaModel::CalculateMilitiaChange(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, System.Boolean includeDescriptions) IL_0029: stloc.0 IL_002A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_002C: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0031: // end original IL_0031: stloc 1 (System.Single) IL_0035: ldarga 0 IL_0039: ldloca 1 (System.Single) IL_003D: call static System.Void BannerlordCheats.Patches.Settlements.DailyMilitiaBonusVillage::MilitiaChange(TaleWorlds.CampaignSystem.Settlements.Village& __instance, System.Single& __result) IL_0042: ldloc 1 (System.Single) IL_0046: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_ProsperityChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Town::TaleWorlds.CampaignSystem.Settlements.Town.get_ProsperityChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Town this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementProsperityModel TaleWorlds.CampaignSystem.GameModels::get_SettlementProsperityModel() IL_0018: ldarg.0 IL_0019: ldc.i4.0 IL_001A: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementProsperityModel::CalculateProsperityChange(TaleWorlds.CampaignSystem.Settlements.Town fortification, System.Boolean includeDescriptions) IL_001F: stloc.0 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0027: // end original IL_0027: stloc 1 (System.Single) IL_002B: ldarga 0 IL_002F: ldloca 1 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Settlements.DailyProsperityBonus::ProsperityChange(TaleWorlds.CampaignSystem.Settlements.Town& __instance, System.Single& __result) IL_0038: ldloc 1 (System.Single) IL_003C: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_SecurityChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Settlements.Town::TaleWorlds.CampaignSystem.Settlements.Town.get_SecurityChange_Patch1(TaleWorlds.CampaignSystem.Settlements.Town this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementSecurityModel TaleWorlds.CampaignSystem.GameModels::get_SettlementSecurityModel() IL_0018: ldarg.0 IL_0019: ldc.i4.0 IL_001A: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementSecurityModel::CalculateSecurityChange(TaleWorlds.CampaignSystem.Settlements.Town town, System.Boolean includeDescriptions) IL_001F: stloc.0 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0027: // end original IL_0027: stloc 1 (System.Single) IL_002B: ldarga 0 IL_002F: ldloca 1 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Settlements.DailySecurityBonus::SecurityChange(TaleWorlds.CampaignSystem.Settlements.Town& __instance, System.Single& __result) IL_0038: ldloc 1 (System.Single) IL_003C: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultDisguiseDetectionModel::CalculateDisguiseDetectionProbability(TaleWorlds.CampaignSystem.Settlements.Settlement settlement) ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultDisguiseDetectionModel::TaleWorlds.CampaignSystem.GameComponents.DefaultDisguiseDetectionModel.CalculateDisguiseDetectionProbability_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultDisguiseDetectionModel this, TaleWorlds.CampaignSystem.Settlements.Settlement settlement) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 4: TaleWorlds.CampaignSystem.Roster.TroopRosterElement IL_0000: Local var 5: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 5 (System.Single) IL_0009: // start original IL_0009: ldc.r4 0 IL_000E: stloc.0 IL_000F: ldc.i4.0 IL_0010: stloc.1 IL_0011: ldarg.1 IL_0012: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_0017: brfalse => Label0 IL_001C: ldarg.1 IL_001D: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_0022: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Settlements.Fief::get_GarrisonParty() IL_0027: brfalse => Label1 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_0032: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Settlements.Fief::get_GarrisonParty() IL_0037: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_003C: callvirt TaleWorlds.Library.MBList`1 TaleWorlds.CampaignSystem.Roster.TroopRoster::GetTroopRoster() IL_0041: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0046: stloc.3 .try { IL_0047: br => Label2 IL_004C: Label3 IL_004C: ldloca.s 3 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Roster.TroopRosterElement]) IL_004E: call virtual TaleWorlds.CampaignSystem.Roster.TroopRosterElement System.Collections.Generic.Enumerator::get_Current() IL_0053: stloc.s 4 (TaleWorlds.CampaignSystem.Roster.TroopRosterElement) IL_0055: ldloc.1 IL_0056: ldloca.s 4 (TaleWorlds.CampaignSystem.Roster.TroopRosterElement) IL_0058: call System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRosterElement::get_Number() IL_005D: add IL_005E: stloc.1 IL_005F: ldloc.0 IL_0060: ldloca.s 4 (TaleWorlds.CampaignSystem.Roster.TroopRosterElement) IL_0062: call System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRosterElement::get_Number() IL_0067: ldloc.s 4 (TaleWorlds.CampaignSystem.Roster.TroopRosterElement) IL_0069: ldfld TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Roster.TroopRosterElement::Character IL_006E: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_0073: mul IL_0074: conv.r4 IL_0075: add IL_0076: stloc.0 IL_0077: Label2 IL_0077: ldloca.s 3 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Roster.TroopRosterElement]) IL_0079: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_007E: brtrue => Label3 IL_0083: leave => Label4 IL_0088: leave => (autogenerated) } // end try .finally { IL_008D: ldloca.s 3 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Roster.TroopRosterElement]) IL_008F: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Roster.TroopRosterElement] IL_0095: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_009A: endfinally IL_009B: leave => (autogenerated) } // end handler IL_009C: Label0 IL_009C: Label1 IL_009C: Label4 IL_009C: ldloc.0 IL_009D: ldc.i4.1 IL_009E: ldloc.1 IL_009F: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_00A4: conv.r4 IL_00A5: div IL_00A6: stloc.0 IL_00A7: ldc.r4 0.3 IL_00AC: ldc.r4 0.003 IL_00B1: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_00B6: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Roguery() IL_00BB: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetSkillValue(TaleWorlds.Core.SkillObject skill) IL_00C0: conv.r4 IL_00C1: mul IL_00C2: add IL_00C3: ldc.r4 0.005 IL_00C8: ldloc.0 IL_00C9: mul IL_00CA: sub IL_00CB: ldc.r4 0.15 IL_00D0: ldc.r4 0.00015 IL_00D5: call static TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Clan::get_PlayerClan() IL_00DA: callvirt System.Single TaleWorlds.CampaignSystem.Clan::get_Renown() IL_00DF: mul IL_00E0: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_00E5: sub IL_00E6: stloc.2 IL_00E7: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_00EC: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_00F1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_TwoFaced() IL_00F6: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_00FB: brfalse => Label5 IL_0100: ldloc.2 IL_0101: ldc.r4 0 IL_0106: ble.un => Label6 IL_010B: ldloc.2 IL_010C: ldloc.2 IL_010D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_TwoFaced() IL_0112: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0117: mul IL_0118: add IL_0119: stloc.2 IL_011A: Label5 IL_011A: Label6 IL_011A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_011F: callvirt System.Boolean TaleWorlds.CampaignSystem.Campaign::get_IsDay() IL_0124: brtrue => Label7 IL_0129: ldloc.2 IL_012A: ldc.r4 0.3 IL_012F: add IL_0130: br => Label8 IL_0135: Label7 IL_0135: ldloc.2 IL_0136: Label8 IL_0136: stloc.2 IL_0137: ldloc.2 IL_0138: ldc.r4 0 IL_013D: ldc.r4 1 IL_0142: call static System.Single TaleWorlds.Library.MathF::Clamp(System.Single value, System.Single minValue, System.Single maxValue) IL_0147: // end original IL_0147: stloc 5 (System.Single) IL_014B: ldarg 1 IL_014F: ldloca 5 (System.Single) IL_0153: call static System.Void BannerlordCheats.Patches.Settlements.DisguiseAlwaysWorks::CalculateDisguiseDetectionProbability(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, System.Single& __result) IL_0158: ldloc 5 (System.Single) IL_015C: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyWageModel::GetTroopRecruitmentCost(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.CampaignSystem.Hero buyerHero, System.Boolean withoutItemCost) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyWageModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartyWageModel.GetTroopRecruitmentCost_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartyWageModel this, TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.CampaignSystem.Hero buyerHero, System.Boolean withoutItemCost) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Boolean IL_0000: Local var 2: TaleWorlds.Core.EquipmentElement IL_0000: Local var 3: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 4: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 4 (System.Int32) IL_0009: // start original IL_0009: ldc.i4.s 10 IL_000B: ldarg.1 IL_000C: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_0011: conv.r4 IL_0012: ldarg.1 IL_0013: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_0018: conv.r4 IL_0019: ldc.r4 0.65 IL_001E: call static System.Single TaleWorlds.Library.MathF::Pow(System.Single x, System.Single y) IL_0023: mul IL_0024: ldc.r4 0.2 IL_0029: mul IL_002A: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_002F: mul IL_0030: stloc.0 IL_0031: ldarg.1 IL_0032: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_0037: ldc.i4.1 IL_0038: bgt => Label0 IL_003D: ldc.i4.s 10 IL_003F: stloc.0 IL_0040: br => Label1 IL_0045: Label0 IL_0045: ldarg.1 IL_0046: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_004B: ldc.i4.6 IL_004C: bgt => Label2 IL_0051: ldc.i4.s 20 IL_0053: stloc.0 IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_005F: ldc.i4.s 11 IL_0061: bgt => Label4 IL_0066: ldc.i4.s 50 IL_0068: stloc.0 IL_0069: br => Label5 IL_006E: Label4 IL_006E: ldarg.1 IL_006F: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_0074: ldc.i4.s 16 IL_0076: bgt => Label6 IL_007B: ldc.i4.s 100 IL_007D: stloc.0 IL_007E: br => Label7 IL_0083: Label6 IL_0083: ldarg.1 IL_0084: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_0089: ldc.i4.s 21 IL_008B: bgt => Label8 IL_0090: ldc.i4 200 IL_0095: stloc.0 IL_0096: br => Label9 IL_009B: Label8 IL_009B: ldarg.1 IL_009C: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_00A1: ldc.i4.s 26 IL_00A3: bgt => Label10 IL_00A8: ldc.i4 400 IL_00AD: stloc.0 IL_00AE: br => Label11 IL_00B3: Label10 IL_00B3: ldarg.1 IL_00B4: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_00B9: ldc.i4.s 31 IL_00BB: bgt => Label12 IL_00C0: ldc.i4 600 IL_00C5: stloc.0 IL_00C6: br => Label13 IL_00CB: Label12 IL_00CB: ldarg.1 IL_00CC: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_00D1: ldc.i4.s 36 IL_00D3: bgt => Label14 IL_00D8: ldc.i4 1000 IL_00DD: stloc.0 IL_00DE: br => Label15 IL_00E3: Label14 IL_00E3: ldc.i4 1500 IL_00E8: stloc.0 IL_00E9: Label1 IL_00E9: Label3 IL_00E9: Label5 IL_00E9: Label7 IL_00E9: Label9 IL_00E9: Label11 IL_00E9: Label13 IL_00E9: Label15 IL_00E9: ldarg.1 IL_00EA: callvirt virtual TaleWorlds.Core.Equipment TaleWorlds.Core.BasicCharacterObject::get_Equipment() IL_00EF: callvirt TaleWorlds.Core.EquipmentElement TaleWorlds.Core.Equipment::get_Horse() IL_00F4: stloc.2 IL_00F5: ldloca.s 2 (TaleWorlds.Core.EquipmentElement) IL_00F7: call TaleWorlds.Core.ItemObject TaleWorlds.Core.EquipmentElement::get_Item() IL_00FC: brfalse => Label16 IL_0101: ldarg.3 IL_0102: brtrue => Label17 IL_0107: ldarg.1 IL_0108: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_010D: ldc.i4.s 26 IL_010F: bge => Label18 IL_0114: ldloc.0 IL_0115: ldc.i4 150 IL_011A: add IL_011B: stloc.0 IL_011C: br => Label19 IL_0121: Label18 IL_0121: ldloc.0 IL_0122: ldc.i4 500 IL_0127: add IL_0128: stloc.0 IL_0129: Label16 IL_0129: Label17 IL_0129: Label19 IL_0129: ldarg.1 IL_012A: callvirt TaleWorlds.CampaignSystem.Occupation TaleWorlds.CampaignSystem.CharacterObject::get_Occupation() IL_012F: ldc.i4.2 IL_0130: beq => Label20 IL_0135: ldarg.1 IL_0136: callvirt TaleWorlds.CampaignSystem.Occupation TaleWorlds.CampaignSystem.CharacterObject::get_Occupation() IL_013B: ldc.i4.s 27 IL_013D: beq => Label21 IL_0142: ldarg.1 IL_0143: callvirt TaleWorlds.CampaignSystem.Occupation TaleWorlds.CampaignSystem.CharacterObject::get_Occupation() IL_0148: ldc.i4.s 30 IL_014A: ceq IL_014C: br => Label22 IL_0151: Label20 IL_0151: Label21 IL_0151: ldc.i4.1 IL_0152: Label22 IL_0152: stloc.1 IL_0153: ldloc.1 IL_0154: brfalse => Label23 IL_0159: ldloc.0 IL_015A: conv.r4 IL_015B: ldc.r4 2 IL_0160: mul IL_0161: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_0166: stloc.0 IL_0167: Label23 IL_0167: ldarg.2 IL_0168: brfalse => Label24 IL_016D: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_016F: ldc.r4 1 IL_0174: ldc.i4.0 IL_0175: ldnull IL_0176: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_017B: ldarg.1 IL_017C: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_0181: ldc.i4.2 IL_0182: blt => Label25 IL_0187: ldarg.2 IL_0188: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_018D: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0192: brfalse => Label26 IL_0197: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0199: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_019E: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_01A3: ldnull IL_01A4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01A9: Label25 IL_01A9: Label26 IL_01A9: ldarg.1 IL_01AA: callvirt System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsInfantry() IL_01AF: brfalse => Label27 IL_01B4: ldarg.2 IL_01B5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ChinkInTheArmor() IL_01BA: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01BF: brfalse => Label28 IL_01C4: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01C6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ChinkInTheArmor() IL_01CB: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_01D0: ldnull IL_01D1: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01D6: Label28 IL_01D6: ldarg.2 IL_01D7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShowOfStrength() IL_01DC: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01E1: brfalse => Label29 IL_01E6: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01E8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShowOfStrength() IL_01ED: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01F8: Label29 IL_01F8: ldarg.2 IL_01F9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_HardyFrontline() IL_01FE: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0203: brfalse => Label30 IL_0208: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_020A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_HardyFrontline() IL_020F: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0214: ldnull IL_0215: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_021A: Label30 IL_021A: ldarg.2 IL_021B: ldfld TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.Hero::Culture IL_0220: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_SturgianRecruitUpgradeFeat() IL_0225: callvirt System.Boolean TaleWorlds.CampaignSystem.CultureObject::HasFeat(TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_022A: brfalse => Label31 IL_022F: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0231: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_SturgianRecruitUpgradeFeat() IL_0236: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_023B: ldstr "str_culture" IL_0240: ldnull IL_0241: call static TaleWorlds.Localization.TextObject TaleWorlds.Core.GameTexts::FindText(System.String id, System.String variation) IL_0246: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_024B: br => Label32 IL_0250: Label27 IL_0250: ldarg.1 IL_0251: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0256: brfalse => Label33 IL_025B: ldarg.2 IL_025C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_RenownedArcher() IL_0261: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0266: brfalse => Label34 IL_026B: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_026D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_RenownedArcher() IL_0272: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0277: ldnull IL_0278: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_027D: Label34 IL_027D: ldarg.2 IL_027E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Piercer() IL_0283: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0288: brfalse => Label35 IL_028D: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Piercer() IL_0294: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0299: ldnull IL_029A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_029F: Label31 IL_029F: Label32 IL_029F: Label33 IL_029F: Label35 IL_029F: ldarg.1 IL_02A0: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsMounted() IL_02A5: brfalse => Label36 IL_02AA: ldarg.2 IL_02AB: ldfld TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.Hero::Culture IL_02B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_KhuzaitRecruitUpgradeFeat() IL_02B5: callvirt System.Boolean TaleWorlds.CampaignSystem.CultureObject::HasFeat(TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_02BA: brfalse => Label37 IL_02BF: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_KhuzaitRecruitUpgradeFeat() IL_02C6: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_02CB: ldstr "str_culture" IL_02D0: ldnull IL_02D1: call static TaleWorlds.Localization.TextObject TaleWorlds.Core.GameTexts::FindText(System.String id, System.String variation) IL_02D6: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02DB: Label36 IL_02DB: Label37 IL_02DB: ldarg.2 IL_02DC: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::get_IsPartyLeader() IL_02E1: brfalse => Label38 IL_02E6: ldarg.2 IL_02E7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Frugal() IL_02EC: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_02F1: brfalse => Label39 IL_02F6: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Frugal() IL_02FD: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0302: ldnull IL_0303: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0308: Label38 IL_0308: Label39 IL_0308: ldloc.1 IL_0309: brfalse => Label40 IL_030E: ldarg.2 IL_030F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_SwordForBarter() IL_0314: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0319: brfalse => Label41 IL_031E: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_SwordForBarter() IL_0325: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_032A: ldnull IL_032B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0330: Label41 IL_0330: ldarg.2 IL_0331: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_SlickNegotiator() IL_0336: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_033B: brfalse => Label42 IL_0340: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0342: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_SlickNegotiator() IL_0347: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_034C: ldnull IL_034D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0352: Label40 IL_0352: Label42 IL_0352: ldc.i4.1 IL_0353: ldloc.0 IL_0354: conv.r4 IL_0355: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0357: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_035C: mul IL_035D: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_0362: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_0367: stloc.0 IL_0368: Label24 IL_0368: ldloc.0 IL_0369: // end original IL_0369: stloc 4 (System.Int32) IL_036D: ldarg 1 IL_0371: ldarg 2 IL_0375: ldarg 3 IL_0379: ldloca 4 (System.Int32) IL_037D: call static System.Void BannerlordCheats.Patches.Settlements.FreeTroopRecruitment::GetTroopRecruitmentCost(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.CampaignSystem.Hero buyerHero, System.Boolean withoutItemCost, System.Int32& __result) IL_0382: ldloc 4 (System.Int32) IL_0386: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel::GetPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel::TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel.GetPrice_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel this, TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarga.s 1 IL_000C: call TaleWorlds.Core.ItemObject TaleWorlds.Core.EquipmentElement::get_Item() IL_0011: ldarg.2 IL_0012: ldarg.3 IL_0013: ldarg.s 5 IL_0015: ldarg.s 6 IL_0017: ldarg.s 7 IL_0019: ldarg.s 4 IL_001B: call System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel::GetPriceFactor(TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Party.MobileParty tradingParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Single inStoreValue, System.Single supply, System.Single demand, System.Boolean isSelling) IL_0020: stloc.0 IL_0021: ldarga.s 1 IL_0023: call System.Int32 TaleWorlds.Core.EquipmentElement::get_ItemValue() IL_0028: conv.r4 IL_0029: ldloc.0 IL_002A: mul IL_002B: stloc.1 IL_002C: ldarg.s 4 IL_002E: brtrue => Label0 IL_0033: ldloc.1 IL_0034: call static System.Int32 TaleWorlds.Library.MathF::Ceiling(System.Single f) IL_0039: br => Label1 IL_003E: Label0 IL_003E: ldloc.1 IL_003F: call static System.Int32 TaleWorlds.Library.MathF::Floor(System.Single f) IL_0044: Label1 IL_0044: stloc.2 IL_0045: ldarg.s 4 IL_0047: brtrue => Label2 IL_004C: ldarg.3 IL_004D: brtrue => Label3 IL_0052: ldnull IL_0053: br => Label4 IL_0058: Label3 IL_0058: ldarg.3 IL_0059: call TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_005E: Label4 IL_005E: brfalse => Label5 IL_0063: ldarg.3 IL_0064: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0069: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsCaravan() IL_006E: brfalse => Label6 IL_0073: ldarg.2 IL_0074: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_SilverTongue() IL_0079: ldc.i4.1 IL_007A: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_007F: brfalse => Label7 IL_0084: ldloc.2 IL_0085: conv.r4 IL_0086: ldc.r4 1 IL_008B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_SilverTongue() IL_0090: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0095: sub IL_0096: mul IL_0097: call static System.Int32 TaleWorlds.Library.MathF::Ceiling(System.Single f) IL_009C: stloc.2 IL_009D: Label2 IL_009D: Label5 IL_009D: Label6 IL_009D: Label7 IL_009D: ldloc.2 IL_009E: ldc.i4.1 IL_009F: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_00A4: // end original IL_00A4: stloc 3 (System.Int32) IL_00A8: ldarg 1 IL_00AC: ldarg 2 IL_00B0: ldarg 3 IL_00B4: ldarg 4 IL_00B8: ldarg 5 IL_00BC: ldarg 6 IL_00C0: ldarg 7 IL_00C4: ldloca 3 (System.Int32) IL_00C8: call static System.Void BannerlordCheats.Patches.Settlements.ItemTradingCostPercentage::GetPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand, System.Int32& __result) IL_00CD: ldloc 3 (System.Int32) IL_00D1: ret DONE ### Patch: System.Boolean TaleWorlds.MountAndBlade.Mission::get_DoesMissionRequireCivilianEquipment() ### Replacement: static System.Boolean TaleWorlds.MountAndBlade.Mission::TaleWorlds.MountAndBlade.Mission.get_DoesMissionRequireCivilianEquipment_Patch1(TaleWorlds.MountAndBlade.Mission this) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld System.Boolean TaleWorlds.MountAndBlade.Mission::_doesMissionRequireCivilianEquipment IL_000F: // end original IL_000F: stloc 0 (System.Boolean) IL_0013: ldarga 0 IL_0017: ldloca 0 (System.Boolean) IL_001B: call static System.Void BannerlordCheats.Patches.Settlements.NeverRequireCivilianEquipment::DoesMissionRequireCivilianEquipment(TaleWorlds.MountAndBlade.Mission& __instance, System.Boolean& __result) IL_0020: ldloc 0 (System.Boolean) IL_0024: ret DONE ### Patch: virtual System.Boolean TaleWorlds.CampaignSystem.GameComponents.DefaultBribeCalculationModel::IsBribeNotNeededToEnterKeep(TaleWorlds.CampaignSystem.Settlements.Settlement settlement) ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.GameComponents.DefaultBribeCalculationModel::TaleWorlds.CampaignSystem.GameComponents.DefaultBribeCalculationModel.IsBribeNotNeededToEnterKeep_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultBribeCalculationModel this, TaleWorlds.CampaignSystem.Settlements.Settlement settlement) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementAccessModel/AccessDetails IL_0000: Local var 1: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Boolean) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementAccessModel TaleWorlds.CampaignSystem.GameModels::get_SettlementAccessModel() IL_0018: ldarg.1 IL_0019: ldloca.s 0 (TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementAccessModel+AccessDetails) IL_001B: callvirt abstract virtual System.Void TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementAccessModel::CanMainHeroEnterLordsHall(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, TaleWorlds.CampaignSystem.ComponentInterfaces.AccessDetails& accessDetails) IL_0020: ldloc.0 IL_0021: ldfld TaleWorlds.CampaignSystem.ComponentInterfaces.AccessLevel TaleWorlds.CampaignSystem.ComponentInterfaces.AccessDetails::AccessLevel IL_0026: ldc.i4.1 IL_0027: bne.un => Label0 IL_002C: ldloc.0 IL_002D: ldfld TaleWorlds.CampaignSystem.ComponentInterfaces.AccessLevel TaleWorlds.CampaignSystem.ComponentInterfaces.AccessDetails::AccessLevel IL_0032: ldc.i4.1 IL_0033: bne.un => Label1 IL_0038: ldloc.0 IL_0039: ldfld TaleWorlds.CampaignSystem.ComponentInterfaces.LimitedAccessSolution TaleWorlds.CampaignSystem.ComponentInterfaces.AccessDetails::LimitedAccessSolution IL_003E: ldc.i4.1 IL_003F: ceq IL_0041: ldc.i4.0 IL_0042: ceq IL_0044: br => Label2 IL_0049: Label1 IL_0049: ldc.i4.0 IL_004A: br => Label3 IL_004F: Label0 IL_004F: ldc.i4.1 IL_0050: // end original IL_0050: Label2 IL_0050: Label3 IL_0050: stloc 1 (System.Boolean) IL_0054: ldarg 1 IL_0058: ldloca 1 (System.Boolean) IL_005C: call static System.Void BannerlordCheats.Patches.Settlements.NoBribeToEnterKeep::IsBribeNotNeededToEnterKeep(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, System.Boolean& __result) IL_0061: ldloc 1 (System.Boolean) IL_0065: ret DONE ### Patch: static System.Boolean TaleWorlds.CampaignSystem.CampaignBehaviors.RebellionsCampaignBehavior::CheckRebellionEvent(TaleWorlds.CampaignSystem.Settlements.Settlement settlement) ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.CampaignBehaviors.RebellionsCampaignBehavior::TaleWorlds.CampaignSystem.CampaignBehaviors.RebellionsCampaignBehavior.CheckRebellionEvent_Patch1(TaleWorlds.CampaignSystem.Settlements.Settlement settlement) IL_0000: Local var 0: System.Single IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 4: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 5: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 5 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_000F: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Town::get_Loyalty() IL_0014: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0019: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_001E: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementLoyaltyModel TaleWorlds.CampaignSystem.GameModels::get_SettlementLoyaltyModel() IL_0023: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.SettlementLoyaltyModel::get_RebellionStartLoyaltyThreshold() IL_0028: conv.r4 IL_0029: bgt.un => Label0 IL_002E: ldarg.0 IL_002F: callvirt System.Single TaleWorlds.CampaignSystem.Settlements.Settlement::get_Militia() IL_0034: stloc.0 IL_0035: ldarg.0 IL_0036: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_003B: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Settlements.Fief::get_GarrisonParty() IL_0040: stloc.1 IL_0041: ldloc.1 IL_0042: brtrue => Label1 IL_0047: ldc.r4 0 IL_004C: br => Label2 IL_0051: Label1 IL_0051: ldloc.1 IL_0052: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_0057: callvirt System.Single TaleWorlds.CampaignSystem.Party.PartyBase::get_TotalStrength() IL_005C: Label2 IL_005C: stloc.2 IL_005D: ldarg.0 IL_005E: callvirt TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.CampaignSystem.Settlements.Settlement::get_Parties() IL_0063: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0068: stloc.3 .try { IL_0069: br => Label3 IL_006E: Label6 IL_006E: ldloca.s 3 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_0070: call virtual TaleWorlds.CampaignSystem.Party.MobileParty System.Collections.Generic.Enumerator::get_Current() IL_0075: stloc.s 4 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_0077: ldloc.s 4 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_0079: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsLordParty() IL_007E: brfalse => Label4 IL_0083: ldloc.s 4 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_0085: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_008A: ldarg.0 IL_008B: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Settlements.Settlement::get_MapFaction() IL_0090: call static System.Boolean TaleWorlds.CampaignSystem.FactionManager::IsAlliedWithFaction(TaleWorlds.CampaignSystem.IFaction faction1, TaleWorlds.CampaignSystem.IFaction faction2) IL_0095: brfalse => Label5 IL_009A: ldloc.2 IL_009B: ldloc.s 4 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_009D: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_00A2: callvirt System.Single TaleWorlds.CampaignSystem.Party.PartyBase::get_TotalStrength() IL_00A7: add IL_00A8: stloc.2 IL_00A9: Label3 IL_00A9: Label4 IL_00A9: Label5 IL_00A9: ldloca.s 3 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_00AB: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_00B0: brtrue => Label6 IL_00B5: leave => Label7 IL_00BA: leave => (autogenerated) } // end try .finally { IL_00BF: ldloca.s 3 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_00C1: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty] IL_00C7: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_00CC: endfinally IL_00CD: leave => (autogenerated) } // end handler IL_00CE: Label7 IL_00CE: ldloc.0 IL_00CF: ldarg.0 IL_00D0: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Settlements.Settlement::get_Party() IL_00D5: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_PrisonRoster() IL_00DA: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_00DF: conv.r4 IL_00E0: add IL_00E1: ldloc.2 IL_00E2: ldc.r4 1 IL_00E7: mul IL_00E8: clt.un IL_00EA: ldc.i4.0 IL_00EB: ceq IL_00ED: br => Label12 IL_00F2: Label0 IL_00F2: ldc.i4.0 IL_00F3: // end original IL_00F3: Label12 IL_00F3: stloc 5 (System.Boolean) IL_00F7: ldarga 0 IL_00FB: ldloca 5 (System.Boolean) IL_00FF: call static System.Void BannerlordCheats.Patches.Settlements.RebellionChancePercentage::CheckRebellionEvent(TaleWorlds.CampaignSystem.Settlements.Settlement& settlement, System.Boolean& __result) IL_0104: ldloc 5 (System.Boolean) IL_0108: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel::GetPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel::TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel.GetPrice_Patch2(TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel this, TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarga.s 1 IL_000C: call TaleWorlds.Core.ItemObject TaleWorlds.Core.EquipmentElement::get_Item() IL_0011: ldarg.2 IL_0012: ldarg.3 IL_0013: ldarg.s 5 IL_0015: ldarg.s 6 IL_0017: ldarg.s 7 IL_0019: ldarg.s 4 IL_001B: call System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultTradeItemPriceFactorModel::GetPriceFactor(TaleWorlds.Core.ItemObject item, TaleWorlds.CampaignSystem.Party.MobileParty tradingParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Single inStoreValue, System.Single supply, System.Single demand, System.Boolean isSelling) IL_0020: stloc.0 IL_0021: ldarga.s 1 IL_0023: call System.Int32 TaleWorlds.Core.EquipmentElement::get_ItemValue() IL_0028: conv.r4 IL_0029: ldloc.0 IL_002A: mul IL_002B: stloc.1 IL_002C: ldarg.s 4 IL_002E: brtrue => Label0 IL_0033: ldloc.1 IL_0034: call static System.Int32 TaleWorlds.Library.MathF::Ceiling(System.Single f) IL_0039: br => Label1 IL_003E: Label0 IL_003E: ldloc.1 IL_003F: call static System.Int32 TaleWorlds.Library.MathF::Floor(System.Single f) IL_0044: Label1 IL_0044: stloc.2 IL_0045: ldarg.s 4 IL_0047: brtrue => Label2 IL_004C: ldarg.3 IL_004D: brtrue => Label3 IL_0052: ldnull IL_0053: br => Label4 IL_0058: Label3 IL_0058: ldarg.3 IL_0059: call TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_005E: Label4 IL_005E: brfalse => Label5 IL_0063: ldarg.3 IL_0064: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0069: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsCaravan() IL_006E: brfalse => Label6 IL_0073: ldarg.2 IL_0074: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_SilverTongue() IL_0079: ldc.i4.1 IL_007A: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_007F: brfalse => Label7 IL_0084: ldloc.2 IL_0085: conv.r4 IL_0086: ldc.r4 1 IL_008B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_SilverTongue() IL_0090: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0095: sub IL_0096: mul IL_0097: call static System.Int32 TaleWorlds.Library.MathF::Ceiling(System.Single f) IL_009C: stloc.2 IL_009D: Label2 IL_009D: Label5 IL_009D: Label6 IL_009D: Label7 IL_009D: ldloc.2 IL_009E: ldc.i4.1 IL_009F: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_00A4: // end original IL_00A4: stloc 3 (System.Int32) IL_00A8: ldarg 1 IL_00AC: ldarg 2 IL_00B0: ldarg 3 IL_00B4: ldarg 4 IL_00B8: ldarg 5 IL_00BC: ldarg 6 IL_00C0: ldarg 7 IL_00C4: ldloca 3 (System.Int32) IL_00C8: call static System.Void BannerlordCheats.Patches.Settlements.ItemTradingCostPercentage::GetPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand, System.Int32& __result) IL_00CD: ldarg 1 IL_00D1: ldarg 2 IL_00D5: ldarg 3 IL_00D9: ldarg 4 IL_00DD: ldarg 5 IL_00E1: ldarg 6 IL_00E5: ldarg 7 IL_00E9: ldloca 3 (System.Int32) IL_00ED: call static System.Void BannerlordCheats.Patches.Settlements.SellingPriceMultiplier::GetPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty clientParty, TaleWorlds.CampaignSystem.Party.PartyBase merchant, System.Boolean isSelling, System.Single inStoreValue, System.Single supply, System.Single demand, System.Int32& __result) IL_00F2: ldloc 3 (System.Int32) IL_00F6: ret DONE ### Patch: System.Int32 SandBox.Tournaments.MissionLogics.TournamentBehavior::GetMaximumBet() ### Replacement: static System.Int32 SandBox.Tournaments.MissionLogics.TournamentBehavior::SandBox.Tournaments.MissionLogics.TournamentBehavior.GetMaximumBet_Patch1(SandBox.Tournaments.MissionLogics.TournamentBehavior this) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldc.i4 150 IL_000E: stloc.0 IL_000F: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0014: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DeepPockets() IL_0019: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_001E: brfalse => Label0 IL_0023: ldloc.0 IL_0024: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DeepPockets() IL_0029: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_002E: conv.i4 IL_002F: mul IL_0030: stloc.0 IL_0031: Label0 IL_0031: ldloc.0 IL_0032: // end original IL_0032: stloc 1 (System.Int32) IL_0036: ldloca 1 (System.Int32) IL_003A: call static System.Void BannerlordCheats.Patches.Settlements.TournamentMaximumBetMultiplier::GetMaximumBet(System.Int32& __result) IL_003F: ldloc 1 (System.Int32) IL_0043: ret DONE ### Patch: static System.Void TaleWorlds.CampaignSystem.Actions.StartBattleAction::ApplyStartRaid(TaleWorlds.CampaignSystem.Party.MobileParty attackerParty, TaleWorlds.CampaignSystem.Settlements.Settlement settlement) ### Replacement: static System.Void TaleWorlds.CampaignSystem.Actions.StartBattleAction::TaleWorlds.CampaignSystem.Actions.StartBattleAction.ApplyStartRaid_Patch1(TaleWorlds.CampaignSystem.Party.MobileParty attackerParty, TaleWorlds.CampaignSystem.Settlements.Settlement settlement) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarga 0 IL_001B: ldarga 1 IL_001F: call static System.Boolean BannerlordCheats.Patches.Settlements.VillagesNeverRaided::ApplyStartRaid(TaleWorlds.CampaignSystem.Party.MobileParty& attackerParty, TaleWorlds.CampaignSystem.Settlements.Settlement& settlement) IL_0024: stloc 0 (System.Boolean) IL_0028: Label1 IL_0028: nop IL_0029: ldloc 0 (System.Boolean) IL_002D: brfalse => Label0 IL_0032: // start original IL_0032: ldarg.0 IL_0033: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_0038: ldarg.1 IL_0039: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Settlements.Settlement::get_Party() IL_003E: ldarg.1 IL_003F: ldc.i4.2 IL_0040: call static System.Void TaleWorlds.CampaignSystem.Actions.StartBattleAction::ApplyInternal(TaleWorlds.CampaignSystem.Party.PartyBase attackerParty, TaleWorlds.CampaignSystem.Party.PartyBase defenderParty, System.Object subject, TaleWorlds.CampaignSystem.MapEvents.BattleTypes battleType) IL_0045: // end original IL_0045: Label0 IL_0045: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetEffectivePartyMorale(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, System.Boolean includeDescription) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel.GetEffectivePartyMorale_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel this, TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, System.Boolean includeDescription) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldc.r4 50 IL_0011: ldarg.2 IL_0012: ldnull IL_0013: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0018: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_001A: ldarg.1 IL_001B: callvirt System.Single TaleWorlds.CampaignSystem.Party.MobileParty::get_RecentEventsMorale() IL_0020: ldarg.0 IL_0021: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::_recentEventsText IL_0026: ldnull IL_0027: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_002C: ldarg.0 IL_002D: ldarg.1 IL_002E: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0030: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetMoraleEffectsFromSkill(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& bonus) IL_0035: ldarg.1 IL_0036: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMilitia() IL_003B: brtrue => Label0 IL_0040: ldarg.1 IL_0041: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_0046: brfalse => Label1 IL_004B: Label0 IL_004B: ldarg.1 IL_004C: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMilitia() IL_0051: brfalse => Label2 IL_0056: ldarg.1 IL_0057: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_HomeSettlement() IL_005C: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsStarving() IL_0061: brfalse => Label3 IL_0066: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0068: ldarg.0 IL_0069: ldarg.1 IL_006A: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetStarvationMoralePenalty(TaleWorlds.CampaignSystem.Party.MobileParty party) IL_006F: conv.r4 IL_0070: ldarg.0 IL_0071: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::_starvationMoraleText IL_0076: ldnull IL_0077: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_007C: br => Label4 IL_0081: Label2 IL_0081: ldarg.1 IL_0082: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0087: call static System.Boolean Helpers.SettlementHelper::IsGarrisonStarving(TaleWorlds.CampaignSystem.Settlements.Settlement settlement) IL_008C: brfalse => Label5 IL_0091: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0093: ldarg.0 IL_0094: ldarg.1 IL_0095: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetStarvationMoralePenalty(TaleWorlds.CampaignSystem.Party.MobileParty party) IL_009A: conv.r4 IL_009B: ldarg.0 IL_009C: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::_starvationMoraleText IL_00A1: ldnull IL_00A2: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_00A7: br => Label6 IL_00AC: Label1 IL_00AC: ldarg.1 IL_00AD: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_00B2: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsStarving() IL_00B7: brfalse => Label7 IL_00BC: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00BE: ldarg.0 IL_00BF: ldarg.1 IL_00C0: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetStarvationMoralePenalty(TaleWorlds.CampaignSystem.Party.MobileParty party) IL_00C5: conv.r4 IL_00C6: ldarg.0 IL_00C7: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::_starvationMoraleText IL_00CC: ldnull IL_00CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_00D2: Label3 IL_00D2: Label4 IL_00D2: Label5 IL_00D2: Label6 IL_00D2: Label7 IL_00D2: ldarg.1 IL_00D3: ldfld System.Single TaleWorlds.CampaignSystem.Party.MobileParty::HasUnpaidWages IL_00D8: ldc.r4 0 IL_00DD: ble.un => Label8 IL_00E2: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00E4: ldarg.1 IL_00E5: ldfld System.Single TaleWorlds.CampaignSystem.Party.MobileParty::HasUnpaidWages IL_00EA: ldarg.0 IL_00EB: ldarg.1 IL_00EC: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetNoWageMoralePenalty(TaleWorlds.CampaignSystem.Party.MobileParty party) IL_00F1: conv.r4 IL_00F2: mul IL_00F3: ldarg.0 IL_00F4: ldfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::_noWageMoraleText IL_00F9: ldnull IL_00FA: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_00FF: Label8 IL_00FF: ldarg.0 IL_0100: ldarg.1 IL_0101: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0103: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetMoraleEffectsFromPerks(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& bonus) IL_0108: ldarg.0 IL_0109: ldarg.1 IL_010A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_010C: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::CalculateFoodVarietyMoraleBonus(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& result) IL_0111: ldarg.0 IL_0112: ldarg.1 IL_0113: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0115: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultPartyMoraleModel::GetPartySizeMoraleEffect(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber& result) IL_011A: ldloc.0 IL_011B: // end original IL_011B: stloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_011F: ldarga 1 IL_0123: ldarga 2 IL_0127: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_012B: call static System.Void BannerlordCheats.Patches.Party.ExtraPartyMorale::GetEffectivePartyMorale(TaleWorlds.CampaignSystem.Party.MobileParty& mobileParty, System.Boolean& includeDescription, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0130: ldloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0134: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::GetPartyPrisonerSizeLimit(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel.GetPartyPrisonerSizeLimit_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel this, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Boolean includeDescriptions) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldarg.1 IL_000B: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsSettlement() IL_0010: brfalse => Label0 IL_0015: ldarg.0 IL_0016: ldarg.1 IL_0017: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.PartyBase::get_Settlement() IL_001C: ldarg.2 IL_001D: call TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::CalculateSettlementPartyPrisonerSizeLimitInternal(TaleWorlds.CampaignSystem.Settlements.Settlement settlement, System.Boolean includeDescriptions) IL_0022: br => Label1 IL_0027: Label0 IL_0027: ldarg.0 IL_0028: ldarg.1 IL_0029: ldarg.2 IL_002A: call TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::CalculateMobilePartyPrisonerSizeLimitInternal(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Boolean includeDescriptions) IL_002F: // end original IL_002F: Label1 IL_002F: stloc 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0033: ldarga 1 IL_0037: ldarga 2 IL_003B: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003F: call static System.Void BannerlordCheats.Patches.Party.ExtraPartyPrisonerSize::Postfix(TaleWorlds.CampaignSystem.Party.PartyBase& party, System.Boolean& includeDescriptions, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0044: ldloc 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0048: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel::CalculateDailyFoodConsumptionf(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel::TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel.CalculateDailyFoodConsumptionf_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldarg.0 IL_000B: ldarg.1 IL_000C: ldarga.s 2 IL_000E: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel::CalculatePerkEffects(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& result) IL_0013: ldarga.s 2 IL_0015: ldc.r4 0 IL_001A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::LimitMax(System.Single maxValue) IL_001F: ldarg.2 IL_0020: // end original IL_0020: stloc 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0024: ldarg 1 IL_0028: ldarg 2 IL_002C: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0030: call static System.Void BannerlordCheats.Patches.Party.FoodConsumptionPercentage::CalculateDailyFoodConsumptionf(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0035: ldloc 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0039: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultCompanionHiringPriceCalculationModel::GetCompanionHiringPrice(TaleWorlds.CampaignSystem.Hero companion) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultCompanionHiringPriceCalculationModel::TaleWorlds.CampaignSystem.GameComponents.DefaultCompanionHiringPriceCalculationModel.GetCompanionHiringPrice_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultCompanionHiringPriceCalculationModel this, TaleWorlds.CampaignSystem.Hero companion) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.Settlements.Town IL_0000: Local var 2: System.Single IL_0000: Local var 3: TaleWorlds.Core.EquipmentIndex IL_0000: Local var 4: TaleWorlds.Core.EquipmentElement IL_0000: Local var 5: TaleWorlds.Core.EquipmentIndex IL_0000: Local var 6: TaleWorlds.Core.EquipmentElement IL_0000: Local var 7: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 7 (System.Int32) IL_0009: // start original IL_0009: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000B: ldc.r4 0 IL_0010: ldc.i4.0 IL_0011: ldnull IL_0012: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0017: ldarg.1 IL_0018: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_001D: dup IL_001E: brtrue => Label0 IL_0023: pop IL_0024: ldnull IL_0025: br => Label1 IL_002A: Label0 IL_002A: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_002F: Label1 IL_002F: stloc.1 IL_0030: ldloc.1 IL_0031: brtrue => Label2 IL_0036: ldnull IL_0037: ldnull IL_0038: call static TaleWorlds.CampaignSystem.Settlements.Settlement Helpers.SettlementHelper::FindNearestTown(System.Func`2 condition, TaleWorlds.CampaignSystem.Map.IMapPoint toMapPoint) IL_003D: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_0042: stloc.1 IL_0043: Label2 IL_0043: ldc.r4 0 IL_0048: stloc.2 IL_0049: ldc.i4.0 IL_004A: stloc.3 IL_004B: br => Label3 IL_0050: Label5 IL_0050: ldarg.1 IL_0051: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0056: callvirt virtual TaleWorlds.Core.Equipment TaleWorlds.Core.BasicCharacterObject::get_Equipment() IL_005B: ldloc.3 IL_005C: callvirt TaleWorlds.Core.EquipmentElement TaleWorlds.Core.Equipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0061: stloc.s 4 (TaleWorlds.Core.EquipmentElement) IL_0063: ldloca.s 4 (TaleWorlds.Core.EquipmentElement) IL_0065: call TaleWorlds.Core.ItemObject TaleWorlds.Core.EquipmentElement::get_Item() IL_006A: brfalse => Label4 IL_006F: ldloc.2 IL_0070: ldloc.1 IL_0071: ldloc.s 4 (TaleWorlds.Core.EquipmentElement) IL_0073: ldnull IL_0074: ldc.i4.0 IL_0075: callvirt virtual System.Int32 TaleWorlds.CampaignSystem.Settlements.SettlementComponent::GetItemPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty tradingParty, System.Boolean isSelling) IL_007A: conv.r4 IL_007B: add IL_007C: stloc.2 IL_007D: Label4 IL_007D: ldloc.3 IL_007E: ldc.i4.1 IL_007F: add IL_0080: stloc.3 IL_0081: Label3 IL_0081: ldloc.3 IL_0082: ldc.i4.s 12 IL_0084: blt => Label5 IL_0089: ldc.i4.0 IL_008A: stloc.s 5 (TaleWorlds.Core.EquipmentIndex) IL_008C: br => Label6 IL_0091: Label8 IL_0091: ldarg.1 IL_0092: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0097: callvirt TaleWorlds.Core.Equipment TaleWorlds.CampaignSystem.CharacterObject::get_FirstCivilianEquipment() IL_009C: ldloc.s 5 (TaleWorlds.Core.EquipmentIndex) IL_009E: callvirt TaleWorlds.Core.EquipmentElement TaleWorlds.Core.Equipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_00A3: stloc.s 6 (TaleWorlds.Core.EquipmentElement) IL_00A5: ldloca.s 6 (TaleWorlds.Core.EquipmentElement) IL_00A7: call TaleWorlds.Core.ItemObject TaleWorlds.Core.EquipmentElement::get_Item() IL_00AC: brfalse => Label7 IL_00B1: ldloc.2 IL_00B2: ldloc.1 IL_00B3: ldloc.s 6 (TaleWorlds.Core.EquipmentElement) IL_00B5: ldnull IL_00B6: ldc.i4.0 IL_00B7: callvirt virtual System.Int32 TaleWorlds.CampaignSystem.Settlements.SettlementComponent::GetItemPrice(TaleWorlds.Core.EquipmentElement itemRosterElement, TaleWorlds.CampaignSystem.Party.MobileParty tradingParty, System.Boolean isSelling) IL_00BC: conv.r4 IL_00BD: add IL_00BE: stloc.2 IL_00BF: Label7 IL_00BF: ldloc.s 5 (TaleWorlds.Core.EquipmentIndex) IL_00C1: ldc.i4.1 IL_00C2: add IL_00C3: stloc.s 5 (TaleWorlds.Core.EquipmentIndex) IL_00C5: Label6 IL_00C5: ldloc.s 5 (TaleWorlds.Core.EquipmentIndex) IL_00C7: ldc.i4.s 12 IL_00C9: blt => Label8 IL_00CE: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00D0: ldloc.2 IL_00D1: ldc.r4 2 IL_00D6: div IL_00D7: ldnull IL_00D8: ldnull IL_00D9: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_00DE: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00E0: ldarg.1 IL_00E1: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_00E6: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::get_Level() IL_00EB: ldc.i4.s 10 IL_00ED: mul IL_00EE: conv.r4 IL_00EF: ldnull IL_00F0: ldnull IL_00F1: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_00F6: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_00FB: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::get_IsPartyLeader() IL_0100: brfalse => Label9 IL_0105: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_010A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_PaidInPromise() IL_010F: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0114: brfalse => Label10 IL_0119: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_011B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_PaidInPromise() IL_0120: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0125: ldnull IL_0126: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_012B: Label9 IL_012B: Label10 IL_012B: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0130: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Hero::get_PartyBelongedTo() IL_0135: brfalse => Label11 IL_013A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_GreatInvestor() IL_013F: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0144: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Hero::get_PartyBelongedTo() IL_0149: ldc.i4.0 IL_014A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_014C: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0151: Label11 IL_0151: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0153: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0158: conv.i4 IL_0159: // end original IL_0159: stloc 7 (System.Int32) IL_015D: ldarg 1 IL_0161: ldloca 7 (System.Int32) IL_0165: call static System.Void BannerlordCheats.Patches.Party.FreeCompanionHiring::GetCompanionHiringPrice(TaleWorlds.CampaignSystem.Hero companion, System.Int32& __result) IL_016A: ldloc 7 (System.Int32) IL_016E: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyTroopUpgradeModel::GetGoldCostForUpgrade(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject characterObject, TaleWorlds.CampaignSystem.CharacterObject upgradeTarget) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPartyTroopUpgradeModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartyTroopUpgradeModel.GetGoldCostForUpgrade_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartyTroopUpgradeModel this, TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject characterObject, TaleWorlds.CampaignSystem.CharacterObject upgradeTarget) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: System.Boolean IL_0000: Local var 3: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 4: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 4 (System.Int32) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyWageModel TaleWorlds.CampaignSystem.GameModels::get_PartyWageModel() IL_0018: dup IL_0019: ldarg.3 IL_001A: ldnull IL_001B: ldc.i4.1 IL_001C: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.PartyWageModel::GetTroopRecruitmentCost(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.CampaignSystem.Hero buyerHero, System.Boolean withoutItemCost) IL_0021: stloc.0 IL_0022: ldarg.2 IL_0023: ldnull IL_0024: ldc.i4.1 IL_0025: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.PartyWageModel::GetTroopRecruitmentCost(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.CampaignSystem.Hero buyerHero, System.Boolean withoutItemCost) IL_002A: stloc.1 IL_002B: ldarg.2 IL_002C: callvirt TaleWorlds.CampaignSystem.Occupation TaleWorlds.CampaignSystem.CharacterObject::get_Occupation() IL_0031: ldc.i4.2 IL_0032: beq => Label0 IL_0037: ldarg.2 IL_0038: callvirt TaleWorlds.CampaignSystem.Occupation TaleWorlds.CampaignSystem.CharacterObject::get_Occupation() IL_003D: ldc.i4.s 27 IL_003F: ceq IL_0041: br => Label1 IL_0046: Label0 IL_0046: ldc.i4.1 IL_0047: Label1 IL_0047: stloc.2 IL_0048: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004A: ldloc.0 IL_004B: ldloc.1 IL_004C: sub IL_004D: conv.r4 IL_004E: ldloc.2 IL_004F: brfalse => Label2 IL_0054: ldc.r4 3 IL_0059: br => Label3 IL_005E: Label2 IL_005E: ldc.r4 2 IL_0063: Label3 IL_0063: div IL_0064: ldc.i4.0 IL_0065: ldnull IL_0066: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_006B: ldarg.1 IL_006C: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0071: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_SoundReserves() IL_0076: ldc.i4.0 IL_0077: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_007C: brfalse => Label4 IL_0081: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_SoundReserves() IL_0086: ldarg.1 IL_0087: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_008C: ldc.i4.1 IL_008D: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_008F: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0094: Label4 IL_0094: ldarg.2 IL_0095: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_009A: brfalse => Label5 IL_009F: ldarg.1 IL_00A0: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_00A5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_RenownedArcher() IL_00AA: ldc.i4.1 IL_00AB: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_00B0: brfalse => Label6 IL_00B5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_RenownedArcher() IL_00BA: ldarg.1 IL_00BB: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_00C0: ldc.i4.0 IL_00C1: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00C3: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_00C8: Label5 IL_00C8: Label6 IL_00C8: ldarg.2 IL_00C9: callvirt System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsInfantry() IL_00CE: brfalse => Label7 IL_00D3: ldarg.1 IL_00D4: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_00D9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ThrowingCompetitions() IL_00DE: ldc.i4.0 IL_00DF: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_00E4: brfalse => Label8 IL_00E9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ThrowingCompetitions() IL_00EE: ldarg.1 IL_00EF: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_00F4: ldc.i4.1 IL_00F5: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00F7: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_00FC: Label7 IL_00FC: Label8 IL_00FC: ldarg.2 IL_00FD: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsMounted() IL_0102: brfalse => Label9 IL_0107: ldarg.1 IL_0108: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_KhuzaitRecruitUpgradeFeat() IL_010D: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_0112: brfalse => Label10 IL_0117: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0119: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_KhuzaitRecruitUpgradeFeat() IL_011E: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_0123: ldstr "str_culture" IL_0128: ldnull IL_0129: call static TaleWorlds.Localization.TextObject TaleWorlds.Core.GameTexts::FindText(System.String id, System.String variation) IL_012E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0133: br => Label11 IL_0138: Label9 IL_0138: Label10 IL_0138: ldarg.2 IL_0139: callvirt System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsInfantry() IL_013E: brfalse => Label12 IL_0143: ldarg.1 IL_0144: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_SturgianRecruitUpgradeFeat() IL_0149: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_014E: brfalse => Label13 IL_0153: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0155: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_SturgianRecruitUpgradeFeat() IL_015A: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_015F: ldstr "str_culture" IL_0164: ldnull IL_0165: call static TaleWorlds.Localization.TextObject TaleWorlds.Core.GameTexts::FindText(System.String id, System.String variation) IL_016A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_016F: Label11 IL_016F: Label12 IL_016F: Label13 IL_016F: ldloc.2 IL_0170: brfalse => Label14 IL_0175: ldarg.1 IL_0176: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_017B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Contractors() IL_0180: ldc.i4.0 IL_0181: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0186: brfalse => Label15 IL_018B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_Contractors() IL_0190: ldarg.1 IL_0191: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0196: ldc.i4.1 IL_0197: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0199: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_019E: Label14 IL_019E: Label15 IL_019E: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01A0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_01A5: conv.i4 IL_01A6: // end original IL_01A6: stloc 4 (System.Int32) IL_01AA: ldarga 1 IL_01AE: ldarga 2 IL_01B2: ldarga 3 IL_01B6: ldloca 4 (System.Int32) IL_01BA: call static System.Void BannerlordCheats.Patches.Party.FreeTroopUpgrades::GetGoldCostForUpgrade(TaleWorlds.CampaignSystem.Party.PartyBase& party, TaleWorlds.CampaignSystem.CharacterObject& characterObject, TaleWorlds.CampaignSystem.CharacterObject& upgradeTarget, System.Int32& __result) IL_01BF: ldloc 4 (System.Int32) IL_01C3: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.PlayerCaptivityCampaignBehavior::CheckCaptivityChange(System.Single dt) ### Replacement: static System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.PlayerCaptivityCampaignBehavior::TaleWorlds.CampaignSystem.CampaignBehaviors.PlayerCaptivityCampaignBehavior.CheckCaptivityChange_Patch1(TaleWorlds.CampaignSystem.CampaignBehaviors.PlayerCaptivityCampaignBehavior this, System.Single dt) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Int32 IL_0000: Local var 6: System.Int32 IL_0000: Local var 7: System.Collections.Generic.IEnumerator`1 IL_0000: Local var 8: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: // start original IL_0000: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0005: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_000A: brfalse => Label0 IL_000F: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0014: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0019: callvirt virtual System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsActive() IL_001E: brtrue => Label1 IL_0023: ldstr "menu_captivity_end_by_party_removed" IL_0028: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_002D: br => Label55 IL_0032: Label0 IL_0032: Label1 IL_0032: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0037: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_003C: brfalse => Label2 IL_0041: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0046: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_004B: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0050: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_0055: bne.un => Label3 IL_005A: ldstr "menu_captivity_end_by_ally_party_saved" IL_005F: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_0064: br => Label56 IL_0069: Label2 IL_0069: Label3 IL_0069: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_006E: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_0073: call static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_MainParty() IL_0078: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_007D: call static System.Boolean TaleWorlds.CampaignSystem.FactionManager::IsAtWarAgainstFaction(TaleWorlds.CampaignSystem.IFaction faction1, TaleWorlds.CampaignSystem.IFaction faction2) IL_0082: brtrue => Label4 IL_0087: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_008C: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_0091: call static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_MainParty() IL_0096: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_009B: beq => Label5 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CrimeModel TaleWorlds.CampaignSystem.GameModels::get_CrimeModel() IL_00AF: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_00B4: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_00B9: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.ComponentInterfaces.CrimeModel::IsPlayerCrimeRatingModerate(TaleWorlds.CampaignSystem.IFaction faction) IL_00BE: brtrue => Label6 IL_00C3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00C8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00CD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CrimeModel TaleWorlds.CampaignSystem.GameModels::get_CrimeModel() IL_00D2: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_00D7: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_00DC: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.ComponentInterfaces.CrimeModel::IsPlayerCrimeRatingSevere(TaleWorlds.CampaignSystem.IFaction faction) IL_00E1: brtrue => Label7 IL_00E6: Label5 IL_00E6: ldstr "menu_captivity_end_no_more_enemies" IL_00EB: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_00F0: br => Label57 IL_00F5: Label4 IL_00F5: Label6 IL_00F5: Label7 IL_00F5: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_00FA: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_00FF: brfalse => Label8 IL_0104: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0109: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_010E: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0113: brfalse => Label9 IL_0118: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_011D: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0122: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0127: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsTown() IL_012C: brfalse => Label10 IL_0131: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0136: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_013B: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0140: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0145: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_014A: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Settlements.Settlement::get_MapFaction() IL_014F: bne.un => Label11 IL_0154: call static TaleWorlds.CampaignSystem.CampaignTime TaleWorlds.CampaignSystem.CampaignTime::get_Now() IL_0159: call static System.Void TaleWorlds.CampaignSystem.PlayerCaptivity::set_LastCheckTime(TaleWorlds.CampaignSystem.CampaignTime value) IL_015E: call static TaleWorlds.Core.Game TaleWorlds.Core.Game::get_Current() IL_0163: callvirt TaleWorlds.Core.GameStateManager TaleWorlds.Core.Game::get_GameStateManager() IL_0168: callvirt TaleWorlds.Core.GameState TaleWorlds.Core.GameStateManager::get_ActiveState() IL_016D: isinst TaleWorlds.CampaignSystem.GameState.MapState IL_0172: brfalse => Label12 IL_0177: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_017C: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0181: callvirt TaleWorlds.CampaignSystem.CampaignTimeControlMode TaleWorlds.CampaignSystem.Campaign::get_TimeControlMode() IL_0186: stfld TaleWorlds.CampaignSystem.CampaignTimeControlMode TaleWorlds.CampaignSystem.Campaign::LastTimeControlMode IL_018B: Label12 IL_018B: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0190: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0195: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_019A: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Settlements.Settlement::get_Party() IL_019F: call static System.Void TaleWorlds.CampaignSystem.PlayerCaptivity::set_CaptorParty(TaleWorlds.CampaignSystem.Party.PartyBase value) IL_01A4: ldstr "menu_captivity_transfer_to_town" IL_01A9: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_01AE: br => Label58 IL_01B3: Label8 IL_01B3: Label9 IL_01B3: Label10 IL_01B3: Label11 IL_01B3: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_01B8: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsSettlement() IL_01BD: brfalse => Label13 IL_01C2: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_01C7: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.PartyBase::get_Settlement() IL_01CC: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsVillage() IL_01D1: brtrue => Label14 IL_01D6: Label13 IL_01D6: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_01DB: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_01E0: brfalse => Label15 IL_01E5: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_01EA: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_01EF: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsVillager() IL_01F4: brtrue => Label16 IL_01F9: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_01FE: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0203: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsCaravan() IL_0208: brfalse => Label17 IL_020D: Label14 IL_020D: Label16 IL_020D: ldstr "menu_captivity_end_no_more_enemies" IL_0212: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_0217: br => Label59 IL_021C: Label15 IL_021C: Label17 IL_021C: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0221: callvirt System.Single TaleWorlds.CampaignSystem.Campaign::get_PlayerProgress() IL_0226: stloc.0 IL_0227: ldc.r4 0.4 IL_022C: ldloc.0 IL_022D: ldc.r4 0.4 IL_0232: mul IL_0233: add IL_0234: ldc.r4 24 IL_0239: mul IL_023A: stloc.1 IL_023B: ldloc.1 IL_023C: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0241: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_0246: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsSettlement() IL_024B: brtrue => Label18 IL_0250: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0255: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_025A: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_025F: brfalse => Label19 IL_0264: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0269: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_026E: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.PartyBase::get_LeaderHero() IL_0273: brtrue => Label20 IL_0278: Label19 IL_0278: ldc.r4 1 IL_027D: br => Label21 IL_0282: Label20 IL_0282: ldc.r4 1.5 IL_0287: br => Label22 IL_028C: Label18 IL_028C: ldc.r4 2 IL_0291: Label21 IL_0291: Label22 IL_0291: mul IL_0292: stloc.1 IL_0293: ldarg.0 IL_0294: call static TaleWorlds.CampaignSystem.CampaignTime TaleWorlds.CampaignSystem.PlayerCaptivity::get_LastCheckTime() IL_0299: ldloc.1 IL_029A: call System.Boolean TaleWorlds.CampaignSystem.CampaignBehaviors.PlayerCaptivityCampaignBehavior::CheckTimeElapsedMoreThanHours(TaleWorlds.CampaignSystem.CampaignTime eventBeginTime, System.Single hoursToWait) IL_029F: brfalse => Label23 IL_02A4: call static TaleWorlds.CampaignSystem.CampaignTime TaleWorlds.CampaignSystem.CampaignTime::get_Now() IL_02A9: call static System.Void TaleWorlds.CampaignSystem.PlayerCaptivity::set_LastCheckTime(TaleWorlds.CampaignSystem.CampaignTime value) IL_02AE: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02B3: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_02B8: ldfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CountOfOffers IL_02BD: brtrue => Label24 IL_02C2: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C7: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_02CC: callvirt System.Void TaleWorlds.CampaignSystem.PlayerCaptivity::SetRansomAmount() IL_02D1: br => Label25 IL_02D6: Label24 IL_02D6: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02DB: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_02E0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02E5: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_02EA: ldfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CurrentRansomAmount IL_02EF: conv.r4 IL_02F0: ldc.r4 0.8 IL_02F5: mul IL_02F6: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02FB: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_0300: ldfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CountOfOffers IL_0305: conv.r4 IL_0306: ldc.r4 0.05 IL_030B: mul IL_030C: sub IL_030D: conv.i4 IL_030E: ldc.i4.1 IL_030F: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_0314: stfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CurrentRansomAmount IL_0319: Label25 IL_0319: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_031E: stloc.2 IL_031F: ldc.r4 0 IL_0324: stloc.3 IL_0325: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_032A: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_032F: brfalse => Label26 IL_0334: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0339: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_033E: brfalse => Label27 IL_0343: ldc.i4.0 IL_0344: stloc.s 5 (System.Int32) IL_0346: ldc.i4.0 IL_0347: stloc.s 6 (System.Int32) IL_0349: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_034E: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_0353: callvirt System.Collections.Generic.IEnumerable`1 TaleWorlds.CampaignSystem.MapEvents.MapEvent::get_InvolvedParties() IL_0358: callvirt abstract virtual System.Collections.Generic.IEnumerator`1 System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_035D: stloc.s 7 (System.Collections.Generic.IEnumerator`1[TaleWorlds.CampaignSystem.Party.PartyBase]) .try { IL_035F: br => Label28 IL_0364: Label31 IL_0364: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[TaleWorlds.CampaignSystem.Party.PartyBase]) IL_0366: callvirt abstract virtual TaleWorlds.CampaignSystem.Party.PartyBase System.Collections.Generic.IEnumerator`1::get_Current() IL_036B: stloc.s 8 (TaleWorlds.CampaignSystem.Party.PartyBase) IL_036D: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.PartyBase) IL_036F: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_Side() IL_0374: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0379: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_Side() IL_037E: bne.un => Label29 IL_0383: ldloc.s 5 (System.Int32) IL_0385: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.PartyBase) IL_0387: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_MemberRoster() IL_038C: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_0391: add IL_0392: stloc.s 5 (System.Int32) IL_0394: br => Label30 IL_0399: Label29 IL_0399: ldloc.s 6 (System.Int32) IL_039B: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.PartyBase) IL_039D: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_MemberRoster() IL_03A2: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_03A7: add IL_03A8: stloc.s 6 (System.Int32) IL_03AA: Label28 IL_03AA: Label30 IL_03AA: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[TaleWorlds.CampaignSystem.Party.PartyBase]) IL_03AC: callvirt abstract virtual System.Boolean System.Collections.IEnumerator::MoveNext() IL_03B1: brtrue => Label31 IL_03B6: leave => Label32 IL_03BB: leave => (autogenerated) } // end try .finally { IL_03C0: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[TaleWorlds.CampaignSystem.Party.PartyBase]) IL_03C2: brfalse => Label33 IL_03C7: ldloc.s 7 (System.Collections.Generic.IEnumerator`1[TaleWorlds.CampaignSystem.Party.PartyBase]) IL_03C9: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_03CE: Label33 IL_03CE: endfinally IL_03CF: leave => (autogenerated) } // end handler IL_03D0: Label32 IL_03D0: ldloc.s 5 (System.Int32) IL_03D2: conv.r4 IL_03D3: ldloc.s 6 (System.Int32) IL_03D5: conv.r4 IL_03D6: ldc.r4 3 IL_03DB: mul IL_03DC: ldc.r4 1 IL_03E1: add IL_03E2: bge.un => Label34 IL_03E7: ldc.r4 1 IL_03EC: ldloc.s 5 (System.Int32) IL_03EE: conv.r4 IL_03EF: ldloc.s 6 (System.Int32) IL_03F1: conv.r4 IL_03F2: ldc.r4 3 IL_03F7: mul IL_03F8: ldc.r4 1 IL_03FD: add IL_03FE: div IL_03FF: sub IL_0400: stloc.3 IL_0401: ldloc.3 IL_0402: ldc.r4 2 IL_0407: div IL_0408: stloc.3 IL_0409: Label26 IL_0409: Label27 IL_0409: Label34 IL_0409: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_040E: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_0413: ldfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CountOfOffers IL_0418: conv.r4 IL_0419: ldc.r4 1 IL_041E: add IL_041F: ldc.r4 8 IL_0424: div IL_0425: stloc.s 4 (System.Single) IL_0427: ldloc.3 IL_0428: ldc.r4 0 IL_042D: ble.un => Label35 IL_0432: ldloc.s 4 (System.Single) IL_0434: ldc.r4 1 IL_0439: ldloc.3 IL_043A: sub IL_043B: call static System.Single TaleWorlds.Library.MathF::Pow(System.Single x, System.Single y) IL_0440: stloc.s 4 (System.Single) IL_0442: Label35 IL_0442: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0447: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_044C: brfalse => Label36 IL_0451: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0456: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_045B: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_0460: brfalse => Label37 IL_0465: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_046A: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_046F: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.PartyBase::get_LeaderHero() IL_0474: brfalse => Label38 IL_0479: ldloc.s 4 (System.Single) IL_047B: ldloc.s 4 (System.Single) IL_047D: call static System.Single TaleWorlds.Library.MathF::Sqrt(System.Single x) IL_0482: mul IL_0483: stloc.s 4 (System.Single) IL_0485: br => Label39 IL_048A: Label37 IL_048A: Label38 IL_048A: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_048F: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_0494: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsSettlement() IL_0499: brfalse => Label40 IL_049E: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_04A3: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_04A8: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.PartyBase::get_Settlement() IL_04AD: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsHideout() IL_04B2: brfalse => Label41 IL_04B7: ldloc.s 4 (System.Single) IL_04B9: ldloc.s 4 (System.Single) IL_04BB: call static System.Single TaleWorlds.Library.MathF::Sqrt(System.Single x) IL_04C0: mul IL_04C1: stloc.s 4 (System.Single) IL_04C3: br => Label42 IL_04C8: Label41 IL_04C8: ldloc.s 4 (System.Single) IL_04CA: ldloc.s 4 (System.Single) IL_04CC: mul IL_04CD: stloc.s 4 (System.Single) IL_04CF: Label39 IL_04CF: Label40 IL_04CF: Label42 IL_04CF: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_04D4: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_04D9: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_04DE: brfalse => Label43 IL_04E3: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_04E8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_FleetFooted() IL_04ED: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_04F2: brfalse => Label44 IL_04F7: ldloc.s 4 (System.Single) IL_04F9: ldc.r4 1 IL_04FE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_FleetFooted() IL_0503: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0508: add IL_0509: mul IL_050A: stloc.s 4 (System.Single) IL_050C: Label36 IL_050C: Label43 IL_050C: Label44 IL_050C: ldloc.2 IL_050D: ldloc.s 4 (System.Single) IL_050F: bge.un => Label45 IL_0514: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0519: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_051E: brfalse => Label46 IL_0523: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.PlayerCaptivity::get_CaptorParty() IL_0528: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_052D: brfalse => Label47 IL_0532: ldstr "menu_escape_captivity_during_battle" IL_0537: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_053C: br => Label64 IL_0541: Label46 IL_0541: Label47 IL_0541: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0546: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_054B: brtrue => Label48 IL_0550: ldstr "menu_captivity_end_wilderness_escape" IL_0555: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_055A: br => Label65 IL_055F: Label48 IL_055F: ldstr "menu_captivity_end_prison_escape" IL_0564: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_0569: br => Label66 IL_056E: Label45 IL_056E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0573: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_0578: dup IL_0579: ldfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CountOfOffers IL_057E: ldc.i4.1 IL_057F: add IL_0580: stfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CountOfOffers IL_0585: ldloc.2 IL_0586: ldc.r4 0.5 IL_058B: bge.un => Label49 IL_0590: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0595: callvirt TaleWorlds.CampaignSystem.PlayerCaptivity TaleWorlds.CampaignSystem.Campaign::get_PlayerCaptivity() IL_059A: ldfld System.Int32 TaleWorlds.CampaignSystem.PlayerCaptivity::CurrentRansomAmount IL_059F: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_05A4: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::get_Gold() IL_05A9: bgt => Label50 IL_05AE: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_05B3: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Hero::get_PartyBelongedToAsPrisoner() IL_05B8: dup IL_05B9: brtrue => Label51 IL_05BE: pop IL_05BF: ldnull IL_05C0: br => Label52 IL_05C5: Label51 IL_05C5: call TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_05CA: Label52 IL_05CA: brtrue => Label53 IL_05CF: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_05D4: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Hero::get_CurrentSettlement() IL_05D9: brfalse => Label54 IL_05DE: ldstr "menu_captivity_end_propose_ransom_in_prison" IL_05E3: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_05E8: br => Label67 IL_05ED: Label54 IL_05ED: ldstr "menu_captivity_end_propose_ransom_wilderness" IL_05F2: call static System.Void TaleWorlds.CampaignSystem.GameMenus.GameMenu::SwitchToMenu(System.String menuId) IL_05F7: // end original IL_05F7: Label23 IL_05F7: Label49 IL_05F7: Label50 IL_05F7: Label53 IL_05F7: Label55 IL_05F7: Label56 IL_05F7: Label57 IL_05F7: Label58 IL_05F7: Label59 IL_05F7: Label64 IL_05F7: Label65 IL_05F7: Label66 IL_05F7: Label67 IL_05F7: ldarg 1 IL_05FB: call static System.Void BannerlordCheats.Patches.Party.InstantEscape::CheckCaptivityChange(System.Single dt) IL_0600: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPrisonerRecruitmentCalculationModel::CalculateRecruitableNumber(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject character) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultPrisonerRecruitmentCalculationModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPrisonerRecruitmentCalculationModel.CalculateRecruitableNumber_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPrisonerRecruitmentCalculationModel this, TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject character) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 2 (System.Int32) IL_0009: // start original IL_0009: ldarg.2 IL_000A: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_000F: brtrue => Label0 IL_0014: ldarg.1 IL_0015: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_PrisonRoster() IL_001A: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_Count() IL_001F: brfalse => Label1 IL_0024: ldarg.1 IL_0025: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_PrisonRoster() IL_002A: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalRegulars() IL_002F: ldc.i4.0 IL_0030: bgt => Label2 IL_0035: Label0 IL_0035: Label1 IL_0035: ldc.i4.0 IL_0036: br => Label3 IL_003B: Label2 IL_003B: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0040: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0045: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PrisonerRecruitmentCalculationModel TaleWorlds.CampaignSystem.GameModels::get_PrisonerRecruitmentCalculationModel() IL_004A: ldarg.2 IL_004B: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.PrisonerRecruitmentCalculationModel::GetConformityNeededToRecruitPrisoner(TaleWorlds.CampaignSystem.CharacterObject character) IL_0050: stloc.0 IL_0051: ldarg.1 IL_0052: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_PrisonRoster() IL_0057: ldarg.2 IL_0058: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::GetElementXp(TaleWorlds.CampaignSystem.CharacterObject character) IL_005D: ldarg.1 IL_005E: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_PrisonRoster() IL_0063: ldarg.2 IL_0064: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::GetElementNumber(TaleWorlds.CampaignSystem.CharacterObject character) IL_0069: stloc.1 IL_006A: ldloc.0 IL_006B: div IL_006C: ldloc.1 IL_006D: call static System.Int32 TaleWorlds.Library.MathF::Min(System.Int32 a, System.Int32 b) IL_0072: // end original IL_0072: Label3 IL_0072: stloc 2 (System.Int32) IL_0076: ldarga 1 IL_007A: ldarga 2 IL_007E: ldloca 2 (System.Int32) IL_0082: call static System.Void BannerlordCheats.Patches.Party.InstantPrisonerRecruitment::CalculateRecruitableNumber(TaleWorlds.CampaignSystem.Party.PartyBase& party, TaleWorlds.CampaignSystem.CharacterObject& character, System.Int32& __result) IL_0087: ldloc 2 (System.Int32) IL_008B: ret DONE ### Patch: static System.Void TaleWorlds.CampaignSystem.Actions.EndCaptivityAction::ApplyByEscape(TaleWorlds.CampaignSystem.Hero character, TaleWorlds.CampaignSystem.Hero facilitator) ### Replacement: static System.Void TaleWorlds.CampaignSystem.Actions.EndCaptivityAction::TaleWorlds.CampaignSystem.Actions.EndCaptivityAction.ApplyByEscape_Patch1(TaleWorlds.CampaignSystem.Hero character, TaleWorlds.CampaignSystem.Hero facilitator) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 0 IL_001B: ldarg 1 IL_001F: call static System.Boolean BannerlordCheats.Patches.Party.NoPrisonerEscape::ApplyByEscape(TaleWorlds.CampaignSystem.Hero character, TaleWorlds.CampaignSystem.Hero facilitator) IL_0024: stloc 0 (System.Boolean) IL_0028: Label1 IL_0028: nop IL_0029: ldloc 0 (System.Boolean) IL_002D: brfalse => Label0 IL_0032: // start original IL_0032: ldarg.0 IL_0033: ldc.i4.3 IL_0034: ldarg.1 IL_0035: call static System.Void TaleWorlds.CampaignSystem.Actions.EndCaptivityAction::ApplyInternal(TaleWorlds.CampaignSystem.Hero prisoner, TaleWorlds.CampaignSystem.Actions.EndCaptivityDetail detail, TaleWorlds.CampaignSystem.Hero facilitatior) IL_003A: // end original IL_003A: Label0 IL_003A: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::GetDailyHealingHpForHeroes(TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel.GetDailyHealingHpForHeroes_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.Library.Vec2 IL_0000: Local var 2: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 2 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldarg.1 IL_000B: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_0010: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsStarving() IL_0015: brfalse => Label0 IL_001A: ldarg.1 IL_001B: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0020: brtrue => Label1 IL_0025: ldc.r4 -19 IL_002A: ldarg.2 IL_002B: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::_starvingText IL_0030: newobj System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0035: br => Label18 IL_003A: Label0 IL_003A: Label1 IL_003A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003C: ldc.r4 11 IL_0041: ldarg.2 IL_0042: ldnull IL_0043: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0048: ldarg.1 IL_0049: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_004E: brtrue => Label2 IL_0053: ldarg.1 IL_0054: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMilitia() IL_0059: brtrue => Label3 IL_005E: ldarg.1 IL_005F: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMoving() IL_0064: brtrue => Label4 IL_0069: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_TriageTent() IL_006E: ldarg.1 IL_006F: ldc.i4.1 IL_0070: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0072: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0077: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_AGoodDaysRest() IL_007C: ldarg.1 IL_007D: ldc.i4.1 IL_007E: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0080: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0085: br => Label5 IL_008A: Label4 IL_008A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_WalkItOff() IL_008F: ldarg.1 IL_0090: ldc.i4.1 IL_0091: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0093: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0098: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_WalkItOff() IL_009D: ldarg.1 IL_009E: ldc.i4.1 IL_009F: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00A1: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_00A6: Label2 IL_00A6: Label3 IL_00A6: Label5 IL_00A6: ldarg.1 IL_00A7: callvirt System.Single TaleWorlds.CampaignSystem.Party.MobileParty::get_Morale() IL_00AC: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00B1: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00B6: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyMoraleModel TaleWorlds.CampaignSystem.GameModels::get_PartyMoraleModel() IL_00BB: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyMoraleModel::get_HighMoraleValue() IL_00C0: blt.un => Label6 IL_00C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_BestMedicine() IL_00CA: ldarg.1 IL_00CB: ldc.i4.1 IL_00CC: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00CE: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_00D3: Label6 IL_00D3: ldarg.1 IL_00D4: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_00D9: brfalse => Label7 IL_00DE: ldarg.1 IL_00DF: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_00E4: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsHideout() IL_00E9: brtrue => Label8 IL_00EE: ldarg.1 IL_00EF: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_00F4: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsFortification() IL_00F9: brfalse => Label9 IL_00FE: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0100: ldc.r4 8 IL_0105: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::_settlementText IL_010A: ldnull IL_010B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0110: Label9 IL_0110: ldarg.1 IL_0111: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0116: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsTown() IL_011B: brfalse => Label10 IL_0120: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_PristineStreets() IL_0125: ldarg.1 IL_0126: ldc.i4.0 IL_0127: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0129: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_012E: Label10 IL_012E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_GoodLogdings() IL_0133: ldarg.1 IL_0134: ldc.i4.1 IL_0135: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0137: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_013C: br => Label11 IL_0141: Label7 IL_0141: Label8 IL_0141: ldarg.1 IL_0142: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMoving() IL_0147: brtrue => Label12 IL_014C: ldarg.1 IL_014D: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_0152: brfalse => Label13 IL_0157: ldarg.1 IL_0158: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_015D: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsVillage() IL_0162: brfalse => Label14 IL_0167: ldarg.1 IL_0168: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_016D: callvirt virtual TaleWorlds.Library.Vec2 TaleWorlds.CampaignSystem.Settlements.Settlement::get_Position2D() IL_0172: stloc.1 IL_0173: ldloca.s 1 (TaleWorlds.Library.Vec2) IL_0175: ldarg.1 IL_0176: callvirt virtual TaleWorlds.Library.Vec2 TaleWorlds.CampaignSystem.Party.MobileParty::get_Position2D() IL_017B: call System.Single TaleWorlds.Library.Vec2::DistanceSquared(TaleWorlds.Library.Vec2 v) IL_0180: ldc.r4 2 IL_0185: bge.un => Label15 IL_018A: ldarg.1 IL_018B: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_0190: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsUnderRaid() IL_0195: brtrue => Label16 IL_019A: ldarg.1 IL_019B: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_01A0: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsRaided() IL_01A5: brtrue => Label17 IL_01AA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_BushDoctor() IL_01AF: ldarg.1 IL_01B0: ldc.i4.0 IL_01B1: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01B3: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_01B8: Label11 IL_01B8: Label12 IL_01B8: Label13 IL_01B8: Label14 IL_01B8: Label15 IL_01B8: Label16 IL_01B8: Label17 IL_01B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Medicine() IL_01BD: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_HealingRateBonusForHeroes() IL_01C2: ldarg.1 IL_01C3: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01C5: call static System.Void Helpers.SkillHelper::AddSkillBonusForParty(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_01CA: ldloc.0 IL_01CB: // end original IL_01CB: Label18 IL_01CB: stloc 2 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01CF: ldarga 1 IL_01D3: ldarga 2 IL_01D7: ldloca 2 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01DB: call static System.Void BannerlordCheats.Patches.Party.PartyHealingMultiplierHeroes::GetDailyHealingHpForHeroes(TaleWorlds.CampaignSystem.Party.MobileParty& party, System.Boolean& includeDescriptions, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_01E0: ldloc 2 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01E4: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::GetDailyHealingForRegulars(TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel.GetDailyHealingForRegulars_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: TaleWorlds.Library.Vec2 IL_0000: Local var 4: System.Single IL_0000: Local var 5: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldc.r4 0 IL_0011: ldarg.2 IL_0012: ldnull IL_0013: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0018: ldarg.1 IL_0019: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_001E: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsStarving() IL_0023: brtrue => Label0 IL_0028: ldarg.1 IL_0029: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_002E: brfalse => Label1 IL_0033: ldarg.1 IL_0034: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0039: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsStarving() IL_003E: brfalse => Label2 IL_0043: Label0 IL_0043: ldarg.1 IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_0049: brfalse => Label3 IL_004E: ldarg.1 IL_004F: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0054: call static System.Boolean Helpers.SettlementHelper::IsGarrisonStarving(TaleWorlds.CampaignSystem.Settlements.Settlement settlement) IL_0059: brfalse => Label4 IL_005E: ldarg.1 IL_005F: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_0064: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalRegulars() IL_0069: conv.r4 IL_006A: ldc.r4 0.1 IL_006F: mul IL_0070: call static System.Int32 TaleWorlds.Core.MBRandom::RoundRandomized(System.Single f) IL_0075: stloc.1 IL_0076: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0078: ldloc.1 IL_0079: neg IL_007A: conv.r4 IL_007B: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::_starvingText IL_0080: ldnull IL_0081: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0086: br => Label5 IL_008B: Label3 IL_008B: ldarg.1 IL_008C: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_0091: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalRegulars() IL_0096: stloc.2 IL_0097: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0099: ldloc.2 IL_009A: neg IL_009B: conv.r4 IL_009C: ldc.r4 0.25 IL_00A1: mul IL_00A2: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::_starvingText IL_00A7: ldnull IL_00A8: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_00AD: br => Label6 IL_00B2: Label1 IL_00B2: Label2 IL_00B2: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00B4: ldc.r4 5 IL_00B9: ldarg.2 IL_00BA: ldnull IL_00BB: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_00C0: ldarg.1 IL_00C1: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_00C6: brfalse => Label7 IL_00CB: ldarg.1 IL_00CC: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_00D1: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsTown() IL_00D6: brfalse => Label8 IL_00DB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Medicine() IL_00E0: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_GovernorHealingRateBonus() IL_00E5: ldarg.1 IL_00E6: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_00EB: ldfld TaleWorlds.CampaignSystem.Settlements.Town TaleWorlds.CampaignSystem.Settlements.Settlement::Town IL_00F0: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00F2: call static System.Void Helpers.SkillHelper::AddSkillBonusForTown(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.Settlements.Town town, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_00F7: br => Label9 IL_00FC: Label7 IL_00FC: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Medicine() IL_0101: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_HealingRateBonusForRegulars() IL_0106: ldarg.1 IL_0107: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0109: call static System.Void Helpers.SkillHelper::AddSkillBonusForParty(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_010E: Label8 IL_010E: Label9 IL_010E: ldarg.1 IL_010F: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_0114: brtrue => Label10 IL_0119: ldarg.1 IL_011A: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMilitia() IL_011F: brtrue => Label11 IL_0124: ldarg.1 IL_0125: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMoving() IL_012A: brtrue => Label12 IL_012F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_TriageTent() IL_0134: ldarg.1 IL_0135: ldc.i4.1 IL_0136: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0138: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_013D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_AGoodDaysRest() IL_0142: ldarg.1 IL_0143: ldc.i4.1 IL_0144: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0146: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_014B: br => Label13 IL_0150: Label12 IL_0150: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_WalkItOff() IL_0155: ldarg.1 IL_0156: ldc.i4.1 IL_0157: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0159: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_015E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_WalkItOff() IL_0163: ldarg.1 IL_0164: ldc.i4.1 IL_0165: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0167: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_016C: Label10 IL_016C: Label11 IL_016C: Label13 IL_016C: ldarg.1 IL_016D: callvirt System.Single TaleWorlds.CampaignSystem.Party.MobileParty::get_Morale() IL_0172: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0177: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_017C: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyMoraleModel TaleWorlds.CampaignSystem.GameModels::get_PartyMoraleModel() IL_0181: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyMoraleModel::get_HighMoraleValue() IL_0186: blt.un => Label14 IL_018B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_BestMedicine() IL_0190: ldarg.1 IL_0191: ldc.i4.1 IL_0192: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0194: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0199: Label14 IL_0199: ldarg.1 IL_019A: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_019F: brfalse => Label15 IL_01A4: ldarg.1 IL_01A5: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_01AA: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsHideout() IL_01AF: brtrue => Label16 IL_01B4: ldarg.1 IL_01B5: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_01BA: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsFortification() IL_01BF: brfalse => Label17 IL_01C4: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01C6: ldc.r4 10 IL_01CB: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartyHealingModel::_settlementText IL_01D0: ldnull IL_01D1: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_01D6: Label17 IL_01D6: ldarg.1 IL_01D7: callvirt TaleWorlds.CampaignSystem.Siege.SiegeEvent TaleWorlds.CampaignSystem.Party.MobileParty::get_SiegeEvent() IL_01DC: brtrue => Label18 IL_01E1: ldarg.1 IL_01E2: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_01E7: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsUnderSiege() IL_01EC: brtrue => Label19 IL_01F1: ldarg.1 IL_01F2: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_01F7: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsRaided() IL_01FC: brtrue => Label20 IL_0201: ldarg.1 IL_0202: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0207: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsUnderRaid() IL_020C: brtrue => Label21 IL_0211: ldarg.1 IL_0212: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentSettlement() IL_0217: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsTown() IL_021C: brfalse => Label22 IL_0221: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_PristineStreets() IL_0226: ldarg.1 IL_0227: ldc.i4.0 IL_0228: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022A: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_022F: Label22 IL_022F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_GoodLogdings() IL_0234: ldarg.1 IL_0235: ldc.i4.1 IL_0236: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0238: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_023D: br => Label23 IL_0242: Label15 IL_0242: Label16 IL_0242: ldarg.1 IL_0243: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMoving() IL_0248: brtrue => Label24 IL_024D: ldarg.1 IL_024E: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_0253: brfalse => Label25 IL_0258: ldarg.1 IL_0259: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_025E: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsVillage() IL_0263: brfalse => Label26 IL_0268: ldarg.1 IL_0269: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_026E: callvirt virtual TaleWorlds.Library.Vec2 TaleWorlds.CampaignSystem.Settlements.Settlement::get_Position2D() IL_0273: stloc.3 IL_0274: ldloca.s 3 (TaleWorlds.Library.Vec2) IL_0276: ldarg.1 IL_0277: callvirt virtual TaleWorlds.Library.Vec2 TaleWorlds.CampaignSystem.Party.MobileParty::get_Position2D() IL_027C: call System.Single TaleWorlds.Library.Vec2::DistanceSquared(TaleWorlds.Library.Vec2 v) IL_0281: ldc.r4 2 IL_0286: bge.un => Label27 IL_028B: ldarg.1 IL_028C: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_0291: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsUnderRaid() IL_0296: brtrue => Label28 IL_029B: ldarg.1 IL_029C: callvirt TaleWorlds.CampaignSystem.Settlements.Settlement TaleWorlds.CampaignSystem.Party.MobileParty::get_LastVisitedSettlement() IL_02A1: callvirt System.Boolean TaleWorlds.CampaignSystem.Settlements.Settlement::get_IsRaided() IL_02A6: brtrue => Label29 IL_02AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_BushDoctor() IL_02B0: ldarg.1 IL_02B1: ldc.i4.0 IL_02B2: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02B4: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_02B9: Label18 IL_02B9: Label19 IL_02B9: Label20 IL_02B9: Label21 IL_02B9: Label23 IL_02B9: Label24 IL_02B9: Label25 IL_02B9: Label26 IL_02B9: Label27 IL_02B9: Label28 IL_02B9: Label29 IL_02B9: ldarg.1 IL_02BA: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_02BF: brfalse => Label30 IL_02C4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Rearguard() IL_02C9: ldarg.1 IL_02CA: ldc.i4.1 IL_02CB: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02CD: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_02D2: Label30 IL_02D2: ldarg.1 IL_02D3: callvirt TaleWorlds.CampaignSystem.Roster.ItemRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_ItemRoster() IL_02D8: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.ItemRoster::get_FoodVariety() IL_02DD: ldc.i4.0 IL_02DE: ble => Label31 IL_02E3: ldarg.1 IL_02E4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_PerfectHealth() IL_02E9: ldc.i4.0 IL_02EA: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_02EF: brfalse => Label32 IL_02F4: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02F6: ldarg.1 IL_02F7: callvirt TaleWorlds.CampaignSystem.Roster.ItemRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_ItemRoster() IL_02FC: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.ItemRoster::get_FoodVariety() IL_0301: conv.r4 IL_0302: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_PerfectHealth() IL_0307: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_030C: mul IL_030D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_PerfectHealth() IL_0312: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0317: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_031C: Label31 IL_031C: Label32 IL_031C: ldarg.1 IL_031D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_HelpingHands() IL_0322: ldc.i4.0 IL_0323: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0328: brfalse => Label33 IL_032D: ldarg.1 IL_032E: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_0333: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_0338: conv.r4 IL_0339: ldc.r4 10 IL_033E: div IL_033F: call static System.Int32 TaleWorlds.Library.MathF::Floor(System.Single f) IL_0344: conv.r4 IL_0345: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_HelpingHands() IL_034A: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_034F: mul IL_0350: stloc.s 4 (System.Single) IL_0352: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0354: ldloc.s 4 (System.Single) IL_0356: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Medicine::get_HelpingHands() IL_035B: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0360: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0365: Label4 IL_0365: Label5 IL_0365: Label6 IL_0365: Label33 IL_0365: ldloc.0 IL_0366: // end original IL_0366: stloc 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: ldarga 1 IL_036E: ldarga 2 IL_0372: ldloca 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0376: call static System.Void BannerlordCheats.Patches.Party.PartyHealingMultiplierTroops::GetDailyHealingForRegulars(TaleWorlds.CampaignSystem.Party.MobileParty& party, System.Boolean& includeDescriptions, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_037B: ldloc 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_037F: ret DONE ### Patch: System.Int32 TaleWorlds.CampaignSystem.Party.MobileParty::get_TotalWage() ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.Party.MobileParty::TaleWorlds.CampaignSystem.Party.MobileParty.get_TotalWage_Patch0(TaleWorlds.CampaignSystem.Party.MobileParty this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: // start original IL_0000: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0005: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_000A: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyWageModel TaleWorlds.CampaignSystem.GameModels::get_PartyWageModel() IL_000F: ldarg.0 IL_0010: ldc.i4.0 IL_0011: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.PartyWageModel::GetTotalWage(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, System.Boolean includeDescriptions) IL_0016: stloc.0 IL_0017: ldarg.0 IL_0018: ldloc.0 IL_0019: call static TaleWorlds.CampaignSystem.ExplainedNumber BannerlordCheats.Patches.ILInjection::TroopWagesPercentageExplained(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber exp) IL_001E: stloc.0 IL_001F: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0021: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0026: conv.i4 IL_0027: // end original IL_0027: ret DONE ### Patch: System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_ShouldBeIgnored() ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::TaleWorlds.CampaignSystem.Party.MobileParty.get_ShouldBeIgnored_Patch1(TaleWorlds.CampaignSystem.Party.MobileParty this) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldflda TaleWorlds.CampaignSystem.CampaignTime TaleWorlds.CampaignSystem.Party.MobileParty::_ignoredUntilTime IL_000F: call System.Boolean TaleWorlds.CampaignSystem.CampaignTime::get_IsFuture() IL_0014: // end original IL_0014: stloc 0 (System.Boolean) IL_0018: ldarga 0 IL_001C: ldloca 0 (System.Boolean) IL_0020: call static System.Void BannerlordCheats.Patches.Map.CaravansInvisibleOnMap::ShouldBeIgnored(TaleWorlds.CampaignSystem.Party.MobileParty& __instance, System.Boolean& __result) IL_0025: ldloc 0 (System.Boolean) IL_0029: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::CalculateFinalSpeed(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber finalSpeed) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel.CalculateFinalSpeed_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel this, TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber finalSpeed) IL_0000: Local var 0: TaleWorlds.Core.TerrainType IL_0000: Local var 1: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 2: TaleWorlds.CampaignSystem.ComponentInterfaces.MapWeatherModel/WeatherEvent IL_0000: Local var 3: TaleWorlds.CampaignSystem.Army IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Single IL_0000: Local var 6: System.Int32 IL_0000: Local var 7: System.Single IL_0000: Local var 8: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 9: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldarg.1 IL_000B: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsCustomParty() IL_0010: brfalse => Label0 IL_0015: ldarg.1 IL_0016: callvirt TaleWorlds.CampaignSystem.Party.PartyComponents.PartyComponent TaleWorlds.CampaignSystem.Party.MobileParty::get_PartyComponent() IL_001B: castclass TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent IL_0020: callvirt System.Single TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent::get_BaseSpeed() IL_0025: ldc.r4 0 IL_002A: ldc.r4 1E-05 IL_002F: call static System.Boolean TaleWorlds.Library.MBMath::ApproximatelyEqualsTo(System.Single f, System.Single comparedValue, System.Single epsilon) IL_0034: brtrue => Label1 IL_0039: ldarga.s 2 IL_003B: ldarg.1 IL_003C: callvirt TaleWorlds.CampaignSystem.Party.PartyComponents.PartyComponent TaleWorlds.CampaignSystem.Party.MobileParty::get_PartyComponent() IL_0041: castclass TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent IL_0046: callvirt System.Single TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent::get_BaseSpeed() IL_004B: ldc.i4.0 IL_004C: ldnull IL_004D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0052: Label0 IL_0052: Label1 IL_0052: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0057: callvirt TaleWorlds.CampaignSystem.Map.IMapScene TaleWorlds.CampaignSystem.Campaign::get_MapSceneWrapper() IL_005C: ldarg.1 IL_005D: callvirt virtual TaleWorlds.Library.PathFaceRecord TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentNavigationFace() IL_0062: callvirt abstract virtual TaleWorlds.Core.TerrainType TaleWorlds.CampaignSystem.Map.IMapScene::GetFaceTerrainType(TaleWorlds.Library.PathFaceRecord faceIndex) IL_0067: stloc.0 IL_0068: ldarg.1 IL_0069: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.MobileParty::get_EffectiveScout() IL_006E: stloc.1 IL_006F: ldloc.0 IL_0070: ldc.i4.s 10 IL_0072: bne.un => Label2 IL_0077: ldc.r4 0 IL_007C: stloc.s 4 (System.Single) IL_007E: ldloc.1 IL_007F: brfalse => Label3 IL_0084: ldloc.1 IL_0085: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForestKin() IL_008A: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_008F: brfalse => Label4 IL_0094: ldc.i4.0 IL_0095: stloc.s 6 (System.Int32) IL_0097: br => Label5 IL_009C: Label7 IL_009C: ldarg.1 IL_009D: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00A2: ldloc.s 6 (System.Int32) IL_00A4: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Roster.TroopRoster::GetCharacterAtIndex(System.Int32 index) IL_00A9: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsMounted() IL_00AE: brtrue => Label6 IL_00B3: ldloc.s 4 (System.Single) IL_00B5: ldarg.1 IL_00B6: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00BB: ldloc.s 6 (System.Int32) IL_00BD: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::GetElementNumber(System.Int32 index) IL_00C2: conv.r4 IL_00C3: add IL_00C4: stloc.s 4 (System.Single) IL_00C6: Label6 IL_00C6: ldloc.s 6 (System.Int32) IL_00C8: ldc.i4.1 IL_00C9: add IL_00CA: stloc.s 6 (System.Int32) IL_00CC: Label5 IL_00CC: ldloc.s 6 (System.Int32) IL_00CE: ldarg.1 IL_00CF: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00D4: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_Count() IL_00D9: blt => Label7 IL_00DE: Label3 IL_00DE: Label4 IL_00DE: ldloc.s 4 (System.Single) IL_00E0: ldarg.1 IL_00E1: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00E6: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_00EB: conv.r4 IL_00EC: div IL_00ED: ldc.r4 0.75 IL_00F2: bge => Label8 IL_00F7: ldc.r4 -0.3 IL_00FC: br => Label9 IL_0101: Label8 IL_0101: ldc.r4 -0.3 IL_0106: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForestKin() IL_010B: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0110: neg IL_0111: mul IL_0112: Label9 IL_0112: stloc.s 5 (System.Single) IL_0114: ldarga.s 2 IL_0116: ldloc.s 5 (System.Single) IL_0118: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_movingInForest IL_011D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0122: ldarg.1 IL_0123: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_0128: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_BattanianForestSpeedFeat() IL_012D: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_0132: brfalse => Label10 IL_0137: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_BattanianForestSpeedFeat() IL_013C: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_0141: ldc.r4 0.3 IL_0146: mul IL_0147: stloc.s 7 (System.Single) IL_0149: ldarga.s 2 IL_014B: ldloc.s 7 (System.Single) IL_014D: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_culture IL_0152: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0157: br => Label11 IL_015C: Label2 IL_015C: ldloc.0 IL_015D: brfalse => Label12 IL_0162: ldloc.0 IL_0163: ldc.i4.s 9 IL_0165: beq => Label13 IL_016A: ldloc.0 IL_016B: ldc.i4.8 IL_016C: beq => Label14 IL_0171: ldloc.0 IL_0172: ldc.i4.s 11 IL_0174: bne.un => Label15 IL_0179: Label12 IL_0179: Label13 IL_0179: Label14 IL_0179: ldarga.s 2 IL_017B: ldc.r4 -0.3 IL_0180: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_fordEffect IL_0185: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_018A: br => Label16 IL_018F: Label15 IL_018F: ldloc.0 IL_0190: ldc.i4.5 IL_0191: beq => Label17 IL_0196: ldloc.0 IL_0197: ldc.i4.7 IL_0198: bne.un => Label18 IL_019D: Label17 IL_019D: ldarg.1 IL_019E: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_01A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_AseraiDesertFeat() IL_01A8: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_01AD: brtrue => Label19 IL_01B2: ldarga.s 2 IL_01B4: ldc.r4 -0.1 IL_01B9: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_desert IL_01BE: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01C3: Label19 IL_01C3: ldloc.1 IL_01C4: brfalse => Label20 IL_01C9: ldloc.1 IL_01CA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DesertBorn() IL_01CF: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01D4: brfalse => Label21 IL_01D9: ldarga.s 2 IL_01DB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DesertBorn() IL_01E0: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01E5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DesertBorn() IL_01EA: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_01EF: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01F4: br => Label22 IL_01F9: Label18 IL_01F9: ldloc.0 IL_01FA: ldc.i4.4 IL_01FB: beq => Label23 IL_0200: ldloc.0 IL_0201: ldc.i4.3 IL_0202: bne.un => Label24 IL_0207: Label23 IL_0207: ldloc.1 IL_0208: brfalse => Label25 IL_020D: ldloc.1 IL_020E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Pathfinder() IL_0213: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0218: brfalse => Label26 IL_021D: ldarga.s 2 IL_021F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Pathfinder() IL_0224: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0229: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Pathfinder() IL_022E: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0233: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0238: Label10 IL_0238: Label11 IL_0238: Label16 IL_0238: Label20 IL_0238: Label21 IL_0238: Label22 IL_0238: Label24 IL_0238: Label25 IL_0238: Label26 IL_0238: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_023D: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0242: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.MapWeatherModel TaleWorlds.CampaignSystem.GameModels::get_MapWeatherModel() IL_0247: ldarg.1 IL_0248: callvirt virtual TaleWorlds.Library.Vec2 TaleWorlds.CampaignSystem.Party.MobileParty::get_Position2D() IL_024D: callvirt abstract virtual TaleWorlds.CampaignSystem.ComponentInterfaces.WeatherEvent TaleWorlds.CampaignSystem.ComponentInterfaces.MapWeatherModel::GetWeatherEventInPosition(TaleWorlds.Library.Vec2 pos) IL_0252: stloc.2 IL_0253: ldloc.2 IL_0254: ldc.i4.3 IL_0255: beq => Label27 IL_025A: ldloc.2 IL_025B: ldc.i4.4 IL_025C: bne.un => Label28 IL_0261: Label27 IL_0261: ldarga.s 2 IL_0263: ldc.r4 -0.1 IL_0268: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_snow IL_026D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0272: Label28 IL_0272: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0277: callvirt System.Boolean TaleWorlds.CampaignSystem.Campaign::get_IsNight() IL_027C: brfalse => Label29 IL_0281: ldarga.s 2 IL_0283: ldc.r4 -0.25 IL_0288: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_night IL_028D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0292: ldloc.1 IL_0293: brfalse => Label30 IL_0298: ldloc.1 IL_0299: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_029E: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_02A3: brfalse => Label31 IL_02A8: ldarga.s 2 IL_02AA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_02AF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_02B4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_02B9: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_02BE: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02C3: br => Label32 IL_02C8: Label29 IL_02C8: ldloc.1 IL_02C9: brfalse => Label33 IL_02CE: ldloc.1 IL_02CF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_02D4: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_02D9: brfalse => Label34 IL_02DE: ldarga.s 2 IL_02E0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_02E5: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_02EA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_02EF: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_02F4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02F9: Label30 IL_02F9: Label31 IL_02F9: Label32 IL_02F9: Label33 IL_02F9: Label34 IL_02F9: ldloc.1 IL_02FA: brfalse => Label35 IL_02FF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_UncannyInsight() IL_0304: ldloc.1 IL_0305: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_030A: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Scouting() IL_030F: ldc.i4.1 IL_0310: ldarga.s 2 IL_0312: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0317: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_031C: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0321: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_0326: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_032B: ldloc.1 IL_032C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForcedMarch() IL_0331: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0336: brfalse => Label36 IL_033B: ldarg.1 IL_033C: callvirt System.Single TaleWorlds.CampaignSystem.Party.MobileParty::get_Morale() IL_0341: ldc.r4 75 IL_0346: ble.un => Label37 IL_034B: ldarga.s 2 IL_034D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForcedMarch() IL_0352: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0357: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForcedMarch() IL_035C: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0361: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0366: Label36 IL_0366: Label37 IL_0366: ldarg.1 IL_0367: callvirt TaleWorlds.CampaignSystem.Party.AiBehavior TaleWorlds.CampaignSystem.Party.MobileParty::get_DefaultBehavior() IL_036C: ldc.i4.6 IL_036D: bne.un => Label38 IL_0372: ldarg.1 IL_0373: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_TargetParty() IL_0378: stloc.s 8 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_037A: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_037C: brfalse => Label39 IL_0381: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_0383: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_0388: ldarg.1 IL_0389: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_038E: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.IFaction::IsAtWarWith(TaleWorlds.CampaignSystem.IFaction other) IL_0393: brfalse => Label40 IL_0398: ldloc.1 IL_0399: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Tracker() IL_039E: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_03A3: brfalse => Label41 IL_03A8: ldarga.s 2 IL_03AA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Tracker() IL_03AF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_03B4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Tracker() IL_03B9: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_03BE: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_03C3: Label35 IL_03C3: Label38 IL_03C3: Label39 IL_03C3: Label40 IL_03C3: Label41 IL_03C3: ldarg.1 IL_03C4: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_03C9: stloc.3 IL_03CA: ldloc.3 IL_03CB: brtrue => Label42 IL_03D0: ldnull IL_03D1: br => Label43 IL_03D6: Label42 IL_03D6: ldloc.3 IL_03D7: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_03DC: Label43 IL_03DC: brfalse => Label44 IL_03E1: ldarg.1 IL_03E2: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_03E7: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_03EC: ldarg.1 IL_03ED: beq => Label45 IL_03F2: ldarg.1 IL_03F3: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_AttachedTo() IL_03F8: ldarg.1 IL_03F9: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_03FE: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_0403: beq => Label46 IL_0408: ldarg.1 IL_0409: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_040E: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_0413: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_CallToArms() IL_0418: ldc.i4.0 IL_0419: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_041E: brfalse => Label47 IL_0423: ldarga.s 2 IL_0425: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_CallToArms() IL_042A: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_042F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_CallToArms() IL_0434: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0439: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_043E: Label44 IL_043E: Label45 IL_043E: Label46 IL_043E: Label47 IL_043E: ldarga.s 2 IL_0440: ldarg.0 IL_0441: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartySpeedModel::get_MinimumSpeed() IL_0446: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::LimitMin(System.Single minValue) IL_044B: ldarg.2 IL_044C: // end original IL_044C: stloc 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0450: ldarga 1 IL_0454: ldarga 2 IL_0458: ldloca 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045C: call static System.Void BannerlordCheats.Patches.Map.MapSpeedMultiplier::CalculateFinalSpeed(TaleWorlds.CampaignSystem.Party.MobileParty& mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber& finalSpeed, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0461: ldloc 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0465: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultMapVisibilityModel::GetPartySpottingRange(TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultMapVisibilityModel::TaleWorlds.CampaignSystem.GameComponents.DefaultMapVisibilityModel.GetPartySpottingRange_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultMapVisibilityModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) IL_0000: Local var 0: System.Single IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 2: TaleWorlds.Core.TerrainType IL_0000: Local var 3: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 4: TaleWorlds.CampaignSystem.CampaignTime IL_0000: Local var 5: System.Single IL_0000: Local var 6: System.Int32 IL_0000: Local var 7: TaleWorlds.Core.FormationClass IL_0000: Local var 8: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000F: callvirt System.Boolean TaleWorlds.CampaignSystem.Campaign::get_IsNight() IL_0014: brtrue => Label0 IL_0019: ldc.r4 12 IL_001E: br => Label1 IL_0023: Label0 IL_0023: ldc.r4 6 IL_0028: Label1 IL_0028: stloc.0 IL_0029: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_002B: ldloc.0 IL_002C: ldarg.2 IL_002D: ldnull IL_002E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0033: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0038: callvirt TaleWorlds.CampaignSystem.Map.IMapScene TaleWorlds.CampaignSystem.Campaign::get_MapSceneWrapper() IL_003D: ldarg.1 IL_003E: callvirt virtual TaleWorlds.Library.PathFaceRecord TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentNavigationFace() IL_0043: callvirt abstract virtual TaleWorlds.Core.TerrainType TaleWorlds.CampaignSystem.Map.IMapScene::GetFaceTerrainType(TaleWorlds.Library.PathFaceRecord faceIndex) IL_0048: stloc.2 IL_0049: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Scouting() IL_004E: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_TrackingSpottingDistance() IL_0053: ldarg.1 IL_0054: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0056: call static System.Void Helpers.SkillHelper::AddSkillBonusForParty(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_005B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_EagleEye() IL_0060: ldarg.1 IL_0061: ldc.i4.0 IL_0062: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0064: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_0069: ldarg.1 IL_006A: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.MobileParty::get_EffectiveScout() IL_006F: stloc.3 IL_0070: ldloc.3 IL_0071: brfalse => Label2 IL_0076: ldloc.2 IL_0077: ldc.i4.4 IL_0078: beq => Label3 IL_007D: ldloc.2 IL_007E: ldc.i4.3 IL_007F: bne.un => Label4 IL_0084: Label3 IL_0084: ldloc.3 IL_0085: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_WaterDiviner() IL_008A: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_008F: brfalse => Label5 IL_0094: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0096: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_WaterDiviner() IL_009B: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_00A0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_WaterDiviner() IL_00A5: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_00AA: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_00AF: br => Label6 IL_00B4: Label4 IL_00B4: Label5 IL_00B4: ldloc.2 IL_00B5: ldc.i4.s 10 IL_00B7: bne.un => Label7 IL_00BC: ldarg.1 IL_00BD: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_00C2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_BattanianForestSpeedFeat() IL_00C7: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_00CC: brfalse => Label8 IL_00D1: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00D3: ldc.r4 0.15 IL_00D8: ldstr "str_culture" IL_00DD: ldnull IL_00DE: call static TaleWorlds.Localization.TextObject TaleWorlds.Core.GameTexts::FindText(System.String id, System.String variation) IL_00E3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_00E8: Label6 IL_00E8: Label7 IL_00E8: Label8 IL_00E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00ED: callvirt System.Boolean TaleWorlds.CampaignSystem.Campaign::get_IsNight() IL_00F2: brfalse => Label9 IL_00F7: ldloc.3 IL_00F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_00FD: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0102: brfalse => Label10 IL_0107: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0109: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_010E: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0113: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_0118: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_011D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0122: br => Label11 IL_0127: Label9 IL_0127: Label10 IL_0127: ldloc.3 IL_0128: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_012D: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0132: brfalse => Label12 IL_0137: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0139: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_013E: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0143: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_0148: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_014D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0152: Label11 IL_0152: Label12 IL_0152: ldarg.1 IL_0153: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsMoving() IL_0158: brtrue => Label13 IL_015D: ldarg.1 IL_015E: callvirt TaleWorlds.CampaignSystem.CampaignTime TaleWorlds.CampaignSystem.Party.MobileParty::get_StationaryStartTime() IL_0163: stloc.s 4 (TaleWorlds.CampaignSystem.CampaignTime) IL_0165: ldloca.s 4 (TaleWorlds.CampaignSystem.CampaignTime) IL_0167: call System.Single TaleWorlds.CampaignSystem.CampaignTime::get_ElapsedHoursUntilNow() IL_016C: ldc.r4 1 IL_0171: blt.un => Label14 IL_0176: ldloc.3 IL_0177: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_VantagePoint() IL_017C: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0181: brfalse => Label15 IL_0186: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0188: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_VantagePoint() IL_018D: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0192: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_VantagePoint() IL_0197: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_019C: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01A1: Label13 IL_01A1: Label14 IL_01A1: Label15 IL_01A1: ldloc.3 IL_01A2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_MountedScouts() IL_01A7: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01AC: brfalse => Label16 IL_01B1: ldc.r4 0 IL_01B6: stloc.s 5 (System.Single) IL_01B8: ldc.i4.0 IL_01B9: stloc.s 6 (System.Int32) IL_01BB: br => Label17 IL_01C0: Label19 IL_01C0: ldarg.1 IL_01C1: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_01C6: ldloc.s 6 (System.Int32) IL_01C8: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Roster.TroopRoster::GetCharacterAtIndex(System.Int32 index) IL_01CD: callvirt TaleWorlds.Core.FormationClass TaleWorlds.Core.BasicCharacterObject::get_DefaultFormationClass() IL_01D2: stloc.s 7 (TaleWorlds.Core.FormationClass) IL_01D4: ldloca.s 7 (TaleWorlds.Core.FormationClass) IL_01D6: ldc.i4.2 IL_01D7: box TaleWorlds.Core.FormationClass IL_01DC: constrained. TaleWorlds.Core.FormationClass IL_01E2: callvirt virtual System.Boolean System.Object::Equals(System.Object obj) IL_01E7: brfalse => Label18 IL_01EC: ldloc.s 5 (System.Single) IL_01EE: ldarg.1 IL_01EF: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_01F4: ldloc.s 6 (System.Int32) IL_01F6: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::GetElementNumber(System.Int32 index) IL_01FB: conv.r4 IL_01FC: add IL_01FD: stloc.s 5 (System.Single) IL_01FF: Label18 IL_01FF: ldloc.s 6 (System.Int32) IL_0201: ldc.i4.1 IL_0202: add IL_0203: stloc.s 6 (System.Int32) IL_0205: Label17 IL_0205: ldloc.s 6 (System.Int32) IL_0207: ldarg.1 IL_0208: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_020D: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_Count() IL_0212: blt => Label19 IL_0217: ldloc.s 5 (System.Single) IL_0219: ldarg.1 IL_021A: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_021F: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_0224: conv.r4 IL_0225: div IL_0226: ldc.r4 0.5 IL_022B: blt.un => Label20 IL_0230: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0232: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_MountedScouts() IL_0237: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_023C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_MountedScouts() IL_0241: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0246: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_024B: Label2 IL_024B: Label16 IL_024B: Label20 IL_024B: ldloc.1 IL_024C: // end original IL_024C: stloc 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0250: ldarga 1 IL_0254: ldarga 2 IL_0258: ldloca 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_025C: call static System.Void BannerlordCheats.Patches.Map.MapVisibilityMultiplier::GetPartySpottingRange(TaleWorlds.CampaignSystem.Party.MobileParty& party, System.Boolean& includeDescriptions, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0261: ldloc 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0265: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::CalculateFinalSpeed(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber finalSpeed) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel.CalculateFinalSpeed_Patch2(TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel this, TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber finalSpeed) IL_0000: Local var 0: TaleWorlds.Core.TerrainType IL_0000: Local var 1: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 2: TaleWorlds.CampaignSystem.ComponentInterfaces.MapWeatherModel/WeatherEvent IL_0000: Local var 3: TaleWorlds.CampaignSystem.Army IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Single IL_0000: Local var 6: System.Int32 IL_0000: Local var 7: System.Single IL_0000: Local var 8: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 9: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldarg.1 IL_000B: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsCustomParty() IL_0010: brfalse => Label0 IL_0015: ldarg.1 IL_0016: callvirt TaleWorlds.CampaignSystem.Party.PartyComponents.PartyComponent TaleWorlds.CampaignSystem.Party.MobileParty::get_PartyComponent() IL_001B: castclass TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent IL_0020: callvirt System.Single TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent::get_BaseSpeed() IL_0025: ldc.r4 0 IL_002A: ldc.r4 1E-05 IL_002F: call static System.Boolean TaleWorlds.Library.MBMath::ApproximatelyEqualsTo(System.Single f, System.Single comparedValue, System.Single epsilon) IL_0034: brtrue => Label1 IL_0039: ldarga.s 2 IL_003B: ldarg.1 IL_003C: callvirt TaleWorlds.CampaignSystem.Party.PartyComponents.PartyComponent TaleWorlds.CampaignSystem.Party.MobileParty::get_PartyComponent() IL_0041: castclass TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent IL_0046: callvirt System.Single TaleWorlds.CampaignSystem.Party.PartyComponents.CustomPartyComponent::get_BaseSpeed() IL_004B: ldc.i4.0 IL_004C: ldnull IL_004D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0052: Label0 IL_0052: Label1 IL_0052: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0057: callvirt TaleWorlds.CampaignSystem.Map.IMapScene TaleWorlds.CampaignSystem.Campaign::get_MapSceneWrapper() IL_005C: ldarg.1 IL_005D: callvirt virtual TaleWorlds.Library.PathFaceRecord TaleWorlds.CampaignSystem.Party.MobileParty::get_CurrentNavigationFace() IL_0062: callvirt abstract virtual TaleWorlds.Core.TerrainType TaleWorlds.CampaignSystem.Map.IMapScene::GetFaceTerrainType(TaleWorlds.Library.PathFaceRecord faceIndex) IL_0067: stloc.0 IL_0068: ldarg.1 IL_0069: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.MobileParty::get_EffectiveScout() IL_006E: stloc.1 IL_006F: ldloc.0 IL_0070: ldc.i4.s 10 IL_0072: bne.un => Label2 IL_0077: ldc.r4 0 IL_007C: stloc.s 4 (System.Single) IL_007E: ldloc.1 IL_007F: brfalse => Label3 IL_0084: ldloc.1 IL_0085: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForestKin() IL_008A: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_008F: brfalse => Label4 IL_0094: ldc.i4.0 IL_0095: stloc.s 6 (System.Int32) IL_0097: br => Label5 IL_009C: Label7 IL_009C: ldarg.1 IL_009D: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00A2: ldloc.s 6 (System.Int32) IL_00A4: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Roster.TroopRoster::GetCharacterAtIndex(System.Int32 index) IL_00A9: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsMounted() IL_00AE: brtrue => Label6 IL_00B3: ldloc.s 4 (System.Single) IL_00B5: ldarg.1 IL_00B6: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00BB: ldloc.s 6 (System.Int32) IL_00BD: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::GetElementNumber(System.Int32 index) IL_00C2: conv.r4 IL_00C3: add IL_00C4: stloc.s 4 (System.Single) IL_00C6: Label6 IL_00C6: ldloc.s 6 (System.Int32) IL_00C8: ldc.i4.1 IL_00C9: add IL_00CA: stloc.s 6 (System.Int32) IL_00CC: Label5 IL_00CC: ldloc.s 6 (System.Int32) IL_00CE: ldarg.1 IL_00CF: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00D4: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_Count() IL_00D9: blt => Label7 IL_00DE: Label3 IL_00DE: Label4 IL_00DE: ldloc.s 4 (System.Single) IL_00E0: ldarg.1 IL_00E1: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_00E6: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalManCount() IL_00EB: conv.r4 IL_00EC: div IL_00ED: ldc.r4 0.75 IL_00F2: bge => Label8 IL_00F7: ldc.r4 -0.3 IL_00FC: br => Label9 IL_0101: Label8 IL_0101: ldc.r4 -0.3 IL_0106: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForestKin() IL_010B: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0110: neg IL_0111: mul IL_0112: Label9 IL_0112: stloc.s 5 (System.Single) IL_0114: ldarga.s 2 IL_0116: ldloc.s 5 (System.Single) IL_0118: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_movingInForest IL_011D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0122: ldarg.1 IL_0123: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_0128: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_BattanianForestSpeedFeat() IL_012D: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_0132: brfalse => Label10 IL_0137: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_BattanianForestSpeedFeat() IL_013C: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_0141: ldc.r4 0.3 IL_0146: mul IL_0147: stloc.s 7 (System.Single) IL_0149: ldarga.s 2 IL_014B: ldloc.s 7 (System.Single) IL_014D: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_culture IL_0152: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0157: br => Label11 IL_015C: Label2 IL_015C: ldloc.0 IL_015D: brfalse => Label12 IL_0162: ldloc.0 IL_0163: ldc.i4.s 9 IL_0165: beq => Label13 IL_016A: ldloc.0 IL_016B: ldc.i4.8 IL_016C: beq => Label14 IL_0171: ldloc.0 IL_0172: ldc.i4.s 11 IL_0174: bne.un => Label15 IL_0179: Label12 IL_0179: Label13 IL_0179: Label14 IL_0179: ldarga.s 2 IL_017B: ldc.r4 -0.3 IL_0180: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_fordEffect IL_0185: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_018A: br => Label16 IL_018F: Label15 IL_018F: ldloc.0 IL_0190: ldc.i4.5 IL_0191: beq => Label17 IL_0196: ldloc.0 IL_0197: ldc.i4.7 IL_0198: bne.un => Label18 IL_019D: Label17 IL_019D: ldarg.1 IL_019E: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_01A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_AseraiDesertFeat() IL_01A8: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_01AD: brtrue => Label19 IL_01B2: ldarga.s 2 IL_01B4: ldc.r4 -0.1 IL_01B9: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_desert IL_01BE: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01C3: Label19 IL_01C3: ldloc.1 IL_01C4: brfalse => Label20 IL_01C9: ldloc.1 IL_01CA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DesertBorn() IL_01CF: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01D4: brfalse => Label21 IL_01D9: ldarga.s 2 IL_01DB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DesertBorn() IL_01E0: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01E5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DesertBorn() IL_01EA: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_01EF: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01F4: br => Label22 IL_01F9: Label18 IL_01F9: ldloc.0 IL_01FA: ldc.i4.4 IL_01FB: beq => Label23 IL_0200: ldloc.0 IL_0201: ldc.i4.3 IL_0202: bne.un => Label24 IL_0207: Label23 IL_0207: ldloc.1 IL_0208: brfalse => Label25 IL_020D: ldloc.1 IL_020E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Pathfinder() IL_0213: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0218: brfalse => Label26 IL_021D: ldarga.s 2 IL_021F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Pathfinder() IL_0224: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0229: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Pathfinder() IL_022E: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0233: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0238: Label10 IL_0238: Label11 IL_0238: Label16 IL_0238: Label20 IL_0238: Label21 IL_0238: Label22 IL_0238: Label24 IL_0238: Label25 IL_0238: Label26 IL_0238: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_023D: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0242: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.MapWeatherModel TaleWorlds.CampaignSystem.GameModels::get_MapWeatherModel() IL_0247: ldarg.1 IL_0248: callvirt virtual TaleWorlds.Library.Vec2 TaleWorlds.CampaignSystem.Party.MobileParty::get_Position2D() IL_024D: callvirt abstract virtual TaleWorlds.CampaignSystem.ComponentInterfaces.WeatherEvent TaleWorlds.CampaignSystem.ComponentInterfaces.MapWeatherModel::GetWeatherEventInPosition(TaleWorlds.Library.Vec2 pos) IL_0252: stloc.2 IL_0253: ldloc.2 IL_0254: ldc.i4.3 IL_0255: beq => Label27 IL_025A: ldloc.2 IL_025B: ldc.i4.4 IL_025C: bne.un => Label28 IL_0261: Label27 IL_0261: ldarga.s 2 IL_0263: ldc.r4 -0.1 IL_0268: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_snow IL_026D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0272: Label28 IL_0272: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0277: callvirt System.Boolean TaleWorlds.CampaignSystem.Campaign::get_IsNight() IL_027C: brfalse => Label29 IL_0281: ldarga.s 2 IL_0283: ldc.r4 -0.25 IL_0288: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultPartySpeedCalculatingModel::_night IL_028D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0292: ldloc.1 IL_0293: brfalse => Label30 IL_0298: ldloc.1 IL_0299: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_029E: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_02A3: brfalse => Label31 IL_02A8: ldarga.s 2 IL_02AA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_02AF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_02B4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_NightRunner() IL_02B9: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_02BE: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02C3: br => Label32 IL_02C8: Label29 IL_02C8: ldloc.1 IL_02C9: brfalse => Label33 IL_02CE: ldloc.1 IL_02CF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_02D4: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_02D9: brfalse => Label34 IL_02DE: ldarga.s 2 IL_02E0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_02E5: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_02EA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_DayTraveler() IL_02EF: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_02F4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_02F9: Label30 IL_02F9: Label31 IL_02F9: Label32 IL_02F9: Label33 IL_02F9: Label34 IL_02F9: ldloc.1 IL_02FA: brfalse => Label35 IL_02FF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_UncannyInsight() IL_0304: ldloc.1 IL_0305: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_030A: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Scouting() IL_030F: ldc.i4.1 IL_0310: ldarga.s 2 IL_0312: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0317: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_031C: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0321: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_0326: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_032B: ldloc.1 IL_032C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForcedMarch() IL_0331: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0336: brfalse => Label36 IL_033B: ldarg.1 IL_033C: callvirt System.Single TaleWorlds.CampaignSystem.Party.MobileParty::get_Morale() IL_0341: ldc.r4 75 IL_0346: ble.un => Label37 IL_034B: ldarga.s 2 IL_034D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForcedMarch() IL_0352: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0357: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_ForcedMarch() IL_035C: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0361: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0366: Label36 IL_0366: Label37 IL_0366: ldarg.1 IL_0367: callvirt TaleWorlds.CampaignSystem.Party.AiBehavior TaleWorlds.CampaignSystem.Party.MobileParty::get_DefaultBehavior() IL_036C: ldc.i4.6 IL_036D: bne.un => Label38 IL_0372: ldarg.1 IL_0373: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_TargetParty() IL_0378: stloc.s 8 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_037A: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_037C: brfalse => Label39 IL_0381: ldloc.s 8 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_0383: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_0388: ldarg.1 IL_0389: callvirt virtual TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.MobileParty::get_MapFaction() IL_038E: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.IFaction::IsAtWarWith(TaleWorlds.CampaignSystem.IFaction other) IL_0393: brfalse => Label40 IL_0398: ldloc.1 IL_0399: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Tracker() IL_039E: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_03A3: brfalse => Label41 IL_03A8: ldarga.s 2 IL_03AA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Tracker() IL_03AF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_03B4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_Tracker() IL_03B9: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_03BE: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_03C3: Label35 IL_03C3: Label38 IL_03C3: Label39 IL_03C3: Label40 IL_03C3: Label41 IL_03C3: ldarg.1 IL_03C4: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_03C9: stloc.3 IL_03CA: ldloc.3 IL_03CB: brtrue => Label42 IL_03D0: ldnull IL_03D1: br => Label43 IL_03D6: Label42 IL_03D6: ldloc.3 IL_03D7: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_03DC: Label43 IL_03DC: brfalse => Label44 IL_03E1: ldarg.1 IL_03E2: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_03E7: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_03EC: ldarg.1 IL_03ED: beq => Label45 IL_03F2: ldarg.1 IL_03F3: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_AttachedTo() IL_03F8: ldarg.1 IL_03F9: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_03FE: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_0403: beq => Label46 IL_0408: ldarg.1 IL_0409: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_040E: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_0413: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_CallToArms() IL_0418: ldc.i4.0 IL_0419: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_041E: brfalse => Label47 IL_0423: ldarga.s 2 IL_0425: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_CallToArms() IL_042A: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_042F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_CallToArms() IL_0434: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0439: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_043E: Label44 IL_043E: Label45 IL_043E: Label46 IL_043E: Label47 IL_043E: ldarga.s 2 IL_0440: ldarg.0 IL_0441: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartySpeedModel::get_MinimumSpeed() IL_0446: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::LimitMin(System.Single minValue) IL_044B: ldarg.2 IL_044C: // end original IL_044C: stloc 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0450: ldarga 1 IL_0454: ldarga 2 IL_0458: ldloca 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045C: call static System.Void BannerlordCheats.Patches.Map.MapSpeedMultiplier::CalculateFinalSpeed(TaleWorlds.CampaignSystem.Party.MobileParty& mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber& finalSpeed, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0461: ldarga 1 IL_0465: ldarga 2 IL_0469: ldloca 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046D: call static System.Void BannerlordCheats.Patches.Map.NpcMapSpeedPercentage::CalculateFinalSpeed(TaleWorlds.CampaignSystem.Party.MobileParty& mobileParty, TaleWorlds.CampaignSystem.ExplainedNumber& finalSpeed, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0472: ldloc 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0476: ret DONE ### Patch: System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_ShouldBeIgnored() ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::TaleWorlds.CampaignSystem.Party.MobileParty.get_ShouldBeIgnored_Patch2(TaleWorlds.CampaignSystem.Party.MobileParty this) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldflda TaleWorlds.CampaignSystem.CampaignTime TaleWorlds.CampaignSystem.Party.MobileParty::_ignoredUntilTime IL_000F: call System.Boolean TaleWorlds.CampaignSystem.CampaignTime::get_IsFuture() IL_0014: // end original IL_0014: stloc 0 (System.Boolean) IL_0018: ldarga 0 IL_001C: ldloca 0 (System.Boolean) IL_0020: call static System.Void BannerlordCheats.Patches.Map.CaravansInvisibleOnMap::ShouldBeIgnored(TaleWorlds.CampaignSystem.Party.MobileParty& __instance, System.Boolean& __result) IL_0025: ldarga 0 IL_0029: ldloca 0 (System.Boolean) IL_002D: call static System.Void BannerlordCheats.Patches.Map.PartyInvisibleOnMap::ShouldBeIgnored(TaleWorlds.CampaignSystem.Party.MobileParty& __instance, System.Boolean& __result) IL_0032: ldloc 0 (System.Boolean) IL_0036: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanPoliticsModel::GetInfluenceRequiredToOverrideKingdomDecision(TaleWorlds.CampaignSystem.Election.DecisionOutcome popularOption, TaleWorlds.CampaignSystem.Election.DecisionOutcome overridingOption, TaleWorlds.CampaignSystem.Election.KingdomDecision decision) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanPoliticsModel::TaleWorlds.CampaignSystem.GameComponents.DefaultClanPoliticsModel.GetInfluenceRequiredToOverrideKingdomDecision_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultClanPoliticsModel this, TaleWorlds.CampaignSystem.Election.DecisionOutcome popularOption, TaleWorlds.CampaignSystem.Election.DecisionOutcome overridingOption, TaleWorlds.CampaignSystem.Election.KingdomDecision decision) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 4 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt System.Single TaleWorlds.CampaignSystem.Election.DecisionOutcome::get_TotalSupportPoints() IL_000F: stloc.0 IL_0010: ldarg.2 IL_0011: callvirt System.Single TaleWorlds.CampaignSystem.Election.DecisionOutcome::get_TotalSupportPoints() IL_0016: stloc.1 IL_0017: ldc.r4 0 IL_001C: stloc.2 IL_001D: ldarg.3 IL_001E: callvirt TaleWorlds.CampaignSystem.Kingdom TaleWorlds.CampaignSystem.Election.KingdomDecision::get_Kingdom() IL_0023: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Kingdom::get_RulingClan() IL_0028: call static TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Clan::get_PlayerClan() IL_002D: bne.un => Label0 IL_0032: ldloc.0 IL_0033: ldloc.1 IL_0034: ldc.r4 1 IL_0039: add IL_003A: bne.un => Label1 IL_003F: ldloc.1 IL_0040: ldc.r4 1 IL_0045: add IL_0046: stloc.1 IL_0047: ldloc.2 IL_0048: ldarg.3 IL_0049: call static TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Clan::get_PlayerClan() IL_004E: ldc.i4.2 IL_004F: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_0054: conv.r4 IL_0055: add IL_0056: stloc.2 IL_0057: br => Label2 IL_005C: Label1 IL_005C: ldloc.0 IL_005D: ldloc.1 IL_005E: ldc.r4 2 IL_0063: add IL_0064: bne.un => Label3 IL_0069: ldloc.1 IL_006A: ldc.r4 2 IL_006F: add IL_0070: stloc.1 IL_0071: ldloc.2 IL_0072: ldarg.3 IL_0073: call static TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Clan::get_PlayerClan() IL_0078: ldc.i4.3 IL_0079: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_007E: conv.r4 IL_007F: add IL_0080: stloc.2 IL_0081: br => Label4 IL_0086: Label3 IL_0086: ldloc.0 IL_0087: ldloc.1 IL_0088: ldc.r4 2 IL_008D: add IL_008E: ble.un => Label5 IL_0093: ldloc.1 IL_0094: ldc.r4 3 IL_0099: add IL_009A: stloc.1 IL_009B: ldloc.2 IL_009C: ldarg.3 IL_009D: call static TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Clan::get_PlayerClan() IL_00A2: ldc.i4.4 IL_00A3: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_00A8: conv.r4 IL_00A9: add IL_00AA: stloc.2 IL_00AB: Label0 IL_00AB: Label2 IL_00AB: Label4 IL_00AB: Label5 IL_00AB: ldloc.0 IL_00AC: ldloc.1 IL_00AD: ble.un => Label6 IL_00B2: ldloc.0 IL_00B3: ldloc.1 IL_00B4: sub IL_00B5: ldc.r4 3 IL_00BA: div IL_00BB: ldarg.3 IL_00BC: ldarg.3 IL_00BD: callvirt TaleWorlds.CampaignSystem.Kingdom TaleWorlds.CampaignSystem.Election.KingdomDecision::get_Kingdom() IL_00C2: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Kingdom::get_RulingClan() IL_00C7: ldc.i4.4 IL_00C8: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_00CD: conv.r4 IL_00CE: mul IL_00CF: ldc.r4 1.4 IL_00D4: mul IL_00D5: stloc.3 IL_00D6: ldarg.3 IL_00D7: callvirt TaleWorlds.CampaignSystem.Kingdom TaleWorlds.CampaignSystem.Election.KingdomDecision::get_Kingdom() IL_00DC: callvirt System.Collections.Generic.IList`1 TaleWorlds.CampaignSystem.Kingdom::get_ActivePolicies() IL_00E1: call static TaleWorlds.CampaignSystem.PolicyObject TaleWorlds.CampaignSystem.DefaultPolicies::get_RoyalPrivilege() IL_00E6: callvirt abstract virtual System.Boolean System.Collections.Generic.ICollection`1::Contains(TaleWorlds.CampaignSystem.PolicyObject item) IL_00EB: brfalse => Label7 IL_00F0: ldloc.3 IL_00F1: ldc.r4 0.8 IL_00F6: mul IL_00F7: stloc.3 IL_00F8: Label7 IL_00F8: ldarg.3 IL_00F9: callvirt TaleWorlds.CampaignSystem.Kingdom TaleWorlds.CampaignSystem.Election.KingdomDecision::get_Kingdom() IL_00FE: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Kingdom::get_RulingClan() IL_0103: call static TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Clan::get_PlayerClan() IL_0108: beq => Label8 IL_010D: ldloc.3 IL_010E: ldc.r4 0.8 IL_0113: mul IL_0114: stloc.3 IL_0115: Label8 IL_0115: ldloc.2 IL_0116: ldloc.3 IL_0117: add IL_0118: stloc.2 IL_0119: Label6 IL_0119: ldc.i4.5 IL_011A: ldloc.2 IL_011B: ldc.r4 5 IL_0120: div IL_0121: conv.i4 IL_0122: mul IL_0123: conv.r4 IL_0124: stloc.2 IL_0125: ldloc.2 IL_0126: conv.i4 IL_0127: // end original IL_0127: stloc 4 (System.Int32) IL_012B: ldarga 1 IL_012F: ldarga 2 IL_0133: ldarga 3 IL_0137: ldloca 4 (System.Int32) IL_013B: call static System.Void BannerlordCheats.Patches.Kingdom.DecisionOverrideInfluenceCostPercentage::GetInfluenceRequiredToOverrideKingdomDecision(TaleWorlds.CampaignSystem.Election.DecisionOutcome& popularOption, TaleWorlds.CampaignSystem.Election.DecisionOutcome& overridingOption, TaleWorlds.CampaignSystem.Election.KingdomDecision& decision, System.Int32& __result) IL_0140: ldloc 4 (System.Int32) IL_0144: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Election.DecisionOutcome::get_TotalSupportPoints() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Election.DecisionOutcome::TaleWorlds.CampaignSystem.Election.DecisionOutcome.get_TotalSupportPoints_Patch1(TaleWorlds.CampaignSystem.Election.DecisionOutcome this) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld System.Single TaleWorlds.CampaignSystem.Election.DecisionOutcome::k__BackingField IL_000F: // end original IL_000F: stloc 0 (System.Single) IL_0013: ldarga 0 IL_0017: ldloca 0 (System.Single) IL_001B: call static System.Void BannerlordCheats.Patches.Kingdom.KingdomDecisionWeightMultiplier::Getter(TaleWorlds.CampaignSystem.Election.DecisionOutcome& __instance, System.Single& __result) IL_0020: ldloc 0 (System.Single) IL_0024: ret DONE ### Patch: static System.Void TaleWorlds.CampaignSystem.Actions.ChangeCrimeRatingAction::Apply(TaleWorlds.CampaignSystem.IFaction faction, System.Single deltaCrimeRating, System.Boolean showNotification) ### Replacement: static System.Void TaleWorlds.CampaignSystem.Actions.ChangeCrimeRatingAction::TaleWorlds.CampaignSystem.Actions.ChangeCrimeRatingAction.Apply_Patch1(TaleWorlds.CampaignSystem.IFaction faction, System.Single deltaCrimeRating, System.Boolean showNotification) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarga 0 IL_001B: ldarga 1 IL_001F: ldarga 2 IL_0023: call static System.Void BannerlordCheats.Patches.Kingdom.NoCrimeRatingForCrimes::Apply(TaleWorlds.CampaignSystem.IFaction& faction, System.Single& deltaCrimeRating, System.Boolean& showNotification) IL_0028: Label1 IL_0028: nop IL_0029: ldloc 0 (System.Boolean) IL_002D: brfalse => Label0 IL_0032: // start original IL_0032: ldarg.0 IL_0033: ldarg.1 IL_0034: ldarg.2 IL_0035: call static System.Void TaleWorlds.CampaignSystem.Actions.ChangeCrimeRatingAction::ApplyInternal(TaleWorlds.CampaignSystem.IFaction faction, System.Single deltaCrimeRating, System.Boolean showNotification) IL_003A: // end original IL_003A: Label0 IL_003A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel::GetRelationCostOfDisbandingArmy(System.Boolean isLeaderParty) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel::TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel.GetRelationCostOfDisbandingArmy_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel this, System.Boolean isLeaderParty) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: brtrue => Label0 IL_000F: ldc.i4.m1 IL_0010: br => Label1 IL_0015: Label0 IL_0015: ldc.i4.s -4 IL_0017: // end original IL_0017: Label1 IL_0017: stloc 0 (System.Int32) IL_001B: ldarg 1 IL_001F: ldloca 0 (System.Int32) IL_0023: call static System.Void BannerlordCheats.Patches.Kingdom.NoRelationshipLossOnDecisionArmyDisband::GetRelationCostOfDisbandingArmy(System.Boolean isLeaderParty, System.Int32& __result) IL_0028: ldloc 0 (System.Int32) IL_002C: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel::GetRelationCostOfExpellingClanFromKingdom() ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel::TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel.GetRelationCostOfExpellingClanFromKingdom_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultDiplomacyModel this) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldc.i4.s -20 IL_000B: // end original IL_000B: stloc 0 (System.Int32) IL_000F: ldloca 0 (System.Int32) IL_0013: call static System.Void BannerlordCheats.Patches.Kingdom.NoRelationshipLossOnDecisionExpellingClan::GetRelationCostOfExpellingClanFromKingdom(System.Int32& __result) IL_0018: ldloc 0 (System.Int32) IL_001C: ret DONE ### Patch: System.Int32 TaleWorlds.CampaignSystem.Election.KingdomElection::GetRelationChangeWithSponsor(TaleWorlds.CampaignSystem.Hero opposerOrSupporter, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight, System.Boolean isOpposingSides) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.Election.KingdomElection::TaleWorlds.CampaignSystem.Election.KingdomElection.GetRelationChangeWithSponsor_Patch1(TaleWorlds.CampaignSystem.Election.KingdomElection this, TaleWorlds.CampaignSystem.Hero opposerOrSupporter, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight, System.Boolean isOpposingSides) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: TaleWorlds.CampaignSystem.Clan IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Int32) IL_0009: // start original IL_0009: ldc.i4.0 IL_000A: stloc.0 IL_000B: ldarg.1 IL_000C: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_0011: stloc.1 IL_0012: ldarg.2 IL_0013: ldc.i4.4 IL_0014: bne.un => Label0 IL_0019: ldarg.0 IL_001A: ldfld TaleWorlds.CampaignSystem.Election.KingdomDecision TaleWorlds.CampaignSystem.Election.KingdomElection::_decision IL_001F: ldloc.1 IL_0020: ldc.i4.4 IL_0021: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_0026: conv.r4 IL_0027: ldc.r4 20 IL_002C: div IL_002D: conv.i4 IL_002E: stloc.0 IL_002F: br => Label1 IL_0034: Label0 IL_0034: ldarg.2 IL_0035: ldc.i4.3 IL_0036: bne.un => Label2 IL_003B: ldarg.0 IL_003C: ldfld TaleWorlds.CampaignSystem.Election.KingdomDecision TaleWorlds.CampaignSystem.Election.KingdomElection::_decision IL_0041: ldloc.1 IL_0042: ldc.i4.3 IL_0043: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_0048: conv.r4 IL_0049: ldc.r4 20 IL_004E: div IL_004F: conv.i4 IL_0050: stloc.0 IL_0051: br => Label3 IL_0056: Label2 IL_0056: ldarg.2 IL_0057: ldc.i4.2 IL_0058: bne.un => Label4 IL_005D: ldarg.0 IL_005E: ldfld TaleWorlds.CampaignSystem.Election.KingdomDecision TaleWorlds.CampaignSystem.Election.KingdomElection::_decision IL_0063: ldloc.1 IL_0064: ldc.i4.2 IL_0065: callvirt System.Int32 TaleWorlds.CampaignSystem.Election.KingdomDecision::GetInfluenceCostOfSupport(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight) IL_006A: conv.r4 IL_006B: ldc.r4 20 IL_0070: div IL_0071: conv.i4 IL_0072: stloc.0 IL_0073: Label1 IL_0073: Label3 IL_0073: Label4 IL_0073: ldarg.3 IL_0074: brtrue => Label5 IL_0079: ldloc.0 IL_007A: ldc.i4.2 IL_007B: mul IL_007C: br => Label6 IL_0081: Label5 IL_0081: ldloc.0 IL_0082: ldc.i4.m1 IL_0083: mul IL_0084: Label6 IL_0084: stloc.2 IL_0085: ldarg.3 IL_0086: brfalse => Label7 IL_008B: ldarg.1 IL_008C: ldfld TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.Hero::Culture IL_0091: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_SturgianDecisionPenaltyFeat() IL_0096: callvirt System.Boolean TaleWorlds.CampaignSystem.CultureObject::HasFeat(TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_009B: brfalse => Label8 IL_00A0: ldloc.2 IL_00A1: ldloc.2 IL_00A2: conv.r4 IL_00A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_SturgianDecisionPenaltyFeat() IL_00A8: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_00AD: mul IL_00AE: conv.i4 IL_00AF: add IL_00B0: stloc.2 IL_00B1: Label7 IL_00B1: Label8 IL_00B1: ldloc.2 IL_00B2: // end original IL_00B2: stloc 3 (System.Int32) IL_00B6: ldarg 2 IL_00BA: ldarg 3 IL_00BE: ldloca 3 (System.Int32) IL_00C2: call static System.Void BannerlordCheats.Patches.Kingdom.NoRelationshipLossOnDecisionKingdomDecision::GetRelationChangeWithSponsor(TaleWorlds.CampaignSystem.Election.SupportWeights supportWeight, System.Boolean isOpposingSides, System.Int32& __result) IL_00C7: ldloc 3 (System.Int32) IL_00CB: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel::CalculateInventoryCapacity(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, System.Boolean includeDescriptions, System.Int32 additionalTroops, System.Int32 additionalSpareMounts, System.Int32 additionalPackAnimals, System.Boolean includeFollowers) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel::TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel.CalculateInventoryCapacity_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel this, TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, System.Boolean includeDescriptions, System.Int32 additionalTroops, System.Int32 additionalSpareMounts, System.Int32 additionalPackAnimals, System.Boolean includeFollowers) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Int32 IL_0000: Local var 4: System.Int32 IL_0000: Local var 5: System.Int32 IL_0000: Local var 6: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 7: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 8: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldc.r4 0 IL_0011: ldarg.2 IL_0012: ldnull IL_0013: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0018: ldarg.1 IL_0019: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_001E: stloc.1 IL_001F: ldloc.1 IL_0020: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfMounts() IL_0025: stloc.2 IL_0026: ldloc.1 IL_0027: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfHealthyMembers() IL_002C: stloc.3 IL_002D: ldloc.1 IL_002E: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfPackAnimals() IL_0033: stloc.s 4 (System.Int32) IL_0035: ldloc.1 IL_0036: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfMenWithoutHorse() IL_003B: stloc.s 5 (System.Int32) IL_003D: ldarg.s 6 IL_003F: brfalse => Label0 IL_0044: ldarg.1 IL_0045: callvirt TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.CampaignSystem.Party.MobileParty::get_AttachedParties() IL_004A: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_004F: stloc.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) .try { IL_0051: br => Label1 IL_0056: Label2 IL_0056: ldloca.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_0058: call virtual TaleWorlds.CampaignSystem.Party.MobileParty System.Collections.Generic.Enumerator::get_Current() IL_005D: pop IL_005E: ldloc.2 IL_005F: ldloc.1 IL_0060: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfMounts() IL_0065: add IL_0066: stloc.2 IL_0067: ldloc.3 IL_0068: ldloc.1 IL_0069: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfHealthyMembers() IL_006E: add IL_006F: stloc.3 IL_0070: ldloc.s 4 (System.Int32) IL_0072: ldloc.1 IL_0073: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfPackAnimals() IL_0078: add IL_0079: stloc.s 4 (System.Int32) IL_007B: ldloc.s 5 (System.Int32) IL_007D: ldloc.1 IL_007E: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfMenWithoutHorse() IL_0083: add IL_0084: stloc.s 5 (System.Int32) IL_0086: Label1 IL_0086: ldloca.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_0088: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_008D: brtrue => Label2 IL_0092: leave => Label3 IL_0097: leave => (autogenerated) } // end try .finally { IL_009C: ldloca.s 7 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_009E: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty] IL_00A4: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_00A9: endfinally IL_00AA: leave => (autogenerated) } // end handler IL_00AB: Label0 IL_00AB: Label3 IL_00AB: ldarg.1 IL_00AC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_ArenicosHorses() IL_00B1: ldc.i4.0 IL_00B2: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_00B7: brfalse => Label4 IL_00BC: ldloc.3 IL_00BD: ldloc.3 IL_00BE: conv.r4 IL_00BF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_ArenicosHorses() IL_00C4: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_00C9: mul IL_00CA: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_00CF: add IL_00D0: stloc.3 IL_00D1: Label4 IL_00D1: ldarg.1 IL_00D2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_ForcedLabor() IL_00D7: ldc.i4.0 IL_00D8: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_00DD: brfalse => Label5 IL_00E2: ldloc.3 IL_00E3: ldloc.1 IL_00E4: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.PartyBase::get_PrisonRoster() IL_00E9: callvirt System.Int32 TaleWorlds.CampaignSystem.Roster.TroopRoster::get_TotalHealthyCount() IL_00EE: add IL_00EF: stloc.3 IL_00F0: Label5 IL_00F0: ldstr "HORSES_COUNT" IL_00F5: ldloc.2 IL_00F6: call static System.Void TaleWorlds.Localization.MBTextManager::SetTextVariable(System.String variableName, System.Int32 content) IL_00FB: ldstr "MWOH_COUNT" IL_0100: ldloc.s 5 (System.Int32) IL_0102: call static System.Void TaleWorlds.Localization.MBTextManager::SetTextVariable(System.String variableName, System.Int32 content) IL_0107: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0109: ldc.r4 10 IL_010E: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel::_textBase IL_0113: ldnull IL_0114: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0119: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_011B: ldloc.3 IL_011C: conv.r4 IL_011D: ldc.r4 2 IL_0122: mul IL_0123: ldc.r4 10 IL_0128: mul IL_0129: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel::_textTroops IL_012E: ldnull IL_012F: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0134: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0136: ldloc.2 IL_0137: conv.r4 IL_0138: ldc.r4 2 IL_013D: mul IL_013E: ldc.r4 10 IL_0143: mul IL_0144: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel::_textSpareMounts IL_0149: ldnull IL_014A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_014F: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0151: ldloc.s 4 (System.Int32) IL_0153: conv.r4 IL_0154: ldc.r4 10 IL_0159: mul IL_015A: ldc.r4 10 IL_015F: mul IL_0160: ldc.i4.0 IL_0161: ldnull IL_0162: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0167: ldarg.1 IL_0168: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_BeastWhisperer() IL_016D: ldc.i4.1 IL_016E: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0173: brfalse => Label6 IL_0178: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_017A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_BeastWhisperer() IL_017F: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0184: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Scouting::get_BeastWhisperer() IL_0189: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_018E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0193: Label6 IL_0193: ldarg.1 IL_0194: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_DeeperSacks() IL_0199: ldc.i4.0 IL_019A: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_019F: brfalse => Label7 IL_01A4: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01A6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_DeeperSacks() IL_01AB: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_DeeperSacks() IL_01B5: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_01BA: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01BF: Label7 IL_01BF: ldarg.1 IL_01C0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_ArenicosMules() IL_01C5: ldc.i4.0 IL_01C6: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_01CB: brfalse => Label8 IL_01D0: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01D2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_ArenicosMules() IL_01D7: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Steward::get_ArenicosMules() IL_01E1: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_01E6: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_01EB: Label8 IL_01EB: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01ED: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_01F4: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultInventoryCapacityModel::_textPackAnimals IL_01F9: ldnull IL_01FA: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_01FF: ldarg.1 IL_0200: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_CaravanMaster() IL_0205: ldc.i4.0 IL_0206: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_020B: brfalse => Label9 IL_0210: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0212: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_CaravanMaster() IL_0217: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_021C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Trade::get_CaravanMaster() IL_0221: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0226: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_022B: Label9 IL_022B: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022D: ldc.r4 10 IL_0232: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::LimitMin(System.Single minValue) IL_0237: ldloc.0 IL_0238: // end original IL_0238: stloc 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_023C: ldarg 1 IL_0240: ldarg 2 IL_0244: ldarg 3 IL_0248: ldarg 4 IL_024C: ldarg 5 IL_0250: ldarg 6 IL_0254: ldloca 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0258: call static System.Void BannerlordCheats.Patches.Inventory.ExtraInventoryCapacity::CalculateInventoryCapacity(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, System.Boolean includeDescriptions, System.Int32 additionalTroops, System.Int32 additionalSpareMounts, System.Int32 additionalPackAnimals, System.Boolean includeFollowers, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_025D: ldloc 8 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0261: ret DONE ### Patch: System.Void TaleWorlds.CampaignSystem.Inventory.InventoryLogic::Initialize(TaleWorlds.CampaignSystem.Roster.ItemRoster leftItemRoster, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isTrading, System.Boolean isSpecialActionsPermitted, TaleWorlds.CampaignSystem.CharacterObject initialCharacterOfRightRoster, TaleWorlds.CampaignSystem.Inventory.InventoryCategoryType merchantItemType, TaleWorlds.CampaignSystem.Settlements.IMarketData marketData, System.Boolean useBasePrices, TaleWorlds.Localization.TextObject leftRosterName, TaleWorlds.CampaignSystem.Roster.TroopRoster leftMemberRoster, TaleWorlds.CampaignSystem.Inventory.CapacityData otherSideCapacityData) ### Replacement: static System.Void TaleWorlds.CampaignSystem.Inventory.InventoryLogic::TaleWorlds.CampaignSystem.Inventory.InventoryLogic.Initialize_Patch1(TaleWorlds.CampaignSystem.Inventory.InventoryLogic this, TaleWorlds.CampaignSystem.Roster.ItemRoster leftItemRoster, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isTrading, System.Boolean isSpecialActionsPermitted, TaleWorlds.CampaignSystem.CharacterObject initialCharacterOfRightRoster, TaleWorlds.CampaignSystem.Inventory.InventoryCategoryType merchantItemType, TaleWorlds.CampaignSystem.Settlements.IMarketData marketData, System.Boolean useBasePrices, TaleWorlds.Localization.TextObject leftRosterName, TaleWorlds.CampaignSystem.Roster.TroopRoster leftMemberRoster, TaleWorlds.CampaignSystem.Inventory.CapacityData otherSideCapacityData) IL_0000: // start original IL_0000: ldarg.0 IL_0001: ldarg.1 IL_0002: ldarg.2 IL_0003: callvirt TaleWorlds.CampaignSystem.Roster.ItemRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_ItemRoster() IL_0008: ldarg.2 IL_0009: callvirt TaleWorlds.CampaignSystem.Roster.TroopRoster TaleWorlds.CampaignSystem.Party.MobileParty::get_MemberRoster() IL_000E: ldarg.3 IL_000F: ldarg.s 4 IL_0011: ldarg.s 5 IL_0013: ldarg.s 6 IL_0015: ldarg.s 7 IL_0017: ldarg.s 8 IL_0019: ldarg.s 9 IL_001B: ldarg.s 10 IL_001D: ldarg.s 11 IL_001F: call System.Void TaleWorlds.CampaignSystem.Inventory.InventoryLogic::Initialize(TaleWorlds.CampaignSystem.Roster.ItemRoster leftItemRoster, TaleWorlds.CampaignSystem.Roster.ItemRoster rightItemRoster, TaleWorlds.CampaignSystem.Roster.TroopRoster rightMemberRoster, System.Boolean isTrading, System.Boolean isSpecialActionsPermitted, TaleWorlds.CampaignSystem.CharacterObject initialCharacterOfRightRoster, TaleWorlds.CampaignSystem.Inventory.InventoryCategoryType merchantItemType, TaleWorlds.CampaignSystem.Settlements.IMarketData marketData, System.Boolean useBasePrices, TaleWorlds.Localization.TextObject leftRosterName, TaleWorlds.CampaignSystem.Roster.TroopRoster leftMemberRoster, TaleWorlds.CampaignSystem.Inventory.CapacityData otherSideCapacityData) IL_0024: // end original IL_0024: ldarga 1 IL_0028: ldarga 2 IL_002C: ldarga 3 IL_0030: ldarga 4 IL_0034: ldarga 5 IL_0038: ldarga 6 IL_003C: ldarga 7 IL_0040: ldarga 8 IL_0044: ldarga 9 IL_0048: ldarga 10 IL_004C: ldarga 11 IL_0050: call static System.Void BannerlordCheats.Patches.Inventory.NativeItemSpawning::Initialize(TaleWorlds.CampaignSystem.Roster.ItemRoster& leftItemRoster, TaleWorlds.CampaignSystem.Party.MobileParty& party, System.Boolean& isTrading, System.Boolean& isSpecialActionsPermitted, TaleWorlds.CampaignSystem.CharacterObject& initialCharacterOfRightRoster, TaleWorlds.CampaignSystem.Inventory.InventoryCategoryType& merchantItemType, TaleWorlds.CampaignSystem.Settlements.IMarketData& marketData, System.Boolean& useBasePrices, TaleWorlds.Localization.TextObject& leftRosterName, TaleWorlds.CampaignSystem.Roster.TroopRoster& leftMemberRoster, TaleWorlds.CampaignSystem.Inventory.CapacityData& otherSideCapacityData) IL_0055: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.ViewModelCollection.Encyclopedia.Pages.EncyclopediaPageVM::OnTick() ### Replacement: static System.Void TaleWorlds.CampaignSystem.ViewModelCollection.Encyclopedia.Pages.EncyclopediaPageVM::TaleWorlds.CampaignSystem.ViewModelCollection.Encyclopedia.Pages.EncyclopediaPageVM.OnTick_Patch0(TaleWorlds.CampaignSystem.ViewModelCollection.Encyclopedia.Pages.EncyclopediaPageVM this) IL_0000: // start original IL_0000: ldarg.0 IL_0001: call static System.Void BannerlordCheats.Patches.ILInjection::EnableHotkeysEncyclopedia(TaleWorlds.CampaignSystem.ViewModelCollection.Encyclopedia.Pages.EncyclopediaPageVM __instance) IL_0006: // end original IL_0006: ret DONE ### Patch: System.Void TaleWorlds.Core.GameManagerBase::OnTick(System.Single dt) ### Replacement: static System.Void TaleWorlds.Core.GameManagerBase::TaleWorlds.Core.GameManagerBase.OnTick_Patch0(TaleWorlds.Core.GameManagerBase this, System.Single dt) IL_0000: Local var 0: System.Collections.Generic.List`1/Enumerator IL_0000: // start original IL_0000: call static System.Void BannerlordCheats.Patches.ILInjection::EnableHotkeysGameManagerBase() IL_0005: ldarg.0 IL_0006: ldfld TaleWorlds.Core.EntitySystem`1 TaleWorlds.Core.GameManagerBase::_entitySystem IL_000B: callvirt TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.Core.EntitySystem`1::get_Components() IL_0010: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0015: stloc.0 .try { IL_0016: br => Label0 IL_001B: Label1 IL_001B: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.Core.GameManagerComponent]) IL_001D: call virtual TaleWorlds.Core.GameManagerComponent System.Collections.Generic.Enumerator::get_Current() IL_0022: callvirt virtual System.Void TaleWorlds.Core.GameManagerComponent::OnTick() IL_0027: Label0 IL_0027: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.Core.GameManagerComponent]) IL_0029: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_002E: brtrue => Label1 IL_0033: leave => Label2 IL_0038: leave => (autogenerated) } // end try .finally { IL_003D: ldloca.s 0 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.Core.GameManagerComponent]) IL_003F: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.Core.GameManagerComponent] IL_0045: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_004A: endfinally IL_004B: leave => (autogenerated) } // end handler IL_004C: Label2 IL_004C: ldarg.0 IL_004D: call TaleWorlds.Core.Game TaleWorlds.Core.GameManagerBase::get_Game() IL_0052: brfalse => Label3 IL_0057: ldarg.0 IL_0058: call TaleWorlds.Core.Game TaleWorlds.Core.GameManagerBase::get_Game() IL_005D: ldarg.1 IL_005E: callvirt System.Void TaleWorlds.Core.Game::OnTick(System.Single dt) IL_0063: // end original IL_0063: Label3 IL_0063: ret DONE ### Patch: System.Void SandBox.View.Map.MapScreen::OpenEncyclopedia() ### Replacement: static System.Void SandBox.View.Map.MapScreen::SandBox.View.Map.MapScreen.OpenEncyclopedia_Patch1(SandBox.View.Map.MapScreen this) IL_0000: // start original IL_0000: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0005: callvirt TaleWorlds.CampaignSystem.Encyclopedia.EncyclopediaManager TaleWorlds.CampaignSystem.Campaign::get_EncyclopediaManager() IL_000A: ldstr "LastPage" IL_000F: ldstr "" IL_0014: callvirt System.Void TaleWorlds.CampaignSystem.Encyclopedia.EncyclopediaManager::GoToLink(System.String pageType, System.String stringID) IL_0019: // end original IL_0019: call static System.Void BannerlordCheats.Patches.General.EnableHotkeyTipsEncyclopedia::OpenEncyclopedia() IL_001E: ret DONE ### Patch: static System.Void TaleWorlds.ScreenSystem.ScreenManager::PushScreen(TaleWorlds.ScreenSystem.ScreenBase screen) ### Replacement: static System.Void TaleWorlds.ScreenSystem.ScreenManager::TaleWorlds.ScreenSystem.ScreenManager.PushScreen_Patch1(TaleWorlds.ScreenSystem.ScreenBase screen) IL_0000: // start original IL_0000: ldstr "PushScreen" IL_0005: ldc.i4.0 IL_0006: ldc.i4.s 12 IL_0008: ldc.i8 17592186044416 IL_0011: call static System.Void TaleWorlds.Library.Debug::Print(System.String message, System.Int32 logLevel, TaleWorlds.Library.DebugColor color, System.UInt64 debugFilter) IL_0016: ldsfld System.Collections.ObjectModel.ObservableCollection`1 TaleWorlds.ScreenSystem.ScreenManager::_screenList IL_001B: callvirt virtual System.Int32 System.Collections.ObjectModel.Collection`1::get_Count() IL_0020: ldc.i4.0 IL_0021: ble => Label0 IL_0026: call static TaleWorlds.ScreenSystem.ScreenBase TaleWorlds.ScreenSystem.ScreenManager::get_TopScreen() IL_002B: callvirt System.Void TaleWorlds.ScreenSystem.ScreenBase::HandlePause() IL_0030: call static TaleWorlds.ScreenSystem.ScreenBase TaleWorlds.ScreenSystem.ScreenManager::get_TopScreen() IL_0035: callvirt System.Boolean TaleWorlds.ScreenSystem.ScreenBase::get_IsActive() IL_003A: brfalse => Label1 IL_003F: call static TaleWorlds.ScreenSystem.ScreenBase TaleWorlds.ScreenSystem.ScreenManager::get_TopScreen() IL_0044: callvirt System.Void TaleWorlds.ScreenSystem.ScreenBase::HandleDeactivate() IL_0049: Label0 IL_0049: Label1 IL_0049: ldsfld System.Collections.ObjectModel.ObservableCollection`1 TaleWorlds.ScreenSystem.ScreenManager::_screenList IL_004E: ldarg.0 IL_004F: callvirt virtual System.Void System.Collections.ObjectModel.Collection`1::Add(TaleWorlds.ScreenSystem.ScreenBase item) IL_0054: ldarg.0 IL_0055: callvirt System.Void TaleWorlds.ScreenSystem.ScreenBase::HandleInitialize() IL_005A: ldarg.0 IL_005B: callvirt System.Void TaleWorlds.ScreenSystem.ScreenBase::HandleActivate() IL_0060: ldarg.0 IL_0061: callvirt System.Void TaleWorlds.ScreenSystem.ScreenBase::HandleResume() IL_0066: ldc.i4.1 IL_0067: stsfld System.Boolean TaleWorlds.ScreenSystem.ScreenManager::_globalOrderDirty IL_006C: ldsfld TaleWorlds.ScreenSystem.OnPushScreenEvent TaleWorlds.ScreenSystem.ScreenManager::OnPushScreen IL_0071: dup IL_0072: brtrue => Label2 IL_0077: pop IL_0078: br => Label3 IL_007D: Label2 IL_007D: ldarg.0 IL_007E: callvirt virtual System.Void TaleWorlds.ScreenSystem.OnPushScreenEvent::Invoke(TaleWorlds.ScreenSystem.ScreenBase pushedScreen) IL_0083: // end original IL_0083: Label3 IL_0083: ldarga 0 IL_0087: call static System.Void BannerlordCheats.Patches.General.EnableHotkeyTipsScreens::PushScreen(TaleWorlds.ScreenSystem.ScreenBase& screen) IL_008C: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify) ### Replacement: static System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper.AddSkillXp_Patch1(TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper this, TaleWorlds.Core.SkillObject skill, System.Single rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Int32 IL_0000: Local var 5: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 5 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 5 (System.Boolean) IL_000E: ldloc 5 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarga 2 IL_001F: ldarg 3 IL_0023: ldarg 4 IL_0027: ldarga 0 IL_002B: call static System.Void BannerlordCheats.Patches.Experience.ClanExperienceMultiplier::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single& rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify, TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper& __instance) IL_0030: Label1 IL_0030: nop IL_0031: ldloc 5 (System.Boolean) IL_0035: brfalse => Label0 IL_003A: // start original IL_003A: ldarg.2 IL_003B: ldc.r4 0 IL_0040: bgt.un => Label2 IL_0045: br => Label8 IL_004A: Label2 IL_004A: ldarg.3 IL_004B: brfalse => Label3 IL_0050: ldarg.0 IL_0051: ldarg.2 IL_0052: ldarg.s 4 IL_0054: call System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GainRawXp(System.Single rawXp, System.Boolean shouldNotify) IL_0059: Label3 IL_0059: ldarg.2 IL_005A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_005F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0064: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.GenericXpModel TaleWorlds.CampaignSystem.GameModels::get_GenericXpModel() IL_0069: ldarg.0 IL_006A: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::get_Hero() IL_006F: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.GenericXpModel::GetXpMultiplier(TaleWorlds.CampaignSystem.Hero hero) IL_0074: mul IL_0075: stloc.0 IL_0076: ldloc.0 IL_0077: ldc.r4 0 IL_007C: bgt.un => Label4 IL_0081: br => Label9 IL_0086: Label4 IL_0086: ldarg.0 IL_0087: ldarg.1 IL_0088: call System.Single TaleWorlds.Core.PropertyOwnerF`1::GetPropertyValue(TaleWorlds.Core.PropertyObject attribute) IL_008D: ldarg.0 IL_008E: ldarg.1 IL_008F: call virtual System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GetFocusFactor(TaleWorlds.Core.SkillObject skill) IL_0094: stloc.1 IL_0095: ldarg.3 IL_0096: brtrue => Label5 IL_009B: ldloc.0 IL_009C: br => Label6 IL_00A1: Label5 IL_00A1: ldloc.0 IL_00A2: ldloc.1 IL_00A3: mul IL_00A4: Label6 IL_00A4: stloc.2 IL_00A5: ldloc.2 IL_00A6: add IL_00A7: stloc.3 IL_00A8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00AD: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00B2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_00B7: ldarg.0 IL_00B8: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::get_Hero() IL_00BD: ldarg.1 IL_00BE: ldloc.3 IL_00BF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::GetSkillLevelChange(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill, System.Single skillXp) IL_00C4: stloc.s 4 (System.Int32) IL_00C6: ldarg.0 IL_00C7: ldarg.1 IL_00C8: ldloc.3 IL_00C9: call System.Void TaleWorlds.Core.PropertyOwnerF`1::SetPropertyValue(TaleWorlds.Core.PropertyObject attribute, System.Single value) IL_00CE: ldloc.s 4 (System.Int32) IL_00D0: ldc.i4.0 IL_00D1: ble => Label7 IL_00D6: ldarg.0 IL_00D7: ldarg.1 IL_00D8: ldloc.s 4 (System.Int32) IL_00DA: ldarg.s 4 IL_00DC: call System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::ChangeSkillLevelFromXpChange(TaleWorlds.Core.SkillObject skill, System.Int32 changeAmount, System.Boolean shouldNotify) IL_00E1: // end original IL_00E1: Label7 IL_00E1: Label8 IL_00E1: Label9 IL_00E1: Label0 IL_00E1: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify) ### Replacement: static System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper.AddSkillXp_Patch2(TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper this, TaleWorlds.Core.SkillObject skill, System.Single rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Int32 IL_0000: Local var 5: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 5 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 5 (System.Boolean) IL_000E: ldloc 5 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarga 2 IL_001F: ldarg 3 IL_0023: ldarg 4 IL_0027: ldarga 0 IL_002B: call static System.Void BannerlordCheats.Patches.Experience.ClanExperienceMultiplier::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single& rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify, TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper& __instance) IL_0030: Label1 IL_0030: nop IL_0031: ldloc 5 (System.Boolean) IL_0035: brfalse => Label2 IL_003A: ldarg 1 IL_003E: ldarga 2 IL_0042: ldarg 3 IL_0046: ldarg 4 IL_004A: ldarga 0 IL_004E: call static System.Void BannerlordCheats.Patches.Experience.CompanionExperienceMultiplier::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single& rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify, TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper& __instance) IL_0053: Label2 IL_0053: nop IL_0054: ldloc 5 (System.Boolean) IL_0058: brfalse => Label0 IL_005D: // start original IL_005D: ldarg.2 IL_005E: ldc.r4 0 IL_0063: bgt.un => Label3 IL_0068: br => Label9 IL_006D: Label3 IL_006D: ldarg.3 IL_006E: brfalse => Label4 IL_0073: ldarg.0 IL_0074: ldarg.2 IL_0075: ldarg.s 4 IL_0077: call System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GainRawXp(System.Single rawXp, System.Boolean shouldNotify) IL_007C: Label4 IL_007C: ldarg.2 IL_007D: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_0082: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0087: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.GenericXpModel TaleWorlds.CampaignSystem.GameModels::get_GenericXpModel() IL_008C: ldarg.0 IL_008D: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::get_Hero() IL_0092: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.GenericXpModel::GetXpMultiplier(TaleWorlds.CampaignSystem.Hero hero) IL_0097: mul IL_0098: stloc.0 IL_0099: ldloc.0 IL_009A: ldc.r4 0 IL_009F: bgt.un => Label5 IL_00A4: br => Label10 IL_00A9: Label5 IL_00A9: ldarg.0 IL_00AA: ldarg.1 IL_00AB: call System.Single TaleWorlds.Core.PropertyOwnerF`1::GetPropertyValue(TaleWorlds.Core.PropertyObject attribute) IL_00B0: ldarg.0 IL_00B1: ldarg.1 IL_00B2: call virtual System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GetFocusFactor(TaleWorlds.Core.SkillObject skill) IL_00B7: stloc.1 IL_00B8: ldarg.3 IL_00B9: brtrue => Label6 IL_00BE: ldloc.0 IL_00BF: br => Label7 IL_00C4: Label6 IL_00C4: ldloc.0 IL_00C5: ldloc.1 IL_00C6: mul IL_00C7: Label7 IL_00C7: stloc.2 IL_00C8: ldloc.2 IL_00C9: add IL_00CA: stloc.3 IL_00CB: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00D0: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00D5: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_00DA: ldarg.0 IL_00DB: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::get_Hero() IL_00E0: ldarg.1 IL_00E1: ldloc.3 IL_00E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::GetSkillLevelChange(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill, System.Single skillXp) IL_00E7: stloc.s 4 (System.Int32) IL_00E9: ldarg.0 IL_00EA: ldarg.1 IL_00EB: ldloc.3 IL_00EC: call System.Void TaleWorlds.Core.PropertyOwnerF`1::SetPropertyValue(TaleWorlds.Core.PropertyObject attribute, System.Single value) IL_00F1: ldloc.s 4 (System.Int32) IL_00F3: ldc.i4.0 IL_00F4: ble => Label8 IL_00F9: ldarg.0 IL_00FA: ldarg.1 IL_00FB: ldloc.s 4 (System.Int32) IL_00FD: ldarg.s 4 IL_00FF: call System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::ChangeSkillLevelFromXpChange(TaleWorlds.Core.SkillObject skill, System.Int32 changeAmount, System.Boolean shouldNotify) IL_0104: // end original IL_0104: Label8 IL_0104: Label9 IL_0104: Label10 IL_0104: Label0 IL_0104: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::CalculateLearningRate(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill) ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel.CalculateLearningRate_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel this, TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Int32 IL_0000: Local var 4: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 5: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 5 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld System.Int32 TaleWorlds.CampaignSystem.Hero::Level IL_000F: stloc.0 IL_0010: ldarg.1 IL_0011: ldarg.2 IL_0012: callvirt TaleWorlds.Core.CharacterAttribute TaleWorlds.Core.SkillObject::get_CharacterAttribute() IL_0017: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetAttributeValue(TaleWorlds.Core.CharacterAttribute charAttribute) IL_001C: stloc.1 IL_001D: ldarg.1 IL_001E: callvirt TaleWorlds.CampaignSystem.CharacterDevelopment.IHeroDeveloper TaleWorlds.CampaignSystem.Hero::get_HeroDeveloper() IL_0023: ldarg.2 IL_0024: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.CharacterDevelopment.IHeroDeveloper::GetFocus(TaleWorlds.Core.SkillObject skill) IL_0029: stloc.2 IL_002A: ldarg.1 IL_002B: ldarg.2 IL_002C: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetSkillValue(TaleWorlds.Core.SkillObject skill) IL_0031: stloc.3 IL_0032: ldarg.0 IL_0033: ldloc.1 IL_0034: ldloc.2 IL_0035: ldloc.3 IL_0036: ldloc.0 IL_0037: ldarg.2 IL_0038: callvirt TaleWorlds.Core.CharacterAttribute TaleWorlds.Core.SkillObject::get_CharacterAttribute() IL_003D: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0042: ldc.i4.0 IL_0043: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::CalculateLearningRate(System.Int32 attributeValue, System.Int32 focusValue, System.Int32 skillValue, System.Int32 characterLevel, TaleWorlds.Localization.TextObject attributeName, System.Boolean includeDescriptions) IL_0048: stloc.s 4 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004A: ldloca.s 4 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004C: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0051: // end original IL_0051: stloc 5 (System.Single) IL_0055: ldarg 1 IL_0059: ldarg 2 IL_005D: ldloca 5 (System.Single) IL_0061: call static System.Void BannerlordCheats.Patches.Experience.CompanionLearningRateMultiplier::CalculateLearningRate(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill, System.Single& __result) IL_0066: ldloc 5 (System.Single) IL_006A: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify) ### Replacement: static System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper.AddSkillXp_Patch3(TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper this, TaleWorlds.Core.SkillObject skill, System.Single rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Int32 IL_0000: Local var 5: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 5 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 5 (System.Boolean) IL_000E: ldloc 5 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarga 2 IL_001F: ldarg 3 IL_0023: ldarg 4 IL_0027: ldarga 0 IL_002B: call static System.Void BannerlordCheats.Patches.Experience.ClanExperienceMultiplier::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single& rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify, TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper& __instance) IL_0030: Label1 IL_0030: nop IL_0031: ldloc 5 (System.Boolean) IL_0035: brfalse => Label2 IL_003A: ldarg 1 IL_003E: ldarga 2 IL_0042: ldarg 3 IL_0046: ldarg 4 IL_004A: ldarga 0 IL_004E: call static System.Void BannerlordCheats.Patches.Experience.CompanionExperienceMultiplier::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single& rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify, TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper& __instance) IL_0053: Label2 IL_0053: nop IL_0054: ldloc 5 (System.Boolean) IL_0058: brfalse => Label3 IL_005D: ldarg 1 IL_0061: ldarga 2 IL_0065: ldarg 3 IL_0069: ldarg 4 IL_006D: ldarga 0 IL_0071: call static System.Void BannerlordCheats.Patches.Experience.ExperienceMultiplier::AddSkillXp(TaleWorlds.Core.SkillObject skill, System.Single& rawXp, System.Boolean isAffectedByFocusFactor, System.Boolean shouldNotify, TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper& __instance) IL_0076: Label3 IL_0076: nop IL_0077: ldloc 5 (System.Boolean) IL_007B: brfalse => Label0 IL_0080: // start original IL_0080: ldarg.2 IL_0081: ldc.r4 0 IL_0086: bgt.un => Label4 IL_008B: br => Label10 IL_0090: Label4 IL_0090: ldarg.3 IL_0091: brfalse => Label5 IL_0096: ldarg.0 IL_0097: ldarg.2 IL_0098: ldarg.s 4 IL_009A: call System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GainRawXp(System.Single rawXp, System.Boolean shouldNotify) IL_009F: Label5 IL_009F: ldarg.2 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.GenericXpModel TaleWorlds.CampaignSystem.GameModels::get_GenericXpModel() IL_00AF: ldarg.0 IL_00B0: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::get_Hero() IL_00B5: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.GenericXpModel::GetXpMultiplier(TaleWorlds.CampaignSystem.Hero hero) IL_00BA: mul IL_00BB: stloc.0 IL_00BC: ldloc.0 IL_00BD: ldc.r4 0 IL_00C2: bgt.un => Label6 IL_00C7: br => Label11 IL_00CC: Label6 IL_00CC: ldarg.0 IL_00CD: ldarg.1 IL_00CE: call System.Single TaleWorlds.Core.PropertyOwnerF`1::GetPropertyValue(TaleWorlds.Core.PropertyObject attribute) IL_00D3: ldarg.0 IL_00D4: ldarg.1 IL_00D5: call virtual System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GetFocusFactor(TaleWorlds.Core.SkillObject skill) IL_00DA: stloc.1 IL_00DB: ldarg.3 IL_00DC: brtrue => Label7 IL_00E1: ldloc.0 IL_00E2: br => Label8 IL_00E7: Label7 IL_00E7: ldloc.0 IL_00E8: ldloc.1 IL_00E9: mul IL_00EA: Label8 IL_00EA: stloc.2 IL_00EB: ldloc.2 IL_00EC: add IL_00ED: stloc.3 IL_00EE: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00F3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00F8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_00FD: ldarg.0 IL_00FE: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::get_Hero() IL_0103: ldarg.1 IL_0104: ldloc.3 IL_0105: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::GetSkillLevelChange(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill, System.Single skillXp) IL_010A: stloc.s 4 (System.Int32) IL_010C: ldarg.0 IL_010D: ldarg.1 IL_010E: ldloc.3 IL_010F: call System.Void TaleWorlds.Core.PropertyOwnerF`1::SetPropertyValue(TaleWorlds.Core.PropertyObject attribute, System.Single value) IL_0114: ldloc.s 4 (System.Int32) IL_0116: ldc.i4.0 IL_0117: ble => Label9 IL_011C: ldarg.0 IL_011D: ldarg.1 IL_011E: ldloc.s 4 (System.Int32) IL_0120: ldarg.s 4 IL_0122: call System.Void TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::ChangeSkillLevelFromXpChange(TaleWorlds.Core.SkillObject skill, System.Int32 changeAmount, System.Boolean shouldNotify) IL_0127: // end original IL_0127: Label9 IL_0127: Label10 IL_0127: Label11 IL_0127: Label0 IL_0127: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::GetRequiredFocusPointsToAddFocus(TaleWorlds.Core.SkillObject skill) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper::TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper.GetRequiredFocusPointsToAddFocus_Patch1(TaleWorlds.CampaignSystem.CharacterDevelopment.HeroDeveloper this, TaleWorlds.Core.SkillObject skill) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldc.i4.1 IL_000A: // end original IL_000A: stloc 0 (System.Int32) IL_000E: ldarg 1 IL_0012: ldloca 0 (System.Int32) IL_0016: call static System.Void BannerlordCheats.Patches.Experience.FreeFocusPointAssignment::GetRequiredFocusPointsToAddFocus(TaleWorlds.Core.SkillObject skill, System.Int32& __result) IL_001B: ldloc 0 (System.Int32) IL_001F: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::CalculateLearningLimit(System.Int32 attributeValue, System.Int32 focusValue, TaleWorlds.Localization.TextObject attributeName, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel.CalculateLearningLimit_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel this, System.Int32 attributeValue, System.Int32 focusValue, TaleWorlds.Localization.TextObject attributeName, System.Boolean includeDescriptions) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldc.r4 0 IL_0011: ldarg.s 4 IL_0013: ldnull IL_0014: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0019: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_001B: ldarg.1 IL_001C: ldc.i4.1 IL_001D: sub IL_001E: ldc.i4.s 10 IL_0020: mul IL_0021: conv.r4 IL_0022: ldarg.3 IL_0023: ldnull IL_0024: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0029: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_002B: ldarg.2 IL_002C: ldc.i4.s 30 IL_002E: mul IL_002F: conv.r4 IL_0030: ldsfld TaleWorlds.Localization.TextObject TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::_skillFocusText IL_0035: ldnull IL_0036: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_003B: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003D: ldc.r4 0 IL_0042: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::LimitMin(System.Single minValue) IL_0047: ldloc.0 IL_0048: // end original IL_0048: stloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004C: ldarg 1 IL_0050: ldarg 2 IL_0054: ldarg 3 IL_0058: ldarg 4 IL_005C: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0060: call static System.Void BannerlordCheats.Patches.Experience.LearningLimitMultiplier::CalculateLearningLimit(System.Int32 attributeValue, System.Int32 focusValue, TaleWorlds.Localization.TextObject attributeName, System.Boolean includeDescriptions, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0065: ldloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0069: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::CalculateLearningRate(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill) ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel::TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel.CalculateLearningRate_Patch2(TaleWorlds.CampaignSystem.GameComponents.DefaultCharacterDevelopmentModel this, TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Int32 IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Int32 IL_0000: Local var 4: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 5: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 5 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld System.Int32 TaleWorlds.CampaignSystem.Hero::Level IL_000F: stloc.0 IL_0010: ldarg.1 IL_0011: ldarg.2 IL_0012: callvirt TaleWorlds.Core.CharacterAttribute TaleWorlds.Core.SkillObject::get_CharacterAttribute() IL_0017: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetAttributeValue(TaleWorlds.Core.CharacterAttribute charAttribute) IL_001C: stloc.1 IL_001D: ldarg.1 IL_001E: callvirt TaleWorlds.CampaignSystem.CharacterDevelopment.IHeroDeveloper TaleWorlds.CampaignSystem.Hero::get_HeroDeveloper() IL_0023: ldarg.2 IL_0024: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.CharacterDevelopment.IHeroDeveloper::GetFocus(TaleWorlds.Core.SkillObject skill) IL_0029: stloc.2 IL_002A: ldarg.1 IL_002B: ldarg.2 IL_002C: callvirt System.Int32 TaleWorlds.CampaignSystem.Hero::GetSkillValue(TaleWorlds.Core.SkillObject skill) IL_0031: stloc.3 IL_0032: ldarg.0 IL_0033: ldloc.1 IL_0034: ldloc.2 IL_0035: ldloc.3 IL_0036: ldloc.0 IL_0037: ldarg.2 IL_0038: callvirt TaleWorlds.Core.CharacterAttribute TaleWorlds.Core.SkillObject::get_CharacterAttribute() IL_003D: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0042: ldc.i4.0 IL_0043: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::CalculateLearningRate(System.Int32 attributeValue, System.Int32 focusValue, System.Int32 skillValue, System.Int32 characterLevel, TaleWorlds.Localization.TextObject attributeName, System.Boolean includeDescriptions) IL_0048: stloc.s 4 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004A: ldloca.s 4 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004C: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0051: // end original IL_0051: stloc 5 (System.Single) IL_0055: ldarg 1 IL_0059: ldarg 2 IL_005D: ldloca 5 (System.Single) IL_0061: call static System.Void BannerlordCheats.Patches.Experience.CompanionLearningRateMultiplier::CalculateLearningRate(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill, System.Single& __result) IL_0066: ldarg 1 IL_006A: ldarg 2 IL_006E: ldloca 5 (System.Single) IL_0072: call static System.Void BannerlordCheats.Patches.Experience.LearningRateMultiplier::CalculateLearningRate(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Core.SkillObject skill, System.Single& __result) IL_0077: ldloc 5 (System.Single) IL_007B: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultCombatXpModel::GetXpFromHit(TaleWorlds.CampaignSystem.CharacterObject attackerTroop, TaleWorlds.CampaignSystem.CharacterObject captain, TaleWorlds.CampaignSystem.CharacterObject attackedTroop, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Int32 damage, System.Boolean isFatal, TaleWorlds.CampaignSystem.ComponentInterfaces.MissionTypeEnum missionType, System.Int32& xpAmount) ### Replacement: static System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultCombatXpModel::TaleWorlds.CampaignSystem.GameComponents.DefaultCombatXpModel.GetXpFromHit_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultCombatXpModel this, TaleWorlds.CampaignSystem.CharacterObject attackerTroop, TaleWorlds.CampaignSystem.CharacterObject captain, TaleWorlds.CampaignSystem.CharacterObject attackedTroop, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Int32 damage, System.Boolean isFatal, TaleWorlds.CampaignSystem.ComponentInterfaces.MissionTypeEnum missionType, System.Int32& xpAmount) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Single IL_0000: Local var 6: System.Single IL_0000: Local var 7: System.Single IL_0000: Local var 8: System.Single IL_0000: Local var 9: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: // start original IL_0000: ldarg.3 IL_0001: callvirt virtual System.Int32 TaleWorlds.Core.BasicCharacterObject::MaxHitPoints() IL_0006: stloc.0 IL_0007: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000C: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0011: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel TaleWorlds.CampaignSystem.GameModels::get_MilitaryPowerModel() IL_0016: stloc.1 IL_0017: ldloc.1 IL_0018: ldarg.3 IL_0019: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetDefaultTroopPower(TaleWorlds.CampaignSystem.CharacterObject troop) IL_001E: stloc.2 IL_001F: ldloc.1 IL_0020: ldarg.1 IL_0021: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetDefaultTroopPower(TaleWorlds.CampaignSystem.CharacterObject troop) IL_0026: stloc.3 IL_0027: ldc.r4 0 IL_002C: stloc.s 4 (System.Single) IL_002E: ldc.r4 0 IL_0033: stloc.s 5 (System.Single) IL_0035: ldarg.s 4 IL_0037: brtrue => Label0 IL_003C: ldnull IL_003D: br => Label1 IL_0042: Label0 IL_0042: ldarg.s 4 IL_0044: call TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_0049: Label1 IL_0049: brfalse => Label2 IL_004E: ldloc.1 IL_004F: ldarg.3 IL_0050: ldarg.s 4 IL_0052: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_Side() IL_0057: ldarg.s 4 IL_0059: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_005E: ldfld TaleWorlds.CampaignSystem.MapEvents.PowerCalculationContext TaleWorlds.CampaignSystem.MapEvents.MapEvent::SimulationContext IL_0063: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetContextModifier(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.Core.BattleSideEnum battleSideEnum, TaleWorlds.CampaignSystem.MapEvents.PowerCalculationContext context) IL_0068: stloc.s 5 (System.Single) IL_006A: ldarg.s 4 IL_006C: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEventSide() IL_0071: ldfld System.Single TaleWorlds.CampaignSystem.MapEvents.MapEventSide::LeaderSimulationModifier IL_0076: stloc.s 4 (System.Single) IL_0078: Label2 IL_0078: ldloc.1 IL_0079: ldloc.2 IL_007A: ldloc.s 4 (System.Single) IL_007C: ldloc.s 5 (System.Single) IL_007E: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetTroopPower(System.Single defaultTroopPower, System.Single leaderModifier, System.Single contextModifier) IL_0083: stloc.s 6 (System.Single) IL_0085: ldloc.1 IL_0086: ldloc.3 IL_0087: ldloc.s 4 (System.Single) IL_0089: ldloc.s 5 (System.Single) IL_008B: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetTroopPower(System.Single defaultTroopPower, System.Single leaderModifier, System.Single contextModifier) IL_0090: stloc.s 7 (System.Single) IL_0092: ldc.r4 0.4 IL_0097: ldloc.s 7 (System.Single) IL_0099: ldc.r4 0.5 IL_009E: add IL_009F: mul IL_00A0: ldloc.s 6 (System.Single) IL_00A2: ldc.r4 0.5 IL_00A7: add IL_00A8: mul IL_00A9: ldarg.s 5 IL_00AB: ldloc.0 IL_00AC: call static System.Int32 TaleWorlds.Library.MathF::Min(System.Int32 a, System.Int32 b) IL_00B1: ldarg.s 6 IL_00B3: brtrue => Label3 IL_00B8: ldc.i4.0 IL_00B9: br => Label4 IL_00BE: Label3 IL_00BE: ldloc.0 IL_00BF: Label4 IL_00BF: add IL_00C0: conv.r4 IL_00C1: mul IL_00C2: stloc.s 8 (System.Single) IL_00C4: ldloc.s 8 (System.Single) IL_00C6: ldarg.s 7 IL_00C8: ldc.i4.4 IL_00C9: beq => Label5 IL_00CE: ldarg.s 7 IL_00D0: ldc.i4.1 IL_00D1: beq => Label6 IL_00D6: ldarg.s 7 IL_00D8: ldc.i4.2 IL_00D9: beq => Label7 IL_00DE: ldarg.s 7 IL_00E0: ldc.i4.3 IL_00E1: beq => Label8 IL_00E6: ldarg.s 7 IL_00E8: brfalse => Label9 IL_00ED: ldc.r4 1 IL_00F2: br => Label10 IL_00F7: Label9 IL_00F7: ldc.r4 1 IL_00FC: br => Label11 IL_0101: Label8 IL_0101: ldc.r4 0.9 IL_0106: br => Label12 IL_010B: Label7 IL_010B: ldc.r4 0.33 IL_0110: br => Label13 IL_0115: Label6 IL_0115: ldc.r4 0.0625 IL_011A: br => Label14 IL_011F: Label5 IL_011F: ldc.r4 0 IL_0124: Label10 IL_0124: Label11 IL_0124: Label12 IL_0124: Label13 IL_0124: Label14 IL_0124: mul IL_0125: stloc.s 8 (System.Single) IL_0127: ldloca.s 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0129: ldloc.s 8 (System.Single) IL_012B: ldc.i4.0 IL_012C: ldnull IL_012D: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0132: ldarg.s 4 IL_0134: brfalse => Label15 IL_0139: ldarg.0 IL_013A: ldarg.s 4 IL_013C: ldloca.s 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_013E: ldarg.1 IL_013F: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultCombatXpModel::GetBattleXpBonusFromPerks(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.ExplainedNumber& xpToGain, TaleWorlds.CampaignSystem.CharacterObject troop) IL_0144: Label15 IL_0144: ldarg.2 IL_0145: brfalse => Label16 IL_014A: ldarg.2 IL_014B: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_0150: brfalse => Label17 IL_0155: ldarg.2 IL_0156: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_InspiringLeader() IL_015B: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0160: brfalse => Label18 IL_0165: ldloca.s 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0167: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_InspiringLeader() IL_016C: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0171: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_InspiringLeader() IL_0176: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_017B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0180: Label16 IL_0180: Label17 IL_0180: Label18 IL_0180: ldarg.s 8 IL_0182: ldloca.s 9 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0184: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0189: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_018E: stind.i4 IL_018F: // end original IL_018F: ldarg 1 IL_0193: ldarg 2 IL_0197: ldarg 3 IL_019B: ldarg 4 IL_019F: ldarg 5 IL_01A3: ldarg 6 IL_01A7: ldarg 7 IL_01AB: ldarg 8 IL_01AF: call static System.Void BannerlordCheats.Patches.Experience.TroopExperienceMultiplier::GetXpFromHit(TaleWorlds.CampaignSystem.CharacterObject attackerTroop, TaleWorlds.CampaignSystem.CharacterObject captain, TaleWorlds.CampaignSystem.CharacterObject attackedTroop, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Int32 damage, System.Boolean isFatal, TaleWorlds.CampaignSystem.ComponentInterfaces.MissionTypeEnum missionType, System.Int32& xpAmount) IL_01B4: ret DONE ### Patch: virtual System.Boolean SandBox.GameComponents.SandboxAgentApplyDamageModel::DecideCrushedThrough(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent defenderAgent, System.Single totalAttackEnergy, TaleWorlds.MountAndBlade.UsageDirection attackDirection, TaleWorlds.Core.StrikeType strikeType, TaleWorlds.Core.WeaponComponentData defendItem, System.Boolean isPassiveUsage) ### Replacement: static System.Boolean SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.DecideCrushedThrough_Patch1(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent defenderAgent, System.Single totalAttackEnergy, TaleWorlds.MountAndBlade.UsageDirection attackDirection, TaleWorlds.Core.StrikeType strikeType, TaleWorlds.Core.WeaponComponentData defendItem, System.Boolean isPassiveUsage) IL_0000: Local var 0: TaleWorlds.Core.EquipmentIndex IL_0000: Local var 1: System.Single IL_0000: Local var 2: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 3: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Boolean) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldc.i4.1 IL_000B: callvirt TaleWorlds.Core.EquipmentIndex TaleWorlds.MountAndBlade.Agent::GetWieldedItemIndex(TaleWorlds.MountAndBlade.HandIndex index) IL_0010: stloc.0 IL_0011: ldloc.0 IL_0012: ldc.i4.m1 IL_0013: bne.un => Label0 IL_0018: ldarg.1 IL_0019: ldc.i4.0 IL_001A: callvirt TaleWorlds.Core.EquipmentIndex TaleWorlds.MountAndBlade.Agent::GetWieldedItemIndex(TaleWorlds.MountAndBlade.HandIndex index) IL_001F: stloc.0 IL_0020: Label0 IL_0020: ldloc.0 IL_0021: ldc.i4.m1 IL_0022: bne.un => Label1 IL_0027: ldnull IL_0028: br => Label2 IL_002D: Label1 IL_002D: ldarg.1 IL_002E: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_0033: ldloc.0 IL_0034: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0039: stloc.2 IL_003A: ldloca.s 2 (TaleWorlds.MountAndBlade.MissionWeapon) IL_003C: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0041: Label2 IL_0041: ldnull IL_0042: ceq IL_0044: ldarg.s 7 IL_0046: or IL_0047: brtrue => Label3 IL_004C: ldarg.s 5 IL_004E: brtrue => Label4 IL_0053: ldarg.s 4 IL_0055: brfalse => Label5 IL_005A: Label3 IL_005A: Label4 IL_005A: ldc.i4.0 IL_005B: br => Label8 IL_0060: Label5 IL_0060: ldc.r4 58 IL_0065: stloc.1 IL_0066: ldarg.s 6 IL_0068: brfalse => Label6 IL_006D: ldarg.s 6 IL_006F: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_0074: brfalse => Label7 IL_0079: ldloc.1 IL_007A: ldc.r4 1.2 IL_007F: mul IL_0080: stloc.1 IL_0081: Label6 IL_0081: Label7 IL_0081: ldarg.3 IL_0082: ldloc.1 IL_0083: cgt IL_0085: // end original IL_0085: Label8 IL_0085: stloc 3 (System.Boolean) IL_0089: ldarg 1 IL_008D: ldarg 2 IL_0091: ldarg 3 IL_0095: ldarg 4 IL_0099: ldarg 5 IL_009D: ldarg 6 IL_00A1: ldarg 7 IL_00A5: ldloca 3 (System.Boolean) IL_00A9: call static System.Void BannerlordCheats.Patches.Combat.AlwaysCrushThroughShields_Sandbox::DecideCrushedThrough(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent defenderAgent, System.Single totalAttackEnergy, TaleWorlds.MountAndBlade.UsageDirection attackDirection, TaleWorlds.Core.StrikeType strikeType, TaleWorlds.Core.WeaponComponentData defendItem, System.Boolean isPassiveUsage, System.Boolean& __result) IL_00AE: ldloc 3 (System.Boolean) IL_00B2: ret DONE ### Patch: virtual System.Boolean SandBox.GameComponents.SandboxAgentApplyDamageModel::DecideAgentKnockedDownByBlow(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) ### Replacement: static System.Boolean SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.DecideAgentKnockedDownByBlow_Patch1(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldarg.2 IL_000B: ldarg.3 IL_000C: ldarg.s 4 IL_000E: ldarg.s 5 IL_0010: call static System.Boolean TaleWorlds.MountAndBlade.MissionCombatMechanicsHelper::DecideAgentKnockedDownByBlow(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) IL_0015: // end original IL_0015: stloc 0 (System.Boolean) IL_0019: ldarg 1 IL_001D: ldarg 2 IL_0021: ldarg 3 IL_0025: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_002A: ldarg 4 IL_002E: ldarg 5 IL_0032: call static System.Void BannerlordCheats.Patches.Combat.AlwaysKnockDown_Sandbox::DecideAgentKnockedByBlow(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) IL_0037: ldloc 0 (System.Boolean) IL_003B: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultCombatSimulationModel::SimulateHit(TaleWorlds.CampaignSystem.CharacterObject strikerTroop, TaleWorlds.CampaignSystem.CharacterObject struckTroop, TaleWorlds.CampaignSystem.Party.PartyBase strikerParty, TaleWorlds.CampaignSystem.Party.PartyBase struckParty, System.Single strikerAdvantage, TaleWorlds.CampaignSystem.MapEvents.MapEvent battle) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultCombatSimulationModel::TaleWorlds.CampaignSystem.GameComponents.DefaultCombatSimulationModel.SimulateHit_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultCombatSimulationModel this, TaleWorlds.CampaignSystem.CharacterObject strikerTroop, TaleWorlds.CampaignSystem.CharacterObject struckTroop, TaleWorlds.CampaignSystem.Party.PartyBase strikerParty, TaleWorlds.CampaignSystem.Party.PartyBase struckParty, System.Single strikerAdvantage, TaleWorlds.CampaignSystem.MapEvents.MapEvent battle) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 4: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 4 (System.Int32) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel TaleWorlds.CampaignSystem.GameModels::get_MilitaryPowerModel() IL_0018: dup IL_0019: ldarg.1 IL_001A: ldarg.3 IL_001B: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_Side() IL_0020: ldarg.3 IL_0021: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_0026: ldfld TaleWorlds.CampaignSystem.MapEvents.PowerCalculationContext TaleWorlds.CampaignSystem.MapEvents.MapEvent::SimulationContext IL_002B: ldarg.3 IL_002C: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEventSide() IL_0031: ldfld System.Single TaleWorlds.CampaignSystem.MapEvents.MapEventSide::LeaderSimulationModifier IL_0036: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetTroopPower(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.Core.BattleSideEnum side, TaleWorlds.CampaignSystem.MapEvents.PowerCalculationContext context, System.Single leaderModifier) IL_003B: stloc.0 IL_003C: ldarg.2 IL_003D: ldarg.s 4 IL_003F: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_Side() IL_0044: ldarg.s 4 IL_0046: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEvent TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEvent() IL_004B: ldfld TaleWorlds.CampaignSystem.MapEvents.PowerCalculationContext TaleWorlds.CampaignSystem.MapEvents.MapEvent::SimulationContext IL_0050: ldarg.s 4 IL_0052: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.Party.PartyBase::get_MapEventSide() IL_0057: ldfld System.Single TaleWorlds.CampaignSystem.MapEvents.MapEventSide::LeaderSimulationModifier IL_005C: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.MilitaryPowerModel::GetTroopPower(TaleWorlds.CampaignSystem.CharacterObject troop, TaleWorlds.Core.BattleSideEnum side, TaleWorlds.CampaignSystem.MapEvents.PowerCalculationContext context, System.Single leaderModifier) IL_0061: stloc.1 IL_0062: ldc.r4 0.5 IL_0067: ldc.r4 0.5 IL_006C: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_0071: mul IL_0072: add IL_0073: ldc.r4 40 IL_0078: ldloc.0 IL_0079: ldloc.1 IL_007A: div IL_007B: ldc.r4 0.7 IL_0080: call static System.Single TaleWorlds.Library.MathF::Pow(System.Single x, System.Single y) IL_0085: mul IL_0086: ldarg.s 5 IL_0088: mul IL_0089: mul IL_008A: conv.i4 IL_008B: stloc.2 IL_008C: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_008E: ldloc.2 IL_008F: conv.r4 IL_0090: ldc.i4.0 IL_0091: ldnull IL_0092: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0097: ldarg.3 IL_0098: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_009D: brfalse => Label0 IL_00A2: ldarg.s 4 IL_00A4: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_00A9: brfalse => Label1 IL_00AE: ldarg.0 IL_00AF: ldarg.1 IL_00B0: ldarg.2 IL_00B1: ldarg.3 IL_00B2: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_00B7: ldarg.s 4 IL_00B9: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_00BE: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00C0: ldarg.s 6 IL_00C2: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultCombatSimulationModel::CalculateSimulationDamagePerkEffects(TaleWorlds.CampaignSystem.CharacterObject strikerTroop, TaleWorlds.CampaignSystem.CharacterObject struckTroop, TaleWorlds.CampaignSystem.Party.MobileParty strikerParty, TaleWorlds.CampaignSystem.Party.MobileParty struckParty, TaleWorlds.CampaignSystem.ExplainedNumber& effectiveDamage, TaleWorlds.CampaignSystem.MapEvents.MapEvent battle) IL_00C7: Label0 IL_00C7: Label1 IL_00C7: ldloca.s 3 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00C9: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_00CE: conv.i4 IL_00CF: // end original IL_00CF: stloc 4 (System.Int32) IL_00D3: ldarg 1 IL_00D7: ldarg 2 IL_00DB: ldarg 3 IL_00DF: ldarg 4 IL_00E3: ldarg 5 IL_00E7: ldarg 6 IL_00EB: ldloca 4 (System.Int32) IL_00EF: call static System.Void BannerlordCheats.Patches.Combat.AlwaysWinBattleSimulation::SimulateHit(TaleWorlds.CampaignSystem.CharacterObject strikerTroop, TaleWorlds.CampaignSystem.CharacterObject struckTroop, TaleWorlds.CampaignSystem.Party.PartyBase strikerParty, TaleWorlds.CampaignSystem.Party.PartyBase struckParty, System.Single strikerAdvantage, TaleWorlds.CampaignSystem.MapEvents.MapEvent battle, System.Int32& __result) IL_00F4: ldloc 4 (System.Int32) IL_00F8: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultBanditDensityModel::GetPlayerMaximumTroopCountForHideoutMission(TaleWorlds.CampaignSystem.Party.MobileParty party) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultBanditDensityModel::TaleWorlds.CampaignSystem.GameComponents.DefaultBanditDensityModel.GetPlayerMaximumTroopCountForHideoutMission_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultBanditDensityModel this, TaleWorlds.CampaignSystem.Party.MobileParty party) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldc.r4 10 IL_000E: stloc.0 IL_000F: ldarg.1 IL_0010: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_SmallUnitTactics() IL_0015: ldc.i4.0 IL_0016: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_001B: brfalse => Label0 IL_0020: ldloc.0 IL_0021: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_SmallUnitTactics() IL_0026: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_002B: add IL_002C: stloc.0 IL_002D: Label0 IL_002D: ldloc.0 IL_002E: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_0033: // end original IL_0033: stloc 1 (System.Int32) IL_0037: ldarg 1 IL_003B: ldloca 1 (System.Int32) IL_003F: call static System.Void BannerlordCheats.Patches.Combat.BanditHideoutTroopLimit::GetPlayerMaximumTroopCountForHideoutMission(TaleWorlds.CampaignSystem.Party.MobileParty party, System.Int32& __result) IL_0044: ldloc 1 (System.Int32) IL_0048: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentStatCalculateModel::GetMaxCameraZoom(TaleWorlds.MountAndBlade.Agent agent) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentStatCalculateModel::SandBox.GameComponents.SandboxAgentStatCalculateModel.GetMaxCameraZoom_Patch1(SandBox.GameComponents.SandboxAgentStatCalculateModel this, TaleWorlds.MountAndBlade.Agent agent) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 2: TaleWorlds.MountAndBlade.MissionEquipment IL_0000: Local var 3: TaleWorlds.Core.EquipmentIndex IL_0000: Local var 4: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 5: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 6: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 6 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_000F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0014: stloc.0 IL_0015: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0017: ldc.r4 1 IL_001C: ldc.i4.0 IL_001D: ldnull IL_001E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0023: ldloc.0 IL_0024: brfalse => Label0 IL_0029: ldarg.1 IL_002A: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_002F: stloc.2 IL_0030: ldarg.1 IL_0031: ldc.i4.0 IL_0032: callvirt TaleWorlds.Core.EquipmentIndex TaleWorlds.MountAndBlade.Agent::GetWieldedItemIndex(TaleWorlds.MountAndBlade.HandIndex index) IL_0037: stloc.3 IL_0038: ldloc.3 IL_0039: ldc.i4.m1 IL_003A: bne.un => Label1 IL_003F: ldnull IL_0040: br => Label2 IL_0045: Label1 IL_0045: ldloc.2 IL_0046: ldloc.3 IL_0047: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_004C: stloc.s 5 (TaleWorlds.MountAndBlade.MissionWeapon) IL_004E: ldloca.s 5 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0050: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0055: Label2 IL_0055: stloc.s 4 (TaleWorlds.Core.WeaponComponentData) IL_0057: ldloc.s 4 (TaleWorlds.Core.WeaponComponentData) IL_0059: brfalse => Label3 IL_005E: ldloc.s 4 (TaleWorlds.Core.WeaponComponentData) IL_0060: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0065: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_006A: bne.un => Label4 IL_006F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_EagleEye() IL_0074: ldloc.0 IL_0075: ldc.i4.1 IL_0076: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0078: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_007D: br => Label5 IL_0082: Label4 IL_0082: ldloc.s 4 (TaleWorlds.Core.WeaponComponentData) IL_0084: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0089: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_008E: bne.un => Label6 IL_0093: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_LongShots() IL_0098: ldloc.0 IL_0099: ldc.i4.1 IL_009A: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_009C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_00A1: br => Label7 IL_00A6: Label6 IL_00A6: ldloc.s 4 (TaleWorlds.Core.WeaponComponentData) IL_00A8: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_00AD: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_00B2: bne.un => Label8 IL_00B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Focus() IL_00BC: ldloc.0 IL_00BD: ldc.i4.1 IL_00BE: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00C0: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_00C5: Label0 IL_00C5: Label3 IL_00C5: Label5 IL_00C5: Label7 IL_00C5: Label8 IL_00C5: ldloca.s 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00C7: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_00CC: // end original IL_00CC: stloc 6 (System.Single) IL_00D0: ldarg 1 IL_00D4: ldloca 6 (System.Single) IL_00D8: call static System.Void BannerlordCheats.Patches.Combat.CombatZoomMultiplier::CrossbowReloadSpeed(TaleWorlds.MountAndBlade.Agent agent, System.Single& __result) IL_00DD: ldloc 6 (System.Single) IL_00E1: ret DONE ### Patch: virtual System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch1(TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 0 IL_0010: stind.r4 IL_0011: ldc.r4 1 IL_0016: // end original IL_0016: stloc 0 (System.Single) IL_001A: ldarg 1 IL_001E: ldarg 2 IL_0022: ldarg 3 IL_0026: ldarg 5 IL_002A: ldobj System.Single IL_002F: ldloca 0 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0038: ldloc 0 (System.Single) IL_003C: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch1(SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 2: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 3: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 3 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0017: brfalse => Label0 IL_001C: ldarg.2 IL_001D: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0022: castclass TaleWorlds.CampaignSystem.CharacterObject IL_0027: stloc.0 IL_0028: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_002D: brfalse => Label1 IL_0032: ldloc.0 IL_0033: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_0038: brfalse => Label2 IL_003D: ldloc.0 IL_003E: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterObject::get_HeroObject() IL_0043: ldc.i4.4 IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanDie(TaleWorlds.CampaignSystem.Actions.KillCharacterActionDetail causeOfDeath) IL_0049: brtrue => Label3 IL_004E: ldc.r4 0 IL_0053: br => Label10 IL_0058: Label2 IL_0058: Label3 IL_0058: ldarg.2 IL_0059: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_005E: dup IL_005F: brtrue => Label4 IL_0064: pop IL_0065: ldnull IL_0066: br => Label5 IL_006B: Label4 IL_006B: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_0070: Label5 IL_0070: stloc.1 IL_0071: ldarg.1 IL_0072: brfalse => Label6 IL_0077: ldarg.1 IL_0078: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_007D: brfalse => Label7 IL_0082: ldarg.1 IL_0083: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_0088: dup IL_0089: brtrue => Label8 IL_008E: pop IL_008F: ldnull IL_0090: br => Label9 IL_0095: Label8 IL_0095: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_009A: Label9 IL_009A: stloc.2 IL_009B: ldc.r4 1 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00AF: ldloc.1 IL_00B0: ldloc.0 IL_00B1: ldarg.3 IL_00B2: ldarg.s 4 IL_00B4: ldc.i4 1048576 IL_00B9: conv.i8 IL_00BA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00BF: ldloc.2 IL_00C0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00C5: sub IL_00C6: br => Label11 IL_00CB: Label6 IL_00CB: Label7 IL_00CB: ldc.r4 1 IL_00D0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00D5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00DA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00DF: ldloc.1 IL_00E0: ldloc.0 IL_00E1: ldarg.3 IL_00E2: ldarg.s 4 IL_00E4: ldc.i4 1048576 IL_00E9: conv.i8 IL_00EA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00EF: ldnull IL_00F0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00F5: sub IL_00F6: br => Label12 IL_00FB: Label0 IL_00FB: Label1 IL_00FB: ldc.r4 1 IL_0100: // end original IL_0100: Label10 IL_0100: Label11 IL_0100: Label12 IL_0100: stloc 3 (System.Single) IL_0104: ldarg 1 IL_0108: ldarg 2 IL_010C: ldarg 3 IL_0110: ldarg 5 IL_0114: ldobj System.Single IL_0119: ldloca 3 (System.Single) IL_011D: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0122: ldloc 3 (System.Single) IL_0126: ret DONE ### Patch: virtual System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch1(StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0017: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_001C: brfalse => Label0 IL_0021: ldarg.2 IL_0022: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0027: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_ElderBrother() IL_002C: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0031: beq => Label1 IL_0036: ldarg.2 IL_0037: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_003C: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_Radagos() IL_0041: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0046: beq => Label2 IL_004B: ldarg.2 IL_004C: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0051: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_RadagosHencman() IL_0056: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_005B: bne.un => Label3 IL_0060: Label1 IL_0060: Label2 IL_0060: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0065: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_006A: callvirt System.Boolean StoryMode.MainStoryLine::get_IsCompleted() IL_006F: brtrue => Label4 IL_0074: ldc.r4 0 IL_0079: br => Label7 IL_007E: Label0 IL_007E: Label3 IL_007E: Label4 IL_007E: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0083: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_0088: callvirt StoryMode.StoryModePhases.TutorialPhase StoryMode.MainStoryLine::get_TutorialPhase() IL_008D: callvirt System.Boolean StoryMode.StoryModePhases.TutorialPhase::get_IsCompleted() IL_0092: brtrue => Label5 IL_0097: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.Team TaleWorlds.MountAndBlade.Agent::get_Team() IL_00A2: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.MountAndBlade.Team::get_Side() IL_00A7: callvirt System.Int32 TaleWorlds.MountAndBlade.Mission::GetMemberCountOfSide(TaleWorlds.Core.BattleSideEnum side) IL_00AC: ldc.i4.4 IL_00AD: ble => Label6 IL_00B2: ldc.r4 0 IL_00B7: br => Label8 IL_00BC: Label5 IL_00BC: Label6 IL_00BC: ldarg.0 IL_00BD: ldarg.1 IL_00BE: ldarg.2 IL_00BF: ldarg.3 IL_00C0: ldarg.s 4 IL_00C2: ldarg.s 5 IL_00C4: call virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_00C9: // end original IL_00C9: Label7 IL_00C9: Label8 IL_00C9: stloc 0 (System.Single) IL_00CD: ldarg 1 IL_00D1: ldarg 2 IL_00D5: ldarg 3 IL_00D9: ldarg 5 IL_00DD: ldobj System.Single IL_00E2: ldloca 0 (System.Single) IL_00E6: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_00EB: ldloc 0 (System.Single) IL_00EF: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch1(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldloc 27 (System.Single) IL_0E24: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch2(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldarg 1 IL_0E24: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E29: ldarg 2 IL_0E2D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E32: ldarg 3 IL_0E36: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E3B: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E40: ldloca 27 (System.Single) IL_0E44: call static System.Void BannerlordCheats.Patches.Combat.DamageTakenPercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E49: ldloc 27 (System.Single) IL_0E4D: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxBattleMoraleModel::CalculateMoraleChangeToCharacter(TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange) ### Replacement: static System.Single SandBox.GameComponents.SandboxBattleMoraleModel::SandBox.GameComponents.SandboxBattleMoraleModel.CalculateMoraleChangeToCharacter_Patch1(SandBox.GameComponents.SandboxBattleMoraleModel this, TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.2 IL_000A: ldc.r4 1 IL_000F: ldarg.1 IL_0010: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0015: callvirt virtual System.Single TaleWorlds.Core.BasicCharacterObject::GetMoraleResistance() IL_001A: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_001F: div IL_0020: // end original IL_0020: stloc 0 (System.Single) IL_0024: ldarg 1 IL_0028: ldarg 2 IL_002C: ldloca 0 (System.Single) IL_0030: call static System.Void BannerlordCheats.Patches.Combat.EnemiesNoRunningAway::CalculateMoraleChangeToCharacter(TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange, System.Single& __result) IL_0035: ldloc 0 (System.Single) IL_0039: ret DONE ### Patch: virtual System.Boolean SandBox.GameComponents.SandboxBattleMoraleModel::CanPanicDueToMorale(TaleWorlds.MountAndBlade.Agent agent) ### Replacement: static System.Boolean SandBox.GameComponents.SandboxBattleMoraleModel::SandBox.GameComponents.SandboxBattleMoraleModel.CanPanicDueToMorale_Patch1(SandBox.GameComponents.SandboxBattleMoraleModel this, TaleWorlds.MountAndBlade.Agent agent) IL_0000: Local var 0: System.Boolean IL_0000: Local var 1: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 2: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 3: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Boolean) IL_0009: // start original IL_0009: ldc.i4.1 IL_000A: stloc.0 IL_000B: ldarg.1 IL_000C: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0011: brfalse => Label0 IL_0016: ldarg.1 IL_0017: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_001C: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0021: stloc.1 IL_0022: ldarg.1 IL_0023: callvirt virtual TaleWorlds.Core.IAgentOriginBase TaleWorlds.MountAndBlade.Agent::get_Origin() IL_0028: dup IL_0029: brtrue => Label1 IL_002E: pop IL_002F: ldnull IL_0030: br => Label2 IL_0035: Label1 IL_0035: callvirt abstract virtual TaleWorlds.Core.IBattleCombatant TaleWorlds.Core.IAgentOriginBase::get_BattleCombatant() IL_003A: Label2 IL_003A: castclass TaleWorlds.CampaignSystem.Party.PartyBase IL_003F: dup IL_0040: brtrue => Label3 IL_0045: pop IL_0046: ldnull IL_0047: br => Label4 IL_004C: Label3 IL_004C: call TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.PartyBase::get_LeaderHero() IL_0051: Label4 IL_0051: stloc.2 IL_0052: ldloc.1 IL_0053: brfalse => Label5 IL_0058: ldloc.2 IL_0059: brfalse => Label6 IL_005E: ldloc.1 IL_005F: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_0064: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_LoyaltyAndHonor() IL_0069: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_006E: conv.i4 IL_006F: blt => Label7 IL_0074: ldloc.2 IL_0075: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_LoyaltyAndHonor() IL_007A: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_007F: brfalse => Label8 IL_0084: ldc.i4.0 IL_0085: stloc.0 IL_0086: Label0 IL_0086: Label5 IL_0086: Label6 IL_0086: Label7 IL_0086: Label8 IL_0086: ldloc.0 IL_0087: // end original IL_0087: stloc 3 (System.Boolean) IL_008B: ldarg 1 IL_008F: ldloca 3 (System.Boolean) IL_0093: call static System.Void BannerlordCheats.Patches.Combat.EnemiesNoRunningAwayCanPanic::CanPanicDueToMorale(TaleWorlds.MountAndBlade.Agent agent, System.Boolean& __result) IL_0098: ldloc 3 (System.Boolean) IL_009C: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch3(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldarg 1 IL_0E24: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E29: ldarg 2 IL_0E2D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E32: ldarg 3 IL_0E36: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E3B: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E40: ldloca 27 (System.Single) IL_0E44: call static System.Void BannerlordCheats.Patches.Combat.DamageTakenPercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E49: ldarg 1 IL_0E4D: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E52: ldarg 2 IL_0E56: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E5B: ldarg 3 IL_0E5F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E64: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E69: ldloca 27 (System.Single) IL_0E6D: call static System.Void BannerlordCheats.Patches.Combat.EnemyDamagePercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E72: ldloc 27 (System.Single) IL_0E76: ret DONE ### Patch: virtual System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch2(TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 0 IL_0010: stind.r4 IL_0011: ldc.r4 1 IL_0016: // end original IL_0016: stloc 0 (System.Single) IL_001A: ldarg 1 IL_001E: ldarg 2 IL_0022: ldarg 3 IL_0026: ldarg 5 IL_002A: ldobj System.Single IL_002F: ldloca 0 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0038: ldarg 1 IL_003C: ldarg 2 IL_0040: ldarg 3 IL_0044: ldarg 5 IL_0048: ldobj System.Single IL_004D: ldloca 0 (System.Single) IL_0051: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0056: ldloc 0 (System.Single) IL_005A: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch2(SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 2: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 3: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 3 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0017: brfalse => Label0 IL_001C: ldarg.2 IL_001D: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0022: castclass TaleWorlds.CampaignSystem.CharacterObject IL_0027: stloc.0 IL_0028: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_002D: brfalse => Label1 IL_0032: ldloc.0 IL_0033: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_0038: brfalse => Label2 IL_003D: ldloc.0 IL_003E: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterObject::get_HeroObject() IL_0043: ldc.i4.4 IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanDie(TaleWorlds.CampaignSystem.Actions.KillCharacterActionDetail causeOfDeath) IL_0049: brtrue => Label3 IL_004E: ldc.r4 0 IL_0053: br => Label10 IL_0058: Label2 IL_0058: Label3 IL_0058: ldarg.2 IL_0059: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_005E: dup IL_005F: brtrue => Label4 IL_0064: pop IL_0065: ldnull IL_0066: br => Label5 IL_006B: Label4 IL_006B: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_0070: Label5 IL_0070: stloc.1 IL_0071: ldarg.1 IL_0072: brfalse => Label6 IL_0077: ldarg.1 IL_0078: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_007D: brfalse => Label7 IL_0082: ldarg.1 IL_0083: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_0088: dup IL_0089: brtrue => Label8 IL_008E: pop IL_008F: ldnull IL_0090: br => Label9 IL_0095: Label8 IL_0095: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_009A: Label9 IL_009A: stloc.2 IL_009B: ldc.r4 1 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00AF: ldloc.1 IL_00B0: ldloc.0 IL_00B1: ldarg.3 IL_00B2: ldarg.s 4 IL_00B4: ldc.i4 1048576 IL_00B9: conv.i8 IL_00BA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00BF: ldloc.2 IL_00C0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00C5: sub IL_00C6: br => Label11 IL_00CB: Label6 IL_00CB: Label7 IL_00CB: ldc.r4 1 IL_00D0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00D5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00DA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00DF: ldloc.1 IL_00E0: ldloc.0 IL_00E1: ldarg.3 IL_00E2: ldarg.s 4 IL_00E4: ldc.i4 1048576 IL_00E9: conv.i8 IL_00EA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00EF: ldnull IL_00F0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00F5: sub IL_00F6: br => Label12 IL_00FB: Label0 IL_00FB: Label1 IL_00FB: ldc.r4 1 IL_0100: // end original IL_0100: Label10 IL_0100: Label11 IL_0100: Label12 IL_0100: stloc 3 (System.Single) IL_0104: ldarg 1 IL_0108: ldarg 2 IL_010C: ldarg 3 IL_0110: ldarg 5 IL_0114: ldobj System.Single IL_0119: ldloca 3 (System.Single) IL_011D: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0122: ldarg 1 IL_0126: ldarg 2 IL_012A: ldarg 3 IL_012E: ldarg 5 IL_0132: ldobj System.Single IL_0137: ldloca 3 (System.Single) IL_013B: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0140: ldloc 3 (System.Single) IL_0144: ret DONE ### Patch: virtual System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch2(StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0017: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_001C: brfalse => Label0 IL_0021: ldarg.2 IL_0022: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0027: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_ElderBrother() IL_002C: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0031: beq => Label1 IL_0036: ldarg.2 IL_0037: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_003C: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_Radagos() IL_0041: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0046: beq => Label2 IL_004B: ldarg.2 IL_004C: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0051: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_RadagosHencman() IL_0056: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_005B: bne.un => Label3 IL_0060: Label1 IL_0060: Label2 IL_0060: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0065: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_006A: callvirt System.Boolean StoryMode.MainStoryLine::get_IsCompleted() IL_006F: brtrue => Label4 IL_0074: ldc.r4 0 IL_0079: br => Label7 IL_007E: Label0 IL_007E: Label3 IL_007E: Label4 IL_007E: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0083: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_0088: callvirt StoryMode.StoryModePhases.TutorialPhase StoryMode.MainStoryLine::get_TutorialPhase() IL_008D: callvirt System.Boolean StoryMode.StoryModePhases.TutorialPhase::get_IsCompleted() IL_0092: brtrue => Label5 IL_0097: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.Team TaleWorlds.MountAndBlade.Agent::get_Team() IL_00A2: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.MountAndBlade.Team::get_Side() IL_00A7: callvirt System.Int32 TaleWorlds.MountAndBlade.Mission::GetMemberCountOfSide(TaleWorlds.Core.BattleSideEnum side) IL_00AC: ldc.i4.4 IL_00AD: ble => Label6 IL_00B2: ldc.r4 0 IL_00B7: br => Label8 IL_00BC: Label5 IL_00BC: Label6 IL_00BC: ldarg.0 IL_00BD: ldarg.1 IL_00BE: ldarg.2 IL_00BF: ldarg.3 IL_00C0: ldarg.s 4 IL_00C2: ldarg.s 5 IL_00C4: call virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_00C9: // end original IL_00C9: Label7 IL_00C9: Label8 IL_00C9: stloc 0 (System.Single) IL_00CD: ldarg 1 IL_00D1: ldarg 2 IL_00D5: ldarg 3 IL_00D9: ldarg 5 IL_00DD: ldobj System.Single IL_00E2: ldloca 0 (System.Single) IL_00E6: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_00EB: ldarg 1 IL_00EF: ldarg 2 IL_00F3: ldarg 3 IL_00F7: ldarg 5 IL_00FB: ldobj System.Single IL_0100: ldloca 0 (System.Single) IL_0104: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0109: ldloc 0 (System.Single) IL_010D: ret DONE ### Patch: virtual System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch3(TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 0 IL_0010: stind.r4 IL_0011: ldc.r4 1 IL_0016: // end original IL_0016: stloc 0 (System.Single) IL_001A: ldarg 1 IL_001E: ldarg 2 IL_0022: ldarg 3 IL_0026: ldarg 5 IL_002A: ldobj System.Single IL_002F: ldloca 0 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0038: ldarg 1 IL_003C: ldarg 2 IL_0040: ldarg 3 IL_0044: ldarg 5 IL_0048: ldobj System.Single IL_004D: ldloca 0 (System.Single) IL_0051: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0056: ldarg 1 IL_005A: ldarg 2 IL_005E: ldarg 3 IL_0062: ldarg 5 IL_0066: ldobj System.Single IL_006B: ldloca 0 (System.Single) IL_006F: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0074: ldloc 0 (System.Single) IL_0078: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch3(SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 2: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 3: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 3 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0017: brfalse => Label0 IL_001C: ldarg.2 IL_001D: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0022: castclass TaleWorlds.CampaignSystem.CharacterObject IL_0027: stloc.0 IL_0028: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_002D: brfalse => Label1 IL_0032: ldloc.0 IL_0033: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_0038: brfalse => Label2 IL_003D: ldloc.0 IL_003E: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterObject::get_HeroObject() IL_0043: ldc.i4.4 IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanDie(TaleWorlds.CampaignSystem.Actions.KillCharacterActionDetail causeOfDeath) IL_0049: brtrue => Label3 IL_004E: ldc.r4 0 IL_0053: br => Label10 IL_0058: Label2 IL_0058: Label3 IL_0058: ldarg.2 IL_0059: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_005E: dup IL_005F: brtrue => Label4 IL_0064: pop IL_0065: ldnull IL_0066: br => Label5 IL_006B: Label4 IL_006B: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_0070: Label5 IL_0070: stloc.1 IL_0071: ldarg.1 IL_0072: brfalse => Label6 IL_0077: ldarg.1 IL_0078: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_007D: brfalse => Label7 IL_0082: ldarg.1 IL_0083: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_0088: dup IL_0089: brtrue => Label8 IL_008E: pop IL_008F: ldnull IL_0090: br => Label9 IL_0095: Label8 IL_0095: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_009A: Label9 IL_009A: stloc.2 IL_009B: ldc.r4 1 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00AF: ldloc.1 IL_00B0: ldloc.0 IL_00B1: ldarg.3 IL_00B2: ldarg.s 4 IL_00B4: ldc.i4 1048576 IL_00B9: conv.i8 IL_00BA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00BF: ldloc.2 IL_00C0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00C5: sub IL_00C6: br => Label11 IL_00CB: Label6 IL_00CB: Label7 IL_00CB: ldc.r4 1 IL_00D0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00D5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00DA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00DF: ldloc.1 IL_00E0: ldloc.0 IL_00E1: ldarg.3 IL_00E2: ldarg.s 4 IL_00E4: ldc.i4 1048576 IL_00E9: conv.i8 IL_00EA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00EF: ldnull IL_00F0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00F5: sub IL_00F6: br => Label12 IL_00FB: Label0 IL_00FB: Label1 IL_00FB: ldc.r4 1 IL_0100: // end original IL_0100: Label10 IL_0100: Label11 IL_0100: Label12 IL_0100: stloc 3 (System.Single) IL_0104: ldarg 1 IL_0108: ldarg 2 IL_010C: ldarg 3 IL_0110: ldarg 5 IL_0114: ldobj System.Single IL_0119: ldloca 3 (System.Single) IL_011D: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0122: ldarg 1 IL_0126: ldarg 2 IL_012A: ldarg 3 IL_012E: ldarg 5 IL_0132: ldobj System.Single IL_0137: ldloca 3 (System.Single) IL_013B: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0140: ldarg 1 IL_0144: ldarg 2 IL_0148: ldarg 3 IL_014C: ldarg 5 IL_0150: ldobj System.Single IL_0155: ldloca 3 (System.Single) IL_0159: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_015E: ldloc 3 (System.Single) IL_0162: ret DONE ### Patch: virtual System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch3(StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0017: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_001C: brfalse => Label0 IL_0021: ldarg.2 IL_0022: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0027: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_ElderBrother() IL_002C: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0031: beq => Label1 IL_0036: ldarg.2 IL_0037: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_003C: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_Radagos() IL_0041: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0046: beq => Label2 IL_004B: ldarg.2 IL_004C: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0051: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_RadagosHencman() IL_0056: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_005B: bne.un => Label3 IL_0060: Label1 IL_0060: Label2 IL_0060: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0065: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_006A: callvirt System.Boolean StoryMode.MainStoryLine::get_IsCompleted() IL_006F: brtrue => Label4 IL_0074: ldc.r4 0 IL_0079: br => Label7 IL_007E: Label0 IL_007E: Label3 IL_007E: Label4 IL_007E: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0083: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_0088: callvirt StoryMode.StoryModePhases.TutorialPhase StoryMode.MainStoryLine::get_TutorialPhase() IL_008D: callvirt System.Boolean StoryMode.StoryModePhases.TutorialPhase::get_IsCompleted() IL_0092: brtrue => Label5 IL_0097: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.Team TaleWorlds.MountAndBlade.Agent::get_Team() IL_00A2: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.MountAndBlade.Team::get_Side() IL_00A7: callvirt System.Int32 TaleWorlds.MountAndBlade.Mission::GetMemberCountOfSide(TaleWorlds.Core.BattleSideEnum side) IL_00AC: ldc.i4.4 IL_00AD: ble => Label6 IL_00B2: ldc.r4 0 IL_00B7: br => Label8 IL_00BC: Label5 IL_00BC: Label6 IL_00BC: ldarg.0 IL_00BD: ldarg.1 IL_00BE: ldarg.2 IL_00BF: ldarg.3 IL_00C0: ldarg.s 4 IL_00C2: ldarg.s 5 IL_00C4: call virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_00C9: // end original IL_00C9: Label7 IL_00C9: Label8 IL_00C9: stloc 0 (System.Single) IL_00CD: ldarg 1 IL_00D1: ldarg 2 IL_00D5: ldarg 3 IL_00D9: ldarg 5 IL_00DD: ldobj System.Single IL_00E2: ldloca 0 (System.Single) IL_00E6: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_00EB: ldarg 1 IL_00EF: ldarg 2 IL_00F3: ldarg 3 IL_00F7: ldarg 5 IL_00FB: ldobj System.Single IL_0100: ldloca 0 (System.Single) IL_0104: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0109: ldarg 1 IL_010D: ldarg 2 IL_0111: ldarg 3 IL_0115: ldarg 5 IL_0119: ldobj System.Single IL_011E: ldloca 0 (System.Single) IL_0122: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0127: ldloc 0 (System.Single) IL_012B: ret DONE ### Patch: virtual System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch4(TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 0 IL_0010: stind.r4 IL_0011: ldc.r4 1 IL_0016: // end original IL_0016: stloc 0 (System.Single) IL_001A: ldarg 1 IL_001E: ldarg 2 IL_0022: ldarg 3 IL_0026: ldarg 5 IL_002A: ldobj System.Single IL_002F: ldloca 0 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0038: ldarg 1 IL_003C: ldarg 2 IL_0040: ldarg 3 IL_0044: ldarg 5 IL_0048: ldobj System.Single IL_004D: ldloca 0 (System.Single) IL_0051: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0056: ldarg 1 IL_005A: ldarg 2 IL_005E: ldarg 3 IL_0062: ldarg 5 IL_0066: ldobj System.Single IL_006B: ldloca 0 (System.Single) IL_006F: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0074: ldarg 1 IL_0078: ldarg 2 IL_007C: ldarg 3 IL_0080: ldarg 5 IL_0084: ldobj System.Single IL_0089: ldloca 0 (System.Single) IL_008D: call static System.Void BannerlordCheats.Patches.Combat.FriendlyLordsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0092: ldloc 0 (System.Single) IL_0096: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch4(SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 2: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 3: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 3 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0017: brfalse => Label0 IL_001C: ldarg.2 IL_001D: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0022: castclass TaleWorlds.CampaignSystem.CharacterObject IL_0027: stloc.0 IL_0028: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_002D: brfalse => Label1 IL_0032: ldloc.0 IL_0033: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_0038: brfalse => Label2 IL_003D: ldloc.0 IL_003E: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterObject::get_HeroObject() IL_0043: ldc.i4.4 IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanDie(TaleWorlds.CampaignSystem.Actions.KillCharacterActionDetail causeOfDeath) IL_0049: brtrue => Label3 IL_004E: ldc.r4 0 IL_0053: br => Label10 IL_0058: Label2 IL_0058: Label3 IL_0058: ldarg.2 IL_0059: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_005E: dup IL_005F: brtrue => Label4 IL_0064: pop IL_0065: ldnull IL_0066: br => Label5 IL_006B: Label4 IL_006B: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_0070: Label5 IL_0070: stloc.1 IL_0071: ldarg.1 IL_0072: brfalse => Label6 IL_0077: ldarg.1 IL_0078: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_007D: brfalse => Label7 IL_0082: ldarg.1 IL_0083: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_0088: dup IL_0089: brtrue => Label8 IL_008E: pop IL_008F: ldnull IL_0090: br => Label9 IL_0095: Label8 IL_0095: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_009A: Label9 IL_009A: stloc.2 IL_009B: ldc.r4 1 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00AF: ldloc.1 IL_00B0: ldloc.0 IL_00B1: ldarg.3 IL_00B2: ldarg.s 4 IL_00B4: ldc.i4 1048576 IL_00B9: conv.i8 IL_00BA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00BF: ldloc.2 IL_00C0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00C5: sub IL_00C6: br => Label11 IL_00CB: Label6 IL_00CB: Label7 IL_00CB: ldc.r4 1 IL_00D0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00D5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00DA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00DF: ldloc.1 IL_00E0: ldloc.0 IL_00E1: ldarg.3 IL_00E2: ldarg.s 4 IL_00E4: ldc.i4 1048576 IL_00E9: conv.i8 IL_00EA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00EF: ldnull IL_00F0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00F5: sub IL_00F6: br => Label12 IL_00FB: Label0 IL_00FB: Label1 IL_00FB: ldc.r4 1 IL_0100: // end original IL_0100: Label10 IL_0100: Label11 IL_0100: Label12 IL_0100: stloc 3 (System.Single) IL_0104: ldarg 1 IL_0108: ldarg 2 IL_010C: ldarg 3 IL_0110: ldarg 5 IL_0114: ldobj System.Single IL_0119: ldloca 3 (System.Single) IL_011D: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0122: ldarg 1 IL_0126: ldarg 2 IL_012A: ldarg 3 IL_012E: ldarg 5 IL_0132: ldobj System.Single IL_0137: ldloca 3 (System.Single) IL_013B: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0140: ldarg 1 IL_0144: ldarg 2 IL_0148: ldarg 3 IL_014C: ldarg 5 IL_0150: ldobj System.Single IL_0155: ldloca 3 (System.Single) IL_0159: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_015E: ldarg 1 IL_0162: ldarg 2 IL_0166: ldarg 3 IL_016A: ldarg 5 IL_016E: ldobj System.Single IL_0173: ldloca 3 (System.Single) IL_0177: call static System.Void BannerlordCheats.Patches.Combat.FriendlyLordsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_017C: ldloc 3 (System.Single) IL_0180: ret DONE ### Patch: virtual System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch4(StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0017: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_001C: brfalse => Label0 IL_0021: ldarg.2 IL_0022: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0027: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_ElderBrother() IL_002C: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0031: beq => Label1 IL_0036: ldarg.2 IL_0037: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_003C: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_Radagos() IL_0041: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0046: beq => Label2 IL_004B: ldarg.2 IL_004C: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0051: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_RadagosHencman() IL_0056: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_005B: bne.un => Label3 IL_0060: Label1 IL_0060: Label2 IL_0060: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0065: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_006A: callvirt System.Boolean StoryMode.MainStoryLine::get_IsCompleted() IL_006F: brtrue => Label4 IL_0074: ldc.r4 0 IL_0079: br => Label7 IL_007E: Label0 IL_007E: Label3 IL_007E: Label4 IL_007E: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0083: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_0088: callvirt StoryMode.StoryModePhases.TutorialPhase StoryMode.MainStoryLine::get_TutorialPhase() IL_008D: callvirt System.Boolean StoryMode.StoryModePhases.TutorialPhase::get_IsCompleted() IL_0092: brtrue => Label5 IL_0097: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.Team TaleWorlds.MountAndBlade.Agent::get_Team() IL_00A2: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.MountAndBlade.Team::get_Side() IL_00A7: callvirt System.Int32 TaleWorlds.MountAndBlade.Mission::GetMemberCountOfSide(TaleWorlds.Core.BattleSideEnum side) IL_00AC: ldc.i4.4 IL_00AD: ble => Label6 IL_00B2: ldc.r4 0 IL_00B7: br => Label8 IL_00BC: Label5 IL_00BC: Label6 IL_00BC: ldarg.0 IL_00BD: ldarg.1 IL_00BE: ldarg.2 IL_00BF: ldarg.3 IL_00C0: ldarg.s 4 IL_00C2: ldarg.s 5 IL_00C4: call virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_00C9: // end original IL_00C9: Label7 IL_00C9: Label8 IL_00C9: stloc 0 (System.Single) IL_00CD: ldarg 1 IL_00D1: ldarg 2 IL_00D5: ldarg 3 IL_00D9: ldarg 5 IL_00DD: ldobj System.Single IL_00E2: ldloca 0 (System.Single) IL_00E6: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_00EB: ldarg 1 IL_00EF: ldarg 2 IL_00F3: ldarg 3 IL_00F7: ldarg 5 IL_00FB: ldobj System.Single IL_0100: ldloca 0 (System.Single) IL_0104: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0109: ldarg 1 IL_010D: ldarg 2 IL_0111: ldarg 3 IL_0115: ldarg 5 IL_0119: ldobj System.Single IL_011E: ldloca 0 (System.Single) IL_0122: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0127: ldarg 1 IL_012B: ldarg 2 IL_012F: ldarg 3 IL_0133: ldarg 5 IL_0137: ldobj System.Single IL_013C: ldloca 0 (System.Single) IL_0140: call static System.Void BannerlordCheats.Patches.Combat.FriendlyLordsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0145: ldloc 0 (System.Single) IL_0149: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Mission::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) ### Replacement: static System.Void TaleWorlds.MountAndBlade.Mission::TaleWorlds.MountAndBlade.Mission.OnAgentShootMissile_Patch1(TaleWorlds.MountAndBlade.Mission this, TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) IL_0000: Local var 0: System.Single IL_0000: Local var 1: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 2: TaleWorlds.MountAndBlade.WeaponData IL_0000: Local var 3: TaleWorlds.Library.Vec3 IL_0000: Local var 4: System.Single IL_0000: Local var 5: TaleWorlds.Engine.GameEntity IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: System.Single IL_0000: Local var 8: System.Int32 IL_0000: Local var 9: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 10: TaleWorlds.MountAndBlade.WeaponStatsData IL_0000: Local var 11: TaleWorlds.MountAndBlade.WeaponStatsData[] IL_0000: Local var 12: TaleWorlds.MountAndBlade.Mission/Missile IL_0000: Local var 13: System.Collections.Generic.List`1/Enumerator IL_0000: // start original IL_0000: ldc.r4 0 IL_0005: stloc.0 IL_0006: ldarg.1 IL_0007: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_000C: ldarg.2 IL_000D: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0012: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0014: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0016: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_001B: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsRangedWeapon() IL_0020: brfalse => Label0 IL_0025: ldarg.1 IL_0026: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_002B: ldarg.2 IL_002C: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0031: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0033: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0035: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_003A: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_003F: brfalse => Label1 IL_0044: ldarg.1 IL_0045: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_004A: ldarg.2 IL_004B: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0050: stloc.1 IL_0051: br => Label2 IL_0056: Label0 IL_0056: Label1 IL_0056: ldarg.1 IL_0057: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_005C: ldarg.2 IL_005D: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0062: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0064: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0066: call TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionWeapon::get_AmmoWeapon() IL_006B: stloc.1 IL_006C: ldarg.1 IL_006D: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_0072: ldarg.2 IL_0073: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0078: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_007A: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_007C: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0081: ldfld TaleWorlds.Core.WeaponFlags TaleWorlds.Core.WeaponComponentData::WeaponFlags IL_0086: ldc.i4 1024 IL_008B: conv.i8 IL_008C: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_0091: brfalse => Label3 IL_0096: ldarg.1 IL_0097: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_00A2: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00A4: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00A6: call System.Int32 TaleWorlds.MountAndBlade.MissionWeapon::GetModifiedThrustDamageForCurrentUsage() IL_00AB: conv.r4 IL_00AC: stloc.0 IL_00AD: Label2 IL_00AD: Label3 IL_00AD: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00AF: ldc.i4.1 IL_00B0: call System.Void TaleWorlds.MountAndBlade.MissionWeapon::set_Amount(System.Int16 value) IL_00B5: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00B7: ldc.i4.1 IL_00B8: call TaleWorlds.MountAndBlade.WeaponData TaleWorlds.MountAndBlade.MissionWeapon::GetWeaponData(System.Boolean needBatchedVersionForMeshes) IL_00BD: stloc.2 IL_00BE: ldarg.s 4 IL_00C0: stloc.3 IL_00C1: ldloca.s 3 (TaleWorlds.Library.Vec3) IL_00C3: call System.Single TaleWorlds.Library.Vec3::Normalize() IL_00C8: stloc.s 4 (System.Single) IL_00CA: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsClient() IL_00CF: brfalse => Label4 IL_00D4: ldarg.s 8 IL_00D6: ldc.i4.m1 IL_00D7: ceq IL_00D9: br => Label5 IL_00DE: Label4 IL_00DE: ldc.i4.0 IL_00DF: Label5 IL_00DF: stloc.s 6 (System.Boolean) IL_00E1: ldarg.1 IL_00E2: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_00E7: ldarg.1 IL_00E8: ldc.i4.0 IL_00E9: callvirt TaleWorlds.Core.EquipmentIndex TaleWorlds.MountAndBlade.Agent::GetWieldedItemIndex(TaleWorlds.MountAndBlade.HandIndex index) IL_00EE: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_00F3: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00F5: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00F7: call System.Int32 TaleWorlds.MountAndBlade.MissionWeapon::GetModifiedMissileSpeedForCurrentUsage() IL_00FC: conv.r4 IL_00FD: stloc.s 7 (System.Single) IL_00FF: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0101: call System.Int32 TaleWorlds.MountAndBlade.MissionWeapon::get_WeaponsCount() IL_0106: ldc.i4.1 IL_0107: bne.un => Label6 IL_010C: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_010E: ldc.i4.0 IL_010F: call TaleWorlds.MountAndBlade.WeaponStatsData TaleWorlds.MountAndBlade.MissionWeapon::GetWeaponStatsDataForUsage(System.Int32 usageIndex) IL_0114: stloc.s 10 (TaleWorlds.MountAndBlade.WeaponStatsData) IL_0116: ldarg.0 IL_0117: ldarg.s 8 IL_0119: ldloc.s 6 (System.Boolean) IL_011B: ldarg.1 IL_011C: ldloca.s 2 (TaleWorlds.MountAndBlade.WeaponData) IL_011E: ldloca.s 10 (TaleWorlds.MountAndBlade.WeaponStatsData) IL_0120: ldloc.0 IL_0121: ldarga.s 3 IL_0123: ldloca.s 3 (TaleWorlds.Library.Vec3) IL_0125: ldarga.s 5 IL_0127: ldloc.s 7 (System.Single) IL_0129: ldloc.s 4 (System.Single) IL_012B: ldarg.s 6 IL_012D: ldnull IL_012E: ldarg.s 7 IL_0130: ldloca.s 5 (TaleWorlds.Engine.GameEntity) IL_0132: call System.Int32 TaleWorlds.MountAndBlade.Mission::AddMissileSingleUsageAux(System.Int32 forcedMissileIndex, System.Boolean isPrediction, TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.MountAndBlade.WeaponData& weaponData, TaleWorlds.MountAndBlade.WeaponStatsData& weaponStatsData, System.Single damageBonus, TaleWorlds.Library.Vec3& position, TaleWorlds.Library.Vec3& direction, TaleWorlds.Library.Mat3& orientation, System.Single baseSpeed, System.Single speed, System.Boolean addRigidBody, TaleWorlds.Engine.GameEntity gameEntityToIgnore, System.Boolean isPrimaryWeaponShot, TaleWorlds.Engine.GameEntity& missileEntity) IL_0137: stloc.s 8 (System.Int32) IL_0139: br => Label7 IL_013E: Label6 IL_013E: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0140: call TaleWorlds.MountAndBlade.WeaponStatsData[] TaleWorlds.MountAndBlade.MissionWeapon::GetWeaponStatsData() IL_0145: stloc.s 11 (TaleWorlds.MountAndBlade.WeaponStatsData[]) IL_0147: ldarg.0 IL_0148: ldarg.s 8 IL_014A: ldloc.s 6 (System.Boolean) IL_014C: ldarg.1 IL_014D: ldloca.s 2 (TaleWorlds.MountAndBlade.WeaponData) IL_014F: ldloc.s 11 (TaleWorlds.MountAndBlade.WeaponStatsData[]) IL_0151: ldloc.0 IL_0152: ldarga.s 3 IL_0154: ldloca.s 3 (TaleWorlds.Library.Vec3) IL_0156: ldarga.s 5 IL_0158: ldloc.s 7 (System.Single) IL_015A: ldloc.s 4 (System.Single) IL_015C: ldarg.s 6 IL_015E: ldnull IL_015F: ldarg.s 7 IL_0161: ldloca.s 5 (TaleWorlds.Engine.GameEntity) IL_0163: call System.Int32 TaleWorlds.MountAndBlade.Mission::AddMissileAux(System.Int32 forcedMissileIndex, System.Boolean isPrediction, TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.MountAndBlade.WeaponData& weaponData, TaleWorlds.MountAndBlade.WeaponStatsData[] weaponStatsData, System.Single damageBonus, TaleWorlds.Library.Vec3& position, TaleWorlds.Library.Vec3& direction, TaleWorlds.Library.Mat3& orientation, System.Single baseSpeed, System.Single speed, System.Boolean addRigidBody, TaleWorlds.Engine.GameEntity gameEntityToIgnore, System.Boolean isPrimaryWeaponShot, TaleWorlds.Engine.GameEntity& missileEntity) IL_0168: stloc.s 8 (System.Int32) IL_016A: Label7 IL_016A: ldloca.s 2 (TaleWorlds.MountAndBlade.WeaponData) IL_016C: call System.Void TaleWorlds.MountAndBlade.WeaponData::DeinitializeManagedPointers() IL_0171: ldloc.s 6 (System.Boolean) IL_0173: brtrue => Label8 IL_0178: ldarg.0 IL_0179: ldloc.s 5 (TaleWorlds.Engine.GameEntity) IL_017B: newobj System.Void TaleWorlds.MountAndBlade.Missile::.ctor(TaleWorlds.MountAndBlade.Mission mission, TaleWorlds.Engine.GameEntity entity) IL_0180: dup IL_0181: ldarg.1 IL_0182: callvirt System.Void TaleWorlds.MountAndBlade.Missile::set_ShooterAgent(TaleWorlds.MountAndBlade.Agent value) IL_0187: dup IL_0188: ldloc.1 IL_0189: callvirt System.Void TaleWorlds.MountAndBlade.Missile::set_Weapon(TaleWorlds.MountAndBlade.MissionWeapon value) IL_018E: dup IL_018F: ldloc.s 8 (System.Int32) IL_0191: callvirt System.Void TaleWorlds.MountAndBlade.MBMissile::set_Index(System.Int32 value) IL_0196: stloc.s 12 (TaleWorlds.MountAndBlade.Mission+Missile) IL_0198: ldloc.s 5 (TaleWorlds.Engine.GameEntity) IL_019A: callvirt System.Void TaleWorlds.DotNet.NativeObject::ManualInvalidate() IL_019F: ldarg.0 IL_01A0: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.MountAndBlade.Mission::_missiles IL_01A5: ldloc.s 8 (System.Int32) IL_01A7: ldloc.s 12 (TaleWorlds.MountAndBlade.Mission+Missile) IL_01A9: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Int32 key, TaleWorlds.MountAndBlade.Missile value) IL_01AE: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsServerOrRecorder() IL_01B3: brfalse => Label9 IL_01B8: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::BeginBroadcastModuleEvent() IL_01BD: ldloc.s 8 (System.Int32) IL_01BF: ldarg.1 IL_01C0: callvirt System.Int32 TaleWorlds.MountAndBlade.Agent::get_Index() IL_01C5: ldarg.2 IL_01C6: ldsfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionWeapon::Invalid IL_01CB: ldarg.3 IL_01CC: ldloc.3 IL_01CD: ldloc.s 4 (System.Single) IL_01CF: ldarg.s 5 IL_01D1: ldarg.s 6 IL_01D3: ldsfld TaleWorlds.MountAndBlade.MissionObjectId TaleWorlds.MountAndBlade.MissionObjectId::Invalid IL_01D8: ldarg.s 7 IL_01DA: newobj System.Void NetworkMessages.FromServer.CreateMissile::.ctor(System.Int32 missileIndex, System.Int32 agentIndex, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.MountAndBlade.MissionWeapon weapon, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 direction, System.Single speed, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, TaleWorlds.MountAndBlade.MissionObjectId missionObjectToIgnoreId, System.Boolean isPrimaryWeaponShot) IL_01DF: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::WriteMessage(TaleWorlds.MountAndBlade.Network.Messages.GameNetworkMessage message) IL_01E4: ldc.i4.s 16 IL_01E6: ldnull IL_01E7: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::EndBroadcastModuleEvent(TaleWorlds.MountAndBlade.EventBroadcastFlags broadcastFlags, TaleWorlds.MountAndBlade.NetworkCommunicator targetPlayer) IL_01EC: Label8 IL_01EC: Label9 IL_01EC: ldarg.0 IL_01ED: call System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.Mission::get_MissionBehaviors() IL_01F2: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_01F7: stloc.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) .try { IL_01F9: br => Label10 IL_01FE: Label11 IL_01FE: ldloca.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_0200: call virtual TaleWorlds.MountAndBlade.MissionBehavior System.Collections.Generic.Enumerator::get_Current() IL_0205: ldarg.1 IL_0206: ldarg.2 IL_0207: ldarg.3 IL_0208: ldarg.s 4 IL_020A: ldarg.s 5 IL_020C: ldarg.s 6 IL_020E: ldarg.s 8 IL_0210: callvirt virtual System.Void TaleWorlds.MountAndBlade.MissionBehavior::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Int32 forcedMissileIndex) IL_0215: Label10 IL_0215: ldloca.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_0217: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_021C: brtrue => Label11 IL_0221: leave => Label12 IL_0226: leave => (autogenerated) } // end try .finally { IL_022B: ldloca.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_022D: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior] IL_0233: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0238: endfinally IL_0239: leave => (autogenerated) } // end handler IL_023A: Label12 IL_023A: ldarg.1 IL_023B: brfalse => Label13 IL_0240: ldarg.1 IL_0241: call static System.Single TaleWorlds.MountAndBlade.MBCommon::GetTotalMissionTime() IL_0246: callvirt System.Void TaleWorlds.MountAndBlade.Agent::UpdateLastRangedAttackTimeDueToAnAttack(System.Single newTime) IL_024B: // end original IL_024B: Label13 IL_024B: ldarga 1 IL_024F: ldarg 2 IL_0253: ldarg 3 IL_0257: ldarg 4 IL_025B: ldarg 5 IL_025F: ldarg 6 IL_0263: ldarg 7 IL_0267: ldarg 8 IL_026B: call static System.Void BannerlordCheats.Patches.Combat.InfiniteAmmo::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent& shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) IL_0270: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel::CalculateInfluenceGain(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Single influenceValueOfBattle, System.Single contributionShare) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel::TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel.CalculateInfluenceGain_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel this, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Single influenceValueOfBattle, System.Single contributionShare) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldarg.1 IL_000D: callvirt TaleWorlds.CampaignSystem.IFaction TaleWorlds.CampaignSystem.Party.PartyBase::get_MapFaction() IL_0012: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.IFaction::get_IsKingdomFaction() IL_0017: brtrue => Label0 IL_001C: ldc.r4 0 IL_0021: br => Label1 IL_0026: Label0 IL_0026: ldarg.2 IL_0027: ldarg.3 IL_0028: mul IL_0029: Label1 IL_0029: ldc.i4.1 IL_002A: ldnull IL_002B: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0030: ldarg.1 IL_0031: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.PartyBase::get_LeaderHero() IL_0036: dup IL_0037: brtrue => Label2 IL_003C: pop IL_003D: ldc.i4.0 IL_003E: br => Label3 IL_0043: Label2 IL_0043: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Warlord() IL_0048: call System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_004D: Label3 IL_004D: brfalse => Label4 IL_0052: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0054: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Warlord() IL_0059: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_005E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Warlord() IL_0063: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0068: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_006D: Label4 IL_006D: ldloc.0 IL_006E: // end original IL_006E: stloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0072: ldarg 1 IL_0076: ldarg 2 IL_007A: ldarg 3 IL_007E: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0082: call static System.Void BannerlordCheats.Patches.Combat.InfluenceRewardMultiplier::CalculateInfluenceGain(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Single influenceValueOfBattle, System.Single contributionShare, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0087: ldloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_008B: ret DONE ### Patch: virtual System.Void SandBox.GameComponents.SandboxAgentStatCalculateModel::UpdateAgentStats(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties agentDrivenProperties) ### Replacement: static System.Void SandBox.GameComponents.SandboxAgentStatCalculateModel::SandBox.GameComponents.SandboxAgentStatCalculateModel.UpdateAgentStats_Patch1(SandBox.GameComponents.SandboxAgentStatCalculateModel this, TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties agentDrivenProperties) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarga 2 IL_001F: call static System.Void BannerlordCheats.Patches.Combat.InstantCrossbowReload::UpdateAgentStats(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties& agentDrivenProperties) IL_0024: Label1 IL_0024: nop IL_0025: ldloc 0 (System.Boolean) IL_0029: brfalse => Label0 IL_002E: // start original IL_002E: ldarg.1 IL_002F: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0034: brfalse => Label2 IL_0039: ldarg.0 IL_003A: ldarg.1 IL_003B: ldarg.2 IL_003C: call System.Void SandBox.GameComponents.SandboxAgentStatCalculateModel::UpdateHumanStats(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties agentDrivenProperties) IL_0041: br => Label3 IL_0046: Label2 IL_0046: ldarg.0 IL_0047: ldarg.1 IL_0048: ldarg.2 IL_0049: call System.Void SandBox.GameComponents.SandboxAgentStatCalculateModel::UpdateHorseStats(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties agentDrivenProperties) IL_004E: // end original IL_004E: Label3 IL_004E: Label0 IL_004E: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.AgentStatCalculateModel::SetAllWeaponInaccuracy(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties agentDrivenProperties, System.Int32 equippedIndex, TaleWorlds.Core.WeaponComponentData equippedWeaponComponent) ### Replacement: static System.Void TaleWorlds.MountAndBlade.AgentStatCalculateModel::TaleWorlds.MountAndBlade.AgentStatCalculateModel.SetAllWeaponInaccuracy_Patch1(TaleWorlds.MountAndBlade.AgentStatCalculateModel this, TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties agentDrivenProperties, System.Int32 equippedIndex, TaleWorlds.Core.WeaponComponentData equippedWeaponComponent) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarga 2 IL_001F: ldarg 3 IL_0023: ldarg 4 IL_0027: call static System.Boolean BannerlordCheats.Patches.Combat.InstantCrossbowReloadSpeed::SetAllWeaponInaccuracy(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.MountAndBlade.AgentDrivenProperties& agentDrivenProperties, System.Int32 equippedIndex, TaleWorlds.Core.WeaponComponentData equippedWeaponComponent) IL_002C: stloc 0 (System.Boolean) IL_0030: Label1 IL_0030: nop IL_0031: ldloc 0 (System.Boolean) IL_0035: brfalse => Label0 IL_003A: // start original IL_003A: ldarg.s 4 IL_003C: brfalse => Label2 IL_0041: ldarg.2 IL_0042: ldarg.0 IL_0043: ldarg.1 IL_0044: ldarg.s 4 IL_0046: ldarg.0 IL_0047: ldarg.1 IL_0048: ldarg.s 4 IL_004A: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkillForWeapon(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.WeaponComponentData weapon) IL_004F: callvirt virtual System.Single TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetWeaponInaccuracy(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.WeaponComponentData weapon, System.Int32 weaponSkill) IL_0054: callvirt System.Void TaleWorlds.MountAndBlade.AgentDrivenProperties::set_WeaponInaccuracy(System.Single value) IL_0059: br => Label3 IL_005E: Label2 IL_005E: ldarg.2 IL_005F: ldc.r4 0 IL_0064: callvirt System.Void TaleWorlds.MountAndBlade.AgentDrivenProperties::set_WeaponInaccuracy(System.Single value) IL_0069: // end original IL_0069: Label3 IL_0069: Label0 IL_0069: ret DONE ### Patch: TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::get_CurrentMortalityState() ### Replacement: static TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::TaleWorlds.MountAndBlade.Agent.get_CurrentMortalityState_Patch1(TaleWorlds.MountAndBlade.Agent this) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::k__BackingField IL_000F: // end original IL_000F: stloc 0 (System.Int32) IL_0013: ldarga 0 IL_0017: ldloca 0 (System.Int32) IL_001B: call static System.Void BannerlordCheats.Patches.Combat.Invincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_0020: ldloc 0 (System.Int32) IL_0024: ret DONE ### Patch: virtual System.Boolean SandBox.GameComponents.SandboxAgentApplyDamageModel::DecideAgentKnockedBackByBlow(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) ### Replacement: static System.Boolean SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.DecideAgentKnockedBackByBlow_Patch1(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldarg.2 IL_000B: ldarg.3 IL_000C: ldarg.s 4 IL_000E: ldarg.s 5 IL_0010: call static System.Boolean TaleWorlds.MountAndBlade.MissionCombatMechanicsHelper::DecideAgentKnockedBackByBlow(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) IL_0015: // end original IL_0015: stloc 0 (System.Boolean) IL_0019: ldarg 1 IL_001D: ldarg 2 IL_0021: ldarg 3 IL_0025: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_002A: ldarg 4 IL_002E: ldarg 5 IL_0032: call static System.Void BannerlordCheats.Patches.Combat.NeverKnockedBackByAttacks_Sandbox::DecideAgentKnockedByBlow(TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent victimAgent, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData attackerWeapon, TaleWorlds.MountAndBlade.Blow& blow) IL_0037: ldloc 0 (System.Boolean) IL_003B: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch4(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldarg 1 IL_0E24: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E29: ldarg 2 IL_0E2D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E32: ldarg 3 IL_0E36: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E3B: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E40: ldloca 27 (System.Single) IL_0E44: call static System.Void BannerlordCheats.Patches.Combat.DamageTakenPercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E49: ldarg 1 IL_0E4D: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E52: ldarg 2 IL_0E56: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E5B: ldarg 3 IL_0E5F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E64: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E69: ldloca 27 (System.Single) IL_0E6D: call static System.Void BannerlordCheats.Patches.Combat.EnemyDamagePercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E72: ldarg 1 IL_0E76: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E7B: ldarg 2 IL_0E7F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E84: ldarg 3 IL_0E88: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E8D: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E92: ldloca 27 (System.Single) IL_0E96: call static System.Void BannerlordCheats.Patches.Combat.NoFriendlyFire_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E9B: ldloc 27 (System.Single) IL_0E9F: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxBattleMoraleModel::CalculateMoraleChangeToCharacter(TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange) ### Replacement: static System.Single SandBox.GameComponents.SandboxBattleMoraleModel::SandBox.GameComponents.SandboxBattleMoraleModel.CalculateMoraleChangeToCharacter_Patch2(SandBox.GameComponents.SandboxBattleMoraleModel this, TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.2 IL_000A: ldc.r4 1 IL_000F: ldarg.1 IL_0010: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0015: callvirt virtual System.Single TaleWorlds.Core.BasicCharacterObject::GetMoraleResistance() IL_001A: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_001F: div IL_0020: // end original IL_0020: stloc 0 (System.Single) IL_0024: ldarg 1 IL_0028: ldarg 2 IL_002C: ldloca 0 (System.Single) IL_0030: call static System.Void BannerlordCheats.Patches.Combat.EnemiesNoRunningAway::CalculateMoraleChangeToCharacter(TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange, System.Single& __result) IL_0035: ldarg 1 IL_0039: ldarg 2 IL_003D: ldloca 0 (System.Single) IL_0041: call static System.Void BannerlordCheats.Patches.Combat.NoRunningAway::CalculateMoraleChangeToCharacter(TaleWorlds.MountAndBlade.Agent agent, System.Single maxMoraleChange, System.Single& __result) IL_0046: ldloc 0 (System.Single) IL_004A: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Mission::HandleMissileCollisionReaction(System.Int32 missileIndex, TaleWorlds.MountAndBlade.MissileCollisionReaction collisionReaction, TaleWorlds.Library.MatrixFrame attachLocalFrame, System.Boolean isAttachedFrameLocal, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent attachedAgent, System.Boolean attachedToShield, System.SByte attachedBoneIndex, TaleWorlds.MountAndBlade.MissionObject attachedMissionObject, TaleWorlds.Library.Vec3 bounceBackVelocity, TaleWorlds.Library.Vec3 bounceBackAngularVelocity, System.Int32 forcedSpawnIndex) ### Replacement: static System.Void TaleWorlds.MountAndBlade.Mission::TaleWorlds.MountAndBlade.Mission.HandleMissileCollisionReaction_Patch1(TaleWorlds.MountAndBlade.Mission this, System.Int32 missileIndex, TaleWorlds.MountAndBlade.MissileCollisionReaction collisionReaction, TaleWorlds.Library.MatrixFrame attachLocalFrame, System.Boolean isAttachedFrameLocal, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent attachedAgent, System.Boolean attachedToShield, System.SByte attachedBoneIndex, TaleWorlds.MountAndBlade.MissionObject attachedMissionObject, TaleWorlds.Library.Vec3 bounceBackVelocity, TaleWorlds.Library.Vec3 bounceBackAngularVelocity, System.Int32 forcedSpawnIndex) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Mission/Missile IL_0000: Local var 1: TaleWorlds.MountAndBlade.MissionObjectId IL_0000: Local var 2: System.Boolean IL_0000: Local var 3: TaleWorlds.Core.EquipmentIndex IL_0000: Local var 4: TaleWorlds.Library.Vec3 IL_0000: Local var 5: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 6: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 6 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 6 (System.Boolean) IL_000E: ldloc 6 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldarga 2 IL_001F: ldarg 3 IL_0023: ldarg 5 IL_0027: ldarg 6 IL_002B: ldarg 7 IL_002F: ldarg 8 IL_0033: ldarg 9 IL_0037: ldarg 10 IL_003B: ldarg 11 IL_003F: ldarg 12 IL_0043: call static System.Void BannerlordCheats.Patches.Combat.NoStuckArrows::HandleMissileCollisionReaction(System.Int32 missileIndex, TaleWorlds.MountAndBlade.MissileCollisionReaction& collisionReaction, TaleWorlds.Library.MatrixFrame attachLocalFrame, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent attachedAgent, System.Boolean attachedToShield, System.SByte attachedBoneIndex, TaleWorlds.MountAndBlade.MissionObject attachedMissionObject, TaleWorlds.Library.Vec3 bounceBackVelocity, TaleWorlds.Library.Vec3 bounceBackAngularVelocity, System.Int32 forcedSpawnIndex) IL_0048: Label1 IL_0048: nop IL_0049: ldloc 6 (System.Boolean) IL_004D: brfalse => Label0 IL_0052: // start original IL_0052: ldarg.0 IL_0053: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.MountAndBlade.Mission::_missiles IL_0058: ldarg.1 IL_0059: callvirt virtual TaleWorlds.MountAndBlade.Missile System.Collections.Generic.Dictionary`2::get_Item(System.Int32 key) IL_005E: stloc.0 IL_005F: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionObjectId) IL_0061: ldc.i4.m1 IL_0062: ldc.i4.1 IL_0063: call System.Void TaleWorlds.MountAndBlade.MissionObjectId::.ctor(System.Int32 id, System.Boolean createdAtRuntime) IL_0068: ldarg.2 IL_0069: switch => Labels2,3,4,5 IL_007E: br => Label6 IL_0083: Label5 IL_0083: ldloc.0 IL_0084: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.MountAndBlade.Missile::get_Entity() IL_0089: ldc.i4.s 81 IL_008B: callvirt System.Void TaleWorlds.Engine.GameEntity::Remove(System.Int32 removeReason) IL_0090: br => Label7 IL_0095: Label2 IL_0095: ldloc.0 IL_0096: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.MountAndBlade.Missile::get_Entity() IL_009B: ldc.i4.1 IL_009C: callvirt System.Void TaleWorlds.Engine.GameEntity::SetVisibilityExcludeParents(System.Boolean visible) IL_00A1: ldarg.s 6 IL_00A3: brfalse => Label8 IL_00A8: ldarg.0 IL_00A9: ldarg.1 IL_00AA: call System.Void TaleWorlds.MountAndBlade.Mission::PrepareMissileWeaponForDrop(System.Int32 missileIndex) IL_00AF: ldarg.s 7 IL_00B1: brfalse => Label9 IL_00B6: ldarg.s 6 IL_00B8: ldc.i4.1 IL_00B9: callvirt TaleWorlds.Core.EquipmentIndex TaleWorlds.MountAndBlade.Agent::GetWieldedItemIndex(TaleWorlds.MountAndBlade.HandIndex index) IL_00BE: stloc.3 IL_00BF: ldarg.s 6 IL_00C1: ldloc.3 IL_00C2: ldloc.0 IL_00C3: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.Missile::get_Weapon() IL_00C8: ldloc.0 IL_00C9: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.MountAndBlade.Missile::get_Entity() IL_00CE: ldarga.s 3 IL_00D0: callvirt System.Void TaleWorlds.MountAndBlade.Agent::AttachWeaponToWeapon(TaleWorlds.Core.EquipmentIndex slotIndex, TaleWorlds.MountAndBlade.MissionWeapon weapon, TaleWorlds.Engine.GameEntity weaponEntity, TaleWorlds.Library.MatrixFrame& attachLocalFrame) IL_00D5: br => Label10 IL_00DA: Label9 IL_00DA: ldarg.s 6 IL_00DC: ldloc.0 IL_00DD: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.Missile::get_Weapon() IL_00E2: ldloc.0 IL_00E3: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.MountAndBlade.Missile::get_Entity() IL_00E8: ldarg.s 8 IL_00EA: ldarga.s 3 IL_00EC: callvirt System.Void TaleWorlds.MountAndBlade.Agent::AttachWeaponToBone(TaleWorlds.MountAndBlade.MissionWeapon weapon, TaleWorlds.Engine.GameEntity weaponEntity, System.SByte boneIndex, TaleWorlds.Library.MatrixFrame& attachLocalFrame) IL_00F1: br => Label11 IL_00F6: Label8 IL_00F6: ldsfld TaleWorlds.Library.Vec3 TaleWorlds.Library.Vec3::Zero IL_00FB: stloc.s 4 (TaleWorlds.Library.Vec3) IL_00FD: ldarg.0 IL_00FE: ldarg.1 IL_00FF: ldarg.s 9 IL_0101: ldarga.s 3 IL_0103: ldc.i4.s 20 IL_0105: ldloca.s 4 (TaleWorlds.Library.Vec3) IL_0107: ldloca.s 4 (TaleWorlds.Library.Vec3) IL_0109: ldarg.s 12 IL_010B: call TaleWorlds.MountAndBlade.MissionObjectId TaleWorlds.MountAndBlade.Mission::SpawnWeaponAsDropFromMissile(System.Int32 missileIndex, TaleWorlds.MountAndBlade.MissionObject attachedMissionObject, TaleWorlds.Library.MatrixFrame& attachLocalFrame, TaleWorlds.MountAndBlade.WeaponSpawnFlags spawnFlags, TaleWorlds.Library.Vec3& velocity, TaleWorlds.Library.Vec3& angularVelocity, System.Int32 forcedSpawnIndex) IL_0110: stloc.1 IL_0111: br => Label12 IL_0116: Label4 IL_0116: ldloc.0 IL_0117: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.MountAndBlade.Missile::get_Entity() IL_011C: ldc.i4.1 IL_011D: callvirt System.Void TaleWorlds.Engine.GameEntity::SetVisibilityExcludeParents(System.Boolean visible) IL_0122: ldarg.0 IL_0123: ldarg.1 IL_0124: ldnull IL_0125: ldarga.s 3 IL_0127: ldc.i4.s 12 IL_0129: ldarga.s 10 IL_012B: ldarga.s 11 IL_012D: ldarg.s 12 IL_012F: call TaleWorlds.MountAndBlade.MissionObjectId TaleWorlds.MountAndBlade.Mission::SpawnWeaponAsDropFromMissile(System.Int32 missileIndex, TaleWorlds.MountAndBlade.MissionObject attachedMissionObject, TaleWorlds.Library.MatrixFrame& attachLocalFrame, TaleWorlds.MountAndBlade.WeaponSpawnFlags spawnFlags, TaleWorlds.Library.Vec3& velocity, TaleWorlds.Library.Vec3& angularVelocity, System.Int32 forcedSpawnIndex) IL_0134: stloc.1 IL_0135: Label3 IL_0135: Label6 IL_0135: Label7 IL_0135: Label10 IL_0135: Label11 IL_0135: Label12 IL_0135: ldarg.2 IL_0136: ldc.i4.1 IL_0137: ceq IL_0139: ldc.i4.0 IL_013A: ceq IL_013C: stloc.2 IL_013D: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsServerOrRecorder() IL_0142: brfalse => Label13 IL_0147: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::BeginBroadcastModuleEvent() IL_014C: ldarg.1 IL_014D: ldarg.2 IL_014E: ldarg.3 IL_014F: ldarg.s 4 IL_0151: ldarg.s 5 IL_0153: callvirt System.Int32 TaleWorlds.MountAndBlade.Agent::get_Index() IL_0158: ldarg.s 6 IL_015A: brtrue => Label14 IL_015F: ldc.i4.m1 IL_0160: br => Label15 IL_0165: Label14 IL_0165: ldarg.s 6 IL_0167: call System.Int32 TaleWorlds.MountAndBlade.Agent::get_Index() IL_016C: Label15 IL_016C: ldarg.s 7 IL_016E: ldarg.s 8 IL_0170: ldarg.s 9 IL_0172: brtrue => Label16 IL_0177: ldsfld TaleWorlds.MountAndBlade.MissionObjectId TaleWorlds.MountAndBlade.MissionObjectId::Invalid IL_017C: br => Label17 IL_0181: Label16 IL_0181: ldarg.s 9 IL_0183: call TaleWorlds.MountAndBlade.MissionObjectId TaleWorlds.MountAndBlade.MissionObject::get_Id() IL_0188: Label17 IL_0188: ldarg.s 10 IL_018A: ldarg.s 11 IL_018C: ldloc.1 IL_018D: ldfld System.Int32 TaleWorlds.MountAndBlade.MissionObjectId::Id IL_0192: newobj System.Void NetworkMessages.FromServer.HandleMissileCollisionReaction::.ctor(System.Int32 missileIndex, TaleWorlds.MountAndBlade.MissileCollisionReaction collisionReaction, TaleWorlds.Library.MatrixFrame attachLocalFrame, System.Boolean isAttachedFrameLocal, System.Int32 attackerAgentIndex, System.Int32 attachedAgentIndex, System.Boolean attachedToShield, System.SByte attachedBoneIndex, TaleWorlds.MountAndBlade.MissionObjectId attachedMissionObjectId, TaleWorlds.Library.Vec3 bounceBackVelocity, TaleWorlds.Library.Vec3 bounceBackAngularVelocity, System.Int32 forcedSpawnIndex) IL_0197: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::WriteMessage(TaleWorlds.MountAndBlade.Network.Messages.GameNetworkMessage message) IL_019C: ldc.i4.s 16 IL_019E: ldnull IL_019F: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::EndBroadcastModuleEvent(TaleWorlds.MountAndBlade.EventBroadcastFlags broadcastFlags, TaleWorlds.MountAndBlade.NetworkCommunicator targetPlayer) IL_01A4: br => Label18 IL_01A9: Label13 IL_01A9: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsClientOrReplay() IL_01AE: brfalse => Label19 IL_01B3: ldloc.2 IL_01B4: brfalse => Label20 IL_01B9: ldarg.0 IL_01BA: ldarg.1 IL_01BB: call System.Void TaleWorlds.MountAndBlade.Mission::RemoveMissileAsClient(System.Int32 missileIndex) IL_01C0: Label18 IL_01C0: Label19 IL_01C0: Label20 IL_01C0: ldarg.0 IL_01C1: call System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.Mission::get_MissionBehaviors() IL_01C6: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_01CB: stloc.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) .try { IL_01CD: br => Label21 IL_01D2: Label22 IL_01D2: ldloca.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_01D4: call virtual TaleWorlds.MountAndBlade.MissionBehavior System.Collections.Generic.Enumerator::get_Current() IL_01D9: ldarg.2 IL_01DA: ldarg.s 5 IL_01DC: ldarg.s 6 IL_01DE: ldarg.s 8 IL_01E0: callvirt virtual System.Void TaleWorlds.MountAndBlade.MissionBehavior::OnMissileCollisionReaction(TaleWorlds.MountAndBlade.MissileCollisionReaction collisionReaction, TaleWorlds.MountAndBlade.Agent attackerAgent, TaleWorlds.MountAndBlade.Agent attachedAgent, System.SByte attachedBoneIndex) IL_01E5: Label21 IL_01E5: ldloca.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_01E7: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_01EC: brtrue => Label22 IL_01F1: leave => Label23 IL_01F6: leave => (autogenerated) } // end try .finally { IL_01FB: ldloca.s 5 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_01FD: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior] IL_0203: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0208: endfinally IL_0209: leave => (autogenerated) } // end handler IL_020A: // end original IL_020A: Label23 IL_020A: Label0 IL_020A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::GetLostTroopCountForBreakingInBesiegedSettlement(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel.GetLostTroopCountForBreakingInBesiegedSettlement_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarg.1 IL_000B: ldarg.2 IL_000C: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::GetLostTroopCount(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent) IL_0011: // end original IL_0011: stloc 0 (System.Int32) IL_0015: ldarg 1 IL_0019: ldarg 2 IL_001D: ldloca 0 (System.Int32) IL_0021: call static System.Void BannerlordCheats.Patches.Combat.NoTroopSacrificeBreakIn::GetLostTroopCountForBreakingInBesiegedSettlement(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, System.Int32& __result) IL_0026: ldloc 0 (System.Int32) IL_002A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::GetLostTroopCountForBreakingOutOfBesiegedSettlement(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel.GetLostTroopCountForBreakingOutOfBesiegedSettlement_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarg.1 IL_000B: ldarg.2 IL_000C: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::GetLostTroopCount(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent) IL_0011: // end original IL_0011: stloc 0 (System.Int32) IL_0015: ldarg 1 IL_0019: ldarg 2 IL_001D: ldloca 0 (System.Int32) IL_0021: call static System.Void BannerlordCheats.Patches.Combat.NoTroopSacrificeBreakOut::GetLostTroopCountForBreakingOutOfBesiegedSettlement(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.Siege.SiegeEvent siegeEvent, System.Int32& __result) IL_0026: ldloc 0 (System.Int32) IL_002A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::GetNumberOfTroopsSacrificedForTryingToGetAway(TaleWorlds.Core.BattleSideEnum battleSide, TaleWorlds.CampaignSystem.MapEvents.MapEvent mapEvent) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel::TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel.GetNumberOfTroopsSacrificedForTryingToGetAway_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultTroopSacrificeModel this, TaleWorlds.Core.BattleSideEnum battleSide, TaleWorlds.CampaignSystem.MapEvents.MapEvent mapEvent) IL_0000: Local var 0: TaleWorlds.CampaignSystem.MapEvents.MapEventSide IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Int32 IL_0000: Local var 4: System.Int32 IL_0000: Local var 5: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 6: System.Single IL_0000: Local var 7: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 8: System.Collections.Generic.List`1/Enumerator IL_0000: Local var 9: TaleWorlds.CampaignSystem.Party.MobileParty IL_0000: Local var 10: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 10 (System.Int32) IL_0009: // start original IL_0009: ldarg.2 IL_000A: callvirt System.Void TaleWorlds.CampaignSystem.MapEvents.MapEvent::RecalculateStrengthOfSides() IL_000F: ldarg.2 IL_0010: ldarg.1 IL_0011: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.MapEvents.MapEvent::GetMapEventSide(TaleWorlds.Core.BattleSideEnum side) IL_0016: stloc.0 IL_0017: ldarg.2 IL_0018: ldfld System.Single[] TaleWorlds.CampaignSystem.MapEvents.MapEvent::StrengthOfSide IL_001D: ldarg.1 IL_001E: ldelem.r4 IL_001F: ldc.r4 1 IL_0024: add IL_0025: stloc.1 IL_0026: ldarg.2 IL_0027: ldfld System.Single[] TaleWorlds.CampaignSystem.MapEvents.MapEvent::StrengthOfSide IL_002C: ldarg.1 IL_002D: call static TaleWorlds.Core.BattleSideEnum TaleWorlds.Core.Extensions::GetOppositeSide(TaleWorlds.Core.BattleSideEnum side) IL_0032: ldelem.r4 IL_0033: ldloc.1 IL_0034: div IL_0035: stloc.2 IL_0036: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.PartyBase::get_MainParty() IL_003B: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfRegularMembers() IL_0040: stloc.3 IL_0041: call static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_MainParty() IL_0046: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_004B: brfalse => Label0 IL_0050: call static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_MainParty() IL_0055: callvirt TaleWorlds.CampaignSystem.Army TaleWorlds.CampaignSystem.Party.MobileParty::get_Army() IL_005A: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Army::get_LeaderParty() IL_005F: callvirt TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.CampaignSystem.Party.MobileParty::get_AttachedParties() IL_0064: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_0069: stloc.s 8 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) .try { IL_006B: br => Label1 IL_0070: Label2 IL_0070: ldloca.s 8 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_0072: call virtual TaleWorlds.CampaignSystem.Party.MobileParty System.Collections.Generic.Enumerator::get_Current() IL_0077: stloc.s 9 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_0079: ldloc.3 IL_007A: ldloc.s 9 (TaleWorlds.CampaignSystem.Party.MobileParty) IL_007C: callvirt TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.MobileParty::get_Party() IL_0081: callvirt System.Int32 TaleWorlds.CampaignSystem.Party.PartyBase::get_NumberOfRegularMembers() IL_0086: add IL_0087: stloc.3 IL_0088: Label1 IL_0088: ldloca.s 8 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_008A: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_008F: brtrue => Label2 IL_0094: leave => Label3 IL_0099: leave => (autogenerated) } // end try .finally { IL_009E: ldloca.s 8 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty]) IL_00A0: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.CampaignSystem.Party.MobileParty] IL_00A6: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_00AB: endfinally IL_00AC: leave => (autogenerated) } // end handler IL_00AD: Label0 IL_00AD: Label3 IL_00AD: ldloc.0 IL_00AE: ldsfld System.Func`2 TaleWorlds.CampaignSystem.GameComponents.<>c::<>9__6_0 IL_00B3: dup IL_00B4: brtrue => Label4 IL_00B9: pop IL_00BA: ldsfld TaleWorlds.CampaignSystem.GameComponents.<>c TaleWorlds.CampaignSystem.GameComponents.<>c::<>9 IL_00BF: ldftn System.Boolean TaleWorlds.CampaignSystem.GameComponents.<>c::b__6_0(TaleWorlds.CampaignSystem.Roster.FlattenedTroopRosterElement x) IL_00C5: newobj System.Void System.Func`2::.ctor(System.Object object, System.IntPtr method) IL_00CA: dup IL_00CB: stsfld System.Func`2 TaleWorlds.CampaignSystem.GameComponents.<>c::<>9__6_0 IL_00D0: Label4 IL_00D0: callvirt System.Int32 TaleWorlds.CampaignSystem.MapEvents.MapEventSide::CountTroops(System.Func`2 pred) IL_00D5: stloc.s 4 (System.Int32) IL_00D7: ldloca.s 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00D9: ldc.r4 1 IL_00DE: ldc.i4.0 IL_00DF: ldnull IL_00E0: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_00E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Tactics() IL_00EA: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_TacticsTroopSacrificeReduction() IL_00EF: call static TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.CharacterObject::get_PlayerCharacter() IL_00F4: ldloca.s 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00F6: ldc.i4.m1 IL_00F7: ldc.i4.0 IL_00F8: ldc.i4.0 IL_00F9: call static System.Void Helpers.SkillHelper::AddSkillBonusForCharacter(TaleWorlds.Core.SkillObject skill, TaleWorlds.CampaignSystem.SkillEffect skillEffect, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.CampaignSystem.ExplainedNumber& stat, System.Int32 baseSkillOverride, System.Boolean isBonusPositive, System.Int32 extraSkillValue) IL_00FE: ldloc.3 IL_00FF: conv.r4 IL_0100: ldloc.2 IL_0101: ldc.r4 3 IL_0106: call static System.Single TaleWorlds.Library.MathF::Min(System.Single a, System.Single b) IL_010B: ldc.r4 1.3 IL_0110: call static System.Single TaleWorlds.Library.MathF::Pow(System.Single x, System.Single y) IL_0115: mul IL_0116: ldc.r4 0.1 IL_011B: mul IL_011C: ldc.r4 5 IL_0121: add IL_0122: stloc.s 6 (System.Single) IL_0124: ldloca.s 7 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0126: ldloc.s 6 (System.Single) IL_0128: ldloca.s 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_012A: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_012F: mul IL_0130: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_0135: ldc.i4.1 IL_0136: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_013B: conv.r4 IL_013C: ldc.i4.0 IL_013D: ldnull IL_013E: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0143: call static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_MainParty() IL_0148: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_SwiftRegroup() IL_014D: ldc.i4.1 IL_014E: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0153: brfalse => Label5 IL_0158: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_SwiftRegroup() IL_015D: call static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::get_MainParty() IL_0162: ldc.i4.0 IL_0163: ldloca.s 7 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0165: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_016A: Label5 IL_016A: ldloca.s 7 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_016C: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0171: ldloc.s 4 (System.Int32) IL_0173: conv.r4 IL_0174: bgt.un => Label6 IL_0179: ldloca.s 7 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_017B: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0180: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_0185: br => Label11 IL_018A: Label6 IL_018A: ldc.i4.m1 IL_018B: // end original IL_018B: Label11 IL_018B: stloc 10 (System.Int32) IL_018F: ldarg 1 IL_0193: ldarg 2 IL_0197: ldloca 10 (System.Int32) IL_019B: call static System.Void BannerlordCheats.Patches.Combat.NoTroopSacrificeRunaway::GetNumberOfTroopsSacrificedForTryingToGetAway(TaleWorlds.Core.BattleSideEnum battleSide, TaleWorlds.CampaignSystem.MapEvents.MapEvent mapEvent, System.Int32& __result) IL_01A0: ldloc 10 (System.Int32) IL_01A4: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch5(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldarg 1 IL_0E24: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E29: ldarg 2 IL_0E2D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E32: ldarg 3 IL_0E36: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E3B: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E40: ldloca 27 (System.Single) IL_0E44: call static System.Void BannerlordCheats.Patches.Combat.DamageTakenPercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E49: ldarg 1 IL_0E4D: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E52: ldarg 2 IL_0E56: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E5B: ldarg 3 IL_0E5F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E64: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E69: ldloca 27 (System.Single) IL_0E6D: call static System.Void BannerlordCheats.Patches.Combat.EnemyDamagePercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E72: ldarg 1 IL_0E76: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E7B: ldarg 2 IL_0E7F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E84: ldarg 3 IL_0E88: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E8D: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E92: ldloca 27 (System.Single) IL_0E96: call static System.Void BannerlordCheats.Patches.Combat.NoFriendlyFire_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E9B: ldarg 1 IL_0E9F: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0EA4: ldarg 2 IL_0EA8: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0EAD: ldarg 3 IL_0EB1: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0EB6: box TaleWorlds.MountAndBlade.MissionWeapon IL_0EBB: ldloca 27 (System.Single) IL_0EBF: call static System.Void BannerlordCheats.Patches.Combat.OneHitKill_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0EC4: ldloc 27 (System.Single) IL_0EC8: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch6(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldarg 1 IL_0E24: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E29: ldarg 2 IL_0E2D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E32: ldarg 3 IL_0E36: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E3B: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E40: ldloca 27 (System.Single) IL_0E44: call static System.Void BannerlordCheats.Patches.Combat.DamageTakenPercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E49: ldarg 1 IL_0E4D: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E52: ldarg 2 IL_0E56: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E5B: ldarg 3 IL_0E5F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E64: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E69: ldloca 27 (System.Single) IL_0E6D: call static System.Void BannerlordCheats.Patches.Combat.EnemyDamagePercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E72: ldarg 1 IL_0E76: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E7B: ldarg 2 IL_0E7F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E84: ldarg 3 IL_0E88: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E8D: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E92: ldloca 27 (System.Single) IL_0E96: call static System.Void BannerlordCheats.Patches.Combat.NoFriendlyFire_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E9B: ldarg 1 IL_0E9F: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0EA4: ldarg 2 IL_0EA8: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0EAD: ldarg 3 IL_0EB1: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0EB6: box TaleWorlds.MountAndBlade.MissionWeapon IL_0EBB: ldloca 27 (System.Single) IL_0EBF: call static System.Void BannerlordCheats.Patches.Combat.OneHitKill_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0EC4: ldarg 1 IL_0EC8: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0ECD: ldarg 2 IL_0ED1: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0ED6: ldarg 3 IL_0EDA: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0EDF: box TaleWorlds.MountAndBlade.MissionWeapon IL_0EE4: ldloca 27 (System.Single) IL_0EE8: call static System.Void BannerlordCheats.Patches.Combat.PartyDamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0EED: ldloc 27 (System.Single) IL_0EF1: ret DONE ### Patch: TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::get_CurrentMortalityState() ### Replacement: static TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::TaleWorlds.MountAndBlade.Agent.get_CurrentMortalityState_Patch2(TaleWorlds.MountAndBlade.Agent this) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::k__BackingField IL_000F: // end original IL_000F: stloc 0 (System.Int32) IL_0013: ldarga 0 IL_0017: ldloca 0 (System.Int32) IL_001B: call static System.Void BannerlordCheats.Patches.Combat.Invincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_0020: ldarga 0 IL_0024: ldloca 0 (System.Int32) IL_0028: call static System.Void BannerlordCheats.Patches.Combat.PartyHeroesInvincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_002D: ldloc 0 (System.Int32) IL_0031: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Mission::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) ### Replacement: static System.Void TaleWorlds.MountAndBlade.Mission::TaleWorlds.MountAndBlade.Mission.OnAgentShootMissile_Patch2(TaleWorlds.MountAndBlade.Mission this, TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) IL_0000: Local var 0: System.Single IL_0000: Local var 1: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 2: TaleWorlds.MountAndBlade.WeaponData IL_0000: Local var 3: TaleWorlds.Library.Vec3 IL_0000: Local var 4: System.Single IL_0000: Local var 5: TaleWorlds.Engine.GameEntity IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: System.Single IL_0000: Local var 8: System.Int32 IL_0000: Local var 9: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 10: TaleWorlds.MountAndBlade.WeaponStatsData IL_0000: Local var 11: TaleWorlds.MountAndBlade.WeaponStatsData[] IL_0000: Local var 12: TaleWorlds.MountAndBlade.Mission/Missile IL_0000: Local var 13: System.Collections.Generic.List`1/Enumerator IL_0000: // start original IL_0000: ldc.r4 0 IL_0005: stloc.0 IL_0006: ldarg.1 IL_0007: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_000C: ldarg.2 IL_000D: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0012: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0014: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0016: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_001B: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsRangedWeapon() IL_0020: brfalse => Label0 IL_0025: ldarg.1 IL_0026: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_002B: ldarg.2 IL_002C: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0031: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0033: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0035: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_003A: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_003F: brfalse => Label1 IL_0044: ldarg.1 IL_0045: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_004A: ldarg.2 IL_004B: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0050: stloc.1 IL_0051: br => Label2 IL_0056: Label0 IL_0056: Label1 IL_0056: ldarg.1 IL_0057: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_005C: ldarg.2 IL_005D: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0062: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0064: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0066: call TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionWeapon::get_AmmoWeapon() IL_006B: stloc.1 IL_006C: ldarg.1 IL_006D: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_0072: ldarg.2 IL_0073: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_0078: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_007A: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_007C: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0081: ldfld TaleWorlds.Core.WeaponFlags TaleWorlds.Core.WeaponComponentData::WeaponFlags IL_0086: ldc.i4 1024 IL_008B: conv.i8 IL_008C: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_0091: brfalse => Label3 IL_0096: ldarg.1 IL_0097: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_00A2: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00A4: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00A6: call System.Int32 TaleWorlds.MountAndBlade.MissionWeapon::GetModifiedThrustDamageForCurrentUsage() IL_00AB: conv.r4 IL_00AC: stloc.0 IL_00AD: Label2 IL_00AD: Label3 IL_00AD: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00AF: ldc.i4.1 IL_00B0: call System.Void TaleWorlds.MountAndBlade.MissionWeapon::set_Amount(System.Int16 value) IL_00B5: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00B7: ldc.i4.1 IL_00B8: call TaleWorlds.MountAndBlade.WeaponData TaleWorlds.MountAndBlade.MissionWeapon::GetWeaponData(System.Boolean needBatchedVersionForMeshes) IL_00BD: stloc.2 IL_00BE: ldarg.s 4 IL_00C0: stloc.3 IL_00C1: ldloca.s 3 (TaleWorlds.Library.Vec3) IL_00C3: call System.Single TaleWorlds.Library.Vec3::Normalize() IL_00C8: stloc.s 4 (System.Single) IL_00CA: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsClient() IL_00CF: brfalse => Label4 IL_00D4: ldarg.s 8 IL_00D6: ldc.i4.m1 IL_00D7: ceq IL_00D9: br => Label5 IL_00DE: Label4 IL_00DE: ldc.i4.0 IL_00DF: Label5 IL_00DF: stloc.s 6 (System.Boolean) IL_00E1: ldarg.1 IL_00E2: callvirt TaleWorlds.MountAndBlade.MissionEquipment TaleWorlds.MountAndBlade.Agent::get_Equipment() IL_00E7: ldarg.1 IL_00E8: ldc.i4.0 IL_00E9: callvirt TaleWorlds.Core.EquipmentIndex TaleWorlds.MountAndBlade.Agent::GetWieldedItemIndex(TaleWorlds.MountAndBlade.HandIndex index) IL_00EE: callvirt TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionEquipment::get_Item(TaleWorlds.Core.EquipmentIndex index) IL_00F3: stloc.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00F5: ldloca.s 9 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00F7: call System.Int32 TaleWorlds.MountAndBlade.MissionWeapon::GetModifiedMissileSpeedForCurrentUsage() IL_00FC: conv.r4 IL_00FD: stloc.s 7 (System.Single) IL_00FF: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0101: call System.Int32 TaleWorlds.MountAndBlade.MissionWeapon::get_WeaponsCount() IL_0106: ldc.i4.1 IL_0107: bne.un => Label6 IL_010C: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_010E: ldc.i4.0 IL_010F: call TaleWorlds.MountAndBlade.WeaponStatsData TaleWorlds.MountAndBlade.MissionWeapon::GetWeaponStatsDataForUsage(System.Int32 usageIndex) IL_0114: stloc.s 10 (TaleWorlds.MountAndBlade.WeaponStatsData) IL_0116: ldarg.0 IL_0117: ldarg.s 8 IL_0119: ldloc.s 6 (System.Boolean) IL_011B: ldarg.1 IL_011C: ldloca.s 2 (TaleWorlds.MountAndBlade.WeaponData) IL_011E: ldloca.s 10 (TaleWorlds.MountAndBlade.WeaponStatsData) IL_0120: ldloc.0 IL_0121: ldarga.s 3 IL_0123: ldloca.s 3 (TaleWorlds.Library.Vec3) IL_0125: ldarga.s 5 IL_0127: ldloc.s 7 (System.Single) IL_0129: ldloc.s 4 (System.Single) IL_012B: ldarg.s 6 IL_012D: ldnull IL_012E: ldarg.s 7 IL_0130: ldloca.s 5 (TaleWorlds.Engine.GameEntity) IL_0132: call System.Int32 TaleWorlds.MountAndBlade.Mission::AddMissileSingleUsageAux(System.Int32 forcedMissileIndex, System.Boolean isPrediction, TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.MountAndBlade.WeaponData& weaponData, TaleWorlds.MountAndBlade.WeaponStatsData& weaponStatsData, System.Single damageBonus, TaleWorlds.Library.Vec3& position, TaleWorlds.Library.Vec3& direction, TaleWorlds.Library.Mat3& orientation, System.Single baseSpeed, System.Single speed, System.Boolean addRigidBody, TaleWorlds.Engine.GameEntity gameEntityToIgnore, System.Boolean isPrimaryWeaponShot, TaleWorlds.Engine.GameEntity& missileEntity) IL_0137: stloc.s 8 (System.Int32) IL_0139: br => Label7 IL_013E: Label6 IL_013E: ldloca.s 1 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0140: call TaleWorlds.MountAndBlade.WeaponStatsData[] TaleWorlds.MountAndBlade.MissionWeapon::GetWeaponStatsData() IL_0145: stloc.s 11 (TaleWorlds.MountAndBlade.WeaponStatsData[]) IL_0147: ldarg.0 IL_0148: ldarg.s 8 IL_014A: ldloc.s 6 (System.Boolean) IL_014C: ldarg.1 IL_014D: ldloca.s 2 (TaleWorlds.MountAndBlade.WeaponData) IL_014F: ldloc.s 11 (TaleWorlds.MountAndBlade.WeaponStatsData[]) IL_0151: ldloc.0 IL_0152: ldarga.s 3 IL_0154: ldloca.s 3 (TaleWorlds.Library.Vec3) IL_0156: ldarga.s 5 IL_0158: ldloc.s 7 (System.Single) IL_015A: ldloc.s 4 (System.Single) IL_015C: ldarg.s 6 IL_015E: ldnull IL_015F: ldarg.s 7 IL_0161: ldloca.s 5 (TaleWorlds.Engine.GameEntity) IL_0163: call System.Int32 TaleWorlds.MountAndBlade.Mission::AddMissileAux(System.Int32 forcedMissileIndex, System.Boolean isPrediction, TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.MountAndBlade.WeaponData& weaponData, TaleWorlds.MountAndBlade.WeaponStatsData[] weaponStatsData, System.Single damageBonus, TaleWorlds.Library.Vec3& position, TaleWorlds.Library.Vec3& direction, TaleWorlds.Library.Mat3& orientation, System.Single baseSpeed, System.Single speed, System.Boolean addRigidBody, TaleWorlds.Engine.GameEntity gameEntityToIgnore, System.Boolean isPrimaryWeaponShot, TaleWorlds.Engine.GameEntity& missileEntity) IL_0168: stloc.s 8 (System.Int32) IL_016A: Label7 IL_016A: ldloca.s 2 (TaleWorlds.MountAndBlade.WeaponData) IL_016C: call System.Void TaleWorlds.MountAndBlade.WeaponData::DeinitializeManagedPointers() IL_0171: ldloc.s 6 (System.Boolean) IL_0173: brtrue => Label8 IL_0178: ldarg.0 IL_0179: ldloc.s 5 (TaleWorlds.Engine.GameEntity) IL_017B: newobj System.Void TaleWorlds.MountAndBlade.Missile::.ctor(TaleWorlds.MountAndBlade.Mission mission, TaleWorlds.Engine.GameEntity entity) IL_0180: dup IL_0181: ldarg.1 IL_0182: callvirt System.Void TaleWorlds.MountAndBlade.Missile::set_ShooterAgent(TaleWorlds.MountAndBlade.Agent value) IL_0187: dup IL_0188: ldloc.1 IL_0189: callvirt System.Void TaleWorlds.MountAndBlade.Missile::set_Weapon(TaleWorlds.MountAndBlade.MissionWeapon value) IL_018E: dup IL_018F: ldloc.s 8 (System.Int32) IL_0191: callvirt System.Void TaleWorlds.MountAndBlade.MBMissile::set_Index(System.Int32 value) IL_0196: stloc.s 12 (TaleWorlds.MountAndBlade.Mission+Missile) IL_0198: ldloc.s 5 (TaleWorlds.Engine.GameEntity) IL_019A: callvirt System.Void TaleWorlds.DotNet.NativeObject::ManualInvalidate() IL_019F: ldarg.0 IL_01A0: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.MountAndBlade.Mission::_missiles IL_01A5: ldloc.s 8 (System.Int32) IL_01A7: ldloc.s 12 (TaleWorlds.MountAndBlade.Mission+Missile) IL_01A9: callvirt virtual System.Void System.Collections.Generic.Dictionary`2::Add(System.Int32 key, TaleWorlds.MountAndBlade.Missile value) IL_01AE: call static System.Boolean TaleWorlds.MountAndBlade.GameNetwork::get_IsServerOrRecorder() IL_01B3: brfalse => Label9 IL_01B8: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::BeginBroadcastModuleEvent() IL_01BD: ldloc.s 8 (System.Int32) IL_01BF: ldarg.1 IL_01C0: callvirt System.Int32 TaleWorlds.MountAndBlade.Agent::get_Index() IL_01C5: ldarg.2 IL_01C6: ldsfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.MissionWeapon::Invalid IL_01CB: ldarg.3 IL_01CC: ldloc.3 IL_01CD: ldloc.s 4 (System.Single) IL_01CF: ldarg.s 5 IL_01D1: ldarg.s 6 IL_01D3: ldsfld TaleWorlds.MountAndBlade.MissionObjectId TaleWorlds.MountAndBlade.MissionObjectId::Invalid IL_01D8: ldarg.s 7 IL_01DA: newobj System.Void NetworkMessages.FromServer.CreateMissile::.ctor(System.Int32 missileIndex, System.Int32 agentIndex, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.MountAndBlade.MissionWeapon weapon, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 direction, System.Single speed, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, TaleWorlds.MountAndBlade.MissionObjectId missionObjectToIgnoreId, System.Boolean isPrimaryWeaponShot) IL_01DF: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::WriteMessage(TaleWorlds.MountAndBlade.Network.Messages.GameNetworkMessage message) IL_01E4: ldc.i4.s 16 IL_01E6: ldnull IL_01E7: call static System.Void TaleWorlds.MountAndBlade.GameNetwork::EndBroadcastModuleEvent(TaleWorlds.MountAndBlade.EventBroadcastFlags broadcastFlags, TaleWorlds.MountAndBlade.NetworkCommunicator targetPlayer) IL_01EC: Label8 IL_01EC: Label9 IL_01EC: ldarg.0 IL_01ED: call System.Collections.Generic.List`1 TaleWorlds.MountAndBlade.Mission::get_MissionBehaviors() IL_01F2: callvirt System.Collections.Generic.Enumerator System.Collections.Generic.List`1::GetEnumerator() IL_01F7: stloc.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) .try { IL_01F9: br => Label10 IL_01FE: Label11 IL_01FE: ldloca.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_0200: call virtual TaleWorlds.MountAndBlade.MissionBehavior System.Collections.Generic.Enumerator::get_Current() IL_0205: ldarg.1 IL_0206: ldarg.2 IL_0207: ldarg.3 IL_0208: ldarg.s 4 IL_020A: ldarg.s 5 IL_020C: ldarg.s 6 IL_020E: ldarg.s 8 IL_0210: callvirt virtual System.Void TaleWorlds.MountAndBlade.MissionBehavior::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Int32 forcedMissileIndex) IL_0215: Label10 IL_0215: ldloca.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_0217: call virtual System.Boolean System.Collections.Generic.Enumerator::MoveNext() IL_021C: brtrue => Label11 IL_0221: leave => Label12 IL_0226: leave => (autogenerated) } // end try .finally { IL_022B: ldloca.s 13 (System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior]) IL_022D: constrained. System.Collections.Generic.List`1+Enumerator[TaleWorlds.MountAndBlade.MissionBehavior] IL_0233: callvirt abstract virtual System.Void System.IDisposable::Dispose() IL_0238: endfinally IL_0239: leave => (autogenerated) } // end handler IL_023A: Label12 IL_023A: ldarg.1 IL_023B: brfalse => Label13 IL_0240: ldarg.1 IL_0241: call static System.Single TaleWorlds.MountAndBlade.MBCommon::GetTotalMissionTime() IL_0246: callvirt System.Void TaleWorlds.MountAndBlade.Agent::UpdateLastRangedAttackTimeDueToAnAttack(System.Single newTime) IL_024B: // end original IL_024B: Label13 IL_024B: ldarga 1 IL_024F: ldarg 2 IL_0253: ldarg 3 IL_0257: ldarg 4 IL_025B: ldarg 5 IL_025F: ldarg 6 IL_0263: ldarg 7 IL_0267: ldarg 8 IL_026B: call static System.Void BannerlordCheats.Patches.Combat.InfiniteAmmo::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent& shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) IL_0270: ldarga 1 IL_0274: ldarg 2 IL_0278: ldarg 3 IL_027C: ldarg 4 IL_0280: ldarg 5 IL_0284: ldarg 6 IL_0288: ldarg 7 IL_028C: ldarg 8 IL_0290: call static System.Void BannerlordCheats.Patches.Combat.PartyInfiniteAmmo::OnAgentShootMissile(TaleWorlds.MountAndBlade.Agent& shooterAgent, TaleWorlds.Core.EquipmentIndex weaponIndex, TaleWorlds.Library.Vec3 position, TaleWorlds.Library.Vec3 velocity, TaleWorlds.Library.Mat3 orientation, System.Boolean hasRigidBody, System.Boolean isPrimaryWeaponShot, System.Int32 forcedMissileIndex) IL_0295: ret DONE ### Patch: TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::get_CurrentMortalityState() ### Replacement: static TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::TaleWorlds.MountAndBlade.Agent.get_CurrentMortalityState_Patch3(TaleWorlds.MountAndBlade.Agent this) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::k__BackingField IL_000F: // end original IL_000F: stloc 0 (System.Int32) IL_0013: ldarga 0 IL_0017: ldloca 0 (System.Int32) IL_001B: call static System.Void BannerlordCheats.Patches.Combat.Invincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_0020: ldarga 0 IL_0024: ldloca 0 (System.Int32) IL_0028: call static System.Void BannerlordCheats.Patches.Combat.PartyHeroesInvincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_002D: ldarga 0 IL_0031: ldloca 0 (System.Int32) IL_0035: call static System.Void BannerlordCheats.Patches.Combat.PartyInvincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_003A: ldloc 0 (System.Int32) IL_003E: ret DONE ### Patch: virtual System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel::TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch5(TaleWorlds.MountAndBlade.DefaultAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 0 IL_0010: stind.r4 IL_0011: ldc.r4 1 IL_0016: // end original IL_0016: stloc 0 (System.Single) IL_001A: ldarg 1 IL_001E: ldarg 2 IL_0022: ldarg 3 IL_0026: ldarg 5 IL_002A: ldobj System.Single IL_002F: ldloca 0 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0038: ldarg 1 IL_003C: ldarg 2 IL_0040: ldarg 3 IL_0044: ldarg 5 IL_0048: ldobj System.Single IL_004D: ldloca 0 (System.Single) IL_0051: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0056: ldarg 1 IL_005A: ldarg 2 IL_005E: ldarg 3 IL_0062: ldarg 5 IL_0066: ldobj System.Single IL_006B: ldloca 0 (System.Single) IL_006F: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0074: ldarg 1 IL_0078: ldarg 2 IL_007C: ldarg 3 IL_0080: ldarg 5 IL_0084: ldobj System.Single IL_0089: ldloca 0 (System.Single) IL_008D: call static System.Void BannerlordCheats.Patches.Combat.FriendlyLordsKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0092: ldarg 1 IL_0096: ldarg 2 IL_009A: ldarg 3 IL_009E: ldarg 5 IL_00A2: ldobj System.Single IL_00A7: ldloca 0 (System.Single) IL_00AB: call static System.Void BannerlordCheats.Patches.Combat.PartyKnockoutOrKilled_Default::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_00B0: ldloc 0 (System.Single) IL_00B4: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch5(SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 1: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 2: TaleWorlds.CampaignSystem.Party.PartyBase IL_0000: Local var 3: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 3 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0017: brfalse => Label0 IL_001C: ldarg.2 IL_001D: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0022: castclass TaleWorlds.CampaignSystem.CharacterObject IL_0027: stloc.0 IL_0028: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_002D: brfalse => Label1 IL_0032: ldloc.0 IL_0033: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_0038: brfalse => Label2 IL_003D: ldloc.0 IL_003E: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.CharacterObject::get_HeroObject() IL_0043: ldc.i4.4 IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanDie(TaleWorlds.CampaignSystem.Actions.KillCharacterActionDetail causeOfDeath) IL_0049: brtrue => Label3 IL_004E: ldc.r4 0 IL_0053: br => Label10 IL_0058: Label2 IL_0058: Label3 IL_0058: ldarg.2 IL_0059: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_005E: dup IL_005F: brtrue => Label4 IL_0064: pop IL_0065: ldnull IL_0066: br => Label5 IL_006B: Label4 IL_006B: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_0070: Label5 IL_0070: stloc.1 IL_0071: ldarg.1 IL_0072: brfalse => Label6 IL_0077: ldarg.1 IL_0078: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_007D: brfalse => Label7 IL_0082: ldarg.1 IL_0083: callvirt SandBox.CampaignAgentComponent TaleWorlds.MountAndBlade.Agent::GetComponent() IL_0088: dup IL_0089: brtrue => Label8 IL_008E: pop IL_008F: ldnull IL_0090: br => Label9 IL_0095: Label8 IL_0095: call TaleWorlds.CampaignSystem.Party.PartyBase SandBox.CampaignAgentComponent::get_OwnerParty() IL_009A: Label9 IL_009A: stloc.2 IL_009B: ldc.r4 1 IL_00A0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00A5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00AA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00AF: ldloc.1 IL_00B0: ldloc.0 IL_00B1: ldarg.3 IL_00B2: ldarg.s 4 IL_00B4: ldc.i4 1048576 IL_00B9: conv.i8 IL_00BA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00BF: ldloc.2 IL_00C0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00C5: sub IL_00C6: br => Label11 IL_00CB: Label6 IL_00CB: Label7 IL_00CB: ldc.r4 1 IL_00D0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_00D5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_00DA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel TaleWorlds.CampaignSystem.GameModels::get_PartyHealingModel() IL_00DF: ldloc.1 IL_00E0: ldloc.0 IL_00E1: ldarg.3 IL_00E2: ldarg.s 4 IL_00E4: ldc.i4 1048576 IL_00E9: conv.i8 IL_00EA: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Core.WeaponFlags p1, TaleWorlds.Core.WeaponFlags p2) IL_00EF: ldnull IL_00F0: callvirt abstract virtual System.Single TaleWorlds.CampaignSystem.ComponentInterfaces.PartyHealingModel::GetSurvivalChance(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterObject agentCharacter, TaleWorlds.Core.DamageTypes damageType, System.Boolean canDamageKillEvenIfBlunt, TaleWorlds.CampaignSystem.Party.PartyBase enemyParty) IL_00F5: sub IL_00F6: br => Label12 IL_00FB: Label0 IL_00FB: Label1 IL_00FB: ldc.r4 1 IL_0100: // end original IL_0100: Label10 IL_0100: Label11 IL_0100: Label12 IL_0100: stloc 3 (System.Single) IL_0104: ldarg 1 IL_0108: ldarg 2 IL_010C: ldarg 3 IL_0110: ldarg 5 IL_0114: ldobj System.Single IL_0119: ldloca 3 (System.Single) IL_011D: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0122: ldarg 1 IL_0126: ldarg 2 IL_012A: ldarg 3 IL_012E: ldarg 5 IL_0132: ldobj System.Single IL_0137: ldloca 3 (System.Single) IL_013B: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0140: ldarg 1 IL_0144: ldarg 2 IL_0148: ldarg 3 IL_014C: ldarg 5 IL_0150: ldobj System.Single IL_0155: ldloca 3 (System.Single) IL_0159: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_015E: ldarg 1 IL_0162: ldarg 2 IL_0166: ldarg 3 IL_016A: ldarg 5 IL_016E: ldobj System.Single IL_0173: ldloca 3 (System.Single) IL_0177: call static System.Void BannerlordCheats.Patches.Combat.FriendlyLordsKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_017C: ldarg 1 IL_0180: ldarg 2 IL_0184: ldarg 3 IL_0188: ldarg 5 IL_018C: ldobj System.Single IL_0191: ldloca 3 (System.Single) IL_0195: call static System.Void BannerlordCheats.Patches.Combat.PartyKnockoutOrKilled_Sandbox::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_019A: ldloc 3 (System.Single) IL_019E: ret DONE ### Patch: virtual System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) ### Replacement: static System.Single StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel::StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel.GetAgentStateProbability_Patch5(StoryMode.GameComponents.StoryModeAgentDecideKilledOrUnconsciousModel this, TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldarg.s 5 IL_000B: ldc.r4 1 IL_0010: stind.r4 IL_0011: ldarg.2 IL_0012: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0017: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsHero() IL_001C: brfalse => Label0 IL_0021: ldarg.2 IL_0022: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0027: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_ElderBrother() IL_002C: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0031: beq => Label1 IL_0036: ldarg.2 IL_0037: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_003C: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_Radagos() IL_0041: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0046: beq => Label2 IL_004B: ldarg.2 IL_004C: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0051: call static TaleWorlds.CampaignSystem.Hero StoryMode.StoryModeObjects.StoryModeHeroes::get_RadagosHencman() IL_0056: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_005B: bne.un => Label3 IL_0060: Label1 IL_0060: Label2 IL_0060: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0065: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_006A: callvirt System.Boolean StoryMode.MainStoryLine::get_IsCompleted() IL_006F: brtrue => Label4 IL_0074: ldc.r4 0 IL_0079: br => Label7 IL_007E: Label0 IL_007E: Label3 IL_007E: Label4 IL_007E: call static StoryMode.StoryModeManager StoryMode.StoryModeManager::get_Current() IL_0083: callvirt StoryMode.MainStoryLine StoryMode.StoryModeManager::get_MainStoryLine() IL_0088: callvirt StoryMode.StoryModePhases.TutorialPhase StoryMode.MainStoryLine::get_TutorialPhase() IL_008D: callvirt System.Boolean StoryMode.StoryModePhases.TutorialPhase::get_IsCompleted() IL_0092: brtrue => Label5 IL_0097: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_009C: ldarg.2 IL_009D: callvirt TaleWorlds.MountAndBlade.Team TaleWorlds.MountAndBlade.Agent::get_Team() IL_00A2: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.MountAndBlade.Team::get_Side() IL_00A7: callvirt System.Int32 TaleWorlds.MountAndBlade.Mission::GetMemberCountOfSide(TaleWorlds.Core.BattleSideEnum side) IL_00AC: ldc.i4.4 IL_00AD: ble => Label6 IL_00B2: ldc.r4 0 IL_00B7: br => Label8 IL_00BC: Label5 IL_00BC: Label6 IL_00BC: ldarg.0 IL_00BD: ldarg.1 IL_00BE: ldarg.2 IL_00BF: ldarg.3 IL_00C0: ldarg.s 4 IL_00C2: ldarg.s 5 IL_00C4: call virtual System.Single SandBox.GameComponents.SandboxAgentDecideKilledOrUnconsciousModel::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, TaleWorlds.Core.WeaponFlags weaponFlags, System.Single& useSurgeryProbability) IL_00C9: // end original IL_00C9: Label7 IL_00C9: Label8 IL_00C9: stloc 0 (System.Single) IL_00CD: ldarg 1 IL_00D1: ldarg 2 IL_00D5: ldarg 3 IL_00D9: ldarg 5 IL_00DD: ldobj System.Single IL_00E2: ldloca 0 (System.Single) IL_00E6: call static System.Void BannerlordCheats.Patches.Combat.CompanionsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_00EB: ldarg 1 IL_00EF: ldarg 2 IL_00F3: ldarg 3 IL_00F7: ldarg 5 IL_00FB: ldobj System.Single IL_0100: ldloca 0 (System.Single) IL_0104: call static System.Void BannerlordCheats.Patches.Combat.EnemyLordsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0109: ldarg 1 IL_010D: ldarg 2 IL_0111: ldarg 3 IL_0115: ldarg 5 IL_0119: ldobj System.Single IL_011E: ldloca 0 (System.Single) IL_0122: call static System.Void BannerlordCheats.Patches.Combat.EnemyTroopsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0127: ldarg 1 IL_012B: ldarg 2 IL_012F: ldarg 3 IL_0133: ldarg 5 IL_0137: ldobj System.Single IL_013C: ldloca 0 (System.Single) IL_0140: call static System.Void BannerlordCheats.Patches.Combat.FriendlyLordsKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0145: ldarg 1 IL_0149: ldarg 2 IL_014D: ldarg 3 IL_0151: ldarg 5 IL_0155: ldobj System.Single IL_015A: ldloca 0 (System.Single) IL_015E: call static System.Void BannerlordCheats.Patches.Combat.PartyKnockoutOrKilled_StoryMode::GetAgentStateProbability(TaleWorlds.MountAndBlade.Agent affectorAgent, TaleWorlds.MountAndBlade.Agent effectedAgent, TaleWorlds.Core.DamageTypes damageType, System.Single useSurgeryProbability, System.Single& __result) IL_0163: ldloc 0 (System.Single) IL_0167: ret DONE ### Patch: virtual System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) ### Replacement: static System.Single SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.CalculateDamage_Patch7(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.AttackInformation& attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.MissionWeapon& weapon, System.Single baseDamage) IL_0000: Local var 0: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 1: TaleWorlds.Core.BannerComponent IL_0000: Local var 2: TaleWorlds.MountAndBlade.Agent IL_0000: Local var 3: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 4: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 5: System.Boolean IL_0000: Local var 6: System.Boolean IL_0000: Local var 7: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 8: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 9: System.Boolean IL_0000: Local var 10: System.Boolean IL_0000: Local var 11: TaleWorlds.MountAndBlade.Formation IL_0000: Local var 12: TaleWorlds.Core.BannerComponent IL_0000: Local var 13: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 14: System.Boolean IL_0000: Local var 15: System.Single IL_0000: Local var 16: TaleWorlds.Core.WeaponComponentData IL_0000: Local var 17: System.Boolean IL_0000: Local var 18: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 19: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 20: System.Single IL_0000: Local var 21: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 22: System.Single IL_0000: Local var 23: System.Single IL_0000: Local var 24: TaleWorlds.MountAndBlade.DestructableComponent IL_0000: Local var 25: System.Int32 IL_0000: Local var 26: System.Single IL_0000: Local var 27: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 27 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::AttackerFormation IL_000F: stloc.0 IL_0010: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0015: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_001A: ldloc.0 IL_001B: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0020: stloc.1 IL_0021: ldarg.1 IL_0022: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0027: brtrue => Label0 IL_002C: ldarg.1 IL_002D: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_0032: br => Label1 IL_0037: Label0 IL_0037: ldarg.1 IL_0038: ldfld TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.AttackInformation::AttackerAgent IL_003D: callvirt TaleWorlds.MountAndBlade.Agent TaleWorlds.MountAndBlade.Agent::get_RiderAgent() IL_0042: Label1 IL_0042: stloc.2 IL_0043: ldarg.1 IL_0044: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentMount IL_0049: brtrue => Label2 IL_004E: ldarg.1 IL_004F: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerAgentCharacter IL_0054: br => Label3 IL_0059: Label2 IL_0059: ldarg.1 IL_005A: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerRiderAgentCharacter IL_005F: Label3 IL_005F: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0064: stloc.3 IL_0065: ldarg.1 IL_0066: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::AttackerCaptainCharacter IL_006B: isinst TaleWorlds.CampaignSystem.CharacterObject IL_0070: stloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0072: ldarg.1 IL_0073: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsAttackerAgentHuman IL_0078: brfalse => Label4 IL_007D: ldarg.1 IL_007E: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0083: ldc.i4.0 IL_0084: ceq IL_0086: br => Label5 IL_008B: Label4 IL_008B: ldc.i4.0 IL_008C: Label5 IL_008C: stloc.s 5 (System.Boolean) IL_008E: ldarg.1 IL_008F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0094: brtrue => Label6 IL_0099: ldarg.1 IL_009A: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveRiderAgent IL_009F: br => Label7 IL_00A4: Label6 IL_00A4: ldc.i4.1 IL_00A5: Label7 IL_00A5: stloc.s 6 (System.Boolean) IL_00A7: ldarg.1 IL_00A8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_00AD: brtrue => Label8 IL_00B2: ldarg.1 IL_00B3: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimAgentCharacter IL_00B8: br => Label9 IL_00BD: Label8 IL_00BD: ldarg.1 IL_00BE: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimRiderAgentCharacter IL_00C3: Label9 IL_00C3: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00C8: stloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_00CA: ldarg.1 IL_00CB: ldfld TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.AttackInformation::VictimCaptainCharacter IL_00D0: isinst TaleWorlds.CampaignSystem.CharacterObject IL_00D5: stloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_00D7: ldarg.1 IL_00D8: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentHuman IL_00DD: brfalse => Label10 IL_00E2: ldarg.1 IL_00E3: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00E8: ldc.i4.0 IL_00E9: ceq IL_00EB: br => Label11 IL_00F0: Label10 IL_00F0: ldc.i4.0 IL_00F1: Label11 IL_00F1: stloc.s 9 (System.Boolean) IL_00F3: ldarg.1 IL_00F4: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_00F9: brtrue => Label12 IL_00FE: ldarg.1 IL_00FF: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveRiderAgent IL_0104: br => Label13 IL_0109: Label12 IL_0109: ldc.i4.1 IL_010A: Label13 IL_010A: stloc.s 10 (System.Boolean) IL_010C: ldarg.1 IL_010D: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0112: stloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0114: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0119: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel TaleWorlds.MountAndBlade.MissionGameModels::get_BattleBannerBearersModel() IL_011E: ldloc.s 11 (TaleWorlds.MountAndBlade.Formation) IL_0120: callvirt TaleWorlds.Core.BannerComponent TaleWorlds.MountAndBlade.ComponentInterfaces.BattleBannerBearersModel::GetActiveBanner(TaleWorlds.MountAndBlade.Formation formation) IL_0125: stloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0127: ldarg.1 IL_0128: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::VictimMainHandWeapon IL_012D: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_012F: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: stloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0138: ldarg.2 IL_0139: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_013E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0140: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0142: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0147: brtrue => Label14 IL_014C: ldarg.2 IL_014D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0152: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0154: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0156: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_015B: br => Label15 IL_0160: Label14 IL_0160: ldc.i4.1 IL_0161: Label15 IL_0161: stloc.s 14 (System.Boolean) IL_0163: ldc.r4 0 IL_0168: stloc.s 15 (System.Single) IL_016A: ldarg.3 IL_016B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0170: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0172: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0174: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0179: stloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_017B: ldc.i4.0 IL_017C: stloc.s 17 (System.Boolean) IL_017E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0180: brfalse => Label16 IL_0185: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0187: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_018C: brfalse => Label17 IL_0191: ldarg.2 IL_0192: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0197: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0199: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_019B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_01A0: brfalse => Label18 IL_01A5: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01A7: brfalse => Label19 IL_01AC: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_01AE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01B3: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_01B8: brfalse => Label20 IL_01BD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Pavise() IL_01C2: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_01C7: ldc.r4 0 IL_01CC: ldc.r4 1 IL_01D1: call static System.Single TaleWorlds.Library.MBMath::ClampFloat(System.Single value, System.Single minValue, System.Single maxValue) IL_01D6: stloc.s 20 (System.Single) IL_01D8: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_01DD: ldloc.s 20 (System.Single) IL_01DF: cgt.un IL_01E1: ldc.i4.0 IL_01E2: ceq IL_01E4: stloc.s 17 (System.Boolean) IL_01E6: Label16 IL_01E6: Label17 IL_01E6: Label18 IL_01E6: Label19 IL_01E6: Label20 IL_01E6: ldloc.s 17 (System.Boolean) IL_01E8: brtrue => Label21 IL_01ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_01EF: ldarg.s 4 IL_01F1: ldc.i4.0 IL_01F2: ldnull IL_01F3: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_01F8: ldloc.3 IL_01F9: brfalse => Label22 IL_01FE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0200: brfalse => Label23 IL_0205: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0207: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_020C: brfalse => Label24 IL_0211: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0213: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0218: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_021D: bne.un => Label25 IL_0222: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_0227: ldloc.3 IL_0228: ldc.i4.1 IL_0229: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_022B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0230: ldloc.s 6 (System.Boolean) IL_0232: brfalse => Label26 IL_0237: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_023C: ldloc.3 IL_023D: ldc.i4.1 IL_023E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0240: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0245: Label26 IL_0245: ldarg.1 IL_0246: ldfld TaleWorlds.MountAndBlade.MissionWeapon TaleWorlds.MountAndBlade.AttackInformation::OffHandItem IL_024B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label27 IL_0259: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_025E: ldloc.3 IL_025F: ldc.i4.1 IL_0260: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0262: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0267: Label27 IL_0267: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0269: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_026E: ldc.i4.6 IL_026F: beq => Label28 IL_0274: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0276: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_027B: ldc.i4.4 IL_027C: bne.un => Label29 IL_0281: Label28 IL_0281: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ToBeBlunt() IL_0286: ldloc.3 IL_0287: ldc.i4.1 IL_0288: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_028A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_028F: Label29 IL_028F: ldloc.s 14 (System.Boolean) IL_0291: brfalse => Label30 IL_0296: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Prestige() IL_029B: ldloc.3 IL_029C: ldc.i4.1 IL_029D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_029F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02A4: Label30 IL_02A4: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_02A9: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_02AB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02AD: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_02B2: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_WayOfTheSword() IL_02B7: ldloc.3 IL_02B8: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_OneHanded() IL_02BD: ldc.i4.0 IL_02BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02C0: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_02C5: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_02CA: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_02CF: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_02D4: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_02D9: br => Label31 IL_02DE: Label25 IL_02DE: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_02E0: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_02E5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_02EA: bne.un => Label32 IL_02EF: ldloc.s 14 (System.Boolean) IL_02F1: brfalse => Label33 IL_02F6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_02FB: ldloc.3 IL_02FC: ldc.i4.1 IL_02FD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_02FF: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0304: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WoodChopper() IL_0309: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_030B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_030D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0312: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0317: ldloc.3 IL_0318: ldc.i4.1 IL_0319: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_031B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0320: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_ShieldBreaker() IL_0325: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0327: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0329: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_032E: Label33 IL_032E: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0330: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0335: ldc.i4.5 IL_0336: beq => Label34 IL_033B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_033D: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0342: ldc.i4.8 IL_0343: bne.un => Label35 IL_0348: Label34 IL_0348: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_034D: ldloc.3 IL_034E: ldc.i4.1 IL_034F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0351: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0356: Label35 IL_0356: ldarg.1 IL_0357: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_035C: brfalse => Label36 IL_0361: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0366: ldloc.3 IL_0367: ldc.i4.1 IL_0368: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_036A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_036F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BeastSlayer() IL_0374: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0376: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0378: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_037D: Label36 IL_037D: ldarg.1 IL_037E: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_0383: ldc.r4 0.5 IL_0388: bge.un => Label37 IL_038D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Berserker() IL_0392: ldloc.3 IL_0393: ldc.i4.1 IL_0394: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0396: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_039B: br => Label38 IL_03A0: Label37 IL_03A0: ldarg.1 IL_03A1: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::AttackerHitPointRate IL_03A6: ldc.r4 0.9 IL_03AB: ble.un => Label39 IL_03B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Confidence() IL_03B5: ldloc.3 IL_03B6: ldc.i4.1 IL_03B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03B9: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03BE: Label38 IL_03BE: Label39 IL_03BE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_BladeMaster() IL_03C3: ldloc.3 IL_03C4: ldc.i4.1 IL_03C5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03C7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03CC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_DashAndSlash() IL_03D1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_03D3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03D5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_03DA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_WayOfTheGreatAxe() IL_03DF: ldloc.3 IL_03E0: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_TwoHanded() IL_03E5: ldc.i4.0 IL_03E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_03E8: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_03ED: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_03F2: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_03F7: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_03FC: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_0401: br => Label40 IL_0406: Label32 IL_0406: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0408: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_040D: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_0412: bne.un => Label41 IL_0417: ldloc.s 6 (System.Boolean) IL_0419: brfalse => Label42 IL_041E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0423: ldloc.3 IL_0424: ldc.i4.1 IL_0425: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0427: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_042C: br => Label43 IL_0431: Label42 IL_0431: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0436: ldloc.3 IL_0437: ldc.i4.1 IL_0438: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_043A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_043F: Label43 IL_043F: ldarg.2 IL_0440: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0445: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0447: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0449: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_044E: ldc.i4.1 IL_044F: bne.un => Label44 IL_0454: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_CleanThrust() IL_0459: ldloc.3 IL_045A: ldc.i4.1 IL_045B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_045D: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0462: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_0467: ldloc.3 IL_0468: ldc.i4.1 IL_0469: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_046B: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0470: Label44 IL_0470: ldarg.1 IL_0471: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0476: brfalse => Label45 IL_047B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0480: ldloc.3 IL_0481: ldc.i4.1 IL_0482: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0484: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0489: ldloc.s 5 (System.Boolean) IL_048B: brfalse => Label46 IL_0490: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SteedKiller() IL_0495: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0497: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0499: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_049E: Label45 IL_049E: Label46 IL_049E: ldarg.1 IL_049F: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_04A4: brfalse => Label47 IL_04A9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Guards() IL_04AE: ldloc.3 IL_04AF: ldc.i4.1 IL_04B0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04B2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04B7: Label47 IL_04B7: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Phalanx() IL_04BC: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_04BE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04C0: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_04C5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_WayOfTheSpear() IL_04CA: ldloc.3 IL_04CB: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Polearm() IL_04D0: ldc.i4.0 IL_04D1: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_04D3: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_04D8: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_04DD: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_04E2: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_04E7: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_04EC: br => Label48 IL_04F1: Label41 IL_04F1: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_04F3: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsShield() IL_04F8: brfalse => Label49 IL_04FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0502: ldloc.3 IL_0503: ldc.i4.1 IL_0504: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0506: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_050B: Label31 IL_050B: Label40 IL_050B: Label48 IL_050B: Label49 IL_050B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_0510: ldloc.3 IL_0511: ldc.i4.1 IL_0512: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0514: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0519: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Powerful() IL_051E: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0520: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0522: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0527: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_ImprovedTools() IL_052C: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_052E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0530: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0535: ldarg.3 IL_0536: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_053B: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053D: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_053F: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0544: brfalse => Label50 IL_0549: ldarg.3 IL_054A: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_054F: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0551: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0553: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0558: callvirt TaleWorlds.Core.ItemTypeEnum TaleWorlds.Core.ItemObject::get_ItemType() IL_055D: ldc.i4.s 10 IL_055F: ceq IL_0561: br => Label51 IL_0566: Label50 IL_0566: ldc.i4.0 IL_0567: Label51 IL_0567: brfalse => Label52 IL_056C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_FlexibleFighter() IL_0571: ldloc.3 IL_0572: ldc.i4.1 IL_0573: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0575: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_057A: Label52 IL_057A: ldloc.s 6 (System.Boolean) IL_057C: brfalse => Label53 IL_0581: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0586: ldloc.3 IL_0587: ldc.i4.1 IL_0588: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_058A: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_058F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_MountedWarrior() IL_0594: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0596: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0598: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_059D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Cavalry() IL_05A2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05A6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05AB: br => Label54 IL_05B0: Label53 IL_05B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_DeadlyPurpose() IL_05B5: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05B9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05BE: ldarg.2 IL_05BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_05C4: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C6: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_05C8: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_05CD: ldc.i4.1 IL_05CE: bne.un => Label55 IL_05D3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SharpenTheTip() IL_05D8: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_05DA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05DC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05E1: Label54 IL_05E1: Label55 IL_05E1: ldloc.1 IL_05E2: brfalse => Label56 IL_05E7: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamage() IL_05EC: ldloc.1 IL_05ED: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_05EF: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_05F4: ldarg.1 IL_05F5: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesVictimHaveMountAgent IL_05FA: brfalse => Label57 IL_05FF: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedMeleeDamageAgainstMountedTroops() IL_0604: ldloc.1 IL_0605: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0607: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_060C: br => Label58 IL_0611: Label24 IL_0611: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0613: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0618: brfalse => Label59 IL_061D: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_061F: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0624: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_0629: bne.un => Label60 IL_062E: ldarg.2 IL_062F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0634: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0636: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0638: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_063D: ldc.i4.m1 IL_063E: beq => Label61 IL_0643: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_BowControl() IL_0648: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_064A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_064C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0651: ldarg.1 IL_0652: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0657: brfalse => Label62 IL_065C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_DeadAim() IL_0661: ldloc.3 IL_0662: ldc.i4.1 IL_0663: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0665: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_066A: Label62 IL_066A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_066F: ldloc.3 IL_0670: ldc.i4.1 IL_0671: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0673: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0678: ldloc.3 IL_0679: callvirt System.Int32 TaleWorlds.CampaignSystem.CharacterObject::get_Tier() IL_067E: ldc.i4.3 IL_067F: blt => Label63 IL_0684: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_StrongBows() IL_0689: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_068B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_068D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0692: Label63 IL_0692: ldarg.1 IL_0693: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0698: brfalse => Label64 IL_069D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_HunterClan() IL_06A2: ldloc.3 IL_06A3: ldc.i4.1 IL_06A4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06A6: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_06AB: Label64 IL_06AB: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_Deadshot() IL_06B0: ldloc.3 IL_06B1: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Bow() IL_06B6: ldc.i4.0 IL_06B7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_06B9: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_06BE: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_06C3: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_06C8: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_06CD: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_06D2: br => Label65 IL_06D7: Label60 IL_06D7: Label61 IL_06D7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_06D9: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_06DE: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_06E3: bne.un => Label66 IL_06E8: ldarg.2 IL_06E9: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_06EE: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F0: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_06F2: call System.SByte TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionBoneIndex() IL_06F7: ldc.i4.m1 IL_06F8: beq => Label67 IL_06FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_TorsionEngines() IL_0702: ldloc.3 IL_0703: ldc.i4.0 IL_0704: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0706: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_070B: ldarg.1 IL_070C: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_0711: brfalse => Label68 IL_0716: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_071B: ldloc.3 IL_071C: ldc.i4.1 IL_071D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_071F: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0724: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Unhorser() IL_0729: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_072B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_072D: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0732: Label68 IL_0732: ldarg.1 IL_0733: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_0738: brfalse => Label69 IL_073D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0742: ldloc.3 IL_0743: ldc.i4.1 IL_0744: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0746: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_074B: Label69 IL_074B: ldloc.s 9 (System.Boolean) IL_074D: brfalse => Label70 IL_0752: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_Sheriff() IL_0757: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0759: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_075B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0760: Label70 IL_0760: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_HammerBolts() IL_0765: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0767: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0769: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_076E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_DreadfulSieger() IL_0773: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0775: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0777: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_077C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_MightyPull() IL_0781: ldloc.3 IL_0782: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0787: ldc.i4.0 IL_0788: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_078A: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_078F: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0794: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_0799: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_079E: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_07A3: br => Label71 IL_07A8: Label66 IL_07A8: Label67 IL_07A8: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07AA: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_07AF: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_07B4: bne.un => Label72 IL_07B9: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongArms() IL_07BE: ldloc.3 IL_07BF: ldc.i4.1 IL_07C0: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07C2: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07C7: ldloc.s 14 (System.Boolean) IL_07C9: brfalse => Label73 IL_07CE: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07D3: ldloc.3 IL_07D4: ldc.i4.1 IL_07D5: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07D7: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07DC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_ShieldBreaker() IL_07E1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_07E3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_07E5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_07EA: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_07EC: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_07F1: ldc.i4.s 19 IL_07F3: bne.un => Label74 IL_07F8: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_07FD: ldloc.3 IL_07FE: ldc.i4.1 IL_07FF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0801: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0806: Label74 IL_0806: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Splinters() IL_080B: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_080D: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_080F: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0814: Label73 IL_0814: ldarg.1 IL_0815: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsVictimAgentMount IL_081A: brfalse => Label75 IL_081F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0824: ldloc.3 IL_0825: ldc.i4.1 IL_0826: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0828: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_082D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Hunter() IL_0832: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0834: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0836: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_083B: Label75 IL_083B: ldloc.s 6 (System.Boolean) IL_083D: brfalse => Label76 IL_0842: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_MountedSkirmisher() IL_0847: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0849: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_084B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0850: Label76 IL_0850: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Impale() IL_0855: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0857: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0859: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_085E: ldloc.s 10 (System.Boolean) IL_0860: brfalse => Label77 IL_0865: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_KnockOff() IL_086A: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_086C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_086E: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0873: Label77 IL_0873: ldarg.1 IL_0874: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentHealth IL_0879: ldarg.1 IL_087A: ldfld System.Single TaleWorlds.MountAndBlade.AttackInformation::VictimAgentMaxHealth IL_087F: ldc.r4 0.5 IL_0884: mul IL_0885: bgt.un => Label78 IL_088A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LastHit() IL_088F: ldloc.3 IL_0890: ldc.i4.1 IL_0891: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0893: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0898: Label78 IL_0898: ldarg.1 IL_0899: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::IsHeadShot IL_089E: brfalse => Label79 IL_08A3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_HeadHunter() IL_08A8: ldloc.3 IL_08A9: ldc.i4.1 IL_08AA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08AC: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08B1: Label79 IL_08B1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_UnstoppableForce() IL_08B6: ldloc.3 IL_08B7: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_08BC: ldc.i4.0 IL_08BD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08BF: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_08C4: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_08C9: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_08CE: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MinSkillRequiredForEpicPerkBonus() IL_08D3: call static System.Void Helpers.PerkHelper::AddEpicPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, TaleWorlds.Core.SkillObject skillType, System.Boolean applyPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses, System.Int32 skillRequired) IL_08D8: Label65 IL_08D8: Label71 IL_08D8: Label72 IL_08D8: ldloc.s 6 (System.Boolean) IL_08DA: brfalse => Label80 IL_08DF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08E4: ldloc.3 IL_08E5: ldc.i4.1 IL_08E6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08E8: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08ED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_HorseArcher() IL_08F2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_08F4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_08F6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_08FB: Label80 IL_08FB: ldloc.1 IL_08FC: brfalse => Label81 IL_0901: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedRangedDamage() IL_0906: ldloc.1 IL_0907: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0909: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_090E: Label56 IL_090E: Label57 IL_090E: Label58 IL_090E: Label59 IL_090E: Label81 IL_090E: ldarg.3 IL_090F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0914: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0916: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0918: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_091D: brfalse => Label82 IL_0922: ldarg.3 IL_0923: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0928: stloc.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092A: ldloca.s 18 (TaleWorlds.MountAndBlade.MissionWeapon) IL_092C: call TaleWorlds.Core.ItemObject TaleWorlds.MountAndBlade.MissionWeapon::get_Item() IL_0931: callvirt System.Boolean TaleWorlds.Core.ItemObject::get_IsCivilian() IL_0936: brfalse => Label83 IL_093B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_Carver() IL_0940: ldloc.3 IL_0941: ldc.i4.1 IL_0942: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0944: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0949: Label23 IL_0949: Label82 IL_0949: Label83 IL_0949: ldarg.2 IL_094A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_094F: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0951: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0953: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0958: brfalse => Label84 IL_095D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0962: ldloc.3 IL_0963: ldc.i4.1 IL_0964: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0966: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_096B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_FullSpeed() IL_0970: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0972: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0974: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0979: ldloc.3 IL_097A: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_097F: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0984: brfalse => Label85 IL_0989: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_098E: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0993: ldloc.2 IL_0994: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0999: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_099E: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_09A3: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_09A8: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel TaleWorlds.CampaignSystem.GameModels::get_CharacterDevelopmentModel() IL_09AD: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.CharacterDevelopmentModel::get_MaxSkillRequiredForEpicPerkBonus() IL_09B2: sub IL_09B3: ldc.i4.0 IL_09B4: call static System.Int32 TaleWorlds.Library.MathF::Max(System.Int32 a, System.Int32 b) IL_09B9: conv.r4 IL_09BA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Riding::get_TheWayOfTheSaddle() IL_09BF: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_09C4: mul IL_09C5: stloc.s 23 (System.Single) IL_09C7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09C9: ldloc.s 23 (System.Single) IL_09CB: ldnull IL_09CC: ldnull IL_09CD: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_09D2: Label85 IL_09D2: ldloc.1 IL_09D3: brfalse => Label86 IL_09D8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_IncreasedChargeDamage() IL_09DD: ldloc.1 IL_09DE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09E0: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09E5: Label84 IL_09E5: Label86 IL_09E5: ldloc.s 5 (System.Boolean) IL_09E7: brfalse => Label87 IL_09EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_HeadBasher() IL_09F1: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_09F3: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_09F5: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_09FA: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_RecklessCharge() IL_09FF: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A01: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A03: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A08: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Pikeman() IL_0A0D: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A0F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A11: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A16: ldloc.s 10 (System.Boolean) IL_0A18: brfalse => Label88 IL_0A1D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Braced() IL_0A22: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A24: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A26: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A2B: Label87 IL_0A2B: Label88 IL_0A2B: ldloc.s 6 (System.Boolean) IL_0A2D: brfalse => Label89 IL_0A32: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Cavalry() IL_0A37: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A39: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A3B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A40: Label89 IL_0A40: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0A42: brtrue => Label90 IL_0A47: ldarg.2 IL_0A48: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A4D: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A4F: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A51: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0A56: brfalse => Label91 IL_0A5B: ldloc.3 IL_0A5C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0A61: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0A66: brfalse => Label92 IL_0A6B: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A6D: ldc.r4 1 IL_0A72: ldnull IL_0A73: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0A78: Label90 IL_0A78: Label91 IL_0A78: Label92 IL_0A78: ldloc.s 14 (System.Boolean) IL_0A7A: brfalse => Label93 IL_0A7F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Engineering::get_WallBreaker() IL_0A84: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0A86: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0A88: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0A8D: Label93 IL_0A8D: ldarg.2 IL_0A8E: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0A93: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A95: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0A97: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_EntityExists() IL_0A9C: brfalse => Label94 IL_0AA1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.TwoHanded::get_Vandal() IL_0AA6: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AA8: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AAA: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AAF: Label94 IL_0AAF: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AB1: brfalse => Label95 IL_0AB6: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Coaching() IL_0ABB: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ABD: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ABF: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AC4: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AC6: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0ACB: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0AD0: brfalse => Label96 IL_0AD5: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_LawKeeper() IL_0ADA: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0ADC: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0ADE: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AE3: Label96 IL_0AE3: ldloc.s 6 (System.Boolean) IL_0AE5: ldloc.s 9 (System.Boolean) IL_0AE7: and IL_0AE8: brfalse => Label97 IL_0AED: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_Gensdarmes() IL_0AF2: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0AF4: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0AF6: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0AFB: Label95 IL_0AFB: Label97 IL_0AFB: ldloc.3 IL_0AFC: callvirt TaleWorlds.CampaignSystem.CultureObject TaleWorlds.CampaignSystem.CharacterObject::get_Culture() IL_0B01: callvirt System.Boolean TaleWorlds.Core.BasicCultureObject::get_IsBandit() IL_0B06: brfalse => Label98 IL_0B0B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Roguery::get_PartnersInCrime() IL_0B10: ldloc.s 4 (TaleWorlds.CampaignSystem.CharacterObject) IL_0B12: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B14: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0B19: Label22 IL_0B19: Label98 IL_0B19: ldc.r4 1 IL_0B1E: stloc.s 22 (System.Single) IL_0B20: call static TaleWorlds.MountAndBlade.Mission TaleWorlds.MountAndBlade.Mission::get_Current() IL_0B25: callvirt System.Boolean TaleWorlds.MountAndBlade.Mission::get_IsSallyOutBattle() IL_0B2A: brfalse => Label99 IL_0B2F: ldarg.1 IL_0B30: ldfld TaleWorlds.MountAndBlade.DestructableComponent TaleWorlds.MountAndBlade.AttackInformation::HitObjectDestructibleComponent IL_0B35: stloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B37: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B39: brfalse => Label100 IL_0B3E: ldloc.s 24 (TaleWorlds.MountAndBlade.DestructableComponent) IL_0B40: callvirt TaleWorlds.Engine.GameEntity TaleWorlds.Engine.ScriptComponentBehavior::get_GameEntity() IL_0B45: callvirt TaleWorlds.MountAndBlade.SiegeWeapon TaleWorlds.Engine.GameEntity::GetFirstScriptOfType() IL_0B4A: ldnull IL_0B4B: cgt.un IL_0B4D: brfalse => Label101 IL_0B52: ldloc.s 22 (System.Single) IL_0B54: ldc.r4 4.5 IL_0B59: mul IL_0B5A: stloc.s 22 (System.Single) IL_0B5C: Label99 IL_0B5C: Label100 IL_0B5C: Label101 IL_0B5C: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B5E: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0B60: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0B65: ldloc.s 22 (System.Single) IL_0B67: mul IL_0B68: ldc.i4.0 IL_0B69: ldnull IL_0B6A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0B6F: ldarg.1 IL_0B70: ldfld System.Boolean TaleWorlds.MountAndBlade.AttackInformation::DoesAttackerHaveMountAgent IL_0B75: brfalse => Label102 IL_0B7A: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B7C: brfalse => Label103 IL_0B81: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0B83: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0B88: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Crossbow() IL_0B8D: ceq IL_0B8F: br => Label104 IL_0B94: Label103 IL_0B94: ldc.i4.0 IL_0B95: Label104 IL_0B95: brtrue => Label105 IL_0B9A: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_0B9F: callvirt TaleWorlds.MountAndBlade.AgentStatCalculateModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentStatCalculateModel() IL_0BA4: ldloc.2 IL_0BA5: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Riding() IL_0BAA: callvirt virtual System.Int32 TaleWorlds.MountAndBlade.AgentStatCalculateModel::GetEffectiveSkill(TaleWorlds.MountAndBlade.Agent agent, TaleWorlds.Core.SkillObject skill) IL_0BAF: stloc.s 25 (System.Int32) IL_0BB1: ldc.r4 -0.01 IL_0BB6: ldc.r4 0 IL_0BBB: call static TaleWorlds.CampaignSystem.SkillEffect TaleWorlds.CampaignSystem.DefaultSkillEffects::get_MountedWeaponDamagePenalty() IL_0BC0: ldloc.s 25 (System.Int32) IL_0BC2: callvirt System.Single TaleWorlds.CampaignSystem.SkillEffect::GetPrimaryValue(System.Int32 skillLevel) IL_0BC7: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0BCC: mul IL_0BCD: stloc.s 26 (System.Single) IL_0BCF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BD1: ldloc.s 26 (System.Single) IL_0BD3: ldnull IL_0BD4: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0BD9: Label102 IL_0BD9: Label105 IL_0BD9: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BDB: brfalse => Label106 IL_0BE0: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE2: brfalse => Label107 IL_0BE7: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0BE9: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsConsumable() IL_0BEE: brfalse => Label108 IL_0BF3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0BF8: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0BFA: ldc.i4.1 IL_0BFB: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0BFD: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C02: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C07: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C09: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C0B: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C10: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C12: callvirt virtual System.Boolean TaleWorlds.Core.BasicCharacterObject::get_IsRanged() IL_0C17: brfalse => Label109 IL_0C1C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Bow::get_SkirmishPhaseMaster() IL_0C21: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C23: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C25: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C2A: Label109 IL_0C2A: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C2C: brfalse => Label110 IL_0C31: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C33: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0C38: ldc.i4.s 16 IL_0C3A: bne.un => Label111 IL_0C3F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C44: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C46: ldc.i4.1 IL_0C47: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C49: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C4E: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Crossbow::get_CounterFire() IL_0C53: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C55: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C57: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C5C: br => Label112 IL_0C61: Label111 IL_0C61: ldloc.s 13 (TaleWorlds.Core.WeaponComponentData) IL_0C63: callvirt TaleWorlds.Core.SkillObject TaleWorlds.Core.WeaponComponentData::get_RelevantSkill() IL_0C68: call static TaleWorlds.Core.SkillObject TaleWorlds.Core.DefaultSkills::get_Throwing() IL_0C6D: bne.un => Label113 IL_0C72: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_Skirmisher() IL_0C77: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0C79: ldc.i4.1 IL_0C7A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C7C: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C81: Label110 IL_0C81: Label112 IL_0C81: Label113 IL_0C81: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C83: brfalse => Label114 IL_0C88: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedRangedAttackDamage() IL_0C8D: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0C8F: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0C91: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0C96: br => Label115 IL_0C9B: Label108 IL_0C9B: ldloc.s 16 (TaleWorlds.Core.WeaponComponentData) IL_0C9D: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_IsMeleeWeapon() IL_0CA2: brfalse => Label116 IL_0CA7: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CA9: brfalse => Label117 IL_0CAE: ldarg.1 IL_0CAF: ldfld TaleWorlds.MountAndBlade.Formation TaleWorlds.MountAndBlade.AttackInformation::VictimFormation IL_0CB4: dup IL_0CB5: brtrue => Label118 IL_0CBA: pop IL_0CBB: ldc.i4.0 IL_0CBC: br => Label119 IL_0CC1: Label118 IL_0CC1: call TaleWorlds.MountAndBlade.ArrangementOrder TaleWorlds.MountAndBlade.Formation::get_ArrangementOrder() IL_0CC6: ldfld TaleWorlds.MountAndBlade.ArrangementOrderEnum TaleWorlds.MountAndBlade.ArrangementOrder::OrderEnum IL_0CCB: ldc.i4.5 IL_0CCC: ceq IL_0CCE: Label119 IL_0CCE: brfalse => Label120 IL_0CD3: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Basher() IL_0CD8: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0CDA: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CDC: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CE1: Label117 IL_0CE1: Label120 IL_0CE1: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CE3: brfalse => Label121 IL_0CE8: call static TaleWorlds.Core.BannerEffect TaleWorlds.Core.DefaultBannerEffects::get_DecreasedMeleeAttackDamage() IL_0CED: ldloc.s 12 (TaleWorlds.Core.BannerComponent) IL_0CEF: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0CF1: call static System.Void Helpers.BannerHelper::AddBannerBonusForBanner(TaleWorlds.Core.BannerEffect bannerEffect, TaleWorlds.Core.BannerComponent bannerComponent, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0CF6: Label107 IL_0CF6: Label114 IL_0CF6: Label115 IL_0CF6: Label116 IL_0CF6: Label121 IL_0CF6: ldloc.s 14 (System.Boolean) IL_0CF8: brfalse => Label122 IL_0CFD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D02: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D04: ldc.i4.1 IL_0D05: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D07: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D0C: ldloc.s 9 (System.Boolean) IL_0D0E: brfalse => Label123 IL_0D13: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_SteelCoreShields() IL_0D18: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D1A: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D1C: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D21: Label123 IL_0D21: ldarg.2 IL_0D22: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D27: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D29: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D2B: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0D30: brfalse => Label124 IL_0D35: ldarg.2 IL_0D36: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D3B: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3D: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D3F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CorrectSideShieldBlock() IL_0D44: brtrue => Label125 IL_0D49: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_ShieldWall() IL_0D4E: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D50: ldc.i4.1 IL_0D51: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D53: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D58: Label122 IL_0D58: Label124 IL_0D58: Label125 IL_0D58: ldarg.2 IL_0D59: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0D5E: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D60: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0D62: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_0D67: brfalse => Label126 IL_0D6C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D71: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D73: ldc.i4.1 IL_0D74: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D76: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D7B: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0D80: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D82: ldc.i4.1 IL_0D83: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D85: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D8A: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D8C: brfalse => Label127 IL_0D91: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_SureFooted() IL_0D96: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0D98: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0D9A: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0D9F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_Braced() IL_0DA4: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DA6: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DA8: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DAD: Label126 IL_0DAD: Label127 IL_0DAD: ldarg.2 IL_0DAE: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0DB3: stloc.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB5: ldloca.s 19 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0DB7: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsFallDamage() IL_0DBC: brfalse => Label128 IL_0DC1: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Athletics::get_StrongLegs() IL_0DC6: ldloc.s 7 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DC8: ldc.i4.1 IL_0DC9: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DCB: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DD0: Label128 IL_0DD0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Tactics::get_EliteReserves() IL_0DD5: ldloc.s 8 (TaleWorlds.CampaignSystem.CharacterObject) IL_0DD7: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DD9: call static System.Void Helpers.PerkHelper::AddPerkBonusFromCaptain(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject captainCharacter, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_0DDE: Label106 IL_0DDE: ldloca.s 21 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0DE0: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0DE5: stloc.s 15 (System.Single) IL_0DE7: Label21 IL_0DE7: ldc.r4 0 IL_0DEC: ldloc.s 15 (System.Single) IL_0DEE: call static System.Single TaleWorlds.Library.MathF::Max(System.Single a, System.Single b) IL_0DF3: // end original IL_0DF3: stloc 27 (System.Single) IL_0DF7: ldarg 1 IL_0DFB: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E00: ldarg 2 IL_0E04: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E09: ldarg 3 IL_0E0D: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E12: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E17: ldloca 27 (System.Single) IL_0E1B: call static System.Void BannerlordCheats.Patches.Combat.DamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E20: ldarg 1 IL_0E24: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E29: ldarg 2 IL_0E2D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E32: ldarg 3 IL_0E36: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E3B: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E40: ldloca 27 (System.Single) IL_0E44: call static System.Void BannerlordCheats.Patches.Combat.DamageTakenPercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E49: ldarg 1 IL_0E4D: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E52: ldarg 2 IL_0E56: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E5B: ldarg 3 IL_0E5F: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E64: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E69: ldloca 27 (System.Single) IL_0E6D: call static System.Void BannerlordCheats.Patches.Combat.EnemyDamagePercentage_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E72: ldarg 1 IL_0E76: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0E7B: ldarg 2 IL_0E7F: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0E84: ldarg 3 IL_0E88: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0E8D: box TaleWorlds.MountAndBlade.MissionWeapon IL_0E92: ldloca 27 (System.Single) IL_0E96: call static System.Void BannerlordCheats.Patches.Combat.NoFriendlyFire_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0E9B: ldarg 1 IL_0E9F: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0EA4: ldarg 2 IL_0EA8: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0EAD: ldarg 3 IL_0EB1: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0EB6: box TaleWorlds.MountAndBlade.MissionWeapon IL_0EBB: ldloca 27 (System.Single) IL_0EBF: call static System.Void BannerlordCheats.Patches.Combat.OneHitKill_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0EC4: ldarg 1 IL_0EC8: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0ECD: ldarg 2 IL_0ED1: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0ED6: ldarg 3 IL_0EDA: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0EDF: box TaleWorlds.MountAndBlade.MissionWeapon IL_0EE4: ldloca 27 (System.Single) IL_0EE8: call static System.Void BannerlordCheats.Patches.Combat.PartyDamageMultiplier_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0EED: ldarg 1 IL_0EF1: ldobj TaleWorlds.MountAndBlade.AttackInformation IL_0EF6: ldarg 2 IL_0EFA: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0EFF: ldarg 3 IL_0F03: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0F08: box TaleWorlds.MountAndBlade.MissionWeapon IL_0F0D: ldloca 27 (System.Single) IL_0F11: call static System.Void BannerlordCheats.Patches.Combat.PartyOneHitKill_Sandbox::CalculateDamage(TaleWorlds.MountAndBlade.AttackInformation attackInformation, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.Core.WeaponComponentData weapon, System.Single& __result) IL_0F16: ldloc 27 (System.Single) IL_0F1A: ret DONE ### Patch: TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::get_CurrentMortalityState() ### Replacement: static TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::TaleWorlds.MountAndBlade.Agent.get_CurrentMortalityState_Patch4(TaleWorlds.MountAndBlade.Agent this) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld TaleWorlds.MountAndBlade.MortalityState TaleWorlds.MountAndBlade.Agent::k__BackingField IL_000F: // end original IL_000F: stloc 0 (System.Int32) IL_0013: ldarga 0 IL_0017: ldloca 0 (System.Int32) IL_001B: call static System.Void BannerlordCheats.Patches.Combat.Invincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_0020: ldarga 0 IL_0024: ldloca 0 (System.Int32) IL_0028: call static System.Void BannerlordCheats.Patches.Combat.PartyHeroesInvincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_002D: ldarga 0 IL_0031: ldloca 0 (System.Int32) IL_0035: call static System.Void BannerlordCheats.Patches.Combat.PartyInvincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_003A: ldarga 0 IL_003E: ldloca 0 (System.Int32) IL_0042: call static System.Void BannerlordCheats.Patches.Combat.PlayerHorseInvincible::Invulnerable(TaleWorlds.MountAndBlade.Agent& __instance, TaleWorlds.MountAndBlade.MortalityState& __result) IL_0047: ldloc 0 (System.Int32) IL_004B: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel::CalculateRenownGain(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Single renownValueOfBattle, System.Single contributionShare) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel::TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel.CalculateRenownGain_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel this, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Single renownValueOfBattle, System.Single contributionShare) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_000C: ldarg.2 IL_000D: ldarg.3 IL_000E: mul IL_000F: ldc.i4.1 IL_0010: ldnull IL_0011: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_0016: ldarg.1 IL_0017: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_001C: brfalse => Label0 IL_0021: ldarg.1 IL_0022: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0027: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LongReach() IL_002C: ldc.i4.1 IL_002D: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_0032: brfalse => Label1 IL_0037: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Throwing::get_LongReach() IL_003C: ldarg.1 IL_003D: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0042: ldc.i4.0 IL_0043: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0045: call static System.Void Helpers.PerkHelper::AddPerkBonusForParty(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& stat) IL_004A: Label1 IL_004A: ldarg.1 IL_004B: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0050: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_PublicSpeaker() IL_0055: ldc.i4.0 IL_0056: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::HasPerk(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, System.Boolean checkSecondaryRole) IL_005B: brfalse => Label2 IL_0060: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0062: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_PublicSpeaker() IL_0067: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_006C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_PublicSpeaker() IL_0071: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0076: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_007B: Label2 IL_007B: ldarg.1 IL_007C: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.PartyBase::get_LeaderHero() IL_0081: brfalse => Label3 IL_0086: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_FamousCommander() IL_008B: ldarg.1 IL_008C: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Party.PartyBase::get_LeaderHero() IL_0091: callvirt TaleWorlds.CampaignSystem.CharacterObject TaleWorlds.CampaignSystem.Hero::get_CharacterObject() IL_0096: ldc.i4.1 IL_0097: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0099: call static System.Void Helpers.PerkHelper::AddPerkBonusForCharacter(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk, TaleWorlds.CampaignSystem.CharacterObject character, System.Boolean isPrimaryBonus, TaleWorlds.CampaignSystem.ExplainedNumber& bonuses) IL_009E: Label3 IL_009E: ldarg.1 IL_009F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_VlandianRenownMercenaryFeat() IL_00A4: call static System.Boolean Helpers.PartyBaseHelper::HasFeat(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject feat) IL_00A9: brfalse => Label4 IL_00AE: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00B0: call static TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject TaleWorlds.CampaignSystem.CharacterDevelopment.DefaultCulturalFeats::get_VlandianRenownMercenaryFeat() IL_00B5: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.FeatObject::get_EffectBonus() IL_00BA: ldstr "str_culture" IL_00BF: ldnull IL_00C0: call static TaleWorlds.Localization.TextObject TaleWorlds.Core.GameTexts::FindText(System.String id, System.String variation) IL_00C5: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_00CA: Label0 IL_00CA: Label4 IL_00CA: ldloc.0 IL_00CB: // end original IL_00CB: stloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00CF: ldarg 1 IL_00D3: ldarg 2 IL_00D7: ldarg 3 IL_00DB: ldloca 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00DF: call static System.Void BannerlordCheats.Patches.Combat.RenownRewardMultiplierBattle::CalculateRenownGain(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Single renownValueOfBattle, System.Single contributionShare, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_00E4: ldloc 1 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00E8: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTournamentModel::GetRenownReward(TaleWorlds.CampaignSystem.Hero winner, TaleWorlds.CampaignSystem.Settlements.Town town) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultTournamentModel::TaleWorlds.CampaignSystem.GameComponents.DefaultTournamentModel.GetRenownReward_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultTournamentModel this, TaleWorlds.CampaignSystem.Hero winner, TaleWorlds.CampaignSystem.Settlements.Town town) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldc.r4 3 IL_000E: stloc.0 IL_000F: ldarg.1 IL_0010: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_0015: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_001A: brfalse => Label0 IL_001F: ldloc.0 IL_0020: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.OneHanded::get_Duelist() IL_0025: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_002A: mul IL_002B: stloc.0 IL_002C: Label0 IL_002C: ldarg.1 IL_002D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_SelfPromoter() IL_0032: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0037: brfalse => Label1 IL_003C: ldloc.0 IL_003D: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_SelfPromoter() IL_0042: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0047: add IL_0048: stloc.0 IL_0049: Label1 IL_0049: ldloc.0 IL_004A: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_004F: // end original IL_004F: stloc 1 (System.Int32) IL_0053: ldarg 1 IL_0057: ldarg 2 IL_005B: ldloca 1 (System.Int32) IL_005F: call static System.Void BannerlordCheats.Patches.Combat.RenownRewardMultiplierTournament::GetRenownReward(TaleWorlds.CampaignSystem.Hero winner, TaleWorlds.CampaignSystem.Settlements.Town town, System.Int32& __result) IL_0064: ldloc 1 (System.Int32) IL_0068: ret DONE ### Patch: virtual TaleWorlds.MountAndBlade.MeleeCollisionReaction SandBox.GameComponents.SandboxAgentApplyDamageModel::DecidePassiveAttackCollisionReaction(TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, System.Boolean isFatalHit) ### Replacement: static TaleWorlds.MountAndBlade.MeleeCollisionReaction SandBox.GameComponents.SandboxAgentApplyDamageModel::SandBox.GameComponents.SandboxAgentApplyDamageModel.DecidePassiveAttackCollisionReaction_Patch1(SandBox.GameComponents.SandboxAgentApplyDamageModel this, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, System.Boolean isFatalHit) IL_0000: Local var 0: TaleWorlds.MountAndBlade.MeleeCollisionReaction IL_0000: Local var 1: System.Single IL_0000: Local var 2: TaleWorlds.CampaignSystem.CharacterObject IL_0000: Local var 3: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Int32) IL_0009: // start original IL_0009: ldc.i4.3 IL_000A: stloc.0 IL_000B: ldarg.3 IL_000C: brfalse => Label0 IL_0011: ldarg.1 IL_0012: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_HasMount() IL_0017: brfalse => Label1 IL_001C: ldc.r4 0.05 IL_0021: stloc.1 IL_0022: ldarg.1 IL_0023: callvirt virtual TaleWorlds.Core.BasicCharacterObject TaleWorlds.MountAndBlade.Agent::get_Character() IL_0028: isinst TaleWorlds.CampaignSystem.CharacterObject IL_002D: dup IL_002E: stloc.2 IL_002F: brfalse => Label2 IL_0034: ldloc.2 IL_0035: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Skewer() IL_003A: callvirt System.Boolean TaleWorlds.CampaignSystem.CharacterObject::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_003F: brfalse => Label3 IL_0044: ldloc.1 IL_0045: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Polearm::get_Skewer() IL_004A: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_004F: add IL_0050: stloc.1 IL_0051: Label2 IL_0051: Label3 IL_0051: call static System.Single TaleWorlds.Core.MBRandom::get_RandomFloat() IL_0056: ldloc.1 IL_0057: bge.un => Label4 IL_005C: ldc.i4.0 IL_005D: stloc.0 IL_005E: Label0 IL_005E: Label1 IL_005E: Label4 IL_005E: ldloc.0 IL_005F: // end original IL_005F: stloc 3 (System.Int32) IL_0063: ldarg 1 IL_0067: ldarg 2 IL_006B: ldarg 3 IL_006F: ldloca 3 (System.Int32) IL_0073: call static System.Void BannerlordCheats.Patches.Combat.SliceThroughEveryonePassive_Sandbox::DecidePassiveAttackCollisionReaction(TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, System.Boolean isFatalHit, TaleWorlds.MountAndBlade.MeleeCollisionReaction& __result) IL_0078: ldloc 3 (System.Int32) IL_007C: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Mission::DecideWeaponCollisionReaction(TaleWorlds.MountAndBlade.Blow registeredBlow, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon, System.Boolean isFatalHit, System.Boolean isShruggedOff, TaleWorlds.MountAndBlade.MeleeCollisionReaction& colReaction) ### Replacement: static System.Void TaleWorlds.MountAndBlade.Mission::TaleWorlds.MountAndBlade.Mission.DecideWeaponCollisionReaction_Patch1(TaleWorlds.MountAndBlade.Mission this, TaleWorlds.MountAndBlade.Blow registeredBlow, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon, System.Boolean isFatalHit, System.Boolean isShruggedOff, TaleWorlds.MountAndBlade.MeleeCollisionReaction& colReaction) IL_0000: Local var 0: TaleWorlds.Core.WeaponClass IL_0000: Local var 1: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 2: TaleWorlds.Engine.PhysicsMaterial IL_0000: Local var 3: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: // start original IL_0000: ldarg.2 IL_0001: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0006: stloc.1 IL_0007: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0009: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsColliderAgent() IL_000E: brfalse => Label0 IL_0013: ldarg.2 IL_0014: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0019: stloc.1 IL_001A: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_001C: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_0021: ldc.i4.1 IL_0022: bne.un => Label1 IL_0027: ldarg.2 IL_0028: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_002D: stloc.1 IL_002E: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0030: call TaleWorlds.MountAndBlade.CombatHitResultFlags TaleWorlds.MountAndBlade.AttackCollisionData::get_CollisionHitResultFlags() IL_0035: ldc.i4.1 IL_0036: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.MountAndBlade.CombatHitResultFlags p1, TaleWorlds.MountAndBlade.CombatHitResultFlags p2) IL_003B: brfalse => Label2 IL_0040: ldarg.s 8 IL_0042: ldc.i4.4 IL_0043: stind.i4 IL_0044: br => Label41 IL_0049: Label0 IL_0049: Label1 IL_0049: Label2 IL_0049: ldarg.2 IL_004A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_004F: stloc.1 IL_0050: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0052: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsColliderAgent() IL_0057: brtrue => Label3 IL_005C: ldarg.2 IL_005D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0062: stloc.1 IL_0063: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0065: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_PhysicsMaterialIndex() IL_006A: ldc.i4.m1 IL_006B: beq => Label4 IL_0070: ldarg.2 IL_0071: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0076: stloc.1 IL_0077: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0079: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_PhysicsMaterialIndex() IL_007E: call static TaleWorlds.Engine.PhysicsMaterial TaleWorlds.Engine.PhysicsMaterial::GetFromIndex(System.Int32 index) IL_0083: stloc.2 IL_0084: ldloca.s 2 (TaleWorlds.Engine.PhysicsMaterial) IL_0086: call TaleWorlds.Engine.PhysicsMaterialFlags TaleWorlds.Engine.PhysicsMaterial::GetFlags() IL_008B: ldc.i4.8 IL_008C: call static System.Boolean TaleWorlds.Library.Extensions::HasAnyFlag(TaleWorlds.Engine.PhysicsMaterialFlags p1, TaleWorlds.Engine.PhysicsMaterialFlags p2) IL_0091: brfalse => Label5 IL_0096: ldarg.s 8 IL_0098: ldc.i4.0 IL_0099: stind.i4 IL_009A: br => Label42 IL_009F: Label3 IL_009F: Label4 IL_009F: Label5 IL_009F: ldarg.2 IL_00A0: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_00A5: stloc.1 IL_00A6: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_00A8: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsColliderAgent() IL_00AD: brfalse => Label6 IL_00B2: ldarg.1 IL_00B3: ldfld System.Int32 TaleWorlds.MountAndBlade.Blow::InflictedDamage IL_00B8: ldc.i4.0 IL_00B9: bgt => Label7 IL_00BE: Label6 IL_00BE: ldarg.s 8 IL_00C0: ldc.i4.3 IL_00C1: stind.i4 IL_00C2: br => Label43 IL_00C7: Label7 IL_00C7: ldarg.2 IL_00C8: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_00CD: stloc.1 IL_00CE: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_00D0: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_StrikeType() IL_00D5: ldc.i4.1 IL_00D6: bne.un => Label8 IL_00DB: ldarg.3 IL_00DC: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsDoingPassiveAttack() IL_00E1: brfalse => Label9 IL_00E6: ldarg.s 8 IL_00E8: call static TaleWorlds.MountAndBlade.MissionGameModels TaleWorlds.MountAndBlade.MissionGameModels::get_Current() IL_00ED: callvirt TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel TaleWorlds.MountAndBlade.MissionGameModels::get_AgentApplyDamageModel() IL_00F2: ldarg.3 IL_00F3: ldarg.s 4 IL_00F5: ldarg.s 6 IL_00F7: callvirt abstract virtual TaleWorlds.MountAndBlade.MeleeCollisionReaction TaleWorlds.MountAndBlade.ComponentInterfaces.AgentApplyDamageModel::DecidePassiveAttackCollisionReaction(TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, System.Boolean isFatalHit) IL_00FC: stind.i4 IL_00FD: br => Label44 IL_0102: Label8 IL_0102: Label9 IL_0102: ldarg.0 IL_0103: ldarg.2 IL_0104: ldarg.3 IL_0105: ldarg.s 5 IL_0107: call System.Boolean TaleWorlds.MountAndBlade.Mission::HitWithAnotherBone(TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon) IL_010C: brfalse => Label10 IL_0111: ldarg.s 8 IL_0113: ldc.i4.3 IL_0114: stind.i4 IL_0115: br => Label45 IL_011A: Label10 IL_011A: ldarg.s 5 IL_011C: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0121: stloc.3 IL_0122: ldloca.s 3 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0124: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0129: brfalse => Label11 IL_012E: ldc.i4.0 IL_012F: br => Label12 IL_0134: Label11 IL_0134: ldarg.s 5 IL_0136: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_013B: stloc.3 IL_013C: ldloca.s 3 (TaleWorlds.MountAndBlade.MissionWeapon) IL_013E: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0143: callvirt TaleWorlds.Core.WeaponClass TaleWorlds.Core.WeaponComponentData::get_WeaponClass() IL_0148: Label12 IL_0148: stloc.0 IL_0149: ldarg.s 5 IL_014B: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0150: stloc.3 IL_0151: ldloca.s 3 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0153: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0158: brtrue => Label13 IL_015D: ldarg.s 6 IL_015F: ldc.i4.0 IL_0160: ceq IL_0162: br => Label14 IL_0167: Label13 IL_0167: ldc.i4.0 IL_0168: Label14 IL_0168: ldarg.s 7 IL_016A: and IL_016B: brtrue => Label15 IL_0170: ldarg.s 5 IL_0172: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0177: stloc.3 IL_0178: ldloca.s 3 (TaleWorlds.MountAndBlade.MissionWeapon) IL_017A: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_017F: brfalse => Label16 IL_0184: ldarg.s 4 IL_0186: brfalse => Label17 IL_018B: ldarg.s 4 IL_018D: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsHuman() IL_0192: brfalse => Label18 IL_0197: ldarg.2 IL_0198: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_019D: stloc.1 IL_019E: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_01A0: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_01A5: brtrue => Label19 IL_01AA: ldarg.2 IL_01AB: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_01B0: stloc.1 IL_01B1: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_01B3: call TaleWorlds.MountAndBlade.BoneBodyPartType TaleWorlds.MountAndBlade.AttackCollisionData::get_VictimHitBodyPart() IL_01B8: ldc.i4.2 IL_01B9: beq => Label20 IL_01BE: ldarg.2 IL_01BF: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_01C4: stloc.1 IL_01C5: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_01C7: call TaleWorlds.MountAndBlade.BoneBodyPartType TaleWorlds.MountAndBlade.AttackCollisionData::get_VictimHitBodyPart() IL_01CC: ldc.i4.4 IL_01CD: beq => Label21 IL_01D2: ldarg.2 IL_01D3: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_01D8: stloc.1 IL_01D9: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_01DB: call TaleWorlds.MountAndBlade.BoneBodyPartType TaleWorlds.MountAndBlade.AttackCollisionData::get_VictimHitBodyPart() IL_01E0: ldc.i4.5 IL_01E1: beq => Label22 IL_01E6: ldarg.2 IL_01E7: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_01EC: stloc.1 IL_01ED: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_01EF: call TaleWorlds.MountAndBlade.BoneBodyPartType TaleWorlds.MountAndBlade.AttackCollisionData::get_VictimHitBodyPart() IL_01F4: ldc.i4.3 IL_01F5: beq => Label23 IL_01FA: ldarg.2 IL_01FB: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0200: stloc.1 IL_0201: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0203: call TaleWorlds.MountAndBlade.BoneBodyPartType TaleWorlds.MountAndBlade.AttackCollisionData::get_VictimHitBodyPart() IL_0208: ldc.i4.8 IL_0209: bne.un => Label24 IL_020E: Label15 IL_020E: Label20 IL_020E: Label21 IL_020E: Label22 IL_020E: Label23 IL_020E: ldarg.s 8 IL_0210: ldc.i4.3 IL_0211: stind.i4 IL_0212: br => Label25 IL_0217: Label16 IL_0217: Label17 IL_0217: Label18 IL_0217: Label19 IL_0217: Label24 IL_0217: ldloc.0 IL_0218: ldc.i4.4 IL_0219: beq => Label26 IL_021E: ldloc.0 IL_021F: ldc.i4.5 IL_0220: bne.un => Label27 IL_0225: Label26 IL_0225: ldarg.s 6 IL_0227: brtrue => Label28 IL_022C: ldarg.2 IL_022D: ldfld System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::InflictedDamage IL_0232: conv.r4 IL_0233: ldarg.s 4 IL_0235: callvirt System.Single TaleWorlds.MountAndBlade.Agent::get_HealthLimit() IL_023A: ldc.r4 0.5 IL_023F: mul IL_0240: blt => Label29 IL_0245: Label27 IL_0245: Label28 IL_0245: ldarg.s 5 IL_0247: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_024C: stloc.3 IL_024D: ldloca.s 3 (TaleWorlds.MountAndBlade.MissionWeapon) IL_024F: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0254: brfalse => Label30 IL_0259: ldarg.2 IL_025A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_025F: stloc.1 IL_0260: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0262: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsAlternativeAttack() IL_0267: brtrue => Label31 IL_026C: ldarg.2 IL_026D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0272: stloc.1 IL_0273: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0275: call TaleWorlds.MountAndBlade.UsageDirection TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackDirection() IL_027A: brfalse => Label32 IL_027F: Label30 IL_027F: Label31 IL_027F: ldarg.2 IL_0280: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0285: stloc.1 IL_0286: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0288: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_ThrustTipHit() IL_028D: brfalse => Label33 IL_0292: ldarg.2 IL_0293: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0298: stloc.1 IL_0299: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_029B: call System.Int32 TaleWorlds.MountAndBlade.AttackCollisionData::get_DamageType() IL_02A0: ldc.i4.1 IL_02A1: bne.un => Label34 IL_02A6: ldarg.s 5 IL_02A8: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_02AD: stloc.3 IL_02AE: ldloca.s 3 (TaleWorlds.MountAndBlade.MissionWeapon) IL_02B0: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_02B5: brtrue => Label35 IL_02BA: ldarg.s 4 IL_02BC: ldarg.2 IL_02BD: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_02C2: stloc.1 IL_02C3: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_02C5: call TaleWorlds.MountAndBlade.BoneBodyPartType TaleWorlds.MountAndBlade.AttackCollisionData::get_VictimHitBodyPart() IL_02CA: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::CanThrustAttackStickToBone(TaleWorlds.MountAndBlade.BoneBodyPartType bodyPart) IL_02CF: brfalse => Label36 IL_02D4: Label29 IL_02D4: Label32 IL_02D4: ldarg.s 8 IL_02D6: ldc.i4.2 IL_02D7: stind.i4 IL_02D8: br => Label37 IL_02DD: Label33 IL_02DD: Label34 IL_02DD: Label35 IL_02DD: Label36 IL_02DD: ldarg.s 8 IL_02DF: ldc.i4.0 IL_02E0: stind.i4 IL_02E1: Label25 IL_02E1: Label37 IL_02E1: ldarg.2 IL_02E2: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_02E7: stloc.1 IL_02E8: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_02EA: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_02EF: brtrue => Label38 IL_02F4: ldarg.2 IL_02F5: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_02FA: stloc.1 IL_02FB: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_02FD: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_0302: brfalse => Label39 IL_0307: Label38 IL_0307: ldarg.s 8 IL_0309: ldind.i4 IL_030A: brtrue => Label40 IL_030F: ldarg.s 8 IL_0311: ldc.i4.3 IL_0312: stind.i4 IL_0313: // end original IL_0313: Label39 IL_0313: Label40 IL_0313: Label41 IL_0313: Label42 IL_0313: Label43 IL_0313: Label44 IL_0313: Label45 IL_0313: ldarg 1 IL_0317: ldarg 2 IL_031B: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_0320: ldarg 3 IL_0324: ldarg 4 IL_0328: ldarg 5 IL_032C: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_0331: ldarg 6 IL_0335: ldarg 7 IL_0339: ldarg 8 IL_033D: call static System.Void BannerlordCheats.Patches.Combat.SliceThroughEveryoneWeapon::DecideWeaponCollisionReaction(TaleWorlds.MountAndBlade.Blow registeredBlow, TaleWorlds.MountAndBlade.AttackCollisionData collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent defender, TaleWorlds.MountAndBlade.MissionWeapon attackerWeapon, System.Boolean isFatalHit, System.Boolean isShruggedOff, TaleWorlds.MountAndBlade.MeleeCollisionReaction& colReaction) IL_0342: ret DONE ### Patch: System.Void TaleWorlds.MountAndBlade.Mission::UpdateMomentumRemaining(System.Single& momentumRemaining, TaleWorlds.MountAndBlade.Blow b, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent victim, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon, System.Boolean isCrushThrough) ### Replacement: static System.Void TaleWorlds.MountAndBlade.Mission::TaleWorlds.MountAndBlade.Mission.UpdateMomentumRemaining_Patch1(TaleWorlds.MountAndBlade.Mission this, System.Single& momentumRemaining, TaleWorlds.MountAndBlade.Blow b, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent victim, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon, System.Boolean isCrushThrough) IL_0000: Local var 0: System.Single IL_0000: Local var 1: TaleWorlds.MountAndBlade.AttackCollisionData IL_0000: Local var 2: TaleWorlds.MountAndBlade.MissionWeapon IL_0000: Local var 3: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 3 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 3 (System.Boolean) IL_000E: ldloc 3 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarg 1 IL_001B: ldobj System.Single IL_0020: ldarg 2 IL_0024: ldarg 3 IL_0028: ldarg 4 IL_002C: ldarg 5 IL_0030: ldarg 6 IL_0034: ldarg 7 IL_0038: call static System.Boolean BannerlordCheats.Patches.Combat.SliceThroughEveryoneWeaponMomentum::UpdateMomentumRemaining(System.Single momentumRemaining, TaleWorlds.MountAndBlade.Blow b, TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.Agent victim, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon, System.Boolean isCrushThrough) IL_003D: stloc 3 (System.Boolean) IL_0041: Label1 IL_0041: nop IL_0042: ldloc 3 (System.Boolean) IL_0046: brfalse => Label0 IL_004B: // start original IL_004B: ldarg.1 IL_004C: ldind.r4 IL_004D: stloc.0 IL_004E: ldarg.1 IL_004F: ldc.r4 0 IL_0054: stind.r4 IL_0055: ldarg.s 7 IL_0057: brfalse => Label2 IL_005C: ldarg.1 IL_005D: ldloc.0 IL_005E: ldc.r4 0.3 IL_0063: mul IL_0064: stind.r4 IL_0065: br => Label16 IL_006A: Label2 IL_006A: ldarg.2 IL_006B: ldfld System.Int32 TaleWorlds.MountAndBlade.Blow::InflictedDamage IL_0070: ldc.i4.0 IL_0071: ble => Label3 IL_0076: ldarg.3 IL_0077: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_007C: stloc.1 IL_007D: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_007F: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_AttackBlockedWithShield() IL_0084: brtrue => Label4 IL_0089: ldarg.3 IL_008A: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_008F: stloc.1 IL_0090: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_0092: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_CollidedWithShieldOnBack() IL_0097: brtrue => Label5 IL_009C: ldarg.3 IL_009D: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_00A2: stloc.1 IL_00A3: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_00A5: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsColliderAgent() IL_00AA: brfalse => Label6 IL_00AF: ldarg.3 IL_00B0: ldobj TaleWorlds.MountAndBlade.AttackCollisionData IL_00B5: stloc.1 IL_00B6: ldloca.s 1 (TaleWorlds.MountAndBlade.AttackCollisionData) IL_00B8: call System.Boolean TaleWorlds.MountAndBlade.AttackCollisionData::get_IsHorseCharge() IL_00BD: brtrue => Label7 IL_00C2: ldarg.s 4 IL_00C4: brfalse => Label8 IL_00C9: ldarg.s 4 IL_00CB: callvirt System.Boolean TaleWorlds.MountAndBlade.Agent::get_IsDoingPassiveAttack() IL_00D0: brfalse => Label9 IL_00D5: ldarg.1 IL_00D6: ldloc.0 IL_00D7: ldc.r4 0.5 IL_00DC: mul IL_00DD: stind.r4 IL_00DE: br => Label17 IL_00E3: Label8 IL_00E3: Label9 IL_00E3: ldarg.0 IL_00E4: ldarg.3 IL_00E5: ldarg.s 4 IL_00E7: ldarg.s 6 IL_00E9: call System.Boolean TaleWorlds.MountAndBlade.Mission::HitWithAnotherBone(TaleWorlds.MountAndBlade.AttackCollisionData& collisionData, TaleWorlds.MountAndBlade.Agent attacker, TaleWorlds.MountAndBlade.MissionWeapon& attackerWeapon) IL_00EE: brtrue => Label10 IL_00F3: ldarg.s 6 IL_00F5: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_00FA: stloc.2 IL_00FB: ldloca.s 2 (TaleWorlds.MountAndBlade.MissionWeapon) IL_00FD: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0102: brtrue => Label11 IL_0107: ldarg.2 IL_0108: ldfld TaleWorlds.Core.StrikeType TaleWorlds.MountAndBlade.Blow::StrikeType IL_010D: ldc.i4.1 IL_010E: beq => Label12 IL_0113: ldarg.s 6 IL_0115: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_011A: stloc.2 IL_011B: ldloca.s 2 (TaleWorlds.MountAndBlade.MissionWeapon) IL_011D: call System.Boolean TaleWorlds.MountAndBlade.MissionWeapon::get_IsEmpty() IL_0122: brtrue => Label13 IL_0127: ldarg.s 6 IL_0129: ldobj TaleWorlds.MountAndBlade.MissionWeapon IL_012E: stloc.2 IL_012F: ldloca.s 2 (TaleWorlds.MountAndBlade.MissionWeapon) IL_0131: call TaleWorlds.Core.WeaponComponentData TaleWorlds.MountAndBlade.MissionWeapon::get_CurrentUsageItem() IL_0136: callvirt System.Boolean TaleWorlds.Core.WeaponComponentData::get_CanHitMultipleTargets() IL_013B: brfalse => Label14 IL_0140: ldarg.1 IL_0141: ldloc.0 IL_0142: ldc.r4 1 IL_0147: ldarg.2 IL_0148: ldfld System.Single TaleWorlds.MountAndBlade.Blow::AbsorbedByArmor IL_014D: ldarg.2 IL_014E: ldfld System.Int32 TaleWorlds.MountAndBlade.Blow::InflictedDamage IL_0153: conv.r4 IL_0154: div IL_0155: sub IL_0156: mul IL_0157: stind.r4 IL_0158: ldarg.1 IL_0159: ldarg.1 IL_015A: ldind.r4 IL_015B: ldc.r4 0.5 IL_0160: mul IL_0161: stind.r4 IL_0162: ldarg.1 IL_0163: ldind.r4 IL_0164: ldc.r4 0.25 IL_0169: bge.un => Label15 IL_016E: ldarg.1 IL_016F: ldc.r4 0 IL_0174: stind.r4 IL_0175: // end original IL_0175: Label3 IL_0175: Label4 IL_0175: Label5 IL_0175: Label6 IL_0175: Label7 IL_0175: Label10 IL_0175: Label11 IL_0175: Label12 IL_0175: Label13 IL_0175: Label14 IL_0175: Label15 IL_0175: Label16 IL_0175: Label17 IL_0175: Label0 IL_0175: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel::GetPartyLimitForTier(TaleWorlds.CampaignSystem.Clan clan, System.Int32 clanTierToCheck) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel::TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel.GetPartyLimitForTier_Patch0(TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel this, TaleWorlds.CampaignSystem.Clan clan, System.Int32 clanTierToCheck) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: // start original IL_0000: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0002: ldc.r4 0 IL_0007: ldc.i4.0 IL_0008: ldnull IL_0009: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_000E: ldarg.1 IL_000F: callvirt virtual System.Boolean TaleWorlds.CampaignSystem.Clan::get_IsMinorFaction() IL_0014: brtrue => Label0 IL_0019: ldarg.2 IL_001A: ldc.i4.3 IL_001B: bge => Label1 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: ldc.r4 1 IL_0027: ldnull IL_0028: ldnull IL_0029: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_002E: br => Label2 IL_0033: Label1 IL_0033: ldarg.2 IL_0034: ldc.i4.5 IL_0035: bge => Label3 IL_003A: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_003C: ldc.r4 2 IL_0041: ldnull IL_0042: ldnull IL_0043: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_0048: br => Label4 IL_004D: Label3 IL_004D: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004F: ldc.r4 3 IL_0054: ldnull IL_0055: ldnull IL_0056: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_005B: br => Label5 IL_0060: Label0 IL_0060: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0062: ldarg.2 IL_0063: conv.r4 IL_0064: ldc.r4 1 IL_0069: ldc.r4 4 IL_006E: call static System.Single TaleWorlds.Library.MathF::Clamp(System.Single value, System.Single minValue, System.Single maxValue) IL_0073: ldnull IL_0074: ldnull IL_0075: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::Add(System.Single value, TaleWorlds.Localization.TextObject description, TaleWorlds.Localization.TextObject variable) IL_007A: Label2 IL_007A: Label4 IL_007A: Label5 IL_007A: ldarg.0 IL_007B: ldarg.1 IL_007C: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_007E: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel::AddPartyLimitPerkEffects(TaleWorlds.CampaignSystem.Clan clan, TaleWorlds.CampaignSystem.ExplainedNumber& result) IL_0083: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0085: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_008A: call static System.Int32 TaleWorlds.Library.MathF::Round(System.Single f) IL_008F: ldarg.1 IL_0090: call static System.Int32 BannerlordCheats.Patches.ILInjection::GPLFT(TaleWorlds.CampaignSystem.Clan clan) IL_0095: add IL_0096: // end original IL_0096: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::GetPartyMemberSizeLimit(TaleWorlds.CampaignSystem.Party.PartyBase party, System.Boolean includeDescriptions) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel.GetPartyMemberSizeLimit_Patch0(TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel this, TaleWorlds.CampaignSystem.Party.PartyBase party, System.Boolean includeDescriptions) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: // start original IL_0000: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0002: ldc.r4 0 IL_0007: ldarg.2 IL_0008: ldnull IL_0009: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_000E: ldarg.1 IL_000F: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.PartyBase::get_IsMobile() IL_0014: brfalse => Label0 IL_0019: ldarg.1 IL_001A: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_001F: callvirt System.Boolean TaleWorlds.CampaignSystem.Party.MobileParty::get_IsGarrison() IL_0024: brfalse => Label1 IL_0029: ldarg.0 IL_002A: ldarg.1 IL_002B: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_0030: ldarg.2 IL_0031: call TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::CalculateGarrisonPartySizeLimit(TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) IL_0036: stloc.s 0 IL_0038: ldarg.1 IL_0039: ldloca.s 0 IL_003B: call static TaleWorlds.CampaignSystem.ExplainedNumber BannerlordCheats.Patches.ILInjection::GPMSL(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.ExplainedNumber __result) IL_0040: br => Label2 IL_0045: Label1 IL_0045: ldarg.0 IL_0046: ldarg.1 IL_0047: callvirt TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyBase::get_MobileParty() IL_004C: ldarg.2 IL_004D: call TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultPartySizeLimitModel::CalculateMobilePartyMemberSizeLimit(TaleWorlds.CampaignSystem.Party.MobileParty party, System.Boolean includeDescriptions) IL_0052: stloc.s 0 IL_0054: ldarg.1 IL_0055: ldloca.s 0 IL_0057: call static TaleWorlds.CampaignSystem.ExplainedNumber BannerlordCheats.Patches.ILInjection::GPMSL(TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.ExplainedNumber __result) IL_005C: br => Label3 IL_0061: Label0 IL_0061: ldloc.0 IL_0062: // end original IL_0062: Label2 IL_0062: Label3 IL_0062: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel::GetCompanionLimit(TaleWorlds.CampaignSystem.Clan clan) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel::TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel.GetCompanionLimit_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel this, TaleWorlds.CampaignSystem.Clan clan) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarg.1 IL_000B: callvirt System.Int32 TaleWorlds.CampaignSystem.Clan::get_Tier() IL_0010: call System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultClanTierModel::GetCompanionLimitFromTier(System.Int32 clanTier) IL_0015: stloc.0 IL_0016: ldarg.1 IL_0017: callvirt virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Clan::get_Leader() IL_001C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_WePledgeOurSwords() IL_0021: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0026: brfalse => Label0 IL_002B: ldloc.0 IL_002C: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Leadership::get_WePledgeOurSwords() IL_0031: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0036: conv.i4 IL_0037: add IL_0038: stloc.0 IL_0039: Label0 IL_0039: ldarg.1 IL_003A: callvirt virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Clan::get_Leader() IL_003F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Camaraderie() IL_0044: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_0049: brfalse => Label1 IL_004E: ldloc.0 IL_004F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Camaraderie() IL_0054: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_SecondaryBonus() IL_0059: conv.i4 IL_005A: add IL_005B: stloc.0 IL_005C: Label1 IL_005C: ldloc.0 IL_005D: // end original IL_005D: stloc 1 (System.Int32) IL_0061: ldarga 1 IL_0065: ldloca 1 (System.Int32) IL_0069: call static System.Void BannerlordCheats.Patches.Clan.ExtraCompanionLimit::GetCompanionLimit(TaleWorlds.CampaignSystem.Clan& clan, System.Int32& __result) IL_006E: ldloc 1 (System.Int32) IL_0072: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel::get_PregnancyDurationInDays() ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel.get_PregnancyDurationInDays_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel this) IL_0000: Local var 0: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 0 (System.Single) IL_0009: // start original IL_0009: ldc.r4 36 IL_000E: // end original IL_000E: stloc 0 (System.Single) IL_0012: ldloca 0 (System.Single) IL_0016: call static System.Void BannerlordCheats.Patches.Characters.AdjustPregnancyDuration::PregnancyDurationInDays(System.Single& __result) IL_001B: ldloc 0 (System.Single) IL_001F: ret DONE ### Patch: virtual System.Boolean TaleWorlds.CampaignSystem.GameComponents.DefaultMarriageModel::IsCoupleSuitableForMarriage(TaleWorlds.CampaignSystem.Hero firstHero, TaleWorlds.CampaignSystem.Hero secondHero) ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.GameComponents.DefaultMarriageModel::TaleWorlds.CampaignSystem.GameComponents.DefaultMarriageModel.IsCoupleSuitableForMarriage_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultMarriageModel this, TaleWorlds.CampaignSystem.Hero firstHero, TaleWorlds.CampaignSystem.Hero secondHero) IL_0000: Local var 0: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 1: TaleWorlds.CampaignSystem.Hero IL_0000: Local var 2: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 2 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarg.1 IL_000B: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_0010: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.ComponentInterfaces.MarriageModel::IsClanSuitableForMarriage(TaleWorlds.CampaignSystem.Clan clan) IL_0015: brfalse => Label0 IL_001A: ldarg.0 IL_001B: ldarg.2 IL_001C: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_0021: callvirt abstract virtual System.Boolean TaleWorlds.CampaignSystem.ComponentInterfaces.MarriageModel::IsClanSuitableForMarriage(TaleWorlds.CampaignSystem.Clan clan) IL_0026: brfalse => Label1 IL_002B: ldarg.1 IL_002C: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_0031: dup IL_0032: brtrue => Label2 IL_0037: pop IL_0038: ldnull IL_0039: br => Label3 IL_003E: Label2 IL_003E: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Clan::get_Leader() IL_0043: Label3 IL_0043: ldarg.1 IL_0044: bne.un => Label4 IL_0049: ldarg.2 IL_004A: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_004F: dup IL_0050: brtrue => Label5 IL_0055: pop IL_0056: ldnull IL_0057: br => Label6 IL_005C: Label5 IL_005C: call virtual TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Clan::get_Leader() IL_0061: Label6 IL_0061: ldarg.2 IL_0062: beq => Label7 IL_0067: Label4 IL_0067: ldarg.1 IL_0068: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::get_IsFemale() IL_006D: ldarg.2 IL_006E: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::get_IsFemale() IL_0073: beq => Label8 IL_0078: ldarg.0 IL_0079: ldarg.1 IL_007A: ldarg.2 IL_007B: ldc.i4.3 IL_007C: call System.Boolean TaleWorlds.CampaignSystem.GameComponents.DefaultMarriageModel::AreHeroesRelated(TaleWorlds.CampaignSystem.Hero firstHero, TaleWorlds.CampaignSystem.Hero secondHero, System.Int32 ancestorDepth) IL_0081: brfalse => Label9 IL_0086: Label0 IL_0086: Label1 IL_0086: Label7 IL_0086: Label8 IL_0086: ldc.i4.0 IL_0087: br => Label15 IL_008C: Label9 IL_008C: ldarg.1 IL_008D: ldarg.2 IL_008E: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Romance::GetCourtedHeroInOtherClan(TaleWorlds.CampaignSystem.Hero person1, TaleWorlds.CampaignSystem.Hero person2) IL_0093: stloc.0 IL_0094: ldloc.0 IL_0095: brfalse => Label10 IL_009A: ldloc.0 IL_009B: ldarg.2 IL_009C: beq => Label11 IL_00A1: ldc.i4.0 IL_00A2: br => Label16 IL_00A7: Label10 IL_00A7: Label11 IL_00A7: ldarg.2 IL_00A8: ldarg.1 IL_00A9: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Romance::GetCourtedHeroInOtherClan(TaleWorlds.CampaignSystem.Hero person1, TaleWorlds.CampaignSystem.Hero person2) IL_00AE: stloc.1 IL_00AF: ldloc.1 IL_00B0: brfalse => Label12 IL_00B5: ldloc.1 IL_00B6: ldarg.1 IL_00B7: beq => Label13 IL_00BC: ldc.i4.0 IL_00BD: br => Label17 IL_00C2: Label12 IL_00C2: Label13 IL_00C2: ldarg.1 IL_00C3: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanMarry() IL_00C8: brfalse => Label14 IL_00CD: ldarg.2 IL_00CE: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::CanMarry() IL_00D3: br => Label18 IL_00D8: Label14 IL_00D8: ldc.i4.0 IL_00D9: // end original IL_00D9: Label15 IL_00D9: Label16 IL_00D9: Label17 IL_00D9: Label18 IL_00D9: stloc 2 (System.Boolean) IL_00DD: ldarga 1 IL_00E1: ldarga 2 IL_00E5: ldloca 2 (System.Boolean) IL_00E9: call static System.Void BannerlordCheats.Patches.Characters.AllowSameSexMarriage::IsCoupleSuitableForMarriage(TaleWorlds.CampaignSystem.Hero& firstHero, TaleWorlds.CampaignSystem.Hero& secondHero, System.Boolean& __result) IL_00EE: ldloc 2 (System.Boolean) IL_00F2: ret DONE ### Patch: System.Boolean TaleWorlds.CampaignSystem.BarterSystem.BarterManager::IsOfferAcceptable(TaleWorlds.CampaignSystem.BarterSystem.BarterData args, TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.CampaignSystem.Party.PartyBase party) ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.BarterSystem.BarterManager::TaleWorlds.CampaignSystem.BarterSystem.BarterManager.IsOfferAcceptable_Patch1(TaleWorlds.CampaignSystem.BarterSystem.BarterManager this, TaleWorlds.CampaignSystem.BarterSystem.BarterData args, TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.CampaignSystem.Party.PartyBase party) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldarg.2 IL_000B: ldarg.3 IL_000C: ldarg.1 IL_000D: ldfld TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.BarterSystem.BarterData::OffererParty IL_0012: ldarg.1 IL_0013: callvirt System.Collections.Generic.List`1 TaleWorlds.CampaignSystem.BarterSystem.BarterData::GetOfferedBarterables() IL_0018: call System.Single TaleWorlds.CampaignSystem.BarterSystem.BarterManager::GetOfferValue(TaleWorlds.CampaignSystem.Hero selfHero, TaleWorlds.CampaignSystem.Party.PartyBase selfParty, TaleWorlds.CampaignSystem.Party.PartyBase offererParty, System.Collections.Generic.IEnumerable`1 offeredBarters) IL_001D: ldc.r4 -0.01 IL_0022: cgt IL_0024: // end original IL_0024: stloc 0 (System.Boolean) IL_0028: ldarg 1 IL_002C: ldarg 2 IL_0030: ldarg 3 IL_0034: ldarga 0 IL_0038: ldloca 0 (System.Boolean) IL_003C: call static System.Void BannerlordCheats.Patches.Characters.BarterOfferAlwaysAccepted::IsOfferAcceptable(TaleWorlds.CampaignSystem.BarterSystem.BarterData args, TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.CampaignSystem.Party.PartyBase party, TaleWorlds.CampaignSystem.BarterSystem.BarterManager& __instance, System.Boolean& __result) IL_0041: ldloc 0 (System.Boolean) IL_0045: ret DONE ### Patch: virtual System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultPersuasionModel::GetChances(TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs optionArgs, System.Single& successChance, System.Single& critSuccessChance, System.Single& critFailChance, System.Single& failChance, System.Single difficultyMultiplier) ### Replacement: static System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultPersuasionModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPersuasionModel.GetChances_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPersuasionModel this, TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs optionArgs, System.Single& successChance, System.Single& critSuccessChance, System.Single& critFailChance, System.Single& failChance, System.Single difficultyMultiplier) IL_0000: Local var 0: System.Single IL_0000: Local var 1: System.Single IL_0000: Local var 2: TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionArgumentStrength IL_0000: // start original IL_0000: ldarg.0 IL_0001: ldarg.1 IL_0002: ldarg.s 6 IL_0004: call System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultPersuasionModel::GetDefaultSuccessChance(TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs optionArgs, System.Single difficultyMultiplier) IL_0009: stloc.0 IL_000A: ldarg.1 IL_000B: ldfld TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionArgumentStrength TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs::ArgumentStrength IL_0010: stloc.2 IL_0011: ldloc.2 IL_0012: ldc.i4.s -3 IL_0014: sub IL_0015: switch => Labels0,1,2,3,4,5,6 IL_0036: br => Label7 IL_003B: Label0 IL_003B: ldarg.2 IL_003C: ldloc.0 IL_003D: ldc.r4 0.05 IL_0042: mul IL_0043: stind.r4 IL_0044: ldarg.s 4 IL_0046: ldloc.0 IL_0047: ldc.r4 0.15 IL_004C: mul IL_004D: stind.r4 IL_004E: br => Label8 IL_0053: Label1 IL_0053: ldarg.2 IL_0054: ldloc.0 IL_0055: ldc.r4 0.15 IL_005A: mul IL_005B: stind.r4 IL_005C: ldarg.s 4 IL_005E: ldloc.0 IL_005F: ldc.r4 0.2 IL_0064: mul IL_0065: stind.r4 IL_0066: br => Label9 IL_006B: Label2 IL_006B: ldarg.2 IL_006C: ldloc.0 IL_006D: ldc.r4 0.35 IL_0072: mul IL_0073: stind.r4 IL_0074: ldarg.s 4 IL_0076: ldloc.0 IL_0077: ldc.r4 0.15 IL_007C: mul IL_007D: stind.r4 IL_007E: br => Label10 IL_0083: Label4 IL_0083: ldarg.2 IL_0084: ldloc.0 IL_0085: ldc.r4 0.7 IL_008A: mul IL_008B: stind.r4 IL_008C: ldarg.s 4 IL_008E: ldc.r4 0 IL_0093: stind.r4 IL_0094: br => Label11 IL_0099: Label5 IL_0099: ldarg.2 IL_009A: ldloc.0 IL_009B: ldc.r4 0.8 IL_00A0: mul IL_00A1: stind.r4 IL_00A2: ldarg.s 4 IL_00A4: ldc.r4 0 IL_00A9: stind.r4 IL_00AA: br => Label12 IL_00AF: Label6 IL_00AF: ldarg.2 IL_00B0: ldloc.0 IL_00B1: ldc.r4 0.9 IL_00B6: mul IL_00B7: stind.r4 IL_00B8: ldarg.s 4 IL_00BA: ldc.r4 0 IL_00BF: stind.r4 IL_00C0: br => Label13 IL_00C5: Label3 IL_00C5: Label7 IL_00C5: ldarg.2 IL_00C6: ldloc.0 IL_00C7: ldc.r4 0.55 IL_00CC: mul IL_00CD: stind.r4 IL_00CE: ldarg.s 4 IL_00D0: ldloc.0 IL_00D1: ldc.r4 0.15 IL_00D6: mul IL_00D7: stind.r4 IL_00D8: Label8 IL_00D8: Label9 IL_00D8: Label10 IL_00D8: Label11 IL_00D8: Label12 IL_00D8: Label13 IL_00D8: ldarg.0 IL_00D9: ldarg.1 IL_00DA: call System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultPersuasionModel::GetBonusSuccessChance(TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs optionArgs) IL_00DF: stloc.1 IL_00E0: ldarg.2 IL_00E1: ldarg.2 IL_00E2: ldind.r4 IL_00E3: ldloc.1 IL_00E4: mul IL_00E5: ldc.r4 0 IL_00EA: ldc.r4 1 IL_00EF: call static System.Single TaleWorlds.Library.MathF::Clamp(System.Single value, System.Single minValue, System.Single maxValue) IL_00F4: stind.r4 IL_00F5: ldarg.s 4 IL_00F7: ldarg.s 4 IL_00F9: ldind.r4 IL_00FA: ldc.r4 2 IL_00FF: ldloc.1 IL_0100: sub IL_0101: mul IL_0102: ldc.r4 0 IL_0107: ldc.r4 1 IL_010C: call static System.Single TaleWorlds.Library.MathF::Clamp(System.Single value, System.Single minValue, System.Single maxValue) IL_0111: stind.r4 IL_0112: ldarg.3 IL_0113: ldc.r4 0 IL_0118: stind.r4 IL_0119: ldarg.1 IL_011A: ldfld System.Boolean TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs::GivesCriticalSuccess IL_011F: brfalse => Label14 IL_0124: ldarg.3 IL_0125: ldarg.2 IL_0126: ldind.r4 IL_0127: stind.r4 IL_0128: ldarg.2 IL_0129: ldc.r4 0 IL_012E: stind.r4 IL_012F: Label14 IL_012F: ldarg.3 IL_0130: ldind.r4 IL_0131: ldc.r4 0 IL_0136: ble.un => Label15 IL_013B: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0140: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_MeaningfulFavors() IL_0145: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_014A: brfalse => Label16 IL_014F: ldarg.3 IL_0150: ldarg.3 IL_0151: ldind.r4 IL_0152: ldarg.3 IL_0153: ldind.r4 IL_0154: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_MeaningfulFavors() IL_0159: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_015E: mul IL_015F: add IL_0160: ldc.r4 0 IL_0165: ldc.r4 1 IL_016A: call static System.Single TaleWorlds.Library.MathF::Clamp(System.Single value, System.Single minValue, System.Single maxValue) IL_016F: stind.r4 IL_0170: Label15 IL_0170: Label16 IL_0170: ldarg.s 5 IL_0172: ldc.r4 1 IL_0177: ldarg.3 IL_0178: ldind.r4 IL_0179: sub IL_017A: ldarg.2 IL_017B: ldind.r4 IL_017C: sub IL_017D: ldarg.s 4 IL_017F: ldind.r4 IL_0180: sub IL_0181: stind.r4 IL_0182: // end original IL_0182: ldarg 1 IL_0186: ldarg 2 IL_018A: ldarg 3 IL_018E: ldarg 4 IL_0192: ldarg 5 IL_0196: ldarg 6 IL_019A: call static System.Void BannerlordCheats.Patches.Characters.ConversationAlwaysSuccessful::GetChances(TaleWorlds.CampaignSystem.Conversation.Persuasion.PersuasionOptionArgs optionArgs, System.Single& successChance, System.Single& critSuccessChance, System.Single& critFailChance, System.Single& failChance, System.Single difficultyMultiplier) IL_019F: ret DONE ### Patch: static System.Void TaleWorlds.CampaignSystem.Actions.KillCharacterAction::ApplyByOldAge(TaleWorlds.CampaignSystem.Hero victim, System.Boolean showNotification) ### Replacement: static System.Void TaleWorlds.CampaignSystem.Actions.KillCharacterAction::TaleWorlds.CampaignSystem.Actions.KillCharacterAction.ApplyByOldAge_Patch1(TaleWorlds.CampaignSystem.Hero victim, System.Boolean showNotification) IL_0000: Local var 0: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Boolean) IL_0009: ldc.i4.1 IL_000A: stloc 0 (System.Boolean) IL_000E: ldloc 0 (System.Boolean) IL_0012: brfalse => Label1 IL_0017: ldarga 0 IL_001B: ldarga 1 IL_001F: call static System.Boolean BannerlordCheats.Patches.Characters.NeverDieOfOldAge::ApplyByOldAge(TaleWorlds.CampaignSystem.Hero& victim, System.Boolean& showNotification) IL_0024: stloc 0 (System.Boolean) IL_0028: Label1 IL_0028: nop IL_0029: ldloc 0 (System.Boolean) IL_002D: brfalse => Label0 IL_0032: // start original IL_0032: ldarg.0 IL_0033: ldnull IL_0034: ldc.i4.3 IL_0035: ldarg.1 IL_0036: ldc.i4.0 IL_0037: call static System.Void TaleWorlds.CampaignSystem.Actions.KillCharacterAction::ApplyInternal(TaleWorlds.CampaignSystem.Hero victim, TaleWorlds.CampaignSystem.Hero killer, TaleWorlds.CampaignSystem.Actions.KillCharacterActionDetail actionDetail, System.Boolean showNotification, System.Boolean isForced) IL_003C: // end original IL_003C: Label0 IL_003C: ret DONE ### Patch: System.Boolean TaleWorlds.CampaignSystem.BarterSystem.BarterManager::CanPlayerBarterWithHero(TaleWorlds.CampaignSystem.Hero hero) ### Replacement: static System.Boolean TaleWorlds.CampaignSystem.BarterSystem.BarterManager::TaleWorlds.CampaignSystem.BarterSystem.BarterManager.CanPlayerBarterWithHero_Patch1(TaleWorlds.CampaignSystem.BarterSystem.BarterManager this, TaleWorlds.CampaignSystem.Hero hero) IL_0000: Local var 0: TaleWorlds.CampaignSystem.CampaignTime IL_0000: Local var 1: System.Boolean IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Boolean) IL_0009: // start original IL_0009: ldarg.0 IL_000A: ldfld System.Collections.Generic.Dictionary`2 TaleWorlds.CampaignSystem.BarterSystem.BarterManager::_barteredHeroes IL_000F: ldarg.1 IL_0010: ldloca.s 0 (TaleWorlds.CampaignSystem.CampaignTime) IL_0012: callvirt virtual System.Boolean System.Collections.Generic.Dictionary`2::TryGetValue(TaleWorlds.CampaignSystem.Hero key, TaleWorlds.CampaignSystem.CampaignTime& value) IL_0017: brfalse => Label0 IL_001C: ldloca.s 0 (TaleWorlds.CampaignSystem.CampaignTime) IL_001E: call System.Boolean TaleWorlds.CampaignSystem.CampaignTime::get_IsPast() IL_0023: br => Label1 IL_0028: Label0 IL_0028: ldc.i4.1 IL_0029: // end original IL_0029: Label1 IL_0029: stloc 1 (System.Boolean) IL_002D: ldarg 1 IL_0031: ldloca 1 (System.Boolean) IL_0035: call static System.Void BannerlordCheats.Patches.Characters.NoBarterCooldown::CanPlayerBarterWithHero(TaleWorlds.CampaignSystem.Hero hero, System.Boolean& __result) IL_003A: ldloc 1 (System.Boolean) IL_003E: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultRomanceModel::GetAttractionValuePercentage(TaleWorlds.CampaignSystem.Hero potentiallyInterestedCharacter, TaleWorlds.CampaignSystem.Hero heroOfInterest) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultRomanceModel::TaleWorlds.CampaignSystem.GameComponents.DefaultRomanceModel.GetAttractionValuePercentage_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultRomanceModel this, TaleWorlds.CampaignSystem.Hero potentiallyInterestedCharacter, TaleWorlds.CampaignSystem.Hero heroOfInterest) IL_0000: Local var 0: TaleWorlds.Core.StaticBodyProperties IL_0000: Local var 1: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 1 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt TaleWorlds.Core.StaticBodyProperties TaleWorlds.CampaignSystem.Hero::get_StaticBodyProperties() IL_000F: stloc.0 IL_0010: ldloca.s 0 (TaleWorlds.Core.StaticBodyProperties) IL_0012: constrained. TaleWorlds.Core.StaticBodyProperties IL_0018: callvirt virtual System.Int32 System.Object::GetHashCode() IL_001D: ldarg.2 IL_001E: callvirt TaleWorlds.Core.StaticBodyProperties TaleWorlds.CampaignSystem.Hero::get_StaticBodyProperties() IL_0023: stloc.0 IL_0024: ldloca.s 0 (TaleWorlds.Core.StaticBodyProperties) IL_0026: constrained. TaleWorlds.Core.StaticBodyProperties IL_002C: callvirt virtual System.Int32 System.Object::GetHashCode() IL_0031: add IL_0032: ldc.i4.s 100 IL_0034: rem IL_0035: call static System.Int32 TaleWorlds.Library.MathF::Abs(System.Int32 f) IL_003A: // end original IL_003A: stloc 1 (System.Int32) IL_003E: ldarga 1 IL_0042: ldarga 2 IL_0046: ldloca 1 (System.Int32) IL_004A: call static System.Void BannerlordCheats.Patches.Characters.PerfectAttraction::GetAttractionValuePercentage(TaleWorlds.CampaignSystem.Hero& potentiallyInterestedCharacter, TaleWorlds.CampaignSystem.Hero& heroOfInterest, System.Int32& __result) IL_004F: ldloc 1 (System.Int32) IL_0053: ret DONE ### Patch: System.Int32 TaleWorlds.CampaignSystem.Hero::GetRelation(TaleWorlds.CampaignSystem.Hero otherHero) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.Hero::TaleWorlds.CampaignSystem.Hero.GetRelation_Patch1(TaleWorlds.CampaignSystem.Hero this, TaleWorlds.CampaignSystem.Hero otherHero) IL_0000: Local var 0: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 0 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: ldarg.0 IL_000B: bne.un => Label0 IL_0010: ldc.i4.0 IL_0011: br => Label1 IL_0016: Label0 IL_0016: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_001B: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0020: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.DiplomacyModel TaleWorlds.CampaignSystem.GameModels::get_DiplomacyModel() IL_0025: ldarg.0 IL_0026: ldarg.1 IL_0027: callvirt abstract virtual System.Int32 TaleWorlds.CampaignSystem.ComponentInterfaces.DiplomacyModel::GetEffectiveRelation(TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.CampaignSystem.Hero hero1) IL_002C: // end original IL_002C: Label1 IL_002C: stloc 0 (System.Int32) IL_0030: ldarg 1 IL_0034: ldarga 0 IL_0038: ldloca 0 (System.Int32) IL_003C: call static System.Void BannerlordCheats.Patches.Characters.PerfectRelationships::GetRelation(TaleWorlds.CampaignSystem.Hero otherHero, TaleWorlds.CampaignSystem.Hero& __instance, System.Int32& __result) IL_0041: ldloc 0 (System.Int32) IL_0045: ret DONE ### Patch: virtual System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel::GetDailyChanceOfPregnancyForHero(TaleWorlds.CampaignSystem.Hero hero) ### Replacement: static System.Single TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel::TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel.GetDailyChanceOfPregnancyForHero_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel this, TaleWorlds.CampaignSystem.Hero hero) IL_0000: Local var 0: System.Int32 IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Int32 IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Single IL_0000: Local var 5: System.Single IL_0000: Local var 6: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 7: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 7 (System.Single) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt TaleWorlds.Library.MBList`1 TaleWorlds.CampaignSystem.Hero::get_Children() IL_000F: callvirt virtual System.Int32 System.Collections.Generic.List`1::get_Count() IL_0014: ldc.i4.1 IL_0015: add IL_0016: stloc.0 IL_0017: ldc.i4.4 IL_0018: ldc.i4.4 IL_0019: ldarg.1 IL_001A: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_001F: callvirt System.Int32 TaleWorlds.CampaignSystem.Clan::get_Tier() IL_0024: mul IL_0025: add IL_0026: conv.r4 IL_0027: stloc.1 IL_0028: ldarg.1 IL_0029: callvirt TaleWorlds.CampaignSystem.Clan TaleWorlds.CampaignSystem.Hero::get_Clan() IL_002E: callvirt virtual TaleWorlds.Library.MBReadOnlyList`1 TaleWorlds.CampaignSystem.Clan::get_Lords() IL_0033: ldsfld System.Func`2 TaleWorlds.CampaignSystem.GameComponents.<>c::<>9__13_0 IL_0038: dup IL_0039: brtrue => Label0 IL_003E: pop IL_003F: ldsfld TaleWorlds.CampaignSystem.GameComponents.<>c TaleWorlds.CampaignSystem.GameComponents.<>c::<>9 IL_0044: ldftn System.Boolean TaleWorlds.CampaignSystem.GameComponents.<>c::b__13_0(TaleWorlds.CampaignSystem.Hero x) IL_004A: newobj System.Void System.Func`2::.ctor(System.Object object, System.IntPtr method) IL_004F: dup IL_0050: stsfld System.Func`2 TaleWorlds.CampaignSystem.GameComponents.<>c::<>9__13_0 IL_0055: Label0 IL_0055: call static System.Int32 System.Linq.Enumerable::Count(System.Collections.Generic.IEnumerable`1 source, System.Func`2 predicate) IL_005A: stloc.2 IL_005B: ldarg.1 IL_005C: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0061: beq => Label1 IL_0066: ldarg.1 IL_0067: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_Spouse() IL_006C: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_0071: bne.un => Label2 IL_0076: Label1 IL_0076: ldc.r4 1 IL_007B: br => Label3 IL_0080: Label2 IL_0080: ldc.r4 1 IL_0085: ldc.r4 2 IL_008A: ldloc.1 IL_008B: mul IL_008C: ldloc.2 IL_008D: conv.r4 IL_008E: sub IL_008F: ldloc.1 IL_0090: div IL_0091: call static System.Single System.Math::Min(System.Single val1, System.Single val2) IL_0096: Label3 IL_0096: stloc.3 IL_0097: ldc.r4 1.2 IL_009C: ldarg.1 IL_009D: callvirt System.Single TaleWorlds.CampaignSystem.Hero::get_Age() IL_00A2: ldc.r4 18 IL_00A7: sub IL_00A8: ldc.r4 0.04 IL_00AD: mul IL_00AE: sub IL_00AF: ldloc.0 IL_00B0: ldloc.0 IL_00B1: mul IL_00B2: conv.r4 IL_00B3: div IL_00B4: ldc.r4 0.12 IL_00B9: mul IL_00BA: ldloc.3 IL_00BB: mul IL_00BC: stloc.s 4 (System.Single) IL_00BE: ldarg.1 IL_00BF: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_Spouse() IL_00C4: brfalse => Label4 IL_00C9: ldarg.0 IL_00CA: ldarg.1 IL_00CB: call System.Boolean TaleWorlds.CampaignSystem.GameComponents.DefaultPregnancyModel::IsHeroAgeSuitableForPregnancy(TaleWorlds.CampaignSystem.Hero hero) IL_00D0: brtrue => Label5 IL_00D5: Label4 IL_00D5: ldc.r4 0 IL_00DA: br => Label6 IL_00DF: Label5 IL_00DF: ldloc.s 4 (System.Single) IL_00E1: Label6 IL_00E1: stloc.s 5 (System.Single) IL_00E3: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00E5: ldloc.s 5 (System.Single) IL_00E7: ldc.i4.0 IL_00E8: ldnull IL_00E9: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_00EE: ldarg.1 IL_00EF: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Virile() IL_00F4: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_00F9: brtrue => Label7 IL_00FE: ldarg.1 IL_00FF: callvirt TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_Spouse() IL_0104: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Virile() IL_0109: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_010E: brfalse => Label8 IL_0113: Label7 IL_0113: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0115: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Virile() IL_011A: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_011F: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Virile() IL_0124: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0129: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_012E: Label8 IL_012E: ldloca.s 6 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0130: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0135: // end original IL_0135: stloc 7 (System.Single) IL_0139: ldarga 1 IL_013D: ldloca 7 (System.Single) IL_0141: call static System.Void BannerlordCheats.Patches.Characters.PregnancyChanceMultiplier::GetDailyChanceOfPregnancyForHero(TaleWorlds.CampaignSystem.Hero& hero, System.Single& __result) IL_0146: ldloc 7 (System.Single) IL_014A: ret DONE ### Patch: virtual System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel::GetPlayerGainedRelationAmount(TaleWorlds.CampaignSystem.MapEvents.MapEvent mapEvent, TaleWorlds.CampaignSystem.Hero hero) ### Replacement: static System.Int32 TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel::TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel.GetPlayerGainedRelationAmount_Patch1(TaleWorlds.CampaignSystem.GameComponents.DefaultBattleRewardModel this, TaleWorlds.CampaignSystem.MapEvents.MapEvent mapEvent, TaleWorlds.CampaignSystem.Hero hero) IL_0000: Local var 0: TaleWorlds.CampaignSystem.MapEvents.MapEventSide IL_0000: Local var 1: System.Single IL_0000: Local var 2: System.Single IL_0000: Local var 3: System.Single IL_0000: Local var 4: System.Single IL_0000: Local var 5: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 6: System.Int32 IL_0000: ldc.i4 0 IL_0005: stloc 6 (System.Int32) IL_0009: // start original IL_0009: ldarg.1 IL_000A: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.MapEvents.MapEvent::get_AttackerSide() IL_000F: callvirt System.Boolean TaleWorlds.CampaignSystem.MapEvents.MapEventSide::IsMainPartyAmongParties() IL_0014: brtrue => Label0 IL_0019: ldarg.1 IL_001A: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.MapEvents.MapEvent::get_DefenderSide() IL_001F: br => Label1 IL_0024: Label0 IL_0024: ldarg.1 IL_0025: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.MapEvents.MapEvent::get_AttackerSide() IL_002A: Label1 IL_002A: stloc.0 IL_002B: ldloc.0 IL_002C: callvirt System.Single TaleWorlds.CampaignSystem.MapEvents.MapEventSide::GetPlayerPartyContributionRate() IL_0031: stloc.1 IL_0032: ldarg.1 IL_0033: ldfld System.Single[] TaleWorlds.CampaignSystem.MapEvents.MapEvent::StrengthOfSide IL_0038: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.PartyBase::get_MainParty() IL_003D: callvirt virtual TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_Side() IL_0042: ldelem.r4 IL_0043: call static TaleWorlds.CampaignSystem.Encounters.PlayerEncounter TaleWorlds.CampaignSystem.Encounters.PlayerEncounter::get_Current() IL_0048: ldfld System.Single TaleWorlds.CampaignSystem.Encounters.PlayerEncounter::PlayerPartyInitialStrength IL_004D: sub IL_004E: ldarg.1 IL_004F: ldfld System.Single[] TaleWorlds.CampaignSystem.MapEvents.MapEvent::StrengthOfSide IL_0054: call static TaleWorlds.CampaignSystem.Party.PartyBase TaleWorlds.CampaignSystem.Party.PartyBase::get_MainParty() IL_0059: callvirt TaleWorlds.Core.BattleSideEnum TaleWorlds.CampaignSystem.Party.PartyBase::get_OpponentSide() IL_005E: ldelem.r4 IL_005F: ldc.r4 1 IL_0064: add IL_0065: div IL_0066: stloc.2 IL_0067: ldloc.2 IL_0068: ldc.r4 1 IL_006D: blt => Label2 IL_0072: ldloc.2 IL_0073: ldc.r4 3 IL_0078: blt => Label3 IL_007D: ldc.r4 0 IL_0082: br => Label4 IL_0087: Label3 IL_0087: ldc.r4 0.5 IL_008C: ldc.r4 3 IL_0091: ldloc.2 IL_0092: sub IL_0093: mul IL_0094: br => Label5 IL_0099: Label2 IL_0099: ldc.r4 1 IL_009E: ldc.r4 1 IL_00A3: ldloc.2 IL_00A4: sub IL_00A5: add IL_00A6: Label4 IL_00A6: Label5 IL_00A6: stloc.3 IL_00A7: ldarg.1 IL_00A8: ldloc.0 IL_00A9: ldarg.1 IL_00AA: callvirt TaleWorlds.CampaignSystem.MapEvents.MapEventSide TaleWorlds.CampaignSystem.MapEvents.MapEvent::get_AttackerSide() IL_00AF: beq => Label6 IL_00B4: ldc.i4.0 IL_00B5: br => Label7 IL_00BA: Label6 IL_00BA: ldc.i4.1 IL_00BB: Label7 IL_00BB: callvirt System.Single TaleWorlds.CampaignSystem.MapEvents.MapEvent::GetRenownValueAtMapEventEnd(TaleWorlds.Core.BattleSideEnum side) IL_00C0: stloc.s 4 (System.Single) IL_00C2: ldloca.s 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00C4: ldc.r4 0.75 IL_00C9: ldloc.1 IL_00CA: ldc.r4 1.3 IL_00CF: mul IL_00D0: ldloc.3 IL_00D1: ldloc.s 4 (System.Single) IL_00D3: add IL_00D4: mul IL_00D5: ldc.r4 0.67 IL_00DA: call static System.Single TaleWorlds.Library.MathF::Pow(System.Single x, System.Single y) IL_00DF: add IL_00E0: ldc.i4.0 IL_00E1: ldnull IL_00E2: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::.ctor(System.Single baseNumber, System.Boolean includeDescriptions, TaleWorlds.Localization.TextObject baseText) IL_00E7: call static TaleWorlds.CampaignSystem.Hero TaleWorlds.CampaignSystem.Hero::get_MainHero() IL_00EC: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Camaraderie() IL_00F1: callvirt System.Boolean TaleWorlds.CampaignSystem.Hero::GetPerkValue(TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject perk) IL_00F6: brfalse => Label8 IL_00FB: ldloca.s 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_00FD: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Camaraderie() IL_0102: callvirt System.Single TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject::get_PrimaryBonus() IL_0107: call static TaleWorlds.CampaignSystem.CharacterDevelopment.PerkObject TaleWorlds.CampaignSystem.CharacterDevelopment.Charm::get_Camaraderie() IL_010C: callvirt TaleWorlds.Localization.TextObject TaleWorlds.Core.PropertyObject::get_Name() IL_0111: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::AddFactor(System.Single value, TaleWorlds.Localization.TextObject description) IL_0116: Label8 IL_0116: ldloca.s 5 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0118: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_011D: conv.i4 IL_011E: // end original IL_011E: stloc 6 (System.Int32) IL_0122: ldarga 1 IL_0126: ldarga 2 IL_012A: ldloca 6 (System.Int32) IL_012E: call static System.Void BannerlordCheats.Patches.Characters.RelationGainAfterBattleMultiplier::GetPlayerGainedRelationAmount(TaleWorlds.CampaignSystem.MapEvents.MapEvent& mapEvent, TaleWorlds.CampaignSystem.Hero& hero, System.Int32& __result) IL_0133: ldloc 6 (System.Int32) IL_0137: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Army::get_DailyCohesionChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Army::TaleWorlds.CampaignSystem.Army.get_DailyCohesionChange_Patch1(TaleWorlds.CampaignSystem.Army this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.ArmyManagementCalculationModel TaleWorlds.CampaignSystem.GameModels::get_ArmyManagementCalculationModel() IL_0018: ldarg.0 IL_0019: ldc.i4.0 IL_001A: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.ArmyManagementCalculationModel::CalculateDailyCohesionChange(TaleWorlds.CampaignSystem.Army army, System.Boolean includeDescriptions) IL_001F: stloc.0 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0027: // end original IL_0027: stloc 1 (System.Single) IL_002B: ldarga 0 IL_002F: ldloca 1 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Army.ArmyCohesionLossPercentage::CohesionChange(TaleWorlds.CampaignSystem.Army& __instance, System.Single& __result) IL_0038: ldloc 1 (System.Single) IL_003C: ret DONE ### Patch: virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel::CalculateDailyFoodConsumptionf(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption) ### Replacement: static TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel::TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel.CalculateDailyFoodConsumptionf_Patch2(TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel this, TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0004: initobj TaleWorlds.CampaignSystem.ExplainedNumber IL_000A: // start original IL_000A: ldarg.0 IL_000B: ldarg.1 IL_000C: ldarga.s 2 IL_000E: call System.Void TaleWorlds.CampaignSystem.GameComponents.DefaultMobilePartyFoodConsumptionModel::CalculatePerkEffects(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber& result) IL_0013: ldarga.s 2 IL_0015: ldc.r4 0 IL_001A: call System.Void TaleWorlds.CampaignSystem.ExplainedNumber::LimitMax(System.Single maxValue) IL_001F: ldarg.2 IL_0020: // end original IL_0020: stloc 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0024: ldarg 1 IL_0028: ldarg 2 IL_002C: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0030: call static System.Void BannerlordCheats.Patches.Party.FoodConsumptionPercentage::CalculateDailyFoodConsumptionf(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0035: ldarg 1 IL_0039: ldarg 2 IL_003D: ldloca 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0041: call static System.Void BannerlordCheats.Patches.Army.ArmyFoodConsumptionPercentage::CalculateDailyFoodConsumptionf(TaleWorlds.CampaignSystem.Party.MobileParty party, TaleWorlds.CampaignSystem.ExplainedNumber baseConsumption, TaleWorlds.CampaignSystem.ExplainedNumber& __result) IL_0046: ldloc 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_004A: ret DONE ### Patch: System.Single TaleWorlds.CampaignSystem.Army::get_DailyCohesionChange() ### Replacement: static System.Single TaleWorlds.CampaignSystem.Army::TaleWorlds.CampaignSystem.Army.get_DailyCohesionChange_Patch2(TaleWorlds.CampaignSystem.Army this) IL_0000: Local var 0: TaleWorlds.CampaignSystem.ExplainedNumber IL_0000: Local var 1: System.Single IL_0000: ldc.r4 0 IL_0005: stloc 1 (System.Single) IL_0009: // start original IL_0009: call static TaleWorlds.CampaignSystem.Campaign TaleWorlds.CampaignSystem.Campaign::get_Current() IL_000E: callvirt TaleWorlds.CampaignSystem.GameModels TaleWorlds.CampaignSystem.Campaign::get_Models() IL_0013: callvirt TaleWorlds.CampaignSystem.ComponentInterfaces.ArmyManagementCalculationModel TaleWorlds.CampaignSystem.GameModels::get_ArmyManagementCalculationModel() IL_0018: ldarg.0 IL_0019: ldc.i4.0 IL_001A: callvirt abstract virtual TaleWorlds.CampaignSystem.ExplainedNumber TaleWorlds.CampaignSystem.ComponentInterfaces.ArmyManagementCalculationModel::CalculateDailyCohesionChange(TaleWorlds.CampaignSystem.Army army, System.Boolean includeDescriptions) IL_001F: stloc.0 IL_0020: ldloca.s 0 (TaleWorlds.CampaignSystem.ExplainedNumber) IL_0022: call System.Single TaleWorlds.CampaignSystem.ExplainedNumber::get_ResultNumber() IL_0027: // end original IL_0027: stloc 1 (System.Single) IL_002B: ldarga 0 IL_002F: ldloca 1 (System.Single) IL_0033: call static System.Void BannerlordCheats.Patches.Army.ArmyCohesionLossPercentage::CohesionChange(TaleWorlds.CampaignSystem.Army& __instance, System.Single& __result) IL_0038: ldarga 0 IL_003C: ldloca 1 (System.Single) IL_0040: call static System.Void BannerlordCheats.Patches.Army.FactionArmyCohesionLossPercentage::CohesionChange(TaleWorlds.CampaignSystem.Army& __instance, System.Single& __result) IL_0045: ldloc 1 (System.Single) IL_0049: ret DONE