Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CTD: Leaving kingdom as mercenary. Player clan previously at war. #223

Open
bicobus opened this issue Jul 27, 2023 · 1 comment
Open

CTD: Leaving kingdom as mercenary. Player clan previously at war. #223

bicobus opened this issue Jul 27, 2023 · 1 comment

Comments

@bicobus
Copy link

bicobus commented Jul 27, 2023

My clan was at war with a kingdom prior to me joining another kingdom as mercenary. Upon joining, the war status got removed. Now that I am done being a mercenary, I wanted to leaves. This action created a CTD. Posting a report here because the crash report window list diplomacy as involved.

I tried to attach as much information as I could. I play Bannerlord through proton, on a GNU/Linux OS. The exotic nature of the system prevents me from using standardized "BUTR" report thingies (it just doesn't work).

Involved Modules
[- Involved Modules]

    [Bannerlord.Diplomacy]
        Method: System.Void Diplomacy.ViewModelMixin.KingdomDiplomacyVMMixin::<.ctor>b__32_2(TaleWorlds.CampaignSystem.IFaction _, TaleWorlds.CampaignSystem.IFaction _, TaleWorlds.CampaignSystem.Actions.MakePeaceDetail _)
        Frame: Diplomacy.ViewModelMixin.KingdomDiplomacyVMMixin(KingdomDiplomacyVM vm)+(IFaction _, IFaction _, MakePeaceDetail _) => { } [2] (IL Offset: 6)
        HarmonyIssue: Fals
Exception trace
Exception information
Type: System.Reflection.TargetInvocationException
Message: Exception has been thrown by the target of an invocation.
Source: mscorlib
CallStack:

    at object System.Reflection.RuntimeMethodInfo.Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture)
    at object System.Reflection.MethodBase.Invoke(object obj, object[] parameters)
    at object TaleWorlds.Library.Common.InvokeWithLog(MethodInfo methodInfo, object obj, params object[] args)
    at void TaleWorlds.GauntletUI.Data.GauntletView.OnCommand(string command, object[] args)
    at void TaleWorlds.GauntletUI.Data.GauntletView.OnEventFired(Widget widget, string commandName, object[] args)
    at void TaleWorlds.GauntletUI.BaseTypes.Widget.EventFired(string eventName, params object[] args)
    at void TaleWorlds.GauntletUI.BaseTypes.ButtonWidget.HandleClick()
    at void TaleWorlds.GauntletUI.BaseTypes.ButtonWidget.OnMouseReleased()
    at void TaleWorlds.GauntletUI.EventManager.DispatchEvent(Widget selectedWidget, GauntletEvent gauntletEvent)
    at void TaleWorlds.GauntletUI.EventManager.MouseUp()
    at void TaleWorlds.GauntletUI.UIContext.UpdateInput(InputType handleInputs)
    at void TaleWorlds.Engine.GauntletUI.GauntletLayer.ProcessEvents()
    at void TaleWorlds.ScreenSystem.ScreenManager.Update()



