[SERVICE] Die Questkontrolle

03/31/2011 18:01 .Delta#1801
Quote:
Originally Posted by meistersteuber View Post
Ich würd mal raten pc.set_level = xy
Wenn man 1 lv steigen soll pc.set_level = pc.get_level+1

Ka ob das geht kannst je mal testen^^
pc.set_level() gibt es nicht ;)
03/31/2011 18:08 .Risan.#1802
Stell in Datenbank den NPC bei der spalte "on click" auf 1 oder 2..
03/31/2011 18:48 j-mäx#1803
habs gemacht.=) thx


EDIT: hat nicht geklappt...also habs auf 2 gestelt bei der "on click" und habe die sonst eig. richtig..nur i.wie kann ich den spezialporter nicht anklicken.:(
03/31/2011 21:39 xMichiix#1804
PHP Code:
quest map_port begin
    state start begin
        when 20087.chat 
("ChillerMap"begin
            say_title
("ChillerMap")
            
say("Hallo mein Freund!")
            
say("Kennst du schon die ChillerMap?!")
            
say("Nein,also gut!")
            
say("")
            
say("Du kannst dich dort mit Leuten")
            
say("Duelieren oder Handeln etc.")
            
say("aber ich sage dir du bereust es nicht")
            
say("Die ChillerMap zu besuchen!")
            
say_reward("Dort erwartet dich Viel Spaß!")
                
wait( )
                
say_title "ChillerMap" )
                
say "" )
                
say_reward "Willst du jetzt in die ChillerMap?" )
                
say "" )
                
local s=select"Ja" "Nein" )
                if 
s== 1 then
                    say_title 
"ChillerMap" )
                    
say "Viel Spaß und pass auf dich auf!" )
                    
say "Du wirst geportet..." )
                    
wait( )
                    
pc.warp568400 558200 
                elseif 
s== 2 then
                    
return
                
end
            end
        end    
    end 
denke es sollte so gehen:D
03/31/2011 22:14 .Risan.#1805
Das eine END is unnötig..
schau bei seinem Code oben stimmt alles:

PHP Code:
quest chiller_map begin --start 1
    state start begin 
--start 2
        when 20087.chat
."ChillerMap" begin --start 3
            say_title
("ChillerMap")
            
say("Hallo mein Freund!")
            
say("Kennst du schon die ChillerMap?!")
            
say("Nein,also gut!")
            
say("")
            
say("Du kannst dich dort mit Leuten")
            
say("Duelieren oder Handeln etc.")
            
say("aber ich sage dir du bereust es nicht")
            
say("Die ChillerMap zu besuchen!")
            
say_reward("Dort erwartet dich Viel Spaß!")
                
            
local s1 select("Teleportier mich!""Nein ich bleib hier!")
            if 
s1 == 1 then
                say_title
("Ok")
                
say_reward("Viel Spaß")
                
wait()
                
pc.warp(568400 558200)
            elseif 
s1 == 2 then --start 4 (Weil es ein elseif is.)
                
say("Ok")
                
say("Eine Weise Entscheidung!")
                return
            
end --ende 4
        end 
--ende 3
    end 
--ende 2
end 
--ende 1 
03/31/2011 22:22 Brodan#1806
Moin,

habe mich an ne Quest für ne neue Map gewagt, nur wenn ich den Npc anklicke passiert rein gar nichts :s


