diff --git a/L2J_DataPack_BETA/dist/game/data/html/default/32585.htm b/L2J_DataPack_BETA/dist/game/data/html/default/32585.htm
index 127cb4d1f3579a3288f66e7f6f797d397f463ab5..a73456184ac52aef8872f4d4c21234d68d336ab0 100644
--- a/L2J_DataPack_BETA/dist/game/data/html/default/32585.htm
+++ b/L2J_DataPack_BETA/dist/game/data/html/default/32585.htm
@@ -1,5 +1,5 @@
 <html><body>Teleporter Mammon's Promise:<br>
 The Promise of Mammon must be kept, even over the vastness of time and space.<br>
 If you have permission from the Merchant of Mammon, you can use this device to teleport yourself. Do you wish to do so now?<br>
-<a action="bypass -h npc_%objectId%_Quest">Teleport</a>
+<a action="bypass -h npc_%objectId%_Quest DisciplesNecropolisPast">Teleport</a>
 </body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/instances/DisciplesNecropolisPast.xml b/L2J_DataPack_BETA/dist/game/data/instances/DisciplesNecropolisPast.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b6290bae712aaa080814cec1d407a43af01413d3
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/instances/DisciplesNecropolisPast.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<instance name="DisciplesNecropolisPast" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/instance.xsd">
+	<activityTime val="60" />
+	<allowSummon val="false" />
+	<emptyDestroyTime val="900" />
+	<spawnPoint spawnX="171895" spawnY="-17501" spawnZ="-4903" />
+	<doorlist>
+		<door doorId="17240101" />
+		<door doorId="17240102" />
+		<door doorId="17240103" />
+		<door doorId="17240104" />
+		<door doorId="17240105" />
+		<door doorId="17240106" />
+		<door doorId="17240107" />
+		<door doorId="17240108" />
+		<door doorId="17240109" />
+		<door doorId="17240110" />
+		<door doorId="17240111" />
+	</doorlist>
+	<spawnlist>
+		<group name="general">
+			<!-- Leon -->
+			<spawn npcId="32587" x="-89400" y="216125" z="-7504" heading="40960" respawn="0" />
+			<!-- Shunaiman -->
+			<spawn npcId="32586" x="-89456" y="216184" z="-7504" heading="40960" respawn="0" />
+			<!-- Court Magician -->
+			<spawn npcId="32598" x="-89549" y="220640" z="-7504" heading="0" respawn="0" />
+			<spawn npcId="32598" x="-84944" y="220640" z="-7504" heading="0" respawn="0" />
+			<!-- Disciple's Gatekeeper -->
+			<spawn npcId="32657" x="-84398" y="216106" z="-7504" heading="32768" respawn="0" />
+			<!-- Seal Device -->
+			<spawn npcId="27384" x="-83177" y="217353" z="-7520" heading="32768" respawn="0" allowRandomWalk="false" />
+			<spawn npcId="27384" x="-83177" y="216137" z="-7520" heading="32768" respawn="0" allowRandomWalk="false" />
+			<spawn npcId="27384" x="-82588" y="216754" z="-7520" heading="32768" respawn="0" allowRandomWalk="false" />
+			<spawn npcId="27384" x="-83804" y="216754" z="-7520" heading="32768" respawn="0" allowRandomWalk="false" />
+			<!-- First Room -->
+			<spawn npcId="27371" x="-89629" y="217918" z="-7490" heading="1722" respawn="0" />
+			<spawn npcId="27372" x="-89442" y="217915" z="-7493" heading="47429" respawn="0" />
+			<spawn npcId="27373" x="-89067" y="217917" z="-7490" heading="32333" respawn="0" />
+			<spawn npcId="27374" x="-88839" y="217920" z="-7490" heading="31924" respawn="0" />
+			<!-- Second Room -->
+			<spawn npcId="27371" x="-88599" y="220762" z="-7490" heading="48815" respawn="0" />
+			<spawn npcId="27373" x="-88605" y="220581" z="-7490" heading="34065" respawn="0" />
+			<spawn npcId="27374" x="-88848" y="220389" z="-7492" heading="14325" respawn="0" />
+			<spawn npcId="27372" x="-88594" y="220295" z="-7490" heading="14903" respawn="0" />
+			<spawn npcId="27373" x="-88603" y="220095" z="-7490" heading="15086" respawn="0" />
+			<spawn npcId="27371" x="-88597" y="219798" z="-7490" heading="16126" respawn="0" />
+			<!-- Third Room -->
+			<spawn npcId="27373" x="-86945" y="220374" z="-7492" heading="31385" respawn="0" />
+			<spawn npcId="27373" x="-86813" y="220636" z="-7490" heading="32663" respawn="0" />
+			<spawn npcId="27374" x="-86613" y="220634" z="-7490" heading="32263" respawn="0" />
+			<spawn npcId="27374" x="-87060" y="220498" z="-7492" heading="32767" respawn="0" />
+			<spawn npcId="27371" x="-87317" y="220628" z="-7490" heading="45514" respawn="0" />
+			<spawn npcId="27372" x="-87169" y="220637" z="-7490" heading="32708" respawn="0" />
+			<spawn npcId="27371" x="-87745" y="220638" z="-7493" heading="65287" respawn="0" />
+			<spawn npcId="27372" x="-87721" y="220786" z="-7492" heading="58176" respawn="0" />
+			<!-- Forth Room -->
+			<spawn npcId="27373" x="-84991" y="219061" z="-7492" heading="16756" respawn="0" />
+			<spawn npcId="27378" x="-85333" y="219246" z="-7490" heading="737" respawn="0" />
+			<spawn npcId="27371" x="-85060" y="219232" z="-7493" heading="8191" respawn="0" />
+			<spawn npcId="27374" x="-85155" y="219436" z="-7492" heading="64692" respawn="0" />
+			<spawn npcId="27379" x="-85222" y="219269" z="-7490" heading="4482" respawn="0" />
+			<spawn npcId="27372" x="-84858" y="219316" z="-7490" heading="17459" respawn="0" />
+			<spawn npcId="27374" x="-85280" y="219066" z="-7492" heading="4934" respawn="0" />
+			<spawn npcId="27377" x="-85547" y="219301" z="-7490" heading="65359" respawn="0" />
+			<spawn npcId="27373" x="-85635" y="219137" z="-7490" heading="1369" respawn="0" />
+			<spawn npcId="27375" x="-85557" y="219108" z="-7492" heading="65238" respawn="0" />
+			<!-- Fifth Room -->
+			<spawn npcId="27379" x="-87437" y="216648" z="-7490" heading="15955" respawn="0" />
+			<spawn npcId="27377" x="-87544" y="216970" z="-7495" heading="11485" respawn="0" />
+			<spawn npcId="27375" x="-87286" y="217005" z="-7495" heading="8578" respawn="0" />
+			<spawn npcId="27378" x="-87459" y="217163" z="-7490" heading="9569" respawn="0" />
+			<spawn npcId="27377" x="-87347" y="217384" z="-7490" heading="2091" respawn="0" />
+			<spawn npcId="27375" x="-87534" y="217346" z="-7490" heading="64433" respawn="0" />
+			<spawn npcId="27379" x="-87701" y="217469" z="-7495" heading="1835" respawn="0" />
+			<spawn npcId="27372" x="-87457" y="217731" z="-7490" heading="48371" respawn="0" />
+			<spawn npcId="27378" x="-87445" y="217486" z="-7490" heading="51622" respawn="0" />
+			<spawn npcId="27371" x="-87651" y="217697" z="-7492" heading="54262" respawn="0" />
+			<spawn npcId="27373" x="-87563" y="217952" z="-7492" heading="50734" respawn="0" />
+			<spawn npcId="27374" x="-87276" y="217878" z="-7492" heading="46304" respawn="0" />
+		</group>
+	</spawnlist>
+</instance>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts.cfg b/L2J_DataPack_BETA/dist/game/data/scripts.cfg
index b686b9da77cddc17bf2431a115b3ffd5304c7776..241d9207fac9489cccc6eca43a8793a1d099d11a 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts.cfg
+++ b/L2J_DataPack_BETA/dist/game/data/scripts.cfg
@@ -183,7 +183,7 @@ instances/ChambersOfDelusion/ChamberOfDelusionTower.java
 instances/CrystalCaverns/CrystalCaverns.java
 instances/DarkCloudMansion/DarkCloudMansion.java
 instances/DemonPrinceFloor/DemonPrinceFloor.java
-#instances/DisciplesNecropolisPast/DisciplesNecropolisPast.java
+instances/DisciplesNecropolisPast/DisciplesNecropolisPast.java
 instances/FinalEmperialTomb/FinalEmperialTomb.java
 instances/HellboundTown/HellboundTown.java
 instances/HideoutOfTheDawn/HideoutOfTheDawn.java
@@ -371,7 +371,7 @@ quests/Q00192_SevenSignsSeriesOfDoubt/Q00192_SevenSignsSeriesOfDoubt.java
 quests/Q00193_SevenSignsDyingMessage/Q00193_SevenSignsDyingMessage.java
 quests/Q00194_SevenSignsMammonsContract/Q00194_SevenSignsMammonsContract.java
 quests/Q00195_SevenSignsSecretRitualOfThePriests/Q00195_SevenSignsSecretRitualOfThePriests.java
