[SERVICE] Die Questkontrolle

03/20/2012 08:46 coragss#5191
vbox error:quest doesn't have begin-end clause.xxx.quest:6:Abort (core dumped) here is the quest
PHP Code:
----------------------------------------------------
--
Eine neue Quest 
--erstellt mit dem Biologen Quest Editor 
--Made by _DownTime from Elitepvpers.de
----------------------------------------------------
quest Culege sticla plica cu otrava  begin
    state start begin
        when login 
or levelup with pc.get_level() >=20  begin
            set_state
(information)
        
end    
    end

    state information begin
        when letter begin
            local v 
find_npc_by_vnum(20084)
            if 
!= 0 then
                target
.vid("__TARGET__"v"Quest")
            
end
            send_letter
("Culege sticla plina cu otrava")
        
end

        when button 
or info begin
            say_title
("Culege sticla plina cu otrava")
            
say("")
            
say("Biologul Chaegirab are nevoie de ajutorul")
            
say("tau.Dute repede la el si intreabal daca")
            
say("ii poti fi de folos.")
            
say("")
            
say("")
            
say("")
            
say("")
        
end

        when __TARGET__
.target.click or
            
20084.chat."Quest" begin
            target
.delete("__TARGET__")
            
say("Biologul Chaegirab:")
            ---                                                   
l
            say
("Salutare aventurierule.")
            
say("Am nevoie de 100 sticle plina cu otrava.")
            
say("Stiu ca pare mult dar recompensa va fi")
            
say("pe masura.Ma poti ajuta?")
            
say("")
            
say("")
            
say("")    
            
set_state(go_to_disciple)
            
pc.setqf("collect_count",0)
            
pc.setqf("drink_drug",0
        
end
    end

    state go_to_disciple begin
        when letter begin
            send_letter
("Auftrag von Biologul Chaegirab")

        
end
        when button 
or info begin
            say_title
("Quest")
            ---                                                   
l
            say
("")
            
say("Biologul Chaegirab gab euch den Auftrag")
            
say("100 Sticla cu otrava zu sammeln!")
            
say("Das Item bekommt ihr von Vant negru Jak-TO.")
            
say("Viel Glueck!")
            
say("")
            
say_item_vnum(85562)
            
say_reward("   Du hast".." "..pc.getqf("collect_count").." bis jetzt gesammelt!")
            
say("")
        
end

        when 71035.
use begin --°g´bÃĤô
            
if pc.getqf("drink_drug")==1 then
                say
("")
                
say("Bessere Droppchance!")
                
say("")

                return
            
end
            
if pc.count_item(85562)==0 then
                say
("")
                
say("Du hast keine!")
                
say("Lauf los und besorg mir welche!")
                
say("")
                return
            
end
            item
.remove()    
            
pc.setqf("drink_drug",1)
        
end


        when 404.kill begin
            
if pc.count_item(85562)<100-pc.getqf("collect_count"then
                pc
.give_item2(855621)
            
end
        end

        when 20084.chat
."Quest" with pc.count_item(85562) >0   begin
                say
("Einen Moment!")
                ---                                                   
l
                say
("Ich werde das Item")
                
say("schnell mal ueberpruefen.")
                
say("Hoffentlich klappt alles!")
                
say("")
                
pc.remove_item(855621)
                
wait()

                
local pass_percent
                
if pc.getqf("drink_drug")==0 then
                    pass_percent
=Value
                
else        
                    
pass_percent=Value
                end

                local s
number(1,100)
            if 
s<= pass_percent  then
               
if pc.getqf("collect_count")< 99 then     --5*Ó¥H¤U 
                        local index 
=pc.getqf("collect_count")+
                        pc
.setqf("collect_count",index)     --¨ú±o¤@*Ӯɠ+1
                        say
("Biologul Chaegirab:")
                        
say("Perfekt! Das Item ist in Ordnung")
                        
say("Du hast bis jetzt ".." "..100-pc.getqf("collect_count").. " abgegeben!")
                        
say("Bring mir die restlichen!")
                        
say("")
                        
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                        
return
                    
end
                    say
("Biologul Chaegirab:")
                    
say("Yuhu! Du hast mir")
                    
say("alles gebracht!")
                    
say("Dafür werde ich dich wie versprochen")
                    
say("belohnen!")
                    
say("")
                    
say_reward("Du bekommst ein Name!")
                    
say_reward("Du bekommst ein Name!")
                    
say_reward("Du bekommst ein Name!")
                    
say_reward("Du bekommst 50.000.000 Yang!")
                    
say_reward("Du bekommst Anzahl Erfahrung!")
                    
pc.setqf("collect_count",0)
                    
pc.setqf("drink_drug",0)
                    
clear_letter()
                    
set_state(__complete)

                    
pc.give_item2(Value)
                    
affect.add_collect(apply.ATT_SPEED_BONUS,5,60*60*24*365*60) )
                    
affect.add_collect(apply.MOV_SPEED_BONUS,5,60*60*24*365*60) )
                    