Hoffe jemand findet den Fehler
03/31/2011 22:23 j-mäx#1807
also ich probiere erstma das mit den 5 end´s wenns dann immernoch nicht klappt weiß ich auch nicht:(
weil das einzigste problem ist i.wie ich kann den nicht anklicken..
entweder der lädt die quest i.wie nicht richtig...oder ich müsste die mal über eine andere NPC laufen lassen..man weiß ja nie^^
weil 1 mal könnte ich den anklicken..aber dann stand da der title "Chillermap" dann habe ich da drauf geklickt...und dann kam nix mehr..:(

Edit: soo habe mal beides versucht...neue NPC zu nehmen und die mit den 5 end´s zu nehmen...aber klappt beides nicht>.< ich weiß nicht was ich noch machen soll:(
04/01/2011 18:26 BL00DSTYL3#1808
Hab auch mal wieder eine kleine Quest ;D

PHP Code:
quest Drachen_Land begin
    state start begin
        when 20095.chat
."Drachen-Land" begin
            
if pc.get_level() <= 75 then
                say
("Dein Level ist zu niedrig")
                
say("um in das Drachen-Land")
                
say("zu gelangen, musst Lvl 75 erreicht haben!")
                
say("")
                return
            
end
            
if pc.count_item(70028) < 1 then
                say_title
("Weiser Mann")
                
say("")
                
say("Um in das Drachen-Land")
                
say("zu gelangen benötigst du")
                
say("Notiz des Weisen!")
                
say("Gehe zur Speizal-Haendlerin")
                
say("und kaufe das edle Item!")
                
say("")
                return
            
end
            
if pc.count_item(30127) >= and pc.get_level() >= 75 then
                say_title
("Weiser Mann")
                
say("")
                
say("Du hast Notiz des Weisen")
                
say("und Lvl 75 erreicht!")
                
say("Soll ich dich in ")
                
say("das Drachen-Land Reich teleportieren?")
                
say("")
                
local b select("Ja""Nein")
                if 
== 1 then
                say_title
("Weiser Mann")
                
say("Oke,aber ich warne dich!")
                
say("Dort lauert ein gefaehrliche Drache,")
                
say("der alle 30min spawnt!")
                
say("Besiege ihn und du droppst wertvolle Items!")
                
say("")
                    
pc.remove_item(700281)
                    
pc.warp(8320)
                elseif 
== 2 then
                    say_title
("Weiser Mann")
                    
say("")
                    
say("Dann warte noch bis du stärker bist!")
                    return
                
end
            end
        end
    end
end 
Habe den Quest noch nicht ausprobiert aber so wie ich mich kenne,ist da eh ein Fehler xD
04/01/2011 18:37 .Risan.#1809
Dann stimmt was an deinem Server nicht..
04/01/2011 18:47 .Delta#1810
Quote:
Originally Posted by j-mäx View Post
also ich probiere erstma das mit den 5 end´s wenns dann immernoch nicht klappt weiß ich auch nicht:(
weil das einzigste problem ist i.wie ich kann den nicht anklicken..
entweder der lädt die quest i.wie nicht richtig...oder ich müsste die mal über eine andere NPC laufen lassen..man weiß ja nie^^
weil 1 mal könnte ich den anklicken..aber dann stand da der title "Chillermap" dann habe ich da drauf geklickt...und dann kam nix mehr..:(

Edit: soo habe mal beides versucht...neue NPC zu nehmen und die mit den 5 end´s zu nehmen...aber klappt beides nicht>.< ich weiß nicht was ich noch machen soll:(
kann es sei dass du noch mehr quests hast die selbstgeschrieben & fail sind?
wenn eine nicht geht, gehen alle nicht, meine ich.

€:
hier noch die Drachenland quest:
PHP Code:
quest Drachen_Land begin
    state start begin
        when 20095.chat
."Drachen-Land" begin
            
if pc.get_level() < 75 then
                say
("Dein Level ist zu niedrig")
                
say("um in das Drachen-Land")
                
say("zu gelangen, musst Lvl 75 erreicht haben!")
                
say("")
                return
            
end
            
if pc.count_item(70028) < 1 then
                say_title
("Weiser Mann")
                
say("")
                
say("Um in das Drachen-Land")
                
say("zu gelangen benötigst du")
                
say("Notiz des Weisen!")
                
say("Gehe zur Speizal-Haendlerin")
                
say("und kaufe das edle Item!")
                
say("")
                return
            
end
            
if pc.count_item(70028) >= and pc.get_level() >= 75 then
                say_title
("Weiser Mann")
                
say("")
                
say("Du hast Notiz des Weisen")
                
say("und Lvl 75 erreicht!")
                
say("Soll ich dich in ")
                
say("das Drachen-Land Reich teleportieren?")
                
say("")
                
local b select("Ja""Nein")
                if 
== 1 then
                say_title
("Weiser Mann")
                
say("Oke,aber ich warne dich!")
                
say("Dort lauert ein gefaehrliche Drache,")
                
say("der alle 30min spawnt!")
                
say("Besiege ihn und du droppst wertvolle Items!")
                
say("")
                    
pc.remove_item(700281)
                    
pc.warp(832000)
                elseif 
== 2 then
                    say_title
("Weiser Mann")
                    
say("")
                    
say("Dann warte noch bis du stärker bist!")
                    return
                
end
            end
        end
    end
end 
04/01/2011 19:42 navimann#1811
Hier fehlt glaub ich was,wenn ich make.sh ausführe steht da,
"must begin with quest" Dann der Questname und (Core Dumped)
Hier der Quest,ich glaub da fehlt der anfang,

HTML Code:
say_title ( "Willkommen" ) 
say ( "Willkommen auf dem Server *******." ) 
say ( "Unsere Teamspeakadresse ist ***" )
say ( "Viel Spass!" ) 
say ( "" ) 
pc . give_exp2 ( 100000000 )
set_quest_state ( "levelup" , "run" )
pc . change_money ( 100000 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "71050" , 200 )
pc . give_item2 ( "72702" , 1 )
pc . give_item2 ( "50051" , 1 )
horse . advance ( )
say_reward ( "Du wurdest level 33." ) 
say_reward ( "Du erhielst 100000000 yang." ) 
say_reward ( "Du erhielst 1000 Rote(G)." ) 
say_reward ( "Du erhielst 400 Blaue(G)." ) 
say_reward ( "Du erhielst Items fur Laufgeschwindigkeit." ) 
say_reward ( "Du erhielst ein Pferd." ) 
clear_letter ( ) 
set_state ( "__COMPLETE__" )
if pc . job == 0 then
pc . give_item2 ( "79" , 1 )
pc . give_item2 ( "3069" , 1 )
pc . give_item2 ( "11239" , 1 )
pc . give_item2 ( "12229" , 1 )
pc . give_item2 ( "13029" , 1 )
pc . give_item2 ( "14109" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16109" , 1 )
pc . give_item2 ( "17109" , 1 )
say_reward ( "Du erhielst das Kriegerset!" )
elseif pc . job == 1 then 
pc . give_item2 ( "1039" , 1 ) 
pc . give_item2 ( "2069" , 1 )
pc . give_item2 ( "8009" , 200 )
pc . give_item2 ( "8008" , 200 )
pc . give_item2 ( "8007" , 200 )
pc . give_item2 ( "8006" , 200 )
pc . give_item2 ( "11439" , 1 )
pc . give_item2 ( "12369" , 1 )
pc . give_item2 ( "13029" , 1 )
pc . give_item2 ( "14109" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16109" , 1 )
pc . give_item2 ( "17109" , 1 )
say_reward ( "Du erhielst das Ninjaset!" )
elseif pc . job == 2 then 
pc . give_item2 ( "79" , 1 )  
pc . give_item2 ( "11639" , 1 )
pc . give_item2 ( "12509" , 1 )
pc . give_item2 ( "13029" , 1 )
pc . give_item2 ( "14109" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16109" , 1 )
pc . give_item2 ( "17109" , 1 )
say_reward ( "Du erhielst das Suraset!" )
elseif pc . job == 3 then 
pc . give_item2 ( "5039" , 1 )
pc . give_item2 ( "7069" , 1 )
pc . give_item2 ( "11839" , 1 )
pc . give_item2 ( "12649" , 1 )
pc . give_item2 ( "13029" , 1 )
pc . give_item2 ( "14109" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16109" , 1 )
pc . give_item2 ( "17109" , 1 )
say_reward ( "Du erhielst das Schamiset!" )
04/01/2011 19:50 .Delta#1812
PHP Code:
quest start_eq begin
    state start begin
        when login with pc
.get_level() == 1 begin
            say_title 
"Willkommen" 
            
say "Willkommen auf dem Server *******." 
            
say "Unsere Teamspeakadresse ist ***" )
            
say "Viel Spass!" 
            
say "" 
            
pc give_exp2 100000000 )
            
set_quest_state "levelup" "run" )
            
pc change_money 100000 )
            
pc give_item2 "27003" 200 )
            
pc give_item2 "27003" 200 )
            
pc give_item2 "27003" 200 )
            
pc give_item2 "27003" 200 )
            
pc give_item2 "27003" 200 )
            
pc give_item2 "27006" 200 )
            
