0 of 0

File information

Last updated

Original upload

Created by

ShutUpMalfoy

Uploaded by

ShutUpMalfoy

Virus scan

Some manually verified files

Tags for this mod

About this mod

This mod enhances the Bannerlord combat system by allowing nearby AI parties or armies to join your battle.

Requirements
Permissions and credits
Translations
  • Turkish
  • Spanish
  • Russian
  • Portuguese
  • Japanese



[Update Log]

Spoiler:  
Show

V1.0.0
- First Version

V1.0.1
- English translation has been updated. And have uploaded a template for translation.
- Fixed a bug in which the enemy was less likely to participate in the battle than intended.
- Fixed the freezing problem that occurred when reinforcements were spawned.

V1.0.2
- Fixed a bug where the surrounding troops was not added to the list of reinforcements.

V1.0.3
- Fixed a ctd that occurred when reinforcements arrived during the village battle.
- Added Chinese Localization

V1.0.4
- Fixed a ctd that occurred when reinforcements arrived with no leader hero.
- The arrival time of the party has increased a little.

V1.0.5
- Fixed ctd problems from particular maps in the game.

V1.0.6
- Adjusted the spawn function so that it does not exceed the maximum of the game engine.
- Fixed a bug that did not apply the current state of the battle. (advantage, disadvantage)
- Fixed a bug that determined the victory or defeat of a battle while being spawned.

V1.0.7
- Fixed a bug that the soldiers who were created looked the same.
- Added settings for the maximum radius of searching, and settings that can increase or decrease the probability of participating as reinforcements.
- Fixed a problem that was occurring while investigating the relationship with the main character.

V1.0.8
- Additional fix for ctd problems caused by relationship filters.
- Added French Localization.

V1.0.9
- Fixed a bug where parties that did not arrive in the army were teleported and created as reinforcements.
- Fixed a bug where parties going to join the army was not registered as a candidate for the reinforcements.
- Fixed a bug that bad relationship but rather higher probability.
- When conditions on the battlefield are very unfavorable, the chances of appearing as reinforcements decrease more.
- Additional fix for ctd problems caused by relationship filters.

V1.1.0
- Fixed a crash that occurred while getting a hero's trait.
- Added Turkish Localization.

V1.1.1
- Now Timer options are available in three options
- The timer for the default option is also slightly longer than it is now. (They will arrive a little later than now)
- Fixed a bug in bonus point settings
- Slightly reduce the impact of trait scores
- Slightly increase the probability of ally to join.
- If AI is an army, it's a little less likely to join. (The army might have to go do something more important.)
- If the number of people who participated in the battlefield is too small or too large, you are less likely to join. (Need to consider the limitations of the engine and prevent too many party from joining. Also, they should not get into too trivial.)

V1.2.0
- Fixed a bug where a party in an event was treated as redundant.
- Fixed a bug that Radius settings did not apply to bandits.
- Fixed a bug the army come to the reinforcements if a party that had not yet reached the army came to the reinforcements.
- If reinforcements are not coming because the player is too advantageous, no message will be displayed.

V1.2.1
- This version was reworked as an unintended bug appeared in V1.2.0 version.

V1.2.2
- I've added more codes to make sure the reinforcements are the player's party.
- Fixed an error in code inspecting duplicate parties in the army.

V1.2.3
- Turkish translation modified. (Thanks for Kayra5454)
- If the bandit is not involved in the battle, it does not print reports from scouts.

V1.2.4
- Delete the function that only scouts used to notify about the arrival of reinforcements.
- Changed the logic of finding someone to notify about the arrival of reinforcements.
- Added code to prevent possible CTD when ending a battle in the middle.
- Code has been added to prevent the problem of duplicate parties already added and being registered as candidates.
- Added a feature that doesn't display pop-ups. It can be set in config.xml.
- Added a function to lengthen the timer setting by automatically checking whether RBM is on at your modlist.
- Therefore, when you are using RBM, you don't have to set any things in config.xml.
- Added Italian language. (Thanks for Reyngade)
- Remove duplicate files in Turkish.

V1.2.5
- Fixed an issue that occurred when there were too many objects on the battlefield.
- Those who helped with the translation.
/   English - by ArtemYouTube  /   Korean - by shrmsgud147   /   Chinese - by AlphyKimIp   /   Spanish - by hiyimadante  /   Russian - by VVL99   / 
/   French - by Charly30   /   Turkish - by turan61273kolpamanKayra5454   /   Belarusian - by khornau17   /   Português brasileiro - by madamer   /
/   Japanese - by 4lga6a5ka   /   Italian - by Reyngade   /

V2.0.0 ~ V2.0.2
- The code has been rewritten.
- Various safeguards have been implemented to prevent the generation of too many entities that exceed the engine's limitations.
- When searching for nearby parties, calculations no longer rely on a straight-line path that ignores terrain such as mountains and seas.
- All types of parties within a larger radius are now considered. While the chance of caravans or villagers intervening remains low, it is not zero.
- The algorithm has been improved to allow more customization of the time it takes to arrive.
- Travel time now takes into account the speed of each party.
- Reinforcements are initially generated immediately but are now created after the reserve forces of existing parties are depleted.
- Party troop allocation is now divided into two stages: troop assignment and troop summoning.
- If one side gains a significant advantage, reinforcement generation will stop to prevent unnecessary entity creation.
- As the number of reinforcement parties in a battle increases, the probability of subsequent parties joining decreases slightly, preventing an excessive number of parties from becoming involved in a single battle.
- Reinforcements now always appear at the edges of the map.
- However, this has not been fully tested on all maps and will need further observation.
- Async is no longer used and has been standardized to the game's Tick system.
- Resolved errors that occurred when a battle ended while reinforcements were still being spawned.
- All dialogues have been rewritten. Clan and faction information is now more likely to be provided.
- Various variables have been applied to the dialogue to reduce the number of lines requiring translation while increasing expression diversity.
- Dialogue will no longer appear if a party decides not to come as reinforcements.
- Adjusted the horn sound effect that plays when allied reinforcements arrive and an option to toggle the horn sound on/off has been added.
- The issue with incorrect gender display has been resolved.
- A problem occurring during party searches has been addressed.
- Excessive spawn restrictions have been adjusted to prevent them from being applied when troop numbers are too low during battles.

V2.1.0
-The description of this mod has been updated. Please refer to the details in the description for more information.
- Now, players and enemies can join their respective teams based on specific variables. 
- The algorithm for party recruitment has been restructured. The formula for calculating battle balance and the recruitment score has been revised. 
- Scores are now calculated dynamically, following the gradient of the mathematical formula.
- The five traits have been further refined to affect the outcomes more granularly
- The method of calculating relationship scores has been improved to apply to a wider range of scenarios.

For example:
- Scores are no longer solely based on the player's.
- The leader of the enemy faction and their relationship with the party seeking to join are now taken into account.
- Even if the player has no significant relationship with the party, the score may vary based on the enemy leader, increasing or decreasing the likelihood of recruitment.
- If the player attacks civilians or caravans, interest levels will generally decrease.
- However, attacking enemy civilians or caravans will likely increase the chance of others joining to defend their citizens.

V2.1.1 ~ V2.1.6
- Slight adjustment of figures and probabilities.
- Fixed a crash that occurred when attempting to raid the village.
- Automatically turns off the function when the battle scene is Naval Battle. (for compatibility)
- Miscellaneous little bugs fixed.
- The title of the leader has been manually assigned.
- If a title for the culture cannot be found, it will attempt to use the title assigned by the game.
- Minor bug fix
- The issue where the army couldn't be registered as a participation candidate has been fixed.
- When searching for parties, I added more filters and implemented higher-level exception handling.
- Language has been added - Simplified Chinese and Traditional Chinese

V2.1.7
- Review of the logic related to the army and the first reinforcements.

V2.2.0
- The error that occurred when a army of less than 500 units decided to participate in the battlefield has been fixed, and the logic has been restructured. 
- Additional exception handling has been implemented to check for errors when accessing data structures or retrieving data. 
- The error in power balance calculations under specific circumstances has been corrected. 
- An issue with penalties being incorrectly calculated when the number of entities on the battlefield became too large has been fixed.
- An option has been added for siege battles.
- However, since it has not been fully tested, it has been left as a beta test option until more information can be gathered for future updates. 
- The setting can be changed in the config.xml file, but for convenience, two separate files have been provided.

More Information About the Siege Scene:
- Both defenders and attackers are involved. Both the defenders' and attackers' reinforcements appear from outside the walls, not from the in-castle.
- Attack reinforcements do not spawn on horseback to attack the walls, but defender reinforcements spawn on horseback since they do not need to attack the walls. (This may change in the future, but it is the case for now.)

V2.2.1 ~ V2.2.3
- Fixed a bug citizens and caravans joined sieges.
- Fixed a problem that didn't make a horn sound in the siege.
- Fixed a bug that didn't reflect the all of parties' power of the army when calculating the balance score.

V2.2.4
Bug Fixes
Loot is no longer 99% acquired by the player.
A simple system log is now displayed when choosing not to participate in a battle.
Fixed a bug where a siege battle would not end even when no defenders remained.

Adjustments
Relationship scores in sieges now take into account the relationship with the settlement owner.
The probability of a party participating in battles has been slightly reduced in all cases.
Default radius setting changed from 50 to 60.
Timers have been slightly slowed down overall.
Armies now incur a timer penalty, and the total score required for participation has been slightly increased.
In sieges, where battles take longer than field battles, a slight timer penalty is applied accordingly.

V2.2.5
- Reviewed reinforcement spawn positions on the battle map and adjusted the logic to ensure invalid spawn locations are not selected.
- If multiple valid spawn locations are available, reinforcements may approach from different directions.
- Revisited a bug where battles would not end if the enemy was the defending team in a siege and reinforcements had arrived.
- Added logic for parties attempting to join the defending team in a siege to be registered as candidate parties instead of simply leaving when necessary. Candidate parties will join the battle if they are deemed capable of winning.

V2.2.6
In version 2.2.5, although it wasn't a critical bug, the spawn points were assigned somewhat randomly without considering the initial spawn points of the allies and enemies. This was adjusted because it was a bit far from my intended design. Now, when there are enough appropriate spawn points depending on the map, the spawn points will retain a slight randomness, but reinforcements will spawn near the boundaries closer to the initial positions of the attacking or defending teams.

V2.2.7
- Added additional exception handling to prevent null reference errors.
- Implemented new logic to apply penalties when a party's influence is either too low or too high for the current battle. This prevents irrelevant parties (e.g., civilians or large armies) from interfering in battles that they have little to no impact on, such as small-scale skirmishes or battles where the participation of a massive force would be unrealistic.



Summary of Major Updates from Version 1.2.5 to Version 2.2.6

1. Stability Improvements
Stability issues have been addressed, particularly regarding reinforcement spawn timing and entity count adjustments. The system now operates much more reliably than previous versions.

2. Reinforcement Spawn Locations
Reinforcements no longer spawn in the middle of the map. They will now always spawn near the boundaries closer to their respective teams.

3. Loot Distribution
The issue where players were able to obtain 99% of the loot because reinforcements did not take their share has been resolved. Reinforcements will now claim their portion based on their contribution.

4. Enhanced Battle Join Calculations
The calculation for arrival time now takes party speed into account, with a formula that increases travel time as the distance grows. The mathematical formula for calculating factors when joining battles has been refined. It now accounts for battle advantage, relationships, social connections, and character traits in greater detail.

5. Expanded User Settings
More detailed customization options, such as party detection radius, arrival time, probability of joining the player's team, and probability of joining the enemy team.

6. Dialogue Improvements
Various variables have been implemented in dialogue to reduce the number of lines requiring translation while enhancing the diversity of expressions.

7. Pathfinding Enhancements
When searching for nearby parties, calculations no longer rely on a straight-line path that disregards terrain such as mountains and seas. Parties within a radius approximately three times larger are now searched, making your battles even more unpredictable.

8. Reinforcements in Siege Battles
Reinforcements now function in siege battles. They will spawn outside the walls for both the attacking and defending teams. (Beta)



I uploaded a template for translation.
The list of languages currently in need of support. I look forward to your help!
(French, German, Japanese, Italian, Turkish, Spanish, Portuguese-Brazilian, Russian, Polish).

Supported languages
English - by ArtemYouTube
Korean - by mod author
Simplified Chinese - by AlphyKimIp
Traditional Chinese - by AlphyKimIp

Notice


This mod has been designed for users who do not use BattleSize mod and use battle size of 1000. Users who use the BattleSize mod or prefer smaller battle sizes should exercise caution when using this.
If you absolutely must use BattleSize mod, it is highly recommended to significantly lower the upper limit for field battles, especially where cavalry units are involved. A range of 1100 to 1200 is advised. For siege battles, where cavalry units do not appear, there is slightly more flexibility, and a range of 1300 to 1400 can be used. However, please note that using BattleSize mod is generally discouraged.


Introduction


One of my main frustrations while playing Bannerlord was that nearby enemy or allied parties had no impact on battles unless they were within a certain range when the battle began.
This mod makes it possible for nearby parties to consider the situation and join your battle in progress.

No requirements mod. This mod can be installed or uninstalled mid-playthrough.



Details


Party Detection
When a battle starts, nearby parties within a certain radius are registered as candidates to join the battle.
Parties not involved in a war with either side are excluded from consideration.
If the parties are occupied with other tasks or specific conditions are met, they are also excluded.

Arrival Time Calculation
The arrival time is determined based on the distance between the battle site and the party, as well as the party's movement speed.
You can configure these settings in the config.xml file.
If you are using RBM (Realistic Battle Mod), which generally extends battle durations, the mod will automatically detect it and adjust settings accordingly.

Decision Factor 1: Battlefield Conditions
Parties considering joining the battle will evaluate the current conditions.
Favorable conditions for their side will earn them points.
Unfavorable conditions for their side will deduct points.
As a result, they are more likely to join battles they perceive as winnable and less likely to join hopeless fights.

Decision Factor 2: Relationship Score
The relationship between the joining party and the leaders of both the player and the enemy teams affects their decision.
If the joining party has a good relationship with the allied team’s leader, they gain points.
If they have a bad relationship with the allied team’s leader, they lose points.
Conversely, a good relationship with the enemy team’s leader deducts points, while a bad relationship with them adds points.
The likelihood of joining increases if the joining party has strong ties to allies or a grudge against the enemy.
This variable involves three factions (Allies, Joining Party, Enemies), so it changes depending on the situation.

Decision Factor 3: Social Score
The social relationships of each party also affect the score.
Blood relatives, members of the same clan, or the same faction gain points.
Attacking civilians or caravans will prompt lords of the opposing faction to intervene to protect their citizens.
Slightly more points are awarded for joining against bandit groups, as they are considered public enemies.
Relationships with individual heroes are also considered, but they are weighted differently depending on the opposing faction.

Decision Factor 4: Character Traits

Valor:
High Valor:
Disadvantage penalties are offset by:
30% at Level 1
50% at Level 2
Low Valor:
Disadvantage penalties are increased by:
30% at Level 1
50% at Level 2

High Valor increases the likelihood of joining disadvantageous battles, while low Valor decreases it.

Mercy
:
High Mercy:
Increases the chance of joining to protect caravans, civilians, or those under attack by bandits. Increases relationship score bonuses by:
10% at Level 1
15% at Level 2
Low Mercy:
Increases the likelihood of interfering in any battles by:
5% at Level 1
10% at Level 2

High Mercy leads to helping the weak, but if you become a raider, they will stand in your way.

Generosity:
High Generosity:
Increases relationship score bonuses by:
30% at Level 1
50% at Level 2
Low Generosity:
Decreases relationship score bonuses by:
30% at Level 1
50% at Level 2

High Generosity values significant relationships more, while low Generosity ignores them.

Calculating:
High Calculating:
Disadvantage penalties are increased by:
15% at Level 1
30% at Level 2
Low Calculating:
Disadvantage penalties are offset by:
15% at Level 1
30% at Level 2

High Calculating improves decision-making accuracy, while low Calculating increases the likelihood of misjudgment.

Honor:
High Honor:
Increases same-faction bonus score factor by:
50% at Level 1
100% at Level 2
Low Honor:
Decreases same-faction bonus score factor by:
50% at Level 1
100% at Level 2

High Honor prioritizes duty to the faction, while low Honor neglects such responsibilities.

Dialogue and Other Features
When reinforcements arrive, a horn sound is played, and a message notifies you of their arrival.
Bandits will taunt upon arrival.
Reinforcements spawn at the map’s edge.
Allied reinforcements charge into battle, while enemy reinforcements follow the enemy AI’s orders.

Expected Benefits
Dynamic battlefield conditions introduce more varied and challenging combat scenarios for players.
Encourages players to either finish battles quickly or adopt delay tactics to wait for reinforcements.
Enhances role-playing experiences by making relationships with NPCs more significant.
Traits are more impactful, adding depth to character development and strategy.



Installation

Manual Installation
Download the mod, and unzip.
Drag and drop the mod folder onto the Mount & Blade II Bannerlord\Modules directory.
Check the mod in the game launcher.

Vortex Installation
Download and enable, the same way as with other mods.
It will remain the latest version except Beta version.