[SERVICE] Die Questkontrolle

09/06/2010 23:22 Benhero#316
PHP Code:
local zufall number(110)
if 
zufall <= 4 then --40Das es geht Zahl 1 4

else --60das es nicht geht Zahl 5 10

end 
Den Rest schafst du selber ;)

Würde zwar mehr dazu schreiben. Aber du hast so undeutlich geschrieben das ich es nicht wirklich verstehe.

Greatz Benhero
09/06/2010 23:39 VeN.#317
Neh , du ich bin zwar nich so dumm was Server betrifft aber im Scripten
vom Quest's kenn ich mich 0 aus x'D
das einzige was mir rly nicht taugt ... geht mir einfach nich in den Schädel -.-
Mach einfach ne simply 2 Min Quest :'D
Hab ne idee kack auf's Item machs auf iiiiiiiiiiiiiirgend einen Npc hier 20041

Mach schnell *-*

€ Toll, er geht einfach off ._.
09/07/2010 00:24 .Angeber#318
@ Spamer

Pls only Write about the Topic

Bitet bleibt im Thema !
09/07/2010 09:43 its_execution#319
PHP Code:
quest blutstein begin
    state start begin
        when login 
or levelup with pc.level >75 begin
            set_state
(killmob)
        
end
    end
    state killmob begin
        when letter begin
            send_letter
("Blutstein")
        
end
    end
    when info 
or button begin
        say
("Blutstein")
        
say("Töte einen Neunschwanz, um ein Blutstein")
        
say("zu erlangen. Mit dem Blutstein wird")
        
say("dir der eintritt in die grotte gewährt!")
        
say("Dort kannst du dan Leveln.")
        
say("")
        
say("Aber jetzt ab!")
        
say_reward("Suche und töte den Neunschwanz.")
        
say_reward("Du findest ihm im Eisland...")
    
end
    when 1901.kill begin
        notice_all
(pc.get_name().. " hat " ..mob_name(1901).. " getötet!")
        
set_state(fertig)
        
end
        state fertig begin
            when letter begin
                send_letter
("Du hast ihn getötet!")
            
end
        end
        when info 
or butten begin
            say_reward
("Du erhieltst 30x Blutstein")
            
pc.give_item2(3019030)
            
clear_letter()
        
end
    end
end 
was is an der quest falsch???
da kommt beim programm immer "when/quest/state fehler"...
ich find aba keinen mehr...
09/07/2010 12:21 Eliminator8391#320
hallo ich habe eine frage und zwar:
wie kann man bei einer quest das machen, dass ein mob per zufall spawnt
also z.B. wenn man in einer quest drückt: jetzt spawnen, dass dann ein mob aus vielen mobs spawnt (z.b. wildhund und zur auswahl sind wildhund, sensi, roter drache, wolf usw.)
so dass man halt nicht weiß welches mob gerufen wird...
09/07/2010 13:58 Fritz3#321
Hey du solltest mal PangerLenis von der Liste streichen er wurde ja komischerweise gebannt -.-
09/07/2010 17:00 ImbaStyla#322
PHP Code:
---------------------------------- 
--    
Main Quest LV1 
--    Wilkommen bei ProstoMT2 
---------------------------------- 
quest main_quest_lv1 begin 
    state start begin 
        when login 
or levelup with pc.get_level() == 1 begin 
            set_state
gotoinfomation 
        
end 
    end 
    state gotoinfomation begin 
        when letter begin 
            send_letter