pc.change_money(50.000.000)
                    
affect.add_collect(apply.CAST_SPEED_BONUS,5,60*60*24*365*60
                    
set_quest_state("levelup","run")


                    return
                else                                
                
say("Biologul Chaegirab:")
                
say("Dieses Item ist von schlechter Qualität!")
                
say("Es kann nicht verwendet werden.")
                
say("Hole mir ein neues!")
                
say("")
                
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                
return
                
end
            end
        end
    end

        
    state __complete begin
    end
end 
plz post in english
03/20/2012 11:00 Prince-Samu#5192
Bei mir funktionieren die Questbefehle pc.get_map_index() == xxx nicht weis jemand ob das an den serverfiles liegt??? habe kay v.6.1 serverfiles
03/20/2012 13:27 .HC'Destrox#5193
@coragss:
You've to write in 6. line:
Code:
quest Culege_sticla_plica_cu_otrava begin
That could be the error.
PS: Write the quest by yourself - it worth it ;)

@Prince-Samu:
pc.get_map_index() funktioniert eigentlich bei allen files ...
Add mich mal in Skype; Name per PN.

Mfg, Destroyer446
03/20/2012 14:08 ͺȺʂʞa#5194
Hey hab schon wieder ein problem unzwar das diese quest nicht funktioniert

Code:
quest levelguide begin
     state start begin
	     when login begin
		     set_state("info")
		end
	end	 
        state info begin
		     when letter begin
			     send_letter(" Der LevelGuide!")
				end
			end	 
			when button or info begin
			     say_title(" Der LevelGuide!")
			     say(" Hallo,")
			     say("     ")
                 say("Ich bin der LevelGuide und ich will")
			     say("dir helfen schnell unter die besten zu kommen")
	      	     say("einfach den gewuenschten bereich auswaehlen")
			     say(" und das wars")
			     say_reward("LVL:")
			     local main_set = select("1-20","20-35","35-55","55-70")
			     if main_set == 1  then
			         say_title("Map 1")
				     say("Hallo,")
				     say("     ")
				     say("Um von LvL 1 bis auf LvL 20 zu kommen,")
				     say("LvLst du einfach auf Map 1, denn das geht")
				     say(" am schnellsten        Viel spaß")
			    elseif main_set == 2 then
                     say_title("Map2 oder Orktal anfang")
		             say("Hallo,")
				     say("      ")
				     say("Um von LvL 20 bis auf LvL 35 zu kommen ,")
				     say(" LvLst du am besten auf Map 2 oder am anfang")
				     say(" des Orktals")
				     say(" Viel Spaß")
			    elseif main_set == 3 then 
			         say_title(" Orktal Mitte")
				     say(" Hallo,")
				     say("       ")
				     say(" Um von LvL 35 auf LvL 55 zu kommen,")
				     say(" LvLst du am besten in der Orktal Mitte")
				     say(" Viel Spaß")
			    elseif main_set == 4 then
                     say_title(" Spinnen Dungeon")
                     say(" Hallo,")
					 say("       ")
                     say(" Um von LvL 55 auf LvL 70 zu kommen,")
                     say(" LvLst du am besten im Spinnen Dungeon")
    			     say(" Viel Spaß")
					end
				end
			end		
		end
	end	
end
03/20/2012 16:39 .Shiraka™#5195
Quote:
Originally Posted by Fear *_* View Post
Verstehe bei dir da den Sinn net warum du 2 mal ne Abfrage machst aber egal

