Создание скриптов с различными соотношениями год/ход
Использование нижеприведенных скриптов в модах
Спойлер (раскрыть)
При вставлении скрипта в какой-нибудь мод, для начала надо убедиться что в моде не использован подобный скрипт, изменяющий число ходов за год(Stainless Steel, Westeros и т.д.). В случае если такой скрипт есть его необходимо удалить, для того чтобы новый скрипт работал адекватно.
Пример камрада AlvenHu по моду Stainless Steel:
*Однако скрипт может быть и не подписан.
Если же в моде нет скриптов изменяющих количество ходов в году, то просто ставим скрипт в конце файла до строк:
Пример камрада AlvenHu по моду Stainless Steel:
Спойлер (раскрыть)
Инструкция для Stainless Steel:
1) Лезем в "папка Medieval II"\mods\SS64\data\world\maps\campaign\imperial_campaign и открываем campaign_script.txt
2) Ищем AGEING SCRIPT и заменяем всё, что между камментами на скрипт из шапки. В результате должно выглядеть так:
;=================== AGEING SCRIPT ======================
скрипт
;=================== CHURCH TITLES ======================
3) Напоследок меняем в descr_strat.txt timescale соответственно.
1) Лезем в "папка Medieval II"\mods\SS64\data\world\maps\campaign\imperial_campaign и открываем campaign_script.txt
2) Ищем AGEING SCRIPT и заменяем всё, что между камментами на скрипт из шапки. В результате должно выглядеть так:
;=================== AGEING SCRIPT ======================
скрипт
;=================== CHURCH TITLES ======================
3) Напоследок меняем в descr_strat.txt timescale соответственно.
*Однако скрипт может быть и не подписан.
Если же в моде нет скриптов изменяющих количество ходов в году, то просто ставим скрипт в конце файла до строк:
wait_monitors end_scriptnorway
1 год = 20 ходов
Спойлер (раскрыть)
declare_counter period
set_counter period 1
monitor_event PreFactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season summer
end_if
if I_CompareCounter period = 4
console_command season summer
end_if
if I_CompareCounter period = 5
console_command season summer
end_if
if I_CompareCounter period = 6
console_command season summer
end_if
if I_CompareCounter period = 7
console_command season summer
end_if
if I_CompareCounter period = 8
console_command season summer
end_if
if I_CompareCounter period = 9
console_command season summer
end_if
if I_CompareCounter period = 10
console_command season summer
end_if
inc_counter period 1
if I_CompareCounter period = 11
console_command season winter
end_if
if I_CompareCounter period = 12
console_command season winter
end_if
if I_CompareCounter period = 13
console_command season winter
end_if
if I_CompareCounter period = 14
console_command season winter
end_if
if I_CompareCounter period = 15
console_command season winter
end_if
if I_CompareCounter period = 16
console_command season winter
end_if
if I_CompareCounter period = 17
console_command season winter
end_if
if I_CompareCounter period = 18
console_command season winter
end_if
if I_CompareCounter period = 19
console_command season winter
end_if
if I_CompareCounter period = 20
console_command season winter
end_if
if I_CompareCounter period = 21
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
в descr_strat.txt под timescale прописать 0,05
set_counter period 1
monitor_event PreFactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season summer
end_if
if I_CompareCounter period = 4
console_command season summer
end_if
if I_CompareCounter period = 5
console_command season summer
end_if
if I_CompareCounter period = 6
console_command season summer
end_if
if I_CompareCounter period = 7
console_command season summer
end_if
if I_CompareCounter period = 8
console_command season summer
end_if
if I_CompareCounter period = 9
console_command season summer
end_if
if I_CompareCounter period = 10
console_command season summer
end_if
inc_counter period 1
if I_CompareCounter period = 11
console_command season winter
end_if
if I_CompareCounter period = 12
console_command season winter
end_if
if I_CompareCounter period = 13
console_command season winter
end_if
if I_CompareCounter period = 14
console_command season winter
end_if
if I_CompareCounter period = 15
console_command season winter
end_if
if I_CompareCounter period = 16
console_command season winter
end_if
if I_CompareCounter period = 17
console_command season winter
end_if
if I_CompareCounter period = 18
console_command season winter
end_if
if I_CompareCounter period = 19
console_command season winter
end_if
if I_CompareCounter period = 20
console_command season winter
end_if
if I_CompareCounter period = 21
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
в descr_strat.txt под timescale прописать 0,05
1 год = 12 ходов
Спойлер (раскрыть)
в campaign_script.txt вставил (т.е.воспользовался из другого форума):
;;;;;времена года;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
declare_counter period
set_counter period 1
monitor_event PreFactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season summer
end_if
if I_CompareCounter period = 4
console_command season summer
end_if
if I_CompareCounter period = 5
console_command season summer
end_if
if I_CompareCounter period = 6
console_command season summer
end_if
if I_CompareCounter period = 7
console_command season summer
end_if
if I_CompareCounter period = 8
console_command season summer
end_if
inc_counter period 1
if I_CompareCounter period = 9
console_command season winter
end_if
if I_CompareCounter period = 10
console_command season winter
end_if
if I_CompareCounter period = 11
console_command season winter
end_if
if I_CompareCounter period = 12
console_command season winter
end_if
if I_CompareCounter period = 13
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
теперь у меня 7 раз лето и 5 зим, на 13 ход наступвет новый год.Также и правители - генералы стареют на один год за 12 ходов.(период кампании с 1015 по 1242годы у меня займет 2691 ходов).Спрашивается зачем мне так много нужно ?
в descr_strat.txt под timescale прописал 0.084
;;;;;времена года;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
declare_counter period
set_counter period 1
monitor_event PreFactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season summer
end_if
if I_CompareCounter period = 4
console_command season summer
end_if
if I_CompareCounter period = 5
console_command season summer
end_if
if I_CompareCounter period = 6
console_command season summer
end_if
if I_CompareCounter period = 7
console_command season summer
end_if
if I_CompareCounter period = 8
console_command season summer
end_if
inc_counter period 1
if I_CompareCounter period = 9
console_command season winter
end_if
if I_CompareCounter period = 10
console_command season winter
end_if
if I_CompareCounter period = 11
console_command season winter
end_if
if I_CompareCounter period = 12
console_command season winter
end_if
if I_CompareCounter period = 13
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
теперь у меня 7 раз лето и 5 зим, на 13 ход наступвет новый год.Также и правители - генералы стареют на один год за 12 ходов.(период кампании с 1015 по 1242годы у меня займет 2691 ходов).Спрашивается зачем мне так много нужно ?
в descr_strat.txt под timescale прописал 0.084
1 год = 4 хода
Спойлер (раскрыть)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Seasons, 1 year = 4 turns, summer = 2 turns, winter = 2 turns ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
declare_counter period
set_counter period 1
monitor_event PreFactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season winter
end_if
if I_CompareCounter period = 4
console_command season winter
end_if
inc_counter period 1
if I_CompareCounter period = 5
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
в descr_strat.txt под timescale прописать 0.25
;;; Seasons, 1 year = 4 turns, summer = 2 turns, winter = 2 turns ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
declare_counter period
set_counter period 1
monitor_event PreFactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season winter
end_if
if I_CompareCounter period = 4
console_command season winter
end_if
inc_counter period 1
if I_CompareCounter period = 5
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
в descr_strat.txt под timescale прописать 0.25
Остальные скрипты делаются по тому же самому принципу, разве что только вот еще:
1 год = 2 хода
Спойлер (раскрыть)
Скрипт не нужен, только в descr_strat.txt под timescale прописать 0.5
Скрипт не нужен, только в descr_strat.txt под timescale прописать 0.5
1 год = 1 ход
Спойлер (раскрыть)
;=================== AGEING SCRIPT ======================
declare_counter season
declare_counter turn
set_counter turn 0
monitor_event FactionTurnEnd FactionType slave
console_command season winter
set_counter turn 1
end_monitor
monitor_event PreFactionTurnStart I_CompareCounter turn = 1
inc_counter season 1
if I_CompareCounter season = 1
console_command season summer
end_if
if I_CompareCounter season = 2
console_command season winter
set_counter season 0
end_if
set_counter turn 0
end_monitor
в descr_strat.txt под timescale прописать 1.00
declare_counter season
declare_counter turn
set_counter turn 0
monitor_event FactionTurnEnd FactionType slave
console_command season winter
set_counter turn 1
end_monitor
monitor_event PreFactionTurnStart I_CompareCounter turn = 1
inc_counter season 1
if I_CompareCounter season = 1
console_command season summer
end_if
if I_CompareCounter season = 2
console_command season winter
set_counter season 0
end_if
set_counter turn 0
end_monitor
в descr_strat.txt под timescale прописать 1.00
1 год = 4 хода на старом движке medieval2.exe
(ну мало ли кому надо)
Спойлер (раскрыть)
declare_counter period
set_counter period 1
monitor_event FactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season winter
end_if
if I_CompareCounter period = 4
console_command season winter
end_if
inc_counter period 1
if I_CompareCounter period = 5
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
в descr_strat.txt под timescale прописать 0.25
set_counter period 1
monitor_event FactionTurnStart FactionIsLocal
if I_CompareCounter period = 1
console_command season summer
end_if
if I_CompareCounter period = 2
console_command season summer
end_if
if I_CompareCounter period = 3
console_command season winter
end_if
if I_CompareCounter period = 4
console_command season winter
end_if
inc_counter period 1
if I_CompareCounter period = 5
set_counter period 1
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
and I_CompareCounter period > 1
console_command season summer
end_monitor
в descr_strat.txt под timescale прописать 0.25