Management Karbust 4884 Posted July 9, 2017 Management Share Posted July 9, 2017 Hello, I'm testing the snow dungeon on my server, but the core crashes after I finish 4th floor, anyone knows why? Thank you Link to comment Share on other sites More sharing options...
Premium Syreldar 1875 Posted July 10, 2017 Premium Share Posted July 10, 2017 No one has the magic sphere i think.,.give us the quest/libraries/whatever so we can see what causes the error. "Nothing's free in this life. Ignorant people have an obligation to make up for their ignorance by paying those who help them. Either you got the brains or cash, if you lack both you're useless." Syreldar Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 10, 2017 Author Management Share Posted July 10, 2017 Spoiler --[[ -- Nemeres Warte (Snow Dungeon) -- lvl 100 -- Copyright CZymos/Risan -- Version 2.0 -- Create: 08.06.2014 -- Need GameRevision: 40250 -- INFO: GameRevision 40301 oder P40301 wird benötigt für: MobVnum 8058 kann nur Schamanen DMG anfügen. MobVnum 20399 kann nur Schamanen und Ninja DMG anfügen. Neue Questfuntion: drop_item_and_select() ersetzt pc.give_item2_select(). ]] quest snow_dungeon begin state start begin when 9010.chat."Spawn Statue" with snow_dungeon.is_nemeres_dungeon() == true begin d.purge() d.spawn_mob_dir(20397, 173,262,1) setskin(NOWINDOW) end when 9010.chat."TESTSERVER: SnowD Jump level 9" with snow_dungeon.is_nemeres_dungeon() == true begin local set = snow_dungeon.get_settings() d.notice("Der Richtige Schlüssel wurde gefunden, in wenigen Sekunden geht es in den nächsten Stock.") server_timer("Jp_9",6,d.get_map_index()) d.clear_regen() d.kill_all() d.regen_file("data/dungeon/ice_dungeon/zone_9.txt") setskin(NOWINDOW) end when 9010.chat."TESTSERVER: SnowD Jump level 10" with snow_dungeon.is_nemeres_dungeon() == true begin local set = snow_dungeon.get_settings() server_timer("Jp_Boss",3,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) setskin(NOWINDOW) end when 9010.chat."TESTSERVER: SnowD Spawn Boss" with snow_dungeon.is_nemeres_dungeon() == true begin local set = snow_dungeon.get_settings() local v = set.BossVnumGroup d.spawn_group(v, 928, 335, 5 ,1, 1) -- (INFO from SRC: argument: vnum,x,y,radius,aggressive,count) end when 9010.chat."TESTSERVER: SnowD Ending" with snow_dungeon.is_nemeres_dungeon() == true begin server_timer("Jp_OutAll",5,d.get_map_index()) say("done") end -- when 30331.use begin --key_level_2 -- LIB_writelog("{"..pc.get_local_x()..","..pc.get_local_y().."}",3,"snowcordis.txt") -- d.spawn_mob(20399, pc.get_local_x(), pc.get_local_y()) -- chat("write north star coordinates") -- end when 9010.chat."TESTSERVER: SnowD Spawn create Cords Test level 5" with snow_dungeon.is_nemeres_dungeon() == true begin snow_dungeon._Create_Stones_level5() setskin(NOWINDOW) end when 9010.chat."TESTSERVER: SnowD Create Key level 5" with snow_dungeon.is_nemeres_dungeon() == true begin snow_dungeon._DropKeyOnLevel5() setskin(NOWINDOW) end when 9010.chat."TESTSERVER: SnowD Get cord from Level" with snow_dungeon.is_nemeres_dungeon() == true begin local set = snow_dungeon.get_settings() local warp_to_level = set.Position_level_1 local level = 2 say("old: x: "..warp_to_level[1].." y:"..warp_to_level[2].."") local warp_to_level = set. _G[ "Position_level_"..level ] say("new: x: "..warp_to_level[1].." y:"..warp_to_level[2].."") --DONT WORKS! end function get_settings() local snow_dungeon_settings = {} snow_dungeon_settings.map_index = 352 --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 = true --Ob TestServer mode aktiviert ist. Wenn ja werden die Aufgaben schneller beendet. snow_dungeon_settings.IsNewGameRevision = true --Need GameRevision 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."Join your group again" 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("News Dungeon Level your group: "..level.."") if level == 0 then say_npc() say("Your group has already completed the run.") return end if pc.getqf("out_party_time") < get_global_time() then say_npc() say("") say("You have more than "..math.ceil(set.DurationMaxOnReJoinGroup /60) .." Minute(a) vor dem") say("the iceberg lingers and now can no longer occur.") say(" ") return end if n == 0 then setskin(NOWINDOW) return else say_npc() say("") say("Would you like to join your group again?") 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 waiting" begin local set = snow_dungeon.get_settings() local need_level = set.need_level say_npc() say("") say("Do you really want with your group the ") say("Nemeres waiting to enter?") if select("Yes, we want to enter! "," No, us it is too cold there ...") == 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 snow_dungeon.is_TestServerMode() == true then --(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("I appreciate your courage, but alone you will ") say("run into the Nemres waiting in your ruin.") say("Place a strong group together and I will ") say("grant you admission.") return end if pc.get_level() < need_level then say("You need at least level "..need_level.."") say("to this dungeon to enter.") return end if pc.getf("snow_dungeon","duration") >= get_global_time() then say_npc() say("The waiting time for re-entry into the ") say("Nemeres-Warte has not yet expired. ") say("Verb. time: "..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."The battle begin" begin --Eisiger Löwe say_npc() say("") say("Surely that want to start it?") if select("Yed","No, Maby Later") == 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("The first monsters appear, kill all to get to the next floor.") 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("You can not enter this dungeon without a Ninja.") say("") return false end if have_shaman == false then say("You can not enter this dungeon without a Mage.") say("") return false end if table.getn(user_fail_level) >= 1 then say_npc() say("") say("Some members of a group have not ") say("reached Level "..need_level..":") 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("Welcome to Nemeres waiting, you have "..math.ceil((d.getf("Start_Time") - get_global_time()) /60) .." Minutes Time.") --notice("Kill all the monsters on this level to get to the next floor.") --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("Your Remain "..math.ceil(t / 60).." Minute(s).") else d.notice("Your Remain "..t .." Second(s).") 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("Time has elapsed.") 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("You have all the monsters defeated, [ENTER] in a few seconds it goes to the next floor.") 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("You have all the monsters defeated, [ENTER] in a few seconds it goes to the next floor.") 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("You have all the monsters defeated, [ENTER] in a few seconds it goes to the next floor.") 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("You have all the monsters defeated, [ENTER] The "..mob_name(MobStonelvl6).." appears..") 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("You have all the monsters defeated, [ENTER] in a few seconds it goes to the next floor.") 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("finds the right "..item_name(v).." to get to on.") 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("The correct key has been found in a [ENTER] few seconds it goes to the next floor.") 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("That was the wrong key.") item.remove() end else d.notice("Only Mage can use it.") 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("Kill all the monsters on this level [ENTER] to get to the next floor.") 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("Kill all the monsters on this level[ENTER] to get to the next floor.") 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("Opens the seals on the "..mob_name(v).." right in the order.") if set.IsNewGameRevision == true then d.notice("The key to drop the monster ...") else d.notice("The key land automatically into your inventory ...") 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.IsNewGameRevision == 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.getnC) --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 a few seconds it goes to the next floor.") 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("The last stone was endeckt properly in a few seconds it goes to the next floor.") 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("The "..search..". Find was made. [ENTER]It must further ".. stone_level5_count - search .." stones found in the correct order.") npc.purge() item.remove() end d.setf("Stone_5_count",new) else chat("Although this is the correct stone, but the wrong key.") item.remove() end else chat("This is not the right stone.") 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("You killed all the monsters. [ENTER]Kill all the monsters and destroy the "..mob_name(v).."") d.notice("Only Mage can add him harm.") --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("You have the Metin Stone Successfully Kill now [ENTER]destroyed all the monsters and "..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("Kill monsters to her as long "..item_name(v).." have.") d.notice("But only Mage and Ninjas can use it.") 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("The correct key has been found in a few seconds[ENTER] it goes to the next floor.") 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("That was the wrong key.") item.remove() end else d.notice("Only Mage and Ninja can use.") 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("Destroy the "..mob_name(v).." ") d.notice("But only Mage and Ninjas can add him naught.") 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("Defeated "..mob_name(v)..", the king of frost and ice.") 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("The "..mob_name(stone_level_6).." was destroyed, in a few seconds it goes to the next floor.") 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.getnC) 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("The "..mob_name(stone_level_9).." was destroyed, in a few seconds it goes to the next floor.") 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("You defeated "..mob_name(boss_vnum).." . In "..wait_time.." seconds all be teleported.") 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 I'm using the original quest... I tested with snow_dungeon_settings.Enable_TestServerMode = false, but when I kill 1 round at 4th floor nothing happens, with true, I managed to get the message that I killed everything but I don't get moved to the 5th floor, the core crashes... Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 15, 2017 Author Management Share Posted July 15, 2017 BUMP Link to comment Share on other sites More sharing options...
Den 46 Posted July 15, 2017 Share Posted July 15, 2017 Try this and paste debug info here. Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 16, 2017 Author Management Share Posted July 16, 2017 gdb /usr/home/game/share/bin/game /usr/home/game/cores/channel1/game2/game.core GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "amd64-marcel-freebsd"...Dwarf Error: wrong version in compilation unit header (is 4, should be 2) [in module /usr/home/game/share/bin/game] "/usr/home/game/cores/channel1/game2/game.core" is not a core dump: File format is ambiguous (gdb) Link to comment Share on other sites More sharing options...
Den 46 Posted July 16, 2017 Share Posted July 16, 2017 1 hour ago, charparodar said: gdb /usr/home/game/share/bin/game /usr/home/game/cores/channel1/game2/game.core GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "amd64-marcel-freebsd"...Dwarf Error: wrong version in compilation unit header (is 4, should be 2) [in module /usr/home/game/share/bin/game] "/usr/home/game/cores/channel1/game2/game.core" is not a core dump: File format is ambiguous (gdb) Use it like this: set gnutarget i386-marcel-freebsd file /usr/home/game/share/bin/game core /usr/home/game/cores/channel1/game2/game.core bt full Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 16, 2017 Author Management Share Posted July 16, 2017 3 minutes ago, Den said: Use it like this: set gnutarget i386-marcel-freebsd file /usr/home/game/share/bin/game core /usr/home/game/cores/channel1/game2/game.core bt full # set gnutarget i386-marcel-freebsd set: Variable name must contain alphanumeric characters. Link to comment Share on other sites More sharing options...
Den 46 Posted July 16, 2017 Share Posted July 16, 2017 3 minutes ago, charparodar said: # set gnutarget i386-marcel-freebsd set: Variable name must contain alphanumeric characters. First enter gdb then type what I wrote above. Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 16, 2017 Author Management Share Posted July 16, 2017 18 minutes ago, Den said: First enter gdb then type what I wrote above. # gdb /usr/home/game/share/bin/game /usr/ho me/game/cores/channel1/game2/game.core GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "amd64-marcel-freebsd"...Dwarf Error: wrong version i n compilation unit header (is 4, should be 2) [in module /usr/home/game/share/bi n/game] "/usr/home/game/cores/channel1/game2/game.core" is not a core dump: File format is ambiguous (gdb) set gnutarget i386-marcel-freebsd (gdb) file /usr/home/game/share/bin/game Reading symbols from /usr/home/game/share/bin/game...Dwarf Error: wrong version in compilation unit header (is 4, should be 2) [in module /usr/home/game/share/bin/game] (gdb) core /usr/home/game/cores/channel1/game2/game.core Core was generated by `game'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/local/lib32/metin2/libmd.so.5...(no debugging symbols found)...done. Loaded symbols for /usr/local/lib32/metin2/libmd.so.5 Reading symbols from /usr/local/lib32/metin2/liblzo2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/local/lib32/metin2/liblzo2.so.2 Reading symbols from /usr/local/lib32/metin2/libstdc++.so.6...Error while reading shared library symbols: Dwarf Error: wrong version in compilation unit header (is 4, should be 2) [in module /usr/local/lib32/metin2/libstdc++.so.6] Reading symbols from /usr/lib32/libm.so.5...(no debugging symbols found)...done. Loaded symbols for /usr/lib32/libm.so.5 Reading symbols from /usr/lib32/libgcc_s.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib32/libgcc_s.so.1 Reading symbols from /usr/lib32/libthr.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib32/libthr.so.3 Reading symbols from /usr/lib32/libc.so.7...(no debugging symbols found)...done. Loaded symbols for /usr/lib32/libc.so.7 Reading symbols from /libexec/ld-elf32.so.1...(no debugging symbols found)...done. Loaded symbols for /libexec/ld-elf32.so.1 #0 0x081eae57 in ?? () [New Thread 290030b429003f80 (LWP 100322/<unknown>)] [New Thread 287bc5e429003d00 (LWP 100321/<unknown>)] [New Thread 29003fb429003a80 (LWP 100320/<unknown>)] [New Thread 29003d3429003080 (LWP 100314/<unknown>)] Cannot find new threads: generic error (gdb) bt full #0 0x081eae57 in ?? () No symbol table info available. #1 0x291c7780 in ?? () No symbol table info available. #2 0x290ee000 in ?? () No symbol table info available. #3 0x0000000c in ?? () No symbol table info available. #4 0x286bafdb in ?? () from /usr/local/lib32/metin2/libstdc++.so.6 No symbol table info available. #5 0x5c81ee40 in ?? () No symbol table info available. #6 0x00000006 in ?? () No symbol table info available. #7 0xffffb1bc in ?? () No symbol table info available. #8 0x0c2d00ae in ?? () No symbol table info available. #9 0x00060000 in ?? () No symbol table info available. #10 0x291c7780 in ?? () No symbol table info available. #11 0x28766000 in ?? () from /usr/local/lib32/metin2/libst Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 26, 2017 Author Management Share Posted July 26, 2017 BUMP Link to comment Share on other sites More sharing options...
Management Karbust 4884 Posted July 29, 2017 Author Management Share Posted July 29, 2017 BUMP Link to comment Share on other sites More sharing options...
ElBrujoo 4 Posted July 30, 2017 Share Posted July 30, 2017 If u still need help with your quest i can help you on skype: xelbrujoox Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now