Code:
quest neue_ruessi begin 
    state start begin 
        when login or level_up with pc.get_level == 90 begin 
            say_title("Neue Ruestungen") 
            say("Du möchtest also eine neue Ruestung haben..") 
            say("Ich kann dir eine besorgen, aber") 
            say("Du wirst viel fuer mich tun muessen.") 
            say("") 
            say("Als erstes toete 5 Metin Jeon-Un") 
            pc.setf("metin", 5) 
        end 
        when 8027.kill with pc.get_level >= 90 begin
            pc.setf("metin", pc.getf("metin") - 1) 
            if pc.getf("metin") == 0 then 
                say_title("Gut!") 
                say("Jetzt musst du laufen...") 
                say("Gehe ins Experten AD und toete") 
                say("den Affen-Lord 5 mal!") 
                pc.setf("Affen-Lord", 5) 
            end 
        end 
        when 5163.kill with pc.get_level >= 90 begin 
            pc.setf("Affen-Lord", pc.getf("Affen-Lord") - 1) 
            if pc.getf("Affen-Lord") == 0 then 
                say_title("Super Arbeit!") 
                say("Du denkst, du hast es nun geschafft,") 
                say("nicht wahr?") 
                say("...") 
                say("Da muss ich dich leider enttaeuschen!") 
                say("Bringe mir noch eine") 
                say("Goldene Siegerurkunde!") 
            end 
            if pc.count_item(50040) >= 1 then 
                say_title("Wow!") 
                say("Du hast echt Talent.") 
                say("Nun muss ich dir wohl deine Belohnung geben..") 
                say("Aber vergiss nicht, diese Rüstung ist sehr") 
                say("wertvoll, also verschwende sie nicht!") 
                pc.give_item (11299, 1) 
                pc.give.gold (20000000) 
            end 
        end 
    end 
end
So sollte es funktionieren
also erstmal danke..
hast auch noch n kleiner fehler drin der fällt aber sofort raus :D
das problem ist jetzt, das in vbox kein fehler kommt, aber wenn ich mich mit lvl 90 einlogge oder auf lvl 90 lvl upp gehe kommt nix >.<
weißt du evtl warum? <.< oder irgendwer hier?
03/20/2012 16:49 depa95#5196


wenn ich es füge kommt folgender Fehler




weiß einer wo der Fehler liegt?
03/20/2012 17:53 ͺȺʂʞa#5197
das ä ist falsch ersetzte es dur ae
03/20/2012 18:48 coragss#5198
Vbox error:synstax error : [string "go_to_disciplepc . count_item ( 85562 ) > 0"]:43 unexpected symbol near ')'
sticlaotravita.quest:163:Abor (core dumped)
Here is the quest
PHP Code:
----------------------------------------------------
--
Eine neue Quest 
--erstellt mit dem Biologen Quest Editor 
--Made by _DownTime from elitepvpers.com
----------------------------------------------------
quest Culege_sticla_plica_cu_otrava begin
    state start begin
        when login 
or levelup with pc.get_level() >=20  begin
            set_state
(information)
        
end    
    end

    state information begin
        when letter begin
            local v 
find_npc_by_vnum(20084)
            if 
!= 0 then
                target
.vid("__TARGET__"v"Quest")
            
end
            send_letter
("Culege sticla plina cu otrava")
        
end

        when button 
or info begin
            say_title
("Culege sticla plina cu otrava")
            
say("")
            
say("Biologul Chaegirab are nevoie de ajutorul")
            
say("tau.Dute repede la el si intreabal daca")
            
say("ii poti fi de folos.")
            
say("")
            
say("")
            
say("")
            
say("")
        
end

        when __TARGET__
.target.click or
            
20084.chat."Quest" begin
            target
.delete("__TARGET__")
            
say("Biologul Chaegirab:")
            ---                                                   
l
            say
("Salutare aventurierule.")
            
say("Am nevoie de 100 sticle plina cu otrava.")
            
say("Stiu ca pare mult dar recompensa va fi")
            
say("pe masura.Ma poti ajuta?")
            
say("")
            
say("")
            
say("")    
            
set_state(go_to_disciple)
            
pc.setqf("collect_count",0)
            
