Сведения получены от автора скриптов мода Tzardoms jurcek1987.
Использование оператора engage_armies в кампании приводит к невозможности загружать сохранения. Автор метода подметил, что в моде Insularis Draco этой проблемы нет, и перенес методику в Tzardoms, а также поделился принципом, за что ему огромное спасибо.
Суть в том, что если атакующий генерал ИИ после битвы остается жив, то сохранения ломаются. Его нужно либо убить через скрипт, либо выслать с карты. Вот его пример кода Битвы на Косовом поле.
Здесь, правда, есть нестыковка - персонажа османов просто высылают с карты и возвращают обратно (но почему-то координаты reposition_character и последующего spawn_character не совпадают), тогда как персонажа венгров вдобавок убивают, но затем помещают скриптом в те же координаты, что указаны в reposition_character.
Я в своем моде не дошел еще до этой части, не могу сказать является ли это опечаткой или показаны два варианта решения вопроса. Но в любом случае, обратите внимание, что при возвращении генерала на карту его лейбл меняется и у турок и у венгров. Также непонятно что будет с семейным древом в данном случае (я просто не уточнил в свое время в переписке).
Так что внедряйте и дополняйте тему, пожалуйста. Это хороший способ разнообразить игру скриптами.
Использование оператора engage_armies в кампании приводит к невозможности загружать сохранения. Автор метода подметил, что в моде Insularis Draco этой проблемы нет, и перенес методику в Tzardoms, а также поделился принципом, за что ему огромное спасибо.
Суть в том, что если атакующий генерал ИИ после битвы остается жив, то сохранения ломаются. Его нужно либо убить через скрипт, либо выслать с карты. Вот его пример кода Битвы на Косовом поле.
;;=====================================================================;;
;;;;;;;;;;;;;;;;;;;;;;;;;; BATTLE OF KOSOVO ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;=====================================================================;;
; Hungary
monitor_event PreFactionTurnStart FactionIsLocal
if I_IsFactionAIControlled hungary
terminate_monitor
end_if
console_command move_character Murad_II1 192, 173
console_command move_character Janos_Hunyadi1 191, 174
historic_event BATTLE_OF_KOSOVO factions { hungary, }
hide_ui
disable_movie_view
move_strat_camera 191, 184
zoom_strat_camera 0
end_if
terminate_monitor
end_monitor
monitor_event MessageClosed
if I_IsFactionAIControlled hungary
terminate_monitor
end_if
engage_armies Murad_II1, Janos_Hunyadi1
terminate_monitor
end_monitor
monitor_event PostBattle TrueCondition
if I_IsFactionAIControlled hungary
terminate_monitor
end_if
show_ui
if I_CharacterExists Murad_II1
reposition_character Murad_II1, 186, 144
send_character_off_map Murad_II1
campaign_wait 0.1
spawn_army
faction ottoman
character Murad Osmanoglu, named character, age 42, x 219, y 139, label Murad_II2
unit Silahdar Corps exp 3 armour 0 weapon_lvl 0
end
end_if
terminate_monitor
end_monitor
; Ottomans
monitor_event PreFactionTurnStart FactionIsLocal
if I_IsFactionAIControlled ottoman
terminate_monitor
end_if
console_command move_character Murad_II1 192, 173
console_command move_character Janos_Hunyadi1 191, 174
historic_event BATTLE_OF_KOSOVO factions { ottoman, }
hide_ui
disable_movie_view
move_strat_camera 192, 181
zoom_strat_camera 0
terminate_monitor
end_monitor
monitor_event MessageClosed
if I_IsFactionAIControlled ottoman
terminate_monitor
end_if
if I_EventCounter BATTLE_OF_KOSOVO > 0
engage_armies Janos_Hunyadi1, Murad_II1
terminate_monitor
end_if
end_monitor
monitor_event PostBattle TrueCondition
if I_IsFactionAIControlled ottoman
terminate_monitor
end_if
show_ui
if I_CharacterExists Janos_Hunyadi1
reposition_character Janos_Hunyadi1, 180, 209
kill_character DET_NATURAL Janos_Hunyadi1
end_if
campaign_wait 0.1
spawn_army
faction hungary
character Janos Hunyadi, named character, age 42, x 180, y 209, label Janos_Hunyadi2, portrait Janos_Hunyadi
traits Biography_Janos_Hunyadi 1, LoyaltyStarter 1, ReligionStarter 1, Ethnic_Transilvanian_Vlach 1, Royal_Founder 1, MilitaryInclination 1, NaturalMilitarySkill 3, Military_Edu 4, GoodCommander 3, VictorVirtue 1, GoodRiskyAttacker 1, Hardened 1, TacticalSkill 2, InspiringSpeaker 2, Brave 3, Energetic 2, CrusaderHistory 2, MilitaryInclination 1, StrategyChivalry 1, Loyal 3, Just 2, GoodAdministrator 2, HatesOttoman 2, AdoredByPope 1, House_Hungary_1_Hunyadi_t 1, EthnoDetermined 1
unit Late Royal Banderium exp 4 armour 0 weapon_lvl 0
end
console_command give_ancillary Janos_Hunyadi2 House_Hungary_1_Hunyadi
console_command give_ancillary Janos_Hunyadi2 regent_of_hungary
console_command give_ancillary Janos_Hunyadi2 marshall_hungary
console_command give_ancillary Janos_Hunyadi2 marcin_krol
console_command give_ancillary Janos_Hunyadi2 trusty_steed
end_if
terminate_monitor
end_monitorЗдесь, правда, есть нестыковка - персонажа османов просто высылают с карты и возвращают обратно (но почему-то координаты reposition_character и последующего spawn_character не совпадают), тогда как персонажа венгров вдобавок убивают, но затем помещают скриптом в те же координаты, что указаны в reposition_character.
Я в своем моде не дошел еще до этой части, не могу сказать является ли это опечаткой или показаны два варианта решения вопроса. Но в любом случае, обратите внимание, что при возвращении генерала на карту его лейбл меняется и у турок и у венгров. Также непонятно что будет с семейным древом в данном случае (я просто не уточнил в свое время в переписке).
Так что внедряйте и дополняйте тему, пожалуйста. Это хороший способ разнообразить игру скриптами.

t1aro
alZarif
Dr.Schmeisser
KhanBagatur
gurvinek2005
Crusader556
Haktar
Mady
Valyrian_Legionnaire
DinarMayor
Corrector
kosak4
Farin Frostgeir

