This is a small one to switch between 4 and 12 TPY once in-game.
I made it for personal use in MOS but it may work for any mod\submod.
Replace the current "Aging & Season script" section in campaign_script.txt with this:
Code:
;###################### Aging & Season script ########################
monitor_event FactionTurnStart FactionIsLocal
historic_event tpy_event true
terminate_monitor
end_monitor
declare_counter month
set_counter month 1 ;set to January
monitor_event PreFactionTurnStart FactionIsLocal ; set the season for each month
if I_EventCounter tpy_event_declined = 1
if I_CompareCounter month == 1 ;January
console_command season winter
end_if
if I_CompareCounter month == 2 ;February
console_command season winter
end_if
if I_CompareCounter month == 3 ;March
console_command season summer
end_if
if I_CompareCounter month == 4 ;April
console_command season summer
end_if
if I_CompareCounter month == 5 ;May
console_command season summer
end_if
if I_CompareCounter month == 6 ;June
console_command season summer
end_if
if I_CompareCounter month == 7 ;July
console_command season summer
end_if
if I_CompareCounter month == 8 ;August
console_command season summer
end_if
if I_CompareCounter month == 9 ;September
console_command season summer
end_if
if I_CompareCounter month == 10 ;October
console_command season summer
end_if
if I_CompareCounter month == 11 ;November
console_command season winter
end_if
if I_CompareCounter month == 12 ;December
console_command season winter
end_if
inc_counter month 1 ;advance the month
if I_CompareCounter month == 13 ;start a new year
set_counter month 1
end_if
end_if
if I_EventCounter tpy_event_accepted = 1
terminate_monitor
end_if
end_monitor
monitor_event FactionTurnEnd FactionType slave
if I_EventCounter tpy_event_declined = 1
and I_CompareCounter month < 12
console_command season summer
end_if
if I_EventCounter tpy_event_accepted = 1
terminate_monitor
end_if
end_monitor
declare_counter season_counter
monitor_event FactionTurnStart FactionType slave
inc_counter season_counter 1
; 0 equals winter
if I_EventCounter tpy_event_accepted = 1
if I_EventCounter season_counter == 0
console_command season winter
end_if
if I_EventCounter season_counter > 0
console_command season summer
end_if
; Reset the counter on the autumn turn so that it'll be 0 next turn
if I_EventCounter season_counter == 3
set_counter season_counter -1
end_if
end_if
if I_EventCounter tpy_event_declined = 1
terminate_monitor
end_if
end_monitor
then add this in historic_events.txt
Code:
{TPY_EVENT_TITLE}Turns per year?
{TPY_EVENT_BODY}Press V to play with 4 turns per year. \n Press X to play with 12 turns per year. \n\nNOTE: date may show wrong in 4 tpy mode.
Delete historic_events.strings.bin when done
Finally a nice eventpic (optional):
The one above is a .jpg; download the tpy_event.tga down here (it must be extracted with 7z), save it in \data\ui\southern_european\eventpics and it is done.
BUGS\GLITCHES:
The only problem is that this affects season\aging but not the date (timescale) since it is set in descr_strat. But it's the only way to let people switch between 12-4 tpy once in-game.
Permissions: free to use, crediting is nice.