Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 15:25

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[SERVICE] Die Questkontrolle

Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old 02/22/2011, 22:43   #1531
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Fehler sollte nun behoben sein, wenn nicht muss Counter umarbeiten, aber dann muss man halt immer Questrolle anklicken um zu sehen wie viele man bereits getötet hat. so muss man nur Auftragsfenster offen haben (eine neue Methode für mich :S)

HTML Code:
----------------------------------------------
-- Bio Quest Level30
----------------------------------------------
quest Bio_Quest_30 begin
    state start begin
        when login or levelup with pc.level >= 30 begin
            set_state(login)
        end
    end

    state login begin
        when letter begin
		send_letter("Probleme mit Monstern 1")
            local v = find_npc_by_vnum(20084)
            if v != 0 then
                target.vid("__TARGET__", v, "¥Íª«¾ÇªÌ±ç¬f¦~")
            end
        end

        when button or info begin
            say_title("Probleme mit Monstern")
            say("")
            say("Die Biologin braucht deine Hilfe!")
            say("Gehe zu ihr.")
            say("")
            say("")
        end


		        when __TARGET__.target.click or 20084.chat."Probleme mit Monstern 1" begin
            target.delete("__TARGET__")
            say("Biologin:")
            ---                                                   l
            say("Oh!!! Du hilfst mir?")
            say("Gut ...")
            say("Ich bin übrigens die Biologin")
            say("ich habe Probleme mit ein paar Monstern.")
            say("Wenn du mir bei meinen Problemen hilfst,")
            say("werde ich dich Reich Belohnen")
            say("")
            wait()
            say("Biologin:")
            
            say("")
            say("")
            say("")
            say("")
            wait()
            say("Töte Spinnen im Spinnendungeon")
            
            pc.setqf("spinne", 0)
            q.set_counter("Spinnen", 200)
			set_state(killing)
        end
	end
	state killing begin
	   when 2051.kill or 2052.kill or 2053.kill or 2054.kill or 2055.kill begin
			local spinne = pc.getqf("spinne") + 1
			if spinne <= 200 then
			pc.setqf("spinne", spinne)
			q.set_counter("Spinnen", 200 - spinne)
			end
			if pc.getqf("spinne") >= 200 then
			say("Auftrag erfüllt du hast 200 Spinnen getötet.")
			set_state(belohnung)
            end
		end
	end
	state belohnung begin
            when letter begin
            local v = find_npc_by_vnum(20084)
            if v != 0 then
            target.vid("__TARGET__", v, "¥Íª«¾ÇªÌ±ç¬f¦~")
            end
            send_letter("Auftrag erfüllt")
        end
        when button or info begin
            say_title("Auftrag erfüllt")
            say("")
            say("Die Biologin hat eine Belohnung für dich.")
            say("Gehe zu ihr.")
            say("")
            say("")
        end
        when __TARGET__.target.click  or 20084.chat."Belohnung der Biologin"  begin
        target.delete("__TARGET__")
        say("Du erhälst dauerhaft 10 Bewegungsgeschwindigkeit:")
        say("Bewegungsspeed +10%")
        
        affect.add_collect(apply.MOV_SPEED, 10, 60*60*24*365*60) --60¦~ 
        
        clear_letter()
        set_quest_state("collect_quest_lv40", "run")
        set_state(__complete)
        end        
     
    end
    state __complete begin
    end
end
.Risan. is offline  
Thanks
1 User
Old 02/22/2011, 23:28   #1532
 
bl4ckd3v1l's Avatar
 
elite*gold: 0
Join Date: Apr 2009
Posts: 1,439
Received Thanks: 668
Quote:
Originally Posted by Woody° View Post
Fehler sollte nun behoben sein, wenn nicht muss Counter umarbeiten, aber dann muss man halt immer Questrolle anklicken um zu sehen wie viele man bereits getötet hat. so muss man nur Auftragsfenster offen haben (eine neue Methode für mich :S)

HTML Code:
----------------------------------------------
-- Bio Quest Level30
----------------------------------------------
quest Bio_Quest_30 begin
    state start begin
        when login or levelup with pc.level >= 30 begin
            set_state(login)
        end
    end

    state login begin
        when letter begin
		send_letter("Probleme mit Monstern 1")
            local v = find_npc_by_vnum(20084)
            if v != 0 then
                target.vid("__TARGET__", v, "¥Íª«¾ÇªÌ±ç¬f¦~")
            end
        end

        when button or info begin
            say_title("Probleme mit Monstern")
            say("")
            say("Die Biologin braucht deine Hilfe!")
            say("Gehe zu ihr.")
            say("")
            say("")
        end


		        when __TARGET__.target.click or 20084.chat."Probleme mit Monstern 1" begin
            target.delete("__TARGET__")
            say("Biologin:")
            ---                                                   l
            say("Oh!!! Du hilfst mir?")
            say("Gut ...")
            say("Ich bin übrigens die Biologin")
            say("ich habe Probleme mit ein paar Monstern.")
            say("Wenn du mir bei meinen Problemen hilfst,")
            say("werde ich dich Reich Belohnen")
            say("")
            wait()
            say("Biologin:")
            
            say("")
            say("")
            say("")
            say("")
            wait()
            say("Töte Spinnen im Spinnendungeon")
            
            pc.setqf("spinne", 0)
            q.set_counter("Spinnen", 200)
			set_state(killing)
        end
	end
	state killing begin
	   when 2051.kill or 2052.kill or 2053.kill or 2054.kill or 2055.kill begin
			local spinne = pc.getqf("spinne") + 1
			if spinne <= 200 then
			pc.setqf("spinne", spinne)
			q.set_counter("Spinnen", 200 - spinne)
			end
			if pc.getqf("spinne") >= 200 then
			say("Auftrag erfüllt du hast 200 Spinnen getötet.")
			set_state(belohnung)
            end
		end
	end
	state belohnung begin
            when letter begin
            local v = find_npc_by_vnum(20084)
            if v != 0 then
            target.vid("__TARGET__", v, "¥Íª«¾ÇªÌ±ç¬f¦~")
            end
            send_letter("Auftrag erfüllt")
        end
        when button or info begin
            say_title("Auftrag erfüllt")
            say("")
            say("Die Biologin hat eine Belohnung für dich.")
            say("Gehe zu ihr.")
            say("")
            say("")
        end
        when __TARGET__.target.click  or 20084.chat."Belohnung der Biologin"  begin
        target.delete("__TARGET__")
        say("Du erhälst dauerhaft 10 Bewegungsgeschwindigkeit:")
        say("Bewegungsspeed +10%")
        
        affect.add_collect(apply.MOV_SPEED, 10, 60*60*24*365*60) --60¦~ 
        
        clear_letter()
        set_quest_state("collect_quest_lv40", "run")
        set_state(__complete)
        end        
     
    end
    state __complete begin
    end
end
Wunderbar, klappt alles. Danke dir.
bl4ckd3v1l is offline  
Old 02/24/2011, 15:53   #1533
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Freut mich
.Risan. is offline  
Old 02/24/2011, 20:22   #1534



 
CHXMVN's Avatar
 
elite*gold: 20
The Black Market: 354/0/0
Join Date: Mar 2009
Posts: 4,526
Received Thanks: 4,618
PHP Code:
quest deviltower2_zone begin
    state start begin
        when login begin
            
if pc.get_map_index() == 214 then
                
if pc.get_x() < 55555+88 or pc.get_y() < 55555+577 or pc.get_x() > 55555+236 or pc.get_y() > 55555+737 then
                    pc
.warp((5376+501)*100, (512+498+4)*10065)
                
end
                pc
.set_warp_location(655376+501512+498+4)
            elseif 
pc.get_map_index() >= 2140000 and pc.get_map_index() <= 2150000 then
                pc
.set_warp_location(655376+501512+498+4)
            
end
        end
        when 20087.chat
."In den Zombieturm" begin
            
if pc.get_level() < 85 then
                say_title
("Der Zombieturm Turm")
                
say("Dein Level ist zu niedrig.")
                
say("Du musst min. Level 85 sein,")
                
say("um den Turm zubetreten!")
                return
            else
                
say_title("Der Zombieturm")
                
say("Du kennst sicherlich den Dämonenturm..")
                
say("Dieser Turm ähnelt diesen Turm zwar von außen...")
                
say("Jedoch von innen...")
                
say("Im inneren sind viel stärkere Monster..")
                
wait()
                
say_title("Der Zombieturm")
                
say("Sie Trachten dir noch deinem Leben,")
                
say("nur starke Krieger können sich gegen")
                
say("diese Monster behaupten.")
                
say("")
                
say_reward("Bist du bereit den Turm zubetreten?")
                
local s select("Hinnein!","Nein, ich habe Angst.")
                if 
== 1 then
                    pc
.warp(5555500,5555500)
                
end
            end
        end
        when 8027.kill begin
            d
.setf("dt2kill",1)
            
timer("dt2metin"5)
        
end
        when dt2metin
.timer begin
            d
.clear_regen()
            
d.new_jump_all(2145555500+126,5555500+384)
            
d.new_jump_all(21455555+126,55555+384)
            
d.clear_regen()
            
d.regen_file("data/dungeon/deviltower2_2_regen.txt")
            
d.set_warp_at_eliminate(4d.get_map_index(), 55555+134,55555+147"data/dungeon/deviltower3_2_regen.txt")
        
end
        when 8040.kill with pc
.in_dungeon() begin
            timer
("spinne",10)
        
end
        when spinne
.timer begin
            d
.kill_all()
            
d.clear_regen()
            
d.jump_all(55555+369,55555+629)
            
d.regen_file("data/dungeon/deviltower4_2_regen.txt")
        
end
        when 8023.kill with pc
.in_dungeon() begin
            d
.notice("Du hast den Metin zerstört!")
            
d.notice("Du hast nun 15 Min. Zeit,")
            
d.notice("die sieben roten Tode zu töten!")
            
timer("sensicount"60*15)
            
d.kill_all()
            
d.kill_all()
            
d.spawn_mob(1096,368,629)
            
d.spawn_mob(1096,419,630)
            
d.spawn_mob(1096,428,653)
            
d.spawn_mob(1096,422,679)
            
d.spawn_mob(1096,395,689)
            
d.spawn_mob(1096,369,679)
            
d.spawn_mob(1096,361,658)
            
d.spawn_mob(20201,371,658)
            
d.setf("steinebene4",7)
        
end
        when 1096.kill with pc
.in_dungeon() begin
            game
.drop_item(90007,1)
        
end
        when 20201.take with item
.vnum == 90007 begin
            item
.remove()
            
d.setf("steinebene4"d.getf("steinebene4") - 1)
            
d.notice("Du hast ein Siegel abgegeben!")
            
local steine123 d.getf("steinebene4");
            
d.notice("Es fehlen noch "..steine123.." Steine!")
            if 
d.getf("steinebene4") <= 0 then
                npc
.purge()
                
d.notice("Du hast diese Ebene geschafft!")
                
timer("ebene5",10)
                
d.kill_all()
            
end
        end
        when ebene5
.timer begin
            d
.kill_all()
            
d.clear_regen()
            
d.jump_all(55555+602,55555+404)
            
d.regen_file("data/dungeon/deviltower8_2_regen.txt")
            
d.spawn_mob(2598,607,434)
        
end
        when 2598.kill with pc
.in_dungeon() begin
            timer
("goout",300)
            
d.kill_all()
            
d.kill_all()
            
d.notice("Du hast den König getötet.")
            
d.notice("Du hast nun 5 Min. Zeit, deine Gegenstände")
            
d.notice("zu verbessern!")
            
local reward_alchemist = {200742007520076}
            
d.spawn_mob(reward_alchemist[number(1,3)], 633435);
            
d.setqf("can_refine"1)
        
end
        when goout
.timer begin
            d
.kill_all()
            
pc.warp((5376+501)*100, (512+498+4)*10065)
        
end
    end
end 
Mein Problem ist das man beim Schmied nichts uppen kann!
Wer das Problem beheben kann bitte melden ;>
CHXMVN is offline  
Old 02/24/2011, 20:48   #1535
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Hab es mir angeschaut, die mob-vnum 20074,20075 und 20076 sind richtig
auch das can_refine, es ist eigentlich der Dämonenturm, nur ich sehe nirgendwo die funktion wo er das refine abfragt bzw. auf andere ziffer ändert.

Tut mir leid, ich muss passen, bin selber Sprachlos.

EDIT: sehe kein fehler :/
.Risan. is offline  
Old 02/25/2011, 07:45   #1536
 
.2good4you111's Avatar
 
