That event doesn't join factions, it spawns a general of that faction and then two missions start that involves that general. After the end of mission time the character gets removed again. I have used part of that mission system to initiate an assassination mission against a particular named character (next version).
Code:
monitor_event FactionTurnStart I_EventCounter crusader1_timer >= 15
and I_EventCounter crusader1_timer <= 20
and I_CompareCounter teutonic_lithuania_allied = 0
and I_NumberOfSettlements lithuania > 0
and I_EventCounter lithuania_conversion_accepted = 0
set_counter crusader1_active 1
spawn_army
faction teutonic_order
character Ulrich Salier, admiral, age 31, x 57, y 53, direction SE
unit cog exp 0 armour 0 weapon_lvl 0
end
spawn_army
faction teutonic_order
character Charles, named character, x 57, y 53, label crus1, battle_model Adv_Northern_General_Eng
traits LoyaltyStarter 1, ReligionStarter 1, Upright 2, GoodAttacker 1, PublicFaith 2, EnglishCrusader 1
unit Adv English Bodyguard exp 0 armour 0 weapon_lvl 0
unit Adv Levy Spearmen exp 0 armour 0 weapon_lvl 0
unit Adv Levy Spearmen exp 0 armour 0 weapon_lvl 0
unit Adv Levy Spearmen exp 0 armour 0 weapon_lvl 0
unit Adv Feudal Knights exp 0 armour 0 weapon_lvl 0
unit Adv Feudal Knights exp 0 armour 0 weapon_lvl 0
unit Adv Dismounted Feudal Knights exp 0 armour 0 weapon_lvl 0
unit Adv Dismounted Feudal Knights exp 0 armour 0 weapon_lvl 0
unit Adv Dismounted Feudal Knights exp 0 armour 0 weapon_lvl 0
end
create_mission adventure_crusader teutonic_order crus1
create_mission kill_crusader lithuania crus1
terminate_monitor