SP Viking Conquest Balance Mod 13

Users who are viewing this thread

Dhamon said:
I used the tweak.ini provided in the source zip, are those the default tweaks enabled in the balance mod, right?

Yep! Those go back to the 2.0 version. Basically, in 1.0 Balance Mod was just a morgh's editor unit and item mod. In 2.0 it graduated to Morgh's + tweaks from the Tweaks Tool + a few rewritten bits of code like bandit spawns being random.

Kalarhan really did something amazing by making the Tweaks Tool. Aside from the included tweaks, it lowers the barrier of entry to doing your own modding by setting up the compiling and such, so at that beginning stage you can just make a few edits to the code and then click an exe. Without that initial help in overcoming inertia, Balance Mod likely would have never gone beyond a Morgh's editor troop and item mod.

Dhamon said:
I like it because it feels more historically correct. ancient battles rarely had more than 50% of casualties, and there are examples in which battles were win by tactically routing the other army without any bloodshed. Last man standing battles were a rare exception. 

Yep, that's the kind of feedback players were giving me on reddit when they requested the routing changes. But of course gameplay results always take precedence, and I tend to be pretty conservative in my modding, so I went pretty cautious and only made moderate changes. Changes were along the lines you suggest--elite units more stalwart, low level more cowardly.

Dhamon said:
Maybe, is there a way to diminish the speed boost given to routing units? it seems a bit much, also given that they don't drop weapons or armor.

That's a great idea. Definitely will mark this for implementation in any next version of Balance Mod.
 
Tingyun said:
That's a great idea. Definitely will mark this for implementation in any next version of Balance Mod.

Do you use any git-based repository for the source? I was considering making some changes for myself, so I could sent a pull request in case 
 
Dhamon said:
Maybe, is there a way to diminish the speed boost given to routing units? it seems a bit much, also given that they don't drop weapons or armor.
That's actually my main gripe with the mechanic and the reason why I chose to disable it altogether.