-#quests/Q00196_SevenSignsSealOfTheEmperor/Q00196_SevenSignsSealOfTheEmperor.java
+quests/Q00196_SevenSignsSealOfTheEmperor/Q00196_SevenSignsSealOfTheEmperor.java
 quests/Q00197_SevenSignsTheSacredBookOfSeal/Q00197_SevenSignsTheSacredBookOfSeal.java
 quests/Q00198_SevenSignsEmbryo/Q00198_SevenSignsEmbryo.java
 quests/211_TrialOfChallenger/__init__.py
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32586.htm b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32586.htm
new file mode 100644
index 0000000000000000000000000000000000000000..e96df8b4fa0b1b735980f63e2fbdb152802b330b
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32586.htm
@@ -0,0 +1,5 @@
+<html><body>Emperor Shunaiman:<br>
+Shilen's forces gain ground with each passing day.<br>
+We were stumbling backwards, but now... now I am staring down into a great chasm. What am I to do?<br>
+<a action="bypass -h npc_%objectId%_Quest">Quest</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32587-01.html b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32587-01.html
new file mode 100644
index 0000000000000000000000000000000000000000..fd2c390bf6720c559fae691e6fe7d25544ab3e4f
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32587-01.html
@@ -0,0 +1,3 @@
+<html><body>Emperor's Guard Leon:<br>
+Thank you saving Emperor Shunaiman from this crisis! <br>May the blessin's of Einhasad always go with you.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32587.htm b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32587.htm
new file mode 100644
index 0000000000000000000000000000000000000000..bcfe0177f1d4692c2864fdc8d9bc27f7bcd00790
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32587.htm
@@ -0,0 +1,4 @@
+<html><body>Emperor's Guard Leon:<br>
+Einhasad's blessin's, friend!<br>S'not everyone who gets to go time-travelin' to go and save the old Emperor, eh? Must be made of tougher stuff than us lot... probably the food.<br>Anyways, I understand you're lookin' to get back to your time?<br>
+<a action="bypass -h npc_%objectId%_Quest DisciplesNecropolisPast">"That's right."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32657.htm b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32657.htm
new file mode 100644
index 0000000000000000000000000000000000000000..73bf98dc63ee5c34b58592af7211e010b7e063aa
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/32657.htm
@@ -0,0 +1,4 @@
+<html><body>Disciple's Gatekeeper:<br>
+You are now at the place where Shunaiman Emperor's Seal Device is installed. You hear the sounds of Anakim and Lilith grappling violently from within.<br>
+<a action="bypass -h npc_%objectId%_Quest DisciplesNecropolisPast">Open the door.</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/DisciplesNecropolisPast.java b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/DisciplesNecropolisPast.java
new file mode 100644
index 0000000000000000000000000000000000000000..ed51923c2d321d86543d20a558b991bc0f3b7d17
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/instances/DisciplesNecropolisPast/DisciplesNecropolisPast.java
@@ -0,0 +1,525 @@
+/*
+ * Copyright (C) 2004-2013 L2J DataPack
+ * 
+ * This file is part of L2J DataPack.
+ * 
+ * L2J DataPack is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J DataPack is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package instances.DisciplesNecropolisPast;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javolution.util.FastList;
+import quests.Q00196_SevenSignsSealOfTheEmperor.Q00196_SevenSignsSealOfTheEmperor;
+
+import com.l2jserver.gameserver.instancemanager.InstanceManager;
+import com.l2jserver.gameserver.model.Location;
+import com.l2jserver.gameserver.model.actor.L2Character;
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.holders.SkillHolder;
+import com.l2jserver.gameserver.model.instancezone.InstanceWorld;
+import com.l2jserver.gameserver.model.quest.Quest;
+import com.l2jserver.gameserver.model.quest.QuestState;
+import com.l2jserver.gameserver.network.NpcStringId;
+import com.l2jserver.gameserver.network.SystemMessageId;
+import com.l2jserver.gameserver.network.clientpackets.Say2;
+import com.l2jserver.gameserver.network.serverpackets.NpcSay;
+import com.l2jserver.gameserver.util.Util;
+
+/**
+ * Disciple's Necropolis Past instance zone.
+ * @author Adry_85
+ */
+public final class DisciplesNecropolisPast extends Quest
+{
+	protected class DNPWorld extends InstanceWorld
+	{
+		protected final FastList<L2Npc> anakimGroup = new FastList<>();
+		protected final FastList<L2Npc> lilithGroup = new FastList<>();
+		protected long storeTime = 0;
+		protected int countKill = 0;
+	}
+	
+	// Instance
+	private static final int INSTANCEID = 112;
+	// NPCs
+	private static final int SEAL_DEVICE = 27384;
+	private static final int PROMISE_OF_MAMMON = 32585;
+	private static final int SHUNAIMAN = 32586;
+	private static final int LEON = 32587;
+	private static final int DISCIPLES_GATEKEEPER = 32657;
+	private static final int LILITH = 32715;
+	private static final int LILITHS_STEWARD = 32716;
+	private static final int LILITHS_ELITE = 32717;
+	private static final int ANAKIM = 32718;
+	private static final int ANAKIMS_GUARDIAN = 32719;
+	private static final int ANAKIMS_GUARD = 32720;
+	private static final int ANAKIMS_EXECUTOR = 32721;
+	// Doors
+	private static final int DOOR_1 = 17240102;
+	private static final int DOOR_2 = 17240104;
+	private static final int DOOR_3 = 17240106;
+	private static final int DOOR_4 = 17240108;
+	private static final int DOOR_5 = 17240110;
+	private static final int DISCIPLES_NECROPOLIS_DOOR = 17240111;
+	// Items
+	private static final int SACRED_SWORD_OF_EINHASAD = 15310;
+	private static final int SEAL_OF_BINDING = 13846;
+	// Locations
+	private static final Location ENTER = new Location(-89554, 216078, -7488, 0, 0);
+	private static final Location EXIT = new Location(171895, -17501, -4903, 0, 0);
+	// Monsters
+	private static final int LILIM_BUTCHER = 27371;
+	private static final int LILIM_MAGUS = 27372;
+	private static final int LILIM_KNIGHT_ERRANT = 27373;
+	private static final int SHILENS_EVIL_THOUGHTS1 = 27374;
+	private static final int SHILENS_EVIL_THOUGHTS2 = 27375;
+	private static final int LILIM_KNIGHT = 27376;
+	private static final int LILIM_SLAYER = 27377;
+	private static final int LILIM_GREAT_MAGUS = 27378;
+	private static final int LILIM_GUARD_KNIGHT = 27379;
+	// NpcStringId
+	private static final NpcStringId[] LILITH_SHOUT =
+	{
+		NpcStringId.HOW_DARE_YOU_TRY_TO_CONTEND_AGAINST_ME_IN_STRENGTH_RIDICULOUS,
+		NpcStringId.ANAKIM_IN_THE_NAME_OF_GREAT_SHILIEN_I_WILL_CUT_YOUR_THROAT,
+		NpcStringId.YOU_CANNOT_BE_THE_MATCH_OF_LILITH_ILL_TEACH_YOU_A_LESSON
+	};
+	
+	// Bosses Spawn
+	private static final Map<Integer, Location> LILITH_SPAWN = new HashMap<>();
+	private static final Map<Integer, Location> ANAKIM_SPAWN = new HashMap<>();
+	static
+	{
+		LILITH_SPAWN.put(LILITH, new Location(-83175, 217021, -7504, 49151));
+		LILITH_SPAWN.put(LILITHS_STEWARD, new Location(-83327, 216938, -7492, 50768));
+		LILITH_SPAWN.put(LILITHS_ELITE, new Location(-83003, 216909, -7492, 4827));
+		ANAKIM_SPAWN.put(ANAKIM, new Location(-83179, 216479, -7504, 16384));
+		ANAKIM_SPAWN.put(ANAKIMS_GUARDIAN, new Location(-83321, 216507, -7492, 16166));
+		ANAKIM_SPAWN.put(ANAKIMS_GUARD, new Location(-83086, 216519, -7495, 15910));
+		ANAKIM_SPAWN.put(ANAKIMS_EXECUTOR, new Location(-83031, 216604, -7492, 17071));
+	}
+	
+	// Skills
+	private static final SkillHolder SEAL_ISOLATION = new SkillHolder(5980, 3);
+	private static final Map<Integer, SkillHolder> SKILLS = new HashMap<>();
+	static
+	{
+		SKILLS.put(32715, new SkillHolder(6187, 1)); // Presentation - Lilith Battle
+		SKILLS.put(32716, new SkillHolder(6188, 1)); // Presentation - Lilith's Steward Battle1
+		SKILLS.put(32717, new SkillHolder(6190, 1)); // Presentation - Lilith's Bodyguards Battle1
+		SKILLS.put(32718, new SkillHolder(6191, 1)); // Presentation - Anakim Battle
+		SKILLS.put(32719, new SkillHolder(6192, 1)); // Presentation - Anakim's Guardian Battle1
+		SKILLS.put(32720, new SkillHolder(6194, 1)); // Presentation - Anakim's Guard Battle
+		SKILLS.put(32721, new SkillHolder(6195, 1)); // Presentation - Anakim's Executor Battle
+	}
+	
+	private DisciplesNecropolisPast()
+	{
+		super(-1, DisciplesNecropolisPast.class.getSimpleName(), "instances");
+		addAttackId(SEAL_DEVICE);
+		addFirstTalkId(SHUNAIMAN, LEON, DISCIPLES_GATEKEEPER);
+		addKillId(LILIM_BUTCHER, LILIM_MAGUS, LILIM_KNIGHT_ERRANT, LILIM_KNIGHT, SHILENS_EVIL_THOUGHTS1, SHILENS_EVIL_THOUGHTS2, LILIM_SLAYER, LILIM_GREAT_MAGUS, LILIM_GUARD_KNIGHT);
+		addAggroRangeEnterId(LILIM_BUTCHER, LILIM_MAGUS, LILIM_KNIGHT_ERRANT, LILIM_KNIGHT, SHILENS_EVIL_THOUGHTS1, SHILENS_EVIL_THOUGHTS2, LILIM_SLAYER, LILIM_GREAT_MAGUS, LILIM_GUARD_KNIGHT);
+		addSpawnId(SEAL_DEVICE);
+		addStartNpc(PROMISE_OF_MAMMON);
+		addTalkId(PROMISE_OF_MAMMON, SHUNAIMAN, LEON, DISCIPLES_GATEKEEPER);
+	}
+	
+	protected void spawnNPC(DNPWorld world)
+	{
+		for (Map.Entry<Integer, Location> entry : LILITH_SPAWN.entrySet())
+		{
+			L2Npc npc = addSpawn(entry.getKey(), entry.getValue(), false, 0, false, world.getInstanceId());
+			world.lilithGroup.add(npc);
+		}
+		for (Map.Entry<Integer, Location> entry : ANAKIM_SPAWN.entrySet())
+		{
+			L2Npc enpc = addSpawn(entry.getKey(), entry.getValue(), false, 0, false, world.getInstanceId());
+			world.anakimGroup.add(enpc);
+		}
+	}
+	
+	private synchronized void checkDoors(L2Npc npc, DNPWorld world)
+	{
+		if (world.countKill == 4)
+		{
+			openDoor(DOOR_1, world.getInstanceId());
+		}
+		else if (world.countKill == 10)
+		{
+			openDoor(DOOR_2, world.getInstanceId());
+		}
+		else if (world.countKill == 18)
+		{
+			openDoor(DOOR_3, world.getInstanceId());
+		}
+		else if (world.countKill == 28)
+		{
+			openDoor(DOOR_4, world.getInstanceId());
+		}
+		else if (world.countKill == 40)
+		{
+			openDoor(DOOR_5, world.getInstanceId());
+		}
+	}
+	
+	protected int enterInstance(L2PcInstance player, String template, Location loc)
+	{
+		// check for existing instances for this player
+		InstanceWorld world = InstanceManager.getInstance().getPlayerWorld(player);
+		// existing instance
+		if (world != null)
+		{
+			if (!(world instanceof DNPWorld))
+			{
+				player.sendPacket(SystemMessageId.ALREADY_ENTERED_ANOTHER_INSTANCE_CANT_ENTER);
+				return 0;
+			}
+			teleportPlayer(player, loc, world.getInstanceId());
+			removeBuffs(player);
+			return world.getInstanceId();
+		}
+		// New instance
+		world = new DNPWorld();
+		world.setInstanceId(InstanceManager.getInstance().createDynamicInstance(template));
+		world.setTemplateId(INSTANCEID);
+		world.setStatus(0);
+		((DNPWorld) world).storeTime = System.currentTimeMillis();
+		InstanceManager.getInstance().addWorld(world);
+		_log.info("Disciple's Necropolis Past started " + template + " Instance: " + world.getInstanceId() + " created by player: " + player.getName());
+		// teleport players
+		teleportPlayer(player, loc, world.getInstanceId());
+		spawnNPC((DNPWorld) world);
+		world.addAllowed(player.getObjectId());
+		return world.getInstanceId();
+	}
+	
+	private void makeCast(L2Npc npc, FastList<L2Npc> targets)
+	{
+		npc.setTarget(targets.get(getRandom(targets.size())));
+		if (SKILLS.containsKey(npc.getId()))
+		{
+			npc.doCast(SKILLS.get(npc.getId()).getSkill());
+		}
+	}
+	
+	@Override
+	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+	{
+		InstanceWorld tmpworld = InstanceManager.getInstance().getPlayerWorld(player);
+		if (tmpworld instanceof DNPWorld)
+		{
+			DNPWorld world = (DNPWorld) tmpworld;
+			switch (event)
+			{
+				case "FINISH":
+				{
+					if (getQuestItemsCount(player, SEAL_OF_BINDING) >= 4)
+					{
+						player.showQuestMovie(13);
+						startQuestTimer("TELEPORT", 27000, null, player);
+					}
+					break;
+				}
+				case "TELEPORT":
+				{
+					player.teleToLocation(ENTER, 0);
+					break;
+				}
+				case "FIGHT":
+				{
+					for (L2Npc caster : world.anakimGroup)
+					{
+						if ((caster != null) && !caster.isCastingNow())
+						{
+							makeCast(caster, world.lilithGroup);
+						}
+						if ((caster != null) && (caster.getId() == ANAKIM))
+						{
+							if (caster.isScriptValue(0))
+							{
+								caster.broadcastPacket(new NpcSay(caster.getObjectId(), Say2.NPC_SHOUT, caster.getId(), NpcStringId.YOU_SUCH_A_FOOL_THE_VICTORY_OVER_THIS_WAR_BELONGS_TO_SHILIEN));
+								caster.setScriptValue(1);
+							}
+							else if (getRandom(100) < 10)
+							{
+								caster.broadcastPacket(new NpcSay(caster.getObjectId(), Say2.NPC_SHOUT, caster.getId(), LILITH_SHOUT[getRandom(3)]));
+							}
+						}
+					}
+					for (L2Npc caster : world.lilithGroup)
+					{
+						if ((caster != null) && !caster.isCastingNow())
+						{
+							makeCast(caster, world.anakimGroup);
+						}
+						if ((caster != null) && (caster.getId() == 32715))
+						{
+							if (caster.isScriptValue(0))
+							{
+								caster.broadcastPacket(new NpcSay(caster.getObjectId(), Say2.NPC_SHOUT, caster.getId(), NpcStringId.FOR_THE_ETERNITY_OF_EINHASAD));
+								if (Util.checkIfInRange(2000, caster, player, true))
+								{
+									player.sendPacket(new NpcSay(caster.getObjectId(), Say2.TELL, caster.getId(), NpcStringId.MY_POWERS_WEAKENING_HURRY_AND_TURN_ON_THE_SEALING_DEVICE));
+								}
+								caster.setScriptValue(1);
+							}
+							else if (getRandom(100) < 10)
+							{
+								switch (getRandom(3))
+								{
+									case 0:
+									{
+										caster.broadcastPacket(new NpcSay(caster.getObjectId(), Say2.NPC_SHOUT, caster.getId(), NpcStringId.DEAR_SHILLIENS_OFFSPRINGS_YOU_ARE_NOT_CAPABLE_OF_CONFRONTING_US));
+										if (Util.checkIfInRange(2000, caster, player, true))
+										{
+											player.sendPacket(new NpcSay(caster.getObjectId(), Say2.TELL, caster.getId(), NpcStringId.ALL_4_SEALING_DEVICES_MUST_BE_TURNED_ON));
+										}
+										break;
+									}
+									case 1:
+									{
+										caster.broadcastPacket(new NpcSay(caster.getObjectId(), Say2.NPC_SHOUT, caster.getId(), NpcStringId.ILL_SHOW_YOU_THE_REAL_POWER_OF_EINHASAD));
+										if (Util.checkIfInRange(2000, caster, player, true))
+										{
+											player.sendPacket(new NpcSay(caster.getObjectId(), Say2.TELL, caster.getId(), NpcStringId.LILITHS_ATTACK_IS_GETTING_STRONGER_GO_AHEAD_AND_TURN_IT_ON));
+										}
+										break;
+									}
+									case 2:
+									{
+										caster.broadcastPacket(new NpcSay(caster.getObjectId(), Say2.NPC_SHOUT, caster.getId(), NpcStringId.DEAR_MILITARY_FORCE_OF_LIGHT_GO_DESTROY_THE_OFFSPRINGS_OF_SHILLIEN));
+										if (Util.checkIfInRange(2000, caster, player, true))
+										{
+											player.sendPacket(new NpcSay(caster.getObjectId(), Say2.TELL, caster.getId(), NpcStringId.DEAR_S1_GIVE_ME_MORE_STRENGTH).addStringParameter(player.getName()));
+										}
+										break;
+									}
+								}
+							}
+						}
+						startQuestTimer("FIGHT", 1000, null, player);
+					}
+					break;
+				}
+			}
+		}
+		return super.onAdvEvent(event, npc, player);
+	}
+	
+	@Override
+	public String onAggroRangeEnter(L2Npc npc, L2PcInstance player, boolean isSummon)
+	{
+		switch (npc.getId())
+		{
+			case LILIM_BUTCHER:
+			case LILIM_GUARD_KNIGHT:
+			{
+				if (npc.isScriptValue(0))
+				{
+					npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.THIS_PLACE_ONCE_BELONGED_TO_LORD_SHILEN));
+					npc.setScriptValue(1);
+				}
+				break;
+			}
+			case LILIM_MAGUS:
+			case LILIM_GREAT_MAGUS:
+			{
+				if (npc.isScriptValue(0))
+				{
+					npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.WHO_DARES_ENTER_THIS_PLACE));
+					npc.setScriptValue(1);
+				}
+				break;
+			}
+			case LILIM_KNIGHT_ERRANT:
+			case LILIM_KNIGHT:
+			{
+				if (npc.isScriptValue(0))
+				{
+					npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.THOSE_WHO_ARE_AFRAID_SHOULD_GET_AWAY_AND_THOSE_WHO_ARE_BRAVE_SHOULD_FIGHT));
+					npc.setScriptValue(1);
+				}
+				break;
+			}
+			case LILIM_SLAYER:
+			{
+				if (npc.isScriptValue(0))
+				{
+					npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.LEAVE_NOW));
+					npc.setScriptValue(1);
+				}
+				break;
+			}
+		}
+		return super.onAggroRangeEnter(npc, player, isSummon);
+	}
+	
+	@Override
+	public String onAttack(L2Npc npc, L2PcInstance player, int damage, boolean isSummon)
+	{
+		InstanceWorld tmpworld = InstanceManager.getInstance().getPlayerWorld(player);
+		if (tmpworld instanceof DNPWorld)
+		{
+			if (npc.isScriptValue(0))
+			{
+				if (npc.getCurrentHp() < (npc.getMaxHp() * 0.1))
+				{
+					giveItems(player, SEAL_OF_BINDING, 1);
+					player.sendPacket(SystemMessageId.THE_SEALING_DEVICE_ACTIVATION_COMPLETE);
+					npc.setScriptValue(1);
+					startQuestTimer("FINISH", 1000, npc, player);
+					cancelQuestTimer("FIGHT", npc, player);
+				}
+			}
+			if (getRandom(100) < 50)
+			{
+				npc.doCast(SEAL_ISOLATION.getSkill());
+			}
+		}
+		return super.onAttack(npc, player, damage, isSummon);
+	}
+	
+	@Override
+	public String onFirstTalk(L2Npc npc, L2PcInstance player)
+	{
+		switch (npc.getId())
+		{
+			case SHUNAIMAN:
+			{
+				return "32586.htm";
+			}
+			case LEON:
+			{
+				return "32587.htm";
+			}
+			case DISCIPLES_GATEKEEPER:
+			{
+				return "32657.htm";
+			}
+		}
+		return super.onFirstTalk(npc, player);
+	}
+	
+	@Override
+	public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
+	{
+		InstanceWorld tmpworld = InstanceManager.getInstance().getPlayerWorld(player);
+		if (tmpworld instanceof DNPWorld)
+		{
+			DNPWorld world = (DNPWorld) tmpworld;
+			world.countKill++;
+			checkDoors(npc, world);
+		}
+		
+		switch (npc.getId())
+		{
+			case LILIM_MAGUS:
+			case LILIM_GREAT_MAGUS:
+			{
+				npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.LORD_SHILEN_SOME_DAY_YOU_WILL_ACCOMPLISH_THIS_MISSION));
+				break;
+			}
+			case LILIM_KNIGHT_ERRANT:
+			case LILIM_KNIGHT:
+			case LILIM_GUARD_KNIGHT:
+			{
+				npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.WHY_ARE_YOU_GETTING_IN_OUR_WAY));
+				break;
+			}
+			case LILIM_SLAYER:
+			{
+				npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.FOR_SHILEN));
+				break;
+			}
+		}
+		return super.onKill(npc, player, isSummon);
+	}
+	
+	@Override
+	public final String onSpawn(L2Npc npc)
+	{
+		npc.setIsMortal(false);
+		return super.onSpawn(npc);
+	}
+	
+	@Override
+	public String onTalk(L2Npc npc, L2PcInstance talker)
+	{
+		final QuestState qs = talker.getQuestState(Q00196_SevenSignsSealOfTheEmperor.class.getSimpleName());
+		String htmltext = getNoQuestMsg(talker);
+		if (qs == null)
+		{
+			return htmltext;
+		}
+		
+		switch (npc.getId())
+		{
+			case PROMISE_OF_MAMMON:
+			{
+				if (qs.isCond(3) || qs.isCond(4))
+				{
+					enterInstance(talker, "DisciplesNecropolisPast.xml", ENTER);
+					return "";
+				}
+				break;
+			}
+			case LEON:
+			{
+				if (qs.getCond() >= 3)
+				{
+					takeItems(talker, SACRED_SWORD_OF_EINHASAD, -1);
+					InstanceWorld world = InstanceManager.getInstance().getPlayerWorld(talker);
+					world.removeAllowed(talker.getObjectId());
+					talker.teleToLocation(EXIT, 0);
+					htmltext = "32587-01.html";
+				}
+				break;
+			}
+			case DISCIPLES_GATEKEEPER:
+			{
+				if (qs.getCond() >= 3)
+				{
+					InstanceWorld tmpworld = InstanceManager.getInstance().getWorld(npc.getInstanceId());
+					if (tmpworld instanceof DNPWorld)
+					{
+						DNPWorld world = (DNPWorld) tmpworld;
+						openDoor(DISCIPLES_NECROPOLIS_DOOR, world.getInstanceId());
+						talker.showQuestMovie(12);
+						startQuestTimer("FIGHT", 1000, null, talker);
+					}
+				}
+				break;
+			}
+		}
+		return htmltext;
+	}
+	
+	private static final void removeBuffs(L2Character ch)
+	{
+		ch.stopAllEffectsExceptThoseThatLastThroughDeath();
+		if (ch.hasSummon())
+		{
+			ch.getSummon().stopAllEffectsExceptThoseThatLastThroughDeath();
+		}
+	}
+	
+	public static void main(String[] args)
+	{
+		new DisciplesNecropolisPast();
+	}
+}
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00192_SevenSignsSeriesOfDoubt/Q00192_SevenSignsSeriesOfDoubt.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00192_SevenSignsSeriesOfDoubt/Q00192_SevenSignsSeriesOfDoubt.java
index 88e6f59408d7e41d1dbf5eb341a16a60f6ad21b3..6f1ccebcc2878211bbdb919a24f712763c3fe855 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00192_SevenSignsSeriesOfDoubt/Q00192_SevenSignsSeriesOfDoubt.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00192_SevenSignsSeriesOfDoubt/Q00192_SevenSignsSeriesOfDoubt.java
@@ -28,7 +28,7 @@ import com.l2jserver.gameserver.model.quest.State;
  * Seven Signs, Series of Doubt (192)
  * @author Adry_85
  */
-public class Q00192_SevenSignsSeriesOfDoubt extends Quest
+public final class Q00192_SevenSignsSeriesOfDoubt extends Quest
 {
 	// NPCs
 	private static final int HOLLINT = 30191;
@@ -43,9 +43,9 @@ public class Q00192_SevenSignsSeriesOfDoubt extends Quest
 	// Misc
 	private static final int MIN_LEVEL = 79;
 	
-	public Q00192_SevenSignsSeriesOfDoubt(int questId, String name, String descr)
+	private Q00192_SevenSignsSeriesOfDoubt()
 	{
-		super(questId, name, descr);
+		super(192, Q00192_SevenSignsSeriesOfDoubt.class.getSimpleName(), "Seven Signs, Series of Doubt");
 		addStartNpc(CROOP, UNIDENTIFIED_BODY);
 		addTalkId(CROOP, STAN, UNIDENTIFIED_BODY, HECTOR, HOLLINT);
 		registerQuestItems(CROOPS_INTRODUCTION, JACOBS_NECKLACE, CROOPS_LETTER);
@@ -54,7 +54,7 @@ public class Q00192_SevenSignsSeriesOfDoubt extends Quest
 	@Override
 	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, false);
 		if (st == null)
 		{
 			return null;
@@ -173,7 +173,6 @@ public class Q00192_SevenSignsSeriesOfDoubt extends Quest
 					if (player.getLevel() >= MIN_LEVEL)
 					{
 						st.addExpAndSp(52518015, 5817677);
-						st.takeItems(CROOPS_LETTER, -1);
 						st.exitQuest(false, true);
 						htmltext = "30191-03.html";
 					}
@@ -191,13 +190,8 @@ public class Q00192_SevenSignsSeriesOfDoubt extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
 		switch (st.getState())
 		{
 			case State.COMPLETED:
@@ -318,6 +312,6 @@ public class Q00192_SevenSignsSeriesOfDoubt extends Quest
 	
 	public static void main(String args[])
 	{
-		new Q00192_SevenSignsSeriesOfDoubt(192, Q00192_SevenSignsSeriesOfDoubt.class.getSimpleName(), "Seven Signs, Series of Doubt");
+		new Q00192_SevenSignsSeriesOfDoubt();
 	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00193_SevenSignsDyingMessage/Q00193_SevenSignsDyingMessage.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00193_SevenSignsDyingMessage/Q00193_SevenSignsDyingMessage.java
index cf595ed2ecac97d4fc27de6c51da3ea08e67affd..626e084bed9b7629a509e5b0205f734860f51f1c 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00193_SevenSignsDyingMessage/Q00193_SevenSignsDyingMessage.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00193_SevenSignsDyingMessage/Q00193_SevenSignsDyingMessage.java
@@ -37,7 +37,7 @@ import com.l2jserver.gameserver.network.serverpackets.NpcSay;
  * Seven Signs, Dying Message (193)
  * @author Adry_85
  */
-public class Q00193_SevenSignsDyingMessage extends Quest
+public final class Q00193_SevenSignsDyingMessage extends Quest
 {
 	// NPCs
 	private static final int SHILENS_EVIL_THOUGHTS = 27343;
@@ -55,9 +55,9 @@ public class Q00193_SevenSignsDyingMessage extends Quest
 	// Skill
 	private static SkillHolder NPC_HEAL = new SkillHolder(4065, 8);
 	
-	public Q00193_SevenSignsDyingMessage(int questId, String name, String descr)
+	private Q00193_SevenSignsDyingMessage()
 	{
-		super(questId, name, descr);
+		super(193, Q00193_SevenSignsDyingMessage.class.getSimpleName(), "Seven Signs, Dying Message");
 		addStartNpc(HOLLINT);
 		addTalkId(HOLLINT, CAIN, ERIC, SIR_GUSTAV_ATHEBALDT);
 		addKillId(SHILENS_EVIL_THOUGHTS);
@@ -78,7 +78,7 @@ public class Q00193_SevenSignsDyingMessage extends Quest
 			return super.onAdvEvent(event, npc, player);
 		}
 		
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, false);
 		if (st == null)
 		{
 			return null;
@@ -212,8 +212,7 @@ public class Q00193_SevenSignsDyingMessage extends Quest
 			return null;
 		}
 		
-		final QuestState st = partyMember.getQuestState(getName());
-		
+		final QuestState st = getQuestState(player, false);
 		if (npc.isInsideRadius(player, 1500, true, false))
 		{
 			st.giveItems(SCULPTURE_OF_DOUBT, 1);
@@ -227,20 +226,14 @@ public class Q00193_SevenSignsDyingMessage extends Quest
 		NpcSay ns = new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.S1_YOU_MAY_HAVE_WON_THIS_TIME_BUT_NEXT_TIME_I_WILL_SURELY_CAPTURE_YOU);
 		ns.addStringParameter(player.getName());
 		npc.broadcastPacket(ns);
-		
 		return super.onKill(npc, player, isSummon);
 	}
 	
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
 		switch (st.getState())
 		{
 			case State.COMPLETED:
@@ -351,6 +344,6 @@ public class Q00193_SevenSignsDyingMessage extends Quest
 	
 	public static void main(String args[])
 	{
-		new Q00193_SevenSignsDyingMessage(193, Q00193_SevenSignsDyingMessage.class.getSimpleName(), "Seven Signs, Dying Message");
+		new Q00193_SevenSignsDyingMessage();
 	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00194_SevenSignsMammonsContract/Q00194_SevenSignsMammonsContract.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00194_SevenSignsMammonsContract/Q00194_SevenSignsMammonsContract.java
index 9461bb1664767aa975f7257449c4570c5e8d9957..9c9cf0d134f03f517ccbba88ddf7c5630ec03366 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00194_SevenSignsMammonsContract/Q00194_SevenSignsMammonsContract.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00194_SevenSignsMammonsContract/Q00194_SevenSignsMammonsContract.java
@@ -32,7 +32,7 @@ import com.l2jserver.gameserver.model.quest.State;
  * Seven Signs, Mammon's Contract (194)
  * @author Adry_85
  */
-public class Q00194_SevenSignsMammonsContract extends Quest
+public final class Q00194_SevenSignsMammonsContract extends Quest
 {
 	// NPCs
 	private static final int SIR_GUSTAV_ATHEBALDT = 30760;
@@ -53,9 +53,9 @@ public class Q00194_SevenSignsMammonsContract extends Quest
 	private static SkillHolder TRANSFORMATION_KID = new SkillHolder(6202, 1);
 	private static SkillHolder TRANSFORMATION_NATIVE = new SkillHolder(6203, 1);
 	
-	public Q00194_SevenSignsMammonsContract(int questId, String name, String descr)
+	private Q00194_SevenSignsMammonsContract()
 	{
-		super(questId, name, descr);
+		super(194, Q00194_SevenSignsMammonsContract.class.getSimpleName(), "Seven Signs, Mammon's Contract");
 		addStartNpc(SIR_GUSTAV_ATHEBALDT);
 		addTalkId(SIR_GUSTAV_ATHEBALDT, COLIN, FROG, TESS, KUTA, CLAUDIA_ATHEBALDT);
 		registerQuestItems(ATHEBALDTS_INTRODUCTION, NATIVES_GLOVE, FROG_KINGS_BEAD, GRANDA_TESS_CANDY_POUCH);
@@ -64,7 +64,7 @@ public class Q00194_SevenSignsMammonsContract extends Quest
 	@Override
 	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, false);
 		if (st == null)
 		{
 			return null;
@@ -346,13 +346,8 @@ public class Q00194_SevenSignsMammonsContract extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
 		switch (st.getState())
 		{
 			case State.COMPLETED:
@@ -580,6 +575,6 @@ public class Q00194_SevenSignsMammonsContract extends Quest
 	
 	public static void main(String args[])
 	{
-		new Q00194_SevenSignsMammonsContract(194, Q00194_SevenSignsMammonsContract.class.getSimpleName(), "Seven Signs, Mammon's Contract");
+		new Q00194_SevenSignsMammonsContract();
 	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00195_SevenSignsSecretRitualOfThePriests/Q00195_SevenSignsSecretRitualOfThePriests.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00195_SevenSignsSecretRitualOfThePriests/Q00195_SevenSignsSecretRitualOfThePriests.java
index 9031c9d7342de5d63f471395a0da9bd3e9629158..2b91e7715cd28ff64bf2a601835bbbd50678f839 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00195_SevenSignsSecretRitualOfThePriests/Q00195_SevenSignsSecretRitualOfThePriests.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00195_SevenSignsSecretRitualOfThePriests/Q00195_SevenSignsSecretRitualOfThePriests.java
@@ -31,7 +31,7 @@ import com.l2jserver.gameserver.model.quest.State;
  * Seven Signs, Secret Ritual of the Priests (195)
  * @author Adry_85
  */
-public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
+public final class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 {
 	// NPCs
 	private static final int RAYMOND = 30289;
@@ -52,9 +52,9 @@ public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 	// private static SkillHolder TRANSFORM_DISPEL = new SkillHolder(6200, 1);
 	private static SkillHolder TRANSFORMATION = new SkillHolder(6204, 1);
 	
-	public Q00195_SevenSignsSecretRitualOfThePriests(int questId, String name, String descr)
+	private Q00195_SevenSignsSecretRitualOfThePriests()
 	{
-		super(questId, name, descr);
+		super(195, Q00195_SevenSignsSecretRitualOfThePriests.class.getSimpleName(), "Seven Signs, Secret Ritual of the Priests");
 		addFirstTalkId(IDENTITY_CONFIRM_DEVICE, PASSWORD_ENTRY_DEVICE, DARKNESS_OF_DAWN, SHELF);
 		addStartNpc(CLAUDIA_ATHEBALDT);
 		addTalkId(CLAUDIA_ATHEBALDT, JOHN, RAYMOND, IASON_HEINE, LIGHT_OF_DAWN, DARKNESS_OF_DAWN, IDENTITY_CONFIRM_DEVICE, PASSWORD_ENTRY_DEVICE, SHELF);
@@ -64,7 +64,7 @@ public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 	@Override
 	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
 	{
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, false);
 		if (st == null)
 		{
 			return null;
@@ -186,13 +186,7 @@ public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 	@Override
 	public String onFirstTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
-		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
+		String htmltext = null;
 		switch (npc.getId())
 		{
 			case IDENTITY_CONFIRM_DEVICE:
@@ -222,13 +216,8 @@ public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
 		switch (st.getState())
 		{
 			case State.COMPLETED:
@@ -247,94 +236,105 @@ public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 			}
 			case State.STARTED:
 			{
-				if (npc.getId() == CLAUDIA_ATHEBALDT)
-				{
-					if (st.isCond(1))
-					{
-						htmltext = "31001-07.html";
-					}
-				}
-				else if (npc.getId() == JOHN)
+				switch (npc.getId())
 				{
-					switch (st.getCond())
+					case CLAUDIA_ATHEBALDT:
 					{
-						case 1:
+						if (st.isCond(1))
 						{
-							htmltext = "32576-01.html";
-							break;
+							htmltext = "31001-07.html";
 						}
-						case 2:
+						break;
+					}
+					case JOHN:
+					{
+						switch (st.getCond())
 						{
-							htmltext = "32576-03.html";
-							break;
+							case 1:
+							{
+								htmltext = "32576-01.html";
+								break;
+							}
+							case 2:
+							{
+								htmltext = "32576-03.html";
+								break;
+							}
 						}
+						break;
 					}
-				}
-				else if (npc.getId() == RAYMOND)
-				{
-					switch (st.getCond())
+					case RAYMOND:
 					{
-						case 2:
+						switch (st.getCond())
 						{
-							if (st.hasQuestItems(IDENTITY_CARD) && (player.getTransformationId() != 113))
+							case 2:
+							{
+								if (st.hasQuestItems(IDENTITY_CARD) && (player.getTransformationId() != 113))
+								{
+									htmltext = "30289-01.html";
+								}
+								break;
+							}
+							case 3:
 							{
-								htmltext = "30289-01.html";
+								if (st.hasQuestItems(IDENTITY_CARD))
+								{
+									htmltext = st.hasQuestItems(SHUNAIMANS_CONTRACT) ? "30289-06.html" : "30289-09.html";
+								}
+								break;
+							}
+							case 4:
+							{
+								htmltext = "30289-12.html";
+								break;
 							}
-							break;
 						}
-						case 3:
+						break;
+					}
+					case LIGHT_OF_DAWN:
+					{
+						if (st.isCond(3))
 						{
 							if (st.hasQuestItems(IDENTITY_CARD))
 							{
-								htmltext = st.hasQuestItems(SHUNAIMANS_CONTRACT) ? "30289-06.html" : "30289-09.html";
+								htmltext = "31001-07.html";
 							}
-							break;
-						}
-						case 4:
-						{
-							htmltext = "30289-12.html";
-							break;
 						}
+						break;
 					}
-				}
-				else if (npc.getId() == LIGHT_OF_DAWN)
-				{
-					if (st.isCond(3))
+					case PASSWORD_ENTRY_DEVICE:
 					{
-						if (st.hasQuestItems(IDENTITY_CARD))
+						if (st.isCond(3) && st.hasQuestItems(IDENTITY_CARD))
 						{
-							htmltext = "31001-07.html";
+							htmltext = "32577-02.html";
+							player.teleToLocation(-78240, 205858, -7856);
 						}
+						break;
 					}
-				}
-				else if (npc.getId() == PASSWORD_ENTRY_DEVICE)
-				{
-					if (st.isCond(3) && st.hasQuestItems(IDENTITY_CARD))
+					case SHELF:
 					{
-						htmltext = "32577-02.html";
-						player.teleToLocation(-78240, 205858, -7856);
-					}
-				}
-				else if (npc.getId() == SHELF)
-				{
-					if (st.isCond(3) && !st.hasQuestItems(SHUNAIMANS_CONTRACT))
-					{
-						st.giveItems(SHUNAIMANS_CONTRACT, 1);
-						htmltext = "32580-02.html";
+						if (st.isCond(3) && !st.hasQuestItems(SHUNAIMANS_CONTRACT))
+						{
+							st.giveItems(SHUNAIMANS_CONTRACT, 1);
+							htmltext = "32580-02.html";
+						}
+						break;
 					}
-				}
-				else if (npc.getId() == DARKNESS_OF_DAWN)
-				{
-					if (st.isCond(3) && !st.hasQuestItems(SHUNAIMANS_CONTRACT))
+					case DARKNESS_OF_DAWN:
 					{
-						htmltext = "32579-02.html";
+						if (st.isCond(3) && !st.hasQuestItems(SHUNAIMANS_CONTRACT))
+						{
+							htmltext = "32579-02.html";
+						}
+						break;
 					}
-				}
-				else if (npc.getId() == IASON_HEINE)
-				{
-					if (st.isCond(4) && st.hasQuestItems(SHUNAIMANS_CONTRACT))
+					case IASON_HEINE:
 					{
-						htmltext = "30969-01.html";
+						if (st.isCond(4) && st.hasQuestItems(SHUNAIMANS_CONTRACT))
+						{
+							htmltext = "30969-01.html";
+						}
+						break;
 					}
 				}
 				break;
@@ -345,6 +345,6 @@ public class Q00195_SevenSignsSecretRitualOfThePriests extends Quest
 	
 	public static void main(String args[])
 	{
-		new Q00195_SevenSignsSecretRitualOfThePriests(195, Q00195_SevenSignsSecretRitualOfThePriests.class.getSimpleName(), "Seven Signs, Secret Ritual of the Priests");
+		new Q00195_SevenSignsSecretRitualOfThePriests();
 	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-01.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-01.htm
new file mode 100644
index 0000000000000000000000000000000000000000..517d5e7b0eccd3723a8a1a2b94486fbe89f93687
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-01.htm
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+Ah, please--come here, come here!<br>I've had a look over that page, and I have good news and bad news in equal measure. First the bad: the document was written in heavy, heavy slang, meaning I've had to best-guess several whole phrases. There were also some markings on the contract which made some sections illegible....<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 30969-02.htm">"Oh... what about the good news?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-02.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-02.htm
new file mode 100644
index 0000000000000000000000000000000000000000..5812f3b172514d43468c120607bbf83065bcf575
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-02.htm
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+The good news, yes yes!<br>I managed to fully translate a <font color="LEVEL">clause in the contract</font> between the Merchants of Mammon and Emperor Shunaiman. It's all rather interesting, and seems to indicate that the Emperor wasn't as on top of things as history suggests.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 30969-03.htm">"Oh?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-03.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-03.htm
new file mode 100644
index 0000000000000000000000000000000000000000..ece52c85463c0cc935825656207acf8285fb898b
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-03.htm
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+Here... it says that Shunaiman and the merchants entered into a secret pact, but only half of the deal is mentioned here: the merchants agreed to aid the Emperor whenever his Seal was under threat.<br>But no merchant worth his salt would agree to a clause like that without getting something in return--so what DID they demand? And why isn't it on this page? Hmm....<br>That's not all either.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 30969-04.htm">"What else have you found?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-04.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-04.htm
new file mode 100644
index 0000000000000000000000000000000000000000..679eca4d43cb438454642256492260856666b0d5
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-04.htm
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+See this part here? This whole section rhymes in Elmoreden.<br>It's like a chant of some sort, though I have no idea why the Merchants would write in such elaborate verse when their language was created for cut-and-thrust matters like illicit trading and the like.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 30969-05.html">"Have you tried reciting the words?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-05.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-05.html
new file mode 100644
index 0000000000000000000000000000000000000000..efe76baa0d4c671ddffb69274c0141af91c39f73
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-05.html
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+No, of course not! What if I were to summon some ancient spirit? Do I look like a fighting man to you?<br>Ah, but now you're here... perhaps I should. Hmm... yes. Here we go....<br><br><font color="LEVEL">"The Merchants of Mammon shall respectfully pledge the following to the Great Emperor Shunaiman:<br>When dark blood begins to swallow the Seal, this paper of promise will reveal itself to the world. Those who have the Emperor's gold must cross the river of time..."</font><br>What? What's happening?! The contract is glowing!<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor ssq_mammon">"Put it down!"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-06.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-06.html
new file mode 100644
index 0000000000000000000000000000000000000000..104d4b7062c824b2d0e6d671c15edb04c8f8f3b3
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-06.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+(The light from the contract fades, and a small figure is seen standing next to Iason.)<br>Oh my! A <font color="LEVEL">merchant of Mammon</font>! Talk to him... quickly!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-07.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-07.html
new file mode 100644
index 0000000000000000000000000000000000000000..210e81575b5238ba7ab41ee511c2d06db070af1c
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-07.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+I don't have time for idle banter right now!<br>(Another player is currently speaking with him.)
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-08.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-08.html
new file mode 100644
index 0000000000000000000000000000000000000000..bd54467c959ab35006182c831728fef8665c2c02
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-08.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+(Only characters who are level 79 or higher and who have completed the <font color="LEVEL">Seven Signs and Secret Ritual of the Priests</font> quests may undertake this quest.)
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-09.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-09.html
new file mode 100644
index 0000000000000000000000000000000000000000..efe76baa0d4c671ddffb69274c0141af91c39f73
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-09.html
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+No, of course not! What if I were to summon some ancient spirit? Do I look like a fighting man to you?<br>Ah, but now you're here... perhaps I should. Hmm... yes. Here we go....<br><br><font color="LEVEL">"The Merchants of Mammon shall respectfully pledge the following to the Great Emperor Shunaiman:<br>When dark blood begins to swallow the Seal, this paper of promise will reveal itself to the world. Those who have the Emperor's gold must cross the river of time..."</font><br>What? What's happening?! The contract is glowing!<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor ssq_mammon">"Put it down!"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-10.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-10.html
new file mode 100644
index 0000000000000000000000000000000000000000..25221cc7ecc67758bf53c67ef3ad8bdedf2a9b11
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-10.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+Incredible... so the seal was under threat many years ago, and we must now go and <font color="LEVEL">aid the Emperor</font> by travelling back to the time of his rule?<br>The science is mind-boggling, frankly. How will we know what implications your interference will cause? But then... what if the past IS our past BECAUSE you time-travelled. Oh....<br>There's no time to ponder any of this--just <font color="LEVEL">go to the Disciple's Necropolis</font> and <font color="LEVEL">find the Promise of Mammon</font>! I'll send word if I discover something's amiss!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-11.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-11.html
new file mode 100644
index 0000000000000000000000000000000000000000..2359fa90b120b5c74c8f77a6cee4674bdda8fe91
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-11.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+Now's not the time, adventurer!<br>Hurry to the <font color="LEVEL">Disciple's Necropolis</font> and find the <font color="LEVEL">Promise of Mammon</font>!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-12.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-12.html
new file mode 100644
index 0000000000000000000000000000000000000000..de3115a7aa04d8e7f9b66b544640087cd6fd5b2a
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-12.html
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+You're back!<br>Tell me all that happened, please! I've almost rubbed my hands raw with worry.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 30969-13.html">"Well..."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-13.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-13.html
new file mode 100644
index 0000000000000000000000000000000000000000..76734e41cfaa9a578b8796f147030e4b61573c87
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-13.html
@@ -0,0 +1,4 @@
+<html><body>Iason Heine:<br>
+Incredible. Absolutely incredible.<br>And now this book... we must find it. What did you say the clues were again? The <font color="LEVEL">Emperor's Key</font>, and the <font color="LEVEL">Witness of Dawn</font>?<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 30969-14.html">"That's right."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-14.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-14.html
new file mode 100644
index 0000000000000000000000000000000000000000..be315d0b454ac2eb45d236dac4d974abb4c47346
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-14.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+Well, I can't help with the Emperor's Key, but the Witness of Dawn... hmm.<br>The Lords of Dawn have long used that term for their first--their leader. The Leader, the Prima, is the first to welcome the rising sun on their special occasions, where he witnesses the passing of night into day.<br>The current Witness of Dawn is a man named <font color="LEVEL">Franz</font>, but he doesn't often meet others. I suggest you go first to the <font color="LEVEL">Temple of Einhasad</font> in <font color="LEVEL">Aden Town</font> and meet with <font color="LEVEL">Priest Wood</font>. He should be able to set a meeting up between the two of you.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-15.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-15.html
new file mode 100644
index 0000000000000000000000000000000000000000..1dbc4109b5fb5a68d002c6086f0fb020c010c2b0
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/30969-15.html
@@ -0,0 +1,3 @@
+<html><body>Iason Heine:<br>
+Go and meet <font color="LEVEL">Priest Wood</font> in the <font color="LEVEL">Temple of Einhasad</font>, traveller! He'll be able to set up a meeting with the Witness of Dawn.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-01.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-01.html
new file mode 100644
index 0000000000000000000000000000000000000000..33e2187fd2540c6b3e56b0263da2f9df94a78acc
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-01.html
@@ -0,0 +1,4 @@
+<html><body>Merchant of Mammon:<br>
+Was it you who summoned me from the Necropolis? Then you must have Shunaiman's contract in your possession....<br>We inked our names in that document 1500 years ago, but still the paper bears our names, and still we are bound to honor the terms set out in it.<br>I assume you have summoned me so that the clause can finally be honored?<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32584-02.html">"Actually..."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-02.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-02.html
new file mode 100644
index 0000000000000000000000000000000000000000..3de05be589b8a601fed8c8d52467d275d2a74a94
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-02.html
@@ -0,0 +1,4 @@
+<html><body>Merchant of Mammon:<br>
+It was a simple enough deal: the Merchants of Mammon would supply the Emperor with funds and military hardware, and in return our trading would be left unhindered. The profits we made were astonishing, beating even our most optimistic projections.<br>In return though, the Emperor gained use of a great, great power....<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32584-03.html">"What power?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-03.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-03.html
new file mode 100644
index 0000000000000000000000000000000000000000..9e96c5776abb75851084ff508f6eb559c534aedd
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-03.html
@@ -0,0 +1,4 @@
+<html><body>Merchant of Mammon:<br>
+The power to move between planes, child!<br>We first used it to travel from Necropolis to Necropolis, but soon augmented our device to allow us travel on a different axis: <font color="LEVEL">time itself</font>.<br>We called it <font color="LEVEL">'The Promise of Mammon'</font>. It was the most powerful creation in Aden's history, and a tool that Emperor Shunaiman was granted access to in that contract of ours.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32584-04.html">"Where is it?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-04.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-04.html
new file mode 100644
index 0000000000000000000000000000000000000000..26b2cf66bddad9171f8f99a01aebd8c774bf50af
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-04.html
@@ -0,0 +1,4 @@
+<html><body>Merchant of Mammon:<br>
+It lies near the entrance to the <font color="LEVEL">Disciple's Necropolis</font>. You must find it, and meet with Emperor Shunaiman. Aid him and our word will finally be honored, we will be released from that infernal contract....<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32584-05.html">"You can't go yourself?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-05.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-05.html
new file mode 100644
index 0000000000000000000000000000000000000000..e61d444ea08536d542ce501d2552fb891dcbb12d
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-05.html
@@ -0,0 +1,3 @@
+<html><body>Merchant of Mammon:<br>
+I am little more than dust these days, child. We always expected to be called in our lifetimes, but this is your time now, not ours.<br>Help the Emperor. Help Shunaiman!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-06.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-06.html
new file mode 100644
index 0000000000000000000000000000000000000000..f28c77c505625ec432c42eebe839273d5f80c1e4
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584-06.html
@@ -0,0 +1,3 @@
+<html><body>Merchant of Mammon:<br>
+You were not the one who summoned me! Leave--now!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584.htm b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584.htm
new file mode 100644
index 0000000000000000000000000000000000000000..8c2ee9ea7443548ac6f7d31165aca554249d09d5
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32584.htm
@@ -0,0 +1,4 @@
+<html><body>Merchant of Mammon:<br>
+Is it finally time? Is this the day that the Merchants of Mammon are finally asked to keep their ancient promise?<br>
+<a action="bypass -h npc_%objectId%_Quest">Quest</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-01.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-01.html
new file mode 100644
index 0000000000000000000000000000000000000000..fbff334c1270e49bc861bdc3c9364082ff7066f4
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-01.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+Who are you? How did you get in here?<br>Who do you serve? Shilen, or your true Emperor? Answer me!<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-02.html">"I'm here to honor the agreement you made with the Merchants of Mammon."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-02.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-02.html
new file mode 100644
index 0000000000000000000000000000000000000000..749b82fb1cb0919b8f31d2ce506b4382faacd1c2
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-02.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+Of course! The Merchants of Mammon! Einhasad's fortunes finally smiles down upon me!<br>But... where are you from? I have never seen clothes like those before, and that weapon!<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-03.html">"I'm not from your time, Emperor. You've been dead for over 1000 years in my world."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-03.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-03.html
new file mode 100644
index 0000000000000000000000000000000000000000..6c4fb37a58bb09cd14fa99482092fd343c10367f
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-03.html
@@ -0,0 +1,5 @@
+<html><body>Emperor Shunaiman:<br>
+The future?! So that's what they meant....<br>And what of my rule? Am I remembered favorably? Is the empire still inta... no. Now is not the time! We will save talking for later; now we must fight to guarantee we can still draw breath by the evening's close.<br>Einhasad's own angel, Anakim, leads my forces against Lilith, Shilen's daughter. This is a war of absolute horror, of field after field stained red with the blood of Aden's people. Yet I can see no immediate resolution... I fear that when the dust of this great conflict has settled, the victor will have naught to rule over but ruined lands and a broken people.<br>That is why I sought to activate the seal. But even then my path was blocked. The men I sent were each butchered, and now even I have been wounded. But you... will you help?<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-04.html">"I will, Emperor."</a><br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-05.html">"No. Help yourself."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-04.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-04.html
new file mode 100644
index 0000000000000000000000000000000000000000..707c32ca52808f4005d2624c7ad87f374d09d810
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-04.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+Thank you!<br>Listen closely as I tell you what you need to do. <font color="LEVEL">Lilith</font> has blocked access to the Seal by <font color="LEVEL">summoning a fire wall</font>, but the fires can be extinguished by this <font color="LEVEL">holy water</font>.<br>Once that has been done, there's a <font color="LEVEL">red door</font> that you'll need to go through.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-06.html">"Holy water on the fire, red door."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-05.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-05.html
new file mode 100644
index 0000000000000000000000000000000000000000..354326c5c2fd64c15e50b8b644a0a2aeb0d1a221
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-05.html
@@ -0,0 +1,3 @@
+<html><body>Emperor Shunaiman:<br>
+No? Then the time you came from is a heartless one indeed. Leave then. Leon will assist you.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-06.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-06.html
new file mode 100644
index 0000000000000000000000000000000000000000..59ab69fa79629bcd8c42953a63411c2a768ea2ab
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-06.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+You'll need to have your wits about you in the next room, as you'll come face to face with some of <font color="LEVEL">Lilith's strongest minions</font>.<br>Here... take my <font color="LEVEL">sword</font>. It has been blessed by Einhasad herself; <font color="LEVEL">its strengths</font> will be a great boon to you.... Ahh, the pain....<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-07.html">"Are you all right?"</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-07.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-07.html
new file mode 100644
index 0000000000000000000000000000000000000000..a9672d9339b7386c9e485dde2d8681ad618500f1
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-07.html
@@ -0,0 +1,3 @@
+<html><body>Emperor Shunaiman:<br>
+Don't worry about me! I am built of simple flesh and bone, but the Empire... it houses the dreams of so, so many people.<br>Now, listen. The final room contains <font color="LEVEL">four sealing devices</font>, each of which need to be activated. You will then need to gather the <font color="LEVEL">four Binding Seals</font>... and bring them back to me.<br>Do not lose <font color="LEVEL">the sword</font>, and do not discard <font color="LEVEL">the holy water</font>--they are absolutely vital to our survival!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-08.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-08.html
new file mode 100644
index 0000000000000000000000000000000000000000..83fbaf7493142c9617b82e1865cc8b7c38726b9d
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-08.html
@@ -0,0 +1,3 @@
+<html><body>Emperor Shunaiman:<br>
+Remember, you must <font color="LEVEL">activate all four sealing devices</font>, then bring me the <font color="LEVEL">Binding Seals</font>!<br>Oh, and <font color="LEVEL">holy water</font> on the magical fire, then through the <font color="LEVEL">red door</font>!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-09.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-09.html
new file mode 100644
index 0000000000000000000000000000000000000000..f08753510420d7b0c37670917f4fb1b8f0ca5899
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-09.html
@@ -0,0 +1,3 @@
+<html><body>Emperor Shunaiman:<br>
+Do not lose those things. Without them you cannot complete your task, and the Empire will fall.<br>Do not fail us!
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-10.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-10.html
new file mode 100644
index 0000000000000000000000000000000000000000..f09e41a32eb885d009e4dccac32e6e006da5eaaa
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-10.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+The Binding Seals! Perhaps now we can reverse the tide of this terrible, terrible conflict.<br>And all this... because of you. Please, stay here and become the Empire's guardian--I could do with someone like you by my side.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-11.html">"I'm sorry Emperor, but I'm not from your time."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-11.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-11.html
new file mode 100644
index 0000000000000000000000000000000000000000..229d0edd11e788d08b6318604c2f4962bd14fb7e
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-11.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+Ah, of course. No doubt you have many friends and family waiting for you. Very well.<br>But I would be remiss not to you involve you in the Empire's wellbeing somehow. Hmm....<br>Ah! I shall have a book made, detailing the secrets... of the seals. I will have it hidden, and I want you to be the one to find it.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-12.html">"I see."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-12.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-12.html
new file mode 100644
index 0000000000000000000000000000000000000000..8c24862b2f31cb290e328622d07e9fc8ca54ae3e
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-12.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+There are seven seals, you see. Each is extremely powerful, but still delicate enough to be destroyed should enough force be applied to it.<br>I'll call the tome the <font color="LEVEL">Book of Seals</font>, and it will contain all the secrets of the Seals. You must recover it. Shilen must never even know of its existence.<br>Now....<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-13.html">"Where to hide it..."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-13.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-13.html
new file mode 100644
index 0000000000000000000000000000000000000000..f25b1d38d53f4ad6e7d37e6095113bf2e0180eca
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-13.html
@@ -0,0 +1,4 @@
+<html><body>Emperor Shunaiman:<br>
+Exactly! Oh, how I have longed for someone of your intelligence and bravery to show up.<br>I could search the whole kingdom from house to house and not find anyone more suitable than you.<br>Ah... perhaps I should set you a final test before I deem you worthy of the Book of Seals, hmm? One can never be... too careful with matters of such importance!<br>Now, I'll leave two clues for you.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32586-14.html">"Okay...."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-14.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-14.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa8d1e1b32727819a8b7d8aa971c8d355811ce9c
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-14.html
@@ -0,0 +1,3 @@
+<html><body>Emperor Shunaiman:<br>
+The book itself will stay on this continent, and the clues will be in the <font color="LEVEL">Witness of Dawn</font>, and in the words of the <font color="LEVEL">Emperor's Key</font>.<br>Now I must ask... for time to heal. <font color="LEVEL">Leon</font> will see you out.<br>Oh... and thank you. The Empire stands because of people like you... willing to bear its weight on your shoulders. I am... in your debt.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-15.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-15.html
new file mode 100644
index 0000000000000000000000000000000000000000..760a5bcf5b77f289f4d955fb86afd84dca18460d
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32586-15.html
@@ -0,0 +1,3 @@
+<html><body>Emperor Shunaiman:<br>
+Speak to Leon, my friend. He'll send you back to your time....
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32593-01.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32593-01.html
new file mode 100644
index 0000000000000000000000000000000000000000..a6990835a5232dbb7bb13749454fb01c6b32ad37
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32593-01.html
@@ -0,0 +1,4 @@
+<html><body>Priest Wood:<br>
+Yes, traveller? Is there something I can do for you?<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor finish">"I understand you can introduce me to Franz. Iason Heine sent me."</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32593-02.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32593-02.html
new file mode 100644
index 0000000000000000000000000000000000000000..163d020fd0dfcff7aca3c1d3aefb0d3c62bc22ff
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32593-02.html
@@ -0,0 +1,3 @@
+<html><body>Priest Wood:<br>
+Ah yes, he sent word someone was coming.<br>I am to give you this small reward. I understand the work you have done for the Order has helped us greatly.<br>Now, as for Franz....
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-01.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-01.html
new file mode 100644
index 0000000000000000000000000000000000000000..7e96426a919e3995ed8487b566969f8898813243
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-01.html
@@ -0,0 +1,4 @@
+<html><body>Court Magician:<br>
+You look over the body quickly, and finally notice a message written in blood on the floor.<br>
+<a action="bypass -h Quest Q00196_SevenSignsSealOfTheEmperor 32598-02.html">Read the message.</a>
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-02.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-02.html
new file mode 100644
index 0000000000000000000000000000000000000000..5cccf701f14c2ae89694b8194e7e56620687ade5
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-02.html
@@ -0,0 +1,3 @@
+<html><body>Court Magician:<br>
+<font color="LEVEL">"Use the staff. Open door. With staff. Save the Empire."</font><br>Pick up the staff.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-03.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-03.html
new file mode 100644
index 0000000000000000000000000000000000000000..8bfb9b92a3aae13146ec008d30067f133666bfb8
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/32598-03.html
@@ -0,0 +1,3 @@
+<html><body>Court Magician:<br>
+There's nothing else of significance here for you.
+</body></html>
\ No newline at end of file
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/Q00196_SevenSignsSealOfTheEmperor.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/Q00196_SevenSignsSealOfTheEmperor.java
new file mode 100644
index 0000000000000000000000000000000000000000..19d270f84ead82f6432ac212d0b445b25ab5fac6
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/Q00196_SevenSignsSealOfTheEmperor.java
@@ -0,0 +1,379 @@
+/*
+ * Copyright (C) 2004-2013 L2J DataPack
+ * 
+ * This file is part of L2J DataPack.
+ * 
+ * L2J DataPack is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J DataPack is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package quests.Q00196_SevenSignsSealOfTheEmperor;
+
+import quests.Q00195_SevenSignsSecretRitualOfThePriests.Q00195_SevenSignsSecretRitualOfThePriests;
+
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.quest.Quest;
+import com.l2jserver.gameserver.model.quest.QuestState;
+import com.l2jserver.gameserver.model.quest.State;
+import com.l2jserver.gameserver.network.NpcStringId;
+import com.l2jserver.gameserver.network.SystemMessageId;
+import com.l2jserver.gameserver.network.clientpackets.Say2;
+import com.l2jserver.gameserver.network.serverpackets.NpcSay;
+
+/**
+ * Seven Signs, Seal of the Emperor (196)
+ * @author Adry_85
+ */
+public final class Q00196_SevenSignsSealOfTheEmperor extends Quest
+{
+	// NPCs
+	private static final int IASON_HEINE = 30969;
+	private static final int MERCHANT_OF_MAMMON = 32584;
+	private static final int SHUNAIMAN = 32586;
+	private static final int WOOD = 32593;
+	private static final int COURT_MAGICIAN = 32598;
+	// Items
+	private static final int ELMOREDEN_HOLY_WATER = 13808;
+	private static final int COURT_MAGICIANS_MAGIC_STAFF = 13809;
+	private static final int SEAL_OF_BINDING = 13846;
+	private static final int SACRED_SWORD_OF_EINHASAD = 15310;
+	// Misc
+	private static final int MIN_LEVEL = 79;
+	private boolean isBusy = false;
+	
+	private Q00196_SevenSignsSealOfTheEmperor()
+	{
+		super(196, Q00196_SevenSignsSealOfTheEmperor.class.getSimpleName(), "Seven Signs, Seal of the Emperor");
+		addFirstTalkId(MERCHANT_OF_MAMMON);
+		addStartNpc(IASON_HEINE);
+		addTalkId(IASON_HEINE, MERCHANT_OF_MAMMON, SHUNAIMAN, WOOD, COURT_MAGICIAN);
+		registerQuestItems(ELMOREDEN_HOLY_WATER, COURT_MAGICIANS_MAGIC_STAFF, SEAL_OF_BINDING, SACRED_SWORD_OF_EINHASAD);
+	}
+	
+	@Override
+	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+	{
+		if ((npc.getId() == MERCHANT_OF_MAMMON) && "DESPAWN".equals(event))
+		{
+			isBusy = false;
+			npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.THE_ANCIENT_PROMISE_TO_THE_EMPEROR_HAS_BEEN_FULFILLED));
+			npc.deleteMe();
+			return super.onAdvEvent(event, npc, player);
+		}
+		
+		final QuestState st = getQuestState(player, false);
+		if (st == null)
+		{
+			return null;
+		}
+		
+		String htmltext = null;
+		switch (event)
+		{
+			case "30969-02.htm":
+			case "30969-03.htm":
+			case "30969-04.htm":
+			{
+				htmltext = event;
+				break;
+			}
+			case "30969-05.html":
+			{
+				st.startQuest();
+				htmltext = event;
+				break;
+			}
+			case "ssq_mammon":
+			{
+				if (st.isCond(1))
+				{
+					if (!isBusy)
+					{
+						isBusy = true;
+						npc.setScriptValue(1);
+						final L2Npc merchant = addSpawn(MERCHANT_OF_MAMMON, 109743, 219975, -3512, 0, false, 0, false);
+						merchant.broadcastPacket(new NpcSay(merchant.getObjectId(), Say2.NPC_ALL, merchant.getId(), NpcStringId.WHO_DARES_SUMMON_THE_MERCHANT_OF_MAMMON));
+						htmltext = "30969-06.html";
+						startQuestTimer("DESPAWN", 120000, merchant, null);
+					}
+					else
+					{
+						htmltext = "30969-07.html";
+					}
+				}
+				break;
+			}
+			case "30969-13.html":
+			{
+				if (st.isCond(5))
+				{
+					htmltext = event;
+				}
+				break;
+			}
+			case "30969-14.html":
+			{
+				if (st.isCond(5))
+				{
+					st.setCond(6, true);
+					htmltext = event;
+				}
+				break;
+			}
+			case "32584-02.html":
+			case "32584-03.html":
+			case "32584-04.html":
+			{
+				if (st.isCond(1))
+				{
+					htmltext = event;
+				}
+				break;
+			}
+			case "32584-05.html":
+			{
+				if (st.isCond(1))
+				{
+					st.setCond(2, true);
+					htmltext = event;
+					cancelQuestTimers("DESPAWN");
+					npc.deleteMe();
+					isBusy = false;
+				}
+				break;
+			}
+			case "32586-02.html":
+			case "32586-03.html":
+			case "32586-04.html":
+			case "32586-06.html":
+			{
+				if (st.isCond(3))
+				{
+					htmltext = event;
+				}
+				break;
+			}
+			case "32586-07.html":
+			{
+				if (st.isCond(3))
+				{
+					giveItems(player, ELMOREDEN_HOLY_WATER, 1);
+					giveItems(player, SACRED_SWORD_OF_EINHASAD, 1);
+					st.setCond(4, true);
+					player.sendPacket(SystemMessageId.USING_EINHASAD_HOLY_SWORD_DEFEAT_LILIMS);
+					player.sendPacket(SystemMessageId.USING_EINHASAD_HOLY_WATER_TO_OPEN_DOOR);
+					htmltext = event;
+				}
+				break;
+			}
+			case "32586-11.html":
+			case "32586-12.html":
+			case "32586-13.html":
+			{
+				if (st.isCond(4) && (getQuestItemsCount(player, SEAL_OF_BINDING) >= 4))
+				{
+					htmltext = event;
+				}
+				break;
+			}
+			case "32586-14.html":
+			{
+				if (st.isCond(4) && (getQuestItemsCount(player, SEAL_OF_BINDING) >= 4))
+				{
+					takeItems(player, -1, ELMOREDEN_HOLY_WATER, COURT_MAGICIANS_MAGIC_STAFF, SEAL_OF_BINDING, SACRED_SWORD_OF_EINHASAD);
+					st.setCond(5, true);
+					htmltext = event;
+				}
+				break;
+			}
+			case "finish":
+			{
+				if (st.isCond(6))
+				{
+					if (player.getLevel() >= MIN_LEVEL)
+					{
+						addExpAndSp(player, 52518015, 5817677);
+						st.exitQuest(false, true);
+						htmltext = "32593-02.html";
+					}
+					else
+					{
+						htmltext = "level_check.html";
+					}
+				}
+				break;
+			}
+			case "32598-02.html":
+			{
+				if (st.isCond(3) || st.isCond(4))
+				{
+					giveItems(player, COURT_MAGICIANS_MAGIC_STAFF, 1);
+					htmltext = event;
+				}
+				break;
+			}
+		}
+		return htmltext;
+	}
+	
+	@Override
+	public String onFirstTalk(L2Npc npc, L2PcInstance player)
+	{
+		return "32584.htm";
+	}
+	
+	@Override
+	public String onTalk(L2Npc npc, L2PcInstance player)
+	{
+		QuestState st = getQuestState(player, true);
+		String htmltext = getNoQuestMsg(player);
+		switch (st.getState())
+		{
+			case State.COMPLETED:
+			{
+				htmltext = getAlreadyCompletedMsg(player);
+				break;
+			}
+			case State.CREATED:
+			{
+				if (npc.getId() == IASON_HEINE)
+				{
+					st = player.getQuestState(Q00195_SevenSignsSecretRitualOfThePriests.class.getSimpleName());
+					htmltext = ((player.getLevel() >= MIN_LEVEL) && (st != null) && (st.isCompleted())) ? "30969-01.htm" : "30969-08.html";
+				}
+				break;
+			}
+			case State.STARTED:
+			{
+				switch (npc.getId())
+				{
+					case IASON_HEINE:
+					{
+						switch (st.getCond())
+						{
+							case 1:
+							{
+								htmltext = "30969-09.html";
+								break;
+							}
+							case 2:
+							{
+								st.setCond(3, true);
+								npc.setScriptValue(0);
+								htmltext = "30969-10.html";
+								break;
+							}
+							case 3:
+							case 4:
+							{
+								htmltext = "30969-11.html";
+								break;
+							}
+							case 5:
+							{
+								htmltext = "30969-12.html";
+								break;
+							}
+							case 6:
+							{
+								htmltext = "30969-15.html";
+								break;
+							}
+						}
+						break;
+					}
+					case MERCHANT_OF_MAMMON:
+					{
+						if (st.isCond(1))
+						{
+							if (npc.isScriptValue(0))
+							{
+								npc.setScriptValue(player.getObjectId());
+							}
+							htmltext = (npc.isScriptValue(player.getObjectId())) ? "32584-01.html" : "32584-06.html";
+						}
+						break;
+					}
+					case SHUNAIMAN:
+					{
+						switch (st.getCond())
+						{
+							case 3:
+							{
+								htmltext = "32586-01.html";
+								break;
+							}
+							case 4:
+							{
+								if (getQuestItemsCount(player, SEAL_OF_BINDING) < 4)
+								{
+									if (hasQuestItems(player, ELMOREDEN_HOLY_WATER, SACRED_SWORD_OF_EINHASAD))
+									{
+										htmltext = "32586-08.html";
+									}
+									else if (!hasQuestItems(player, ELMOREDEN_HOLY_WATER) && hasQuestItems(player, SACRED_SWORD_OF_EINHASAD))
+									{
+										htmltext = "32586-09.html";
+										giveItems(player, ELMOREDEN_HOLY_WATER, 1);
+									}
+									else if (hasQuestItems(player, ELMOREDEN_HOLY_WATER) && !hasQuestItems(player, SACRED_SWORD_OF_EINHASAD))
+									{
+										htmltext = "32586-09.html";
+										giveItems(player, SACRED_SWORD_OF_EINHASAD, 1);
+									}
+									player.sendPacket(SystemMessageId.USING_EINHASAD_HOLY_SWORD_DEFEAT_LILIMS);
+									player.sendPacket(SystemMessageId.USING_EINHASAD_HOLY_WATER_TO_OPEN_DOOR);
+								}
+								else
+								{
+									htmltext = "32586-10.html";
+								}
+								break;
+							}
+							case 5:
+							{
+								htmltext = "32586-15.html";
+								break;
+							}
+						}
+						break;
+					}
+					case WOOD:
+					{
+						if (st.isCond(6))
+						{
+							htmltext = "32593-01.html";
+						}
+						break;
+					}
+					case COURT_MAGICIAN:
+					{
+						if (st.isCond(3) || st.isCond(4))
+						{
+							htmltext = (!hasQuestItems(player, COURT_MAGICIANS_MAGIC_STAFF)) ? "32598-01.html" : "32598-03.html";
+							player.sendPacket(SystemMessageId.USING_COURT_MAGICIANS_STAFF_TO_OPEN_DOOR);
+						}
+						break;
+					}
+				}
+				break;
+			}
+		}
+		return htmltext;
+	}
+	
+	public static void main(String args[])
+	{
+		new Q00196_SevenSignsSealOfTheEmperor();
+	}
+}
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/level_check.html b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/level_check.html
new file mode 100644
index 0000000000000000000000000000000000000000..3960d3451f6be5ab36fc5ec7407dedf5fd0171ab
--- /dev/null
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00196_SevenSignsSealOfTheEmperor/level_check.html
@@ -0,0 +1,2 @@
+<html><body>Characters who are <font color="LEVEL">level 79 or above</font> may redeem the <font color="LEVEL">Reward for the Current Quest</font>.
+</body></html>
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00197_SevenSignsTheSacredBookOfSeal/Q00197_SevenSignsTheSacredBookOfSeal.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00197_SevenSignsTheSacredBookOfSeal/Q00197_SevenSignsTheSacredBookOfSeal.java
index 3b7adeccd40c13e917da482b902985e445d08d3d..8b633cca50f916dda6dd911c5c2f21ec7e6756fe 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00197_SevenSignsTheSacredBookOfSeal/Q00197_SevenSignsTheSacredBookOfSeal.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00197_SevenSignsTheSacredBookOfSeal/Q00197_SevenSignsTheSacredBookOfSeal.java
@@ -18,6 +18,8 @@
  */
 package quests.Q00197_SevenSignsTheSacredBookOfSeal;
 
+import quests.Q00196_SevenSignsSealOfTheEmperor.Q00196_SevenSignsSealOfTheEmperor;
+
 import com.l2jserver.gameserver.ai.CtrlIntention;
 import com.l2jserver.gameserver.enums.QuestSound;
 import com.l2jserver.gameserver.model.actor.L2Npc;
@@ -34,7 +36,7 @@ import com.l2jserver.gameserver.network.serverpackets.NpcSay;
  * Seven Signs, The Sacred Book of Seal (197)
  * @author Adry_85
  */
-public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
+public final class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 {
 	// NPCs
 	private static final int SHILENS_EVIL_THOUGHTS = 27396;
@@ -50,9 +52,9 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 	private static final int MIN_LEVEL = 79;
 	private boolean isBusy = false;
 	
-	public Q00197_SevenSignsTheSacredBookOfSeal(int questId, String name, String descr)
+	private Q00197_SevenSignsTheSacredBookOfSeal()
 	{
-		super(questId, name, descr);
+		super(197, Q00197_SevenSignsTheSacredBookOfSeal.class.getSimpleName(), "Seven Signs, the Sacred Book of Seal");
 		addStartNpc(WOOD);
 		addTalkId(WOOD, ORVEN, LEOPARD, LAWRENCE, SOPHIA);
 		addKillId(SHILENS_EVIL_THOUGHTS);
@@ -73,7 +75,7 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 			return super.onAdvEvent(event, npc, player);
 		}
 		
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, false);
 		if (st == null)
 		{
 			return null;
@@ -96,7 +98,7 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 			}
 			case "32593-08.html":
 			{
-				if (st.isCond(6) && st.hasQuestItems(MYSTERIOUS_HAND_WRITTEN_TEXT) && st.hasQuestItems(SCULPTURE_OF_DOUBT))
+				if (st.isCond(6) && st.hasQuestItems(MYSTERIOUS_HAND_WRITTEN_TEXT, SCULPTURE_OF_DOUBT))
 				{
 					htmltext = event;
 				}
@@ -168,10 +170,8 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 				if (st.isCond(3))
 				{
 					isBusy = true;
-					NpcSay ns = new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.S1_THAT_STRANGER_MUST_BE_DEFEATED_HERE_IS_THE_ULTIMATE_HELP);
-					ns.addStringParameter(player.getName());
-					npc.broadcastPacket(ns);
-					L2MonsterInstance monster = (L2MonsterInstance) addSpawn(SHILENS_EVIL_THOUGHTS, 152520, -57502, -3408, 0, false, 0, false);
+					npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.S1_THAT_STRANGER_MUST_BE_DEFEATED_HERE_IS_THE_ULTIMATE_HELP).addStringParameter(player.getName()));
+					final L2MonsterInstance monster = (L2MonsterInstance) addSpawn(SHILENS_EVIL_THOUGHTS, 152520, -57502, -3408, 0, false, 0, false);
 					monster.broadcastPacket(new NpcSay(monster.getObjectId(), Say2.NPC_ALL, monster.getId(), NpcStringId.YOU_ARE_NOT_THE_OWNER_OF_THAT_ITEM));
 					monster.setRunning();
 					monster.addDamageHate(player, 0, 999);
@@ -231,8 +231,7 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 			return null;
 		}
 		
-		final QuestState st = partyMember.getQuestState(getName());
-		
+		final QuestState st = getQuestState(player, false);
 		if (npc.isInsideRadius(player, 1500, true, false))
 		{
 			st.giveItems(SCULPTURE_OF_DOUBT, 1);
@@ -251,13 +250,8 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
 		switch (st.getState())
 		{
 			case State.COMPLETED:
@@ -269,7 +263,7 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 			{
 				if (npc.getId() == WOOD)
 				{
-					st = player.getQuestState("Q00196_SevenSignsSealOfTheEmperor");
+					st = player.getQuestState(Q00196_SevenSignsSealOfTheEmperor.class.getSimpleName());
 					htmltext = ((player.getLevel() >= MIN_LEVEL) && (st != null) && (st.isCompleted())) ? "32593-01.htm" : "32593-05.html";
 				}
 				break;
@@ -286,7 +280,7 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 						}
 						else if (st.isCond(6))
 						{
-							if (st.hasQuestItems(MYSTERIOUS_HAND_WRITTEN_TEXT) && st.hasQuestItems(SCULPTURE_OF_DOUBT))
+							if (st.hasQuestItems(MYSTERIOUS_HAND_WRITTEN_TEXT, SCULPTURE_OF_DOUBT))
 							{
 								htmltext = "32593-07.html";
 							}
@@ -357,7 +351,7 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 						}
 						else if (st.getCond() >= 6)
 						{
-							if (st.hasQuestItems(SCULPTURE_OF_DOUBT) && st.hasQuestItems(MYSTERIOUS_HAND_WRITTEN_TEXT))
+							if (st.hasQuestItems(SCULPTURE_OF_DOUBT, MYSTERIOUS_HAND_WRITTEN_TEXT))
 							{
 								htmltext = "32596-05.html";
 							}
@@ -373,6 +367,6 @@ public class Q00197_SevenSignsTheSacredBookOfSeal extends Quest
 	
 	public static void main(String args[])
 	{
-		new Q00197_SevenSignsTheSacredBookOfSeal(197, Q00197_SevenSignsTheSacredBookOfSeal.class.getSimpleName(), "Seven Signs, the Sacred Book of Seal");
+		new Q00197_SevenSignsTheSacredBookOfSeal();
 	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00198_SevenSignsEmbryo/Q00198_SevenSignsEmbryo.java b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00198_SevenSignsEmbryo/Q00198_SevenSignsEmbryo.java
index d6d865032ef3897931032ce1222310487e3c6952..1536b20c792ad6efc87e4220107b363437cc2506 100644
--- a/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00198_SevenSignsEmbryo/Q00198_SevenSignsEmbryo.java
+++ b/L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00198_SevenSignsEmbryo/Q00198_SevenSignsEmbryo.java
@@ -37,7 +37,7 @@ import com.l2jserver.gameserver.network.serverpackets.NpcSay;
  * Seven Signs, Embryo (198)
  * @author Adry_85
  */
-public class Q00198_SevenSignsEmbryo extends Quest
+public final class Q00198_SevenSignsEmbryo extends Quest
 {
 	// NPCs
 	private static final int SHILENS_EVIL_THOUGHTS = 27346;
@@ -53,9 +53,9 @@ public class Q00198_SevenSignsEmbryo extends Quest
 	// Skill
 	private static SkillHolder NPC_HEAL = new SkillHolder(4065, 8);
 	
-	public Q00198_SevenSignsEmbryo(int questId, String name, String descr)
+	private Q00198_SevenSignsEmbryo()
 	{
-		super(questId, name, descr);
+		super(198, Q00198_SevenSignsEmbryo.class.getSimpleName(), "Seven Signs, Embryo");
 		addFirstTalkId(JAINA);
 		addStartNpc(WOOD);
 		addTalkId(WOOD, FRANZ);
@@ -77,7 +77,7 @@ public class Q00198_SevenSignsEmbryo extends Quest
 			return super.onAdvEvent(event, npc, player);
 		}
 		
-		final QuestState st = player.getQuestState(getName());
+		final QuestState st = getQuestState(player, false);
 		if (st == null)
 		{
 			return null;
@@ -108,9 +108,7 @@ public class Q00198_SevenSignsEmbryo extends Quest
 				if (st.isCond(1))
 				{
 					isBusy = true;
-					NpcSay ns = new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.S1_THAT_STRANGER_MUST_BE_DEFEATED_HERE_IS_THE_ULTIMATE_HELP);
-					ns.addStringParameter(player.getName());
-					npc.broadcastPacket(ns);
+					npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), NpcStringId.S1_THAT_STRANGER_MUST_BE_DEFEATED_HERE_IS_THE_ULTIMATE_HELP).addStringParameter(player.getName()));
 					startQuestTimer("heal", 30000 - getRandom(20000), npc, player);
 					L2MonsterInstance monster = (L2MonsterInstance) addSpawn(SHILENS_EVIL_THOUGHTS, -23734, -9184, -5384, 0, false, 0, false, npc.getInstanceId());
 					monster.broadcastPacket(new NpcSay(monster.getObjectId(), Say2.NPC_ALL, monster.getId(), NpcStringId.YOU_ARE_NOT_THE_OWNER_OF_THAT_ITEM));
@@ -170,12 +168,6 @@ public class Q00198_SevenSignsEmbryo extends Quest
 	@Override
 	public String onFirstTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
-		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
 		return "32617-01.html";
 	}
 	
@@ -188,8 +180,7 @@ public class Q00198_SevenSignsEmbryo extends Quest
 			return null;
 		}
 		
-		final QuestState st = partyMember.getQuestState(getName());
-		
+		final QuestState st = getQuestState(player, false);
 		if (npc.isInsideRadius(player, 1500, true, false))
 		{
 			st.giveItems(SCULPTURE_OF_DOUBT, 1);
@@ -210,13 +201,8 @@ public class Q00198_SevenSignsEmbryo extends Quest
 	@Override
 	public String onTalk(L2Npc npc, L2PcInstance player)
 	{
-		QuestState st = player.getQuestState(getName());
+		QuestState st = getQuestState(player, true);
 		String htmltext = getNoQuestMsg(player);
-		if (st == null)
-		{
-			return htmltext;
-		}
-		
 		switch (st.getState())
 		{
 			case State.COMPLETED:
@@ -289,6 +275,6 @@ public class Q00198_SevenSignsEmbryo extends Quest
 	
 	public static void main(String args[])
 	{
-		new Q00198_SevenSignsEmbryo(198, Q00198_SevenSignsEmbryo.class.getSimpleName(), "Seven Signs, Embryo");
+		new Q00198_SevenSignsEmbryo();
 	}
 }
diff --git a/L2J_DataPack_BETA/dist/game/data/stats/skills/05900-05999.xml b/L2J_DataPack_BETA/dist/game/data/stats/skills/05900-05999.xml
index 4e1d8a1b1f7052b55971a2c852aa91a21f68880b..a7d94fbb69dd6e8e15c11331809fa057134049f7 100644
--- a/L2J_DataPack_BETA/dist/game/data/stats/skills/05900-05999.xml
+++ b/L2J_DataPack_BETA/dist/game/data/stats/skills/05900-05999.xml
@@ -1130,15 +1130,24 @@
 		<set name="targetType" val="NONE" />
 	</skill>
 	<skill id="5980" levels="3" name="Seal Isolation">
+		<!-- Confirmed CT2.5 -->
 		<table name="#effectPoints"> -484 -572 -653 </table>
+		<table name="#magicLvl"> 51 61 79 </table>
+		<table name="#mpConsume"> 50 61 75 </table>
+		<table name="#power"> 2273 3547 6059 </table>
 		<set name="affectLimit" val="10-10" />
 		<set name="effectPoint" val="#effectPoints" />
+		<set name="affectRange" val="300" />
 		<set name="hitTime" val="2500" />
-		<set name="magicLvl" val="51" />
+		<set name="magicLvl" val="#magicLvl" />
+		<set name="mpConsume" val="#mpConsume" />
 		<set name="operateType" val="A1" />
+		<set name="power" val="#power" />
 		<set name="reuseDelay" val="1000" />
-		<set name="skillType" val="NOTDONE" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="AURA" />
+		<for>
+			<effect name="PhysicalAttack" />
+		</for>
 	</skill>
 	<skill id="5981" levels="3" name="Lilith's Curse">
 		<set name="abnormalLvl" val="3" />
diff --git a/L2J_DataPack_BETA/dist/sql/game/npcaidata.sql b/L2J_DataPack_BETA/dist/sql/game/npcaidata.sql
index 55c2584d157e2375fc0b0bfc1279c259b06ac5e7..b616b7d643de9ab86d3ca6b5da053e4bbf69700d 100644
--- a/L2J_DataPack_BETA/dist/sql/game/npcaidata.sql
+++ b/L2J_DataPack_BETA/dist/sql/game/npcaidata.sql
@@ -6082,15 +6082,15 @@ INSERT INTO `npcaidata` VALUES
 (27368, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Slayer
 (27369, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Great Magus
 (27370, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Guard Knight
-(27371, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Butcher
-(27372, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Magus
-(27373, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Knight-Errant
-(27374, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Shilen's Evil Thoughts
-(27375, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Shilen's Evil Thoughts
-(27376, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Knight
-(27377, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Slayer
-(27378, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Great Magus
-(27379, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Guard Knight
+(27371, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Butcher
+(27372, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Magus
+(27373, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Knight-Errant
+(27374, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Shilen's Evil Thoughts
+(27375, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Shilen's Evil Thoughts
+(27376, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Knight
+(27377, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Slayer
+(27378, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Great Magus
+(27379, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, "null", 300, "null", 0, 0, "fighter"), -- Lilim Guard Knight
 (27380, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Reckless Sprite of Water
 (27381, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Reckless Sprite of Air
 (27382, 7, 15, 0, 300, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 300, "null", 0, 0, "fighter"), -- Power of Seal Isolation
@@ -8731,13 +8731,13 @@ INSERT INTO `npcaidata` VALUES
 (32712, 7, 15, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Somulitan
 (32713, 7, 15, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Pathfinder Worker
 (32714, 7, 15, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Asher
-(32715, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Lilith
-(32716, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Lilith's Steward
-(32717, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Lilith's Elite
-(32718, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim
-(32719, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim's Guardian
-(32720, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim's Guard
-(32721, 7, 15, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim's Executor
+(32715, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Lilith
+(32716, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Lilith's Steward
+(32717, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Lilith's Elite
+(32718, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim
+(32719, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim's Guardian
+(32720, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim's Guard
+(32721, 7, 15, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Anakim's Executor
 (32722, 7, 15, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), -- Battle League Helper
 (32723, 7, 15, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), --
 (32724, 7, 15, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, "null", 0, "null", 0, 0, "fighter"), --