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: fragen

  1. #1

    fragen

    Hi,
    Ist schon etwas leer hier geworden in letzter Zeit Wird mal zeit das jemand mal wieder ein paar fragen stellt
    Also:
    1.) Ich arbeite gerade an einer Quest, und die soll so starten: ich soll mit einem Bürger aus Anvil sprechen, und dort soll ein Thema erscheinen, und wenn ich auf das Thema klicke sagt der halt was. Aber wie mach ich das das es nur die Anviler sagen?

    2.) In dieser Quest gibt es auch so einen Inhalt, wo man zuerst in eine Cell reinkommt, und dann schlafen muss. (Ich denke irgendwie das es besser ist in diesem Fall das Bett als Activator zu machen) Also, dabei soll eine bestimmte Zeit vergehen, und danach soll eine andere Tür stadt der, in die der Spieler reingekommen ist. Also im klartext: Der Spieler soll durch eine tür rein, schlafen, und durch eine andere raus...
    Ich hab mir auch überlegt, ob ich es nicht so mache das das Bett meinen Char in eine andere Cell teleportiert. bzw. in die selbe Cell nur halt weit weit weg...

    mfg

  2. #2
    1.)Alle Anviler Leute gehören afaik der selben Faction (irgendwas mit Anvil) an. Die kannst du unter Condition als Voraussetzung angeben.
    Schau dir doch einfach das Topic Anvil an, so wie das da gelöst wurde funktioniert das ja.


    2.)Du könntest mit Disable/Enable arbeiten und damit die Türen austauschen.
    Als Auslöser evtl. ein QuestScript, welches von der Eingangstür gestartet wird und sich nach erledigen der Aufgabe automatisch beendet.

    Also z.B. folgendes Script auf die Tür:
    Code:
    scn DoorScript
    
    Begin OnActivate
     if ( IsActionRef Player )
      StartQuest [QuestID]
     endif
     Activate
    End
    Und das hier für die Quest (nicht Start Game Enabled):
    Code:
    scn QuestScript
    
    Begin Menumode
     if ( IsPCSleeping ) && ( [Ausgangstür].GetDisabled )
      [Eingangstür].Disable
      [Ausgangstür].Enable
      SetPCSleepHours [Anzahl der Stunden]
      StopQuest [QuestID]
     endif
    End

  3. #3
    ok, danke sehr! Das war schon sehr hilfreich. Ich werde das am besten gleich mal ausprobieren, da ist mir aber noch eine frage aufgekommen:

    Dafür muss ich doch beide türen platzieren, oder? Ich meine wie mach ich das, das die Türen sich nicht stören?

    *Edit* Kann ich das mit den anvilern auch irgendwie so machen, das es wie ingame diese : "Neues Thema: Halt meine Quest". Weiß jemand wie das geht?
    Geändert von Satsuma (02.07.2008 um 08:11 Uhr)

  4. #4
    das die türen sich nicht stören: Platzier sie einfach direkt übereinander und hake bei der tür die dann später zu dem anderen ausgang führen soll das kästchen initally disabled (irgendwie so) ab, dann wird die zu beginn vom spiel nicht angezeigt, sie ist also praktisch vom spieler aus nicht da. Dann später, nach dem schlafen, must du die erste tür deaktivieren und die neue einschalten, etwa so in einem skript:

    Code:
    erstetürref.disable
    zweitetürref.enable

  5. #5
    ok, werd ich probieren, da sind grad noch ein paar probs aufgetaucht
    also: Wie mache ich es das eine QuestStage sich ändert, wenn ich in der nähe eines X-Markers bin? Ich hab die dinger zwar schon gesetzt wo sie hingehören, aber da passiert irgendwie nix. Ich meine ingame wird dann der Pfeil schon angezeigt, aber es kommt kein Tagebuch eintrag.
    Und noch was: wie mache ich es das ein Quest gleich am spiel-start anfängt? Also so wie in den erweiterungen.

  6. #6
    1.) in dem QuestScript der entsprechenden Quest die Entfernung vom X-Marker zum Player abfragen und dann ein SetStage ausführen:

    Code:
    scn QuestScript
    
    Begin Gamemode
     if ( [XMarker].GetDistance Player <= [Entfernung in Units] ) && ( GetStage [QuestID] == [Alte QuestStage]
      SetStage [QuestID] [Neue QuestStage]
     endif
    End
    Bei mehreren solchen Abfragen die neue mit einem elseif anhängen (vor dem endif).


    2.) Häckchen bei StartGameEnabled dalassen und folgendes Script verwenden:
    Code:
    scn QuestScript
    
    int DoOnce
    
    Begin Gamemode
     if ( DoOnce == 0 )
      set DoOnce to 1
      SetStage [QuestID] [QuestStage mit der Startnachricht]
     endif
    End
    Könntest du doch eigentlich auch bei den DLCs abschreiben.

  7. #7
    Ja, das StartGameEnabled hab ich schon gemacht, ist aber nix passiert. Und wo muss ich den script dann verwenden (den 2en). Das mit den DLCs hab ich mir auch schon gedacht, aber um was abzuschreiben, muss man erstmal verstehen wo man suchen muss^^
    Hab grad CS beendet, ich werds wahrscheinlich also erst später ausprobieren...

    Ich hab noch eine frage: (<= ja, ich hab noch sehr sehr viele^^)
    diese hat aber nix mit diesem Thema zu tuhen, also: wie kann ich ein script schreiben, das etwas bewirkt, sobald der spieler in seinem Inventar einen Kaputten gegenstand hat?


    Und wo ich schon mal dabei bin, gleich noch eine:
    Wie kann ich es regeln das ein Zauber dem Spieler automatisch beigefügt wird, sobald dieser eine Region betritt?

  8. #8
    Das Script muss der Quest zugewiesen werden.
    Zum Abschreiben gibt es noch den netten Knopf Details im CS, in einem der Sachen die da aufgelistet werden muss es drin stehen.


    2.) Mir ist keine Möglichkeit bekannt, die das sauber löst.
    Das Problem bei der Sache ist, dass Objekte im Inventar keine eigenen IDs haben, wodurch ein einzelnes untersuchen der Objekte nicht möglich ist.



    3.)Folgendes Script auf ein Objekt in der fraglichen Zelle:
    Code:
    scn ObjectScript
    
    short DoOnce
    
    Begin Gamemode
     if ( GetInSameCell Player ) && ( DoOnce == 0 )
      set DoOnce to 1
      Player.AddSpell [SpellID]
     endif
    End

  9. #9
    sorry, bin einfach nicht so weit Wie kann man einen Script einer Quest zu weisen? Ich hab sowas nicht gefunden

    Was das mit dem script ist: So weit so gut Aber mir ist aufgefallen das es nur in der Selben Cell wirkt wenn der spieler dort ist (GetInSameCell Player), dann wird :
    1.) Der zauber für immer bleiben (wenn ich das richtig verstehe) sollte er aber nicht
    2.) Das wirkt doch nur in der selben Cell, oder? Kann man das nicht auf eine Region ausweiten? Sagen wir z.b. die Gold Küste? Oder die Bergregion um Bruma herrunm?

  10. #10
    1.) Wenn du das Questfenster öffnest und deine Quest auswählst gibt es dort ein DropDown-Menü. Dort wählst du dann das Script aus.
    Wichtig dabei ist, dass das Script auch als QuestScript abgespeichert wurde.


    2.) Du hast nur geschrieben hinzugefügt.
    Um das auf mehrere Zellen auszuweiten kannst du entweder GetInWorldspace verwenden, wenn das den ganzen Wordspace betrifft, oder du verwendest GetInCell.
    Bei GetInCell hast du mehrere Möglichkeiten: entweder frägst du jede Zelle ab und verknüpfst das ganze mit ||, oder du erstellst eine Dummy-Zelle, mit deren ID alle anderen Zellen beginnen (und sonst keine, falls doch müssen die extra ausgeschossen (== 0) werden).
    Natürlich kann man das ganze auch Kombinieren.

    Also z.B. so:
    Code:
    scn QuestScript
    
    short Added
    
    Begin Gamemode
     if ( Added ) && ( Player.GetInCell [ID der Dummy-Zelle] == 0 )
      set Added to 0
      Player.RemoveSpell [SpellID]
     elseif ( Added == 0 ) && ( Player.GetInCell [ID der Dummy-Zelle] )
      set Added to 1
      Player.AddSpell [SpellID]
     endif
    End
    Das ganze muss jetzt allerdings als Questscript verwendet werden.

  11. #11
    Habs gefunden
    Aber irgendwie funtzt mein script nicht ganz, also das es von anfang an da sein soll, das geht. Aber das mit dem Marker geht nicht:
    Code:
    scn meinScript
    
    int DoOnce
    
    Begin Gamemode
    
     if ( DoOnce == 0 )
      set DoOnce to 1
      SetStage MeinQuest 10
     endif
    
     if ( MeinMarker.GetDistance Player <= 20 ) && ( GetStage MeinQuest == 10 )
             SetStage MeinQuest 20
     endif
    end
    Nicht das ihr euch was denkt, die namen hab ich geändert So wird meineQuest ingame net heißen^^
    Also, was genau hab ich jetzt wieder verbockt?

  12. #12
    20 Units sind verdammt wenig, damit dein Script läuft müsstest du also Quasi direkt auf dem Marker drauf stehen.

    Laut CS-Wiki entsprechen ~70 Units einem Meter.
    Bei dir müsste man also auf ~30 cm an den Marker ran, wobei afaik die Höhe auch dazu zählt.

  13. #13
    aso
    Ich hab gemeit das 20 so etwa 20m entsprechen^^
    thx, wird gleich mal ausgeprobt

Berechtigungen

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