Construction Set Neue Menü-Einträge hinzufügen

Fellan

Freund des Hauses
Ich möchte für meine Mod (derzeit noch -Übersetzung) "Verbessertes Kopfgeldsystem" neue Menü-Einträge erstellen.

Die Mod fügt für jede Region von Cyrodiil ein eigenes Kopfgeld hinzu. Das Problem ist aber, dass man im Menü unter "Kopfgeld" immer nur das Kopfgeld der Region sieht, in der man gerade ist. Das will ich ändern, indem ich für jede Region einen eigenen Eintrag in den Spieler-Statistiken im Menü hinzufüge. Wie mache ich das? Über Scripts, Quests oder über die .XML-Dateien im Menü-Ordner? Und wie genau wird das geregelt, wo finde ich denn überhaupt im CS die Ingame-Menüs bzw. in den .XML-Dateien?
 
Ich weiß nicht, wie das geht, aber ich weiß, dass der Thieves-Arsenal-Mod einen Menüeintrag in die Statistik einfügt, und zwar zeigt dieser an, wie oft man schon jemanden niedergeschlagen hat ... vielleicht kannst du das dort nachschauen.
 
  • Like
Reaktionen: Fellan
Dann muss es in der .ESP geregelt sein. Das ist schonmal sehr gut, dann bleibt die Mod benutzerfreundlich und man muss keine ArchiveInvalidation.txt erstellen oder noch extra Ordner entpacken, dann bleibt alles bei einer .ESP. Das ist gut.

Danke für den Hinweis, werde mir Thieves Arsenal nochmal genau ansehen. :)


edit: Daraus werde ich leider absolut nicht schlau bzw. finde den Eintrag zum Menü nicht...
 
Zuletzt bearbeitet:
Das kommt dazu, wäre aber kein allzu großes Problem. Ich steige da aber trotzdem nicht durch, d.h., ich finde den dazugehörigen Script oder Eintrag nicht.

Hat irgendjemand eine Ahnung, wo man die Menüs von Oblivion in der .ESM findet?
 
Thieves Arsenal veränder den String "Witze erzählt:" zu "Knockouts:".
Geh mal im CS nachdem du die "Oblivion.esm" und "Thieves Arsenal.esp" geladen hast auf
Gameplay -> Settings -> da suchste dir "sMiscJokesTold" dann siehste das da bei String Value "Knockouts:" steht.

Wie der Wert dahinter nu verändert wird hab ich leider keinen Plan. ^^
 
  • Like
Reaktionen: Fellan
Das hilft mir schonmal weiter, danke! Vielleicht kann man einfach bei "Settings" unter "sMisc" oder einem anderen Prefix neue Menü-Einträge hinzufügen.
 
Ein bisschen unrealistisch immer das aktuelle Kopfgeld zu sehen oder (im echten Leben bekommt man sicher auch keine Textnachricht eingebledet:) )
Viel interessanter wären doch sich ständig aktuallisierende Steckbriefe in den Städten und im Umland. Die man mitnimmt (hören damit auf sich zu aktuallisieren)
Und täglich kommt eine Wache vorbei und hängt wieder einen Neuen hin. Du weist nie ganz genau die aktuelle Höhe deines Kopfgeldes ;)
 
Zuletzt bearbeitet:
Bücher (Was Steckbriefe im Grunde sind) können meines Wissens nicht auf Skriptbefehle und so zugreifen. Höchstens Messageboxen... Hm, wie wärs, wenn die Diebesgilde gegen ein Entgeld (also auch für außenstehende) eine Liste erstellt, in der alle regionalen Kopfgelder stehen?
Würds mir dann so vorstellen, dass da so eine Liste rumhängt. Man aktiviert das Teil, 10 Septime werden entfernt und ab sofort kann man sein eigenes Kopfgeld sehen...
 
Hei coole Idee Oberscht Morrowind-Feeling ;)
Voralledingen muss man sich erstmal in die Stadt schleichen um die Gilde betretten zu können, würde gut mit Geheimtüren zusammen worken
sign in
 
Zuletzt bearbeitet:
Du konntest halt das Kopfgeld mit den halben Kosten bei der Diebesgilde loswerden ;)
Das war auch eher ein wohltätiger Verein der die Reichen bestohlen hat und den Armen gegeben hat :)
In Morrowind waren die Diebesgilden auch wirklich noch verrauchte Kneipen mit zwielichtigen Gestalten
 
