Mount & Blade II: Bannerlord

File information

Last updated

Original upload

Created by

Aragas

Uploaded by

Aragasas

Virus scan

Safe to use

1259 comments

  1. Aragasas
    Aragasas
    • premium
    • 748 posts
    • 55 kudos
    Locked
    Sticky
    The CAUTION screen that you get when you launch the game with mods should be ignored! It gives misleading info!

    The game developers assume that we target specific dependency versions in our mods (like, we require Harmony 2.0.2 SPECIFICALLY), but in reality, the standard practice is to declare the minimum supported dependency version for a mod (like, we  require Harmony 2.0.2 or NEWER).
    Because the game developers do not follow this practice, you get this CAUTION screen that gives you misleading information.
    Do not follow it's recommendation and do not downgrade dependency versions!
  2. Aragasas
    Aragasas
    • premium
    • 748 posts
    • 55 kudos
    Locked
    Sticky
    We released BUTRLoader - a new native launcher extension that works like Fixed Launcher, but that does not cause any Harmony related issues!
    It will automatically sort correctly mods that support our DependedModuleMetadatas xml tag that UIExtenderEx, ButterLib and MCM uses!

    The initial release only fixes mod load order related issues, but we plan on extending it functionality!
  3. Aragasas
    Aragasas
    • premium
    • 748 posts
    • 55 kudos
    Locked
    Sticky
    MCM v4.2.0 Beta Release!

    The v4.2.0 Beta version now includes the ModLib and MCMv3 integrations in it's main module!
    You don't need `Bannerlord.MBOptionScreen.ModLib` and `Bannerlord.MBOptionScreen.MCMv3` folders anymore! In fact, they are incompatible with v4.2.0!
    Do not enable both MCM v4.2.0 and the old modules!
    Since this might be a breaking change for some mods, we mark this release as a Beta and we'll do a full release within two weeks.
    There are no API changes, we only improved MCM internally, including better UI handling.
  4. FilthyJake
    FilthyJake
    • member
    • 1 posts
    • 0 kudos
    Tried numerous amount of times redownloading it and deleting the old files and still crashes right after launch! :(( I'm even opening it alone with it required mods If i could get some help id greatly appreciate it! tried f***ing with the mod order as well ill continue to do some messing around maybe I just didnt get the right set up
    Edit: Figured it out my dumbass forgot to update one mod and it was harmony smh my bad forgot how touchy these mods can be
  5. deli0
    deli0
    • member
    • 4 posts
    • 0 kudos
    This Mod is not working for me. the game crashes at the launch. i play with the 1.5.9 version. i tried to re-instal the mod configuration menu and the requred mods a couple of times. even without any other mod activated its not working.
  6. PyroKro
    PyroKro
    • member
    • 3 posts
    • 0 kudos
    Edit: I saw another comment mentioning there is only one folder now.
    Not sure what my issue was but re-installing the mod seems to have fixed it.
  7. Maddoguk31
    Maddoguk31
    • member
    • 25 posts
    • 0 kudos
    Hi brand new here to modding this game. I did notice with the 4.3.11 version it is still referencing Harmony 2.0.2.27, UIExtender 2.1.5 and ButterLib 1.0.22. Not sure if that is intentional or not.
    1. Aragasas
      Aragasas
      • premium
      • 748 posts
      • 55 kudos
      We show the minimum required versions of the dependencies for MCM to work!
    2. Maddoguk31
      Maddoguk31
      • member
      • 25 posts
      • 0 kudos
      Ahh right, as i said new to the modding implementation of this game.
  8. theA1PHAD0G
    theA1PHAD0G
    • member
    • 1 posts
    • 0 kudos
    Hello,

       For some reason "MCM" is causing a crash before the main menu. I was doing a playthrough with several mods active including this one, but began crashing on battles. I decided to do a fresh install and build my mod list back up one by one.

    I got through "Harmony" , "ButterLib", and "UIExtenderEx" without any crashes. I enabled "MCM" and now it crashes consistently before the main menu. When I disable it, the crashes before the main menu stop. I unblocked the "dlls" using "Powershell" since the option to unblock them doesn't appear using "Properties". I also set the BL.exe to administrator, but no dice. I also tried the "BUTRLoader", but that also didn't work.

    Was hoping for any help at all.

    Edit: I'm on 1.5.9

    Edit 2: I did another fresh install of the game and the mods and it for some reason it works now.
  9. Kaylos009
    Kaylos009
    • premium
    • 2 posts
    • 0 kudos
    Latest version currently causes crash on startup in 1.6.0
    1. Aragasas
      Aragasas
      • premium
      • 748 posts
      • 55 kudos
      Thanks for the quick download! The issue should be fixed now!
    2. Kaylos009
      Kaylos009
      • premium
      • 2 posts
      • 0 kudos
      New update has fixed the issue. Thanks!
  10. deadmeat888
    deadmeat888
    • member
    • 3 posts
    • 0 kudos
    it says theres 3 folders but when i download it i only get 1 when i open the modules folder. what am i missing?
    1. Tofeemeow
      Tofeemeow
      • member
      • 2 posts
      • 0 kudos
      me too
    2. GonzoTheSamuraiiii
      GonzoTheSamuraiiii
      • member
      • 160 posts
      • 0 kudos
      Its broken.
    3. Aragasas
      Aragasas
      • premium
      • 748 posts
      • 55 kudos
      Guide is a bit out of date, sorry. Its one folder now!
  11. GonzoTheSamuraiiii
    GonzoTheSamuraiiii
    • member
    • 160 posts
    • 0 kudos
    Its not showing up in the mod settings list.
  12. FunnyPigRun
    FunnyPigRun
    • member
    • 7 posts
    • 0 kudos
    @Aragasas
    Hi. I mentioned an "infinite loop" bug when running this mod with proton on Linux before.

    I managed to fix it, and I want to share it with all other Linux users.

    So the culprit was that "dotnet472" is broken in the latest builds of WINE (specifically after 5.18 or something).
    To make it work, we need a WINE that can successfully install it.

    The setup is the following:
    1. In steam, go to properties go to "properties" (of Bannerlord) -> "compatibility." Then tick "Force the use of a specific SteamPlay compatibility tool." Select "Proton 5.0-10" (you must pick this exact version. It is the latest version where the aforementioned "dotnet472" works, as far as I know).
    2. Go to your console and type "protontricks 261550 dotnet472." The number 251550 is the ID of Bannerlord. Note that if you don't have "protontricks," go search on google and find out how to install it in your own distribution.
    3. ????
    4. PROFIT xd
    1. Omanidos
      Omanidos
      • member
      • 3 posts
      • 0 kudos
      This worked, thank you.
    2. Aragasas
      Aragasas
      • premium
      • 748 posts
      • 55 kudos
      Thanks for reporting you findings! This should be definitely pinned somewhere!
  13. akdombrowski
    akdombrowski
    • member
    • 34 posts
    • 0 kudos
    I'm developing a mod with MCMv4. Do you have a basic guide on how to develop with it? I've been through the docs site, but I'm still a bit lost.

    I was able to create settings, but they reset every time the game restarts. How can I save the settings?

    Thanks!

    ?using MCM.Abstractions.Attributes;
    using MCM.Abstractions.Attributes.v2;
    using MCM.Abstractions.Settings.Base.Global;
    namespace RichVillages
    {
      internal class RichVillagesSettings : AttributeGlobalSettings<RichVillagesSettings>
      {
        public RichVillagesSettings()
        {
          this.MinVillageGold = 1000;
        }
        public override string DisplayName => "RichVillages";
        public virtual string FolderName => "RichVillages";
        public virtual string FormatType
        {
          get;
        }
        public override string Id => "RichVillages V1.0.1";
        [SettingPropertyGroup("{=MCM_001_Settings_Header}General Mod Settings")]
        [SettingPropertyFloatingInteger("{=MCM_001_Settings_Name_001}Min Village Gold", 1, 10000000, "0 denars", HintText = "{=MCM_001_Settings_Info_001}Controls the min amount of gold (denars) which villages have at the start of the day. (Default = 1k)", RequireRestart = false)]
        public int MinVillageGold
        {
          get; set;
        }
      }
    }


    ?using HarmonyLib;
    using MCM.Abstractions.Settings.Base.Global;
    using TaleWorlds.CampaignSystem;
    using TaleWorlds.Core;
    using TaleWorlds.Library;
    using TaleWorlds.MountAndBlade;
    namespace RichVillages
    {
      public class SubModule : MBSubModuleBase
      {
        [HarmonyPatch(typeof(Town), "DailyTick")]
        [HarmonyPostfix]
        public static void DailyTickTownPatch(ref Town __instance)
        {
          Harmony.DEBUG = false;
          int maxGold = GlobalSettings<RichVillagesSettings>.Instance.MinVillageGold;
          FileLog.Log("town maxGold: " + maxGold);
          Debug.Print("town maxGold: " + maxGold);
          //InformationManager.DisplayMessage(new InformationMessage("Rich Villages - " + __instance.Name + " - Current Gold: " + __instance.Gold, Color.FromUint(4282569842U)));
          Debug.Print("town __instance.GetName: " + __instance.GetName());
          Debug.Print("town __instance.Gold: " + __instance.Gold);
          FileLog.Log("town __instance.GetName: " + __instance.GetName());
          FileLog.Log("town __instance.Gold: " + __instance.Gold);
          if (__instance.Gold >= maxGold)
          {
            return;
          }
          __instance.ChangeGold(maxGold - __instance.Gold);
          Debug.Print("town __instance.Gold: " + __instance.Gold);
          FileLog.Log("town __instance.Gold: " + __instance.Gold);
          Harmony.DEBUG = false;
        }
        [HarmonyPatch(typeof(Village), "DailyTick")]
        [HarmonyPostfix]
        public static void DailyTickVillagePatch(ref Village __instance)
        {
          Harmony.DEBUG = false;
          int maxGold = GlobalSettings<RichVillagesSettings>.Instance.MinVillageGold;
          FileLog.Log("village maxGold: " + maxGold);
          Debug.Print("village maxGold: " + maxGold);
          //InformationManager.DisplayMessage(new InformationMessage("Rich Villages - " + __instance.Name + " - Current Gold: " + __instance.Gold, Color.FromUint(4282569842U)));
          Debug.Print("village __instance.GetName: " + __instance.GetName());
          Debug.Print("village __instance.Gold: " + __instance.Gold);
          FileLog.Log("village __instance.GetName: " + __instance.GetName());
          FileLog.Log("village __instance.Gold: " + __instance.Gold);
          if (__instance.Gold >= maxGold)
          {
            return;
          }
          __instance.ChangeGold(maxGold - __instance.Gold);
          Debug.Print("village __instance.Gold: " + __instance.Gold);
          FileLog.Log("village __instance.Gold: " + __instance.Gold);
          Harmony.DEBUG = false;
        }
        protected override void OnBeforeInitialModuleScreenSetAsRoot()
        {
          base.OnBeforeInitialModuleScreenSetAsRoot();
          new Harmony("com.RichVillages.akdombrowski").PatchAll();
          InformationManager.DisplayMessage(new InformationMessage("Loaded 'Rich Villages'.", Color.FromUint(4282569842U)));
        }
      }
    1. Aragasas
      Aragasas
      • premium
      • 748 posts
      • 55 kudos
      If you still need help, please contact me in discord! You can find it in my profile!