Das Hotseat Skript hat einfach alle historischen Events herausgerissen, egal ob es nur informativ war oder Einfluss auf Fraktionen hatte (Geld, Armee etc). Das lässt sich leicht umschreiben mit der I_IsHotseatEnabled Kondition, ergo ein Skript für Otto Normalverbraucher und Hotseat Fanatiker ist möglich, Hotseat benötigt keinen extra Zauber.
Nachtrag: wird wohl zwei oder drei Tage brauchen bis ich mit dem Skript durch bin. Sollte sich allerdings lohnen - habe ein paar Einträge gefunden die Logikfehler hatten und dadurch wohl kaum stattgefunden haben. Die Rundenzeiten sollten dann auch wie geölt abgehen durch das Umschreiben. Beispiel:
Vorher
[spoil]
; --- 3 events, 2 conditions ---
monitor_event FactionTurnStart ; monitor not required
add_events
event counter mangonel_event_spain_accepted
event counter mangonel_event_spain_declined
event counter mangonel_event_spain_timer
date 0
end_add_events
set_event_counter mangonel_event_spain_accepted 0
set_event_counter mangonel_event_spain_declined 0
set_event_counter mangonel_event_spain_timer 0
terminate_monitor
end_monitor
monitor_event FactionTurnStart FactionType spain ; monitor is pointless
inc_event_counter mangonel_event_spain_timer 1
if I_EventCounter mangonel_event_spain_accepted = 1
terminate_monitor
end_if
end_monitor
monitor_event FactionTurnStart FactionType spain
and I_SettlementOwner Leon = spain
if I_NumberOfSettlements spain > 7
and I_EventCounter mangonel_event_spain_timer > 2 ; pointless condition
and I_EventCounter mangonel_event_spain_accepted = 0 ; pointless condition
historic_event mangonel_event_spain true factions { spain, }
terminate_monitor
end_if
end_monitor
monitor_conditions I_EventCounter mangonel_event_spain_declined = 1 ; fires 3 times per second, all the time, until it terminates
console_command add_population Leon, 20
terminate_monitor
end_monitor
monitor_conditions I_EventCounter mangonel_event_spain_accepted = 1 ; fires 3 times per second, all the time, until it terminates
console_command add_money spain, -6000
terminate_monitor
end_monitor
Alles anzeigen
[/spoil]
Nachher
[spoil]
; --- 1 event ---
monitor_event FactionTurnStart FactionType Spain
and I_SettlementOwner Leon = spain
if I_HotseatEnabled ; terminate if hotseat is played
set_event_counter mangonel_event_spain 1
terminate_monitor
end_if
if I_IsFactionAIControlled spain ; spain is controlled by AI
set_event_counter mangonel_event_spain 1
terminate_monitor
end_if
if I_NumberOfSettlements spain > 7
and not I_IsFactionAIControlled spain ; spain is controlled by player
historic_event mangonel_event_spain true factions { spain, }
while I_EventCounter mangonel_event_spain_accepted = 0 ; while-loop to pause the script until a decision is made
and I_EventCounter mangonel_event_spain_declined = 0
end_while
if I_EventCounter mangonel_event_spain_accepted = 1
console_command add_money spain, -6000
terminate_monitor
end_if
if I_EventCounter mangonel_event_spain_declined = 1
console_command add_population Leon, 20
terminate_monitor
end_if
end_if
end_monitor
Alles anzeigen
[/spoil]
Nachdem mir nun die Augen über Kreuz liefen im Skript habe ich mal die Sprachumstellung hinter mich gebracht. Arbeitet fein und ohne Problem (in der englischen Version spricht man wieder 'schottisch') mit Hilfe des kleinen Launchers den ich geschrieben habe:
Man bekommt auch direkt Zugang zum Bonus Material Verzeichnis. Der Launcher wird am Ende der Installation automatisch starten um die Sprachauswahl zu ermöglichen, später ist er dann mittels Verknüpfung verfügbar.