Here is a sample:
Code:
declare_counter siege_[settlement name]
monitor_event ; whatever you decide
spawn_army ; spawn next to settlement, set direction to face settlement
faction [faction name]
character [character name], general, age 29, x [value], y [value], label [label entry], direction W
; your army details
sieging
siege_settlement [label entry], [settlement name], maintain ; maintains siege
terminate_monitor
end_monitor
monitor_event FactionTurnEnd FactionType [faction name]
and I_CharacterExists [label entry]
and I_SettlementUnderSiege [settlement name]
if I_CompareCounter siege_[settlement name] < 2 ; number of turns to keep sieging
siege_settlement [label entry], [settlement name], maintain
end_if
if I_CompareCounter siege_[settlement name] = 2 ; turn count has been reached
siege_settlement [label entry], [settlement name], attack ; final attack
terminate_monitor
end_if
inc_counter siege_[settlement name] 1
end_monitor