Hello al !!
There is such a script

monitor_event PreFactionTurnStart FactionType mongols ; mong na novgorod 1
and I_TurnNumber = 30
spawn_army
faction mongols
character Khoyan, general, age 42, x 128, y 236
unit mon_keshikten exp 0 armor 0 weapon_lvl 0
unit Sudanese Tribesmen exp 1 armor 0 weapon_lvl 0
unit Sudanese Tribesmen exp 1 armor 0 weapon_lvl 0
unit Sudanese Tribesmen exp 1 armor 0 weapon_lvl 0
unit sib_junior_militia exp 0 armor 1 weapon_lvl 1
unit mon_torhaguti_inf exp 0 armor 2 weapon_lvl 0
unit sib_senior_militia exp 0 armor 1 weapon_lvl 0
unit ME Levy Spearmen exp 0 armor 1 weapon_lvl 0
unit ME Levy Spearmen exp 1 armor 0 weapon_lvl 1
unit ME Levy Spearmen exp 0 armor 1 weapon_lvl 0
unit Mongol Infantry exp 0 armor 0 weapon_lvl 0
unit mon_hoshuchi exp 1 armor 0 weapon_lvl 0
unit mon_hoshuchi exp 0 armor 1 weapon_lvl 1
unit mon_hoshuchi exp 0 armor 0 weapon_lvl 0
unit mon_torhaguti_cav exp 0 armor 0 weapon_lvl 0
unit Mongol Light Lancers exp 0 armor 1 weapon_lvl 0
unit Mongol Light Lancers exp 0 armor 0 weapon_lvl 0
unit Mongol Light Lancers exp 0 armor 0 weapon_lvl 0
unit mon_horchi_cav exp 0 armor 0 weapon_lvl 1
unit mon_horchi_cav exp 0 armor 0 weapon_lvl 0
end
spawn_army
faction mongols
character Kuyuk, general, age 43, x 128, y 237
unit mon_keshikten exp 1 armor 0 weapon_lvl 0
unit Mongol Light Lancers exp 0 armor 1 weapon_lvl 0
unit Mongol Light Lancers exp 1 armor 0 weapon_lvl 0
unit Mongol Light Lancers exp 0 armor 0 weapon_lvl 0
unit mon_hoshuchi exp 1 armor 0 weapon_lvl 0
unit mon_hoshuchi exp 0 armor 1 weapon_lvl 1
unit mon_hoshuchi exp 0 armor 0 weapon_lvl 0
unit ME Levy Spearmen exp 0 armor 1 weapon_lvl 0
unit ME Levy Spearmen exp 1 armor 0 weapon_lvl 1
unit ME Levy Spearmen exp 0 armor 1 weapon_lvl 0
unit Sudanese Tribesmen exp 1 armor 0 weapon_lvl 0
unit mon_torhaguti_inf exp 1 armor 0 weapon_lvl 0
unit Sudanese Tribesmen exp 1 armor 0 weapon_lvl 0
unit sib_junior_militia exp 0 armor 1 weapon_lvl 1
unit cum_cheled_sw exp 0 armor 2 weapon_lvl 0
unit sib_senior_militia exp 0 armor 1 weapon_lvl 0
unit Khan's Guard exp 0 armor 0 weapon_lvl 0
unit mon_torhaguti_inf exp 0 armor 0 weapon_lvl 0
unit Mongol Bodyguard exp 0 armor 0 weapon_lvl 0
unit mon_horchi_cav exp 0 armor 0 weapon_lvl 0
end_if
end_monitor

monitor_event FactionTurnStart FactionType mongols
and not I_SettlementOwner Taurirt mongols
siege_settlement Khoyan, Taurirt, maintain
end_monitor

monitor_event FactionTurnStart FactionType mongols
and not I_SettlementOwner Novgorodgrd mongols
siege_settlement Kuyuk, Novgorodgrd, maintain
end_monitor

---------------
when working with such scripts, the game is crashed to Windows when loading saves of game (a message when searching for errors says that such a character does not exist)
I need to make that a Mongol army appears (generates) near some settlement and puts it under siege and does not lift the siege (and I will duplicate hundreds of such scripts in different periods and for different settlements). Need a sample of one working script or any help to make it
Since there are restrictions on the number of Mongol names, it is necessary (preferably) for the generalís name to be random (if possible)
and preferably a general (not a member of the faction rulers)