NewWars 33 Posted March 29, 2015 Share Posted March 29, 2015 Hey guys. I am having some trouble using monkey dungeon as a real dungeon quest. On the 2º room timer, the dungeon start, d.new_jump_all() doesnt teleport, and doesnt say any more next messages, so i presume that its not starting the dungeon. Map Index: 45 Here is a part of the quest: quest somedungeon begin state start begin when 20090.chat."Dungeon" begin say_title("Nub") if pc.get_level() > 40 then say("") say("O limite de entrada é nivel 40") say("Esta caverna é muito facil para ti.") else say("") say("Estão "..game.get_event_flag("edplayers").." soldados na caverna") say("") say_reward("Queres entrar na caverna?") say("") local enter = select("Sim", "Não") if enter == 1 then pc.warp(928800 , 447700) elseif enter == 2 then return end end end --Sala 1 when login with pc.get_map_index() == 45 begin game.set_event_flag(("edplayers"), game.get_event_flag("edplayers") + 1) pc.set_warp_location(45, 72, 129) end when logout with pc.get_map_index() == 45 begin game.set_event_flag(("edplayers"), game.get_event_flag("edplayers") - 1) end when kill with npc.get_race() == 8003 and pc.get_map_index() == 45 begin timer("easy_dungeon_floor2", 5) end --Sala 2 when easy_dungeon_floor2.timer begin chat("Jump all 2 Floor") d.new_jump_all(45, 108, 548) -- DOESNT WORK ANYMORE HERE -- d.notice("Os amaldiçoados estão a atacar!") d.notice("Elimina todos para passarem a proxima fase") --d.regen_file("data/dungeon/easy_dungeon/easy_dungeon_sala_2.txt") d.setf("easydungeon", 1) end end end What am i missing? I break the 8003 stone, and nothing happens... I am noob with dungeon :/.. Best Regards Link to comment Share on other sites More sharing options...
Remix 45 Posted March 29, 2015 Share Posted March 29, 2015 Why do you use timer instead of server timer for a dungeon? Link to comment Share on other sites More sharing options...
Premium Runah 19 Posted March 29, 2015 Premium Share Posted March 29, 2015 Hi, first verify your map index and then verify remove the "npc.get_race() == 8003 and " and just let the rest and then tell us if works or not. A new project is coming up very soon. Stay tunned. Metin2dev Topic Nexus2 Facebook Nexus2 Discord Link to comment Share on other sites More sharing options...
Remix 45 Posted March 29, 2015 Share Posted March 29, 2015 Hi, first verify your map index and then verify remove the "npc.get_race() == 8003 and " and just let the rest and then tell us if works or not. What do you mean with verifying map index? Link to comment Share on other sites More sharing options...
Premium Runah 19 Posted March 29, 2015 Premium Share Posted March 29, 2015 Sometimes they can change map index and didn't notice... and he changed the map will be not index 45 anymore. A new project is coming up very soon. Stay tunned. Metin2dev Topic Nexus2 Facebook Nexus2 Discord Link to comment Share on other sites More sharing options...
Remix 45 Posted March 29, 2015 Share Posted March 29, 2015 Sometimes they can change map index and didn't notice... and he changed the map will be not index 45 anymore. But it doesn't solve the problem. I can't believe that he changed the index and forgot it. Link to comment Share on other sites More sharing options...
Premium Runah 19 Posted March 29, 2015 Premium Share Posted March 29, 2015 I know that don't solve, but if he test, give us help to help him... A new project is coming up very soon. Stay tunned. Metin2dev Topic Nexus2 Facebook Nexus2 Discord Link to comment Share on other sites More sharing options...
NewWars 33 Posted March 30, 2015 Author Share Posted March 30, 2015 Why do you use timer instead of server timer for a dungeon? I dont understant server timer, altough, its easy and the same, but im costumed to quest with timer only. Hi, first verify your map index and then verify remove the "npc.get_race() == 8003 and " and just let the rest and then tell us if works or not. I think i am not that dumb xD. I tried with other monkey caves too, like 5 and 25(other kingdom caves) Maybe dungeon is blocked by game in some mapindex? I dont know why it doesnt work properly... Thanks in advance. Link to comment Share on other sites More sharing options...
Remix 45 Posted March 30, 2015 Share Posted March 30, 2015 Why do you use timer instead of server timer for a dungeon? I dont understant server timer, altough, its easy and the same, but im costumed to quest with timer only. It's almost the same. You're just unable to use functions for just one player. With a servertimer you could use if d.select(get_server_timer_arg()) then inside of the servertimer trigger that the instance of the dungeon is selected then it should work. Link to comment Share on other sites More sharing options...
NewWars 33 Posted March 30, 2015 Author Share Posted March 30, 2015 Why do you use timer instead of server timer for a dungeon? I dont understant server timer, altough, its easy and the same, but im costumed to quest with timer only. It's almost the same. You're just unable to use functions for just one player. With a servertimer you could use if d.select(get_server_timer_arg()) then inside of the servertimer trigger that the instance of the dungeon is selected then it should work. Like this is good? Sorry if i misunderstood, i really suck at dungeon questing xD quest somedungeon begin state start begin when 20090.chat."Dungeon" begin say_title("Nub") if pc.get_level() > 40 then say("") say("O limite de entrada é nivel 40") say("Esta caverna é muito facil para ti.") else say("") say("Estão "..game.get_event_flag("edplayers").." soldados na caverna") say("") say_reward("Queres entrar na caverna?") say("") local enter = select("Sim", "Não") if enter == 1 then pc.warp(928800 , 447700) elseif enter == 2 then return end end end --Sala 1 when login with pc.get_map_index() == 45 begin game.set_event_flag(("edplayers"), game.get_event_flag("edplayers") + 1) pc.set_warp_location(45, 72, 129) end when logout with pc.get_map_index() == 45 begin game.set_event_flag(("edplayers"), game.get_event_flag("edplayers") - 1) end when kill with npc.get_race() == 8003 and pc.get_map_index() == 45 begin server_timer("easy_dungeon_floor2", 5, pc.get_map_index()) end --Sala 2 when easy_dungeon_floor2.server_timer begin if d.select(get_server_timer_arg()) then d.new_jump_all(45, 108, 548) d.notice("Os amaldiçoados estão a atacar!") d.notice("Elimina todos para passarem a proxima fase") --d.regen_file("data/dungeon/easy_dungeon/easy_dungeon_sala_2.txt") d.setf("easydungeon", 1) end end end end Link to comment Share on other sites More sharing options...
Solution NewWars 33 Posted March 30, 2015 Author Solution Share Posted March 30, 2015 Thanks to all, but i fixed it already. When starting a new dungeon, you need to start it alone, then you use login event to prepare for dungeon itself, and then keep on. Thanks to all that helped. 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