PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Events erstellen



Gettysburg
05.09.05, 18:00
Erstmal eine konkrete Frage:
Ich wollte heute ein neues USA-Spiel anfangen, kann mich aber daran erinnern, dass ich bis ans Ende des Spiels die Unproduktivität von Sklaven ertragen muß, wenn kein Civil-War Event triggert. Um zu testen wie ein entsprechendes Event zum richtigen Zeitpunkt (würde es so gegen 1870 einbringen wollen) aussehen muß, habe ich eines Testes wegen einen zum 1. Februar 1836 in die USA-events.txt eingefügt.
Dieser sieht so aus:

#########################################################################
# Free the Slaves
#########################################################################
event = {
id = 99197
random = no
country = USA
}

name = "EVT_99197_NAME"
desc = "EVT_99197_DESC"
style = 0

date = { day = 1 month = february year = 1836 }

action_a = {
name = "They shall be free!"
ai_chance = 50
command = { type = convert_pop_type which = slaves value = labourers }
command = { type = set_slavery value = no }
}
action_b = {
name = "We need slavery!"
ai_chance = 50
command = { type = prestige value = -50 }
}
}
Natürlich mit den entsprechenden Tabs eingetragen.

Bei Laden des Szenarios bekomme ich dann aber eine Fehlermeldung die mit "name = ...." zusammenhängt und besagt, dass dies eine unbekannte Eingabe oder so ähnlich sei. Außerdem kommt am 1. Februar 1836 kein Event...

1. Warum nicht?
2. Muß ich vielleicht noch eine andere Datei ändern? Mir schwebt irgendwie sowas wie eine excel-Datei vor, die mit den Events zusammenhängt, habe aber keine Ahnung von dem ganzen Kram, so dass ich mir da nicht sicher bin.
3. Gab es nicht einmal hier oder im HoI2-Forum eine Art Event-Bibel, die alle Möglichkeiten und Trigger erklärt? Müsste von Jaycee und/oder Abo gewesen sein. Kann ich aber nicht finden. Wenn einer den Link hätte...

Gettysburg
05.09.05, 18:23
Jetzt ist die Verwirrung (inklusive Hass, Wut und unbändigem Vernichtungswillen :mad: :mad: :mad: ) komplett: Jetzt habe ich die verdammte event_text - excel datei mit meinem schönen Excel geöffnet, zur Sicherheit NICHT direkt gespeichert, sondern zuerst eine Sicherungskopie des Originals erstellt und jetzt kommt beim Versuch Victoria zu starten:
"Error in language file # token blablablablablabla..."

Was soll die &§$%"§&!?!

Stauffenberg
05.09.05, 18:58
Nicht, dass ich wirklich ein Experte für Event-Erstellen wäre, aber ich wurde verschiedentlich belehrt, dass Veränderungen an den event. txts keinesfalls in Excel, sondern stehts in Wordpad durchgeführt werden sollten. Habt Ihr das Event in Excel erstellt? :)

[B@W] Abominus
05.09.05, 19:04
#########################################################################
# Free the Slaves
#########################################################################
event = {
id = 99197
random = no
country = USA
}

name = "EVT_99197_NAME"
desc = "EVT_99197_DESC"
style = 0

date = { day = 1 month = february year = 1836 }

action_a = {
name = "They shall be free!"
ai_chance = 50
command = { type = convert_pop_type which = slaves value = labourers }
command = { type = set_slavery value = no }
}
action_b = {
name = "We need slavery!"
ai_chance = 50
command = { type = prestige value = -50 }
}
}

Die Klammer weg, dann sollte es gehen.

Gettysburg
05.09.05, 19:24
@Abo
Welche? Die letzte?
Edit: OK, Hervorhebung erkannt.

@Stauffenberg
Nein, dass Event selbst habe ich im Editor geöffnet. Aber es gibt ja noch eine excel-Datei mit den "Names" und "Descriptions"...
Wieso kann ich dann mein ganzes Victoria in die Tonne kloppen (habe de- und werde reinstallieren) wenn ich diese excel-Datei mit excel öffne und nicht abspeichere? Wie kann es denn sein, dass allein durch das Öffnen die Datei so verändert wird, dass Victoria diese nicht mehr korrekt verwenden kann?

[B@W] Abominus
05.09.05, 19:26
Du kannst anstelle von EVT_99197_NAME auch einfach den Titel des Events schreiben etc. Hauptsache die " " sind am Anfang und am Ende.

Gettysburg
05.09.05, 19:42
Gilt das gleiche auch für die "description"? Und willst du mir damit sagen, dass man von der excel-Datei generell die Finger lassen sollte? Oder brauche ich eine bestimmte excel-Version, damit ich mir diese anscheinend ziemlich wichtige Datei nicht zerstöre?

Gettysburg
05.09.05, 19:59
In jedem Fall vielen Dank Abo! Die Klammer war tatsächlich zu viel und die Beschreibung werde ich nun zur Sicherheit auch einfach in die txt-Datei einfügen.

Hätte trotzdem nochmal jemand den Link zu dem im ersten Post von mir angesprochenen Event-Thread? :)

[B@W] Abominus
05.09.05, 20:10
Gibt es nur für HoI II, aber sollte ähnlich sein:
http://www.si-games.com/forum/showthread.php?t=8264

P.S.: Beschreibung etc. kann auch ruhig rein, aber nicht die Anführungszeichen vergessen :D.

Gettysburg
05.09.05, 20:29
Noch eine kleine Sache Abo und du bist für mich der Held der Woche:

Es gibt in der event.txt der USA noch einen Event mit der ID 14182 namens "Reconstruction". Ich weiß ja nicht, ob du Victoria zur Zeit installiert hast, aber es wäre hilfreich wenn du dir dieses eben ansehen könntest.
Ansonsten ein paar Informationen: Er triggert zwischen 1855 und 1881 und Voraussetzung ist, dass erstens das Bürgerkriegsevent stattgefunden hat und sich die USA und CSA nicht mehr im Krieg miteinander befinden. Dieser würde zumindest inhaltlich mit meinem Event kollidieren, da auch dieser die Freilassung der Sklaven zur Folge hat.
Jetzt möchte ich, dass
a) 14182 nicht mehr triggert, wenn mein Event bereits stattgefunden hat. Dies könnte logischerweise nur dann passieren, wenn das Bürgerkriegs-Event stattgefunden hat und es vor 1870 noch nicht zu einem Kriegsende gekommen ist. Anderenfalls würde ja vor 1870 bereits 14182 triggern, oder?
Kleine Frage hierbei: Was bedeutet "Offset = 30" zwischen date und deathdate von 14182?
b) mein Event nicht mehr triggert, wenn 14182 schon stattgefunden hat.

Ich habe das so zu lösen versucht:
trigger = {
NOT = { exists = CSA }
NOT = { event = 14182 }
}

Würde das Einfügen meiner Event-ID in die Daten des 14182, sowie der zitierte Eintrag das Kollisions-Problem lösen oder gebe es auch elegantere Wege?

[B@W] Abominus
06.09.05, 01:07
Noch eine kleine Sache Abo und du bist für mich der Held der Woche:

Es gibt in der event.txt der USA noch einen Event mit der ID 14182 namens "Reconstruction". Ich weiß ja nicht, ob du Victoria zur Zeit installiert hast, aber es wäre hilfreich wenn du dir dieses eben ansehen könntest.
Ansonsten ein paar Informationen: Er triggert zwischen 1855 und 1881 und Voraussetzung ist, dass erstens das Bürgerkriegsevent stattgefunden hat und sich die USA und CSA nicht mehr im Krieg miteinander befinden. Dieser würde zumindest inhaltlich mit meinem Event kollidieren, da auch dieser die Freilassung der Sklaven zur Folge hat.
Jetzt möchte ich, dass
a) 14182 nicht mehr triggert, wenn mein Event bereits stattgefunden hat. Dies könnte logischerweise nur dann passieren, wenn das Bürgerkriegs-Event stattgefunden hat und es vor 1870 noch nicht zu einem Kriegsende gekommen ist. Anderenfalls würde ja vor 1870 bereits 14182 triggern, oder?
Kleine Frage hierbei: Was bedeutet "Offset = 30" zwischen date und deathdate von 14182?
b) mein Event nicht mehr triggert, wenn 14182 schon stattgefunden hat.

Ich habe das so zu lösen versucht:
trigger = {
NOT = { exists = CSA }
NOT = { event = 14182 }
}

Würde das Einfügen meiner Event-ID in die Daten des 14182, sowie der zitierte Eintrag das Kollisions-Problem lösen oder gebe es auch elegantere Wege?


#########################################################################
# Reconstruction
#########################################################################
event = {
id = 14182
random = no
country = USA

trigger = {
event = 14119
NOT = {
war = { country = CSA country = USA }
}

}

name = "EVT_14182_NAME"
desc = "EVT_14182_DESC"
style = 0

date = { day = 2 month = january year = 1855 }
offset = 30
deathdate = { day = 30 month = december year = 1881 }

action_a = {
name = "ACTIONNAME14182A" # Moderate
command = { type = convert_pop_type which = slaves value = labourers }
command = { type = set_slavery value = no }
command = { type = pop_consciousness which = dixie value = 5 }
command = { type = trigger which = 14183 }
command = { type = sleep_party which = 14100 }
command = { type = wake_party which = 14109 }
command = { type = sleep_party which = 14101 }
command = { type = wake_party which = 14110 }
}
action_b = {
name = "ACTIONNAME14182B" # Radical Reconstruction
command = { type = convert_pop_type which = slaves value = labourers }
command = { type = set_slavery value = no }
command = { type = pop_consciousness which = dixie value = 7 }
command = { type = pop_militancy which = dixie value = 3 }
command = { type = strata_income_mod which = rich value = -20 }
command = { type = strata_income_mod which = low value = 20 }
command = { type = remove_countryculture which = dixie }
}
action_c = {
name = "ACTIONNAME14182C" # Lincolnite Reconstruction
command = { type = convert_pop_type which = slaves value = labourers }
command = { type = set_slavery value = no }
command = { type = pop_consciousness which = yankee value = 3 }
command = { type = pop_militancy which = yankee value = 1 }
command = { type = trigger which = 14183 }
command = { type = sleep_party which = 14100 }
command = { type = wake_party which = 14109 }
command = { type = sleep_party which = 14101 }
command = { type = wake_party which = 14110 }
}
}


Um b zu haben, ist deine Idee die richtige.
Um a zu haben, machst Du einfach folgendes:


#########################################################################
# Free the Slaves
#########################################################################
event = {
id = 99197
random = no
country = USA
}

name = "EVT_99197_NAME"
desc = "EVT_99197_DESC"
style = 0

date = { day = 1 month = february year = 1836 }

action_a = {
name = "They shall be free!"
ai_chance = 50
command = { type = convert_pop_type which = slaves value = labourers }
command = { type = set_slavery value = no }
command = { type = sleepevent which = 14182 }
}
action_b = {
name = "We need slavery!"
ai_chance = 50
command = { type = prestige value = -50 }
command = { type = sleepevent which = 14182 }
}
}

So sollte es klappen. Leg einfach die andere Eventdatei schlafen, dann kann sie nicht mehr triggern :).

cyberhunne
07.09.05, 03:15
Hallo Getty,

ich bin ein ziemlicher Stümper was das Eventschreiben anbelangt, habe aber mit diesen Hilfsmitteln nach etwas rumprobieren brauchbare Erfolge erzielt:

1) http://forum.paradoxplaza.com/forum/showthread.php?t=130541 Ein Event-schreib-Programm für Victoria von Spoonist, äußerst handlich da alles mit Dropdown-Menüs versehen ist.

2) http://victoria.nsen.ch/wiki/index.php/Modding_events Beschreibung aller Event-Befehle auf der allseits belieben VickyWiki


Das Schreibprogramm erstellt dir das fertige Event, welches du mittels copy-paste einfach in die jeweilige Event-Textdatei des Landes einfügen musst. Gegebenenfalls ein bisschen an der Event-Nummer schrauben damit keine Konflikte entstehen.

:prost:

Gettysburg
07.09.05, 12:06
Danke, insbesondere für die VickyWiki.

Und noch: Schön, dass man mal wieder etwas von dir hört, cyb. Aber warum immer zu so seltsamer Uhrzeit? :D


P.S. In meinem jetzigen USA-Spiel hat der Civil-War stattgefunden (so knapp 2 Monate lang ;)) und es triggerte das "Reconstruction"-Event im Jahre 1862. Mein Event kam dann, wie gewollt, nicht mehr. Also scheint alles klar zu sein...

cyberhunne
07.09.05, 13:46
Gern geschehen! Das mit der Uhrzeit erklärt sich damit, dass ich gegen halb zwei/zwei Uhr nachts ein schlechtes Gewissen kriege dass ich so spät nocht Vic spiele, so dass ich enttäuscht das Spiel beende und dafür, quasi als Ersatzdroge, Foren über Victoria durchstöbere bevor ich mich zur Nachtruhe verabschiede :D.

Die VichyWiki ist übrigens sehr empfehlenswert, ich schaue immer mal wieder rein. Seit ich auf VIP umgestiegen bin sind die Tips dort leider nicht mehr uneingeschränkt verwendbar.