I fully agree that making every battle last until complete annihilation is not even remotely realistic. But neither is giving routing units infinite superhuman running speed and stamina. In a life-and-death situation your body will release substances like adrenaline that can indeed increase your capabilities for a short while. But those effects often only last for 1-2 minutes. This duration is way too short to reliably escape from a battlefield. Given that everything in M&B battles happens in a greatly condensed timeframe (you wouldn't fight a large battle in 5-10 minutes in real life), the speed boost should probably only last 10 seconds or so. After that the speed should be lowered (because of exhaustion) so that your units have a realistic chance to still catch up. Routing units also don't seem to be affected by stamina anymore, I've seen heavy armor guys sprint across the whole map without slowing down.

Yes, you could counteract this to an extent by having mounted units in the back for this sole reason, but I hate to employ units that I can't use most of the battle. And if you decide to use them they'll get dismounted way too fast, cause horses go down from 2 slingshot hits or one well-timed melee hit.

Dhamon said:
I like it because it feels more historically correct. ancient battles rarely had more than 50% of casualties, and there are examples in which battles were win by tactically routing the other army without any bloodshed. Last man standing battles were a rare exception. 

The problem is, real life battles are not fought for XP. The only goal is to win and further your cause. In M&B we need to feed our units XP, especially our companions. If the enemy starts to fully retreat at 50% troop strength, chances are that 20-25% will escape you in every single battle. This means you get 20-25% less XP and less proficiency points, that's the core issue. I don't really care for the loot, getting money has never been a problem in this game. If the routed units would still give XP, then I might be fine with it. I'm not a fan of trying to convert M&B into a real-life simulator. The core game is way too "gamey" to ever be able to replicate real life scenarios. It's an action-adventure and always will be, just like EU4 will never be able to simulate real-world power struggles. And while the Reddit crowd is almost always the most vocal group in terms of feedback, in many cases they only represent the "hardcore" (make of that what you will) players and don't necessarily speak for the majority of the playerbase.
 
Hi, i will start off by saying that i love your mod, I will not play VC without it.

However there is a very small detail that bugs me.

In the Kingdom of Danmark you have assigned Ingun to be married to Jarl Sigfrid Angantyrsson and jarl Bagsecg (now Jarl Einarr) to be their son.

But in the wikipedia, it states that Ingun is the wife of Halfdan Angantyrsson and that Jarl Bagsecg is the son of Ingun, and that Halfdan has fathered himself to Bagsecg. which seems fitting as Ingun has a age of 42 and Halfdan is 47, while sigfrid is 62.

Now i have been trying to find answers on how to correct this myself in the files.
But whenever i search for something about changing family relations for mount and blade, it is always something about vanilla warband and not VC, and the files does not look the same at all. Not in my eyes at least.

Would you be kind enough to perhaps give me a small (but detailed) torturial (because i am new to modding) on how i can change this?
so that Ingun will be the wife of Halfdan Angantyrsson and Bagsecg will be their son.

I wish you a wonderful day my friend, and great work with the mod. It is truly astonishing
 
Dhamon said:
Do you use any git-based repository for the source? I was considering making some changes for myself, so I could sent a pull request in case

No, but not opposed to setting one up if people want to collaborate (which would be great).

I'd love to see whatever you do for your version. You are welcome to set something up for your fork, or send me the files privately, anything works.
 
DeSoto said:
But neither is giving routing units infinite superhuman running speed and stamina.

Agreed, I've been convinced. For any future version I will find where VC applies the speed boost to routing units and either dramatically reduce it, remove it, or put it on a timer.

DeSoto said:
This means you get 20-25% less XP

Balance Mod does give +50% combat xp for the player's troops compared to vanilla VC. Basically I wanted the player army to level up faster from combat compared to relying on passive means of getting elite units (I slightly nerfed the refuge training mechanic, and made experienced troops less likely as direct recruits).

But point taken, I will reduce the routing speed in any future version.

DeSoto said:
I'm not a fan of trying to convert M&B into a real-life simulator. The core game is way too "gamey" to ever be able to replicate real life scenarios.

Agreed, and I have argued this perspective before when rejecting suggestions that go too far into realism territory. I do think there is sometimes room for realism to create better immersion and fun in some specific situations, but in some ways Balance Mod is intentionally made less realistic than vanilla VC (ie, when I made AI lords recruit far more elite armies than they do in vanilla VC, I knew I was sacrificing historical realism in favor of gameplay).
 
Hårfager said:
Hi, i will start off by saying that i love your mod, I will not play VC without it.

Thanks, glad you enjoy it!

Hårfager said:
However there is a very small detail that bugs me. In the Kingdom of Danmark you have assigned Ingun to be married to Jarl Sigfrid Angantyrsson and jarl Bagsecg (now Jarl Einarr) to be their son

But in the wikipedia, it states that Ingun is the wife of Halfdan Angantyrsson and that Jarl Bagsecg is the son of Ingunit states that Ingun is the wife of Halfdan Angantyrsson and that Jarl Bagsecg is the son of Ingun

Thanks for reporting, I will look into that family relation if I release another version in the future.

Hårfager said:
jarl Bagsecg (now Jarl Einarr)

There is a Konungr Bagsecg in Northymbria. I think Bagsecg basically got put into the game twice, once in Danmark and once in Northymbria, so I renamed the Danmark one for the character from the 1958 movie "The Vikings"

Hårfager said:
Would you be kind enough to perhaps give me a small (but detailed) torturial (because i am new to modding) on how i can change this?
so that Ingun will be the wife of Halfdan Angantyrsson and Bagsecg will be their son.

Sure, open module_troops.py. Find the all the designations for characters you want to change relationships for (for example, Einarr is "knight_1_2"). Write those down. Open module_scripts.py. Use ctrl F to find all their family relationships, and switch them however you like. For example:

(troop_set_slot, "trp_knight_1_2", slot_troop_mother, "trp_kingdom_1_lady_4"),
(troop_set_slot, "trp_knight_1_2", slot_troop_father, "trp_knight_1_1"),

Defines Einarr's parents. Make sure to check for ALL mentions of each character (for example, marriages get defined twice, once for each spouse).

Any changes here will only effect future new games (not current saves). You could change them in a current save with a save editor, but I really think that is much more trouble than worth, and risks breaking your save if you mess up, and for any current save I would advise you just imagine the very sparse historical record got the identity of Ingunn's spouse wrong (or that there were two Ingunns, etc).

Honestly, you could probably skip all of the above and just renname Ingun in troops.txt to any other name (that should take 30 seconds and avoid the need to do any compiling or anything). Or you could go a step further, rename her and also assign the Konungr Bagsecg as Halfdan's son, and adjust their starting ages if needed, but that requires editing the .py files and compiling.
 
Thank you for the respond my friend. Now this might be a stupid question but when i am trying to open up one of the ''.py'' files it asks me to open with a specific program. Which program do i need to open it with?

 
Tingyun said:
I use Notepad++ , which is free: https://notepad-plus-plus.org/

any text editor will do, but like @Tingyun said Notepad++ and similar ones can enrich the presentation if you select Python as the language (it will color code things, easier to see mistakes and all)

Sublime Text is a great option as well. It is free, and has a addon for MBScript (better than using Python as the language) https://forums.taleworlds.com/index.php/topic,320675.msg7576884.html#msg7576884

 
Okay thanks once again.

Now a thing i don't get is. i have changed

(troop_set_slot, "trp_knight_1_2", slot_troop_mother, "trp_kingdom_1_lady_4"),
(troop_set_slot, "trp_knight_1_2", slot_troop_father, "trp_knight_1_1"),

into

(troop_set_slot, "trp_knight_1_2", slot_troop_mother, "trp_kingdom_1_lady_4"),
(troop_set_slot, "trp_knight_1_2", slot_troop_father, "trp_knight_1_3"),

trp_knight_1_3 is Halfdan's ID

And i have also set, Halfdan and Ingun to be spouses

I have saved the changes. But when i start up a new game it still shows that Sigfrid is the husband of Ingun and father of Bagsecg
What have i done wrong?
Should i just save the files as is when i am done?
Or do i need to extract the Module_script.py to somewhere else in order to get the effects to work in game?
 
kalarhan said:
Sublime Text is a great option as well. It is free, and has a addon for MBScript (better than using Python as the language)

That looks great, I will look forward to trying it out as well!

Hårfager said:
Or do i need to extract the Module_script.py to somewhere else in order to get the effects to work in game?

Hårfager: You need to compile, which generates the .txt documents that go in your VC folder.

First, download and set up Kalarhan's VC Tweaks Tool 1.2: https://forums.taleworlds.com/index.php/topic,348186.0.html

Then, download the Balance Mod source files and follow the instructions in the download (involves steps before and after compiling). The download also includes a default tweaks.ini file, but best is to configure your own to whatever rules you prefer: https://www.moddb.com/mods/vc-balance-mod/downloads/vc-balance-mod-110-module-files-for-creating-submods

Then you can make whatever changes you like, select new tweaks, and compile.
 
Hey Tingyun,

Don't know if you remember me but i'm so glad you are still working on this amazing mod, last time i played was with 5.0
Can't wait to try out the current version.

I was wondering if anyone has made something like this https://forums.taleworlds.com/index.php?topic=320281.0 but for your mod?
Don't know if memory serves but i thought you changed some attributes right, concerning character creation?
 
Hi Sneeper,

Glad to see you again!

Here’s a summary:

[quote author=Tingyun]
Starting choices still mostly work like in vanilla VC. The only changes are these:

1) In Vanilla VC, some virtue and personality choices gave more stat points than others, with the difference between optimal and suboptimal choices being 3 stat points. That would be nothing in Warband, but in VC, that represents 15 levels worth of stat points, and a serious impact on a character’s potential. So I buffed the suboptimal choices so that they give the same stat points as the optimal choices. The optimal choices were not changed, so total player power is the same as a min-maxing player, but without the need for spoilers and restricted choice. Exact numbers here: https://forums.taleworlds.com/index.php/topic,373658.msg8945102.html#msg8945102

