PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wo liegt der Fehler



Mantikor
12.09.09, 17:54
Ich eröffne mal ein neues Thema weil ich davon ausgehe das ich noch viele Frage haben werde. Aber zu nächst einmal zu meinem ersten Problem. Ich möchte ein paar Startevents schreiben. Bei einem davon soll der Spieler entscheiden dürfen ob er Infoevents aktivieren oder deaktiveren will. Wenn er die Infoevents aktiviert sollte anschließend ein weiteres Event triggern, das den Spieler darüber informiert das die Infoevents freigeschaltet sind.

Dieses Event benötige ich damit ich es als Trigger für alle anderen Infoevents verwenden kann. Dummerweise funktioniert das ganze jedoch nicht so wie ich es mir gedacht habe, weil das Startevent für die Infoevents ständig wieder kommt und das Folgeevent ebenfalls. Das Folgeevent löst übrigens auch schon aus, bevor das Startevent getriggert hat, obwohl das eigentlich gar nicht sein dürfte. Ich kann den Fehler aber nicht finden da ich das Event genauso geschrieben habe wie das Startevent für den NFM Mod, und das löst komischerweise nur einmal aus, müsste also eigentlicht auch bei dem Startevent für die Infoevents funktionieren.

country_event = {

id = 100000

trigger = {
country = GER
exists = GER
not = { has_country_flag = 100000 }


}



title = "Herzlich Willkommen zum NFM Mod"
desc = "Der NFM Mod hat das Ziel das Spiel spannender und realistischer zu gestalten. Zudem soll er für einen historischen Spielverlauf bis Ende 44 sorgen. A-Historische Bündnisse sind daher nicht möglich."
picture = "tannu_tuva"

year = 1936 month = january

option = {
name = "OK" # Sign the agreement
set_country_flag = 100000

}
option = {
name = "OK" # Reject the agreement
set_country_flag = 100000

}
}

# Zitate und Infoevents

country_event = {

id = 100001

trigger = {
country = GER
exists = GER
not = { has_country_flag = 100001 }

}



title = "Zitate und Infoevents"
desc = "Wenn sie wollen können sie historische Zitate und Infoevents aktivieren. Die Infoevents haben keinerlei Einfluß auf den Spielverlauf sorgen jedoch für etwas Abwechslung."
picture = "Weisung10"

option = {
name = "Infoevents aktivieren" # Sign the agreement
GER = { country_event = 100002 }
set_country_flag = 100001

}
option = {
name = "Ich benötigte keine weiteren Events" # Reject the agreement
GER = { country_event = 100002 }
set_country_flag = 100001
}
}



# Zitate werden aktiviert
country_event = {

id = 100002

is_triggered_only = yes

title = "Die Zitate werden aktiviert"
desc = "Sie erhalten ab sofort immer wieder neue Infoevents."
picture = "Memel"

option = {
name = "OK" # Ok
dissent = -5
}
}

GAGA Extrem
12.09.09, 18:29
Versuch mal die country flag auf GER zu beziehen.
Ansonsten: Verwendung einer anderen Flag testen, ich hatte bei EU3 mal ein Problem mit einer reinen Zahl-Flag, evt kann es die engine nicht ab....

Wenn es dann immer noch nicht geht: Die Jahresangabe aus dem Event testweise entfernen!


country_event = {

id = 100000

trigger = {
country = GER
exists = GER
not = { GER = { has_country_flag = setup1 } }
}

title = "Herzlich Willkommen zum NFM Mod"
desc = "Der NFM Mod hat das Ziel das Spiel spannender und realistischer zu gestalten. Zudem soll er für einen historischen Spielverlauf bis Ende 44 sorgen. A-Historische Bündnisse sind daher nicht möglich."
picture = "tannu_tuva"

year = 1936 month = january

option = {
name = "OK" # Sign the agreement
GER = { set_country_flag = setup1 }
}

option = {
name = "OK" # Reject the agreement
GER = { set_country_flag = setup1 }
}
}

# Zitate und Infoevents

