|
You last visited: Today at 06:37
Advertisement
Dungeon Problem
Discussion on Dungeon Problem within the Metin2 Private Server forum part of the Metin2 category.
07/14/2014, 19:35
|
#1
|
elite*gold: 0
Join Date: Feb 2008
Posts: 350
Received Thanks: 77
|
Dungeon Problem
Moin.
Kommen wir direkt zum Problem:
beim Flame und Snow_Dungeon wird man nicht vom NPC in den Dungeon geportet.
Map Index ist in der Game99 eingetragen, die syserr spuckt auch nichts aus und die Quests haben auch keine Fehler.
Client und Serverside ist alles am richtigen Platz, durch /warp kommt man auf die Maps, nur nicht durch den ollen Dungeonwärter.
Jemand n Plan?
|
|
|
07/14/2014, 20:57
|
#2
|
elite*gold: 205
Join Date: Jun 2010
Posts: 5,334
Received Thanks: 2,510
|
wenn du durch nen warp drauf kommst aber nicht per quest muss ja was an der quest koscha sein einmal quest posten dann kann man mehr sagen
|
|
|
07/14/2014, 21:05
|
#3
|
elite*gold: 0
Join Date: Feb 2008
Posts: 350
Received Thanks: 77
|
PHP Code:
quest snow_dungeon begin state start begin function get_settings() local snow_dungeon_settings = {} snow_dungeon_settings.map_index = 219 --Mapindex snow_dungeon_settings.base_cord = {5120, 1536} --Base Kordinaten snow_dungeon_settings.outside_entry_pos = {61,4321,1667} --Mapindex, Exit Position (Eisland) snow_dungeon_settings.need_level = 100 --Ab wann ist der Dungeon betretbar. snow_dungeon_settings.need_level_group = 100 --Benötigte Level für Gruppenmitglieder snow_dungeon_settings.WaitBeforOutAllOnExit = 60 --Wartezeit bevor alle alle herausteleportiert werden bei einem erfolgreichen Run. (Empfohlen 60) snow_dungeon_settings.NextJumpTime = 5 --Wann man zur nächsten ebene Gejumpt wird (timer) (Empfohlen 5) snow_dungeon_settings.DurationLoopTimer = 45 --Welchen intervall die Level und Missionen geprüft werden sollen. (Empfohlen 45) snow_dungeon_settings.wait_duration = 60*60*4 --Ab wann der Dungeon wieder betretbar ist (PartyLeader) snow_dungeon_settings.maxlife_time_on_dungeon = 60*60*1 --Maximale Zeit für den Dungeon. snow_dungeon_settings.DurationMaxOnReJoinGroup = 60*5 --Maximale Zeit innerhalb wann man wieder in die Gruppe joinen kann. snow_dungeon_settings.key_level_2 = 30331 --KeyVnum für die 2.Ebene --Frostschlüssel snow_dungeon_settings.NpcVnum_level_5 = 20398 --MobVnum von 5.Ebene --Würfel des Arktos snow_dungeon_settings.StoneCount_level_5 = 6 --Wie viele Würfel des Arktos sollen erscheinen? snow_dungeon_settings.Key_on_level_5 = 30332 --KeyVnum von 5.Ebene --Nordstern snow_dungeon_settings.StoneCords_level_5 = { {432,508},{437,493},{448,492},{448,476},{467,475},{466,464}, {462,450},{458,428},{446,439},{431,431},{415,416},{402,427}, {397,438},{375,434},{374,456},{390,468},{385,492},{402,505}, {404,489},{386,482} } --Positionen von Würfel des Arktos snow_dungeon_settings.MobVnum_level_6 = 8058 --MobVnum von 6.Ebene --Metin der Kälte snow_dungeon_settings.MobVnum_level_7 = 6151 --MobVnum von 7.Ebene --Szel snow_dungeon_settings.SzelCords_level_7 = { {752,499},{758,479},{772,452},{763,444},{750,451},{728,441}, {726,455},{718,482},{715,491},{731,473},{748,429} } --Positionen von Szel snow_dungeon_settings.Key_on_level_8 = 30333 --KeyVnum von 8.Ebene --Eisblumenschlüssel snow_dungeon_settings.NpcVnum_level_9 = 20399 --MobVnum von 9.Ebene --Säule des Norddrachen snow_dungeon_settings.BossVnumGroup = 6062 --GroupMobVnum vom Boss --(Group.txt) snow_dungeon_settings.BossVnum = 6191 --MobVnum von 10.Ebene --Nemere(6191) snow_dungeon_settings.Position_level_1 = {171,271} --Position ebene 1 --Startposition --Töte alle Monster auf dieser Ebene. snow_dungeon_settings.Position_level_2 = { 761,270 } --Position ebene 2 --Finde den richtigen Frostschlüssel, nur ein Schamane kann ihn benutzen. snow_dungeon_settings.Position_level_3 = { 187,491 } --Position ebene 3 --Töte alle Monster auf dieser Ebene. snow_dungeon_settings.Position_level_4 = { 421,259 } --Position ebene 4 --Töte alle Monster auf dieser Ebene. snow_dungeon_settings.Position_level_5 = { 419,530 } --Position ebene 5 --Öffnet die Siegel an den Würfel des Arktos in der richtigen Reihenfolge. (Zieht Nordstern auf die Würfel) snow_dungeon_settings.Position_level_6 = { 571,706 } --Position ebene 6 --Töte alle Monster auf dieser Ebene. Danach Zersöre den Metin der Kälte (Nur ein Schamane kann ihn Schaden) snow_dungeon_settings.Position_level_7 = { 746,534 } --Position ebene 7 --Töte alle Monster auf dieser Ebene und Szel snow_dungeon_settings.Position_level_8 = { 303,710 } --Position ebene 8 --Der Eisblumenschlüssel muss gedroppt werden, jedoch kann dieser nur von Schamanen und Ninja benutzt werden. snow_dungeon_settings.Position_level_9 = { 848,693 } --Position ebene 9 --Zerstört die Säule des Norddrachen. Nur Ninjas und Schamanen können ihm Schaden zufügen. snow_dungeon_settings.Position_level_10 = { 927,391 } --Position ebene 10 (BossZone) --Besiege Nemere, den König über Frost und Eis. snow_dungeon_settings.Enable_TestServerMode = false --Ob TestServer mode aktiviert ist. Wenn ja werden die Aufgaben schneller beendet. snow_dungeon_settings.IsNewga_me_re_vi_sion = true --Need ga_me_re_vi_sion 40301 return snow_dungeon_settings end function is_TestServerMode() local set = snow_dungeon.get_settings() return set.Enable_TestServerMode end function is_nemeres_dungeon() local set = snow_dungeon.get_settings() local map = pc.get_map_index() if map >= (set.map_index * 10000) and map < (set.map_index * 10000 + 9000) then return true else return false end end when 20395.chat."Deiner Gruppe wieder beitreten" with (party.is_party() and d.find(party.getf("ice_dungeon_map_index"))) begin local set = snow_dungeon.get_settings() local n = party.getf("ice_dungeon_map_index") local cord = set.base_cord local level = d.getf_from_map_index("level", n) --say("Aktuelles Dungeon Level deiner Gruppe: "..level.."") if level == 0 then say_npc_name() say("Deine Gruppe hat den Run bereits beendet.") return end if pc.getqf("out_party_time") < get_global_time() then say_npc() say("") say("Du hast länger als "..math.ceil(set.DurationMaxOnReJoinGroup /60) .." Minute(n) vor dem") say("Eisberg verweilt und kannst jetzt nicht") say("mehr eintreten.") return end if n == 0 then setskin(NOWINDOW) return else say_npc() say("") say("Möchtest du deiner Gruppe wieder beitreten?") if select("Ja","Nein") == 1 then local warp_to_level = set.Position_level_1 local level = d.getf_from_map_index("level", n) if level >= 1 and level <= 10 then if level == 1 then warp_to_level = set.Position_level_1 elseif level == 2 then warp_to_level = set.Position_level_2 elseif level == 3 then warp_to_level = set.Position_level_3 elseif level == 4 then warp_to_level = set.Position_level_4 elseif level == 5 then warp_to_level = set.Position_level_5 elseif level == 6 then warp_to_level = set.Position_level_6 elseif level == 7 then warp_to_level = set.Position_level_7 elseif level == 8 then warp_to_level = set.Position_level_8 elseif level == 9 then warp_to_level = set.Position_level_9 elseif level == 10 then warp_to_level = set.Position_level_10 end pc.warp((cord[1] + warp_to_level[1])*100,(cord[2] + warp_to_level[2])*100,n) else return end end end end when 20395.chat."Nemeres Warte" begin local set = snow_dungeon.get_settings() local need_level = set.need_level say_npc() say("") say("Willst du mit deiner Gruppe wirklich die") say("Nemeres Warte betreten?") if select("Ja, wir wollen eintreten!","Nein, uns ist es zu kalt dort...") == 2 then return end if (pc.is_gm() and pc.getf("snow_dungeon","duration") >= get_global_time()) then say("Your are GameMaster, remove the duration?") if select("Yes","No") == 1 then pc.setf("snow_dungeon","duration",0) return end end if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then say("TestServer Mode is enable.") say("Join now") timer("make_dungeon",3) return end if not party.is_leader() then say_npc() say("Ich schätze deinen Mut, doch alleine wirst du in") say("der Nemres-Warte in dein Verderben rennen.") say("Stelle eine starke Gruppe zusammen und ich werde") say("dir Einlass gewähren.") return end if pc.get_level() < need_level then say("Ihr braucht mindestens level "..need_level.."") say("um diesen Dungeon betreten zu können.") return end if pc.getf("snow_dungeon","duration") >= get_global_time() then say_npc() say("Die Wartezeit für den Wiedereintritt in die") say("Nemeres-Warte ist noch nicht abgelaufen. ") say("Verb. Zeit: "..LIB_duration(pc.getf("snow_dungeon","duration") - get_global_time()).."") return end if snow_dungeon._CheckMembersLevel() == false then return else timer("make_dungeon",2) end end when 20397.chat."Die Schlacht beginnen" begin --Eisiger Löwe say_npc() say("") say("Sicher das ihr anfangen wollt?") if select("Ja","Nein, lieber doch nicht") == 1 then local set = snow_dungeon.get_settings() local loop_durr = set.DurationLoopTimer local wait_durations = set.wait_duration local t = get_global_time() d.setf("LastTimeGetOutPut",0) server_loop_timer("CheckLevelAndCountKillOnMobs",loop_durr,d.get_map_index()) d.regen_file("data/dungeon/ice_dungeon/zone_1.txt") d.setf("Start_Time",t + set.maxlife_time_on_dungeon) server_timer("Jp_OutAllFailNotice",(t + set.maxlife_time_on_dungeon) - t,d.get_map_index()) --pc.setqf("duration",t + wait_durations) d.setqf2("snow_dungeon","duration",t + wait_durations) d.setf("level",1) d.notice("Die ersten Monster erscheinen, tötet alle um in den nächsten Stock zu gelangen.") npc.purge() snow_dungeon._GetLastTime() end setskin(NOWINDOW) end when make_dungeon.timer begin local set = snow_dungeon.get_settings() local cord = set.base_cord local start_pos = set.Position_level_1 local t = get_global_time() d.new_jump_party(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2])) --d.new_jump_all(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2])) snow_dungeon._ClearAlls() d.setf("party_leader_pid",party.get_leader_pid()) party.setf("ice_dungeon_map_index",d.get_map_index()) d.spawn_mob_dir(20397, 173,262,1) --Eisiger Löwe end function _ClearAlls() local d_index = d.get_map_index() clear_server_timer("CheckLevelAndCountKillOnMobs",d_index) clear_server_timer("Jp_1",d_index) clear_server_timer("Jp_2",d_index) clear_server_timer("Jp_3",d_index) clear_server_timer("Jp_4",d_index) clear_server_timer("Jp_5",d_index) clear_server_timer("Jp_6",d_index) clear_server_timer("Jp_7",d_index) clear_server_timer("Jp_8",d_index) clear_server_timer("Jp_9",d_index) clear_server_timer("Jp_10",d_index) clear_server_timer("Jp_OutAll",d_index) clear_server_timer("Jp_OutAllFail",d_index) clear_server_timer("Jp_OutAllFailNotice",d_index) d.setf("level",0) d.setf("party_leader_pid",0) d.setf("Start_Time",0) d.setf("LastTimeGetOutPut",0) d.setf("Stone_5_count",0) d.setf("Stone_5_item_fail",0) d.clear_regen() d.kill_all() end function _CheckMembersLevel() local set = snow_dungeon.get_settings() local user_fail_level = {} local pids = {party.get_member_pids()} local need_level = set.need_level_group local have_ninja = false local have_shaman = false for i = 1, table.getn(pids), 1 do q.begin_other_pc_block(pids[i]) if pc.get_level() < need_level then table.insert(user_fail_level, table.getn(user_fail_level) +1, pc.get_name()) end local job = pc.get_job() if job == 1 -- Ninja weiblich or job == 5 --Ninja männlich then have_ninja = true end if job == 3 -- Schamane weiblich or job == 7 --Schamane männlich then have_shaman = true end q.end_other_pc_block() end if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then --dchat("TestServer Mode is enable.") return true end if have_ninja == false then say("Ihr könnt diesen Dungeon nicht ohnen einen") say("Ninja betreten.") return false end if have_shaman == false then say("Ihr könnt diesen Dungeon nicht ohnen einen") say("Schamanen betreten.") return false end if table.getn(user_fail_level) >= 1 then say_npc() say("") say("Einige Mitglieder einer Gruppe haben das") say("Level "..need_level.." noch nicht erreicht:") for x = 1, table.getn(user_fail_level), 1 do say(color(1,1,0), " "..user_fail_level[x]) end return false end if table.getn(user_fail_level) == 0 then return true end end when logout begin if snow_dungeon.is_nemeres_dungeon() == true then local set = snow_dungeon.get_settings() pc.setqf("out_party_time",get_global_time() + set.DurationMaxOnReJoinGroup) --snow_dungeon.unregister_name() end end when login begin if snow_dungeon.is_nemeres_dungeon() == true then local set = snow_dungeon.get_settings() local backk = set.outside_entry_pos pc.set_warp_location(backk[1], backk[2],backk[3]) if d.getf("party_leader_pid") != party.get_leader_pid() then chat("nemeres_wait_dungeon #RAUS:# Outside, your Group is not on this Dungeon") chat("nemeres_wait_dungeon #RAUS:#debug -> "..d.getf("party_leader_pid").." != "..party.get_leader_pid().."") d.exit() return end if pc.get_level() < set.need_level_group then chat("nemeres_wait_dungeon #RAUS:# My level is low") d.exit() return end --chat("Willkommen im Nemeres Warte, Ihr habt "..math.ceil((d.getf("Start_Time") - get_global_time()) /60) .." Minuten Zeit.") --notice("Tötet alle Monster auf dieser Ebene um in den nächsten Stock zu gelangen.") --snow_dungeon._GetLastTime() end end function _GetLastTime() local c = get_global_time() local t = d.getf("Start_Time") - c local o = d.getf("LastTimeGetOutPut") --d.notice("CurrentTime: "..c.." Last: "..o.."") if c >= o then if t >= 60 then d.notice("Euch verbleiben ca "..math.ceil(t / 60).." Minute(n).") else d.notice("Euch verbleiben "..t .." Sekunde(n).") end if t >= (60*10) then d.setf("LastTimeGetOutPut",c + 60*5) elseif t >= (60*5) then d.setf("LastTimeGetOutPut",c + 60*2) else d.setf("LastTimeGetOutPut",c + 10) end --d.setf("LastTimeGetOutPut",c + 60*number(3,5)) -- Random end end when Jp_OutAllFailNotice.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Zeit ist abgelaufen.") server_timer("Jp_OutAll",1,d.get_map_index()) end end when CheckLevelAndCountKillOnMobs.server_timer begin if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local level = d.getf("level") local mob_count = d.count_monster() local next_jump_time = set.NextJumpTime --d.notice("level: "..level.." mob_count: "..mob_count.."") if level == 1 and mob_count <= 0 then d.notice("Ihr habt alle Monster besiegt, in wenigen Sekunden geht es in den nächsten Stock.") d.notice("") server_timer("Jp_2",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.set_regen_file("data/dungeon/ice_dungeon/zone_2.txt") elseif level == 3 and mob_count <= 0 then d.notice("Ihr habt alle Monster besiegt, in wenigen Sekunden geht es in den nächsten Stock.") d.notice("") server_timer("Jp_4",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_4.txt") elseif level == 4 and mob_count <= 0 then d.notice("Ihr habt alle Monster besiegt, in wenigen Sekunden geht es in den nächsten Stock.") d.notice("") server_timer("Jp_5",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.set_regen_file("data/dungeon/ice_dungeon/zone_5.txt") elseif level == 6 and mob_count <= 0 then local MobStonelvl6 = set.MobVnum_level_6 d.notice("Ihr habt alle Monster besiegt, Der "..mob_name(MobStonelvl6).." erscheint.") d.notice("") d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_6.txt") d.spawn_mob(MobStonelvl6,570,649) elseif level == 7 and mob_count <= 0 then d.notice("Ihr habt alle Monster besiegt, in wenigen Sekunden geht es in den nächsten Stock.") d.notice("") server_timer("Jp_8",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.set_regen_file("data/dungeon/ice_dungeon/zone_8.txt") end snow_dungeon._GetLastTime() end end
when Jp_2.server_timer begin --Jump Level 2 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.key_level_2 d.setf("level",2) local cord = set.base_cord local pos = set.Position_level_2 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("findet den richtigen "..item_name(v).." um weiter zu gelangen.") d.notice("") end end when 30331.use with snow_dungeon.is_nemeres_dungeon() == true begin --key_level_2 local set = snow_dungeon.get_settings() local next_jump_time = set.NextJumpTime local job = pc.get_job() local level = d.getf("level") if level == 2 then if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then --dchat("SET VARIABLE JOB 3") job = 3 end if job == 3 -- Schamane weiblich or job == 7 --Schamane männlich then if number(1,3) == 1 then --or d.count_monster() < 10 then d.notice("Der Richtige Schlüssel wurde gefunden, in wenigen Sekunden geht es in den nächsten Stock.") server_timer("Jp_3",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_3.txt") item.remove() else d.notice("Das war der Falsche Schlüssel.") item.remove() end else d.notice("Nur Schamanen können ihn benutzen.") return end end end when Jp_3.server_timer begin --Jump Level 3 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() d.setf("level",3) local cord_MQ = set.base_cord local pos = set.Position_level_3 d.jump_all((cord_MQ[1] + pos[1]), (cord_MQ[2] + pos[2])) d.notice("Tötet alle Monster auf dieser Ebene um in den nächsten Stock zu gelangen.") end end when Jp_4.server_timer begin --Jump Level 4 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() d.setf("level",4) local cord = set.base_cord local pos = set.Position_level_4 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Tötet alle Monster auf dieser Ebene um in den nächsten Stock zu gelangen.") end end when Jp_5.server_timer begin --Jump Level 5 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.NpcVnum_level_5 d.setf("level",5) local cord = set.base_cord local pos = set.Position_level_5 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Öffnet die Siegel an den "..mob_name(v).." in der richtigen Reihenfolge.") if set.IsNewga_me_re_vi_sion == true then d.notice("Die Schlüssel lassen die Monster fallen...") else d.notice("Die Schlüssel landen automatisch ins Inventar...") end snow_dungeon._Create_Stones_level5() end end function _DropKeyOnLevel5() if number(1,1000) >= 666 then --Abbruch der weiteren funtion -> Damit es spannend bleibt bei den würfeln... :P return end local set = snow_dungeon.get_settings() local count = set.StoneCount_level_5 local vnum = set.Key_on_level_5 local get_random_unique = d.get_unique_vid("stone5_"..number(1,count).."") local fail_count = d.getf("Stone_5_item_fail") +1 local search = d.getf("Stone_5_count") local search2 = d.get_unique_vid("stone5_"..search.."") if search2 != get_random_unique then d.setf("Stone_5_item_fail",fail_count) end -- if set.IsNewga_me_re_vi_sion == true then --New function game.drop_item_and_select(vnum,1) else pc.give_item2_select(vnum,1) end --dchat("Creaty Key fail_count: "..fail_count.."") if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then --Wenn TestServer Modus item.set_socket(1,search2) d.setf("Stone_5_item_fail",0) elseif fail_count > 6 then --Wenn mehr wie x mal nicht richtig erstellt wird, dann kommt der richtige Key item.set_socket(1,search2) d.setf("Stone_5_item_fail",0) else item.set_socket(1,get_random_unique) end end function _Create_Stones_level5() local set = snow_dungeon.get_settings() local stone_level5_count_MQ = set.StoneCount_level_5 local c = set.StoneCords_level_5 --{ {432,508},{437,493},{448,492},{448,476},{467,475},{466,464}} local v = set.NpcVnum_level_5 for i = 1, stone_level5_count_MQ, 1 do local n = number(1,table.getn(c)) --d.spawn_mob(20398, c[n][1], c[n][2]) d.set_unique("stone5_"..i.."", d.spawn_mob(v, c[n][1], c[n][2])) --d.set_unique("stone5_"..i.."", mob.spawn(20398, c[n][1], c[n][2],1,1,1)) --GEHT --d.set_unique("stone5_"..i.."", d.spawn_mob_ac_dir(20398, c[n][1], c[n][2],i)) --GEHT table.remove(c,n) if i == 1 then d.setf("Stone_5_count",1) d.setf("Stone_5_item_fail",0) end end end when 20398.take begin --NpcVnum_level_5 if snow_dungeon.is_nemeres_dungeon() == true then local set = snow_dungeon.get_settings() local stone_level5_count = set.StoneCount_level_5 local next_jump_time = set.NextJumpTime local vnum = item.get_vnum() local key_level_5 = set.Key_on_level_5 --30332 local unique_item = item.get_socket(1) --dchat("unique_item: "..unique_item.."") if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then d.notice("TESTSERVERMODE, in wenigen Sekunden geht es in den nächsten Stock.") npc.purge() item.remove() server_timer("Jp_6",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_6.txt") return end if vnum == key_level_5 then local npc_vid = npc.get_vid() local search = d.getf("Stone_5_count") local search2 = d.get_unique_vid("stone5_"..search.."") --dchat("npc_vid: "..npc_vid.." search:"..search.." search2:"..search2.." ") if npc_vid == search2 then if unique_item == npc_vid then local new = search +1 if new > stone_level5_count then d.notice("Der Letzte Stein wurde richtig endeckt, in wenigen Sekunden geht es in den nächsten Stock.") npc.purge() item.remove() server_timer("Jp_6",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_6.txt") else d.notice("Der "..search..".Stein wurde endeckt. Es müssen noch weitere ".. stone_level5_count - search .." Steine in der richtigen Reihenfolge gefunden werden.") npc.purge() item.remove() end d.setf("Stone_5_count",new) else chat("Das ist zwar der richtige Stein, aber der falsche Schlüssel.") item.remove() end else chat("Das ist nicht der richtige Stein.") end end end --if is dungeon end end --when end when Jp_6.server_timer begin --Jump Level 6 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.MobVnum_level_6 d.setf("level",6) local cord = set.base_cord local pos = set.Position_level_6 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Ihr habt alle Monster getötet. Tötet alle Monster und zerstört den "..mob_name(v).."") d.notice("Nur Schamanen können ihm Schaden hinzufügen.") --d.spawn_mob(v,570,649) end end when Jp_7.server_timer begin --Jump Level 7 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.MobVnum_level_7 d.setf("level",7) local cord = set.base_cord local pos = set.Position_level_7 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Ihr habt den Metinstein Erfolgreich zerstört nun Tötet alle Monster und "..mob_name(v)..".") end end when Jp_8.server_timer begin --Jump Level 8 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.Key_on_level_8 d.setf("level",8) local cord = set.base_cord local pos = set.Position_level_8 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Tötet solange Monster bis ihr "..item_name(v).." Habt.") d.notice("Aber nur Schamanen und Ninjas können ihn benutzen.") end end when 30333.use with snow_dungeon.is_nemeres_dungeon() == true begin --Key_on_level_8 local set = snow_dungeon.get_settings() local next_jump_time = set.NextJumpTime local level = d.getf("level") local job = pc.get_job() if level == 8 then if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then --dchat("SET VARIABLE JOB 3") job = 3 end if job == 1 -- Ninja weiblich or job == 5 --Ninja männlich or job == 3 -- Schamane weiblich or job == 7 --Schamane männlich then if number(1,3) == 1 then d.notice("Der Richtige Schlüssel wurde gefunden, in wenigen Sekunden geht es in den nächsten Stock.") server_timer("Jp_9",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_9.txt") item.remove() else d.notice("Das war der Falsche Schlüssel.") item.remove() end else d.notice("Nur Schamanen und Ninja können das benutzen.") return end end end when Jp_9.server_timer begin --Jump Level 9 if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.NpcVnum_level_9 d.setf("level",9) local cord = set.base_cord local pos = set.Position_level_9 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Zerstört die "..mob_name(v).." ") d.notice("Aber nur Schamanen und Ninjas können ihn schanden zufügen.") d.notice("") d.spawn_mob(v,849,655) end end when Jp_Boss.server_timer begin --Jump Level BossZone if d.select(get_server_timer_arg()) then local set = snow_dungeon.get_settings() local v = set.BossVnum d.setf("level",10) local cord = set.base_cord local pos = set.Position_level_10 d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2])) d.notice("Besiegt "..mob_name(v)..", den König über Frost und Eis.") end end when kill begin if snow_dungeon.is_nemeres_dungeon() == true then local set = snow_dungeon.get_settings() local next_jump_time = set.NextJumpTime local level = d.getf("level") local stone_level_6 = set.MobVnum_level_6 local stone_level_9 = set.NpcVnum_level_9 local boss_vnum = set.BossVnum local wait_time = set.WaitBeforOutAllOnExit local mobvnum = npc.get_race() --dchat("nemeres_wait_dungeon MobVnum = "..mobvnum.."") if level == 2 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,10) then local v = set.key_level_2 game.drop_item(v,1) elseif level == 5 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,15) then snow_dungeon._DropKeyOnLevel5() elseif level == 6 and mobvnum == stone_level_6 then d.notice("Der "..mob_name(stone_level_6).." wurde zerstört, in wenigen Sekunden geht es in den nächsten Stock.") d.notice("") server_timer("Jp_7",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_7.txt") --Szel local v_MQv = set.MobVnum_level_7 local c = set.SzelCords_level_7 local n = number(1,table.getn(c)) d.spawn_mob(v_MQv, c[n][1], c[n][2]) elseif level == 8 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,10) then local v = set.Key_on_level_8 game.drop_item(v,1) elseif level == 9 and mobvnum == stone_level_9 then d.notice("Der "..mob_name(stone_level_9).." wurde zerstört, in wenigen Sekunden geht es in den nächsten Stock.") server_timer("Jp_Boss",next_jump_time,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_boss.txt") local v = set.BossVnumGroup d.spawn_group(v, 928, 335, 5 ,1, 1) -- (Input from SRC: argument: vnum,x,y,radius,aggressive,count) elseif level == 10 and mobvnum == boss_vnum then d.clear_regen() d.kill_all() d.notice("Ihr habt "..mob_name(boss_vnum).." besiegt. In "..wait_time.." Sekunden werden alle hinausteleportiert.") server_timer("Jp_OutAll",wait_time,d.get_map_index()) end end end when Jp_OutAll.server_timer begin --Jump Out Bye bye ;D if d.select(get_server_timer_arg()) then snow_dungeon._ExitAll() end end function _ExitAll() d.exit_all() end end end
quest is von risan, ich würde mal behaupten dass der keine fehler in seiner eigenen quest hat
#EDIT: haben den index und die cords mal in die DT quest eingebaut.
eiglt sollte er nachdem der metin kaputt is in den dungeon porten, tut er aber nicht.
vllt hilft dir die info bissle weiter
|
|
|
07/14/2014, 23:25
|
#4
|
elite*gold: 205
Join Date: Jun 2010
Posts: 5,334
Received Thanks: 2,510
|
Wenn du alles ordentlich angepasst hast kann cih auch kein fehler finden
|
|
|
07/15/2014, 16:20
|
#5
|
elite*gold: 0
Join Date: Feb 2008
Posts: 350
Received Thanks: 77
|
wie gesagt, haben es mit dem dt script ausprobiert und selbst da portet er einen nicht in den dungeon.
iwas läuft da gewaltig schief
|
|
|
07/17/2014, 16:20
|
#6
|
elite*gold: 0
Join Date: Feb 2008
Posts: 350
Received Thanks: 77
|
#push -.-
|
|
|
07/18/2014, 16:37
|
#7
|
elite*gold: 0
Join Date: Feb 2008
Posts: 350
Received Thanks: 77
|
#push
kann doch nicht sein dass nur gammlige egoisten in diesem board unterwegs sind!
|
|
|
07/18/2014, 18:20
|
#8
|
elite*gold: 20
Join Date: Mar 2010
Posts: 1,166
Received Thanks: 684
|
du kannst per d.jump_all bzw welche Dungeoneinleitungsfunktion du auch benutzt, nur auf maps im selben core
|
|
|
07/18/2014, 21:37
|
#9
|
elite*gold: 0
Join Date: Feb 2008
Posts: 350
Received Thanks: 77
|
ich verbeuge mich vor dich, wenigstens einer der was damit anfangen kann! <3
|
|
|
 |
