[SERVICE] Die Questkontrolle

09/19/2011 14:02 Sp0ngeb0b ist cool#3526
PHP Code:
quest latein begin
    state start begin
        when vnum
.chat."Übersetzen" begin
            say_title
("Kannst du mir helfen?")
            
say("")
            
say("Vor einiger Zeit erhielt ich den Brief eines Verwandten")
            
say("Dieser ist jedoch in einer Sprache verfasst, welche ich nicht kenne.")
            
say("Kannst du ihn mir übersetzen?")
            
say("Salve Ni-Shan! Nos, quantum potuimus, conati sumus bestias dissuadere") 
            
say("et ab his pravis moribus dimovere! Sed bestiae fratrum meum necabat.")  
            
say("Auxilium tuum egemus! Vale, Ni-Shan!")
            
say_reward("Achte auf die richtige Rechtschreibung & Zeichensetzung!!!")
            
local s = input()
            if 
s == "Hallo Ni-Shan! So sehr wir konnten, haben wir versucht, diesen Monstern abzuraten und sie von diesen falschen Sitten abzubringen! Aber die Monster haben meinen Bruder getötet. Wir benötigen deine Hilfe! Bis bald, Ni-Shan!" then
                say
("Erfolgreich!")
            else
                
say("fehlgeschlagen! Lern endlich Latein!")
                return
            
end
        end    
    end
end 
probiers mal so ;)

npc vnum eintragen nicht vergessen & ne belohnung bei erfolgreichen übersetzen wäre nicht schlecht :D
09/19/2011 15:17 xxglaubichauchxx#3527
Danke danke danke, wird mir hoffentlich helfen ;D Und "Lern endlich Latein" kommt auch gut :D

Ich werd's mal probieren.

LG

#edit: Sponge sag mal, wenn ich eine Belohnung einfügen will, dann müsste ich ja set.state complete oder so machen ... könntest du mir da vielleicht noch helfen? :D

LG
09/19/2011 15:39 √π.#3528
Wird nicht klappen, soviel kann man im input() Fenster nit eintippen. Brauchst mehrere und musst sie dann zusammensetzen, oder nen kürzeren Text nehmen.
09/19/2011 16:00 xxglaubichauchxx#3529
Quote:
Originally Posted by √π. View Post
Wird nicht klappen, soviel kann man im input() Fenster nit eintippen. Brauchst mehrere und musst sie dann zusammensetzen, oder nen kürzeren Text nehmen.
Und wie mache ich mehrere? Soll ich sonst einfach einen Textabschnitt nach dem anderen in's input Fenster tun, also in diesem Stil:

PHP Code:
say: ("Salve Ni-Shan!")
say: ("ÜBERSETZUNG:")
local s = input()
if 
s == Sei gegrüßt, Ni-Shan
    say
: ("Erfolgreich! Und weiter geht's...") 
...?
09/19/2011 16:46 Sp0ngeb0b ist cool#3530
ja, stimmt! das wollte ich eigentlich noch schreiben hatte ich dann aber vergessen (etwas zeit druck gehabt :D )
es wird wie gesagt mit dem input nicht passen

deine variante
PHP Code:
say: ("Salve Ni-Shan!")
say: ("ÜBERSETZUNG:")
local s = input()
if 
s == Sei gegrüßt, Ni-Shan
    say
: ("Erfolgreich! Und weiter geht's...") 
würde aber gehen ;)

& bezüglich der belohnung:
brauchst keine states ;)
einfach nach dem erfolgreichem abschließen der kompletten übersetzung
drunter schreiben:
pc.give_item2(vnum)
oder:
pc.change_money(yang betrag)

schreib die quest einfach zuende (also mit mehreren inputs damit es passt)
und gib eine belohnung an & wenn es nicht klappt postest du die fertige quest zur kontrolle einfach hier ;)
09/19/2011 16:54 Delegra#3531
So, ich hab sie fertig geschrieben.
Brauchst nurnoch die VNUMS und die Texte ändern.

Viel Spaß..


PHP Code:
quest latein begin
    state start begin
        when VNUM
.chat."Übersetzen" begin
            say_title
("Kannst du mir helfen?")
            
say("")
            
say("Vor einiger Zeit erhielt ich den Brief eines Verwandten")
            
say("Dieser ist jedoch in einer Sprache verfasst, welche ich nicht kenne.")
            
