Mount & Blade II: Bannerlord
0 of 0

File information

Last updated

Original upload

Created by

Adonnay

Uploaded by

Adonnay

Virus scan

Safe to use

1304 comments

  1. Adonnay
    Adonnay
    • premium
    • 276 kudos
    Locked
    Sticky
    Latest version 1.9.3

    Compatible with Bannerlord version 1.2.7 or higher.
    NOT compatible with version 1.1.6 or older!

    For older versions please refer to the "Old Files" section.

    Latest OPTIONAL version 1.9.2
    Compatible with Bannerlord version 1.2.0 BETA


    BEFORE YOU POST AN ISSUE - PLEASE!
    1. Check ATC.debug.log!
    2. Check if ATC generated a file called ATC.config.merged.xml when you load a game (NOT when entering the start menu).
    3. Check ATC.debug.log!!
    4. When posting issues please make sure you have the right version of ATC for the version of Bannerlord you're using (see above)!
    5. Check ATC.debug.log!!!

    ATC.debug.log
    ATC.merged.config.xml
     ATC.settings.xml

    can all be found in
    C:\ProgramData\Mount and Blade II Bannerlord\ATC
    (C: usually being the drive where the Windows installation is)



    DISCORD:
    ATC on Discord
  2. Adonnay
    Adonnay
    • premium
    • 276 kudos
    Locked
    Sticky
    ATC.settings.xml - the main switches to control ATC
    Location: C:\ProgramData\Mount and Blade II Bannerlord\ATC
    If you have trouble finding the folder try pressing WIN + R and enter %programdata% into the run file prompt. It should open your "Program Files" folder wherever it may be.

    If this is the first time using ATC, YOU HAVE TO START THE GAME AT LEAST ONCE to have ATC create the config file!

    NEW As of version 1.9.0 (or the earlier BETA version 1.8.10): Mod authors can now provide their own ATC.settings.xml (naming has to be *TC.settings.xml, so ATC.settings.xml is just as viable as MyModName_ATC.settings.xml). This gives mod authors some control over how ATC works in combination with their mod. This is especially useful if mods need to have one of the standard settings set to a specific value without having to teach their whole playerbase how to find the ATC.settings.xml. Keep in mind however that if multiple mods bring their own settings they overwrite each other! Check the ATC.debug log on what exactly gets changed by which mod.
    Settings that can be overridden by mods are marked below.

    Enable Mod Scan (true/false, Default: true) [EnableModScan]
    Lets ATC search for ATC compatible configuration files in the subfolders of active mods. Inactive mods or other directories are not checked.
    Important info for modders: The ID of the mod (in the SubModule.xml) has to be identical to the folder name!

    Dynamic Party Templates (true/false, Default: true) [EnableCustomTemplates]
    When this setting is enabled the default party templates, which are used when lords are respawned after death/defeat, are overwritten with troops from your ATC configuration. So instead of letting empire lords start with the same set of native troops when they respawn, they now respawn with (roughly) the same amount of troops but they are drawn from your custom ATC configuration(s).
    ! CAN BE OVERRIDEN BY MODS !

    Debug Log Options (true/false, Default: false) [DebugConfigRead, DebugRecruitSpawn, DebugAIRecruiting]
    The file can be found \ProgramData\Mount and Blade II Bannerlord\ATC and is named ATC.debug.log. It contains alot of useful information if you're running into trouble. If your troops are not spawning the first step should be to check the log file. In there you can find basic information about your configuration and - if enabled - tons of debug messages. In later versions the debug messages are disabled by default because they can have an impact on the performance and indude micro stutters if enabled at all times.

    Elite Spawn Mechanics (true/false, default: true) [EliteOnlyInCastleVillages]
    Elite recruits in vanilla Bannerlord are only spawned in villages that are attached to castles and for notables flagged as "rural" notables. If this setting is set to true, the spawning mechanic for elite recruits is exactly like in vanilla Bannerlord. If this setting is set to false, the elite spawning mechanic is more like in an older version of Bannerlord where the notable's power level is taken into account. This means elites can spawn everywhere and more likely with powerful notables. This can futher be tweaked with the following three settings.
    ! CAN BE OVERRIDEN BY MODS !

    Elite Spawn Chance (0 - 100, default: 5) [EliteSpawnChance]
    This is the spawn chance in % of an elite recruit when the notable has around the set power threshold.
    ! CAN BE OVERRIDEN BY MODS !

    Elite Power Threshold: (0 - 1000, default: 200) [ElitePowerThreshold]
    This is the value at which the elite spawn chance described above is met. So with the default values a notable of roughly 200 power has a 5% chance to spawn an elite recruit instead of a regular one.
    ! CAN BE OVERRIDEN BY MODS !

    Elite Spawn Chance Cap (0 - 100, default: 10) [EliteSpawnChanceCap]

    To keep the spawn chance in check when notables gain more power you can cap the spawn chance with this setting. If you don't want an upper spawn chance limit just set it to 100% and more powerful notables have a significantly higher chance of spawning elite recruits.
    ! CAN BE OVERRIDEN BY MODS !

    Max Level of Recruits (1 - x, default: 4) [RecruitMaxUpgradeTier]
    This determines up to what tier recruits can level up while they "wait" at their villages/towns to get recruited. The leveling is random and rather slow.
    Sidenote: Normal troops can also very rarely be upgraded into elite troops (vanilla behavior). This is why you will also find elite troops outside of castle villages (see above under Elite Spawn Mechanics).
    ! CAN BE OVERRIDEN BY MODS !

    Auto-Level Recruits (1 - x, default: 1) [LevelRecruitsUpToTier]
    This is an auto level-up feature for those who don't want to have battles full of green recruits with clubs and sticks. This instantly levels newly spawned recruits up to the set tier. So if this is set to 3, all recruits you will see are tier 3 or above.
    Sidenote: In an ealier version of ATC this was set to 3 accidentally so if you are bothered by the fact you only see tier 3 or higher recruits, DELETE your current ATC.settings.xml and let ATC createa a new one. OR you can set the value to 1 by yourself of course if you are not afraid of XML files.
    ! CAN BE OVERRIDEN BY MODS !

    Maximum Log file Size ( 0 - x, default: 500) [MaxLogSizeInKB]
    This is the maximum size the logfile can grow. This was put into place because constantly writing log data will slow down the game, especially if the logfile can grow indefinitely. Only set higher if you need more log data. Only relevant if you set any of the above described debug messages to true.
  3. nadim771
    nadim771
    • member
    • 0 kudos
    The mod is causing my game to crash. i just have it and MO female troops. idk what the hell is wrong and how to fix it 
    v.1.2.9


    file:///C:/Users/malek/Documents/aaa.htm

    Source: AdonnaysTroopChanger Object reference not set to an instance of an object. 


    Inner exception callstack: No inner exception was thrownOuter exception callstack: at AdonnaysTroopChanger.XMLReader.ATCConfig.GetFactionRecruit(Hero notable, MobileParty recruitingParty)at AdonnaysTroopChanger.PatchRecruitActionFromIndividual.Prefix(MobileParty& side1Party, CharacterObject& subject, Hero& individual, Int32 bitCode)
    at TaleWorlds.CampaignSystem.CampaignBehaviors.RecruitmentCampaignBehavior.GetRecruitVolunteerFromIndividual_Patch1(RecruitmentCampaignBehavior this, MobileParty side1Party, CharacterObject subject, Hero individual, Int32 bitCode)
    at TaleWorlds.CampaignSystem.CampaignBehaviors.RecruitmentCampaignBehavior.RecruitVolunteersFromNotable(MobileParty mobileParty, Settlement settlement)
    at TaleWorlds.CampaignSystem.CampaignBehaviors.RecruitmentCampaignBehavior.CheckRecruiting(MobileParty mobileParty, Settlement settlement)
    at TaleWorlds.CampaignSystem.CampaignBehaviors.RecruitmentCampaignBehavior.HourlyTickParty(MobileParty mobileParty)
    at TaleWorlds.CampaignSystem.MbEvent`1.InvokeList(EventHandlerRec`1 list, T t)
    at TaleWorlds.CampaignSystem.CampaignEvents.HourlyTickParty(MobileParty mobileParty)
    at TaleWorlds.CampaignSystem.CampaignEventDispatcher.HourlyTickParty(MobileParty mobileParty)
    at TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.PeriodicTicker`1.PeriodicTickSome(Double timeUnitsElapsed)
    at TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.PeriodicHourlyTick()
    at TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.TickPeriodicEvents()
    at TaleWorlds.CampaignSystem.Campaign.Tick()
    at TaleWorlds.CampaignSystem.GameState.MapState.OnMapModeTick(Single dt)
    at TaleWorlds.CampaignSystem.GameState.MapState.OnTick(Single dt)
    at TaleWorlds.Core.GameStateManager.OnTick(Single dt)
    at TaleWorlds.Core.Game.OnTick(Single dt)
    at TaleWorlds.Core.GameManagerBase.OnTick(Single dt)
    at TaleWorlds.MountAndBlade.Module.OnApplicationTick_Patch1(Module this, Single dt)
    e

    please i can't remove ATC because i need it for custom troops. but idk how to fix this
    1. Adonnay
      Adonnay
      • premium
      • 276 kudos
      I had a quick look at MO female troops and it is vastly outdated. I has last been updated in 2022 for version 1.6.4 it seems. That won't work with the latest Bannerlord versions.
  4. Y0TUN
    Y0TUN
    • member
    • 0 kudos
    Hello. I'm new to installing mods. I don’t understand why the mod doesn’t work, I sent it to /Modules like all other mods. As soon as I want to appear on the map I immediately get an error. Used with the GT_CarbonBody and Pantyhose Girls mods.
    I put it in this order: Adonnay's Troop Changer -> GT_CarbonBody -> Pantyhose Girls. 
    Installed after mods that were already in the regular version of the game (The game is on Steam): https://ibb.co/mFWZfhK  
    In debug.log it says: https://ibb.co/h7YqDTz
    1. DontCopyXD
      DontCopyXD
      • member
      • 1 kudos
      .
    2. pizzahut001
      pizzahut001
      • premium
      • 0 kudos
      wrong order.
      /Modules/[Mod_Armor]
      /Modules/[Mod_Adonnay's Troop Changer]

      use Vortex. it will help you a lot.
  5. nokia33103064
    nokia33103064
    • member
    • 0 kudos
    I have a question
    I download this mod and my lttle warband and other mod.
    Whether this mod soldier tree change originally spawn make soldier tree which I create can not spawn elite or not?
  6. captnprice
    captnprice
    • premium
    • 0 kudos
    I'm using ATC with Carbon Body and KOTK mod.

    It worked great in my previous save but now it kept crashing.

    I reinstalled it with fresh start and still keeps crashing.

    Exception information
    Type: System.NullReferenceException
    Message: Object reference not set to an instance of an object.
    Source: AdonnaysTroopChanger
    CallStack:

    • at PartyTemplateObject AdonnaysTroopChanger.PatchFillPartyStacks.ModifyPartyTemplate(MobileParty party)
    • at bool AdonnaysTroopChanger.PatchFillPartyStacks.Prefix(MobileParty __instance, ref PartyTemplateObject pt)
    • at void TaleWorlds.CampaignSystem.Party.MobileParty.FillPartyStacks_Patch1(MobileParty this, PartyTemplateObject pt, int troopNumberLimit)
    • at void TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent.InitializeLordPartyProperties(MobileParty mobileParty, Vec2 position, float spawnRadius, Settlement spawnSettlement)
    • at MobileParty TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent.CreateLordParty(string stringId, Hero hero, Vec2 position, float spawnRadius, Settlement spawnSettlement, Hero partyLeader)+(MobileParty mobileParty) => { }
    • at MobileParty TaleWorlds.CampaignSystem.Party.MobileParty.CreateParty(string stringId, PartyComponent component, OnPartyComponentCreatedDelegate delegateFunction)
    • at MobileParty TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent.CreateLordParty(string stringId, Hero hero, Vec2 position, float spawnRadius, Settlement spawnSettlement, Hero partyLeader)
    • at MobileParty TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior.SpawnLordParty(Hero hero)
    • at void TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior.ConsiderSpawningLordParties(Clan clan)
    • at void TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior.OnNonBanditClanDailyTick(Clan clan)
    • at void TaleWorlds.CampaignSystem.MbEvent.InvokeList(EventHandlerRec list, T t)
    • at void TaleWorlds.CampaignSystem.CampaignEvents.DailyTickClan(Clan clan)
    • at void TaleWorlds.CampaignSystem.CampaignEventDispatcher.DailyTickClan(Clan clan)
    • at void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager+PeriodicTicker.PeriodicTickSome(double timeUnitsElapsed)
    • at void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.PeriodicDailyTick()
    • at void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.TickPeriodicEvents()
    • at void TaleWorlds.CampaignSystem.Campaign.Tick()
    • at void TaleWorlds.CampaignSystem.GameState.MapState.OnMapModeTick(float dt)
    • at void TaleWorlds.CampaignSystem.GameState.MapState.OnTick(float dt)
    • at void TaleWorlds.Core.GameStateManager.OnTick(float dt)
    • at void TaleWorlds.Core.Game.OnTick(float dt)
    • at void TaleWorlds.Core.GameManagerBase.OnTick(float dt)
    • at void TaleWorlds.MountAndBlade.Module.OnApplicationTick_Patch2(Module this, float dt)

    - Enhanced Stacktrace

    • Frame: PartyTemplateObject AdonnaysTroopChanger.PatchFillPartyStacks.ModifyPartyTemplate(MobileParty party) (IL Offset: 48)

      • Module: AdonnaysTroopChanger
        Method: static TaleWorlds.CampaignSystem.Party.PartyTemplateObject AdonnaysTroopChanger.PatchFillPartyStacks::ModifyPartyTemplate(TaleWorlds.CampaignSystem.Party.MobileParty party)Method From Stackframe Issue: False
      CIL:
    • Frame: bool AdonnaysTroopChanger.PatchFillPartyStacks.Prefix(MobileParty __instance, ref PartyTemplateObject pt) (IL Offset: 30)

      • Module: AdonnaysTroopChanger
        Method: static System.Boolean AdonnaysTroopChanger.PatchFillPartyStacks::Prefix(TaleWorlds.CampaignSystem.Party.MobileParty __instance, TaleWorlds.CampaignSystem.Party.PartyTemplateObject& pt)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.Party.MobileParty.FillPartyStacks_Patch1(MobileParty this, PartyTemplateObject pt, int troopNumberLimit) (IL Offset: -1)

      • Module: AdonnaysTroopChanger
        Method: static System.Boolean AdonnaysTroopChanger.PatchFillPartyStacks::Prefix(TaleWorlds.CampaignSystem.Party.MobileParty __instance, TaleWorlds.CampaignSystem.Party.PartyTemplateObject& pt)Method From Stackframe Issue: False
      • Module: UNKNOWN
        Method: static System.Void TaleWorlds.CampaignSystem.Party.MobileParty.FillPartyStacks_Patch1(TaleWorlds.CampaignSystem.Party.MobileParty this, TaleWorlds.CampaignSystem.Party.PartyTemplateObject pt, System.Int32 troopNumberLimit)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent.InitializeLordPartyProperties(MobileParty mobileParty, Vec2 position, float spawnRadius, Settlement spawnSettlement) (IL Offset: 0)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent::InitializeLordPartyProperties(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty, TaleWorlds.Library.Vec2 position, System.Single spawnRadius, TaleWorlds.CampaignSystem.Settlements.Settlement spawnSettlement)Method From Stackframe Issue: False
      CIL:
    • Frame: MobileParty TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent.CreateLordParty(string stringId, Hero hero, Vec2 position, float spawnRadius, Settlement spawnSettlement, Hero partyLeader)+(MobileParty mobileParty) => { } (IL Offset: 0)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.Party.PartyComponents.<>c__DisplayClass23_0::b__0(TaleWorlds.CampaignSystem.Party.MobileParty mobileParty)Method From Stackframe Issue: False
      CIL:
    • Frame: MobileParty TaleWorlds.CampaignSystem.Party.MobileParty.CreateParty(string stringId, PartyComponent component, OnPartyComponentCreatedDelegate delegateFunction) (IL Offset: 57)

      • Module: UNKNOWN
        Method: static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.MobileParty::CreateParty(System.String stringId, TaleWorlds.CampaignSystem.Party.PartyComponents.PartyComponent component, TaleWorlds.CampaignSystem.Party.PartyComponents.OnPartyComponentCreatedDelegate delegateFunction)Method From Stackframe Issue: False
      CIL:
    • Frame: MobileParty TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent.CreateLordParty(string stringId, Hero hero, Vec2 position, float spawnRadius, Settlement spawnSettlement, Hero partyLeader) (IL Offset: 69)

      • Module: UNKNOWN
        Method: static TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.Party.PartyComponents.LordPartyComponent::CreateLordParty(System.String stringId, TaleWorlds.CampaignSystem.Hero hero, TaleWorlds.Library.Vec2 position, System.Single spawnRadius, TaleWorlds.CampaignSystem.Settlements.Settlement spawnSettlement, TaleWorlds.CampaignSystem.Hero partyLeader)Method From Stackframe Issue: False
      CIL:
    • Frame: MobileParty TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior.SpawnLordParty(Hero hero) (IL Offset: 38)

      • Module: UNKNOWN
        Method: TaleWorlds.CampaignSystem.Party.MobileParty TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior::SpawnLordParty(TaleWorlds.CampaignSystem.Hero hero)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior.ConsiderSpawningLordParties(Clan clan) (IL Offset: 93)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior::ConsiderSpawningLordParties(TaleWorlds.CampaignSystem.Clan clan)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior.OnNonBanditClanDailyTick(Clan clan) (IL Offset: 31)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.CampaignBehaviors.HeroSpawnCampaignBehavior::OnNonBanditClanDailyTick(TaleWorlds.CampaignSystem.Clan clan)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.MbEvent.InvokeList(EventHandlerRec list, T t) (IL Offset: 22)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.MbEvent`1::InvokeList(TaleWorlds.CampaignSystem.EventHandlerRec`1 list, TaleWorlds.CampaignSystem.T t)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignEvents.DailyTickClan(Clan clan) (IL Offset: 0)

      • Module: UNKNOWN
        Method: virtual System.Void TaleWorlds.CampaignSystem.CampaignEvents::DailyTickClan(TaleWorlds.CampaignSystem.Clan clan)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignEventDispatcher.DailyTickClan(Clan clan) (IL Offset: 11)

      • Module: UNKNOWN
        Method: virtual System.Void TaleWorlds.CampaignSystem.CampaignEventDispatcher::DailyTickClan(TaleWorlds.CampaignSystem.Clan clan)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager+PeriodicTicker.PeriodicTickSome(double timeUnitsElapsed) (IL Offset: 0)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.PeriodicTicker`1::PeriodicTickSome(System.Double timeUnitsElapsed)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.PeriodicDailyTick() (IL Offset: 67)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager::PeriodicDailyTick()Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager.TickPeriodicEvents() (IL Offset: 6)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.CampaignPeriodicEventManager::TickPeriodicEvents()Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.Campaign.Tick() (IL Offset: 132)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.Campaign::Tick()Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.GameState.MapState.OnMapModeTick(float dt) (IL Offset: 140)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.CampaignSystem.GameState.MapState::OnMapModeTick(System.Single dt)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.CampaignSystem.GameState.MapState.OnTick(float dt) (IL Offset: 77)

      • Module: UNKNOWN
        Method: virtual System.Void TaleWorlds.CampaignSystem.GameState.MapState::OnTick(System.Single dt)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.Core.GameStateManager.OnTick(float dt) (IL Offset: 47)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.Core.GameStateManager::OnTick(System.Single dt)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.Core.Game.OnTick(float dt) (IL Offset: 0)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.Core.Game::OnTick(System.Single dt)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.Core.GameManagerBase.OnTick(float dt) (IL Offset: 31)

      • Module: UNKNOWN
        Method: System.Void TaleWorlds.Core.GameManagerBase::OnTick(System.Single dt)Method From Stackframe Issue: False
      CIL:
    • Frame: void TaleWorlds.MountAndBlade.Module.OnApplicationTick_Patch2(Module this, float dt) (IL Offset: -1)

      • Module: Bannerlord.ButterLib
        Method: static System.Void Bannerlord.ButterLib.ExceptionHandler.BEWPatch::Finalizer(System.Exception __exception)Method From Stackframe Issue: False
      • Module: Bannerlord.ButterLib
        Method: static System.Void Bannerlord.ButterLib.ExceptionHandler.BEWPatch::Finalizer(System.Exception __exception)Method From Stackframe Issue: False
      • Module: UNKNOWN
        Method: static System.Void TaleWorlds.MountAndBlade.Module.OnApplicationTick_Patch2(TaleWorlds.MountAndBlade.Module this, System.Single dt)Method From Stackframe Issue: False
      CIL:- Involved Modules

      • AdonnaysTroopChanger

        • Method: static TaleWorlds.CampaignSystem.Party.PartyTemplateObject AdonnaysTroopChanger.PatchFillPartyStacks::ModifyPartyTemplate(TaleWorlds.CampaignSystem.Party.MobileParty party)
          Frame: PartyTemplateObject AdonnaysTroopChanger.PatchFillPartyStacks.ModifyPartyTemplate(MobileParty party) (IL Offset: 48)HarmonyIssue: False
        • Method: static System.Boolean AdonnaysTroopChanger.PatchFillPartyStacks::Prefix(TaleWorlds.CampaignSystem.Party.MobileParty __instance, TaleWorlds.CampaignSystem.Party.PartyTemplateObject& pt)
          Frame: bool AdonnaysTroopChanger.PatchFillPartyStacks.Prefix(MobileParty __instance, ref PartyTemplateObject pt) (IL Offset: 30)HarmonyIssue: False
        • Method: static System.Boolean AdonnaysTroopChanger.PatchFillPartyStacks::Prefix(TaleWorlds.CampaignSystem.Party.MobileParty __instance, TaleWorlds.CampaignSystem.Party.PartyTemplateObject& pt)
          Frame: void TaleWorlds.CampaignSystem.Party.MobileParty.FillPartyStacks_Patch1(MobileParty this, PartyTemplateObject pt, int troopNumberLimit) (IL Offset: -1)HarmonyIssue: False

    - Log Files

    • default20240406
  7. FLY11292
    FLY11292
    • member
    • 0 kudos
    当我尝试加载存档时,它显示错误
    “无法正确加载合并的 xml 文件:ltemsError:对象引用未设置为对象的实例”
    我可以问如何解决这个问题吗?我的版本是1.1.6
  8. rifleM16
    rifleM16
    • premium
    • 0 kudos
    I cant spawn custom troops in villages nor cities with ATC and custom troops mod enabled, Not even the template custom troops mod (ATC - Chael Nad'ra) or any custom troops mod I download from Nexus. However those custom units can be used in battle (spawn with cheat) and show in in-game wikimedia.

    Debug log kept saying:
    03/05/2024 13:53 : DEBUG: Building PartyTemplateStacks for Olek(sturgia|Sturgia).
    03/05/2024 13:53 : DEBUG: GetFactionRecruit called with sturgia| --> NO matching and NO "default" configuration found! Returning the culture's standard recruit "sturgian_recruit".
    03/05/2024 13:53 : DEBUG: Troop added to spawning party: sturgian_soldier
    ~

    I cannot figure out what's causing the problem and how to fix it. Someone knows how to fix this?
    1. Adonnay
      Adonnay
      • premium
      • 276 kudos
      Debug log works, that's a good sign. Now check further up in the log if there are any mod configurations mentioned. Something like that:

      2/15/2024 09:12 : Loading ..\..\Modules\AdonnaysTroopChanger/Config\DeReMilitari_ATC.modconfig.xml
      02/15/2024 09:12 : NEW Configuration for <MapFaction> player_faction added.
      02/15/2024 09:12 : NEW Configuration for   <Culture> vlandia added.
      02/15/2024 09:12 : NEW Configuration for     <volunteer> (basic) DRM_vlandian_00 added with 30%.
      02/15/2024 09:12 : NEW Configuration for     <volunteer> (basic) DRM_rhodok_01 added with 30%.
      02/15/2024 09:12 : NEW Configuration for     <volunteer> (basic) DRM_rhodok_02 added with 10%.
      02/15/2024 09:12 : NEW Configuration for     <volunteer> (basic) DRM_rhodok_03 added with 10%.
    2. rifleM16
      rifleM16
      • premium
      • 0 kudos
      further investigation to debug log, from what I understand is that my custom troops are loaded in spawn pool but not spawn in-game.
      More Debug log:

      03/05/2024 13:53 : Loading ..\..\Modules\SkyMaiden/Config\SkyMaidenTroops2_ATC.modconfig.xml
      03/05/2024 13:53 : NEW Configuration for <MapFaction> empire added.
      03/05/2024 13:53 : NEW Configuration for   <Culture> default added.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 80%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 80%.
      03/05/2024 13:53 : NEW Configuration for <MapFaction> empire_w added.
      03/05/2024 13:53 : NEW Configuration for   <Culture> default added.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 80%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 80%.
      03/05/2024 13:53 : NEW Configuration for <MapFaction> empire_s added.
      03/05/2024 13:53 : NEW Configuration for   <Culture> default added.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 80%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 80%.
      03/05/2024 13:53 : Loading ..\..\Modules\SkyMaiden/Config\SkyMaidenTroops_ATC.modconfig.xml
      03/05/2024 13:53 : NEW Configuration for <MapFaction> player_faction added.
      03/05/2024 13:53 : NEW Configuration for   <Culture> default added.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_E2_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_B1_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for <Clan> player_clan added.
      03/05/2024 13:53 : NEW Configuration for   <Culture> default added.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (basic) SKY_E2_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_B1_01 added with 50%.
      03/05/2024 13:53 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 50%.
      03/05/2024 13:53 : Configuration(s) found! Writing ATC.config.merged.xml
      03/05/2024 13:53 : ATC 1.9.3 loaded successfully!
      ~~~~~
      ~~~~~
      03/05/2024 13:53 : DEBUG: GetFactionRecruit called with empire_s|empire --> configuration NOT found, but empire_s|default configuration found! Returning "SKY_B1_01".
      03/05/2024 13:53 : DEBUG: Troop added to spawning party: SKY_B5_25
      03/05/2024 13:53 : DEBUG: GetFactionRecruit called with empire_s|empire --> configuration NOT found, but empire_s|default configuration found! Returning "SKY_B1_01".
      03/05/2024 13:53 : DEBUG: Troop added to spawning party: SKY_B5_11
      03/05/2024 13:53 : DEBUG: GetFactionRecruit called with empire_s|empire --> configuration NOT found, but empire_s|default configuration found! Returning "SKY_B1_01".
      03/05/2024 13:53 : DEBUG: Troop added to spawning party: SKY_B1_01
      03/05/2024 13:53 : DEBUG: GetFactionRecruit called with empire_s|empire --> configuration NOT found, but empire_s|default configuration found! Returning "SKY_B1_01".
      03/05/2024 13:53 : DEBUG: Troop added to spawning party: SKY_B2_11
      03/05/2024 13:53 : DEBUG: GetFactionRecruit called with empire_s|empire --> configuration NOT found, but empire_s|default configuration found! Returning "SKY_B1_01".
      03/05/2024 13:53 : DEBUG: Troop added to spawning party: SKY_B5_25
    3. Adonnay
      Adonnay
      • premium
      • 276 kudos
      So it does work. It replaces empire troops just fine. The question is maybe where do you expect new troops to pop up?
    4. rifleM16
      rifleM16
      • premium
      • 0 kudos
      my  goal is my custom troop should pop up in empire cultural villages and cities as recruited which I config their spawn in 3 empire faction. It always spawn imperial units even thought I set to 100% spawnrate.

      <MapFaction id="empire">
      <Culture id="default">
      <basicTroops>
      <volunteer id="SKY_B1_01" percent="100" playeronly="true" replacewith="imperial_recruit" />
      </basicTroops>
      <eliteTroops>
      <volunteer id="SKY_E2_01" percent="100" playeronly="true" replacewith="imperial_vigla_recruit" />
      </eliteTroops>
      </Culture>
      </MapFaction>

      I tried tweak with factors like  <MapFaction> <Culture> <Clan> ,  somehow still no working.
      I cannot figure out what I miss. -.-
    5. Adonnay
      Adonnay
      • premium
      • 276 kudos
      MapFaction "empire" only covers the northern empire. If you expect troops in the western or southern empire you have to use MapFaction empire_w and empire_s respectively. They share the same culture (empire) but have different factions. Check the ATC.config.merged.xml to see if your configuration is successfully incorporated into the other configurations you might have from other mods.
    6. rifleM16
      rifleM16
      • premium
      • 0 kudos
      I did try make three empire faction configuration yet none troops spawn in all three empire town.

      current testing configuration: Northern empire, player faction, player clan
      current testing result: fail, units dont spawn in empire cultural town/village even after a period of in-game time.

      [ATC.debug.log]
      03/08/2024 01:25 : Loading ..\..\Modules\SkyMaiden/Config\Empire_SkyMaidenTroops_ATC.modconfig.xml
      03/08/2024 01:25 : NEW Configuration for <MapFaction> empire added.
      03/08/2024 01:25 : NEW Configuration for   <Culture> default added.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 100%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 100%.
      03/08/2024 01:25 : Loading ..\..\Modules\SkyMaiden/Config\SkyMaidenTroops_ATC.modconfig.xml
      03/08/2024 01:25 : NEW Configuration for <MapFaction> player_faction added.
      03/08/2024 01:25 : NEW Configuration for   <Culture> default added.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (basic) SKY_E2_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (elite) SKY_B1_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for <Clan> player_clan added.
      03/08/2024 01:25 : NEW Configuration for   <Culture> default added.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (basic) SKY_B1_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (basic) SKY_E2_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (elite) SKY_B1_01 added with 50%.
      03/08/2024 01:25 : NEW Configuration for     <volunteer> (elite) SKY_E2_01 added with 50%.
      03/08/2024 01:25 : Configuration(s) found! Writing ATC.config.merged.xml
      03/08/2024 01:25 : ATC 1.9.3 loaded successfully!
      03/08/2024 01:25 : DEBUG: GetFactionRecruit called with sturgia|sturgia --> NO matching and NO "default" configuration found! Returning the culture's standard recruit "sturgian_recruit".
      ~
      ~
      ~


      [ATC.config.merged.xml]
      <ATCConfig>
        <MapFaction id="empire">
          <Culture id="default">
            <basicTroops>
              <volunteer id="SKY_B1_01" percent="100" playeronly="true" replacewith="imperial_recruit" />
            </basicTroops>
            <eliteTroops spawnChance="5" atPower="200" spawnChanceCap="20">
              <volunteer id="SKY_E2_01" percent="100" playeronly="true" replacewith="imperial_vigla_recruit" />
            </eliteTroops>
          </Culture>
        </MapFaction>
        <MapFaction id="player_faction">
          <Culture id="default">
            <basicTroops>
              <volunteer id="SKY_B1_01" percent="50" />
              <volunteer id="SKY_E2_01" percent="50" />
            </basicTroops>
            <eliteTroops spawnChance="15" atPower="200" spawnChanceCap="25">
              <volunteer id="SKY_B1_01" percent="50" />
              <volunteer id="SKY_E2_01" percent="50" />
            </eliteTroops>
          </Culture>
        </MapFaction>
        <Clan id="player_clan">
          <Culture id="default">
            <basicTroops>
              <volunteer id="SKY_B1_01" percent="50" />
              <volunteer id="SKY_E2_01" percent="50" />
            </basicTroops>
            <eliteTroops spawnChance="15" atPower="200" spawnChanceCap="25">
              <volunteer id="SKY_B1_01" percent="50" />
              <volunteer id="SKY_E2_01" percent="50" />
            </eliteTroops>
          </Culture>
        </Clan>
      </ATCConfig>
    7. rifleM16
      rifleM16
      • premium
      • 0 kudos
      I figured out the problem now, just like author said, mod config conflict.
      When you using both ATC - Adonnay's Troop Changer and Recruit Your Own Culture (and any cusstom troop mod) together, custom recruit get reset to normal recruit.

      Solution:
      Set ATC mod order after Recruit Your Own Culture
      .
      .
      Recruit Your Own Culture
      ATC - Adonnay's Troop Changer
      Any Custom troop mod
    8. Adonnay
      Adonnay
      • premium
      • 276 kudos
      Glad you figured it out and posted the solution here. Thanks!
  9. CaspianQQ1
    CaspianQQ1
    • member
    • 0 kudos
    It crashes when logging into the game in version 1.2.8, (I checked the program data and there is no problem) I really need help on this issue.
  10. war9873
    war9873
    • member
    • 0 kudos
    how can I activate this launcher-blocked module of yours? In my case, the launcher blocked the activation of this module after downloading. Please help me
  11. Dylanb9898
    Dylanb9898
    • supporter
    • 0 kudos
    using ATC is it possible to give clans thier own troop trees
  12. 2fat4live
    2fat4live
    • member
    • 0 kudos
    Weird my game crashes when enabling troop trees with RMB. Someone knows how to repair that?
    1. axossk
      axossk
      • member
      • 2 kudos
      I'm almost certain that you can't use (don't need) ATC for RBM troop trees. RBM does it by itself.