Benutzer-Werkzeuge

Webseiten-Werkzeuge


Dies ist eine alte Version des Dokuments!


Kasten GMLbetrifft nur G3:

Hier werden die bisherigen Erkenntnisse über die Gothic 3-Queststruktur gesammelt:

Hier haben wir eine *.info Datei (hier FILLER559.info) sie beinhaltet einen Dialog:

[Info]
Name=FILLER559 Name des DIAs
SortID=2238
ID des DIAs
Owner=Achmed wen spreche ich beim Dia an?
InfoGiven=false
? - BISHER UNBEKANNT - ?
Parent Übergeordneter Dialog (z.B Parent=SKALVERAM3682)
Quest
Gehört der DIA zu einem Quest? (z.B Quest=Finley_AmbushTrelis)
ConditionType=3 ? - BISHER UNBEKANNT - ?
InfoType=2
? - BISHER UNBEKANNT - ?
GoldCost=250 Wie viel Gold kostet dem Player der Dialog? (Wie viel muss er bezahlen um ihn aufrufen zu können?)
CondOwnerNearEntity
? - BISHER UNBEKANNT - ?
Folder=Varant/Bakaresh/ ? - BISHER UNBEKANNT - ?
CondPlayerKnows
Wenn der Player was weiß kann er den Dia benutzen (Mehrfachoption!) (z.B CondPlayerKnows = Rendell_RefusesAnswer;Rendell_TRexDead)
CondItemContainer ? - BISHER UNBEKANNT - ?
CondItems
Welche Items benötigt der Spieler (Mehrfachoption?)
CondItemAmounts Wie viele Items von CondItems benötigt der Player?
CondSecondaryNPC
Ist ein 2. NPC da (Partymember)? (CondSecondaryNPC=Olivier)
CondSecondaryNPCstates Status des NPC (?) (z.B CondSecondaryNPCstates=1)
TeachSkillIsPerc=false
? - BISHER UNBEKANNT - ?
TeachSkillIndex=0 ? - BISHER UNBEKANNT - ?
TeachSkillValue=0
? - BISHER UNBEKANNT - ?
ClearChildren=false Unterdialoge entfernen
Permanent=false
Steht der Dialog dauerhaft zur Auswahl oder nur einmal

Hier ein Beispiel zum Dialog

InfoScript_Commands=Say;Say;Say;SetGameEvent
Hier sind die einzelnen Befehle an die Engine, was die Personen machen

					//Bei SetGameEventpassiert etwas, z.B Achmed_teach wird in IDs1 aufgerufen 

InfoScript_Entities1=npc;player;npc; Hier werden die einzelnen Personen unterschiede (ist es ein NPC oder der Player?)
InfoScript_Entities2=;;;
InfoScript_IDs1=;;;Achmed_teach
Hier wird aufgerufen (andere Dialoge, usw.)
InfoScript_IDs2=;;;
InfoScript_Texts=INFO_FILLER20060401190442;INFO_FILLER20060401190442_0;INFO_FILLER20060401190442_1; Hier werden die einzelnen Texte für die Dialoge, usw aus Commands festgelegt (vll sind Strings möglich)
TeachSkill (Skill)
Hier wird der zu lernende Skill eingetragen
TeachAttrib (Attribute) Hier wird ein zu lernender Attribut eingesetzt (z.B TeachAttrib=THF)
TeachAttribValue=0
Hier wird festgelegt, wie viele Punkte der Player zu seinem Attribut bekommt (z.B TeachAttribValue=0)

BEISPIEL 1 - AUFRUFE

InfoScript_Commands=SetGameEvent
Hier sind die einzelnen Befehle an die Engine, was die Personen machen

					       //Bei SetGameEventpassiert etwas, z.B Achmed_teach wird in IDs1 aufgerufen 

InfoScript_Entities1
InfoScript_Entities2
InfoScript_IDs1=Achmed_teach Hier wird aufgerufen (andere Dialoge, usw.)
InfoScript_IDs2
InfoScript_Texts
TeachSkill (Skill)
Hier wird der zu lernende Skill eingetragen
TeachAttrib (Attribute) Hier wird ein zu lernender Attribut eingesetzt (z.B TeachAttrib=THF)
TeachAttribValue=0
Hier wird festgelegt, wie viele Punkte der Player zu seinem Attribut bekommt (z.B TeachAttribValue=0)

BEISPIEL 2 - HANDEL