Inner Exception information
Type: System.NullReferenceException
Message: Object reference not set to an instance of an object
Source: TaleWorlds.CampaignSystem.ViewModelCollection
CallStack:

    at void TaleWorlds.CampaignSystem.ViewModelCollection.KingdomManagement.Diplomacy.KingdomDiplomacyVM.OnSetPeaceItem(KingdomTruceItemVM item)
    at void TaleWorlds.CampaignSystem.ViewModelCollection.KingdomManagement.Diplomacy.KingdomDiplomacyVM.OnSetCurrentDiplomacyItem(KingdomDiplomacyItemVM item)
    at void TaleWorlds.CampaignSystem.ViewModelCollection.KingdomManagement.Diplomacy.KingdomDiplomacyVM.OnDiplomacyItemSelection(KingdomDiplomacyItemVM item)
    at void TaleWorlds.CampaignSystem.ViewModelCollection.KingdomManagement.Diplomacy.KingdomDiplomacyVM.SetDefaultSelectedItem()
    at void TaleWorlds.CampaignSystem.ViewModelCollection.KingdomManagement.Diplomacy.KingdomDiplomacyVM.RefreshDiplomacyList()
    at Diplomacy.ViewModelMixin.KingdomDiplomacyVMMixin(KingdomDiplomacyVM vm)+(IFaction _, IFaction _, MakePeaceDetail _) => { } [2]
    at void TaleWorlds.CampaignSystem.MbEvent.InvokeList(EventHandlerRec list, IFaction t1, IFaction t2, MakePeaceDetail t3)
    at void TaleWorlds.CampaignSystem.MbEvent.Invoke(IFaction t1, IFaction t2, MakePeaceDetail t3)
    at void TaleWorlds.CampaignSystem.CampaignEvents.OnMakePeace(IFaction side1Faction, IFaction side2Faction, MakePeaceDetail detail)
    at void TaleWorlds.CampaignSystem.CampaignEventDispatcher.OnMakePeace(IFaction side1Faction, IFaction side2Faction, MakePeaceDetail detail)
    at void TaleWorlds.CampaignSystem.Actions.MakePeaceAction.ApplyInternal(IFaction faction1, IFaction faction2, int dailyTributeFrom1To2, MakePeaceDetail detail)
    at void TaleWorlds.CampaignSystem.Actions.MakePeaceAction.Apply(IFaction faction1, IFaction faction2, int dailyTributeFrom1To2)
    at void TaleWorlds.CampaignSystem.Actions.ChangeKingdomAction.ApplyInternal(Clan clan, Kingdom newKingdom, ChangeKingdomActionDetail detail, int awardMultiplier, bool byRebellion, bool showNotification)
    at void TaleWorlds.CampaignSystem.Actions.ChangeKingdomAction.ApplyByLeaveKingdomAsMercenary(Clan mercenaryClan, bool showNotification)
    at void TaleWorlds.CampaignSystem.ViewModelCollection.KingdomManagement.KingdomManagementVM.OnConfirmLeaveKingdom()
    at void TaleWorlds.MountAndBlade.ViewModelCollection.Inquiries.SingleQueryPopUpVM.ExecuteAffirmativeAction()
    at object System.Reflection.RuntimeMethodInfo.Invoke(object obj, BindingFlags invokeAttr, Binder binder, object[] parameters, CultureInfo culture)
Installed Modules
[- Installed Modules]

    [+ Harmony (Bannerlord.Harmony, v2.3.0.169)]
    [+ ButterLib (Bannerlord.ButterLib, v2.8.11.0)]
    [+ UIExtenderEx (Bannerlord.UIExtenderEx, v2.8.0.0)]
    [+ Mod Configuration Menu v5 (Bannerlord.MBOptionScreen, v5.9.1.0)]
    [+ Native (Native, v1.1.5.0)]
    [+ SandBox Core (SandBoxCore, v1.1.5.0)]
    [+ Sandbox (Sandbox, v1.1.5.0)]
    [+ CustomBattle (CustomBattle, v1.1.5.0)]
    [+ StoryMode (StoryMode, v1.1.5.0)]
    [+ Birth and Death Options (BirthAndDeath, v1.1.5.0)]
    [+ Adonnay's Troop Changer (AdonnaysTroopChanger, v1.9.1.0)]
    [+ (RBM) Realistic Battle Mod (RBM, v3.6.1.0)]
    [+ Diplomacy (Bannerlord.Diplomacy, v1.2.5.0)]
    [+ BanditVariety (BanditVariety, v1.7.0.0)]
    [+ Better Pikes (BetterPikes, v1.1.4.0)]
    [+ DeReMilitari (DeReMilitari, v4.2.5.0)]
    [+ Breakable Polearms (BreakablePolearms, v1.1.0.0)]
    [+ vbody (vbody, v1.0.0.0)]
    [+ VB_Armors (VB_Armors, e1.5.2.0)]
    [+ Hidden Goddess Troop tree (HiddenGoddess, v1.0.0.0)]
    [+ Fourberie (Fourberie, v12.3.1.0)]
    [+ Tier 7 Troop Unlocker Harmony (T7TroopUnlocker, v1.0.2.0)]
    [+ Captivity Events (zCaptivityEvents, v1.1.5.1100)]
    [+ KLBShackles (KLBShackles, e1.5.6.0)]
    [+ Default Captivity Events (zCEDefaults, v1.1.5.1100)]
    [+ CE Animation Expansion (zCEAnimationExpansion, v1.1.5.1100)]
    [+ CE Bandit Expansion (zCEBandit, v1.1.5.1100)]
    [+ CE Holiday Events (zCEHolidayEvents, v1.1.5.1100)]
    [+ CE Arena Fighter Expansion (zCEArenaFighterExpansion, v1.1.5.1100)]
    [+ BC Captor Gear and Girls (BCCaptorGear, v1.0.0.0)]
    [+ Boukenshas Binder (zBoukenshasBinder, v1.1.5.1100)]

Diplomacy20230727.log
default20230727.log

@bicobus
Copy link
Author

bicobus commented Jul 28, 2023

So I managed to leave the kingdom using the console command: campaign.leave_faction. Gave me some negative relation, and triggered the peace with the khuzait. Didn't have a crash through that method.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant