I've tinkered around with descr_diplomacy and descr_campaign_ai_db but haven't managed to make the AI accept being a protectorate of player faster. Please help.
I've tinkered around with descr_diplomacy and descr_campaign_ai_db but haven't managed to make the AI accept being a protectorate of player faster. Please help.
If you put it so that the AI wants to be a vassal under most situations in the descr_campaign_ai_db that will accomplish what you want.
The AI Workshop Creator
Europa Barbaroum II AI/Game Mechanics Developer
The Northern Crusades Lead Developer
Classical Age Total War Retired Lead Developer
Rome: Total Realism Animation Developer
RTW Workshop Assistance MTW2 AI Tutorial & Assistance
Broken Crescent Submod (M2TW)/IB VGR Submod (BI)/Animation (RTW/BI/ALX)/TATW PCP Submod (M2TW)/TATW DaC Submod (M2TW)/DeI Submod (TWR2)/SS6.4 Northern European UI Mod (M2TW)
I'm trying, but this does not make sense to me.
I well exceeded the 'max_entry' seiging down Scotland's last town with 10 units to their last 1. They still considered being a protectorate very demanding.Code:<decision_entry> <!-- if we're at war && he borders all our groups && his frontline strength is more than thrice as large as ours && his free strength is more than four times as large as ours, AND IS NOT OUR SHADOW FACTION >>> propose become protectorate --> <min_entry stance="AtWar" borders_all_our_regions="true"/> <max_entry frontline_balance="0.3" free_strength_balance="0.3" production_balance="0.5" target_is_shadow="false"/> <faction_attitude defense="defend_deep" want_peace="true" want_be_protect="true" alliance_against="7"/> </decision_entry>
Why do you have production balance in there? That is for producing units I thought, were you producing units?
Try moving that decision to the top as well, since those first entries are evaluated before the others.
The AI Workshop Creator
Europa Barbaroum II AI/Game Mechanics Developer
The Northern Crusades Lead Developer
Classical Age Total War Retired Lead Developer
Rome: Total Realism Animation Developer
RTW Workshop Assistance MTW2 AI Tutorial & Assistance
Broken Crescent Submod (M2TW)/IB VGR Submod (BI)/Animation (RTW/BI/ALX)/TATW PCP Submod (M2TW)/TATW DaC Submod (M2TW)/DeI Submod (TWR2)/SS6.4 Northern European UI Mod (M2TW)
Thanks, i thought production was something about economy. Unfortunately after deleting it i get the same result.
Did you move the decision to the top?
I would go bare bones instead. Remove the front line and free strength, front line relates to your actual border with them amd free strength to armies outside your town.
Military balance is probably better for what you want.
You also have borders all regions which means you surround them. You have something in about shadow targets (rivals) which is overcomplicating things since Im not sure you are aware shadow is set in another file.
The AI Workshop Creator
Europa Barbaroum II AI/Game Mechanics Developer
The Northern Crusades Lead Developer
Classical Age Total War Retired Lead Developer
Rome: Total Realism Animation Developer
RTW Workshop Assistance MTW2 AI Tutorial & Assistance
Broken Crescent Submod (M2TW)/IB VGR Submod (BI)/Animation (RTW/BI/ALX)/TATW PCP Submod (M2TW)/TATW DaC Submod (M2TW)/DeI Submod (TWR2)/SS6.4 Northern European UI Mod (M2TW)
Here is the way through campaign_script
http://www.twcenter.net/forums/showthread.php?642934
One little tale about vassals that ltgd.log tells - MTW2 engine restricts invasion_decisions calculations for vassal faction, only defend_decisions allowed. Such a pity thing for game in medieval timeframe. So probably you don't want to have too many passive factions on campaign map.
Vassal through descr_campaign_ai_db works just fine, just set clear and strait conditions, borders_all_our_regions sometimes fires at strange times, so military_balance and num_settlements are your choice.
Huh. Interesting find, confirms with hard evidence what most people talked about (vassals not really doing anything).
The AI Workshop Creator
Europa Barbaroum II AI/Game Mechanics Developer
The Northern Crusades Lead Developer
Classical Age Total War Retired Lead Developer
Rome: Total Realism Animation Developer
RTW Workshop Assistance MTW2 AI Tutorial & Assistance
Broken Crescent Submod (M2TW)/IB VGR Submod (BI)/Animation (RTW/BI/ALX)/TATW PCP Submod (M2TW)/TATW DaC Submod (M2TW)/DeI Submod (TWR2)/SS6.4 Northern European UI Mod (M2TW)
Well, it's not quite right. Defend_decisions are still executed as I mentioned here https://www.twcenter.net/forums/show...1#post15997091
Seems that trusted_ally_enemy condition not used often in ai_labels. Vassal and his master are Allied and always are trusted_allies. I got defend_frontline for trusted_ally_enemy in my code, so I got those behavior of vassal as described by link above.
I wonder if defend_raids orders to raid own territory or enemy? If so, we got a window of possibilities to script proactive vassals.
Here is the proof from ltgd.log Last defend decision for faction and next line about invasion part.
Code:[ai.ltgd] [info] <28> LTGD: decision parameters 'aztecs' (ai_label:default) vs faction 'saxons': [ai.ltgd] [info] <28> military: frontline_balance 1, military_balance 0.576006, military_balance_plus_enemies 0.224507, alliance_military_balance 0.576006, free_strength_balance 3.29229e-005 [ai.ltgd] [info] <28> faction standing: faction_standing -0.0705402, target_faction_standing -0.115176, global_standing 0.987761, target_global_standing 0.775444 [ai.ltgd] [info] <28> diplomacy: stance Neutral, num_enemies 1, target_num_enemies 1, has_alliance_against 0, num_turns_allied 0, num_turns_ceasefire -1 [ai.ltgd] [info] <28> trusted_allies: trusted_ally 0, trusted_ally_enemy 0, trusted_ally_protectorate 0 [ai.ltgd] [info] <28> protectorate: is_protectorate 0, is_protectorate_of_catholic 0 [ai.ltgd] [info] <28> papal: excommunicated 0, enemy_excommunicated 0, has_ceasehostilities 0 [ai.ltgd] [info] <28> neighbour: is_neighbour 0, target_weakest_neighbour 0, strongest_neighbour 0, borders_all_our_regions 0 [ai.ltgd] [info] <28> win conditions: is_faction_to_outlive_target 0, is_target_faction_to_outlive 0 [ai.ltgd] [info] <28> misc: production_balance 8.34314, target_religion 0, target_faction saxons, num_settlements 2 [ai.ltgd] [info] <28> rand 0.141789, difficulty hard, turn_number 90 [ai.ltgd] [info] <28> most_desirable 0, target_human 0, target_is_shadow 0 [ai.ltgd] [info] <28> LTGD: (default) defend decision: defend = defend_normal, defend_priority = -1, at_war = 0, want_peace = 0, want_ally = 0, want_be_protect = 0, alliance_against = 0, pts_alliance = 0 [ai.ltgd] [info] <28> LTGD: we (aztecs) we are a protectorage of (cumans) and hence invasions are disallowed
Interesting findings during CAI tests for BC 6.3 local submod.
Here we see Galich (golden lion on blue field sigil) is vassal of Cumans
When Cumans at the same time are vassals of Hungary.
And old rule "my vassal's vassal is not my vassal" works here - Galich is not ally of Hungary.
But anyway this is useless because of invasion restrictions for vassal faction.
Yea, found out the same thing a year ago.. I suppose will be easier for ppl to understand if its done in english, hence my pic below
(https://www.moddb.com/mods/unofficia...abled#imagebox)
Well, I suppose for now we have to stick the papacy, as the only way to represent something resembling the vasal mechanics.
Though, also figured that perhaps using the give_settlement mission could be used to represent vassal mechanics a bit... AI can accept/deny these as well, so the one giving the mission could be the ruler/emperor/king to his historical/lore vassals, so sometimes they would give him land...
BTW, have anyone actually ever succeded in creatig some reliable scripted vassal mechanics (withot using the actual vassals)? I suppose its not entirely impossible, but would require a lot modification to AI label and diplomacy/faction standings? I suppose using trusted_ally as the liege it cold work well? Using the link_mission_id we could also kind of create vassals throughout the game, but would require a lot of variations for more factions...
Last edited by Jadli; March 26, 2021 at 05:00 AM.
I've had some minimal luck with vassals defending their lord's lands. They won't attack per-say but they will attack enemy armies in their territories.
Make "military_access" cheap in descr_diplomacy, this usually results in allied (or vassal) factions giving each other military access, so they enter each other's land without an invade decision.
defense type to "defend_raid" in the ai_db.
Works best with script-link faction ai to a "vassal" setting so all defend defense is set to "raid" and make sure they don't want any alliances, except, perhaps, "trusted_ally_protectorate"
Not ideal, but at least vassals are generally useful and somewhat active. Only somewhat though, since a vassal gives all it's excess income to their lord faction, they don't have much to work with.
The problem with scripting in a specific vassal behavior would be the AI's ability to recognize it's own vassal without them actually BEING a vassal. Unless you make alliances air-tight there is the likely event that an AI faction will attack it's own vassal because of it's weakness.
Major downside of making military_access too cheap is human exploit and for all I know it's automatic with vassals, so maybe that part isn't even needed. A better alternative would be using Withwnar's method to ask for access when a faction becomes another's vassal if that part is needed.
I have not really dedicated a lot to vassals, so that's as far as I've gotten, I might re-visit the subject in the future, but am currently working on other projects.
Last edited by CavalryCmdr; June 02, 2021 at 05:11 AM.