InfoScript_Commands=SetTradeEnabled
Player redet den NPC an um dann per SetTradeEnabled den Handel frei zu bekommen. Es gibt auch aktionen, wie „SetTeachEnabled“ um den NPC als Lehrer ferizuschalten
InfoScript_Entities1=npc
InfoScript_Entities2
InfoScript_IDs1=true
InfoScript_IDs2
InfoScript_Texts=INFO_SKALVERAM320060509135241;;INFO_SKALVERAM320060509135241_0;

BEISPIEL 3 - XPs BEKOMMEN


InfoScript_Commands=GiveXP
Bei GiveXP werdem dem Player XPs übergeben
InfoScript_Entities1
InfoScript_Entities2
InfoScript_IDs1=200 200XP
InfoScript_IDs2
InfoScript_Texts

BEISPIEL 4 - EIN EIGENER DIALOG

InfoScript_Commands=Say;Say;Say;Say
InfoScript_Entities1=Player;NPC;Player;NPC
InfoScript_Entities2
InfoScript_IDs1
InfoScript_IDs2
InfoScript_Texts= INFO_HAWK320060509135241_0;INFO_HAWK320060509135241_1;INFO_HAWK320060509135241_2;INFO_HAWK320060509135241_3;

—————-

Man kann auch mehrere Dialoge im Parent-Child-System verknüpfen:
Dies ist durch den „Parent“-Parameter möglich:

z.B:
[info]
Name=FILLERXXY
Name der Beispielinfo
[…]
Parent=FILLERXXX Name der Parentinfo

Beispiel 1:

FILLERXXX
- FILLERXYX
- FILLERXYY

Beispiel 2:

FILLERXXX
-FILLERXYX
→FILLERXYY
→FILLERXYZ
-FILLERXYY
→FILLERYXZ
→FILLERYYX
→>FILLERXZY
→FILLER…

—–

Der Aufbau eines *.quest Scripts

[Quest]
Name=Enzo_BringSlave
Name des Quests
Type=6 Questtyp
FinishedQuests
Fertige Quests um Quest erfüllen oder ausführen zu können (z.B. FinishedQuests=Tarok_Arena_Tukash;Tarok_Arena_Vigo)
LogTopic=QUEST_FILLER20060507194157 Questtitel im Tagebuch - aus stringtable.ini
ExperiencePoints=200
Exp, die vergeben werden (Achtung! Werden mit 5 Multipliziert: 200*5!)
PoliticalSuccess=0 Ruf bei einer best. Gruppe (Assasinen usw…)
PoliticalSuccessAmount=0
Menge an Rufpunkten
EnclaveSuccess=BenSala Stadt für Rufpunktevergabe bestimmen
EnclaveSuccessAmount=10
Rufpunkte für Vergabe bestimmen
JobSuccess=6 Wie erfolgreich muss man sein, damit der Quest abgeschlossen werden kann (?)
JobSuccessAmount=0
Wie erfolgreich war man schon (?)
Folder=Varant/BenSala/ Virtueller Ordner in dem der Quest in der quests.pak gespeichert wurde
DeliveryEntities=Miguel
Das, was man abliefern soll, z.B Items, NPCs (versklavung)
DeliveryAmounts=1 Wie viel soll man abliefern?
DeliveryCounter=0
Immer 0, da der Counter nur die Menge zählt, die man schon abgeliefert hat
DestinationEntity=Enzo An wen soll man den Kram abliefern?
RunningTimeYears=0
Zeitbegrenzung für Quest in Jahren (Ingame Zeit!)
RunningTimeDays=0 Zeitbegrenzung für Quest in Tagen (Ingame Zeit!)
RunningTimeHours=0
Zeitbegrenzung für Quest in Stunden (Ingame Zeit!)
AttribSuccess Attribut bei erfolg verbessern (z.B AttribSuccess=THF)
AttribSuccessAmount=0
Anzahl der Punkte, die dem Attribut hinzugefügt werden

Mögliche Städte für EnclaveSuccess:

Reddock
KapDun
Montera
Okara
Faring
Vangard
Silden
Geldern
Trelis
Nemora
Braga
BenErai
Enclave_Lago
BenSala
Bakaresh
MoraSul
Ishtar
Wolfclan
Hammerclan
Fireclan

Einträge bei „Type“:

0=Gebe Item an NPC
1=Sprich mit NPC
2=NPC oder Monster töten
3=NPC oder Monster besiegen (nicht töten)
4=Verschwinden / NPC vertreiben
5=Arenakämpfer besiegen
6=NPC bringen
7=NPC folgen
8=Arena betreten
9=
10=Stadt/Dorf von Orks befreien

gothic3/queststruktur.1483174094.txt.gz · Zuletzt geändert: 2016/12/31 09:48 von milky-way