("Youang-You"
        
end 
        when button 
or info begin 
            say_title
("Finde Young-You"
             
            ----
"12345678901234567890123456789012345678901234567890"
            
say("Willkommen bei Prosto-World2"
            
say("Du musst für deine Anfänger Sachen was tuhn."
            
say("Geh zu Youang-You der hat was für dich,"
            
say("Ich habe ihn schon Mitgeteilt das du kommst."
            
say("Pass auf er Vergisst sehr viel."
            
say(""
            
say("Viel Spaß.")  
            
say(""
            
set_stategototeacher 
        
end 
    end 

    state gototeacher begin 
        when letter begin 
            local v
=find_npc_by_vnum(20095
            if 
0==v then 
            
else 
                
target.vid("__TARGET__"v"Finde Youang-You"
            
end 
        end 
        when letter begin 
            send_letter
("Finde Youang-You"
        
end 
        when button 
or info begin 
            say_title
("Finde Youang-You"
            
say("finde Ypuang-You"
            
say("viel erfolg"
            ----------
"12345678901234567890123456789012345678901234567890"
            
say_reward("Den NPC findest du bei dem"
            
say_reward("Rot weiss blinkendem Punkt,"
            
say_reward("auf der Karte."
            
say(""
        
end 
        when __TARGET__
.target.click begin 
            target
.delete("__TARGET__"
            
say("Youang-You:"

            ----
"12345678901234567890123456789012345678901234567890"
            
say("Hallo, ich habe schon gehört das du kommst"
            
say("von wenn weiß ich leider nicht mehr "
            
say("da ich schon sehr Alt bin, und viel Vergesse."
            
say("Mir wurde noch gesagt das ich dir sachen geben muss."
            
say("Moment ich überlege was für sachen es waren!"
            
say("Ah, ich habs!"
            
say(""
            
say("Viel Spaß, wir werden uns sicher wieder sehn."
            
say(""
            if 
pc job == 0 then
            pc 
give_item2 "19" )
            
pc give_item2 "3009" )
            
pc give_item2 "11209" )
            
pc give_item2 "12209" )
            
pc give_item2 "13009" )
            
pc give_item2 "17009" )
            
pc give_item2 "14009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            elseif 
pc job == 1 then 
            pc 
give_item2 "1009" 
            
pc give_item2 "2009" )
            
pc give_item2 "11409" 200 )
            
pc give_item2 "12349" 200 )
            
pc give_item2 "13009" 200 )
            
pc give_item2 "17009" 200 )
            
pc give_item2 "14009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            
pc give_item2 "8000" 200 )
            elseif 
pc job == 2 then 
            pc 
give_item2 "19" )  
            
pc give_item2 "11609" )
            
pc give_item2 "12489" )
            
pc give_item2 "13009" )
            
pc give_item2 "17009" )
            
pc give_item2 "14009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            elseif 
pc job == 3 then 
            pc 
give_item2 "7009" )
            
pc give_item2 "11809" )
            
pc give_item2 "13009" )
            
pc give_item2 "14009" )
            
pc give_item2 "17009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            
pc give_item2 "16105" )
            
pc give_item2 "17105" )
            
clear_letter() 
 
        
end 
    end  
    end 
end 
Was ist hier Falsch?! Wenn ich die quest am anfang mache, die items bekomme, relog mache kann ich die items nochmal holle, will aber das es nur einmal geht.

pls um hilfe
09/07/2010 20:36 Benhero#323
@ImbaStyla
Hier so gehts:
PHP Code:
---------------------------------- 
--    
Main Quest LV1 
--    Wilkommen bei ProstoMT2 
---------------------------------- 
quest main_quest_lv1 begin 
    state start begin 
        when login 
or levelup with pc.get_level() == 1 begin 
            set_state
gotoinfomation 
        
end 
    end 
    state gotoinfomation begin 
        when letter begin 
            send_letter
("Youang-You"
        
end 
        when button 
or info begin 
            say_title
("Finde Young-You"
             
            ----
"12345678901234567890123456789012345678901234567890"
            
say("Willkommen bei Prosto-World2"
            
say("Du musst für deine Anfänger Sachen was tuhn."
            
say("Geh zu Youang-You der hat was für dich,"
            
say("Ich habe ihn schon Mitgeteilt das du kommst."
            
say("Pass auf er Vergisst sehr viel."
            
say(""
            
say("Viel Spaß.")  
            
say(""
            
set_stategototeacher 
        
end 
    end 

    state gototeacher begin 
        when letter begin 
            local v
=find_npc_by_vnum(20095
            if 
0==v then 
            
else 
                
target.vid("__TARGET__"v"Finde Youang-You"
            
end 
        end 
        when letter begin 
            send_letter
("Finde Youang-You"
        
end 
        when button 
or info begin 
            say_title
("Finde Youang-You"
            
say("finde Ypuang-You"
            
say("viel erfolg"
            ----------
"12345678901234567890123456789012345678901234567890"
            
say_reward("Den NPC findest du bei dem"
            
say_reward("Rot weiss blinkendem Punkt,"
            
say_reward("auf der Karte."
            
say(""
        
end 
        when __TARGET__
.target.click begin 
            target
.delete("__TARGET__"
            
say("Youang-You:"

            ----
"12345678901234567890123456789012345678901234567890"
            
say("Hallo, ich habe schon gehört das du kommst"
            
say("von wenn weiß ich leider nicht mehr "
            
say("da ich schon sehr Alt bin, und viel Vergesse."
            
say("Mir wurde noch gesagt das ich dir sachen geben muss."
            
say("Moment ich überlege was für sachen es waren!"
            
say("Ah, ich habs!"
            
say(""
            
say("Viel Spaß, wir werden uns sicher wieder sehn."
            
say(""
            if 
pc job == 0 then
            pc 
give_item2 "19" )
            
pc give_item2 "3009" )
            
pc give_item2 "11209" )
            
pc give_item2 "12209" )
            
pc give_item2 "13009" )
            
pc give_item2 "17009" )
            
pc give_item2 "14009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            elseif 
pc job == 1 then 
            pc 
give_item2 "1009" 
            
pc give_item2 "2009" )
            
pc give_item2 "11409" 200 )
            
pc give_item2 "12349" 200 )
            
pc give_item2 "13009" 200 )
            
pc give_item2 "17009" 200 )
            
pc give_item2 "14009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            
pc give_item2 "8000" 200 )
            elseif 
pc job == 2 then 
            pc 
give_item2 "19" )  
            
pc give_item2 "11609" )
            
pc give_item2 "12489" )
            
pc give_item2 "13009" )
            
pc give_item2 "17009" )
            
pc give_item2 "14009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            elseif 
pc job == 3 then 
            pc 
give_item2 "7009" )
            
pc give_item2 "11809" )
            
pc give_item2 "13009" )
            
pc give_item2 "14009" )
            
pc give_item2 "17009" )
            
pc give_item2 "15009" )
            
pc give_item2 "16009" )
            
pc give_item2 "16105" )
            
pc give_item2 "17105" )
            
set_state_finish_ 
 
        
end 
    end  
    end
    state _finish_ begin
    end
end 
-----------------------------------------
@Fritz3 Hier deine quest:

Best Greatz Benhero
09/08/2010 11:07 ImbaStyla#324
Geht immer noch nicht.
09/08/2010 17:40 cCcVaTaNcCc#325
Quote:
Originally Posted by ImbaStyla View Post
Geht immer noch nicht.
Quote:
Originally Posted by ImbaStyla View Post
Hmm, ist seid ja schlau, und habt ahnung, das kann meine oma besser, Startset ändert man unter give_basic_weapon.quest xD
dachte dein oma kann es wiesso fragse die den nicht ob sie dir dabei hilft ^^

@Benhero: thx bei mir die quest also das main_quest_lv1
09/08/2010 20:36 Benhero#326
@Fritz Hier überarbeitet.
PHP Code:
quest event_map begin
    state start begin
        when 20100.chat
."High-Level-Maps" begin
            local min_level_one 
80
            local min_level_two 
90
            local min_level_three 
0
            say
(""..mob_name(20100)..":")
            
say("")
            
say("Sei gegrüsst Reisender!")
            
say("Du möchtest also auf eine High-Level-Map?")
            
say("Ich kann dich gerne hinbringen,")
            
say("aber bedenke eine Reise kostet dich 500.000 Yang.")
            
say("Wohin möchtest du dich teleportieren lassen?")
            
say("")
            
local aselect("Zombie-Reich","Reichsmap","Handel-Map","Abbrechen")
            if 
1==a then
                
if pc.get_level() < min_level_one then
                    say
(""..mob_name(20100)..":")
                    
say("")
                    
say("Dein Level ist zu niedrig. Komm wieder")
                    
say("wenn du Level " ..min_level_one.. " erreichst hast.")
                else
                    if 
pc.get_money() < 500000 then
                        say
(""..mob_name(20100)..":")
                        
say("")
                        
say("Tut mir leid du hast nicht genug Yang dabei,")
                        
say("Pro Teleport verlange ich 500.000 Yang.")
                    else
                        
say(""..mob_name(20100)..":")
                        
say("")
                        
say("Gut, auf ins Zombie-Reich")
                        
say("Ich wünsche dir viel Spass")
                        
wait()
                        
pc.warp(832000 832000)
                        
pc change_money ( -500000 )
                    
end
                end
            
elseif 2==a then
                
if pc.get_level() < min_level_two then
                    say
(""..mob_name(20100)..":")
                    
say("")
                    
say("Dein Level ist zu niedrig. Komm wieder")
                    
say("wenn du Level " ..min_level_two.. " erreichst hast.")
                else
                    if 
pc.get_money() < 500000 then
                        say
(""..mob_name(20100)..":")
                        
say("")
                        
say("Tut mir leid du hast nicht genug Yang dabei,")
                        
say("Pro Teleport verlange ich 500.000 Yang.")
                    else
                        
say(""..mob_name(20100)..":")
                        
say("")
                        
say("Gut, auf zur Reichsmap")
                        
say("Ich wünsche dir viel Spass")
                        
wait()
                        
pc change_money ( -500000 )
                        
pc.warp(281292281292)
                    
end
                end
            
elseif 3==a then
                
if pc.get_level() < min_level_three then
                    say
(""..mob_name(20100)..":")
                    
say("")
                    
say("Dein Level ist zu niedrig. Komm wieder")
                    
say("wenn du Level " ..min_level_three.. " erreichst hast.")
                else
                    if 
pc.get_money() < 500000 then
                        say
(""..mob_name(20100)..":")
                        
say("")
                        
say("Tut mir leid du hast nicht genug Yang dabei,")
                        
say("Pro Teleport verlange ich 500.000 Yang.")
                    else
                        
say(""..mob_name(20100)..":")
                        
say("")
                        
say("Gut, auf zur Handels-Map")
                        
say("Ich wünsche dir viel Spass")
                        
wait()
                        
pc change_money ( -500000 )
                        
pc.warp(7770077700)
                    
end
                end
            
elseif 4==a then
                say
(""..mob_name(20100)..":")
                
say("")
                
say("Okay")
                
say("Dann bleib erstmal hier")
            
end
        end
    end
end 
09/09/2010 10:41 its_execution#327
Quote:
Originally Posted by TheCoLaCoKeEe View Post
PHP Code:
quest blutstein begin
    state start begin
        when login 
or levelup with pc.level >75 begin
            set_state
(killmob)
        
end
    end
    state killmob begin
        when letter begin
            send_letter
("Blutstein")
        
end
    end
    when info 
or button begin
        say
("Blutstein")
        
say("Töte einen Neunschwanz, um ein Blutstein")
        
say("zu erlangen. Mit dem Blutstein wird")
        
say("dir der eintritt in die grotte gewährt!")
        
say("Dort kannst du dan Leveln.")
        
say("")
        
say("Aber jetzt ab!")
        
say_reward("Suche und töte den Neunschwanz.")
        
say_reward("Du findest ihm im Eisland...")
    
end
    when 1901.kill begin
        notice_all
(pc.get_name().. " hat " ..mob_name(1901).. " getötet!")
        
set_state(fertig)
        
end
        state fertig begin
            when letter begin
                send_letter
("Du hast ihn getötet!")
            
end
        end
        when info 
or butten begin
            say_reward
("Du erhieltst 30x Blutstein")
            
pc.give_item2(3019030)
            
clear_letter()
        
end
    end
end 
was is an der quest falsch???
da kommt beim programm immer "when/quest/state fehler"...
ich find aba keinen mehr...
was ist mit meiner quest?
09/09/2010 16:23 Benhero#328
@TheCoLaCoKeEe

Und was zeigt vpc?

Best Greatz Benhero
09/09/2010 17:38 .TiBuRiOn#329
hi bin total schlecht im quest schreiben ^^
habe mal versucht einen warp befehl in die "givebasicweapon" quest einzufügen
hier der code:
Code:
quest give_basic_weapon begin
    state start begin
        when login begin
            if pc.getqf("basic_weapon") == 0 then
                pc.setqf("basic_weapon", 1)

                local item = 19

                if pc.job == 1 then
                    item = 1009
                elseif pc.job == 3 then
                    item = 7009
                end

                if pc.countitem(item) == 0 and pc.weapon != item then
                    pc.give_item2(item)
                    pc.give_item2(27001,5 )
                --    pc.give_item2(71020, 5)
                end
                    pc.warp(28129200, 28129200)
                end
                
                end
            end
        end
    end
end
fehler: keinen
funktioniert aber nicht :(
vllt. kann mir einer helfen
danke im vorraus
09/09/2010 18:00 Benhero#330
Probiers ma so..
PHP Code:
quest give_basic_weapon begin
    state start begin
        when login begin
            
if pc.getqf("basic_weapon") == 0 then
                pc
.setqf("basic_weapon"1)
                
local item 19
                
if pc.get_job() == 1 then
                    local item 
1009
                
elseif pc.get_job() == 3 then
                    local item 
7009
                end
                
if pc.countitem(item) == and pc.weapon != item then
                    pc
.give_item2(item)
                    
pc.give_item2(27001,)
                --    
pc.give_item2(710205)
                
end
                pc
.warp(2812920028129200)
            
end
        end
    end
end 
Best Greatz Benhero