Event Building Guide

Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Event Building Guide

Beitrag von [B@W] Abominus »

1. Grundsätzliches und Trigger
2. Commands Teil 1
3. Commands Teil 2
4. Einheiten
5. Wie baue ich ein eigenes Land ein

Sehr geehrte Damen ( :D ) und Herren,

da mich ab und zu das Bedürfnis erfasst, Events für HoI II zu schreiben, habe ich mir gedacht, es wäre doch ganz nett, wenn man hier alles mögliche zum Eventbauen zusammentragen könnte. Ich würde das dann im 1. Post ändern/hinzufügen.

Eure Mitarbeit ist gefragt.

Vorüberlegungen:
  • Was möchte ich machen?
  • Für welches Land soll dieses Event / diese Eventkette gelten?
  • Oder soll es vielleicht sogar ein Zufallsevent werden, daß jeder bekommen "kann"? (random)
  • Oder soll es ein Event sein, welches jeder bekommen "soll"? (invention)
  • Möchte ich nur ein Event schreiben, oder bin ich auch bereit in anderen Dateien "rumzufummeln?
WICHTIG!:
  • Bevor man irgendwas ändert: SICHERHEITSKOPIEN ANLEGEN!!!
  • Nichts ist nerviger, als das die Arbeit, die man sich gemacht hat, nichts gebracht hat, und zudem auch noch die komplette Installation zerschossen hat.
  • Sicherheitskopien der Originaldateien umbenennen und mit Schreibschutz versehen
  • Bei neuen Patches werden eventuell veränderte Dateien überschrieben. Also von den neuen / überarbeiteten Dateien IMMER eine zweite Version anlegen, die funktioniert. Dies hat außerdem den Vorteil, daß wenn man etwas ändert, auf die alte veränderte Version zurückgreifen kann, falls die neue Veränderung nicht funktioniert und man so noch eine Vergleichsmöglichkeit hat.
  • Anmerkungen kann man nur am Ende jeder Zeile, also nach der geschlossenen Klammer ( } ) angeben, und davor muss immer (!) eine Raute stehen, wie z.B. oberhalb des HEAD (siehe unten)
  • Eckige Klammern sind in Events so nutzlos wie ein Kropf. Weiter unten werden Trigger und Commands erklärte, die in ihrer "Infinitivform" eckige Klammern enthalten []. Diese sind im Zweifel weg zu lassen.
Struktur:

Ein Event besteht immer aus vier Teilen:
  1. Head
    • enthält die ID (muss einmalig sein, und vor allem EINE ZAHL!!!, habe schon Leute gesehen, die dort Buchstaben reingeschrieben haben :wirr: )
    • ob es
      • ein normales Event (einmalig), oder
      • Random (zufällig, mehrfach möglich), oder
      • eine Invention (einmalig, für mehrere Länder möglich, Beispiel: Freischalten von Geheimwaffen), oder
      • Persistent (zufällig, mehrfach möglich, als Trigger, so z.B. bei dem Lend-Lease Shipment to the UK) werden soll
    • enthält außerdem das Land, welches das Event erhalten soll (außer es ist eine Invention oder ein Random - Event).
  2. Trigger
    • enthält "Voraussetzungen" für die Entstehung des Events; es ist kein Trigger nötig, um das Event möglich zu machen, allerdings möchte man z.B. das Frankreich im Krieg mit Deutschland ist, damit Vichy trigger ("passiert"), darauf gehen wir später ein
  3. Infos/Date
    • Enthält den Namen des Events,
    • eine Beschreibung (desc), die Unterhalb des Bildes angezeigt wird
    • Style (keine Ahnung wo für das gut ist, scheinbar noch ein Überbleibsel aus EU2, sozusagen Datenmüll :D
    • ein Bild (kommen wir später drauf zurück)
    • der mögliche Beginn des Events (date), falls ein Offset und ein Deathdate angegeben sind
    • den Offset, der angibt, wie oft die Engine (das Programm) überprüft, ob die Bedingungen (trigger), das Datum/der Zeitraum (liegt zwischen Date und Deathdate) erfüllt sind
    • das Enddatum (deathdate) des Events, das den Zeitraum, der durch "date" eröffnet wurde, abschließt
  4. Action/Command
    • action_a, action_b, action_c und action_d sind mögliche Variablen, ein Event kann maximal vier Auswahlmöglichkeiten haben, wobei die erste (action_a) eine Chance von 95% hat (bei bei der KI, der Mensch kann natürlich jedes auswählen, es steht im frei)
    • "Name" gibt an, wie die Auswahl beim Event erscheint, also unter welcher Bezeichnung
    • die sogenannten "command"s geben an, welcher Effekt eintreten soll, z.B. die Hinzufügung von Divisionen, oder die Erhöhung des Unmuts (Jaycee wird eine Auflistung führen und NATÜRLICH wir er alle testen! :D )

Code: Alles auswählen

#########################################################################
#  Re-occupation of the Rhineland - HUMAN ONLY
#########################################################################
[color=YellowGreen]event = {
	id = 2000
	random = no
	country = GER[/color]
[color=RoyalBlue]	trigger = {
		ai = no
		NOT = {
			war = { country = GER country = FRA }
			alliance = { country = GER country = FRA }
		}
		garrison = { country = GER province = 75 size = 1 }
	}[/color]

[color=Magenta]	name = "EVT_2000_NAME"
	desc = "EVT_2000_DESC"
	style = 0
	picture = "Rhineland"

	date = { day = 0 month = january year = 1936 }
	offset = 1
	deathdate = { day = 30 month = december year = 1947 }[/color]

[color=Red]	action_a = {
		name = "OK"
		command = { type = relation which = FRA value = -15 }
		command = { type = relation which = ENG value = -5 }
		command = { type = relation which = BEL value = -10 }
		command = { type = relation which = HOL value = -5 }
		command = { type = belligerence which = GER value = 5 }
		command = { type = dissent value = -2 }
		command = { type = money value = 500 }
		command = { type = peacetime_ic_mod value = 10 }
		command = { type = manpowerpool value = 50 }
		command = { type = trigger which = 51 } # UK Gears up for war
		command = { type = trigger which = 52 } # France Gears up for war
		command = { type = sleepevent which = 2060 }
		command = { type = domestic which = interventionism value = 1 }
		command = { type = domestic which = defense_lobby value = 1 }
	}
}[/color]
Head:
  • ID - dies muss eine natürliche Zahl sein, die noch nicht vergeben ist. Um sicher zu gehen, daß eine ID noch nicht vergeben ist, schaut man in das Verzeichnis ..\Hearts of Iron 2\db\events und klickt dort auf "Suchen". Anschließend kann man auf der linken Seite eine beliebige Zahl eingeben und somit prüfen, ob die ID schon vergeben ist. Hier noch ein Screenshot:*KLICK*
    Es bietet sich übrigens an, eine Textdatei anzulegen, in der man die ID's abspeichert, damit man weiß, wo welche ID vergeben ist. Bei HoI hat man sowas scheinbar vergessen, bei Victoria ist es allerdings enthalten.
  • Eventklassifikation - Es gibt, wie bereits oben beschrieben, mehrere Möglichkeiten. Insgesamt sind vier Klassen bekannt. Es kann immer nur eine Klasse pro Event existieren. Diese Klasse muss direkt nach der ID folgen.
    • Code: Alles auswählen

      Random = no
      Bedeutung: Es ist ein Event, was im ganzen Spiel lediglich ein mal triggern kann. Es ist notwendig, daß es auch für ein Land definiert wird, bzw. auf eine Provinz (siehe weiter unten). Dies sieht man unten im Event.
    • Code: Alles auswählen

      Random = yes
      Bedeutung: Es ist ein Event, was im Spiel mehrfach triggern (auftreten) kann, die Wahrscheinlichkeit ist allerdings allgemein recht gering. Grundsätzlich ist es nicht möglich, das Event auf Länder zu beschränken, allerdings ist nichts unmöglich, allerdings kommen wir dazu später (Kategorie: Kniffe und Tricks beim Eventbasteln)
    • Code: Alles auswählen

      invention = yes
      Bedeutung: Es ist ein Event, welches für jedes Land, das die Bedingungen (trigger) erfüllt, erscheinen "kann", und zwar genau ein Mal. So muss man also nicht für jedes Land ein eigenes Event schreiben. Beispiel in Vanilla: Geheimwaffen. Nicht für jedes Land gibt es ein Event, daß z.B. die Turbo CAG freischaltet. Somit muss man lediglich ein Event schreiben muss.
    • Code: Alles auswählen

      persistent = yes
      Bedeutung: Kombiniert mit einer Länderanbindung führt dies dazu, daß dieses Event zufällig triggert, und auch mehrfach auftreten kann. Es ist sozusagen dazu geeignet, als Folgeevent zu fungieren, so z.B. beim Lend-lease System der USA mit den Engländern und den Sowjets.
  • Länderdefinition/Provinzdefinition - Falls es sich nicht um ein Random - Event handelt, muss man entweder das Land angeben, welches das Event erhalten soll, oder eine Provinz-ID angeben, für die das Event gedacht ist.
    • Code: Alles auswählen

      country = TAG
      Bedeutung: Für TAG muss man den dreistelligen TAG des Landes angeben, welches das Event erhalten soll. GER wäre Deutschland, SOV wäre Sowjetunion, AUS wäre Österreich etc.
    • Code: Alles auswählen

      province = ID
      Bedeutung: Für ID muss man die Nummer der Provinz eingeben, auf die es zutreffen soll. Die ID bekommt man heraus, in dem man im laufendem (möglicherweise pausiertem) Spiel F12 drückt und dort "showid" (ohne ""-Zeichen) eingibt. Beim anvisieren der Provinz mit dem Mauszeiger erscheint unten rechts eine Zahl. Dies ist die begehrte ID der Provinz.
Trigger:
  • Ein Trigger ist eine sogenannte "Voraussetzung", er dient dazu, das ein Event nicht "einfach so" stattfindet, sondern bestimmte Dinge vorliegen müssen, wie z.B. ein Bündnis oder eine bestimmte Nation muss im Krieg sein. HoI II hat viele neue Trigger eingeführt, die jemanden wie mich natürlich dazu verleiten, alles mögliche auszuprobieren. Trigger werden in sogenannten geschweiften Klammern eingeklammert { }. Für jede offene Klammer muss auch eine geschlossene existieren.
    • Bedeutung: Wenn man von mehrere Dingen mindestens eines einzutreten erdenkt, wie z.B. das ein Event eintreten soll wenn eine von zwei Provinzen vom Feinde eingenommen wird.
    • Bedeutung: Zwei Trigger müssen gleichzeitig erfüllt sein. So könnte z.B. die Kontrolle von Wien und Berlin von Nöten sein, damit der Gröfaz aufgibt.
    • Bedeutung: Eine Bedingung darf NICHT vorliegen. Z.B. darf Deutschland Berlin nicht kontrollieren, damit das entsprechende Event triggert.
    • Code: Alles auswählen

      event = x
      Bedeutung: Ein Event muss vorher bereits geschehen sein. Z.B. könnte die "Zerschlagung der Resttchechei" nur funktionieren, wenn vorher bereits das Event "Sudetenkrise" statt fand. Das X muss wieder eine natürliche Zahl sein. Es ist die ID des Events, welches stattfand und somit als Voraussetzung gilt.
    • Code: Alles auswählen

      random = x
      Bedeutung: Das Event unterliegt einem gewissen Zufall. Der Zufall wird mit einer Prozentzahl (x) angegeben. Je höher die Zahl, desto eher eröffnet sich die Möglichkeit, daß das Event feuert. Wenn man z.B. ein Event auf einen einzigen Tag beschränkt, und x = 50 setzt, würde man eine 50%ige Chance haben, daß das Event an diesem Tag feuert.
    • Code: Alles auswählen

      intel_diff = x
      Bedeutung: Es ist die Fähigkeit des Geheimdienstes gemeint. X ist eine natürlich Zahl, die positiv, wie negativ sein kann und nach der Rechnung läuft: x = unsere Geheimdienstfähigkeit subtrahiert um die Geheimdienstfähigkeit unseres Feindes, um den es im Event geht, wobei x gleichgesetzt ist mit "gleich x" und "größer als x". Wenn man z.B. "kleiner x" haben möchte, muss man es mit dem NOT Befehl kombinieren.
    • Code: Alles auswählen

      dissent = x
      Bedeutung: Vorhandener Unmut. Je höher x ist (muss auch hier wieder eine natürliche Zahl sein), je höher muss auch der Unmut des Landes sein, welches das Event bekommt. Wenn z.B. dissent = 12 gesetzt wird, und es für das Land Deutschland sein soll, muss Deutschland einen Unmut von 12 oder höher haben. Soll es unter 12 sein, muss man wieder mit dem NOT - Befehl arbeiten.
    • Code: Alles auswählen

      leader = x
      Bedeutung: Es wird überprüft, ob der entsprechende Anführer existiert. Die entsprechende ID kann man ersehen im jeweiligen File des Landes im Ordner ..\Hearts of Iron 2\db\leaders\.. Rommel hat z.B. die ID 230. Ein nicht existentes Land kann auch keine Leader haben. So kann aber auch geschaut werden, ob Rommel da ist, auch wenn das Event für England sein soll. Auch hier: jede ID ist einzigartig.
    • Code: Alles auswählen

      government = [communist/fascist/democratic]
      Bedeutung: Es gibt in HoI drei große Ausrichtungen:
      • Kommunismus (z.B. Sowjetunion)
      • Faschismus (z.B. Italien)
      • Demokratie (z.B. England)
      Es gibt bestimmte Dinge, die einfach nicht zum Kommunismus passen (z.B. Privatisierung der Industrie). So kann man z.B. sagen, daß dieses Event nur Länder/das Land bekommen sollen/soll, welche/s einer bestimmten Regierungsform entspricht.
    • Code: Alles auswählen

      ideology = [nazi/fascist/paternal_autocrat/social_conservative/market_liberal/social_liberal/social_democrat/left_wing_radical/leninist/stalinist]
      Bedeutung: Jedes Land ist im Rahmen seiner Regierungsform einer Idiologie verschrien. Während die Italiener und die Deutschen Faschisten sind, ist der Duce ein "echter" Faschist, während der Führer ein "Nationalsozialist", also noch eine Stufe weiter "rechts" ist. Es gibt folgende Idiologien:
      • Nationalsozialismus (nazi)
      • Faschismus (fascist)
      • Monarchie (paternal_autocrat)
      • Sozialkonservativ(social_conservative)
      • Marktliberal (market_liberal)
      • Sozialliberal (social_liberal)
      • Sozialdemokratisch (social_democrat)
      • Linksradikal (left_wing_radical)
      • Leninist (leninist)
      • Stalinist (stalinist)
    • Code: Alles auswählen

      atwar = [yes/no/country tag]
      Bedeutung: Ist das Land, welches das Event erhält im Kriege, oder nicht? Oder soll das Event für ein anderes Land triggern als das, welches im Trigger definiert wird, im Kriege ist? Möchte man z.B. das ein Event fürs Deutsche Reich triggert, wenn England nicht im Kriege ist, so müsste es in Kooperation mit dem NOT - Befehl so heißen:

      Code: Alles auswählen

      NOT = { atwar = ENG }
      Somit wird klargestellt, daß das Event nur triggern kann, wenn England nicht im Kriege ist.
    • Code: Alles auswählen

      war = { country = a  country = b }
      Bedeutung: Sind die Länder A und B im Kriege miteinander? Dazu sollte man natürlich die entsprechenden TAG's kennen.
    • Code: Alles auswählen

      minister = [minister id]
      Bedeutung: Ist der Minister (dessen ID hier angeben wird) am "leben", also im Spiel? Die entsprechende ID kann man ersehen im jeweiligen File des Landes im Ordner ..\Hearts of Iron 2\db\ministers\.. Adolf hat z.B. die ID 1.
    • Code: Alles auswählen

      major = [yes/no]
      Bedeutung: Ist das Land, welches dieses Event erhält, ein Major? Majors sind hardcoded, es lässt sich nicht abändern. Die Liste ist abschließend: England (ENG), Frankreich (FRA), Deutsches Reich (GER), Japan (JAP), Unzivilisierte Staaten von Nordamerika (USA), Italien (ITA) und die Sowjetunion (SOV).
    • Code: Alles auswählen

      ispuppet = [Country Tag]
      Bedeutung: Das in diesem Trigger angegebene Land ist eine Marionette.
    • Code: Alles auswählen

      puppet = { country = [tag 1] country = [tag 2] }
      Bedeutung: Das Land 1 ist eine Marionette von Land 2. Z.B. ist die USA der Herr über die Philippinen. Somit wäre also die USA Land 2 und die Philippinen wären Land 1

      Code: Alles auswählen

      puppet = { country = PHI country = USA }
    • Code: Alles auswählen

      headofgovernment = [minister id]
      Bedeutung: Ist der Regierungschef derjenige, dessen ID angegeben wird?
    • Code: Alles auswählen

      headofstate = [minister id]
      Bedeutung: Ist der Staatschef derjenige, dessen ID angegeben wird?
    • Code: Alles auswählen

      ai = [yes/no/country tag]
      Bedeutung: Wenn hier YES angegeben wird, kann das Event nicht triggern, wenn das Land vom Spieler gespieltes wird. Wird NO eingegeben, kann es NUR für den Spieler triggern. Die KI wird niemals dieses Event erhalten. Man kann alternativ auch ein Land angeben, welches AI-kontrolliert sein soll. Z.B. möchte man, daß ein Event triggert für das vom Spieler kontrollierten Deutschen Reiches, allerdings muss zusätzlich England von der KI kontrolliert werden. (Kontrolliert bedeutet in diesem Falle gespielt, und nicht die körperliche Kontrolle im Sinne von "eingenommen").

      Code: Alles auswählen

      ai = ENG
      Wenn man nun möchte, daß das Event für Deutschland triggert, und England vom Spieler kontrolliert sein soll, so würde es im Zusammenspiel mit dem NOT - Befehl so aussehen:

      Code: Alles auswählen

      NOT = { AI = ENG }
    • Code: Alles auswählen

      technology = x
      Bedeutung: Um das Event zu triggern muss das entsprechende Land eine bestimmte Technologie erforscht haben. Die ID der Technologie ist für x einzugeben. Die entsprechende ID kann man ersehen im jeweiligen File des Technologiebaums im Ordner ..\Hearts of Iron 2\db\tech\.. Blitzkrieg-Doktrin hat z.B. die ID 6260.
    • Code: Alles auswählen

      is_tech_active = [tech id]
      Bedeutung: Ist die Technologie erforschbar zu diesem Zeitpunkt? Es ist nicht jederzeit alles erfoschbar. Zuweilen benötigt man mehrere Technologien, um eine weitere zu erfoschen. Z.B. leichte Panzer und Panzerabwehrgeschütze ergeben die Möglichkeit, Jagdpanzer zu erforschen. Die ID erfährt man wie eine Zeile weiter oben.
    • Code: Alles auswählen

      manpower = x
      Bedeutung: Die Nation, die dieses Event erhalten soll, muss mindestens die Menge x an Manpower (Wehrfähigen) vorweisen um dieses Event zu erhalten. Ist x = 40 ist auch die Wehrfähigenzahl von 50 möglich als Trigger, da x = und > bedeutet (größer als). Wenn man es unter 40 haben möchte (oder einer anderen Zahl = x) so muss man wieder mit dem NOT - Befehl arbeiten, der weiter oben ausführlich und mehrfach erklärt wurde.
    • Code: Alles auswählen

      flag = [name]
      Bedeutung: Überprüft, ob ein "globaler" Merker gesetzt wurde. Leider wurde eine Relativierung, wie man sie noch in Victoria findet, auf ein Absolute gesetzt. Entweder existiert der Merker, oder er existiert nicht. Näheres dazu folgt bei den Commands. Bemerkung: Ich bin in der Hinsicht ein schlechter Erklärer, deshalb vielleicht dieser Thread hier. Möge mir einer der Regenten bitte eine plausible Erklärung bringen. Danke. P.S.: Ich weiß zwar, was es bewirkt, auch habe ich viele Events damit versehen, aber... ich kann es schlichtweg nicht erklären :D .
    • Code: Alles auswählen

      local_flag = [name]
      Bedeutung: Selbe Definition wie eine Zeile weiter oben, nur mit der Einschränkung, daß es lediglich für ein Land gesetzt wurde.
    • Code: Alles auswählen

      owned = { province = a data = tag }
      Bedeutung: Überprüft, ob die Provinz a im Eigentum von dem Land ist, welches in data definiert wurde (TAG). Eine Definierung von -1 bedeutet, daß das Land, welches das Event bekommt, die Provinz als Eigentum ansehen muss. Die Kontrolle ist dabei unerheblich. Wenn zwei Flaggen in der Provinz wehen muss es die hintere sein. Ist es die Vordere, ist es nur der derzeitige Besitzer, der die aktuelle Sachherrschaft ausübt.
    • Code: Alles auswählen

      control = { province = a data = tag }
      Bedeutung: Überprüft, ob das Land (in Data definiert) über die tatsächliche Sachherrschaft der Provinz a verfügt, es also kontrolliert. Auch hier ist wieder eine Definition mit -1 für das Land möglich, um es auf das Land zu fixieren, welches das Event erhält. Ein feststehender Eigentumsvermerk ist also nicht von Nöten.
    • Code: Alles auswählen

      exists = country
      Bedeutung: Ist das Land, welches hier definiert wird, existent oder nicht. Falls es nicht existent sein soll, so muss wieder mit dem NOT - Befehl gearbeitet werden.
    • Code: Alles auswählen

      alliance = { country = a  country = b }
      Bedeutung: Überprüft, ob die Lander a und b in der gleichen Allianz sind. Dabei ist es unerheblich, ob man in der Allianz der "großen Drei" ist, oder eine "minor Allianz" bildet.
    • Code: Alles auswählen

      access = { country = [tag1] country = [tag2] }
      Bedeutung: Überprüft, ob das Land mit TAG 1 dem Land mit TAG 2 Durchmarschrechte gewährt.
    • Code: Alles auswählen

      non_aggression = { country = [tag1] country = [tag2] }
      Bedeutung: Überprüft, ob die Länder 1 und 2 einen aktiven Nicht-Angriffspakt haben.
    • Code: Alles auswählen

      trade = { country = [tag1] country = [tag2] }
      Bedeutung: Überprüft, ob die Länder 1 und 2 einen aktiven Handelsvertrag haben.
    • Code: Alles auswählen

      guarantee = { country = [tag1] country = [tag2] }
      Bedeutung: Überprüft, ob das Land 1 dem Land 2 die Unabhängigkeit garantiert.
    • Code: Alles auswählen

      year = x
      Bedeutung: Überprüft, ob das Jahr x erreicht wurde, bzw. ob es schon überschritten wurde (ist gleichzusetzen).
    • Code: Alles auswählen

      energy = x
      Bedeutung: Überprüft, ob die Menge x an Energie vorhanden ist.
    • Code: Alles auswählen

      oil = x
      Bedeutung: Überprüft, ob die Menge x an Öl vorhanden ist.
      rare_materials = x[/code] Bedeutung: Überprüft, ob die Menge x an Seltenen Materialien vorhanden ist.
    • Code: Alles auswählen

      metal = x
      Bedeutung: Überprüft, ob die Menge x an Metall vorhanden ist.
    • Code: Alles auswählen

      supplies = x
      Bedeutung: Überprüft, ob die Menge x an Supplies (Versorgungsgüter) vorhanden ist.
    • Code: Alles auswählen

      lost_VP = { country = [tag] value = X }
      Bedeutung: Überprüft, ob die prozentuale Menge x der in des Landes [tag] als Eigentum anzusehenden Provinzen mit Siegespunkten in gegnerischer Hand befindlich ist (nicht die Provinzen sind relevant, sondern die prozentuale Anzahl an Siegespunkten an der gesamten im Land befindlichen Siegpunkte (die man als Eigentum ansieht)). Natürlich ist auch hier wieder die Grenze nur durch x nach unten gesetzt. Nach oben ist keine Grenze (wobei auch hier eine natürlich Grenze von 100 steht, da man nicht mehr als 100% seiner "owned" Siegpunkte verlieren kann).
    • Code: Alles auswählen

      lost_national = { country = [tag] value = X }
      Bedeutung: Die in x angegebene (prozentuale) Anzahl an nationalen Provinzen, die man verloren hat (bzw. das Land, welches in country angegeben ist) gibt den Ausschlag fürs Event. Bemerkung: Bin mir nicht sicher, ob es hier nicht um nationale "owned" Provinzen geht, da man z.B. als DR auch Ansprüche auf Elsas - Lothringen hat, und ob diese, selbst wenn man sie nicht als Eigentumer innehat, auch dazugerechnet werden.
    • Code: Alles auswählen

      lost_IC = { country = [tag] value = X }
      Bedeutung: Die in x angegebene (prozentuale) Anzahl an Industriepunkten/-kapazität, die man verloren hat (bzw. das Land, welches in country angegeben ist) gibt den Ausschlag fürs Event.
    • Code: Alles auswählen

      domestic	{ type = field value = x }
      Bedeutung: Hier kann definiert werden, ob das Event bei einer bestimmten Slidereinstellung feuert. Dabei gilt x gleich der Variblen im Bereich = x und > x. Der linke Wert in der Diplomatieansicht ist immer der positive Wert, der rechte Wert der negative Wert. Also: Je geringer der Wert, desto eher ist es der negative Wert (mit einem Minuszeichen gekennzeichnet). Es gibt mehrere sogenannte "fields", die hier abschließend aufgeführt sind: Bemerkung: Es ist uns nicht ganz klar, ob nach dem domestic ein = muss oder nicht.
    • Code: Alles auswählen

      division_exists = { type = [id type] id = [id id] }
      Bedeutung: Eine bestimmte, bereits vor Beginn des Szenarios bestehende Division muss existieren. Hat wenig relevanz, da man die ID von neu generierten Einheiten nicht im Voraus bestimmen kann.
    • Code: Alles auswählen

      division_in_province = { id = { type = [id type] id = [id id] } province = X }
      Bedeutung: Auch hier müsste eine bestimmte Einheit existieren, allerdings muss hier auch zusätzlich noch eine Provinz angegeben sein, in der sich diese Einheit aufhält.
    • Code: Alles auswählen

      axis = X
      Bedeutung: Die Achse hält die Menge X an Siegpunkten. Es ist auch hier wieder die Definition = x und > x.
    • Code: Alles auswählen

      allies = X
      Bedeutung: Die Alliierten halten die Menge X an Siegpunkten. Es ist auch hier wieder die Definition = x und > x.
    • Code: Alles auswählen

      comintern = X 
      Bedeutung: Die Kommunisten halten die Menge X an Siegpunkten. Es ist auch hier wieder die Definition = x und > x.
    • vp = X [/code] Bedeutung: Die derzeitige gehaltene X an Siegpunkten der Nation, die dieses Event erhält. Es ist auch hier wieder die Definition = x und > x.
    • Code: Alles auswählen

      range = { min = x1 max = x2 }
      Bedeutung: Das Event für die Nation feuert, wenn die Siegpunkte innerhalb einer bestimmten Grenze sind. Untergrenze ist x1, Obergrenze ist x2. Es ist natürlich nicht möglich, daß x2 kleiner ist als x1.
    • Code: Alles auswählen

      belligerence = { country = [tag] value = X }
      Bedeutung: Der Belligerence Wert ist sowas wie der BADBOY - Faktor aus anderen Paradoxspielen und gibt an, wie "böse" jemand ist, also ob dieses Land schon viele andere annektiert hat, oder andere "böse" Sachen gemacht hat, wie z.B. die Wiederbesetzung des Rheinlandes. Bei Country muss wieder der TAG des Landes angegeben werden, für welches der BB gesucht wird. Z.B. könnte ein Event für die USA nur triggern, wenn das Deutsche Reich einen BB von 50 oder mehr hat (auch hier gilt wieder = x und > x).
    • Code: Alles auswählen

      [div type] = X
      Bedeutung: Hier wird abgeprüft, ob eine bestimmte Anzahl an Truppen zur Verfügung stehen. So könnte z.B. für ein AI - Event (nur für die KI gedachte Events) als Voraussetzung gelten, daß das Land 50 leichte Panzer gebaut hat. Dazu müsste es dann heißen:

      Code: Alles auswählen

      light_armor = 50
      Eine vollständige Liste der verschiedenen Divisions- und Brigadeeinheiten wird weiter unten aufgeführt unter der Überschrift Einheiten. Auch hier gilt wieder: Das x gibt eine Zahl + Unbekannt an, wobei unbekannt eine natürliche positive Zahl sein muss, allerdings auch 0 sein kann.
    • Code: Alles auswählen

      under_attack = [tag]
      Bedeutung: Das Land [tag] wird just in diesem Moment attakiert. Es ist also eine taktische Variante der atwar - Konstante.
    • Code: Alles auswählen

      difficulty = X
      Bedeutung: Die zu Beginn des Szenarios eingestellte Schwierigkeit reicht von Sehr Leicht über Normal bis Sehr Schwer und hat insgesamt fünf Einstellungen. Jeder Schwierigkeit ist eine Zahl zugedacht, wobei Sehr Leicht 0 ist und Sehr Schwer die Nr. 5. Da auch hier wieder ein X ersetzt wird, gilt X als Untergrenze. Möchte man z.B. ein Event haben, was für Normal und schwerer sein soll, muss man

      Code: Alles auswählen

      difficulty = 2
      eingeben. Soll es allerdings nur für Normal oder nur für Sehr Leicht und Leicht sein, so muss man auch hier wieder mit dem NOT - Befehl arbeiten und somit Integrale bilden
    • Code: Alles auswählen

      garrison = { country = [tag] province = [province] type = [air/land/naval] size = [number of divisions] area = [yes/no] }
      Bedeutung: Eine Division/ein Schiff/ein Flugzeug hat in einer bestimmten Provinz zu sein, damit das Event feuert. Wenn man Type frei lässt, also auch Type = weg lässt, bedeutet es, daß es egal ist, welcher Art die Einheit ist. An sonsten muss man dort den Einheitentypus angeben, der weiter unten erklärt wird unter Einheiten. Die Anzahl der in dieser Provinz stationierten Einheiten kann unter Size definiert werden, wobei hier die Untergrenze angegeben wird. Mehr ist natürlich möglich, außer man legt eine integrale Negativierung mit dem NOT - Befehl (ok, das war komisch ausgedrückt, ist aber das gleiche Prinzip wie mehrfach oben erkärt). Wenn

      Code: Alles auswählen

      Area = yes
      angegeben ist, ist die Area gemeint, in der sich die Provinz befindet und dort werden alle Divisionen gezähl. Für Seezonen darf man laut Paradox NICHT yes setzen, warum auch immer. Es könnte mal jemand testen, denn auch Seezonen haben ID's.



P.S. Ich bin natürlich noch nicht fertig :tongue: .

Hier gibt es auch noch den Harvard's HoI Hacking Haven

Die Commands werden mich mit Sicherheit bis Freitag nerven... grrr... viel zu viel :tongue:

GNÄÄÄÄ!!! Ich habe das erste Mal die Zeichenbeschränkung ÜBERSCHRITTEN!!! So ein Mist, jetzt darf ich die Commands in nen neuen Post packen. Ich könnte kotzen :D .
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

Mmmh, sehr hübsch.

Ich kann noch folgendes dazu beitragen:

HOI2 Wiki - Modding
http://hoi2.nsen.ch/wiki/index.php/Mods_and_Modding

HOI2 Lib:
http://www.buegesoft.net/HoI2/mods01.html

Event Befehle und Trigger:

Code: Alles auswählen

TRIGGERS:
and
or
not
event = x  #event has happened.
random = x 			( % )
intel_diff = x 		( >= x, x = our intel - enemy intel )
dissent = x ( >= x )
leader = x #leader exists
government = [communist/fascist/democratic]
ideology = [nazi/fascist/paternal_autocrat/social_conservative/market_liberal/social_liberal/social_democrat/left_wing_radical/leninist/stalinist]
atwar = [yes/no/country tag] # Country tag added to see if other countries are at war
minister = [minister id] # Is minister alive?
major = [yes/no]	# True if the country is ENG, FRA, GER, JAP, USA, ITA or SOV
ispuppet = [Country Tag]
puppet = { country = [tag 1] country = [tag 2] } # True if tag 1 is puppet of tag 2
headofgovernment = [minister id]
headofstate = [minister id]
ai = [yes/no/country tag] # Is the country AI controlled?
technology = x 			 		# True if a certain tech is known.
is_tech_active = [tech id]		# True if the tech is researchable.
manpower = x (>=x)#true if a nation have at least that amount of manpower.
flag = [name]  				#true if the global flag exists and is set to true.
local_flag = [name]			#true if the local flag exists and is set to true.
owned = { province = a data = tag }	# checks if province is owned by country x (if data == -1 then its for country receievin event)
control = { province = a data = tag }	# checks if province is controlled by country x (if data == -1 then its for country receievin event)
exists = country #if country exists.
alliance = { country =a  country = b }	# checks if a and b is in the same military alliance
access = { country = [tag1] country = [tag2] } # checks if tag1 is granting military access to tag2
non_aggression = { country = [tag1] country = [tag2] } # checks if tag & tag have a non_agg_pact active
trade = { country = [tag1] country = [tag2] } # checks if tag1 and tag2 have an active trade agreement
guarantee = { country = [tag1] country = [tag2] } # checks if tag1 is guaranteeing the independence of tag2
war = { country =a  country = b }	# checks if a and b is at war
year = x (>=x)
energy = x
oil = x
rare_materials = x
metal = x
supplies = x
lost_VP = { country = [tag] value = X }			# X% or more of _owned_ VPs in enemy hands
lost_national = { country = [tag] value = X }	# X% or more of national provs in enemy hands
lost_IC = { country = [tag] value = X }			# X% or more of national IC in enemy hands
domestic	{ type = field value = x }
division_exists = { type = [id type] id = [id id] }
division_in_province = { id = { type = [id type] id = [id id] } province = X }
axis = X # axis holds at least X vp
allies = X # allies holds at least X vp
comintern = X # comintern holds at least X vp
vp = X											# Currently held Key Points + extra VP >= X
range = { min = x max = x }	# true if vp is within (>= && <= the range)
belligerence = { country = [tag] value = X }	# No country field means "this country". True if Belligerence >= X.
[div type] = X									# X or more of that type of division.
under_attack = [tag]							# Country is under attack
difficulty = X # Difficulty at level X or harder. [0-4],  0 is Very Easy.
garrison = { country = [tag] province = [province] type = [air/land/naval] size = [number of divisions] area = [yes/no] } # No type field means "all division types". "area = yes" means "count divisions in all provinces in this controlled Area". Do not use "area = yes" for sea provinces!

COMMANDS:
type = endgame value = [type]   # (0=quit, 1=eliminated, 2=draw, 3=axis victory, 4=axis total vic, 5=allies-victory, 6=alliestotal, 7=commie, 8=commietotal)
type = 	extra_tc value = X
type =	alliance which = [tag] (-1 for random)
type =	inherit which = [tag] (-1 for random)
type =	country which = [tag] 					# Change the tag of the country.
type =	trigger which = [event id]				# Immediately trigger another event
type =	capital which = [prov id]				# Change capital
type =	addcore   which = [prov id]
type =	removecore which = [prov id]
type =	secedeprovince which = [tag]  value = [prov id]
type =	control which = [tag]  value = [prov id]
type =	sleepevent which = [event id]
type = setflag which = [keyname]				# Global flag, visible for all countries
type = clrflag which = [keyname]				# Global flag, visible for all countries
type = local_setflag which = [keyname]			# Local flag, visible only for this country
type = local_clrflag which = [keyname]			# Local flag, visible only for this country
type = steal_tech which = [country tag/-1 for random non-ally] 											# Steals a random tech. Results in a blueprint.
type = gain_tech which = [tech id/-1 for random tech/-2 for a random tech currently being researched]	# Results in a blueprint, not a technology.
type = vp value = X 	# Offmap Victory Points
type = research_sabotaged
type = regime_falls
type = belligerence which = [country] value = X 	# No which field means "this country".
type = relation which = [country] value = X				# Add X to the relation
type = set_relation which = [country] value = X		# Set relation to X
type = civil_war 									# Civil war with any possible revolter that has shared national provinces
type = civil_war which = [rebel country tag]		# NOTE: This MUST be a tag which has regular_id set to this country, or vice versa.
type = set_leader_skill which = [leader id/-1] value = [new value]
type = dissent value = [value to add]
type = resource which =[resource type] value = X # % of theoretical maximum daily production added to national resource pool.
type = supplies value = [value to add] where = [prov] # If no "where" field is used, it goes to the national pool.
type = oilpool value = [value to add] where = [prov] # If no "where" field is used, it goes to the national pool.
type = metalpool value = [value to add]
type = energypool value = [value to add]
type = rarematerialspool value = [value to add]
type = money value = [value to add]
type = province_keypoints which = [province id/-1] value = [keypoints to add]
type = peace which = [country tag] value = [0/1] # 1 means separate peace - i.e. pull out of alliance. 0 is full peace, for the whole alliance.
type = war which = [country tag]
type = manpowerpool value = [value to add] # manpower
type = relative_manpower value = [%] 	# Add a percentage of [yearly national manpower income * 50] to the pool
type = allow_dig_in						# Troops may now dig in
type = make_puppet which = [country tag]
type = coup_nation which = [country tag]
type = access which = [country tag] # Grant military access _to_ a country
type = sleepteam which = [tech team id]		# Makes this team unavailable (sets "start year" to 2001. Will complete current project though.)
type = waketeam which = [tech team id]		# Makes this team available (sets "start year" to previous year.)
type = sleepminister which = [minister id/-1]
type = sleepleader which = [leader id/-1]
type = switch_allegiance which = [unit id type/-1] value = [unit id id]	where = [country tag]	# -1 is a random unit (value will be ignored).
type = delete_unit which = [unit id type/-1] value = [unit id id] # -1 is a random unit (value will be ignored).
type = independence which = [country tag] value = [0/1] when = [0/1] # value 0 - units in the area change allegiance, 1 - they don't.  , when 0=normal, 1= force them to be democratic
type = ai which = [file name]	# Switches the ai file of a country.
type = build_division which = [division type] value = [brigade type]
type = construct which = [building type] where = [prov id/-1/-4] value = [additional size]	# -1 is random valid province. -4 is random national province that already has a building of the same type of at least size 1.
type = add_corps which = [name] value = [land/air/naval] when = [leader ID] where = [province_ID]
type = activate_division which = [div id type] value = [div id id]  [where = province] when = [0/1] # Activates a dormant division. If "when = 0" the division will deploy to the force pool if the target province is enemy controlled. If a preceding add_corps command has been used, the division will go to that unit, ignoring the 'when' and 'where' directives.
type = add_division which = [name] value = [div type] when = model where = [brigade type] # Brigade model is always the latest. If a preceding add_corps command has been used, the division will go to that unit, otherwise to the force pool.
type = remove_division which = [div id type/-1] value = [div id id]	# Remove a division from the scenario. -1 is a random division (the value field will be ignored).
type = remove_division which = "Exact Name" value = [country tag]	# Remove a named division from the scenario (for a certain country.)
type = damage_division which = [div id type/-1] value = [div id id] where = X	# where = Percent of Max Strength. Negative value is strength gain.
type = disorg_division which = [div id type/-1] value = [div id id] where = X	# where = Percent of Max Strength. Negative value is org gain.
type = end_access which = [country tag]	# Revoke military access for nation
type = leave_alliance
type = end_non_aggression which = [country] where = [country] 					# end a non aggression pact between these countries
type = non_aggression which = [country] where = [country]						# create a non aggression pact between these countries
type = end_trades which = [country] where = [country] 							# end all trade agreements between these countries
type = end_guarantee which = [country] where = [country] 						# country 1 no longer guarantees independence of country 2
type = guarantee which = [country] where = [country] 							# country 1 now guarantees independence of country 2
type = allow_convoy_escorts
type = transport_pool which = [country] value = X (adds/removes transports from pool)
type = escort_pool which = [country] value = X (adds/removes escorts from pool)
type = peacetime_ic_mod value = X(%) # Additive, and ONLY applied when a country is at peace. Default base value is 100%.
type = end_puppet	# End puppet status
type = end_mastery which = [country tag]	# End puppet mastery over another nation
type = convoy which = [startprov] value = [endprov] when = [resource_bits] 1=oil, 2=metal, 4=energy, 8=rare_materials, 16=supplies
type = domestic	which = [democratic/political_left/free_market/freedom/professional_army/defense_lobby/interventionism] value = X		# Change a domestic policy by X
type = set_domestic	which = [democratic/political_left/free_market/freedom/professional_army/defense_lobby/interventionism] value = X	# Set a domestic policy to X
type = deactivate which = [tech id] 		# Make this technology permanently unavailable for the country.
type = tc_mod value = X(%)								# Modify National Transport Capacity. Positive value = good.
type = tc_occupied_mod value = X(%)						# Modify Occupied Province Transport Capacity Drain. Positive value = good.
type = attrition_mod value = X(%)						# Modify the Attrition Penalty. Positive value = good.
type = supply_dist_mod value = X(%)						# Modify the Supply Distance Penalty. Positive value = good.
type = repair_mod value = X(%)							# Modify Reinforcement Efficiency Positive value = good.
type = research_mod value = X(%)						# Modify research efficiency. Positive value = good.
type = scrap_model which = [div type] value = [model]	# Make a model obsolete (no longer possible to build).
type = allow_building which = [building type]			# Allow the construction of a certain building type.
type = building_prod_mod which = [building type] value = X%		# Bonus to production time. Additive. NOTE: Positive value = reduced time.
type = convoy_prod_mod which = [escorts/transports] value = X%	# Bonus to production time. Additive. NOTE: Positive value = reduced time.
type = radar_eff value = X(%)							# Modify the efficiency of radar stations (bonus to friendly aircraft in the province.) Positive value = good.
type = info_may_cause which = [tech id]					# No effect, but informs player that this tech/event can open up new avenues of research.
type = gas_attack            							# Enable gas attacks
type = gas_protection        							# Enable gas protection
type = activate which = [tech id] 						# Will be used in Random events
type = task_efficiency which = [task type] value = X 	#Additive: 0.1 - 1.0
type = add_prov_resource which = [prov id/-1/-4] value = X where = [energy/metal/oil/rare_materials]  # -1 is random province, -4 is province with nuclear reactor.
type = max_positioning which = [div type] value = X 	#sets the value 0.1-1.0
type = min_positioning which = [div type] value = X 	#sets the value 0.1-1.0
type = max_reactor_size value = X			# Set the max size of nuclear reactor buildings.
type = abomb_production 					# Allow A-Bombs
type = double_nuke_prod						# Double A-Bomb production rate.
type = songs
type = lock_division which = [id type] value = [id id] # Lock this division (it may no longer move.)
type = unlock_division which = [id type] value = [id id] # Unlock this division (it may now move.)
type = free_oil/free_supplies/free_money/free_metal/free_energy/free_rare_material/free_transport/free_convoy	#change offmap daily prod

# AI event commands (no effect for human controlled nations)

type = ai_prepare_war	which = [tag]		# Tells the AI to move troops to the border with a country.

# Weather event commands
type = start_pattern which = [id type] value = [id id] where = [prov id] when = [raining/snowing/storm/blizzard]	# Start a new weather pattern centered on a given province
type = add_to_pattern which = [id type] value = [id id] where = [prov id] when = [raining/snowing/storm/blizzard]	# Add a province to an existing weather pattern.
type = end_pattern which = [id type] value = [id id] # This weather pattern will begin to dissipate
type = set_ground which = [prov id] value = [clear/muddy/winter]

# Commands to affect the chance of "combat events" occurring. Additive (%).
type = counterattack value = x
type = assault value = x
type = encirclement value = x
type = ambush value = x
type = delay value = x
type = tactical_withdrawal value = x
type = breakthrough value = x

# HQ effects
type = hq_supply_eff value = X(%)			# Additive
type = sce_frequency value = X				# Combat event chance multiplier. Default: 1.0

# Enable a certain type of mission
type = enable_task which = [task type]

# New models updates the current template for a division or brigade type.
command = { type = [new_model] which = [division or brigade type] value = [The model number] }

# Make a division or brigade type available for construction.
command = { type = activate_unit_type which = [division or brigade type] }

# Make a division or brigade type unavailable for construction.
command = { type = deactivate_unit_type which = [division or brigade type] }

# ACTIVATE NUCLEAR CAPABILITY OF MISSILES
command = { type = nuclear_carrier which = [flying_bomb/flying_rocket] }

# ACTIVATE MISSILE CAPABILITY OF SUBMARINES
command = { type = missile_carrier which = [submarine] }

# UNIT VALUES
# [unit value] = soft_attack/hard_attack/ground_defense/air_attack/air_defense/build_cost/build_time/manpower/speed/max_organization/transport_weight/supply_consumption/fuel_consumption/speed_cap_art/speed_cap_eng/speed_cap_at/speed_cap_aa
#

# Land unit bonuses
command = { type = [unit value]
			which = [land/division type/brigade type]
			value = [additive value modifier]
}
# Air unit bonuses
command = { type = [air_attack/strategic_attack/tactical_attack/naval_attack/air_defense/build_cost/build_time/manpower/speed/surface_detection/air detection/transport_capacity/supply_consumption/fuel_consumption/range]
			which = [air/division type/brigade type]
			value = [additive value modifier]
}
# Naval unit bonuses
command = { type = [naval_attack/air_attack/shore_attack/naval_defense/air_defense/build_cost/build_time/manpower/speed/surface_detection/air detection/visibility/transport_capacity/supply_consumption/fuel_consumption/range]
			which = [naval/division type/brigade type]
			value = [additive value modifier]
}

# NOTE: For "build_time" and "build_cost", it is possible to add the field "where = relative".
# This means that the value is parsed as a relative modifier (%) instead of an absolute addition.
# When doing this, THE BASE VALUE OF MODEL 0 IS USED FOR _ALL_ MODELS. So "value = -10" means
# "-10% of the value of model 0".

#
# UNIT COMBAT MODIFIERS
#
# Terrain combat modifiers
command = { type = [desert_attack/desert_defense/mountain_attack/mountain_defense/hill_attack/hill_defense/forest_attack/forest_defense/swamp_attack/swamp_defense/urban_attack/urban_defense/river_attack/shore_attack/paradrop_attack]
			which = [division type/brigade type]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Terrain movement modifiers
command = { type = [desert_move/mountain_move/hill_move/forest_move/swamp_move/urban_move/river_crossing]
			which = [division type/brigade type]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Weather land-combat modifiers
command = { type = [frozen_attack/frozen_defense/snow_attack/snow_defense/blizzard_attack/blizzard_defense/rain_attack/rain_defense/storm_attack/storm_defense/muddy_attack/muddy_defense]
			which = [division type/brigade type]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Weather land-movement modifiers
command = { type = [frozen_move/snow_move/blizzard_move/rain_move/storm_move/muddy_move]
			which = [division type/brigade type]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Weather air-combat modifiers
command = { type = [snow_attack/rain_attack]
			which = [interceptor/escort/multi_role/strategic_bomber/tactical_bomber/torpedo_plane]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Weather air-movement modifiers
command = { type = [snow_move/blizzard_move/rain_move/storm_move]
			which = [interceptor/escort/multi_role/strategic_bomber/tactical_bomber/torpedo_plane/transport_plane]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Weather naval-combat modifiers
command = { type = [snow_attack/rain_attack]
			which = [battleship/cruiser/destroyer/carrier/submarine/transports]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Weather naval-movement modifiers
command = { type = [snow_move/blizzard_move/rain_move/storm_move]
			which = [battleship/cruiser/destroyer/carrier/submarine/transports]
			value = [X] # Modifier in percent (+10 = 10%)
}
# Night modifiers
command = { type = night_move/night_attack/night_defense
			which = [division type/brigade type]
			value = [X] # Modifier in percent (+10 = 10%)
}

#
# SPECIAL UNIT BONUSES
#
# Minisubs (BBs and CVs attack ships in harbors with this bonus added to their sea attack value)
command = { type = minisub_bonus
			value = [X] # NOT INCREMENTAL. This is the new value.
}

#
# GLOBAL MODIFIERS
#
# Surprise modifiers
command = { type = surprise
			which = [naval/land/air]
			value = [X] # Modifier in percents
}
# Intelligence Operation modifiers
command = { type = intelligence
			which = [us/them]
			value = [X] # Modifier in percents
}
# Army Detection modifiers
command = { type = army_detection
			which = [us/them]
			value = [X] # Modifier in percents
}
# Provincial AA batteries
command = { type = AA_batteries
			value = [X] # Modifier in percents
}

#
# INDUSTRIAL MODIFIERS
#

# Industrial multipliers
# E.g. energy_to_oil 4 means four energy are needed to produce one oil. 0.5 means 1 energy produces 2 oil.
command = { type = industrial_multiplier
			which = [energy_to_oil/oil_to_rare_materials]
			value = [X]
}
# Industrial modifiers (additive)
# 'total' is the conversion factor from every built industry point into Industrial Capacity.
# 'supplies' is a modifier for the amount of supplies produced by every reserved IC unit.
command = { type = industrial_modifer
			which = [total/supplies]
			value = [X] # Percents
}

Building Types:
[ic, coastal_fort, land_fort, flak, infrastructure, air_base, naval_base, radar_station, nuclear_reactor, rocket_test]

Task Types:
[attack, rebase, strat_redeploy, support_attack, support_defense, reserves, anti_partisan_duty, air_superiority, ground_attack, runway_cratering, installation_strike, interdiction, naval_strike, port_strike, logistical_strike, strategic_bombardment, air_supply, airborne_assault, convoy_raiding, asw, naval_interdiction, shore_bombardment, amphibous_assault, sea_transport, naval_combat_patrol]
Resource Types:
[oil, metal, energy, rare_materials, supplies, money]
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

Sieht ja schon ganz nett aus, ich werde mal alles mögliche zusammentragen und auf Deutsch oben in den ersten Post einfügen.

Natürlich kannst Du alles hochladen, was grad passt.
Ich hoffe, daß so auch andere animiert werden, "produktive" Events zu schreiben, und es nicht nur als reine Cheaterei ansehen. :D
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

Nichts ist nerviger, als das die Arbeit, die man sich gemacht hat, nichts gebracht hat, und zudem auch noch die komplette Installation zerschossen hat.
Jaja, da spricht wohl jemand aus leidvoller Erfahrung. :D


Um einen einfachen Event zu machen reicht das zunächst aus (hab ich selbst mal gefunden und um ein paar Sachen erweitert):

Code: Alles auswählen

event = {
	id = [color=Red]ID[/color]
	random = no
	country = [color=Red]TAG[/color]
	trigger = {
             [color=Navy]evtl Trigger einfügen[/color]
	}

	name = "[color=Red]Der Titel des Events[/color]"
	desc = "[color=Red]Beschreibungstext[/color]"
	style = 0
[color=Navy]	picture = "[color=Red]Der pic-Name, ohne .bmp![/color]"[/color] [color=Green]#irgendein Bild, das man aus gfx\event_pics nehmen, selbst machen oder einfach (die ganze Zeile) weglassen kann[/color]

	date = { day = [color=Red]1[/color] month = [color=Red]january[/color] year = [color=Red]1936[/color] } 
[color=Navy]	offset = 1
	deathdate = { day = 30 month = december year = 1947 }[/color]  [color=Green]#Diese und die vorherige Zeile braucht man nur falls das Programm evtl Trigger alle [b][i]offset[/i][/b] Tage innerhalb des angegebenen Zeitraums checken soll[/color]

	action_a = { 
             command = { } [color=Green]#evtl. was das Event bewirken soll (muss man aber nicht); wenn man eine AUswirkung haben will muss immer noch type mit rein; so z.B. command = { type = inherit which = GER } [/color]

}
}
Legende:
rot: muss besetzt werden
blau: kann hinzugefügt werden (kommt auf das Event an)
grün: Text mit dem ich hier erläutere
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

Gefällt mir auch sehr gut :) .

Wenn ich die Tage fertig bin, werde ich das nach oben integrieren.
Ich habe die Angewohnheit, alles zu kompliziert auszudrücken. :D
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

Wow, da hat sich einer aber mal Mühe gemacht. :top:
Konkurriert ja schon fast mit dem Guide von dem Harvard-Lümmel.

Edit: Für die Arbeit haste dir eine posRep verdient, nur leider kann ich sie dir nicht geben. :motz: Das kann doch bestimmt der ein oder andere für mich machen oder? :^^:
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

Also ich muss schon sagen. Es ist wirklich gut. Ich habs mal kurz überflogen und ein paar (für mich) neue sachen bemerkt. :top:

Aber fertig isses noch nicht oder? :^^:
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

Nein, ist es noch nicht.

Der Imperator editiert noch :D

Zudem sind das da oben erst die Trigger, die Commands kommen später.
Dieser Thread kann übrigens auch dazu benutzt werden, eigene Events zu posten, die vielleicht nicht funktionieren. Der werte Jaycee wird sich das sicherlich anschauen und die perfekte Erklärung dafür haben :) .
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

So, die Trigger sind fertig, wir werden uns heute Nacht um die Commands kümmern. Ich hoffe, es sind nicht zu viele Fehler drin und ihr berichtigt uns auch schön. Denn: Kritik ist heilsam! :D

So, jetzt erstmal mit der Ukraine im EU2 Aberration MP plündernd und brandschatzend durch die Steppe ziehen! Der Fürst verlangt das Monopol auf Ziegen und Schafe!!!
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

Effekte (commands) Teil I:
  • Commands werden benutzt, um einem Event einen Effekt zu geben. Diese sind nun hier aufgeführt und erklärt:

    Allgemeines:
  • Code: Alles auswählen

    type = endgame value = [type]
    Bedeutung: Dieser Effekt wird benutzt, um ein Battlescenario zu beenden, wenn im Trigger bestimmte Voraussetzungen gelegt sind. Es gibt verschiedene Möglichkeiten für das Ende des Szenarios, in folgender Liste angegeben, als Variable für value =:
    • = Ende: Das Szenario ist schlichtweg zuende, ohne Sieg oder Niederlage einer Partei.
    • = Vernichtet: Der Spieler wurde vernichtet. Er hat verloren.
    • = Unentschieden: Die Parteien konnten keinen Sieg einfahren und es endet in einem Unentschieden.
    • = Sieg der Achsenmächte: Das Deutsche Reich bzw. seine Verbündeten konnten einen Sieg einfahren, nicht mehr, nicht weniger.
    • = Der Totale Sieg der Achsenmächte ist eingetreten: Das Deutsche Reich bzw. seine Verbündeten haben die Allierten/Kommunisten total vernichtet. Es ist ein glohreicher Tag für die Faschisten.
    • = Sieg der Alliierten: Das Vereinigte Königreich bzw. seine Verbündeten konnten einen Sieg einfahren, nicht mehr, nicht weniger.
    • = Der Totale Sieg der Alliierten ist eingetreten: Das Vereinigte Königreich bzw. seine Verbündeten haben die Faschisten/Kommunisten total vernichtet. Es ist ein glohreicher Tag für die Freiheit.
    • = Sieg der Kommunistischen Internationalen: Die Sowjetunion bzw. ihre Verbündeten konnten einen Sieg einfahren, nicht mehr, nicht weniger.
    • = Der Totale Sieg der Kommunistischen Internationalen ist eingetreten: Die Sowjetunion bzw. ihre Verbündeten haben die Allierten/Faschisten total vernichtet. Es ist ein glohreicher Tag für die Arbeiter der Welt.
  • Code: Alles auswählen

    type = trigger which = [event id]
    Bedeutung: Möchte man z.B. das für ein anderes Land im Anschluss an dieses Event automatisch ein neues Event triggert, kann man hier die entsprechende ID eingeben. Dies führt dann zu einem sekundären Event.
  • Code: Alles auswählen

    type = sleepevent which = [event id]
    Bedeutung: Lässt ein Event "einschlafen". Das Event, dessen ID hier eingegeben wird, kann niemals auftreten. Möchte man z.B. nicht, daß der "Anschluss" triggert, gibt man einfach ein:

    Code: Alles auswählen

    type = sleepevent which = 2020
  • Code: Alles auswählen

    type = setflag which = [keyname]
    Bedeutung: Setzt einen globalen Merker, auf den andere Events per Trigger zugreifen können. Den Namen dafür kann man sich selbst ausdenken.
  • Code: Alles auswählen

    type = clrflag which = [keyname]
    Bedeutung: Löscht einen globalen Marker mit dem Namen, der in which = angegeben ist.
    Anmerkung: Paradox hat es versäumt, die Vorteile aus Victoria zu übernehmen. Während Datenmüll, wie z.B. der unten noch aufgeführte Gasangriff noch enthalten ist, ist ein Erhöhen und Verringern von Flags nur auf 0 oder 1 möglich. Dies ist zwar kein besonders wichtiger Effekt, es wäre aber schön, wenn er enthalten gewesen wäre.
  • Code: Alles auswählen

    type = local_setflag which = [keyname]
    Bedeutung: Setzt einen lokalen Merker, auf den andere Events per Trigger zugreifen können. Den Namen dafür kann man sich selbst ausdenken.
  • Code: Alles auswählen

    type = local_clrflag which = [keyname]
    Bedeutung: Löscht einen globalen Marker mit dem Namen, der in which = angegeben ist.
  • Code: Alles auswählen

    type = vp value = X 
    Bedeutung: Bin überfragt. Bemerkung: Es "könnte" dazu dienen, dem Land eine fixe, nicht durch Abnahme von Provinzen, definierte Menge x an Siegpunkten zu geben. Dies gilt es zu prüfen.
  • Code: Alles auswählen

    type = province_keypoints which = [province id/-1] value = x
    Bedeutung: Erhöht die Siegpunkte einer Provinz, welche in which = angegeben ist, um einen Wert x. Es kann alternativ auch wieder hier -1 eingegeben werden für die Provinzid, so würde eine zufällige Provinz um die entsprechende Menge x an Siegpunkten anwachsen (auch negativ möglich).
  • Code: Alles auswählen

    type = extra_tc value = X
    Bedeutung: Erhöht die Transportkapazität TC um einen fixen Wert x. Es kann natürlich auch eine negative Zahl sein.
  • Code: Alles auswählen

    type = alliance which = [tag]
    Bedeutung: Man geht eine Allianz ein mit einem Land, welches bei der Variablen which als TAG unterlegt wird. Wenn z.B. das DR mit Japan ein Bündnis eingehen soll, muss das Event für Deutschland sein (siehe oben Post 1) und beim Command alliance JAP für which eingegeben werden:

    Code: Alles auswählen

    type = alliance which = JAP
    Auch hier kann wieder -1 als Zufallsvariable eingegeben werden (kann zwar lustig sein, geht aber leicht am Sinn des Effekts vorbei, weshalb es perfekt für jemanden wie mich ist).
  • Code: Alles auswählen

    type = inherit which = [tag]
    Bedeutung: Man annektiert das Land mit dem TAG im Unterpunkt which. So könnte man z.B. einfach per Event Österreich als Deutsches Reich annektieren. Vorlage ist der "Anschluss". Auch hier kann wieder -1 eingegeben werden, wodurch man dann ein zufälliges Land annektiert.
  • Code: Alles auswählen

    type = country which = [tag]
    Bedeutung: Hiermit ändert man das Land in ein anderes. Man gibt schlichtweg den TAG ein, zu welchem Land das Land, welches dieses Event erhält werden soll. Z.B. könnte man sagen, daß wenn dieses Event Yugoslawien erhält, und Kroatien frei wird, die Yugoslawen zu Serbien werden. Bemerkung: Ich gehe davon aus, daß es hier noch Bugs gibt, werde es im A.E.I.O.U. - Mod testen und hier berichtigen.
  • Code: Alles auswählen

    type = capital which = [prov id]
    Bedeutung: Die Hauptstadt wird verschoben in die Provinz, welche ID angegeben wurde.
  • Code: Alles auswählen

    type = addcore which = [prov id]
    Bedeutung: Macht eine Nicht-Nationale Provinz zu einer Nationalen Provinz. Somit erhält man 100% der Resourcen und der IK der Provinz. Außerdem kann man in Friedenszeiten auch fordern.
  • Code: Alles auswählen

    type = removecore which = [prov id]
    Bedeutung: Löscht den Anspruch auf eine Provinz. Dadurch sinken auch für das Land, welches den Anspruch verliert, die Resourcenproduktion und die IK der Provinz.
  • Code: Alles auswählen

    type = secedeprovince which = [tag]  value = [prov id]
    Bedeutung: Übergabe einer Provinz an eine andere Nation. Which ist keine Zahl, sondern ein TAG, und zwar der TAG von dem Lande, welches die Provinz, definiert in value = als Provinz-ID, erhalten soll. So ist dies z.B. bei der Abtretung des Sudetenlandes an das Deutsche Reich.
  • Code: Alles auswählen

    type = control which = [tag]  value = [prov id]
    Bedeutung: Ähnlich dem vorherigem Eventeffekt wird hier allerdings nur die effektive Kontrolle (Sachherrschaft) übertragen, während beim vorherigen auch das Eigentum verschafft wird.
  • Code: Alles auswählen

    type = steal_tech which = [country tag]
    Bedeutung: Man erhält für eine zufällige erforschbare bzw. grade zu erfoschende Technologie Blaupausen von dem Lande, welches in which = definiert wurde. Gibt man anstelle des TAG's einfach -1 ein, "stielt" man eine Blaupause von einem nicht in der eigenen Allianz existierenden Land.
  • Code: Alles auswählen

    type = gain_tech which = [tech id]
    Bedeutung: Man erhält für die mit der TechID angegebene Technologie Blaupausen. Wenn man eine Blaupause einer zufällige erforschbare Technologie erhalten möchte, muss man Anstelle der ID einfach -1 eingeben. Wenn man bereits grad eine erforscht, kann man mit -2 dafür Blaupausen erhalten.
  • Code: Alles auswählen

    type = research_sabotaged
    Bedeutung: Eine Technologie, die man grad erfoscht, wird sabotiert und muss von vorn begonnen werden.
  • Code: Alles auswählen

    type = regime_falls
    Bedeutung: Die Regierung wird gestürzt. Bemerkung: Allerdings konnte ich keine Änderung feststellen bei einem Yugoslawientest.
  • Code: Alles auswählen

    type = belligerence which = [country] value = X
    Bedeutung: Das Land, welches in which = angegeben ist, erhält die Menge x an Badboy. Es könnte natürlich auch eine prozentuale Steigerung sein, dies gilt es zu testen. Falls das which = weg gelassen wird, bedeutet dies, daß der Badboy der in value angegeben wurde, dem Land zugeschrieben wird, welches dieses Event erhält. Natürlich ist auch hier eine negative Zahl möglich.
  • Code: Alles auswählen

    type = relation which = [country] value = X
    Bedeutung: Die Beziehungen zum Lande, welches per TAG in which = definiert wurde, werden um die Menge x verändert. Positive wie negative Werte sind hier üblich.
  • Code: Alles auswählen

    type = set_relation which = [country] value = X
    Bedeutung: Die Beziehungen zum Lande, welches per TAG in which = definiert wurde, werden auf den Wert x fixiert, egal wie die Beziehungen vorher waren. Positive wie negative Werte sind hier üblich.
  • Code: Alles auswählen

    type = civil_war
    Bedeutung: Das Land verfällt in einen in der Szenariodatei angegebenen Bürgerkrieg. Dazu gibt es später ein eigenes Kapitel. Es ist nur mit einem Land gleichzeitig möglich einen Bürgerkrieg zu führen, selbst wenn mehr als ein Aufrührer angegeben ist.
  • Code: Alles auswählen

    type = civil_war which = [rebel country tag]
    Bedeutung: Hier kann man ein Land definieren, mit dem man einen Bürgerkrieg haben möchte. Der TAG muss im Szenariofile (bzw. wenn es nach dem Start entstanden ist in der Revolt.txt) definiert sein als z.B. im Falle vom Republikanischen Spanien als Revolter Nationalistisches Spanien:

    Code: Alles auswählen

    regular_id = SPA
    in der Datei ..\Hearts of Iron 2\scenarios\1936\spain.inc Dazu kommen wir aber später im Kapitel: Bürgerkrieg
  • Code: Alles auswählen

    type = set_leader_skill which = [leader id] value = [new value]
    Bedeutung: Setzt den Skill eines Kommandanten auf einen fixen Wert. Die LeaderID kann ersehen werden im File des Landes, dessen Anführer man setzen möchte im Verzeichnis ..\Hearts of Iron 2\db\leaders\.. Man kann alternativ auch einen zufälligen Anführer setzen mit -1. Der Wert wird in value = als x definiert, wobei x eine natürliche, positive wie negative Zahl sein kann.
  • Code: Alles auswählen

    type = dissent value = x
    Bedeutung: Der Unmut kann hier als Menge x verringert oder erhöht werden, je nachdem wie das Vorzeichen ist.
  • Code: Alles auswählen

    type = resource which =[resource type] value = X
    Bedeutung: Die tägliche Einnahme einer Resource wird um den Prozentsatz x erhöht (auch negative Zahlen möglich), wobei x = 100 hundert Prozent bedeutet, womit auch große Zahlen passend wären. Es geht hierbei um das theoretisch maximale Produktionsvolumen der Resource. Es gibt verschiedene Resourcen:
  • Code: Alles auswählen

    type = supplies value = x where = [prov]
    Addiert eine fixe Menge in Höhe von x zu einer Provinz where =. Die hat den Vorteil, daß man z.B. der eingeschlossenen 6. Armee ein Event baut, das z.B. ein verstecktes Nachschubdepot gefunden wurde. Die ID der Provinz ist weiter oben zu finden erklärt. Falls man das where = weg lässt, geht der Nachschub in den Pool.
  • Code: Alles auswählen

    type = oilpool value = x where = [prov]
    Bedeutung: Hat die gleichen Auswirkungen wie supplies/Nachschub, aber für oil/Öl.
  • Code: Alles auswählen

    type = metalpool value = x
    Bedeutung: Addiert eine fixe Menge in Höhe von x zum Metalpool. Es kann natürlich auch eine negative Zahl sein.
  • Code: Alles auswählen

    type = energypool value = x
    Bedeutung: Addiert eine fixe Menge in Höhe von x zum Energiepool. Es kann natürlich auch eine negative Zahl sein.
  • Code: Alles auswählen

    type = rarematerialspool value = x
    Bedeutung: Addiert eine fixe Menge in Höhe von x zum Seltene-Materialien-Pool. Es kann natürlich auch eine negative Zahl sein.
  • Code: Alles auswählen

    type = money value = x
    Bedeutung: Addiert eine fixe Menge in Höhe von x zur Goldkammer, äh, zum Sparbuch. Es kann natürlich auch eine negative Zahl sein.
  • Code: Alles auswählen

    type = peace which = [country tag] value = [0/1]
    Bedeutung: Man schließt Frieden mit dem Land, welches in which = angegeben ist. Value = gibt hier an, ob es ein seperater Frieden sein soll (dann 1), oder ob es ein Frieden für das gesamte Bündnis sein soll (dann 0).
  • Code: Alles auswählen

    type = war which = [country tag]
    Bedeutung: Natürlich einer meiner liebsten Effekte :D . Man erklärt einem Land, welches in which = angegeben ist den Krieg. Allerdings erhält man natürlich auch entsprechend Dissent/Unmut für die Kriegserklärung, als wenn man allein den Krieg erklärt.
  • Code: Alles auswählen

    type = manpowerpool value = x
    Bedeutung: Die Anzahl der Wehrfähigen wird um den Wert x einmalig erhöht. Es ist ein absoluter Wert.
  • Code: Alles auswählen

    type = relative_manpower value = x
    Bedeutung: Dieser Effekt bewirkt, daß sich die Wehrfähigenanzahl einmal um einen relativen Wert x erhöht. Dabei ist die jährliche Zuwachsrate Grundlage und es berechnet sich nach der Formel:

    Code: Alles auswählen

    x / 200 * (täglicher Steigerung der Wehrfähigen * 360) 
  • Code: Alles auswählen

    type = allow_dig_in
    Bedeutung: Einheiten können nun Buddeln. Allerdings fehlt noch der Effekt: SPATEN FREI! wenn die Munition alle ist. Na ja, egal. Vor allem: Diesen Effekt benötigt man generell "eigentlich" nicht, da im normalen HoI der Buddelfaktor nicht erhöht werden kann wie bei z.B. der Mutter ;) aller Strategiespiele (Victoria, die dicke) :D , sondern es nur freigeschaltet werden muss, und das passiert in einer sehr sehr frühen Technologie.
  • Code: Alles auswählen

    type = make_puppet which = [country tag]
    Bedeutung: Macht eine Nation zu einer Marionette.
  • Code: Alles auswählen

    type = coup_nation which = [country tag]
    Bedeutung: Man versucht in einem Land, welches unter which = mit seinem TAG angegeben ist, einen Putsch um das dortige Regime zu wechseln und es einem selbst gegenüber freundlicher zu stimmen.
  • Code: Alles auswählen

    type = access which = [country tag]
    Bedeutung: Man gewärt einem Land militärische Durchmarschrechte. VORSICHT!!! Seit HoI II hat sich dies im Hinblick auf neutrale Länder geändert. Man kann also nicht mehr von neutralem Gebiet aus per Durchmarschbefehl ins Feindesland einfallen.
  • Code: Alles auswählen

    type = end_access which = [country tag]
    Bedeutung: Der gebene Militärische Durchmarsch wird aufgelöst.
  • Code: Alles auswählen

    type = sleepteam which = [tech team id]
    Bedeutung: Wenn man nicht mehr möchte, daß ein Technologieteam zur Verfügung steht (z.B. Herr Göring, weil er dumm ist) muss man diesen Effekt nutzen. Die ID der Techteams findet man im Verzeichnis ..\Hearts of Iron 2\db\tech\teams... Dieses Team ist dann nicht mehr verfügbar, beendet aber noch das aktuelle Forschungsgebiet.
  • Code: Alles auswählen

    type = waketeam which = [tech team id]
    Bedeutung: Es gibt Techteams, die erst nach zu einem bestimmten Jahr zur Verfügung stehen. Dies kann man hiermit um ein Jahr reduzieren. Ein Techteam, welches im Jahre 43 zur Verfügung stehen sollte, ist somit schon im Jahre 42 frei für neue Schweinereien.
  • Code: Alles auswählen

    type = sleepminister which = [minister id]
    Bedeutung: Ein unliebsamer Minister soll abgesetzt werden, oder er stirbt schlichtweg. Dafür kann man diesen Effekt nutzen. Die MinisterID findet man im Ordner ..Hearts of Iron 2\db\ministers... Wenn man möchte, daß ein zufälliger Minister sein Amt niederlegt, kann man natürlich auch wieder -1 eingeben.
  • Code: Alles auswählen

    type = sleepleader which = [leader id]
    Bedeutung: Gleicher Effekt wie der "sleepminister", allerdings für Anführer.
  • Code: Alles auswählen

    type = switch_allegiance which = [unit id type] value = [unit id id] where = [country tag]
    Bedeutung: Wenn man eine Einheit die Seiten wechseln lassen möchte, wäre dies die beste Möglichkeit. Unter which = gibt man die ID der Einheit ein, die die Seiten wechseln soll. Die Einheiten-ID kann man im Kapitel Einheiten ersehen, die später folgt. Alternativ ist auch hier wieder die -1 möglich, um eine zufällige Einheit auszuwählen. Natürlich muss es auch ein Land geben, welches diese Einheit erhalten soll, welches man mit dem entsprechendem TAG unter where = eingibt. Wenn die ID der Einheit bekannt ist, also wenn man die konkrete ID der zu übersendenden Einheit kennt, kann man diese unter value= eingeben. Falls diese nicht bekannt sein sollte (99% der Fälle), kann man diesen Teil komplett weg lassen.
  • Code: Alles auswählen

    type = delete_unit which = [unit id type] value = [unit id id]
    Bedeutung: Hiermit löscht man eine Einheit, dessen Einheiten-ID man bei which = eingibt. Möchte man eine zufällige Einheit löschen, nimmt man das altbekannt -1. Ist die spezielle ID der zu vernichtenden Einheit nicht bekannt, lässt man das value = mal wieder weg.
  • Code: Alles auswählen

    type = independence which = [country tag] value = [0/1] when = [0/1]
    Bedeutung: Ein ganz fieser Effekt. Man entlässt ein Land, welches man unter seinem TAG bei which= einträgt in die Freiheit. Das value = gibt an, ob die Einheiten, die sich zum Zeitpunkt der Freilassung auf dem Gebiet des neuen Staates befinden, die Seite wechseln (0) oder ob sie beim Meister bleiben (1). Dies hat bereits bei Victoria nicht funktioniert. Keine Ahnung ob es hier klappt. Jedefalls kann man unter when = noch vorgeben, ob die neue Nation dem Glauben des Meisters folgt (0) oder demokratisch (?) wird. Dies würde bei 1 passieren.
  • Code: Alles auswählen

    type = build_division which = [division type] value = [brigade type]
    Bedeutung: Hiermit kann man neue Einheiten per Knopfdruck in den Truppenpool setzen. Der Divisionstyp und der Brigadetyp kann unten im Kapitel Einheiten eingesehen werden.
  • Code: Alles auswählen

    type = construct which = [building type] where = [prov id/-1/-4] value = x
    Bedeutung: Hiermit wird ein Gebäude, z.B. Industrie oder Flak in einer Provinz errichtet. Die verschiedenen Gebäudearten kann man dem Kapitel Einheiten ersehen. Die Provinz-ID sollte bekannt sein, an sonsten ist natürlich auch wieder möglich, mit -1 eine Zufallsprovinz zu definieren. Wenn in einer nationalen Provinz gebaut werden soll, ist hier -4 angemessen. In jedem Fall muss schon ein solches zu bauendes Gebäude vorhanden sein.
  • Code: Alles auswählen

    type = add_corps which = [name] value = [land/air/naval] when = [leader ID] where = [province_ID]
    Bedeutung: Mit diesem kleinen aber feinen Effekt kann man eine Armeezusammenstellung samt Namen erstellen. Es sollte immer im Zusammenhang mit dem anschließen Befehl gebraucht werden, an sonsten würde die Zusammenstellung wieder verschwinden. Hier ist es nun auch möglich, der Armee einen Namen zu geben. Für eine Landarmee würde es so lauten:

    Code: Alles auswählen

    [b]command = { type = add_corps which = "von Stollbergs durchtriebe Schabracken" value = land where = 88 } # Hamburg
    command = { type = add_division which = "1. Schlammwrestlerinnendivision Kochlöffel" value = infantry when = 0 }
    command = { type = add_division which = "2. Schlammwrestlerinnendivision Nudelholz" value = infantry when = 0 }
    command = { type = add_division which = "3. Schlammwrestlerinnendivision Nymphe" value = infantry when = 0 }[/b]
    Und wenn man einen Flottenverband haben möchte, macht man einfach folgendes:

    Code: Alles auswählen

    [b]command = { type = add_corps which = "Jaycee's prestigeträchtigen Pötte" value = naval where = 88 } # Hamburg
    command = { type = add_division which = "Elvis - The Pelvis" value = battleship when = 0 }
    command = { type = add_division which = "Dat Puppenhaus" value = battleship when = 0 }
    command = { type = add_division which = "Dr. Evil" value = battleship when = 0 }
    command = { type = add_division which = "Harald Schmidt" value = carrier when = 0 }[/b]
  • Code: Alles auswählen

    type = activate_division which = [div id type] value = [div id id]  [where = province] when = [0/1]
    Bedeutung: Eine nicht bewegbare Division (wie z.B. die amerikanische im '36 Szenario in Manila) kann hiermit aktiviert werden. Dazu muss man die spezifische ID der Einheit kennen. Das when = gibt an, ob die Einheit in den Einheitenpool verschoben wird, wenn Feinde in der Provinz sind (0).
  • Code: Alles auswählen

    type = add_division which = [name] value = [div type] when = model where = [brigade type]
    Bedeutung: Wie oben bereits im Beispiel angegeben ist dieser Effekt gedacht zum Bau von Divisionen/Schiffen/Flugzeugen. Auch hier kann wieder der Name eingegeben werden, unter Benutzung von Anführungszeichen. In Kombination mit dem add_corps - Befehl werden sie diesem beigefügt, ansonsten landen sie im Einheitenpool.
  • Code: Alles auswählen

    type = remove_division which = [div id type/-1] value = [div id id]
    Bedeutung: Entfernt eine Division aus dem Spiel. Auch hier: -1 bedeutet zufällig. Value = muss nicht belegt sein.
  • Code: Alles auswählen

    type = remove_division which = "Exact Name" value = [country tag]
    Bedeutung: Mit diesem Effekt entfernt man eine Division aus dem Spiel, die man mit kompletem Namen kennt. So ist dies z.B. der Fall beim Sieg der Faschisten in Spanien. Die dortige Fliegerabteilung Kondor wird nach dem Sieg aufgelöst. Man muss natürlich auch noch das Land eingeben, für welches die Division gelöscht werden soll.
  • Code: Alles auswählen

    type = damage_division which = [div id type/-1] value = [div id id] where = X
    Bedeutung: Mit diesem Befehl kann man einer Einheit die Kampfstärke abziehen. Der Wert x ist die prozentuale Reduzierung, und wenn man einen negativen Wert eingibt, passiert genau das Gegenteil und die Division erhält zusätzliche Stärke.
  • Code: Alles auswählen

    type = disorg_division which = [div id type/-1] value = [div id id] where = X
    Bedeutung: Die Orga wird im Gegensatz zur Stärke wie im vorherigen Effekt verändert.
  • Code: Alles auswählen

    type = leave_alliance
    Bedeutung: Das Land verlässt seine aktuelle Allianz.
  • Code: Alles auswählen

    type = non_aggression which = [country] where = [country]
    Bedeutung: Hiermit kann man einen Nicht-Angriffspakt schließen zwischen zwei Ländern.
  • Code: Alles auswählen

    type = end_non_aggression which = [country] where = [country]
    Bedeutung: Hiermit kann man einen Nicht-Angriffspakt beenden zwischen zwei Ländern.
  • Code: Alles auswählen

    type = end_trades which = [country] where = [country]
    Bedeutung: Hiermit beendet man alle Handelsverträge zwischen zwei Ländern.
  • Code: Alles auswählen

    type = guarantee which = [country] where = [country]
    Bedeutung: Man kann per Event Ländern die Unabhängigkeit garantieren. Unter which = gibt man den TAG des Landes an, welches die Unabhängigkeit garantieren soll, und zwar Land zwei, welches mit seinem TAG unter where = definiert wird.
  • Code: Alles auswählen

    type = end_guarantee which = [country] where = [country]
    Bedeutung: Hier beendet man die Unabhängigkeitgarantie wie im Falle der Garantierung.
  • Code: Alles auswählen

    type = allow_convoy_escorts
    Bedeutung: Dies erlaubt den Bau von Konvoi-Eskorten. Wird per Technologie freigeschaltet.
  • Code: Alles auswählen

    type = transport_pool which = [country] value = X
    Bedeutung: Erhöht den Konvoipool um den Wert x. Auch hier ist eine negative Zahl möglich.
  • Code: Alles auswählen

    type = escort_pool which = [country] value = X
    Bedeutung: Erhöht den Eskortenpool um den Wert x. Auch hier ist eine negative Zahl möglich.
  • Code: Alles auswählen

    type = peacetime_ic_mod value = X
    Bedeutung: Es gibt für bestimmte Nationen eine reduzierte IK zu Beginn des Szenarios. Deutschland hat z.B. nur 90% seiner Friedensindustriekapazität. Durch Events kann dies bis auf 100% gesteigert werden, und es gilt nur während des Friedens. Ist man ersteinmal im Krieg, dann ist dieser Effekt nutzlos, da man sowieso 100% hat.
  • Code: Alles auswählen

    type = end_puppet
    Bedeutung: Ist man eine Marionette, kann man hiermit seinen Meister eines besseren belehren und wird zu einer unabhängigen Nation.
  • Code: Alles auswählen

    type = end_mastery which = [country tag]
    Bedeutung: Hiermit beendet man als Herrscher seine Oberhoheit über eine eigene Marionette.
  • Code: Alles auswählen

    type = convoy which = [startprov] value = [endprov] when = [resource_bits]
    Bedeutung: Hiermit kann man eine Konvoiroute festlegen über. Da HoI II die Konvois selbstständig auf die Reise schickt lohnt sich dieser Befehl nicht wirklich. Der Vollständigkeit halber kann man fünf verschiedene Sachen transportieren: 1 = Öl, 2 = Metal, 4 = Energie, 8 = Seltene Materialien, 16 = Nachschub. Die Zahl (jeweils nur eine, für jedes Material muss man einen eigenen Konvoi anlegen) wird bei when = eingetragen.
Da ich auch hier wieder die Zeichengrenze überschritten habe, kann dieser Post vorerst als abgeschlossen angesehen werden (wie Post Nr. 1) und die Weiterführung ist auf Seite II.
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
von Stollberg

Beitrag von von Stollberg »

Sehr schön Meister!
Wirklich gut.
Echt Klasse.
Toll.

"Sie müssen erst einige Beiträge anderer Benutzer bewertet haben, bevor Sie [B@W] Abominus erneut bewerten können."

:heul:
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

So, Abo ist müde, muss morgen früh raus... so gegen 11 :D

Habe bereits mit den Commands angefangen, werde das wohl diese Woche fertig haben. Wünschen die Regenten das ganze noch mit Screenshots untermalt und vielleicht als PDF - Datei?
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
Boron
Rang 18
Beiträge: 7839
Registriert: Fr 07.01.2005, 12:00
Großkreuz des VeteranenordenVictoriakreuzVerdienstorden der Fremdenlegion+2

Beitrag von Boron »

[B@W] Abominus hat geschrieben: Abominus"]
Habe bereits mit den Commands angefangen, werde das wohl diese Woche fertig haben. Wünschen die Regenten das ganze noch mit Screenshots untermalt und vielleicht als PDF - Datei?
Ja das wär das I-Tüpfelchen :) . Ansonsten muss ich bereits sagen absolut :top: .
von Stollberg

Beitrag von von Stollberg »

[B@W] Abominus hat geschrieben: Abominus"]
Habe bereits mit den Commands angefangen, werde das wohl diese Woche fertig haben. Wünschen die Regenten das ganze noch mit Screenshots untermalt und vielleicht als PDF - Datei?
Wenn Du so darum bettelst es machen zu dürfen: Her damit!
:D
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

PDF wär nicht schlecht. Wenn du willst kann ich meinen ersten Post hier räumen; dann könntest du die commands in deinen zweiten packen.
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

Problem ist nur, daß ich damit wahrscheinlich auch nicht auskommen würde :)

Wenn ich fertig bin, kannst Du es ja vielleicht in deinen Post packen. Wie auch immer, dauert noch bis ALLES fertig ist.

P.S.: Vorhin hat mein Praktikums-Chef angerufen, daß die Grubenfahrt heute ausfallen würde. Na ja, so hab ich halt mehr Zeit zum Lernen... und zum Eventguide weiterschreiben :D .
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

No Problemo.
Aboplus hat geschrieben:und zum Eventguide weiterschreiben

Das will ich auch hoffen. *packt die Peitsche wieder zurück in den Koffer* :D
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

Oben scheine ich noch Fehler wegen domestic gemacht zu haben, das muss ich die Tage mal testen und anschließend ändern.

GOTT, ich hätte nicht gedacht, daß es so viel Arbeit ist.... mäh... aber dafür lernt man noch was :) .
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
[B@W] Abominus
Beiträge: 52603
Registriert: Di 16.09.2003, 12:00
Hat sich bedankt: 14081 Mal
Danksagung erhalten: 17566 Mal
SI-VerdienstkreuzGroßkreuz des Veteranenorden in bes. AusführungPour le Mérite+25

Beitrag von [B@W] Abominus »

http://www.ruhrgebietssprache.de/lexiko ... racke.html

Extra die Erklärung für von Stolli, warum seine Divisionen so heißen :) .
Stellaris Mods: Steam-Workshop
Crusader Kings II Mods: Steam-Workshop
Benutzeravatar
Jaycee
Rang 15
Beiträge: 2935
Registriert: So 07.09.2003, 12:00
Großkreuz des VeteranenordenVictoriakreuz

Beitrag von Jaycee »

Toll. Er krieg ne eigene ivision und ich...
Pater Abominus hat geschrieben: Kapitel AI-Files - Prima selbst gebacken mit Hobbythekchef Jaycee
Wat?
Antworten

Zurück zu „HoI 2 - Szenarios/Mods“