pc.setqf("drink_drug",0
        
end
    end

    state go_to_disciple begin
        when letter begin
            send_letter
("Auftrag von Biologul Chaegirab")

        
end
        when button 
or info begin
            say_title
("Quest")
            ---                                                   
l
            say
("")
            
say("Biologul Chaegirab gab euch den Auftrag")
            
say("100 Sticla cu otrava zu sammeln!")
            
say("Das Item bekommt ihr von Vant negru Jak-TO.")
            
say("Viel Glueck!")
            
say("")
            
say_item_vnum(85562)
            
say_reward("   Du hast".." "..pc.getqf("collect_count").." bis jetzt gesammelt!")
            
say("")
        
end

        when 71035.
use begin --°g´bÃĤô
            
if pc.getqf("drink_drug")==1 then
                say
("")
                
say("Bessere Droppchance!")
                
say("")

                return
            
end
            
if pc.count_item(85562)==0 then
                say
("")
                
say("Du hast keine!")
                
say("Lauf los und besorg mir welche!")
                
say("")
                return
            
end
            item
.remove()    
            
pc.setqf("drink_drug",1)
        
end


        when 404.kill begin
            
if pc.count_item(85562)<100-pc.getqf("collect_count"then
                pc
.give_item2(855621)
            
end
        end

        when 20084.chat
."Quest" with pc.count_item(85562)>0   begin
                say
("Einen Moment!")
                ---                                                   
l
                say
("Ich werde das Item")
                
say("schnell mal ueberpruefen.")
                
say("Hoffentlich klappt alles!")
                
say("")
                
pc.remove_item(855621)
                
wait()

                
local pass_percent
                
if pc.getqf("drink_drug")==0 then
                    pass_percent
=Value
                
else        
                    
pass_percent=Value
                end

                local s
number(1,100)
            if 
s<= pass_percent  then
               
if pc.getqf("collect_count")< 99 then     --5*Ó¥H¤U 
                        local index 
=pc.getqf("collect_count")+
                        pc
.setqf("collect_count",index)     --¨ú±o¤@*Ӯɠ+1
                        say
("Biologul Chaegirab:")
                        
say("Perfekt! Das Item ist in Ordnung")
                        
say("Du hast bis jetzt ".." "..100-pc.getqf("collect_count").. " abgegeben!")
                        
say("Bring mir die restlichen!")
                        
say("")
                        
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                        
return
                    
end
                    say
("Biologul Chaegirab:")
                    
say("Yuhu! Du hast mir")
                    
say("alles gebracht!")
                    
say("Dafür werde ich dich wie versprochen")
                    
say("belohnen!")
                    
say("")
                    
say_reward("Du bekommst ein Name!")
                    
say_reward("Du bekommst ein Name!")
                    
say_reward("Du bekommst ein Name!")
                    
say_reward("Du bekommst 50.000.000 Yang!")
                    
say_reward("Du bekommst Anzahl Erfahrung!")
                    
pc.setqf("collect_count",0)
                    
pc.setqf("drink_drug",0)
                    
clear_letter()
                    
set_state(__complete)

                    
pc.give_item2(Value)
                    
affect.add_collect(apply.ATT_SPEED_BONUS,5,60*60*24*365*60) )
                    
affect.add_collect(apply.MOV_SPEED_BONUS,5,60*60*24*365*60) )
                    
pc.change_money(50.000.000)
                    