elite*gold: 20
Join Date: Oct 2010
Posts: 1,303
Received Thanks: 457
PHP Code:
d.setqf("can_refine"1
^This setzt nur einen state auf 1 -- Bringt jedoch nicht viel da dieser nirgends abgefragt wird.
Hatte irgendwo mal einen Befehl der hieß pc.refine_item oder so.
Habe jedoch die parameter nicht rausbekommen xD
.2good4you111 is offline  
Thanks
1 User
Old 02/25/2011, 10:55   #1537



 
CHXMVN's Avatar
 
elite*gold: 20
The Black Market: 354/0/0
Join Date: Mar 2009
Posts: 4,526
Received Thanks: 4,618
Quote:
Originally Posted by .2good4you111 View Post
PHP Code:
d.setqf("can_refine"1
^This setzt nur einen state auf 1 -- Bringt jedoch nicht viel da dieser nirgends abgefragt wird.
Hatte irgendwo mal einen Befehl der hieß pc.refine_item oder so.
Habe jedoch die parameter nicht rausbekommen xD
Und das Problem lässt sich jetzt wie beheben?
CHXMVN is offline  
Old 02/25/2011, 12:03   #1538
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
ich sag sowas zum ersten mal, garnicht

vllt hat lolkid ne idee, er is darin ein Gott..
.Risan. is offline  
Old 02/25/2011, 12:31   #1539



 
CHXMVN's Avatar
 
elite*gold: 20
The Black Market: 354/0/0
Join Date: Mar 2009
Posts: 4,526
Received Thanks: 4,618
Quote:
Originally Posted by Woody° View Post
ich sag sowas zum ersten mal, garnicht

vllt hat lolkid ne idee, er is darin ein Gott..
Ja ich habs grad nochmal getestet DT1 geht alles perfekt danach geh ich DT2 danach geht es nicht und es steht du kannst keine weiteren Gegenstände aufrüsten
CHXMVN is offline  
Old 02/25/2011, 12:32   #1540
 
.2good4you111's Avatar
 
elite*gold: 20
Join Date: Oct 2010
Posts: 1,303
Received Thanks: 457
Ist der Schmied eigentlich in der game festgelegt oder geht der mit ner Quest?
Wenn er über ne quest könnte man die ja ändern

Also den normalen schmied meine ich.
.2good4you111 is offline  
Old 02/25/2011, 12:47   #1541
 
.Risan.'s Avatar
 
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
Quote:
Originally Posted by .2good4you111 View Post
Ist der Schmied eigentlich in der game festgelegt oder geht der mit ner Quest?
Wenn er über ne quest könnte man die ja ändern

Also den normalen schmied meine ich.
Mein gefühl sagt mir immer mehr das es in der Game festgelegt wird.

@offtopic, ich hab auf deine fragen mit vit str und dex usw geantwortet<.<
.Risan. is offline  
Old 02/26/2011, 00:29   #1542
 
bl4ckd3v1l's Avatar
 
elite*gold: 0
Join Date: Apr 2009
Posts: 1,439
Received Thanks: 668
Wollt mal ne quest einbauen die die PvP kills zählt. Allerdings zählt er sie leider nicht :/
Will das sie im chat stehen. (Im eigenem chat das man es nur selber sieht ^^)

PHP Code:
quest player_kill begin
    state start begin
    when npc
.kill begin
        local count 
pc.getqf("state") + 1
        chat
"Du hast ".." "..pc.getqf("state").." Spieler besiegt.")
        
end
    end
end 
bl4ckd3v1l is offline  
Old 02/26/2011, 08:41   #1543
 
.Delta's Avatar
 
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
probiers mal so, habs nicht getestet
PHP Code:
quest player_kill begin
    state start begin
        when login with pc
.get_level() == 1 begin
            pc
.setqf("state"0)
            
set_state(killen)
        
end
    end
    state killen begin
        when kill with npc
.is_pc() begin
            local count 
pc.getqf("state") + 1
            chat
"Du hast "..pc.getqf("state").." Spieler besiegt.")
        
end
    end
end 
.Delta is offline  
Old 02/26/2011, 16:44   #1544
 
elite*gold: 0
Join Date: Aug 2009
Posts: 10
Received Thanks: 0
was hab ich da falsch ?!
PHP Code:
quest adateforgemi begin
    state run begin
        when login with pc
.level>=55 begin
            set_state
(information)
        
end
    end
    state information begin 
--State Information
          when letter begin 
-- Wenn alle Quest Briefe aufgerufen werden.
            
send_letter("Bitte hilf mir!") -- Sende neuen Quest Brief "Bitte helft mir!"
        
end
        when button 
or info begin
            say_title
("Bitte hilf mir!") --  Den Titel des Briefes sagen

            
----"12345678901234567890123456789012345678901234567890"|
            
say("Ich habe mich in einen Jungen verliebt.")
            
say("Sein Name ist Soon, ich traue mich nicht")
            
