this quest is a very nice event, that i made.
best event i made so far.... it's a master piece
soon i will release more events like this one
if you like it, thank it =)
Features:
-when the event is running players use a quest scroll to go to the event map
-after 10 minutes the invitation stops, and players cannot join anymore
-then the event starts
-3 metin stones are spawned
-each kingdom has to destroy the 2 other stones , when defending there own
-when the stone is destroyed from you kingdom, you will be teleported away
-the last kingdom remaining get's the reward
-after 10 minutes the winners are removed aswell
Maps used:
-metin2_map_t1
[Only registered and activated users can see links. Click Here To Register...]
NPC's used:
-20090 * if you use this npc for something else then change it
Installation:
Start event:
as a gm open the scroll
and you will be teleported to the npc
talk to her and you will get an option to start the event
from then on , the event runs by itself, you have to do nothing
just enjoy the show.
Important:
I tested this event on my local server, and it works
i never tried it on a real server with players
if you find a bug or a mistake, let me know so i can fix it.
Quest files:
metinevent.quest
metinjoin.quest
best event i made so far.... it's a master piece
soon i will release more events like this one
if you like it, thank it =)
Features:
-when the event is running players use a quest scroll to go to the event map
-after 10 minutes the invitation stops, and players cannot join anymore
-then the event starts
-3 metin stones are spawned
-each kingdom has to destroy the 2 other stones , when defending there own
-when the stone is destroyed from you kingdom, you will be teleported away
-the last kingdom remaining get's the reward
-after 10 minutes the winners are removed aswell
Maps used:
-metin2_map_t1
[Only registered and activated users can see links. Click Here To Register...]
NPC's used:
-20090 * if you use this npc for something else then change it
Installation:
mysql:
run this query in table player:
* if you have 20090 used for something else, change the vnum into a different npc
map modification:
goto: /usr/rain/channel/share_data/locale/hongkong/map/metin2_map_t1
open npc.txt
and place this code:
* if you have 20090 used for something else, change the vnum into a different npc
open town.txt
and place this code:
quest files
copy the quest files and save them
upload them into: /usr/rain/channel/share_data/locale/hongkong/quest
add them into hongkong_list
run sh make.sh
then /reload in game
after that /reload q in game
then reboot the whole server
run this query in table player:
Code:
UPDATE `mob_proto` SET `name`='Metin event' WHERE (`vnum`='20090') LIMIT 1; UPDATE `mob_proto` SET `gb2312name`='Metin event' WHERE (`vnum`='20090') LIMIT 1; UPDATE `mob_proto` SET `max_hp`='1000000' WHERE (`vnum`='8020') LIMIT 1; UPDATE `mob_proto` SET `regen_cycle`='1' WHERE (`vnum`='8020') LIMIT 1; UPDATE `mob_proto` SET `regen_percent`='0' WHERE (`vnum`='8020') LIMIT 1; UPDATE `mob_proto` SET `max_hp`='1000000' WHERE (`vnum`='8021') LIMIT 1; UPDATE `mob_proto` SET `regen_cycle`='1' WHERE (`vnum`='8021') LIMIT 1; UPDATE `mob_proto` SET `regen_percent`='0' WHERE (`vnum`='8021') LIMIT 1; UPDATE `mob_proto` SET `max_hp`='1000000' WHERE (`vnum`='8022') LIMIT 1; UPDATE `mob_proto` SET `regen_cycle`='1' WHERE (`vnum`='8022') LIMIT 1; UPDATE `mob_proto` SET `regen_percent`='0' WHERE (`vnum`='8022') LIMIT 1
map modification:
goto: /usr/rain/channel/share_data/locale/hongkong/map/metin2_map_t1
open npc.txt
and place this code:
Code:
m 369 320 1 1 0 0 60s 100 1 20090
open town.txt
and place this code:
Code:
209 302 469 197 452 579
copy the quest files and save them
upload them into: /usr/rain/channel/share_data/locale/hongkong/quest
add them into hongkong_list
run sh make.sh
then /reload in game
after that /reload q in game
then reboot the whole server
Start event:
as a gm open the scroll
and you will be teleported to the npc
talk to her and you will get an option to start the event
from then on , the event runs by itself, you have to do nothing
just enjoy the show.
Important:
I tested this event on my local server, and it works
i never tried it on a real server with players
if you find a bug or a mistake, let me know so i can fix it.
Quest files:
metinevent.quest
PHP Code:
quest metinevent begin
state start begin
when 20090.chat."GM: Start metin event" with pc.is_gm() and game.get_event_flag("metinEventJoin") == 0 begin
say("Event started, you must stay in this map")
timer("phase1", 600)
notice_all("You have 10 minutes to enter the metin Event!")
game.set_event_flag("metinEventJoin", 2)
end
when phase1.timer begin
game.set_event_flag("metinEventJoin", 1)
game.set_event_flag("metinEvent", 1)
notice_all("The Metin Event is just started")
notice_all("You cannot teleport there anymore!")
notice_in_map(103,"Objective: Destroy the other metin stones")
notice_in_map(103,"Objective: Protect your own metin stone")
mob.spawn(8020,466,226,1)
mob.spawn(8021,235,303,1)
mob.spawn(8022,429,563,1)
game.set_event_flag("redStone",1)
game.set_event_flag("yellowStone",1)
game.set_event_flag("blueStone",1)
end
when 8020.kill begin
local yellowStone = game.get_event_flag("yellowStone")
local blueStone = game.get_event_flag("blueStone")
game.set_event_flag("redStone",0)
if blueStone == 0 then
notice_in_map(103,"Yellow empire is the winner!")
timer("reward", 5)
elseif yellowStone == 0 then
notice_in_map(103,"Blue empire is the winner!")
timer("reward", 5)
else
notice_in_map(103,"Red empire lost his stone!")
end
end
when 8021.kill begin
local redStone = game.get_event_flag("redStone")
local yellowStone = game.get_event_flag("yellowStone")
game.set_event_flag("blueStone",0)
if yellowStone == 0 then
notice_in_map(103,"Red empire is the winner!")
timer("reward", 5)
elseif redStone == 0 then
notice_in_map(103,"Yellow empire is the winner!")
timer("reward", 5)
else
notice_in_map(103,"Blue empire lost his stone!")
end
end
when 8022.kill begin
local redStone = game.get_event_flag("redStone")
local blueStone = game.get_event_flag("blueStone")
game.set_event_flag("yellowStone",0)
if blueStone == 0 then
notice_in_map(103,"Red empire is the winner!")
timer("reward", 5)
elseif redStone == 0 then
notice_in_map(103,"Blue empire is the winner!")
timer("reward", 5)
else
notice_in_map(103,"Yellow empire lost his stone!")
end
end
when reward.timer begin
notice_in_map(103,"Congratulations with the victory!")
notice_in_map(103,"Claim your prise in the center off the map!")
notice_in_map(103,"In 10 minutes you will be removed!")
mob.spawn(8027,406,375,1)
mob.spawn(8026,406,394,1)
mob.spawn(8027,392,407,1)
mob.spawn(8026,375,408,1)
mob.spawn(8027,361,394,1)
mob.spawn(8026,360,374,1)
mob.spawn(8027,374,360,1)
mob.spawn(8026,394,361,1)
mob.spawn(20074,384,384,1)
mob.spawn(20075,387,387,1)
mob.spawn(20076,381,381,1)
timer('finish', 600)
end
when finish.timer begin
game.set_event_flag("metinEventJoin",0)
game.set_event_flag("metinEvent", 0)
game.set_event_flag("redStone",0)
game.set_event_flag("yellowStone",0)
game.set_event_flag("blueStone",0)
kill_all_in_map(103)
end
end
end
metinjoin.quest
PHP Code:
quest metinjoin begin
state start begin
when login begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Metin Event")
end
when button or info begin
local gm = pc.get_gm_level()
if gm > 0 then
say("teleport to event map?")
local teleport = select("yes","no")
if teleport == 1 then
pc.warp(36872, 57933)
else
setskin(NOWINDOW)
end
else
local metinEventJoin = game.get_event_flag("metinEventJoin")
if metinEventJoin == 0 then
say_title("Metin Event")
say("The event is not running!")
say("Wait for a gm to start it.")
return
elseif metinEventJoin == 1 then
say_title("Metin Event")
say("The event already started!")
say("Perhaps you have more luck next time.")
return
else
say_title("Metin Event")
say("This invitiation will bring you")
say("to the metin event.")
say("")
say_reward("Do you want to participate?")
local a = select("Yes","No")
if a == 2 then
say_title("Metin Event")
say("No problem you can stay here")
return
else
set_state(eventMap)
local empire = pc.get_empire()
if empire == 1 then
pc.warp(46885, 45850)
elseif empire == 2 then
pc.warp(45300, 83500)
else
pc.warp(20761, 55779)
end
end
end
end
end
end
state eventMap begin
when letter begin
send_letter("Metin Event")
timer("checkStartFirst", 2)
end
when button or info begin
say_title("Metin Event")
say("You want to go home?")
local home = select("Yes","No")
if home == 2 then
setskin(NOWINDOW)
return
else
set_state(information)
local empire = pc.get_empire()
if empire == 1 then
pc.warp(409600, 896000 )
elseif empire == 2 then
pc.warp(0, 102400 )
else
pc.warp(921600, 204800 )
end
end
end
when checkStartFirst.timer begin
if game.get_event_flag("metinEvent") == 1 then
timer("checkNationFirst", 2)
else
timer("checkStartSecond", 2)
end
end
when checkStartSecond.timer begin
if game.get_event_flag("metinEvent") == 1 then
timer("checkNationFirst", 2)
else
timer("checkStartFirst", 2)
end
end
when checkNationFirst.timer with game.get_event_flag("metinEvent") == 1 begin
local empire = pc.get_empire()
local blueStone = game.get_event_flag("blueStone")
local redStone = game.get_event_flag("redStone")
local yellowStone = game.get_event_flag("yellowStone")
if empire == 3 and blueStone == 0 then
pc.warp(921600, 204800 )
set_state(information)
end
if empire == 2 and yellowStone == 0 then
pc.warp(0, 102400 )
set_state(information)
end
if empire == 1 and redStone == 0 then
pc.warp(409600, 896000 )
set_state(information)
else
timer("checkNationSecond", 2)
end
end
when checkNationSecond.timer with game.get_event_flag("metinEvent") == 1 begin
local empire = pc.get_empire()
local blueStone = game.get_event_flag("blueStone")
local redStone = game.get_event_flag("redStone")
local yellowStone = game.get_event_flag("yellowStone")
if empire == 3 and blueStone == 0 then
pc.warp(921600, 204800 )
set_state(information)
end
if empire == 2 and yellowStone == 0 then
pc.warp(0, 102400 )
set_state(information)
end
if empire == 1 and redStone == 0 then
pc.warp(409600, 896000 )
set_state(information)
else
timer("checkNationFirst", 2)
end
end
end
end