affect.add_collect(apply.CAST_SPEED_BONUS,5,60*60*24*365*60
                    
set_quest_state("levelup","run")


                    return
                else                                
                
say("Biologul Chaegirab:")
                
say("Dieses Item ist von schlechter Qualität!")
                
say("Es kann nicht verwendet werden.")
                
say("Hole mir ein neues!")
                
say("")
                
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                
return
                
end
    end
end


        
    state __complete begin
    end
end 
@Destroyer446 this is the error after i put that at line 6
03/20/2012 19:14 depa95#5199
Quote:
Originally Posted by sonic 10 View Post
das ä ist falsch ersetzte es dur ae

wo ist denn hier bitte ein "ä"?




wenn ich es füge kommt folgender Fehler




weiß einer wo der Fehler liegt?
03/20/2012 22:42 Mijago#5200
Fehler war:
Zeile 11 : elseif statt if!
PHP Code:
quest reichsport begin
    state start begin
        when 9012.chat
."Möchtest du reisen?" begin
            say_title
("Reichs-Teleporter:")
            
say("Du möchtest also in ein anderes Reich?")

            
local main_set select("Ja","Nein")
            if 
main_set == 2 then
                
return
            elseif 
main_set == 1 then
                
if pc.get_level() <= 50 then
                    say_title
("Teleporter:")
                    
say("Hm… Mit deinem derzeitigen Level bist du noch")
                    
say("zu schwach für die Reise durch Zeit und Raum.")
                    
say("Komm wieder, wenn du höher als Level 50 erreicht hast.")
                    return
                else
                    
say_title("Teleporter:")
                    
say("In welches Reich möchtest du teleportiert werden?")
                    
local sub_set=select("Blau","Gelb","Rot","Schließen")
                    if 
sub_set==1 then
                        say_title
("Wähle deine Map")
                        
local s=select("Map 1","Map 2","Schließen")
                        if 
s==3 then return end
                        
if s==1 then
                            pc
.warp(921600,204800)
                        
end
                        
if s==2 then
                            pc
.warp(819200,204800)
                        
end
                    end
                    
if sub_set==2 then
                        say_title
("Wähle deine Map")
                        
local s=select("Map 1","Map 2","Schließen")
                        if 
s==3 then return end
                        
if s==1 then
                            pc
.warp(55700,157900)
                        
end
                        
if s==2 then
                            pc
.warp(138500,234900)
                        
end
                    end
                    
if sub_set==3 then
                        say_title
("Wähle deine Map")
                        
local s=select("Map 1","Map 2","Schließen")
                        if 
s==3 then return end
                        
if s==1 then
                            pc
.warp(469300,964200)
                        
end
                        
if s==2 then
                            pc
.warp(363000,875200)
                        
end
                    end
                end
            end
        end
    end
end 
2 sec drübergeschaut xD
03/21/2012 14:36 depa95#5201
*** funktioniert
03/21/2012 21:32 ͺȺʂʞa#5202
HALLO WARUM HILFT MIR NIE EINER !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!
03/21/2012 21:35 troll1981#5203
Quest soll das Item nach einer gewissen Zeit entfernen! Leider macht sie das nicht
PHP Code:
-----------------------------------------------------------------------------------
--    
Trade_A_Item Quest
--    Version 1.0
-----------------------------------------------------------------------------------
quest trade_a_item begin
    state start begin
        when 9900.
use with pc.get_level() > 200 begin
            pc
.setf(""..pc.get_name()..""4)
            
pc.give_item2(99001)
            
timer("leave"10800)
        
end
        when leave
.timer begin
            
if pc.count_item(9900) < 0 then
                chat
("Dein Betrug wird in der Datenbank gesichert.")
                
chat("Melde einem Teamler das du das Item zurückgeben wirst,")
                
chat("oder du musst mit einem Bann wegen Bugusing rechnen.")
            else
                
pc.remove_item(99001)
            
end        
        end
    end
end 
Fehler beim Komplieren kommt keiner
03/21/2012 21:42 .Shiraka™#5204
versuchs mal so:

PHP Code:
quest trade_a_item begin
    state start begin
        when 9900.
use with pc.get_level() > 200 begin
            pc
.setf(""..pc.get_name()..""4)
            
pc.give_item2(99001)
            
timer("leave"10800)
        
end
        when leave
.timer begin
            
if pc.count_item(9900) < 0 then
                chat
("Dein Betrug wird in der Datenbank gesichert.")
                
chat("Melde einem Teamler das du das Item zurückgeben wirst,")
                
chat("oder du musst mit einem Bann wegen Bugusing rechnen.")
            else
                
pc.remove_item(9900)
            
end        
        end
    end
end 
03/21/2012 22:08 troll1981#5205
Quote:
Originally Posted by .Shiraka™ View Post
versuchs mal so:

PHP Code:
quest trade_a_item begin
    state start begin
        when 9900.
use with pc.get_level() > 200 begin
            pc
.setf(""..pc.get_name()..""4)
            
pc.give_item2(99001)
            
timer("leave"10800)
        
end
        when leave
.timer begin
            
if pc.count_item(9900) < 0 then
                chat
("Dein Betrug wird in der Datenbank gesichert.")
                
chat("Melde einem Teamler das du das Item zurückgeben wirst,")
                
chat("oder du musst mit einem Bann wegen Bugusing rechnen.")
            else
                
pc.remove_item(9900)
            
end        
        end
    end
end 

Funzt immer noch nicht "info am rande" es handelt sich bei dem Item um eine WAFFE... kann das der grund sein ?