Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 00:33

  • 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 01/31/2015, 23:48   #10951
 
elite*gold: 0
Join Date: Jul 2009
Posts: 58
Received Thanks: 1
Quote:
Originally Posted by G.I Duke View Post
Sieht so aus als fehlt nen end ganz unten.
wo genau
shurigeller is offline  
Old 02/01/2015, 00:38   #10952

 
G.I Duke's Avatar
 
elite*gold: 313
Join Date: Apr 2013
Posts: 585
Received Thanks: 122
Etwa dort:
Quote:
Originally Posted by G.I Duke View Post
ganz unten
G.I Duke is offline  
Old 02/01/2015, 00:40   #10953
 
elite*gold: 0
Join Date: Feb 2015
Posts: 27
Received Thanks: 3
Wie macht man aber den zweiten Wert auf 0? Ist doch unmöglich oder?
Nanashii is offline  
Old 02/01/2015, 00:48   #10954
wild wild son




 
Nick's Avatar
 
elite*gold: 0
Join Date: Feb 2011
Posts: 5,994
Received Thanks: 3,389
Quote:
Originally Posted by shurigeller View Post
wo genau

Sollte nun funktionieren - möglich, dass ich etwas übersehen habe, ist leider Snake Code.

lg
Nick is offline  
Thanks
1 User
Old 02/01/2015, 09:18   #10955


 
.Horny's Avatar
 
elite*gold: 0
Join Date: Mar 2013
Posts: 679
Received Thanks: 156
Nachdem alle minuten cowntdowns abgelaufen sind crasht der server, map is nur in ch99 und der index ist 113

quest automaticoxevent begin
state start begin
-- Dialogue with Uriel
when 20011.chat."GM: OX - Starten" with pc.is_gm() and pc.get_name() == "[SA]FT" begin
say_title(mob_name(npc.get_race())..":")
say("")

say("OX Starten?")
say("Gewinne werden automatisch vergeben!")
local s = select(locale.yes,locale.no)
if(s == 2) then return end
say_title(mob_name(npc.get_race())..":")
say("")

say("Event Geöffnet")
say("Bitte warte")
server_timer("countdown",10)
game.set_event_flag("oxevent_status",1)
end

--- Start Countdown !.
when countdown.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: OX-Wettbewerb - Geöffnet")
notice_all("Uriel: 5 Minuten bis die Tore Geschlossen werden!")
server_timer("countdownone",60)
end
end

--- CountDown 2
when countdownone.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 4 Minute/n")
server_timer("countdowntwo",60)
end
end

--- CountDown 3
when countdowntwo.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 3 Minute/n")
server_timer("countdownthre",60)
end
end

--- CountDown 4
when countdownthre.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 2 Minute/n")
server_timer("countdownfour",60)
end
end

--- CountDown 5
when countdownfour.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 1 Minute/n")
server_timer("countdownfive",60)
end
end

--- Countdown 6
when countdownfive.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Die Tore Wurden Geschlossen!")
notice_all("Uriel: du Kannst aber noch Zuschauen!")
server_timer("playercheck",5)
game.set_event_flag("oxevent_status",2)
end
end

--- Player Check
when playercheck.server_timer begin
if(oxevent.get_attender() == 0) then
notice_all("Uriel: Das Event wurde Abgebrochen!")
game.set_event_flag("oxevent_status",0)
else
server_timer("startox",5)
end
end

