Hey guys,
I noticed in my 2.05a campaign that after rejecting Mauryan control, I never got the invading rebel armies. I see the turn count for the first one is 20 turns, and the random chance is 50%. Someone else in my Taksashila tips thread mentioned they never got invaded either, though it was on an earlier edition. As far as I can tell, 2.05c has the same Taksashila script. I don't know monitors that well, but look at this:
Code:monitor_event PreFactionTurnStart FactionType f_gandhara and I_LocalFaction f_gandhara and I_EventCounter ecGandharaEra > 0 and I_CompareCounter ecGenerateMauryan1 = 0 and not I_CharacterExists mauryan1 if I_TurnNumber > 20 and RandomPercent < 50 historic_event HE_MAURYAN_ARMY_ARRIVE factions { f_gandhara, } set_counter ecGenerateMauryan1 1 spawn_army faction slave, sub_faction f_gandhara character random_name, named character, age 32, x 509, y 167, direction W, battle_model indian_general, label mauryan1 traits CommandExperience 3 , GandharaWarriorC 1 , GandharaMagadha 1, HardToBribe 1 , HighPersonalSecurity 4 unit indian chariot archers exp 1 armour 0 weapon_lvl 0 unit indian elephant standard exp 1 armour 0 weapon_lvl 0 unit indian cavalry light exp 1 armour 0 weapon_lvl 0 unit indian cavalry light exp 0 armour 0 weapon_lvl 0 unit indian infantry macemen exp 1 armour 0 weapon_lvl 0 unit indian infantry swordsmen exp 1 armour 0 weapon_lvl 0 unit indian infantry spearmen exp 0 armour 0 weapon_lvl 0 unit indian infantry spearmen exp 0 armour 0 weapon_lvl 0 unit indian infantry spearmen exp 0 armour 0 weapon_lvl 0 unit indian infantry longbowmen exp 1 armour 0 weapon_lvl 0 unit indian infantry longbowmen exp 1 armour 0 weapon_lvl 0 unit indian infantry longbowmen exp 0 armour 0 weapon_lvl 0 end end_if terminate_monitor end_monitor
It looks like after your initial conditions, the spawning stuff happens inside the if I_TurnNumber > 20 and RandomPercent < 50 if. But then, AFTER the end_if, there is a terminate_monitor. So once the ecGandharaEra goes > 0, if the turn number is < 20 (which is true, since you are offered this decision on turn 16 iirc), then the if fails to spawn the army. Then regardless of whether it matches the if, it terminates the monitor so it stops checking. The other events chain off the first one having fired, so they never fire either.
Compare to the other method of staying loyal and getting helper armies spawned for you:
See how the terminate only happens if you've declared independence?Code:monitor_event PreFactionTurnStart FactionType f_gandhara if I_EventCounter ecGandharaEra = 0 and I_CompareCounter ecGenerateMauryanHelp = 1 and RandomPercent > 60 spawn_army faction f_gandhara character random_name, general, age 25, x 509, y 160, direction W unit indian cavalry light exp 0 armour 0 weapon_lvl 0 unit indian cavalry light exp 0 armour 0 weapon_lvl 0 unit indian infantry swordsmen exp 0 armour 0 weapon_lvl 0 unit indian infantry spearmen exp 0 armour 0 weapon_lvl 0 unit indian infantry spearmen exp 0 armour 0 weapon_lvl 0 unit indian infantry spearmen exp 0 armour 0 weapon_lvl 0 unit indian infantry longbowmen exp 0 armour 0 weapon_lvl 0 end set_counter ecGenerateMauryanHelp 0 end_if if I_EventCounter ecGandharaEra > 0 terminate_monitor end_if end_monitor
It looks like you need to move the terminate_monitor line up before the end_if for the three army-spawning counter-rebellion events.
I'll try this on my next campaign and report back.




Reply With Quote