say("ihn anzusprechen. Kommt bitte zu mir")
            
say("ich werde euch auch reich belohnen.")
            
set_state(gotogemi) -- Wechsele den State zu gotogemei
        end
    end
    state gotogemi begin 
          when letter begin
            local v
=find_npc_by_vnum(9003) -- mache v zu Gemi
            
if 0==v then -- Wenn keine Gemi gefunden wurde dann mach nichts
            
else
                
target.vid("__TARGET__"v"Geh zur Gemi") -- setze die Gemi als neues Ziel
            end
        end
        when letter begin
            send_letter
("Komm zu mir!")
        
end
        when button 
or info begin
            say_title
("Kom zu mir!")
            
say("Geh zur Gemi")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Gemi :")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("Ich habe mich in einen Jungen verliebt.")
            
say("Sein Name ist Soon, ich traue mich nicht")
            
say("ihn anzusprechen. Könntet ihr bitte zu Soon")
            
say("gehen und ihn für mich nach eine Date fragen?")
            
say("Ich würde euch reichlich belohnen.")
            
say("Bitte helft mir!")
            
say("")
            
local s select("Ich helfe doch gerne","Nein, keine Zeit")
            if 
s=1 then
                set_state
(gotosoon)
            else
                
say("Schade...")
                
say("")
                
clear_letter()
                
q.done()
            
end
        end
    end
    state gotosoon
        when letter begin
            local v
=find_npc_by_vnum(SOONVNUM)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Geh zu Soon")
            
end
        end
        when letter begin
            send_letter
("Komm zu mir!")
        
end
        when button 
or info begin
            say_title
("Geh zu Soon!")
            
say("Beweg dich zz Soon")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Gemi :")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("Die Gemi will ein Date von mir?")
            
say("So ein zufall ich wollt grad zu ihr gehen.")
            
say("und sie nach einem Date fragen")
            
say("")
            
set_state(backtogemi)
        
end
    end
    state backtogemi
        when letter begin
            local v
=find_npc_by_vnum(SOONVNUM)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Geh zur Gemi")
            
end
        end
        when letter begin
            send_letter
("Geh zur Gemi!")
        
end
        when button 
or info begin
            say_title
("Geh zur Gemi!")
            
say("Berichte der Gemi")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Gemi :")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("Was?!")
            
say("Er will!!, Ich danke dir .")
            
say("Als belohnung gebe ich dir das Perd meines Vaters.")
            
say("")
            
say_reward("Die Gemi gibt dir Stein der Hast+4")
            
say_reward("Die Gemi gibt dir Militär-Pferdebuch")
            
pc_giveitem2(28443)
            
pc_giveitem2(50053)
            
pc.get_horse_level(21)
            
clear_letter()
            
set_state(__COMPLETE__)
        
end
    end
    state __COMPLETE__ begin
    end
end 
Dazden is offline  
Old 02/26/2011, 17:19   #1545

 
LxR'EsoZiaL's Avatar
 
elite*gold: 15
Join Date: Mar 2010
Posts: 4,270
Received Thanks: 2,499
Funkst dat ?

PHP Code:
    -- Spendeninfo (aktivert über /e spenden 1)
    
quest pep begin
    state start begin
        when login with game
.get_event_flag("spenden")== 1 begin
        set_state
(lesen)
        
send_letter("Spendeninfo")
        
end
    end
            state lesen begin
            when button 
or info begin
            
            say_reward
("Geplante Wartungarbeit:")
            
say_title("Spendeninfo")
            
say("")
            
say("Ihr könnt dem Server eine kleine")
            
say("Spende zukommen lassen und dafür")
            
say("erhaltet ihr Coins. Damit könnt ihr")
            
say("Euch im Itemshop etwas kaufen!")
            
say("")
            
say_title("Coins pro Spende:")
            
say("")
            
say_reward("Hier seht ihr eine Liste wie viele")
            
say_reward("Coins ihr pro Spende bekommt.")
            
say("10 €: 150 Coins")
            
say("25 €: 400 Coins")
            
say("50 €: 900 Coins")
            
local i select("ja habe ich""Ja, und Später nochmal daran erinnern")
            if 
== i then
            set_state
__COMPLETE__ )
        
end
            
if == i then
                
return
            
end    
        end
    end
    state __COMPLETE__ begin
    end
end 
LxR'EsoZiaL is offline  
Reply




All times are GMT +1. The time now is 15:25.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.