Similar Threads
|
Dungeon Problem :S
04/13/2012 - Metin2 Private Server - 8 Replies
Hey Amigo´s,
Folgendes Problem.
Bis vor wenigen hat alles perfekt funktioniert, doch
dann eines Tages gingen 2 Dungeon Quests nicht !!
Quest 1.
Bei der Einen wurde ich erst erst in der zweiten Ebene geportet als
ich dann das Mob gekillt wo ich eigentlich weiter geportet wurde funzte
es nicht. Jetzt ist es schlimmer geworden sobald ich die erste Ebene
|
Dungeon Problem
10/27/2011 - Flyff Private Server - 7 Replies
Haiho,
ich wollte mal fragen an was mein Dungeon Problem liegen könnte, und zwar habe ich eingestellt das man mit 150 Hero / Master oder Normal in die Animus Dungeon kann ... nur leider funzt das nicht
ihr müsst dazu wissen das ich die 3rd habe! Wenn ich mich nämlich 150 Ringmaster mache kann ich rein
hier mal meine PartyDungeon.lua
------------------------------------------------- -------------------
-- ÃʱâÈ* -------------------------------------------------- --------
|
problem mit dungeon/run map
08/30/2011 - Metin2 Private Server - 0 Replies
Heyho com.
Ich frag mich derzeit obs mit den dungeons auch was mit de rmap zutun hat,
weil,das ist ja der normale dungeon befehl zum starten
d.new_jump_all(100,1111,1111)
d.new_jump(100,1111,1111)
|
[HELP] Dungeon Problem
11/12/2010 - Grand Chase - 5 Replies
Please help me... when im in dungeon and doing a quest, when i started killing monsters, no coins and boxes coming out from them.. even when i finished the dungeon, in 4 treasure choices, i can't click any of them until the time rans out and automatically chooses the #1 box.. i tried the possible solutions, reformatting my pc, download and reinstall the game, copy~paste method.. but it doesnt work.. here is my screenshot..
...
|
Dungeon Map Problem
05/18/2008 - Perfect World - 0 Replies
Hey, I want reset Dungeon Map Without Party, Can you help me???:)
|
All times are GMT +1. The time now is 06:39.
|
|