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
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
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:
Und dann noch EP, Geld oder Itembelohnungen hinzufügen.
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 Select all
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
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
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
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
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
Code Select all
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 ist
Code Select all
scn NPCTOT
short doonce
Begin OnDeath
if doonce == 0
setStage meineNQ xyz
set doonce to 1
endif
End 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?
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?
Stell mal die HavokSim an, nachdem du die Lebenspunkte auf 0 gesetzt hast. Dann müsste die Leiche zu Boden fallen.
Wo stellt man das ein?
Und das mit den MessageBoxen ist bei allem- Menumode, Gamemode..
Und das mit den MessageBoxen ist bei allem- Menumode, Gamemode..
So stellt man das ein:
World -> Run Havok Sim
bzw.
auf den Button rechts außen im 4. Buttonblock von links klicken. Dort ist ein HK drauf.
Zu dem Kampf: Befindet sich der Wächter in der Faction seiner Verbündeten? Wenn nein, dann dürfte dies erklären, warum er von dieser auch attackiert wird. Wenn er sich in der Faction befindet, dann ist es klar, dass seine Feinde ihn angreifen. Einzige Lösung, die mir jetzt spontan einfällt, wäre, ihn in eine eigene Faction zu stecken und diese freundlich zu den beiden anderen zu machen. Weiterhin müsstest du in den anderen 2 Factions (Verbündete, Feinde) natürlich auch die Faction des Wächters auf freundlich machen.
World -> Run Havok Sim
bzw.
auf den Button rechts außen im 4. Buttonblock von links klicken. Dort ist ein HK drauf.
Zu dem Kampf: Befindet sich der Wächter in der Faction seiner Verbündeten? Wenn nein, dann dürfte dies erklären, warum er von dieser auch attackiert wird. Wenn er sich in der Faction befindet, dann ist es klar, dass seine Feinde ihn angreifen. Einzige Lösung, die mir jetzt spontan einfällt, wäre, ihn in eine eigene Faction zu stecken und diese freundlich zu den beiden anderen zu machen. Weiterhin müsstest du in den anderen 2 Factions (Verbündete, Feinde) natürlich auch die Faction des Wächters auf freundlich machen.
Danke erstmal!
Der Wächter ist in derselben Faktion wie die anderen Wächter, die eigentlich die anderen attakieren sollten. Mittlerweile hab ich das jetzt hingekriegt, bis darauf dass alle Scripts hinter dem Portall gleich nach dem Betreten starten, statt dann wenn sie es sollten.
Der Wächter ist in derselben Faktion wie die anderen Wächter, die eigentlich die anderen attakieren sollten. Mittlerweile hab ich das jetzt hingekriegt, bis darauf dass alle Scripts hinter dem Portall gleich nach dem Betreten starten, statt dann wenn sie es sollten.
Dann haste wohl anstatt "Begin OnTrigger" das Script mit "Begin GameMode" gestartet...
Denke mal, das liegt an irgendeiner Condition, die falsch gesetzt ist. Vielleicht ist die Reichweite zu hoch? 300 sind geschätzt... puh.. 3 Meter? Weiß nicht genau. Wenn du 5000 oder so genommen hast, ist das viel zu hoch. 
Edit: Oh, ja das kann sein, hab ich wohl nen Fehler gemacht. *ups*
Edit: Oh, ja das kann sein, hab ich wohl nen Fehler gemacht. *ups*
Ja, das stimmt. Nur ist dasselbe bei Sxcripts für Waffen, das kommt auch gleich wenn ich das Portal betätige. Und da hab ich keinen HameMode verwendet.
Edit: Hat sich erledigt, die Waffenscripts gehen jetzt auch
Edit: Hat sich erledigt, die Waffenscripts gehen jetzt auch
Last edited by Skarok on 15.08.2010 19:50, edited 1 time in total.
Kannst du mal den Script posten? 
Ok. Triggerscript:
end[/code]
Waffenscript1:
Waffenscript2:
[/code]
Code Select all
scn Angriffsscript
[code]Begin OnTrigger
MessageBox "Ihr dürft nicht passieren!", "Okay"
Wachter1.SetAV Aggression 100
Wachter1.StartCombat player
Ketzer1.StartCombat Wachter2
Wachter2.StartCombat Ketzer1Waffenscript1:
Code Select all
scn Ketzerwaffenscript
Begin OnEquip
MessageBox "Du kannst diese Waffe nicht verwenden!"
player.unequipItem Ketzerschwert
endCode Select all
scn Wachterwaffenscript
[code]Begin MenuMode
MessageBox "Ihr könnt diese Waffe nicht verwenden!", "Okay"
player.unequipItem Wachterschwert1
endUnd Waffenscript1 aktiviert sich, sobald du das Portal benutzt? Hö? Wie hab ich das zu verstehen?
Hast du den Triggerscript auf das Portal gelegt? Dann ist das ja klar, dass die dich sofort angreifen... wodrauf willst den den denn haben?
Hast du den Triggerscript auf das Portal gelegt? Dann ist das ja klar, dass die dich sofort angreifen... wodrauf willst den den denn haben?
Nein, ich hatte einmal Begin on Equip und einmal Begin GameMode im Script. jetzt läufts wieder
Nur wie stellt man nochmal ein das die Feinde nicht wegrennen wenn sie geschwächt sind?
Nur wie stellt man nochmal ein das die Feinde nicht wegrennen wenn sie geschwächt sind?



