Version 1.2.2 is out, and confirmed working on Main Branch e1.0.11. The main benefit with this update is it should be compatible with more mods, due to the reduction of the number of patched methods. I will be implementing outstanding feature requests this week, and then rolling this mod into my Relations Manager (name tbd) mod that is currently in development.
Version 1.3.0 is out, and it includes a Mode Menu, so you no longer have to edit a config file, which has been removed. Just click "Mod Options" after the game starts up!
Apparently there is a compatibility problem between this mod and the Assess Trade Prices mod (https://www.nexusmods.com/mountandblade2bannerlord/mods/881) . Just in case anyone intends to use both mods together.
First of all thank you for the mod. I think i found a small bug. I was in Sturgia and i left with no relations penalty or declaring war. Everything good till now. Then i found the King of the Sturgias and was curious about what he has to say to me. When spoke to him i found that i have the option to ask for a truce (?). I did that and the game crashed.
I should point out that i use diplomacy reworked mod as well so i am not really sure if they are incompatible but when i left the kingdom i didn't have the ability to talk to the sturgians.
This mod seems to crash the game when joning a siege. Version 1.3.0
Recorded Unhandled Exceptions: 1. System.NullReferenceException: Object reference not set to an instance of an object. at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuPartyItemVM.RefreshRelationStatus() at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuPartyItemVM.RefreshProperties() at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuPartyItemVM..ctor(Action`1 onSetAsContextMenuActiveItem, PartyBase item, Boolean canShowQuest) at TaleWorlds.CampaignSystem.ViewModelCollection.GameMenu.EncounterMenuOverlayVM.UpdateLists() at TaleWorlds.CampaignSystem.ViewModelCollection.GameMenu.EncounterMenuOverlayVM..ctor() at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuOverlay.GetOverlay(MenuOverlayType menuOverlayType) at SandBox.GauntletUI.Menu.GauntletMenuOverlayBase.OnInitialize() at SandBox.View.Menu.MenuViewContext.AddMenuView[T](Object[] parameters) at SandBox.View.Menu.MenuViewContext.CheckAndInitializeOverlay() at SandBox.View.Map.MapScreen.EnterMenuContext(MenuContext menuContext) at SandBox.View.Map.MapScreen.UpdateMenuView() at SandBox.View.Map.MapScreen.OnFrameTick(Single dt) at TaleWorlds.Engine.Screens.ScreenBase.FrameTick(Single dt) at TaleWorlds.Engine.Screens.ScreenManager.Tick(Single dt) at DMD<DMD<ScreenManager_Tick_Patch1>?2153568::ScreenManager_Tick_Patch1>(Single dt)
Recorded First Chance Exceptions: 1. Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'ReflectionMagic.PrivateReflectionDynamicObjectInstance' does not contain a definition for '_isSaving' at Microsoft.CSharp.RuntimeBinder.RuntimeBinderController.SubmitError(CError pError) at Microsoft.CSharp.RuntimeBinder.Semantics.MemberLookup.ReportErrors() at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindProperty(DynamicMetaObjectBinder payload, ArgumentObject argument, LocalVariableSymbol local, EXPR optionalIndexerArguments, Boolean fEventsPermitted) at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.DispatchPayload(DynamicMetaObjectBinder payload, ArgumentObject[] arguments, Dictionary`2 dictionary) at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindCore(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding) at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.Bind(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding) at Microsoft.CSharp.RuntimeBinder.BinderHelper.Bind(DynamicMetaObjectBinder action, RuntimeBinder binder, IEnumerable`1 args, IEnumerable`1 arginfos, DynamicMetaObject onBindingError) 2. Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'ReflectionMagic.PrivateReflectionDynamicObjectInstance' does not contain a definition for '_isSaving' at Microsoft.CSharp.RuntimeBinder.RuntimeBinderController.SubmitError(CError pError) at Microsoft.CSharp.RuntimeBinder.Semantics.MemberLookup.ReportErrors() at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindProperty(DynamicMetaObjectBinder payload, ArgumentObject argument, LocalVariableSymbol local, EXPR optionalIndexerArguments, Boolean fEventsPermitted) at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.DispatchPayload(DynamicMetaObjectBinder payload, ArgumentObject[] arguments, Dictionary`2 dictionary) at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindCore(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding) at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.Bind(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding) at Microsoft.CSharp.RuntimeBinder.BinderHelper.Bind(DynamicMetaObjectBinder action, RuntimeBinder binder, IEnumerable`1 args, IEnumerable`1 arginfos, DynamicMetaObject onBindingError) 3. System.IO.FileNotFoundException: Non รจ stato possibile caricare il file o l'assembly 'CustomSpawns.XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' o una delle relative dipendenze. Impossibile trovare il file specificato. File name: 'CustomSpawns.XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) at System.Reflection.Assembly.Load(AssemblyName assemblyRef) at System.Xml.Serialization.TempAssembly.LoadGeneratedAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)
79 comments
Does this mod affect AI lords as well?
I'd like to use it to configure relations changes for defecting lords with past and new kingdom.
Thanks
Edit: spelling
First of all thank you for the mod.
I think i found a small bug. I was in Sturgia and i left with no relations penalty or declaring war. Everything good till now. Then i found the King of the Sturgias and was curious about what he has to say to me. When spoke to him i found that i have the option to ask for a truce (?). I did that and the game crashed.
I should point out that i use diplomacy reworked mod as well so i am not really sure if they are incompatible but when i left the kingdom i didn't have the ability to talk to the sturgians.
Thank you once again for your time.
Recorded Unhandled Exceptions:
1. System.NullReferenceException: Object reference not set to an instance of an object.
at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuPartyItemVM.RefreshRelationStatus()
at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuPartyItemVM.RefreshProperties()
at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuPartyItemVM..ctor(Action`1 onSetAsContextMenuActiveItem, PartyBase item, Boolean canShowQuest)
at TaleWorlds.CampaignSystem.ViewModelCollection.GameMenu.EncounterMenuOverlayVM.UpdateLists()
at TaleWorlds.CampaignSystem.ViewModelCollection.GameMenu.EncounterMenuOverlayVM..ctor()
at TaleWorlds.MountAndBlade.ViewModelCollection.GameMenu.GameMenuOverlay.GetOverlay(MenuOverlayType menuOverlayType)
at SandBox.GauntletUI.Menu.GauntletMenuOverlayBase.OnInitialize()
at SandBox.View.Menu.MenuViewContext.AddMenuView[T](Object[] parameters)
at SandBox.View.Menu.MenuViewContext.CheckAndInitializeOverlay()
at SandBox.View.Map.MapScreen.EnterMenuContext(MenuContext menuContext)
at SandBox.View.Map.MapScreen.UpdateMenuView()
at SandBox.View.Map.MapScreen.OnFrameTick(Single dt)
at TaleWorlds.Engine.Screens.ScreenBase.FrameTick(Single dt)
at TaleWorlds.Engine.Screens.ScreenManager.Tick(Single dt)
at DMD<DMD<ScreenManager_Tick_Patch1>?2153568::ScreenManager_Tick_Patch1>(Single dt)
Recorded First Chance Exceptions:
1. Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'ReflectionMagic.PrivateReflectionDynamicObjectInstance' does not contain a definition for '_isSaving'
at Microsoft.CSharp.RuntimeBinder.RuntimeBinderController.SubmitError(CError pError)
at Microsoft.CSharp.RuntimeBinder.Semantics.MemberLookup.ReportErrors()
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindProperty(DynamicMetaObjectBinder payload, ArgumentObject argument, LocalVariableSymbol local, EXPR optionalIndexerArguments, Boolean fEventsPermitted)
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.DispatchPayload(DynamicMetaObjectBinder payload, ArgumentObject[] arguments, Dictionary`2 dictionary)
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindCore(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding)
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.Bind(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding)
at Microsoft.CSharp.RuntimeBinder.BinderHelper.Bind(DynamicMetaObjectBinder action, RuntimeBinder binder, IEnumerable`1 args, IEnumerable`1 arginfos, DynamicMetaObject onBindingError)
2. Microsoft.CSharp.RuntimeBinder.RuntimeBinderException: 'ReflectionMagic.PrivateReflectionDynamicObjectInstance' does not contain a definition for '_isSaving'
at Microsoft.CSharp.RuntimeBinder.RuntimeBinderController.SubmitError(CError pError)
at Microsoft.CSharp.RuntimeBinder.Semantics.MemberLookup.ReportErrors()
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindProperty(DynamicMetaObjectBinder payload, ArgumentObject argument, LocalVariableSymbol local, EXPR optionalIndexerArguments, Boolean fEventsPermitted)
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.DispatchPayload(DynamicMetaObjectBinder payload, ArgumentObject[] arguments, Dictionary`2 dictionary)
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.BindCore(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding)
at Microsoft.CSharp.RuntimeBinder.RuntimeBinder.Bind(DynamicMetaObjectBinder payload, IEnumerable`1 parameters, DynamicMetaObject[] args, DynamicMetaObject& deferredBinding)
at Microsoft.CSharp.RuntimeBinder.BinderHelper.Bind(DynamicMetaObjectBinder action, RuntimeBinder binder, IEnumerable`1 args, IEnumerable`1 arginfos, DynamicMetaObject onBindingError)
3. System.IO.FileNotFoundException: Non รจ stato possibile caricare il file o l'assembly 'CustomSpawns.XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' o una delle relative dipendenze. Impossibile trovare il file specificato.
File name: 'CustomSpawns.XmlSerializers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'
at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
at System.Xml.Serialization.TempAssembly.LoadGeneratedAssembly(Type type, String defaultNamespace, XmlSerializerImplementation& contract)