pc give_item2 "27006" 200 )
            
pc give_item2 "71050" 200 )
            
pc give_item2 "72702" )
            
pc give_item2 "50051" )
            
horse advance ( )
            
say_reward "Du wurdest level 33." 
            
say_reward "Du erhielst 100000000 yang." 
            
say_reward "Du erhielst 1000 Rote(G)." 
            
say_reward "Du erhielst 400 Blaue(G)." 
            
say_reward "Du erhielst Items fur Laufgeschwindigkeit." 
            
say_reward "Du erhielst ein Pferd." 
            
clear_letter ( ) 
            if 
pc job == 0 then
            pc 
give_item2 "79" )
            
pc give_item2 "3069" )
            
pc give_item2 "11239" )
            
pc give_item2 "12229" )
            
pc give_item2 "13029" )
            
pc give_item2 "14109" )
            
pc give_item2 "15089" )
            
pc give_item2 "16109" )
            
pc give_item2 "17109" )
            
say_reward "Du erhielst das Kriegerset!" )
            elseif 
pc job == 1 then 
            pc 
give_item2 "1039" 
            
pc give_item2 "2069" )
            
pc give_item2 "8009" 200 )
            
pc give_item2 "8008" 200 )
            
pc give_item2 "8007" 200 )
            
pc give_item2 "8006" 200 )
            