Note that this couples with another change, where I made in-game stat boosts not missable because of lack of spoilers or random chance. So, for example, the Druid sacrifice always works, and the build a building to get +2 stat points random event no longer requires money (so that it isn’t restricted to spoiled players who know to always carry large amounts of gold)

2) Female starting stat boosts are made the same as male, so they get the same strength/agility, rather than an intelligence/charisma boost. This is for 3 reasons: 1) charisma boost from vanilla VC probably make less sense than the standard male str/agi boosts, as it gets more at how the world reacts to you, and whether your soldiers and other lords consider you a viable leader, which given certain realities of society at the time should not be higher for a female PC 2) the female PC is by definition an exceptional being, and if a player wants to role play a very powerful female fighter, nothing should limit that option 3) there is more of a base strength/agility need, and more int/cha stat boosts in creation going beyond the base needed there, meaning this change increases female PC player choice in overall builds, while the int/cha boost was leaving them more limitied

Nothing else is changed, and everything else works the same as in the vanilla guides. All skill boosts are the same as vanilla (player gets those skill points fast enough at leveling up I thought it ok to leave suboptimal choices in), and age still penalizes a player who starts very young or old with less total stat points exactly the same as vanilla VC (as such a penalty is logical, and the text of the middle age clues the player in to it being optimal, so it isn’t an opaque penalty for unspoiled players like the personality/virtue differences were)
[/quote]