--- Start Ox Event
when startox.server_timer begin
setskin(NOWINDOW)
quiz = oxevent.quiz(1,30)
if(quiz == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
elseif(quiz == 1) then
if(oxevent.get_attender() == 1) then
game.set_event_flag("oxevent_status",0)
notice_all("Uriel: Das Event ist nun Vorbei!")
warp_all_to_village()
else
server_timer("startoxone",40)
end
else
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
end
end

--- Start Ox 1
when startoxone.server_timer begin
setskin(NOWINDOW)
quiz = oxevent.quiz(1,30)
if(quiz == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
elseif(quiz == 1) then
if(oxevent.get_attender() == 1) then
game.set_event_flag("oxevent_status",0)
notice_all("Uriel: Das Event ist nun Vorbei!")
oxevent.give_item(71129, 1)
oxevent.give_item(71123, 2)
oxevent.give_item(38055, 2)
oxevent.give_item(39001, 10)
warp_all_to_village()
else
server_timer("startox",40)
end
else
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
end
end

when 20011.chat."Der OX-Wettbewerb" begin
say_title(mob_name(npc.get_race())..":")
say("")
---
if(game.get_event_flag("oxevent_status") == 2) then
say("Der OX-Wettbwerb läuft bereits, du kannst")
say("nur noch als Zuschauer beitreten!")
say_reward("Möchtest du Zuschauen?")
local s = select(locale.yes,locale.no)
if(s == 2) then return end
pc.warp(896300, 28900)
elseif(game.get_event_flag("oxevent_status") == 1) then
say("Der OX-Wettbewerb ist noch Offen.")
say("Möchtest du beitreten?")
local s = select(locale.yes,locale.no,"Nur Zuschauen")
if(s == 1) then
pc.warp(896500, 24600)
elseif(s == 3) then
pc.warp(896300, 28900)
end
end
end
end
end
.Horny is offline  
Old 02/01/2015, 12:10   #10956
 
elite*gold: 0
Join Date: Jul 2009
Posts: 58
Received Thanks: 1
PHP Code:
quest shop4 begin
    state start begin
    
        when 9002.chat
."Kriegershop" begin
            npc
.open_shop(4)
        
setskin(NOWINDOW)
        
end

        when 9002.chat
."ninjashop" begin
            npc
.open_shop(18)
        
setskin(NOWINDOW)
        
end
        
        when 9002.chat
."surashop" begin
            npc
.open_shop(19)
        
setskin(NOWINDOW)
        
end

        when 9002.chat
."schamishop" begin
             npc
.open_shop(20)
        
setskin(NOWINDOW)

        
when 9002.chat."schmuck" begin
             npc
.open_shop(21)
        
setskin(NOWINDOW)
        
end
    end
end 
wieso funzt die net
shurigeller is offline  
Old 02/01/2015, 12:18   #10957

 
.yorliK's Avatar
 
elite*gold: 0
Join Date: Nov 2011
Posts: 1,448
Received Thanks: 1,257
Quote:
Originally Posted by shurigeller View Post

wieso funzt die net

Fehlermeldung vielleicht? Bei solchen Sachen haste überhaupt erstmal Glück, das dir geholfen wird..

Code:
quest shop4 begin 
	state start begin  
		when 9002.chat."Kriegershop" begin 
			npc.open_shop(4) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."ninjashop" begin 
			npc.open_shop(18) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."surashop" begin 
			npc.open_shop(19) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."schamishop" begin 
			npc.open_shop(20) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."schmuck" begin 
			npc.open_shop(21) 
			setskin(NOWINDOW) 
		end 
	end 
end
.yorliK is offline  
Old 02/01/2015, 12:39   #10958
 
elite*gold: 0
Join Date: Jul 2009
Posts: 58
Received Thanks: 1
Quote:
Originally Posted by Kilroy. View Post
Fehlermeldung vielleicht? Bei solchen Sachen haste überhaupt erstmal Glück, das dir geholfen wird..

Code:
quest shop4 begin 
	state start begin  
		when 9002.chat."Kriegershop" begin 
			npc.open_shop(4) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."ninjashop" begin 
			npc.open_shop(18) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."surashop" begin 
			npc.open_shop(19) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."schamishop" begin 
			npc.open_shop(20) 
			setskin(NOWINDOW) 
		end 

		when 9002.chat."schmuck" begin 
			npc.open_shop(21) 
			setskin(NOWINDOW) 
		end 
	end 
end




Quote:
Originally Posted by .JayZoN View Post

Sollte nun funktionieren - möglich, dass ich etwas übersehen habe, ist leider Snake Code.

lg
shurigeller is offline  
Old 02/01/2015, 13:34   #10959
 
elite*gold: 0
Join Date: Jan 2015
Posts: 138
Received Thanks: 59

Fehler in Putty :
syntax error : [string "startpc . get_level ( ) <= 30"]:2: `then' expected near `set_state'
dailyquest.quest:7:Error occured on compile dailyquest.quest


Wäre hilfreich wenn es schnell gehen würde.
.Nirgendwer. is offline  
Old 02/01/2015, 13:35   #10960
 
.Delta's Avatar
 
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
dir fehlt ein then nach if get_global_time()> pc.getqf(tempo)
PHP Code:
if get_global_time()> pc.getqf(tempothen 
.Delta is offline  
Old 02/01/2015, 13:51   #10961


 
.Horny's Avatar
 
elite*gold: 0
Join Date: Mar 2013
Posts: 679
Received Thanks: 156
Nachdem alle minuten cowntdowns abgelaufen sind crasht der server, map is nur in ch99 und der index ist 113

quest automaticoxevent begin
state start begin
-- Dialogue with Uriel
when 20011.chat."GM: OX - Starten" with pc.is_gm() and pc.get_name() == "[SA]FT" begin
say_title(mob_name(npc.get_race())..":")
say("")

say("OX Starten?")
say("Gewinne werden automatisch vergeben!")
local s = select(locale.yes,locale.no)
if(s == 2) then return end
say_title(mob_name(npc.get_race())..":")
say("")

say("Event Geöffnet")
say("Bitte warte")
server_timer("countdown",10)
game.set_event_flag("oxevent_status",1)
end

--- Start Countdown !.
when countdown.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: OX-Wettbewerb - Geöffnet")
notice_all("Uriel: 5 Minuten bis die Tore Geschlossen werden!")
server_timer("countdownone",60)
end
end

--- CountDown 2
when countdownone.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 4 Minute/n")
server_timer("countdowntwo",60)
end
end

--- CountDown 3
when countdowntwo.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 3 Minute/n")
server_timer("countdownthre",60)
end
end

--- CountDown 4
when countdownthre.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 2 Minute/n")
server_timer("countdownfour",60)
end
end

--- CountDown 5
when countdownfour.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Tore werden Geschlossen in: 1 Minute/n")
server_timer("countdownfive",60)
end
end

--- Countdown 6
when countdownfive.server_timer begin
if(game.get_event_flag("oxevent_status") == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
else
notice_all("Uriel: Die Tore Wurden Geschlossen!")
notice_all("Uriel: du Kannst aber noch Zuschauen!")
server_timer("playercheck",5)
game.set_event_flag("oxevent_status",2)
end
end

--- Player Check
when playercheck.server_timer begin
if(oxevent.get_attender() == 0) then
notice_all("Uriel: Das Event wurde Abgebrochen!")
game.set_event_flag("oxevent_status",0)
else
server_timer("startox",5)
end
end

--- Start Ox Event
when startox.server_timer begin
setskin(NOWINDOW)
quiz = oxevent.quiz(1,30)
if(quiz == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
elseif(quiz == 1) then
if(oxevent.get_attender() == 1) then
game.set_event_flag("oxevent_status",0)
notice_all("Uriel: Das Event ist nun Vorbei!")
warp_all_to_village()
else
server_timer("startoxone",40)
end
else
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
end
end

--- Start Ox 1
when startoxone.server_timer begin
setskin(NOWINDOW)
quiz = oxevent.quiz(1,30)
if(quiz == 0) then
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
elseif(quiz == 1) then
if(oxevent.get_attender() == 1) then
game.set_event_flag("oxevent_status",0)
notice_all("Uriel: Das Event ist nun Vorbei!")
oxevent.give_item(71129, 1)
oxevent.give_item(71123, 2)
oxevent.give_item(38055, 2)
oxevent.give_item(39001, 10)
warp_all_to_village()
else
server_timer("startox",40)
end
else
notice_all("Es ist ein Fehler aufgetaucht.")
notice_all("Das Event wurde Beendet.")
game.set_event_flag("oxevent_status",0)
warp_all_to_village()
end
end

when 20011.chat."Der OX-Wettbewerb" begin
say_title(mob_name(npc.get_race())..":")
say("")
---
if(game.get_event_flag("oxevent_status") == 2) then
say("Der OX-Wettbwerb läuft bereits, du kannst")
say("nur noch als Zuschauer beitreten!")
say_reward("Möchtest du Zuschauen?")
local s = select(locale.yes,locale.no)
if(s == 2) then return end
pc.warp(896300, 28900)
elseif(game.get_event_flag("oxevent_status") == 1) then
say("Der OX-Wettbewerb ist noch Offen.")
say("Möchtest du beitreten?")
local s = select(locale.yes,locale.no,"Nur Zuschauen")
if(s == 1) then
pc.warp(896500, 24600)
elseif(s == 3) then
pc.warp(896300, 28900)
end
end
end
end
end
.Horny is offline  
Old 02/01/2015, 14:13   #10962
 
elite*gold: 0
Join Date: Jan 2015
Posts: 138
Received Thanks: 59
Quote:
Originally Posted by .Delta View Post
dir fehlt ein then nach if get_global_time()> pc.getqf(tempo)
PHP Code:
if get_global_time()> pc.getqf(tempothen 
Fehler besteht immer noch.
.Nirgendwer. is offline  
Old 02/01/2015, 14:25   #10963
 
DarkCry96's Avatar
 
elite*gold: 0
Join Date: Dec 2013
Posts: 111
Received Thanks: 20
PHP Code:
local s select("Hier, nimm ihn und bring mich rein""Abbrechen")
                if 
== 1 then
                    
if pc.count_item(71095) >= 1 then
                        pc
.remove_item(710951)
                        if 
game.get_event_flag("dragontemple_notfinished") == 0 then
                            local ret 
DragonLair.startRaid(73)
                        else
                            
pc.warp(8432831066935, (82*10000)) 

Ehm an dieser Stelle nimmt er das Item, aber teleportiert einen nicht,
muss vielleicht das else weg? Kann mir einer die Stelle schnell korrigieren?
DarkCry96 is offline  
Old 02/01/2015, 14:42   #10964

 
.yorliK's Avatar
 
elite*gold: 0
Join Date: Nov 2011
Posts: 1,448
Received Thanks: 1,257
Quote:
Originally Posted by .Nirgendwer. View Post
Fehler besteht immer noch.
Es gibt jetzt keinen Error mehr. Ob sie funktioniert ist ne andere Sache, austesten bitte.

PS: Da es ne Daily ist, sicher das das set_state(__COMPLETE__) dahin gehört? Sollte es nicht eher set_state(start) sein? Damit die Quest wenn die Zeit um ist wieder neustartet?

Code:
quest dailyquest begin
	state start begin 
		when login or levelup with pc.get_level() <= 30 begin
			if get_global_time()> pc.getqf("tempo") then
				set_state(infos)
			end
		end
	end
	state infos begin -- info about the mission
		when letter begin
			send_letter("Daily quest")
		end -- letter sent
		when button or info begin
			say_title("Daily quest")
			say("Hi, " .. pc.get_name() .. ".")
			say("You can choose the easy way,")
			say("with a poor reward or")
			say("the hard way, for a better reward")
			say("")
			local risp = select("Easy","Hard", "Cancel")
			if risp==3 then -- Cancel
				return
			elseif risp == 1 then -- Easy
				pc.setqf("dif",0) -- difficulty FLAG (0=easy, 1=hard)
				set_state(running)
			else -- Hard
				pc.setqf("dif",1)
				set_state(running)
			end
		end -- when closed
	end -- INFO closed

	state running begin
		when enter begin
			pc.setqf("done",0) -- quest completed FLAG (0=not completed, 1=completed)
			if pc.getqf("dif")==0 then
				pc.setqf("mob_to_kill", math.random(2411, 2414))
				-- how many kills
				local qta = {
								100, 125, 150, 175, 200,
								225, 250, 275, 300
							}
				pc.setqf("qta_to_kill",qta[math.random(1, 9)])
				-- 50k yang for each kill, max=15M yang
				pc.setqf("reward",50000 * (pc.getqf("qta_to_kill")))
			else
				local vmob = {
								1093, 1191, 1901, 2092, 2191, 2491, 2492, 2493
							 }
				pc.setqf("mob_to_kill",(vmob[math.random(1, 8)]))
				pc.setqf("qta_to_kill",(math.random(1, 10)))
				-- 3M exp for each kill, max=30M exp
				pc.setqf("reward",3000000 * (pc.getqf("qta_to_kill")))
			end
		end
		when letter begin
			if pc.getqf("dif") == 0 then
				send_letter("Daily mission, Easy")
			else
				send_letter("Daily mission, Hard")
			end
		end
		when button or info begin -- info about the quest
			if pc.getqf("done") == 0 then -- if he didn't complete the quest
				if pc.getqf("dif") == 0 then
					say_title("Daily quest, Hasy")
				else
					say_title("Daily quest, Hard")
				end
				say("So, you have chosen the easy way..")
				say("Here is your objective.")
				say("")
				say_reward("You have to kill: " .. pc.getqf("qta_to_kill") .. mob_name(pc.getqf("mob_to_kill")))
				if pc.getqf("dif") == 0 then
					say_reward("That's what you'll got: " .. pc.getqf("reward") .. " yang.")
				else
					say_reward("That's what you'll got: " .. pc.getqf("reward") .. " experience.")
				end
			else
				say_title("Daily mission reward")
				say("Congratulations " ..pc.get_name() .. " !!")
				say("You've earned a nice reward..")
				wait()
				if pc.getqf("dif")==0 then
					say_reward("You have earned: " .. pc.getqf("reward") .. " yang.")
					pc.changegold(pc.getqf("reward"))
				else
					say_reward("You have earned: " .. pc.getqf("reward") .. " experience.")
					pc.give_exp2(pc.getqf("reward"))
				end
				-- timer FLAG, this quest is repeatable once per day (24h)
				pc.setqf("tempo", get_global_time()+86400) -- 60*60*24
				-- deleting FLAGS
				pc.delqf("mob_to_kill")
				pc.delqf("reward")
				pc.delqf("qta_to_kill")
				pc.delqf("dif")
				pc.delqf("done")
				set_state(__COMPLETE__)
			end
		end
		when kill with npc.get_race()==pc.getqf("mob_to_kill") begin
			pc.setqf("qta_to_kill",(pc.getqf("qta_to_kill"))-1)
			if pc.getqf("qta_to_kill") == 0 then
				pc.setqf("done", 1)
				send_letter("Daily mission, Reward")
			end
		end
	end -- closed RUNNING
	state __COMPLETE__ begin
		when enter begin
			q.done()
		end
	end
end
.yorliK is offline  
Old 02/01/2015, 14:44   #10965
 
elite*gold: 0
Join Date: Sep 2014
Posts: 173
Received Thanks: 20
Guten Tag,

ich habe 3 eigentlich simple Quest die nicht funktionieren..

1. 3 Shops auf einen NPC (In diesem fall Gemi)


2. Warpring-Quest (mit Map1,Map2 & Dämonenturm)


3. Regegnbogensteinquest (Von m1 auf P)
VeyZ is offline  
Reply




All times are GMT +1. The time now is 00:33.


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.