country_event = {

id = 100001

trigger = {
country = GER
exists = GER
not = { GER = { has_country_flag = setup2 } }
}



title = "Zitate und Infoevents"
desc = "Wenn sie wollen können sie historische Zitate und Infoevents aktivieren. Die Infoevents haben keinerlei Einfluß auf den Spielverlauf sorgen jedoch für etwas Abwechslung."
picture = "Weisung10"

option = {
name = "Infoevents aktivieren" # Sign the agreement
GER = { country_event = 100002 }
GER = { set_country_flag = setup2 }
}

option = {
name = "Ich benötigte keine weiteren Events" # Reject the agreement
GER = { country_event = 100002 }
GER = { set_country_flag = setup2 }
}
}

# Zitate werden aktiviert
country_event = {

id = 100002

is_triggered_only = yes

title = "Die Zitate werden aktiviert"
desc = "Sie erhalten ab sofort immer wieder neue Infoevents."
picture = "Memel"

option = {
name = "OK" # Ok
dissent = -5
}
}

Mantikor
12.09.09, 20:44
Das hat leider auch nichts gebracht. Trotzdem Danke.

Edit: Ich habe es nach langem hin und her endlich geschafft und gleichzeitig etwas hinzugelernt. Wenn man Änderungen an den Events vornimmt, werden diese nur übernommen, wenn man auch auf das Desktop zurückkehrt und anschließend das Spiel komplett neu startet. Geht man jedoch lediglich in den Hauptbildschirm und startet anschließend das Szenario neu, werden die Änderungen nicht eingelesen. Die logische Folge ist das Events plötzlich fehlen, obwohl man keinen Fehler gemacht hat, oder das fehlerhafte Events trotz Änderungen auch weiterhin fehlerhaft bleiben.

Das Modden wird hierdurch natürlich nicht leichter, da ich nun jedes Mal das Spiel komplett neu starten kann, und somit unnötig Zeit verliere.

Mantikor
18.09.09, 19:39
Ich habe mich mal an den Decisions versucht, musste jedoch feststellen das diese nicht wie geplant funktionieren. Beim vorliegenden Testversuch stellte ich fest das die Decision nur erscheint, wenn sie bereits erfüllt ist. Ist sie noch nicht erfüllt, taucht sie im Diplomatiebildschirm nicht auf. Damit nicht genug, werden die Triggervoraussetzungen auch bei einer erfüllten Decision nicht angezeigt. Es wird lediglich der Beschreibungstext den ich zuvor im Ordner events.csv eingetragen habe angezeigt, jedoch nicht die Triggerbedingungen.

Wenn ich anschließend die Decision anklicke um sie auszulösen, erhalte ich nochmals den Beschreibungstext in Form eines aufploppenden Meldungsfensters, das Folgeevent das Triggern soll, trigert jedoch nicht obwohl ich es angelegt habe, und die Decision bleibt ebenfalls weiterhin anklickbar obwohl sie bereits ausgelöst wurde. Wo liegt der Fehler?

#################################
# Operation Uranus #
#################################
diplomatic_decisions = {

operation_uranus = {
potential = {
not = { has_country_flag = operation_uranus }
tag = GER
year = 1936
GER = { controls = 1800 }

effect = {
set_country_flag = operation_uranus
GER = { country_event = 100007 }
}
ai_will_do = {
factor = 1
}
}
}

G'Kar
18.09.09, 19:44
Es gibt "potential" (ist die Decision sichtbar?) und "allow" (ist sie auch durchführbar?). Ihr sucht vermutlich letzteres.

Mantikor
18.09.09, 20:15
Danke für den Hinweis. Die Bedingungen werden dank dem allow Befehl nun angezeigt. Das Problem das die Decision unendlich anklickbar ist, und die effects nicht auslösen besteht jedoch weiterhin.

GAGA Extrem
18.09.09, 20:21
Versuch die country flag mittels des events zu setzen, evt behebt das dein Problem.

Mantikor
18.09.09, 21:59
Das funktioniert leider auch nicht. Wenn ich das mache stürzt mir das Spiel schon beim Starten ab. Außerdem hat das Rheinlandevent auch die Flagge bereits in der Decison gesetzt. Daran kann es also nicht liegen. Trotzdem Danke.

Edit: Ich habe den Fehler gefunden. Ich hätte vor den effects noch eine Klammer setzen müssen.