[Modding] Genaue Werte im Dialog abfragen

Genwa

Betrachter
Registriert
08.01.2018
Beiträge
324
Hi,
ich habe grade in einem meiner Leiblingsmods Folgendes gesehen:

Code:
Meine Eigenschaften:
Ich bin ein Kämpfer/Magier auf Stufe <A7AFQ_LVL>/14.
Stärke: 19
Geschicklichkeit: 17
Konstitution: 16
Intelligenz: 15
Weisheit: 16
Charisma: 11
Max. TP: <A7AFQ_HP>
Normaler ETW0: <A7AFQ_THAC0>
Rüstungsklasse: <A7AFQ_AC>
Rettungswürfe: <A7AFQ_SV1>/<A7AFQ_SV2>/<A7AFQ_SV3>/<A7AFQ_SV4>/<A7AFQ_SV5>
Angriffe/Runde: 2
Ich habe die Großmeisterschaft in Krummsäbeln erlangt und bin hochbegabt im Umgang mit einhändigen Waffen.

Tolle Sache, das würde mir etliches Geschreibe und Rumgetrickse ersparen. Leider habe keine Ahnung wie und wo man das definieren kann.
Kennt sich jemand damit aus?

LG Genwa
 

Maus

Senior Member
Registriert
07.08.2002
Beiträge
9.380
Das ist doch die Bio oder? Ich verstehe nicht ganz, was du auslesen willst?
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.922
Das sieht aus, als hätte @Argent eigene Token definiert. Wie das geht, weiß ich nicht.
 

Genwa

Betrachter
Registriert
08.01.2018
Beiträge
324
@Maus:
Die Funktion liest scheinbar die aktuellen Werte des NPC aus. Also z.B. welches Lvl. und welche Rüstungsklasse er im Moment hat.
Ich würde damit gerne eine Dialogabfrage machen, die den Wert von Taschendiebstahl bei einem NPC (Fletcher) abfragen. Er ist kein Gruppenmitglied, hat unterschiedliche Level, Items und Tränke... das sind ziemlich viele Dialogzeilen, die ich mir so sparen könnte.
 

Maus

Senior Member
Registriert
07.08.2002
Beiträge
9.380
Hm, das sind ja Werte, die einem in der GUI angezeigt werden. Vielleicht einfach mal die GUI-Mods anschauen (weil irgendwoher muss so ein GUI-Ersteller ja die Daten haben)? Allerdings könnte es sein, dass es für ein Nicht-Gruppenmitglied schwer ist bzw. anders...
 

Genwa

Betrachter
Registriert
08.01.2018
Beiträge
324
Heyho,
die Lösung heißt "SetTokenGlobal". Der Befehl war mir bisher komplett entgangen. Dadurch wird ein Token erstellt, der dem Wert einer Global entspricht, also z.B.

GLOBAL GOBLINKILLS (Golbins getötet = X) würde man mit SetTokenGlobal("GOBLINKILLS", "GLOBAL", "GOBLIN_KL") in einen Token umwandeln und könnte ihn so im Dialog verwenden:
"Ich habe <GOBLIN_KL> Goblins erledigt, und Ihr?"

Das bedeutet, dass man die Skills des Chars am Anfang selber mit einer Var. festhalten und diese bei jeder Änderung aktualisieren muss (IncrementGlobal und SetTokenGlobal wiederholen).
Das ist natürlich nicht so schön wie eine direkte Abfragemöglichkeit, aber eine tolle Lösung in Anbetracht der beschränkten Mittel (@Argent).

LG Genwa
 

Acifer

Senior Member
Registriert
27.04.2019
Beiträge
2.170
Danke für diesen wertvollen Tipp! Das wusste ich auch nicht. Es ist immer wieder faszinierend zu sehen, wieviele Möglichkeiten die alte Infinity Engine doch bietet!
 

Jastey

Matron Modderholic
Registriert
16.05.2004
Beiträge
12.922
Das ist in der Tat interessant! Das wusste ich bisher auch nicht! :up:
 
Oben