ich bin gerade am erstellen einer Mod für Nehrim, aber ich habe folgendes Problem:
Ich versuche ein Quest zu erstellen wo man sich mit einem NPC unterhält und er einem nach einem bestimmten Topic das man ihn fragt ein Quest startet, er einem folgt, man ihn Befehle geben kann und er dies erst ab Ende der Mission beendet. Zudem soll ein Topic verschwinden wenn man auf das Topic klickt wo man den NPC Hilfe anbietet. Bin im Scripten noch nicht so gut, also wäre es schön wenn mir einer sagen könnte wie ich mein Script ungefähr gestalten müsste
Script Problem
Moderator: Moderatoren
-
Schwertmeister
- Beiträge: 71
- Registriert: 29.05.2007 11:20
- Danksagung erhalten: 4 Mal
Also:
Du erstellst eine neue Quest, ich nenn sie hier mal meineNQ.
Dann machst du (mindestens) 3 Queststages:
5 - kein Log Eintrag, kein Result Script
10 - Log Eintrag in etwa so: "Ich habe den NPC angesprochen, er folgt mir nun..." (je nachdem, was du da haben willst )
15 - Log Eintrag , Quest fertig - NPC folgt mir nicht mehr, Result Script:
Als nächstes gehst du ins Dialog-Menü und erstellst dort erstmal einen neuen Dialog, ID z.B. meineNQTopic01.
Oben bei Topic Text trägst du z.B. ein "Ich möchte den Auftrag annehmen."
Dann erstellt du einen neuen Text mit dem ersten Teil, den der NPC sagen soll, dazu kannst du die Emotion einstellen, die der NPC dabei haben soll und ggf. eine Audio Datei dazu, das geht glaub ich aber nur in der alten Version vom CS. Alle weiteren Teile, die er hintereinander sagt, trägst du bei Response Details hintereinander ein.
SayOnce solltest du anwählen.
Danach trägst du unten bei Conditions die beiden Bedingungen ein:
GetIsID NpcID == 1
GetStage meineNQ == 5
Bei Result Script trägst du dann "SetStage meineNQ 10" ein und bei AddTopics später die Topics, die jetzt beim NPC erscheinen sollen.
Jetzt erstellst du alle Topics, die du brauchst, und fügst sie unter dem Reiter Topics im Quest Menü deiner Quest hinzu.
Überlege dir dabei immer, welche Bedingungen (Conditions) du brauchst, also immer den NPC und die Queststage abfragen. Unter Umständen auch, wieviele bestimmte Items der Spieler dabei hat, wieviel Geld er hat usw usf. Die Liste ist ja lang genug.
Mit dem NPC folgen werd ich nochmal schaun. Mit den Topics kannst ja schonmal die Befehle einfügen.
Grüße,
bIgGeSt_NoOb
Du erstellst eine neue Quest, ich nenn sie hier mal meineNQ.
Dann machst du (mindestens) 3 Queststages:
5 - kein Log Eintrag, kein Result Script
10 - Log Eintrag in etwa so: "Ich habe den NPC angesprochen, er folgt mir nun..." (je nachdem, was du da haben willst )
15 - Log Eintrag , Quest fertig - NPC folgt mir nicht mehr, Result Script:
Code: Alles auswählen
Und dann noch EP, Geld oder Itembelohnungen hinzufügen.Set VarQuestComplete to ( VarQuestComplete +1 )
Als nächstes gehst du ins Dialog-Menü und erstellst dort erstmal einen neuen Dialog, ID z.B. meineNQTopic01.
Oben bei Topic Text trägst du z.B. ein "Ich möchte den Auftrag annehmen."
Dann erstellt du einen neuen Text mit dem ersten Teil, den der NPC sagen soll, dazu kannst du die Emotion einstellen, die der NPC dabei haben soll und ggf. eine Audio Datei dazu, das geht glaub ich aber nur in der alten Version vom CS. Alle weiteren Teile, die er hintereinander sagt, trägst du bei Response Details hintereinander ein.
SayOnce solltest du anwählen.
Danach trägst du unten bei Conditions die beiden Bedingungen ein:
GetIsID NpcID == 1
GetStage meineNQ == 5
Bei Result Script trägst du dann "SetStage meineNQ 10" ein und bei AddTopics später die Topics, die jetzt beim NPC erscheinen sollen.
Jetzt erstellst du alle Topics, die du brauchst, und fügst sie unter dem Reiter Topics im Quest Menü deiner Quest hinzu.
Überlege dir dabei immer, welche Bedingungen (Conditions) du brauchst, also immer den NPC und die Queststage abfragen. Unter Umständen auch, wieviele bestimmte Items der Spieler dabei hat, wieviel Geld er hat usw usf. Die Liste ist ja lang genug.
Mit dem NPC folgen werd ich nochmal schaun. Mit den Topics kannst ja schonmal die Befehle einfügen.
Grüße,
bIgGeSt_NoOb
-
Schwertmeister
- Beiträge: 71
- Registriert: 29.05.2007 11:20
- Danksagung erhalten: 4 Mal
Okay, easy going:
Du erstellst für jede Auswahl ein AI-Package (stehen bleiben, folgen, etc. Ich hoffe du weißt, wie das geht ) mit jeweiliger Bedingung GetStage meineNQ xyz.
Dann fügst du alle Queststages xyz ein (am besten 11, 12, 13, ... ). Bei den Topics trägst du als Resultscript beispielsweise fürs Follow folgendes ein:
SetStage meineNQ 11
NPCRef.evp
Für NPCRef trägst du natürlich die Referenz auf deinen NPC ein. Nun müsste dir der NPC folgen, wenn du ein AI-Package erstellt hast, bei dem der NPC dem Spieler folgt, wenn die Queststage 11 eintritt.
Hoffe, du kriegst das hin.
Falls du was nicht raffst oder schaffst, schreibs einfach hier rein.
Grüße,
bN
Du erstellst für jede Auswahl ein AI-Package (stehen bleiben, folgen, etc. Ich hoffe du weißt, wie das geht ) mit jeweiliger Bedingung GetStage meineNQ xyz.
Dann fügst du alle Queststages xyz ein (am besten 11, 12, 13, ... ). Bei den Topics trägst du als Resultscript beispielsweise fürs Follow folgendes ein:
SetStage meineNQ 11
NPCRef.evp
Für NPCRef trägst du natürlich die Referenz auf deinen NPC ein. Nun müsste dir der NPC folgen, wenn du ein AI-Package erstellt hast, bei dem der NPC dem Spieler folgt, wenn die Queststage 11 eintritt.
Hoffe, du kriegst das hin.
Falls du was nicht raffst oder schaffst, schreibs einfach hier rein.
Grüße,
bN
Danke erstmal für deine Hilfe! Es klappt soweit, nur kommt der NPC gleich schon angerannt wenn ich das Game starte. Kannst du mal bitte vieleichts erklären wie ich das genau machen muss? Hatte schonmal einen Begleiter erstellt, da war das nicht so. Den Energy Level hab ich schon runtergedreht, scheint aber nicht zu funktionieren
mfg Skarok
mfg Skarok
-
Schwertmeister
- Beiträge: 71
- Registriert: 29.05.2007 11:20
- Danksagung erhalten: 4 Mal
Energy Level? Seine Ausdauer oder was? Das bringt wohl wenig. xD
Denke mal, das liegt an den Bedingungen vom AI Package. Du musst da auf jeden Fall die GetStage meineNQ xyz Bedinung mit jeweiliger Queststage angeben! Dann müsste es klappen.
Denke mal, das liegt an den Bedingungen vom AI Package. Du musst da auf jeden Fall die GetStage meineNQ xyz Bedinung mit jeweiliger Queststage angeben! Dann müsste es klappen.
Ok, jetzt gehts. Ich habe die Befehle in ein Script verfasst(mit Messageboxen und so). Wie kann ich es anstellen dass das Script erst in Kraft tritt wenn das HilfeTopic aktiviert wurde? Außerdem möchte ich zwischen dem Ende eine Queststage einbauen, das wenn wir eine bestimmte Linie)Trigger) überqueren wir von einem NPC angegriffen werden und eine Questaktualisierung kommt wenn er tot ist
-
Schwertmeister
- Beiträge: 71
- Registriert: 29.05.2007 11:20
- Danksagung erhalten: 4 Mal
Wie kann ich es anstellen dass das Script erst in Kraft tritt wenn das HilfeTopic aktiviert wurde?Im Resultscript vom Topic eine Variable im Script hochsetzen und dann ein If-Block um den Script-Teil.
Außerdem möchte ich zwischen dem Ende eine Queststage einbauen, das wenn wir eine bestimmte Linie)Trigger) überqueren wir von einem NPC angegriffen werdenEin/zwei Marker hinsetzen, Referenz geben und dann im Script vom ersten Marker abfragen, wann man sich diesem nähert und dann halt den NPC in der 2. Box spawnen lassen (oder er ist schon da) und ihn dann angreifen lassen:
Code: Alles auswählen
Für 300 kannst du natürlich auch eine andere Reichweite einsetzen. Eventuell muss da noch ein NPCRef.evp hin, weiß nicht genau.scn Linie
Begin GamePlay
If getDistance Player < 300
If getStage meineNQ xyz
NPCRef.moveTo Marker2Ref
NPCRef.startCombat Player
Endif
Endif
End
und eine Questaktualisierung kommt wenn er tot istBeim NPC einen Script drauflegen:
Code: Alles auswählen
scn NPCTOT
short doonce
Begin OnDeath
if doonce == 0
setStage meineNQ xyz
set doonce to 1
endif
End
-
Krieger
- Beiträge: 40
- Registriert: 12.08.2010 12:50
Ich hänge mich mit meiner Frage dran: Was bedeuten diese Reichweiten? Wie weit ist z.B. 300? Wenn ich das wüsste, würde ich mir endlich diese Skripts mit Entfernungsangaben auch visuell vorstellen können. Sind es z.B. 300 mm/cm/dm/m oder welche Einheit ist das?
Mit freundlichen Grüßen
jimmartens
Also..
Das mit dem Begleiter hab ich geschafft. Allerdings nur außerhalb der Portalgegend wo er erscheinen soll. Immer wenn ich durch ein Portal komme, erscheint der NPC da nicht. Des weiteren wird die weiter hinten plazierte Triggerbox gleich aktiviert, worauf der Wächter gleich angerannt kommt um mich zu erldedigen. dann wollen seine Feinde und Verbündeten die eigentlich aufeinander losgehen sollen auf ihn los, außer zwei die ich in einem Script gegeneinander kämpfen habe lassen, damit ein Kampf entbrennt. Bleibt aber bei den zwei. Hab die Faktions schon gegeneinander zu .100 eingestellt. Dann noch ein Prob: Ich wollte eine Leiche plazieren, aber die steht anstatt zu liegen^^ Wie muss ich das genau machen außer Leben = 0?
Das mit dem Begleiter hab ich geschafft. Allerdings nur außerhalb der Portalgegend wo er erscheinen soll. Immer wenn ich durch ein Portal komme, erscheint der NPC da nicht. Des weiteren wird die weiter hinten plazierte Triggerbox gleich aktiviert, worauf der Wächter gleich angerannt kommt um mich zu erldedigen. dann wollen seine Feinde und Verbündeten die eigentlich aufeinander losgehen sollen auf ihn los, außer zwei die ich in einem Script gegeneinander kämpfen habe lassen, damit ein Kampf entbrennt. Bleibt aber bei den zwei. Hab die Faktions schon gegeneinander zu .100 eingestellt. Dann noch ein Prob: Ich wollte eine Leiche plazieren, aber die steht anstatt zu liegen^^ Wie muss ich das genau machen außer Leben = 0?
-
Krieger
- Beiträge: 40
- Registriert: 12.08.2010 12:50
Stell mal die HavokSim an, nachdem du die Lebenspunkte auf 0 gesetzt hast. Dann müsste die Leiche zu Boden fallen.
Mit freundlichen Grüßen
jimmartens
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste