Da es mir die Events aus Third Age angetan haben in denen man, sobald man in die nähe der Argonaut beispielsweise kommt, ein Event + Video bekommt, hab ich mich damit mal näher beschäftigt.
Danke auch an King Kong der mir in einigen Dingen zur Seite stand die ich noch nicht verstand, damals fing ich erst an mit dem Scripten. (Vor Einem Monat ca.)
Nun gehts aber mit dem eigentlichen Tutorial los:
Hier braucht die Dateien:
campaign_script -> ([...]:\SEGA\Medieval II Total War\mods\[...]\data\world\maps\campaign\imperial_campaign)
historic_events -> ([...]:\SEGA\Medieval II Total War\mods\[...]\data\text\)
Tools benötigt für Video:
Bink Converter
Alternativ nötig:
Retrofit
Das Script selbst ist recht einfach und leicht zu begreifen, folgendermaßen siehts aus:
Code: Alles auswählen
monitor_event TileSeen not FactionType slave
and FactionIsLocal
and IsPositionInRect 128 270 2 2
historic_event X event/Y.bik
terminate_monitor
end_monitor
Nun zur Erklärung:
1. Zeile: "not FactionType slave"
Dies gibt wieder welche Fraktion dieses Event nicht bekommen soll, in diesem Fall die Rebellen, hier kann man aber auch jede andere Fraktion eintragen.
--------------------------------------------------------------------
2. Zeile: "and FactionIsLocal"
Nur der Menschliche Spieler bekommt dieses Event, dafür steht diese Zeile
--------------------------------------------------------------------
3. Zeile: "and IsPositionInRect 128 270 2 2"
128 270 :Dies steht für die Position die in Sichtweite eines Generals oder Spions sein muss damit das Event kommt, Praktisch hierbei: Es müssen keine Städte genommen werden, es kann auch ein Wald oder ähnliches sein, wichtig ist nur die richtige Position*
2 2:Diese zwei Zahlen stehen für ein Rechteck das um den angegebenen Punkt gezogen wird, also in diesem Fall: 128+2 Pixel auf der X oder Y - Achse.
--------------------------------------------------------------------
4. Zeile: historic_event X event/Y.bik
Hier kommt die Folge aus den oben genannten Bedingungen die gegeben sein müssen:[/color]
historic_event X: Dies stellt das historische Event dar und die Textmessage die erscheint, weiter unten mehr dazu.**
event/Y.bik: Zusätzlich lässt sich auch noch ein Video einbinden, dazu unten auch mehr.***
--------------------------------------------------------------------
5,6 Zeile:
terminate_monitor
end_monitor
Darf nicht vergessen werden, sonst wird das Script nicht ausgelesen und es passiert Ingame rein gar nichts mehr, deutlich sieht man das meißt wenn man im Script auch durch "restrict_strat_radar false" den "Amerika-Balken" entfernt und dieser plötzlich wieder da ist.
--------------------------------------------------------------------
Anmerkungen:
* Diese X und Y Angabe lässt sich Ingame herausfinden:
Haltet den Mauszeiger direkt über die Position die ihr haben wollt und öffnet mit "ö" die Konsole. Tippt dort ein:
show_cursorstat
Umgehend werden euch dann alle nötigen Info´s angezeigt, neben dem Regionsnamen auch die passende Position des Mauszeigers auf der X und Y - Achse.
**Nur Text mit Bild:
Befehl (siehe Oben):
historic_event X
Zuerst müsst ihr die Text-Datei "historic_events" im Textordner öffnen, darin macht ihr jetzt einen neuen Eintrag:
{TEST_BODY}Test - Text
{TEST_TITLE} Test - Überschrift
Wichtig ist dass das in den Klammern großgeschrieben wird.
Da wird jetzt aber oben leider nur ein Standard Bild haben und das natürlich auch ändern wollen machen wir folgendes:
Wir gehen in den Pfad:
([...]:\SEGA\Medieval II Total War\mods\[...]\data\ui\southern_european\eventpics\)
Und dort können wir ein tga-Bildchen reinmachen das genau den gleichen Namen haben muss wie das historic_event, [color=#000000]in diesem Fall: test[/color].
Fertig, Eventbilder brauchen nur bei southern_european rein.
***Video:
Wollen wir auch ein Video einbinden wie in Third Age brauchen wir zuerst einmal ein Video in .avi - Format und den Bink - Converter, welcher auch sehr große Dateien sehr klein komprimieren kann.
Bink Converter
Damit konvertieren wir also zuerst das Video unserer Wahl.
Dann verschieben wir die neue .bik - Datei in den Pfad:
[...]:\SEGA\Medieval II Total War\mods\[...]\data\fmv\event
Der Name der Video - Datei muss genau so lauten wie im Script angegeben.
event/Y.bik-> In diesem Fall "test"
Das wars auch schon.
Ich hoffe es hat euch gefallen und ihr könnt es vielleicht gebrauchen.
--------------------------------------------------------------------
Hier noch ein praktisches Beispiel wie in "Retrofit " dieses Event im Script aussieht:
D:\SEGA\Medieval II Total War\mods\retrofit\data\world\maps\campaign\imperial_campaign:
campaign_script:
Code: Alles auswählen
monitor_event TileSeen not FactionType england
and FactionIsLocal
and IsPositionInRect 109 147 2 2
historic_event london event/london.bik
terminate_monitor
end_monitor
--------------------------------------------------------------------