say("Kannst du ihn mir übersetzen?")
            
say_reward("Achte auf die richtige Rechtschreibung & Zeichensetzung!!!")
            
say("")
            
say_reward("LATEIN TEXT 1")
            
say("Übersetzung:")
            
local s = input()
            if 
s == "DEUTSCHE ÜBERSETZUNG 1" then
                say
("Erfolgreich! Und weiter geht's...")
                
say("")
                
say_reward("LATEIN TEXT 2")
                
say("Übersetzung:")
                
local s = input()
                if 
s == "DEUTSCHE ÜBERSETZUNG 2" then
                    say
("Erfolgreich! Und weiter geht's...")
                    
say("")
                    
say_reward("LATEIN TEXT 3")
                    
say("Übersetzung:")
                    
local s = input()
                    if 
s == "DEUTSCHE ÜBERSETZUNG 3" then
                        say
("Erfolgreich! Und weiter geht's...")
                        
say("")
                        
say_reward("LATEIN TEXT 4")
                        
say("Übersetzung:")
                        
local s = input()
                        if 
s == "DEUTSCHE ÜBERSETZUNG 4" then
                            say
("Erfolgreich! Und weiter geht's...")
                            
say("")
                            
say_reward("LATEIN TEXT 5")
                            
say("Übersetzung:")
                            
local s = input()
                            if 
s == "DEUTSCHE ÜBERSETZUNG 5" then
                                say
("Glückwunsch. Du hast den Text erfolgreich übersetzt.")
                                
say("Jetzt kann ich den Brief endlich lesen. Vielen Dank.")
                                
pc.give_item2(VNUM)
                            else
                                
say("Das war knapp. Bis auf den letzten Satz hast du alles richtig übersetzt.")
                                
say("Schade.")
                            
end
                        
else
                            
say("Fehlgeschlagen! Lern endlich Latein!")
                        
end
                    
else
                        
say("Fehlgeschlagen! Lern endlich Latein!")
                    
end
                
else
                    
say("Fehlgeschlagen! Lern endlich Latein!")
                
end
            
else
                
say("Fehlgeschlagen! Lern endlich Latein!")
            
end
        end    
    end
end 
09/19/2011 17:12 F O R S E N B O Y S#3532
Quote:
Originally Posted by xxglaubichauchxx View Post
Und wie mache ich mehrere? Soll ich sonst einfach einen Textabschnitt nach dem anderen in's input Fenster tun, also in diesem Stil:

PHP Code:
say: ("Salve Ni-Shan!")
say: ("ÜBERSETZUNG:")
local s = input()
if 
s == Sei gegrüßt, Ni-Shan
    say
: ("Erfolgreich! Und weiter geht's...") 
...?
so ca.

PHP Code:
say: ("Salve Ni-Shan!")
say: ("ÜBERSETZUNG:")
local s = input()
if 
s == select("Sei gegrüßt Ni-Shan")
    
say: ("Erfolgreich! Und weiter geht's...")
    
local a = input()
    if 
a == "Dein Text" then
        say
("Geschafft, weiter!")
        
local("Weiter") 
    
local b = input()
    if 
b == "Dein Text" then
        say
("Erneut richtig")
            
local("Weiter") 
    
local c = input()
    if 
c == "Dein Text" then
        say
("Bravo, weiter so")
            
local("Weiter") 
    else 
        
say("Tut mir Leid, das war falsch")
        return 
Natürlich fehlt da noch einiges, damit es eine ganze Quest ist..
09/19/2011 19:27 jack66#3533
Hallo Leute ich habe seit längerer zeit problem mit dem ice run kann mir jemand die komplette quest und die regen.txt schicken. pls bekomst auch ein thx
09/19/2011 19:41 Kriegergeist^^#3534
#deleted
09/19/2011 19:51 xxglaubichauchxx#3535
Quote:
Originally Posted by Sp0ngeb0b ist cool View Post
ja, stimmt! das wollte ich eigentlich noch schreiben hatte ich dann aber vergessen (etwas zeit druck gehabt :D )
es wird wie gesagt mit dem input nicht passen

deine variante
PHP Code:
say: ("Salve Ni-Shan!")
say: ("ÜBERSETZUNG:")
local s = input()
if 
s == Sei gegrüßt, Ni-Shan
    say
: ("Erfolgreich! Und weiter geht's...") 
würde aber gehen ;)

& bezüglich der belohnung:
brauchst keine states ;)
einfach nach dem erfolgreichem abschließen der kompletten übersetzung
drunter schreiben:
pc.give_item2(vnum)
oder:
pc.change_money(yang betrag)

schreib die quest einfach zuende (also mit mehreren inputs damit es passt)
und gib eine belohnung an & wenn es nicht klappt postest du die fertige quest zur kontrolle einfach hier ;)
Nunja, aber irgendwas fehlt doch, weil im Moment könnte man die Quest ja beliebig oft machen... :/

Und @denjenigen, der die Quest da fertig geschrieben hat: 1000 Dank :)

MfG
09/19/2011 19:52 killertimeXXL#3536
Meine Quest geht leider nicht, ich weiß nicht warum, bitte um Hilfe.

PHP Code:
quest news2 begin
    state start begin
        when 1093.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
        
        when 1095.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
        
        when 2493.kill begin
            notice_all
("Der Spieler ".. pc.get_name() .." hat Beran-Seteau bezwungen.")
            
notice_all("Herzlichen Glückwunsch!")
        
end
    end
end 
Es kommt kein Fehler beim Einspieler der Quest, nur sobalt man eins der obrigen Mobs killt stürzt der CH ab.
09/19/2011 20:07 xxglaubichauchxx#3537
Quote:
Originally Posted by killertimeXXL View Post
Meine Quest geht leider nicht, ich weiß nicht warum, bitte um Hilfe.

PHP Code:
quest news2 begin
    state start begin
        when 1093.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
        
        when 1095.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
        
        when 2493.kill begin
            notice_all
("Der Spieler ".. pc.get_name() .." hat Beran-Seteau bezwungen.")
            
notice_all("Herzlichen Glückwunsch!")
        
end
    end
end 
Es kommt kein Fehler beim Einspieler der Quest, nur sobalt man eins der obrigen Mobs killt stürzt der CH ab.
Hm, das kann eigentlich nicht sein. Wenn die Quest fehlerhaft wäre, müsste eigentlich wenn dann ein Fehler beim Starten des Servers kommen. Versuch's doch einfach mal in 3 verschiedenen Quests... Vielleicht hilft's ja.


PHP Code:
quest news2 begin
    state start begin
        when 1093.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
    end    
end 
PHP Code:
quest news3 begin
    state start begin
        when 1095.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
    end    
end 
PHP Code:
quest news4 begin                 
    state start begin
        when 2493.kill begin
            notice_all
("Der Spieler "pc.get_name()" hat Beran-Setaou bezwungen.")
            
notice_all("Herzlichen Glückwunsch!")
        
end
    end
end 

Sollte eigentlich klappen. Achja, am besten schaust du dir nochmal die Abstände an, der Epvpers-Editor ist für Quests nicht gemacht ;D

LG

GlaubIchAuch
09/19/2011 20:09 F O R S E N B O Y S#3538
Quote:
Originally Posted by killertimeXXL View Post
Meine Quest geht leider nicht, ich weiß nicht warum, bitte um Hilfe.

PHP Code:
quest news2 begin
    state start begin
        when 1093.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
        
        when 1095.kill begin
            notice_all
("Hallo")
            
notice_all("Viel Spaß auf Planets of the Universe2.")
        
end
        
        when 2493.kill begin
            notice_all
("Der Spieler ".. pc.get_name() .." hat Beran-Seteau bezwungen.")
            
notice_all("Herzlichen Glückwunsch!")
        
end
    end
end 
Es kommt kein Fehler beim Einspieler der Quest, nur sobalt man eins der obrigen Mobs killt stürzt der CH ab.
Versuch's mal so [siehe Spoiler]

09/19/2011 20:11 .Delta#3539
Quote:
Originally Posted by Bear Grylls View Post
Versuch's mal so [siehe Spoiler]

commands kannste nur mit gm rechten ausführen ;)

Nein, an der quest selber stimmt alles, also liegts nicht daran, meine ich :)
09/19/2011 20:12 F O R S E N B O Y S#3540
Danke, Delta, war mir nicht klar. Aber mir ist auch aufgefallen, dass das mit dem notice_all oft nicht funktioniert. Eventuell Map Index angeben. Weil es ja im DT z.B beim Sensenmann funktioniert (DT Quest)