https://steamcommunity.com/app/48700/discussions/6/1733210552677580787/
 
Ah thank you very much, i can't help but minmax when creating my character.

I have another question though, which does not necessarily have anything to do with the mod.
You know in the options there is an option to enable the need to rest or suffer morale loss.
Almost every other option says that it also affects the AI but this one doesn't.

So my question is if you enable the need to rest does the AI need to do it too? And do they?
 
Nope, the AI armies never need rest, they can tirelessly march across the map. But they do spend a lot of time staying within a town or castle, or patrolling and stopping every few moments, so I wouldn’t worry about that game option creating an imbalance between player and AI or anything, the AI lords remain effectively stationary long enough anyway, and even with the game option enabled the player can push their troops for days on end and just rest occasionally.
 
Hey it's Muir again. Following up on my homework from last time. To debugg/check I played as a Norsemen starting in friese I chose Norse on purpose because I wanted to test the recruitment in christian towns villages and castles. It took me a while to decide which faction to choose to be a mercenaryand  then a lord for. It came to me that Kingdom of Northymbre would be a fit since it has both pagan AND christian towns and villages and castles. Straight away I noticed that I could recruit 1-2 men at Christian castles starting at 15 relation and with the starting point at 150 renown. I had rank 5 leadership at that time. I found out that villages do have correct religion recruiting buffs because Mailros is a Pagan village. And at 20 relation and 150 renown I was getting about 20 troops/recruits consistently. It is a Bastion of the Pagan Faith. I Have just confirmed that at towns I can recruit tier 3 troops (spearman/companion) with 31 relation with it being "Pagans aren't welcome here"The Town is Bebbanburh. Note I am pagan and my renown is now at 403.I do not think with this mod I could recruit tier 3 troops with it being a christian town.  Can you Show me the code for both villages and towns? Just trying to figure this out. Because I was getting "Too" unlucky in the last post I made
 
Muirhied said:
It came to me that Kingdom of Northymbre would be a fit since it has both pagan AND christian towns and villages and castles.

Northymbria isn't a simple mix of pagan/christian centers--it is more a mixing of peoples within each center. Faith divides on a 100 point scale, Northymbria is the most complex manifestation of it, as most towns/castles/villages are individually defined to a place on that 100 point faith scale to represent different settlement patterns based on the time period and some plausible assumptions, and how that works differs between types of centers and individual locations.

Muirhied said:
I noticed that I could recruit 1-2 men at Christian castles starting at 15 relation and with the starting point at 150 renown.

Northymbria's castles tilt heavily pagan, representing greater Norse penetration into the military centers of the region. Still a sizable Christian presence, but not at all like castles in Christian nations (or Norse nations for that matter).

Muirhied said:
Mailros is a Pagan village

Yes, it is the one heavily pagan village in Northymbria, representing an isolated bastion of immigration of Norse leaning towards farming and more peaceful settlement.

The other Northymbrian villages still are very heavily Christian, far more so than the Northymbrian towns and castles, since the Norse at this point are assumed to have limited penetration into the countryside.

Muirhied said:
I Have just confirmed that at towns I can recruit tier 3 troops (spearman/companion) with 31 relation with it being "Pagans aren't welcome here"The Town is Bebbanburh.

As I mentioned in my previous post, local relations overcomes the religion effect, as the effect is applied after the religion ratio multiple. So the religious mistrust here has been overcome by the local relations, the townspeople trust you for what you have done for them, and you can recruit effectively based on local relations (though your general renown won't assist you that much still, as that is multiplied by the religion ratio).

Muirhied said:
I do not think with this mod I could recruit tier 3 troops with it being a christian town. 

As I explained in my prior reply, local relations and/or being the lord completely bypass the religion modifier.

Religion is not meant to be a permanent bar. It is meant to mean that you have to build local trust and develop your relations to get good recruiting. IE, the idea isn't to limit the player to any predefined pattern, but merely give starting conditions that create interesting choices. You have made the choice to build up local relations, so religion is no longer blocking you.

Muirhied said:
Can you Show me the code for both villages and towns?

The code for religion modifier is pretty much the same for all centers, so it works like the code I already showed you.

At any rate, the effects you describe above are exactly how everything is supposed to work based on starting religion levels. If you wanted to look up those starting religion levels, they are defined in module_scripts.py, though you would have to cross reference the centers list to get their names in game.

But better to just play and not worry about that. Things should basically be arranged in exactly the way you'd expect--Norse penetration where historically plausible, greater penetration in castles than villages, towns dependent on the particular history of the town. And recruiting should also be somewhat as expected--a fearsome reputaton among your faith helps with others of your faith, but local relations and reputation is what allows you to win over the people of another faith (ie, like Uhtred in Saxon Stories). Basically, adopting a roleplaying perspective might allow you to predict how things work better than trying to guess all the mechanics.
 
Tingyun said:
Dhamon said:
Do you use any git-based repository for the source? I was considering making some changes for myself, so I could sent a pull request in case

No, but not opposed to setting one up if people want to collaborate (which would be great).

I'd love to see whatever you do for your version. You are welcome to set something up for your fork, or send me the files privately, anything works.

Cool! Let me know if you make a github repo, I will gladly fork!
So, some of my modifications are more like personal taste, but some might be consider being incorporated into the mod.
For example, now that it's much easier to capture ships, it would be nice to know which type of wood they are made and which conditions they are. Also, the the capture text still showed "but due to the fight, the XXX is in a bad condition" even if the ships can now actually be in good conditions.

So here are my changes:
Q8ihL.png
K_T7c.png

It lets you know the wood type of the ship and its conditions before deciding if to add it to the fleet. And it does not imply that it was badly damaged when it's not.

Here is the code I've changed, from the module_game_menus.py:
Code:
    "ship_capture",0,
    "You are able to capture one of the enemy's ships. It's a {s2} made of {s3} wood, {s5} the fight, the '{s1}' is in {s4} conditions. Do you want to add this ship to your fleet?",
    "none",
    [
      (assign, ":blocking", 0),
      (try_begin),
        # Player only joined the battle?
        (eq, "$g_joined_battle_to_help", 1),
        (assign, ":blocking", 1),
      (else_try),
        # Player has room for another ship?
        (store_skill_level, ":cur_sea_king_skill", "skl_sea_king", "trp_player"),
        (val_mul, ":cur_sea_king_skill", 2),	#new skill adjust
        (val_min, ":cur_sea_king_skill", 7),	#new skill adjust
        (val_sub, ":cur_sea_king_skill", 1),
        (store_add, ":slot", slot_party_1_ship_type, ":cur_sea_king_skill"),
        (party_get_slot, ":ship_type", "p_main_party", ":slot"),
        (neq, ":ship_type", 0),
        (assign, ":blocking", 1),
      (else_try),
        # Player has luck?
        (party_get_skill_level, ":player_party_looting", "p_main_party", "skl_looting"),
        (store_add, ":chance", TWEAK_CHANCE_CAPTURING_SHIP, ":player_party_looting"), # 10% is basic chance (up to 20% with looting skill)
        (try_begin),
          (eq, "$easy_wage", 1),# VC-3003
          (val_mul, ":chance", 140),	#so up to 28%
          (val_div, ":chance", 100),
        (try_end),
        (store_random_in_range, ":rand", 1, 101),
        (gt, ":rand", ":chance"), # = no luck
        (assign, ":blocking", 1),
      (else_try),
        # invalid ship type entry (for example caused by VC-3658)
        (try_begin),
          (eq, "$player_team_in_sea_battle", 0),
          (assign, ":quest", "qst_team_1_ships"),
        (else_try),
          (assign, ":quest", "qst_team_0_ships"),
        (end_try),
        (quest_get_slot, ":ship_type", ":quest", slot_quest_1_ship_type),
        (this_or_next|lt, ":ship_type", ship_type_busse),
        (gt, ":ship_type", ship_type_byrding),
        (assign, ":blocking", 1),
      (end_try),
      
      (try_begin),
        (neq, ":blocking", 0),	# = no ship capture
        (jump_to_menu, "mnu_total_victory"),
      (else_try),
        # all is ok:
        (try_begin),
          (eq, "$player_team_in_sea_battle", 0),
          (assign, ":quest", "qst_team_1_ships"),
        (else_try),
          (assign, ":quest", "qst_team_0_ships"),
        (end_try),
        (quest_get_slot, "$ship_menu_current_ship_type", ":quest", slot_quest_1_ship_type),
        (store_random_in_range, "$ship_menu_current_ship_name", "str_ship_name_1", "str_ship_names_end"),
        (store_random_in_range, "$ship_menu_current_ship_quality", TWEAK_CAPTURED_SHIP_CONDITION_MIN, TWEAK_CAPTURED_SHIP_CONDITION_MAX),
        (quest_get_slot, "$ship_menu_current_ship_propertys", ":quest", slot_quest_1_ship_prop),
        
        (set_background_mesh,"mesh_pic_extra_viejo"),
        (str_store_string, s1, "$ship_menu_current_ship_name"),
        (call_script,  "script_get_ship_properties", "$ship_menu_current_ship_type"),
        (str_store_string, s2, reg7), #type_name
        (call_script, "script_decode_value", "$ship_menu_current_ship_propertys"),
        (assign, ":ship_wood", reg1),
        (try_begin),
          (eq, ":ship_wood", 1),
          (str_store_string, s3, "@oak"),
        (else_try),
          (eq, ":ship_wood", 2),
          (str_store_string, s3, "@pine"),
        (else_try),
          (str_store_string, s3, "@ash"),
        (end_try),
        (try_begin),
          (gt, "$ship_menu_current_ship_quality", 80),
          (str_store_string, s4, "@very good"),
          (str_store_string, s5, "@and despite"),
        (else_try),
          (gt, "$ship_menu_current_ship_quality", 60),
          (str_store_string, s4, "@good"),
          (str_store_string, s5, "@and despite"),
        (else_try),
          (gt, "$ship_menu_current_ship_quality", 40),
          (str_store_string, s4, "@acceptable"),
          (str_store_string, s5, "@and despite"),
        (else_try),
          (gt, "$ship_menu_current_ship_quality", 20),
          (str_store_string, s4, "@bad"),
          (str_store_string, s5, "@but due to"),
        (else_try),
          (gt, "$ship_menu_current_ship_quality", 5),
          (str_store_string, s4, "@very bad"),
          (str_store_string, s5, "@but due to"),
        (else_try),
          (str_store_string, s4, "@dangerous"),
          (str_store_string, s5, "@but due to"),
        (end_try),
      (end_try),
      
    ],
 
Dhamon,

That’s a clear improvement, great! Can I add it (and other improvements/code you might share in the future) to Balance Mod if I later release another version?

In the meantime, how would you feel about making a submod? It might be a while before I make another version (I might wait until VC releases a new patch, could be a long time). If you don’t want to host it yourself, I can host your submod as an optional file at the Balance Mod ModDB/Nexus pages. I am sure many players would be interested in trying out your various changes (I know you mentioned some are to personal taste, but others might have the same taste as well, and maybe nearly everyone would like them).
 
Back
Top Bottom