Allgemein
News
News-Archiv
Partner
Netzwerk
Banner
Header
Media
Downloads
Impressum

The Elder Scrolls
Arena
Daggerfall
Spin-offs
Romane
Jubiläum
Reviews
Welt von TES
Lore-Bibliothek
Namens-
generator

FRPGs

Elder Scrolls Online
Allgemein
Fraktionen
Charakter
Kargstein
Technik
Tamriel-
Manuskript

Media

Skyrim
Allgemein
Lösungen
Tipps & Tricks
Steam-Kniffe
Review
Media
Plugins & Mods

Oblivion
Allgemein
Lösungen
Tipps & Tricks
Technik
Charakter
Media
Plugins & Mods
Kompendium

Morrowind
Allgemein
Lösungen
Tipps & Tricks
Media
Plugins & Mods

Foren
The Elder Scrolls Online
Hilfe & Diskussion

Skyrim
Hilfe & Diskussion
Plugins & Mods

Ältere TES-Spiele
TES-Diskussion
Oblivion-Plugins
Morrowind-Plugins

Community
Taverne zum Shalk
Adventures of Vvardenfell
Tales of Tamriel
Ergebnis 1 bis 13 von 13

Thema: Problem bei Quests#-modding (Scripts)

  1. #1

    Problem bei Quests#-modding (Scripts)

    Hallo^^
    Ich habe eine Questmod gemoddet. soweit so gut. Am Ende der Quest will ich aber, dass ein bestimmter NPC gerade, wenn der Spieler die Quest abgeschlossen hat, eienn Zauber castet und dann disabled wird. Außerdem will ich, das mit beenden der Quest auch ein völlig naderer NPC an nem anderen ort disabled wird. Was und Wo muss ich da eingeben?^^

  2. #2
    Es gibt doch ein Result-Fenster (oder so ähnlich) im Quest-Tab, dort sollte das rein. Schau dir mal Vanilla-Quests an, dann wirst du sehen was ich meine.

  3. #3
    Ich weiss welches Fenster du meinst, aber das hilft mir nix oO
    Ich hatte da schon eingetragen, dass, beim Abschluss der Quest, besagter NPC den Spell castet und der andere disabled wird, aber es ist nichts passiert oO
    Wie müssen die Befehle denn genau aussehen? Muss man das vielleicht über einen unsichtbaren Trigger machen?

  4. #4
    Sorry bei Scripten blicke ich selbst nicht durch, da muß dir jemand anderes helfen.

    p.s. Du wurdest geknipst, Herzlichen Glückwunsch zur Lucky 7!

  5. #5
    Eigentlich sollte
    Code:
    [NPC1-Ref].cast [NPC1-Ref]             ;für einen Zauber an selbst
    [NPC2-Ref].disable
    Zusammen mit der Zeile
    Code:
    [NPC1-Ref].disable
    im Zauber(nicht in der Queststage, da der ja erst zaubern muss) reichen.


    Wie sah denn dein bisheriger Versuch aus?

  6. #6
    Also ich hatte es so gemacht ; in dem Fenster neben dem Queststage eingetragen :
    Ref [NPC] cast [Spell] self (der Spell ist ein disable-Befehl aus den caster)
    Ref [NPC2] disable
    Geändert von Lord Asgar (21.12.2007 um 15:13 Uhr)

  7. #7
    Da haben wir auch schon den Fehler. Hat der dir bei deinem Script keine Fehlermeldung hinterhergeschmissen, als du auf Compile Result geklickt hast?

    Nach dem sog. Calling Actor muss ein . hin, kein Leerzeichen
    vor den Calling Actor darf kein Ref ! Wenn du eine Ref-Variable willst musst du die in der Zeile vorher definieren. Wenn du eine (Persitence) Reference eines Objects nehmen willst nimmst du einfach die ID.

    Ich geh jetzt mal davon aus, die NPC-Refs haben die ID NPC1Ref und NPC2Ref. Dann müsste das so aussehen:

    Code:
    NPC1Ref.Cast [Spell] NPC1Ref
    NPC2Ref.disable

  8. #8
    Zitat Zitat von Low Post Beitrag anzeigen
    Da haben wir auch schon den Fehler. Hat der dir bei deinem Script keine Fehlermeldung hinterhergeschmissen, als du auf Compile Result geklickt hast?

    Nach dem sog. Calling Actor muss ein . hin, kein Leerzeichen
    vor den Calling Actor darf kein Ref ! Wenn du eine Ref-Variable willst musst du die in der Zeile vorher definieren. Wenn du eine (Persitence) Reference eines Objects nehmen willst nimmst du einfach die ID.

    Ich geh jetzt mal davon aus, die NPC-Refs haben die ID NPC1Ref und NPC2Ref. Dann müsste das so aussehen:

    Code:
    NPC1Ref.Cast [Spell] NPC1Ref
    NPC2Ref.disable
    Dann probiere ich das mal aus (Reicht es wirklich, wenn man das einfach an den Questeintrag hängt?)
    Vorher noch ne Frage, reicht es, wenn das Spcript für den Disalbe-Spell so aussieht?

    Zitat Zitat
    scn wegteleportzauberscript

    begin scripteffectstart

    disable

    end
    Edit : Es geht, danke


    Edit²:
    Wieder eine Frage : Ich möchte, dass eine bestimmte Quest 7 Tage nach beendigung einer anderen Quest (also der auf Status 100-Setzung) gestartet wird, WENN der Spieler sich nicht in einer bestimmten Zelle befindet, andernfalls soll sie gestartet werden, wenn er die Zelle verlässt, solange die 7 Tage um sind.


    Edit von Low Post:
    Den -Button gibt es immer noch.
    Geändert von Low Post (21.12.2007 um 16:22 Uhr)

  9. #9
    Code:
    scn Quest2Script
    
    short Day
    short Started
    
    Begin Gamemode
     if ( Started )
      ;Dein Code
     else
      if ( GetQuestRunning Quest1 == 0 )
       if ( Day == 0 )
        set Day to ( GameDaysPassed + 7 )
       else
        if ( GameDaysPassed >= Day )
         if ( Player.GetInCell [Die bestimmte Zelle] == 0 )
          set Started to 1
         endif
        endif
       endif
      endif
     endif
    End
    Setzt vorraus, dass die Quest spätestens beim beenden von Quest 1 gestartet wird. (Imho optimaler Zeitpunkt, da das Skript sonst sowieso nichts macht).

  10. #10
    Zitat Zitat von Low Post Beitrag anzeigen
    Code:
    scn Quest2Script
    
    short Day
    short Started
    
    Begin Gamemode
     if ( Started )
      ;Dein Code
     else
      if ( GetQuestRunning Quest1 == 0 )
       if ( Day == 0 )
        set Day to ( GameDaysPassed + 7 )
       else
        if ( GameDaysPassed >= Day )
         if ( Player.GetInCell [Die bestimmte Zelle] == 0 )
          set Started to 1
         endif
        endif
       endif
      endif
     endif
    End
    Setzt vorraus, dass die Quest spätestens beim beenden von Quest 1 gestartet wird. (Imho optimaler Zeitpunkt, da das Skript sonst sowieso nichts macht).
    Muss ich das Script an irgendnen Marker oder so hängen oder wirkt es schon durch seine bloße existenz?

  11. #11
    Das Skript verwendest du als Skript für die 2. Quest. Das was du eigentlich als Questskript haben willst schreibst du dann da hin wo ;dein Code steht. Der Bereich läuft nur ab, wenn die Quest1 beendet wurde und 7 Tage vergangen sind.

  12. #12
    Aha, aber was meinst du mit Questscript? Kommt das in dieses Result Window oder reicht es wie gesagt, das Script einfach zu schreiben und abzuspeichern und dann wirkt es? Oder muss ich das irgendwo speziell eintragen?

    Ich denke ich werde es so machen, dass direkt nach beendigung der ersten Quest Quest zwei beginnt, mit einem dieser Standart-Einträge "Ich sollte auf der Hut sein und Abwarten" und dann kommt das Script zum einsatzt wenn 7 Tage vergangen sind und setzt den Queststatus auf 20 (Das müsste dann bei dein Code stehen? also Setstage quest 20)

  13. #13
    Mit Questskript meine ich, dass du dem Skript den Typ Quest zuweist.

    Danach wählst du es in dem Quest-Data Tab aus.


    Der Abschnitt im Bereich ;dein Code läuft nur ab, wenn die Variable Started auf 1 steht, kannst du also auch zur Abfrage verwenden, ob die 7 Tage um sind.


    Achtung:
    In das Resultskript der letzten Queststage von Quest1 müssen folgende Zeilen:
    Code:
    StartQuest Quest2
    StopQuest Quest1

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •