Aller au contenu
Top-Metin2.org - Vous êtes à la recherche d'un serveur Metin 2 ? ×
×
×
  • Créer...

[Partage] Instance Nemere


aminalibi1

Messages recommandés

Centre de Téléchargement

Hidden Content

    Give reaction to this post to see the hidden content.
( Interne )

Salut FE,

Je vous partage l'instance glaciale (Nemeres) , modifiée par moi même et fonctionnelle.

----------------------
-- Corpse II : Nemeres
----------------------
quest snowdungeon begin
state start begin
	when 20397.chat."Tour de Nemeres" begin
		say_title("Statue Roi de gheata")
		say("Le mal ravage notre monde depuis des années et cela de différentes manières.")
		say("son pouvoir est plus fort de jour en jour.")
		say("Nos Royaumes commencent à tomber, mais qui pour arrêter ce cauchemar ?")
		say("De simple personne lambda, n'écoutant que leurs courages !")
		if pc.get_level() >= 90 then
			if party.is_party() or pc.is_gm()  then
				if party.is_leader() or pc.is_gm() then
					say_reward("Êtes-vous prêt à affronter le mal et faire face à vos destins ?")
					if select("Oui, nous croyons en nos forces !","Non, nous sommes bien trop faibles.") == 1 then
						pc.remove_item(30256,1)
						d.join(240)
					end
				else
					say_reward("Vous devez être le Chef du groupe.")
				end
			else
				say_reward("Vous devrez faire partie d'un groupe.")
			end
		else
			say_reward("Vous devez etre level 100.")
		end
	end

	when 20397.chat."La place de Nemeres" with d.getf("actual_round") == 9 begin
		if party.is_leader() or pc.is_gm() then
			say_title("Statue Roi de gheata")
			say("L'aventure fut longue et périlleuse mais finalement")
			say("Je suis arrivé à la source de la rivière.")
			say("Nemeres est de l'autre côté, allez le vaincre !")
			say_reward("Êtes-vous prêt à y faire face ?")
			if select("Oui, nous sommes toujours confiants !","Non, nous ne croyons plus en nos forces.") == 1 then
				if d.getf("used_statue", 0) then
					d.setf("used_statue", 1)
					syschat("Dans les 10 prochaines secondes, vous serez téléporté avec votre groupe !")
					timer("nextlevel",10)
				end
			end
		end
	end

	when login with pc.get_map_index() >= 2400000 and pc.get_map_index() <= 2405000 begin
		d.notice("[Tour de Nemeres] La bataille a commencé.")
		d.notice("[Tour de Nemeres] Exterminez les ennemies ! bonne chance.")
		if party.is_party() then
			if party.is_leader() then
				snowdungeon.start()
			end
		else
			if pc.is_gm() then
				snowdungeon.start()
			end
		end
	end

	when 20398.take begin
		if d.getf("actual_round") == 5 then
			if item.get_vnum() == 30332 then
				pc.remove_item(item.get_vnum(),1)
				npc.purge()
				d.setf("box_opened", d.getf("box_opened")+1)
				if d.getf("box_opened") == 6 then
					d.notice("[Tour de Nemeres] Les joints ont été ouverts")
					d.notice("[Tour de Nemeres] Vous allez jusqu'au 6ème étage !")
					snowdungeon.purge()
					timer("nextlevel",10)
				else
					d.notice("[Tour de Nemeres] Courage, Il vous reste "..6-d.getf("box_opened").." sceaux à ouvrir !")
				end
			end
		end
	end

	when 30331.use begin
		if d.getf("actual_round") == 2 then
			if pc.get_job() == 3 or pc.get_job() == 7 then
				if number(1,8) == 5 then
					d.notice("[Tour de Nemeres] La chance vous sourit. La clé était parfaite !.")
					d.notice("[Tour de Nemeres] Bientôt vous serez redirigé vers le prochain étage.")
					snowdungeon.purge()
					timer("nextlevel",10)
				else
					syschat("[Tour de Nemeres] Suite à son impuissance la clé s'est brisée.")
					syschat("[Tour de Nemeres] Trouvez une autre clé et réessayez.")
					pc.remove_item(30331,1)
				end
			else
				syschat("La clé ne peut être utilisé seulement par un puissant chaman.")
			end
		end
	end

	when 30333.use begin
		if pc.get_job() == 3 or pc.get_job() == 7 or pc.get_job() == 1 or pc.get_job() == 5 then
			if d.getf("actual_round") == 8 then
				if number(1,8) == 5 then
					d.notice("[Tour de Nemeres] La chance vous sourit. La clé était parfaite !.")
					d.notice("[Tour de Nemeres] Bientôt vous serez redirigé vers le prochain étage.")
					snowdungeon.purge()
					timer("nextlevel",10)
				else
					d.notice("[Tour de Nemeres] Suite à son impuissance la clé s'est brisée.")
					d.notice("[Tour de Nemeres] Trouvez une autre clé et réessayez.")
					pc.remove_item(30333,1)
				end
				else
				syschat("La clé ne peut être utilisé seulement par un puissant chaman ou un ninja.")
			end
		end
	end

	when kill with pc.get_map_index() >= 2400000 and pc.get_map_index() <= 2405000 begin
		if d.getf("actual_round") == 6 and npc.get_race() == 6109 then
			d.notice("[Tour de Nemeres] Félicitations, vous avez détruit la source de ses pouvoirs")
			d.notice("[Tour de Nemeres] Dans quelques instants, vous monterez au 7ème étage.")
			timer("nextlevel",10)
		end
		if d.getf("actual_round") == 7 and npc.get_race() == 6151 then
			d.notice("[Tour de Nemeres] Félicitations, tuant Le fidèle Nemeres, vous serez amené au 8ème étage .")
			snowdungeon.purge()
			timer("nextlevel",10)
		end
		if d.getf("actual_round") == 9 and npc.get_race() == 20399 then
			d.notice("[Tour de Nemeres] Le dernier pilier de sa défense a été démoli ")
			d.notice("[Tour de Nemeres] Le Lion de glace est apparu.")
			snowdungeon.purge()
			d.spawn_mob(20397, 848, 669)
		end
		if d.getf("actual_round") == 10 and npc.get_race() == 6191 then
			d.notice("[Tour de Nemeres] Félicitations, vous avez tuer Nemeres, vous êtes les combattants de la destinée !")
			notice_all("Avec un dernier souffle de chef de file de l'espoir "..pc.get_name().."")
			notice_all("Suivi par ses guerriers fidèles ont réussi à battre le redoutable Nemeres.")
			d.setf("actual_round","0")
			------------------
			local time = get_time()
			d.setqf2("snowdungeon","daily_nemeres_last_kill", time)
			d.setqf2("snowdungeon","daily_nemeres", 1)
			------------------
			d.clear_regen()
			d.kill_all()
			d.spawn_mob(9012, 928, 338)
			timer("exit_snow", 60)
			d.notice("En 60 secondes, vous serez téléporté en dehors.")
		end
		if d.getf("actual_round") == 1 then
			d.setf("kill_count_sd1",d.getf("kill_count_sd1") +1)
			if d.getf("kill_count_sd1") == d.getf("sd_kill_to_next") then
				d.notice("[Tour de Nemeres] Vous avez terminé le premier étage .")
				d.notice("[Tour de Nemeres] Dans quelques instants, vous montez au 2ème étage.")
				snowdungeon.purge()
				timer("nextlevel",10)
			end
		elseif d.getf("actual_round") == 2 then
			if number(1,50) == 1 then
				game.drop_item_with_ownership(30331,1)
			end
		elseif d.getf("actual_round") == 3 then
			d.setf("kill_count_sd3",d.getf("kill_count_sd3") +1)
				if d.getf("kill_count_sd3") == d.getf("sd3_kill_to_next") then
					snowdungeon.purge()
					d.notice("[Tour de Nemeres] Vous avez terminé le 3ème étage .")
					d.notice("[Tour de Nemeres] Dans quelques instants, vous montez au 4ème étage.")
					timer("nextlevel",10)
				end
		elseif d.getf("actual_round") == 4 then
			d.setf("kill_count_sd4",d.getf("kill_count_sd4") +1)
				if d.getf("kill_count_sd4") == d.getf("sd4_kill_to_next") then
					snowdungeon.purge()
					d.notice("[Tour de Nemeres] La 4ème vague a été détruite.")
					d.notice("[Tour de Nemeres] Dans quelques instants, vous montez au 5ème étage.")
					timer("nextlevel",10)
				end
		elseif d.getf("actual_round") == 5 then
			if number(1,100) == 1 then
				game.drop_item_with_ownership(30332,1)
			end
		elseif d.getf("actual_round") == 6 then
			d.setf("kill_count_sd6",d.getf("kill_count_sd6") +1)
				if d.getf("kill_count_sd6") == d.getf("sd6_kill_to_next") then
					d.notice("[Tour de Nemeres] Ce qui se produit ? Il voit un ciel bleu !?")
					snowdungeon.purge()
					timer("level7metin",5)
				end
		elseif d.getf("actual_round") == 8 then
			if number(1,50) == 1 then
				game.drop_item_with_ownership(30333,1)
			end
		end
	end

	when level7metin.timer begin
		if d.getf("actual_round") == 6 then
			d.spawn_mob(6109, 743, 495)
		end
	end

	when nextlevel.timer begin
		if d.getf("actual_round") == 1 then
			-- Niveau 2
			d.jump_all(5120+421,1536+264)
			d.setf("actual_round",2)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_2.txt")
			d.notice("[Tour de Nemeres] Vous êtes dans le 2ème étage ")
			d.notice("[Tour de Nemeres] Cherchez la bonne clé pour avancer au niveau suivant.")

		elseif d.getf("actual_round") == 2 then
			-- Niveau 3
			d.jump_all(5120+761,1536+268)
			d.setf("actual_round",3)
			d.setf("kill_count_sd3","0")
			d.setf("sd3_kill_to_next","300")
			d.set_regen_file("data/dungeon/snowdungeon/nivel_3.txt")
			d.notice("[Tour de Nemeres] Vous êtes dans le 3ème étage")
			d.notice("[Tour de Nemeres] Exterminez l'armée de Nemeres jusqu'au dernier pour avancer.")

		elseif d.getf("actual_round") == 3 then
			-- NIVEL 4
			d.jump_all(5120+174,1536+526)
			d.setf("actual_round",4)
			d.setf("kill_count_sd4","0")
			d.setf("sd4_kill_to_next","300")
			d.set_regen_file("data/dungeon/snowdungeon/nivel_4.txt")
			d.notice("[Tour de Nemeres] Vouz êtes montés au 4ème étage.")
			d.notice("[Tour de Nemeres] Détruisez-les tous pour avancer.")

		elseif d.getf("actual_round") == 4 then
			-- Niveau 5
			d.jump_all(5120+421,1536+533)
			d.setf("actual_round",5)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_5.txt")
			local sequence = {{1,2,3,4,5},{4,3,2,1,5},{4,5,3,1,2},{5,3,4,2,1},{5,1,3,4,2}}
				local n = number(1,5)
				local coords = {{391,490},{451,490},{463,455},{380,456},{420,422}}
				for i = 1, 5 do
					d.spawn_mob(20398, coords[i][1],coords[i][2])
				end
				d.setf("box_opened", 1)
				d.setf("sequence",n)
				d.notice("[Tour de Nemeres] Vous êtes dans le 5ème étage")
		elseif d.getf("actual_round") == 5 then
			-- Niveau 6
			d.jump_all(5120+746,1536+536)
			d.setf("actual_round",6)
			d.setf("kill_count_sd6","0")
			d.setf("sd6_kill_to_next","200")
			d.set_regen_file("data/dungeon/snowdungeon/nivel_6.txt")
			d.notice("[Tour de Nemeres] Vous êtes dans le 6ème étage.")
			d.notice("[Tour de Nemeres] Ses troupes ont commencé à se désagréger.")

		elseif d.getf("actual_round") == 6 then
			-- Niveau 7
			d.jump_all(5120+304,1536+719)
			d.setf("actual_round",7)
			d.regen_file("data/dungeon/snowdungeon/nivel_7.txt")
			d.spawn_mob(6109, 326, 657)

		elseif d.getf("actual_round") == 7 then
			-- Niveau 8
			d.jump_all(5120+569,1536+642)
			d.setf("actual_round",8)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_8.txt")
			d.notice("[Tour de Nemeres] Vous êtes dans le 8ème étage.")

		elseif d.getf("actual_round") == 8 then
			-- Niveau 9
			d.notice("[Tour de Nemeres] Vous êtes dans le 9ème étage.")
			d.jump_all(5120+848,1536+689)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_9.txt")
			d.setf("actual_round",9)
			d.spawn_mob(20399, 849, 659)

		elseif d.getf("actual_round") == 9 then
			-- NIVEL 10 BOSS ROOM
			d.setf("used_statue", 0)
			d.spawn_mob(6191, 927, 323)
			d.jump_all(5120+928,1536+390)
			d.setf("actual_round",10)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_10.txt")
		end
		snowdungeon.NoticeTime()
	end

	function start()
		d.set_regen_file("data/dungeon/snowdungeon/nivel_1.txt")
		d.setf("actual_round",1)
		d.setf("time", get_time()+60*60*1)
		d.setf("sd_kill_to_next",100)
		d.setf("kill_count_sd1",0)
		server_timer("snowdungeontime",3600,pc.get_map_index())
		--server_loop_timer("snowdungeontimenotice",300)
		snowdungeon.NoticeTime()
	end

	when snowdungeontimenotice.server_timer begin
		if pc.get_map_index()<= 2405000 then
			snowdungeon.NoticeTime()
		end
	end
	function GetPillarID()
		if pc.get_local_x() >= 391 - 5 and pc.get_local_x() <= 391 + 5 and pc.get_local_y() >= 490 - 5 and pc.get_local_y() <= 490 + 5 then
			return 1
		elseif pc.get_local_x() >= 451 - 5 and pc.get_local_x() <= 451 + 5 and pc.get_local_y() >= 490 - 5 and pc.get_local_y() <= 490 + 5 then
			return 2
		elseif pc.get_local_x() >= 463 - 5 and pc.get_local_x() <= 463 + 5 and pc.get_local_y() >= 455 - 5 and pc.get_local_y() <= 455 + 5 then
			return 3
		elseif pc.get_local_x() >= 380 - 5 and pc.get_local_x() <= 380 + 5 and pc.get_local_y() >= 456 - 5 and pc.get_local_y() <= 456 + 5 then
			return 4
		elseif pc.get_local_x() >= 420 - 5 and pc.get_local_x() <= 420 + 5 and pc.get_local_y() >= 422 - 5 and pc.get_local_y() <= 422 + 5 then
			return 5
		else
			return false
		end
	end

	when snowdungeontime.server_timer begin
		if d.select(get_server_timer_arg()) then
			d.notice("............!")
			d.exit_all()
		end
	end
	when exit_snow.timer begin
		d.exit_all()
	end
	function NoticeTime()
		local secondsLeft = (d.getf("time") - get_time())
		local minutesLeft = math.ceil(secondsLeft / 60)
		d.notice("[Tour de Nemeres] Temps Restant: "..minutesLeft.." minutes.")
	end
	function purge()
		d.kill_all()
		d.clear_regen()
	end
end
end
 

Installer une quête ici

Pour les regen.txt/quest_function/group.txt vous les trouverez :

Hidden Content

    Give reaction to this post to see the hidden content.

  • Metin2 Dev 1
  • Dislove 1
  • Good 1
  • Love 28
Lien vers le commentaire
Partager sur d’autres sites

  • 1 an après...
  • 2 mois après...


  • brilliantdiscord_widget
  • Flux d'Activité

    1. 21

      Metin2 en 2020 peut-on en parler?

    2. 0

      METIN2Project

    3. 3

      Ressources - UnPack - Metin2 Client - Officiel

    4. 0

      Barre des tâches d'argent étendue

    5. 16

      Redémarrage automatique des channels

    6. 16

      Multi Logo GM / SGM / GA

    7. 0

      comment extraire les fichiers locale.epk locale.eix sur le serveur officiel ?

    8. 2

      Funky-emu.net -> fr.metin2.dev

  • En ligne récemment

    • Aucun utilisateur enregistré regarde cette page.

Information importante

Conditions d’utilisation / Politique de confidentialité / Règles / Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.