You could have a point there, I'll have to check the interface when maintaining a siege and when to initiate an attack versus an army. For some reason I was under the impression they both are the same.
going by dumb reckoning:
siege_scroll == siege_buttons
pre_battle_scroll ==pre_battle_buttons
Edit: Ha, now I remember which button I meant that didn't work in the other thread: pre_battle_retreat_button. Maybe it has the same problem that you mentioned in the OP.
Sorry for being befuddled, it's been a long coding day.
Regarding the 'garrison on immediate attack' issue - I used the GeneralAssaultsResidence event:
Code:
monitor_event GeneralAssaultsResidence TargetFactionType hungary
and IsTargetRegionOneOf Reichsstadt_Bremen
and I_SettlementUnderSiege Bremen
if I_TurnNumber < 100
create_unit Bremen, BuergerwehrG, num 4, exp 0, arm 0, wep 0
create_unit Bremen, GrenadiereG, num 1, exp 0, arm 0, wep 0
create_unit Bremen, MusketiereG, num 2, exp 0, arm 0, wep 0
create_unit Bremen, PikeniereG, num 3, exp 0, arm 0, wep 0
set_counter Bremen_siege 1
end_if
if I_TurnNumber > 99 ; if they still need this help then they deserve to die
terminate_monitor
end_if
end_monitor
The units get disbanded after the siege via a custom attribute destroy_unit script.