DennyWiseau
Veteran

Seems like you (TW) implemented conditions to remove duplicate companions from the campaign map.
While efforts to finally revise how companions work/spawn in the game in are very welcome, there should be more focus on how these changes influence the game overall, you shouldent just write a few lines of code and be done with it.
In the very least you SHOULD increase the maximum companion pool or allow player to determine the ammount of possible (different) companions that can spawn into a campaign when setting up a new game. This would also make mods like this: https://www.nexusmods.com/mountandblade2bannerlord/mods/1869 and additional companions overall not obsolete.
Ideally the game would spawn in each type of companion dependent on suffix and culture.
Which I think you attempted to acheive with this piece of code?:
"private void TryKillCompanion() { if (!(MBRandom.RandomFloat <= 0.1f)) { return; } CharacterObject randomElementInefficiently = _aliveCompanionTemplates.GetRandomElementInefficiently(); Hero hero = null; foreach (Hero allAliveHero in Hero.AllAliveHeroes) { if (allAliveHero.Template == randomElementInefficiently && allAliveHero.IsWanderer) { hero = allAliveHero; break; } } if (hero != null && hero.CompanionOf == null && (hero.CurrentSettlement == null || hero.CurrentSettlement != Hero.MainHero.CurrentSettlement)) { KillCharacterAction.ApplyByRemove(hero); } }"
Please recognize that companions is an important component in the overall game experince and treat it as such.
Nothing more annoying than recuruiting companions to see them **** off a minute later after you gave them some of your best gear.
While efforts to finally revise how companions work/spawn in the game in are very welcome, there should be more focus on how these changes influence the game overall, you shouldent just write a few lines of code and be done with it.
In the very least you SHOULD increase the maximum companion pool or allow player to determine the ammount of possible (different) companions that can spawn into a campaign when setting up a new game. This would also make mods like this: https://www.nexusmods.com/mountandblade2bannerlord/mods/1869 and additional companions overall not obsolete.
Ideally the game would spawn in each type of companion dependent on suffix and culture.
Which I think you attempted to acheive with this piece of code?:
"private void TryKillCompanion() { if (!(MBRandom.RandomFloat <= 0.1f)) { return; } CharacterObject randomElementInefficiently = _aliveCompanionTemplates.GetRandomElementInefficiently(); Hero hero = null; foreach (Hero allAliveHero in Hero.AllAliveHeroes) { if (allAliveHero.Template == randomElementInefficiently && allAliveHero.IsWanderer) { hero = allAliveHero; break; } } if (hero != null && hero.CompanionOf == null && (hero.CurrentSettlement == null || hero.CurrentSettlement != Hero.MainHero.CurrentSettlement)) { KillCharacterAction.ApplyByRemove(hero); } }"
Please recognize that companions is an important component in the overall game experince and treat it as such.
Nothing more annoying than recuruiting companions to see them **** off a minute later after you gave them some of your best gear.