@Zakaria: Das ist beim Kopfgeldsystem auch jetzt schon enthalten. Die Diebesgilde kann dir jedes einzelne regionale Kopfgeld abbezahlen oder halt gleich dein globales (also alle zusammen). Das mit den Nachrichten lesen...schön und gut, ist mir aber viel zu viel Arbeit, auch noch immer eine Wache loszuschicken. Aber mal sehen.

Um das Problem mit dem Buch zu beseitigen, kann ich doch auch einfach die Steckbriefe als "Misc"-Item erstellen, das man nicht direkt lesen kann, sondern das beim aktivieren eine Message Box auslöst. Das ist eigentlich gar keine schlechte Idee. Der Spieler sieht im Menü immer nur das Kopfgeld der aktuellen Region, um die anderen einsehen zu können, gibt es in jeder Stadt neue (oder ich benutze die vorhandenen, die noch keine Aufgabe haben) Diebesgilden-Mitglieder (oder "höhere" Bettler), die das Kopfgeld gegen ein geringes Entgeld ermitteln.


Code:
scriptname SteckbriefScript
begin onKopfgeld

if player.Activate SteckbriefID
MessageBox "%PlayerName% wird in der Region %RegionName% gesucht und als gefährlich eingestuft. %PlayerName% gilt als bewaffnet und absolut skrupellos. %PlayerName% hat ein Kopfgeld in folgender (folgenden) Region(en):

Anvil: XYZ Goldstücke
Bravil: XYZ Goldstücke
Bruma: XYZ Goldstücke
Cheydinhal: XYZ Goldstücke
Chorrol: XYZ Goldstücke
Kaiserstadt: XYZ Goldstücke
Kvatch: XYZ Goldstücke
Leyawiin: XYZ Goldstücke
Skingrad: XYZ Goldstücke
Wildnis: XYZ Goldstücke
endif

end

Oder falls das globale Kopfgeld ab 2700 Gold (falls aktiviert) in Kraft tritt:

Code:
scriptname KopfgeldScriptGlobal
begin OnKopfgeld

if player.Activate SteckbriefID
MessageBox "%PlayerName% wird in ganz Cyrodiil gesucht und wird als höchst gefährlich eingestuft! %PlayerName% sollte sich schnellstens verstecken, da sein Kopfgeld bereits XYZ beträgt und ganz Cyrodiil von ihm weiß!"
endif
end


Ich weiß, dass "begin onKopfgeld" kein Befehl ist, ich denke aber, man weiß, was gemeint ist. :p
 
Ähm, naja. Meine Idee, mit nur Kaiserstadt-Hafenviertel (Was stets vom Wasser aus erreichbar ist) und schlicht ein Beutel für die "Spende" find ich besser. So braucht man auch keine Synchronisation.
 
Neue Synchronisation braucht man auch so nicht, solche Dialoge lassen sich doch sehr, sehr einfach regeln:

"Ich möchte meine Kopfgelder einsehen"
"[nickt]"

Fertig. Kein toller Dialog, funktioniert aber. Dann bekommt man einen Zettel mit Ingame-Datum und den Kopfgeldern (die MessageBox kann ich ja noch anpassen), einem werden 20 Gold abgeknüpft, fertig. Das kann ich ja auf die Diebesgilden-Mitglieder oder offensichtliche Diebe begrenzen (z.B. "Jair" in der Kaiserstadt). Kann mir denn jemand die oben genannten Scripts richtigstellen?
 
Ich habe den Patch 1.2 und habe es noch nicht ohne getestet. Im Grunde ist der Patch aber nicht von Nöten. Du wirst es aber auf einen Versuch ankommen lassen müssen ;)

Das gehört aber nicht HIER rein, sondern in den passenden Thread (siehe meine Signatur).
 
Weiß denn wirklich niemand wie der Script-Befehl für "%PlayerName%" und die Anzeige vom Kopfgeld in einer Textbox (oder noch besser in einem Buch) heißt?! :(
 
Hm, sind die Kopfgelder in deinem Kopfgeldsystem in globalen oder skriptinternen Variablen gespeichert?

€dit: Habs angeschaut -> Sind sie.

Mach folgende Messagebox:
"Ihr habt folgende Geldstrafen in den Regionen Cyrodiils:
Anvil: (Variable für Anvil) = %.0f
[usw.]"
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Fellan
Dass ich diese Frage nicht beantworten kann zeigt wahrscheinlich, dass ich keine Ahnung vom Scripten habe.

Die Variablen (ich gehe mal davon aus, dass "B1", "B2" bis "B12" Variablen sind) sind unter den "Details" als "GLOB" gekennzeichnet. Ich schätze also mal, dass die Variablen global sind, was wahrscheinlich bedeutet, dass sie von anderen Objekten und Scripts genutzt werden können, richtig?