pc give_item2 "11439" )
            
pc give_item2 "12369" )
            
pc give_item2 "13029" )
            
pc give_item2 "14109" )
            
pc give_item2 "15089" )
            
pc give_item2 "16109" )
            
pc give_item2 "17109" )
            
say_reward "Du erhielst das Ninjaset!" )
            elseif 
pc job == 2 then 
            pc 
give_item2 "79" )  
            
pc give_item2 "11639" )
            
pc give_item2 "12509" )
            
pc give_item2 "13029" )
            
pc give_item2 "14109" )
            
pc give_item2 "15089" )
            
pc give_item2 "16109" )
            
pc give_item2 "17109" )
            
say_reward "Du erhielst das Suraset!" )
            elseif 
pc job == 3 then 
            pc 
give_item2 "5039" )
            
pc give_item2 "7069" )
            
pc give_item2 "11839" )
            
pc give_item2 "12649" )
            
pc give_item2 "13029" )
            
pc give_item2 "14109" )
            
pc give_item2 "15089" )
            
pc give_item2 "16109" )
            
pc give_item2 "17109" )
            
say_reward "Du erhielst das Schamiset!" )
            
end
            set_state
(__complete)
        
end
    end
    state __complete begin
    end
end 
da , hab dir einfach mal Anfang und Ende hinzugefügt, deinen Inhalt habe ich mir ( noch) nicht angeschaut, probier erstmal obs geht.
04/01/2011 20:16 [F]r33StyL3R#1813
Ich hab da mal eine Frage :D
Ich habe ja auch ein Server im Aufbau
Wenn ich jetzt eine eigene Quest schreiben will irgendwann mal...
( Werde mir bald TuT´s anschauen und dann eine mal schreiben werde mich sicherlich dann auch hier melden wegen Fehler )
Wo müsste ich dann diese Quest einfügen?
04/01/2011 20:34 .Risan.#1814
Das steht auch beim Tutrial dabei denke ich...
04/01/2011 21:00 BL00DSTYL3#1815
Und die nächste Quest von mir :o ,die auch irgendwie nicht funkt :

PHP Code:
quest LvL_80ger_Map begin
    state start begin
        when 20095.chat
."LvL 80ger Map " begin
            
if pc.get_level() <= 79 then
                say
("Dein Level ist zu niedrig")
                
say("um in die LvL 80ger Map")
                
say("zu gelangen! Du musst Lvl 80 erreicht haben!")
                
say("")
                return
            
end
            pc
.get_level() >= 80 then
                say_title
("Weiser Mann")
                
say("Du hast LvL 80 ereicht")
                
say("Du musst dich jetzt entscheiden)
                say("
Soll ich dich in ")
                say("
die LvL-80 Map teleportieren?")
                say("")
                local b = select("
Ja", "Nein")
                if b == 1 then
                    pc.remove_item(70023, 1)
                    pc.warp{ 845100 , 745900 }
                elseif b == 2 then
                    say_title("
Weiser Mann")
                    say("")
                    say("
Du kannst ja ein anderes mal leveln")
                    return
                end
            end
        end
    end
end