It looks like you have a much less conglomerated map than I had in my last campaign. I had entire chunks of the map fallen to a single faction. Maybe the reduced movement points submod or my money tinkering is actually hurting things. less money = the strong get stronger...?
Anyhow, my 'research' is moving ahead. Making the real faction the rebel faction of a settlement does not work, it causes a CTD upon viewing the settlement.
And since greeks can't sack, I can't just limit the AI to only sack. So I'll have to do this with scripts.
This example code will continually declare peace between the Arverni and any faction that has only one or two settlements. We can just have one of these loops for every faction we don't want to die. (They still get to conquer the player as much as they want.) It works, I'm just not quite sure how I want to set this up. If I disallow all small factions from fighting, then the game would be completely static in for example gual, since they all only have one settlement to begin with.
I'm thinking I could do something like letting them fight until they have three settlements or something, or setting the loop up in a different way. Input is appreciated.
Code:
function Peace(context)
if context:faction():is_human() == false and context:faction():region_list():num_items() < 3
then scripting.game_interface:force_make_peace(context.string,"rom_arverni")
end
end
scripting.AddEventCallBack("FactionTurnStart", Peace);