Hi guys I am working on a mod set in the Year of the Four Emperors, actually starting in 68 AD.
FACTION PREVIEW
Spoiler Alert, click show to read: 

MAP AND REGIONS PREVIEW
Spoiler Alert, click show to read: 

I used the Vanilla Modpack as a starting point.
I managed to create factions and i know how to manage units and battle models.
I made some experiments with shadow factions so I should be able to make all the other Roman factions turn into the Roman Empire if they conquer Rome.
I also rearranged provinces and cities to match the Roman world of the 1st century AD. Most notably I created an rudimental system that allows provinces to have major capitals and minor cities.
Now the challange is to create scripts that achieve four different events:

1) Vitellius Imperator faction spawing in a specific turn and in two specific regions: Germania_Superior and Germania_Inferior
2) Otho Imperator spawning as a shadow faction of Galba Imperator that already shadows Rome.
3) A script that hands out all the other settlements to the faction owning Rome (I saw something similar in the First Triumvirate mod for OG BI)
4) A script that spawns a Batavian faction in the settlement "Noviomagus_Batavodurum" in a specific turn.

About goal 1), I tried scripting but I cannot even manage to get settlements to rebel with the provoke_rebellion command. I know about "HasResource <>" but I cannot seem to make scripts work. How can I get this to work?

Code:
    
monitor_event SettlementTurnStart

        ;;if the settlement is owned by the goths and isn't the capital
        if    SettlementOwnedBy roman_germaniae
            &&    IsCapital
    
            ;;trigger a rebellion in this settlement so the spawn script can pick it up

            provoke_rebellion local ;;added the ability to add local here just for this
            terminate_monitor ;;stop looking for settlement turn starts
        end_if
        
        ;;end this monitor after turn 2, since we're going to manually spawn them as a horde
        ;;on the end of that turn if we haven't already triggered a settlement
        if    I_TurnNumber > 1
            terminate_monitor
        end_if

    end_monitor
Sorry for my terrible English and thanks in advance for your help!