There is an economic script for one faction. Using GrnEyedDevl's script replicator, you just change 'variable' for faction from your faction list and all. For slaves disband not needed, here 3 units types of disband, which you can change independently in EDU.
Code:
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 1500
and FactionIncome < 0
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 2500
and FactionIncome < -500
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 4000
and FactionIncome < -1000
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 6000
and FactionIncome < -1750
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 9000
and FactionIncome < -2750
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 13500
and FactionIncome < -4000
freeze_recruit_pool all true
end_monitor
declare_counter treasury
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 1500
set_counter treasury 1
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 2500
set_counter treasury 2
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 4000
set_counter treasury 3
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 6000
set_counter treasury 4
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 9000
set_counter treasury 5
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 13500
set_counter treasury 6
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 1
and FactionIncome < 0
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 2
and FactionIncome < -500
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 3
and FactionIncome < -1000
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 4
and FactionIncome < -1750
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 5
and FactionIncome < -2750
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 6
and FactionIncome < -4000
freeze_recruit_pool all true
end_monitor
monitor_event CharacterTurnEnd I_IsFactionAIControlled
and AgentType = admiral
and RemainingMPPercentage = 100
set_event_counter destroyinactive 1
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 1
destroy_units disband_3
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 2
destroy_units disband_4
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 3
destroy_units disband_5
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 1500
and FactionIncome < 0
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 2500
and FactionIncome < -500
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 4000
and FactionIncome < -1000
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 6000
and FactionIncome < -1750
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 9000
and FactionIncome < -2750
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 13500
and FactionIncome < -4000
freeze_recruit_pool all true
end_monitor
declare_counter treasury
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 1500
set_counter treasury 1
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 2500
set_counter treasury 2
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 4000
set_counter treasury 3
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 6000
set_counter treasury 4
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 9000
set_counter treasury 5
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 13500
set_counter treasury 6
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 1
and FactionIncome < 0
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 2
and FactionIncome < -500
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 3
and FactionIncome < -1000
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 4
and FactionIncome < -1750
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 5
and FactionIncome < -2750
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 6
and FactionIncome < -4000
freeze_recruit_pool all true
end_monitor
monitor_event CharacterTurnEnd I_IsFactionAIControlled
and AgentType = admiral
and RemainingMPPercentage = 100
set_event_counter destroyinactive 1
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 1
destroy_units disband_3
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 2
destroy_units disband_4
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 3
destroy_units disband_5
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 1500
and FactionIncome < 0
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 2500
and FactionIncome < -500
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 4000
and FactionIncome < -1000
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 6000
and FactionIncome < -1750
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 9000
and FactionIncome < -2750
freeze_recruit_pool all true
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and Treasury < 13500
and FactionIncome < -4000
freeze_recruit_pool all true
end_monitor
declare_counter treasury
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 1500
set_counter treasury 1
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 2500
set_counter treasury 2
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 4000
set_counter treasury 3
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 6000
set_counter treasury 4
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 9000
set_counter treasury 5
end_monitor
monitor_event PreFactionTurnStart FactionType variable
and Treasury < 13500
set_counter treasury 6
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 1
and FactionIncome < 0
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 2
and FactionIncome < -500
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 3
and FactionIncome < -1000
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 4
and FactionIncome < -1750
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 5
and FactionIncome < -2750
freeze_recruit_pool all true
end_monitor
monitor_event AddedToTrainingQueue FactionType variable
and I_IsFactionAIControlled
and not I_FactionBesieged variable
and not IsCrusadeTargetFaction
and not IsJihadTargetFaction
and I_CompareCounter treasury = 6
and FactionIncome < -4000
freeze_recruit_pool all true
end_monitor
monitor_event CharacterTurnEnd I_IsFactionAIControlled
and AgentType = admiral
and RemainingMPPercentage = 100
set_event_counter destroyinactive 1
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 1
destroy_units disband_3
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 2
destroy_units disband_4
end_monitor
monitor_event FactionTurnEnd FactionType variable
and I_IsFactionAIControlled
and Treasury < 0
and I_CompareCounter month == 3
destroy_units disband_5
end_monitor