diff --git a/dist/game/data/instances/CavernOfThePirateCaptainWorldDay60.xml b/dist/game/data/instances/CavernOfThePirateCaptainWorldDay60.xml
index 6459dac93cd0c907e7e12f2f1e12048b1ecac693..5c505cf1fb022243a3544ac0d6c14d5ef13fca2b 100644
--- a/dist/game/data/instances/CavernOfThePirateCaptainWorldDay60.xml
+++ b/dist/game/data/instances/CavernOfThePirateCaptainWorldDay60.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60"/>
 	<allowSummon val="false"/>
 	<showTimer val="true" increase="true" text="Elapsed Time :" />
-	<spawnPoint spawnX="52212" spawnY="218998" spawnZ="-3208" />
+	<exitPoint x="52212" y="218998" z="-3208" />
 	<reenter additionStyle="ON_INSTANCE_FINISH" >
 		<reset day="Monday" hour="6" minute="30" />
 		<reset day="Wednesday" hour="6" minute="30" />
diff --git a/dist/game/data/instances/CavernOfThePirateCaptainWorldDay83.xml b/dist/game/data/instances/CavernOfThePirateCaptainWorldDay83.xml
index 7b9eb20e4cbedde4b7f8d0a5d4319757a968b6ee..306c45067daf2098a971234e22d3a465e8c96095 100644
--- a/dist/game/data/instances/CavernOfThePirateCaptainWorldDay83.xml
+++ b/dist/game/data/instances/CavernOfThePirateCaptainWorldDay83.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60"/>
 	<allowSummon val="false"/>
 	<showTimer val="true" increase="true" text="Elapsed Time :" />
-	<spawnPoint spawnX="52212" spawnY="218998" spawnZ="-3208" />
+	<exitPoint x="52212" y="218998" z="-3208" />
 	<reenter additionStyle="ON_INSTANCE_FINISH" >
 		<reset day="Monday" hour="6" minute="30" />
 		<reset day="Wednesday" hour="6" minute="30" />
diff --git a/dist/game/data/instances/ChamberOfDelusionEast.xml b/dist/game/data/instances/ChamberOfDelusionEast.xml
index 9bfe3b60de741bc628f431eee299c9759b3379e8..835876a736824c4561df70da061572c0e76acdf5 100644
--- a/dist/game/data/instances/ChamberOfDelusionEast.xml
+++ b/dist/game/data/instances/ChamberOfDelusionEast.xml
@@ -3,7 +3,7 @@
 	<activityTime val="40" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1200" />
-	<spawnPoint spawnX="-114592" spawnY="-152509" spawnZ="-6723" />
+	<exitPoint x="-114592" y="-152509" z="-6723" />
 	<spawnlist>
 		<group name="general">
 			<!-- Room 1 -->
diff --git a/dist/game/data/instances/ChamberOfDelusionNorth.xml b/dist/game/data/instances/ChamberOfDelusionNorth.xml
index 5a77c0a37d021f193a8064e7239ed7c8e9197654..0195d3f366bfc831847a75562f80793970a41ab3 100644
--- a/dist/game/data/instances/ChamberOfDelusionNorth.xml
+++ b/dist/game/data/instances/ChamberOfDelusionNorth.xml
@@ -3,7 +3,7 @@
 	<activityTime val="40" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1200" />
-	<spawnPoint spawnX="-114592" spawnY="-152509" spawnZ="-6723" />
+	<exitPoint x="-114592" y="-152509" z="-6723" />
 	<spawnlist>
 		<group name="general">
 			<!-- Room 1 -->
diff --git a/dist/game/data/instances/ChamberOfDelusionSouth.xml b/dist/game/data/instances/ChamberOfDelusionSouth.xml
index 2aa619194ddfedf518b6b88da7c682bd54d2e8f4..26bcd503bfe0bbfd20cbbd67895d8a2a5f1fd87d 100644
--- a/dist/game/data/instances/ChamberOfDelusionSouth.xml
+++ b/dist/game/data/instances/ChamberOfDelusionSouth.xml
@@ -3,7 +3,7 @@
 	<activityTime val="40" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1200" />
-	<spawnPoint spawnX="-114592" spawnY="-152509" spawnZ="-6723" />
+	<exitPoint x="-114592" y="-152509" z="-6723" />
 	<spawnlist>
 		<group name="general">
 			<!-- Room 1 -->
diff --git a/dist/game/data/instances/ChamberOfDelusionSquare.xml b/dist/game/data/instances/ChamberOfDelusionSquare.xml
index e42eb105e65b75f2e60a1d23e6a11cefc8681596..a4d4f8649107430a2bedf56c2d7ecf1be9c44f70 100644
--- a/dist/game/data/instances/ChamberOfDelusionSquare.xml
+++ b/dist/game/data/instances/ChamberOfDelusionSquare.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="60" />
-	<spawnPoint spawnX="-114592" spawnY="-152509" spawnZ="-6723" />
+	<exitPoint x="-114592" y="-152509" z="-6723" />
 	<spawnlist>
 		<group name="general">
 			<!-- Room 1 -->
diff --git a/dist/game/data/instances/ChamberOfDelusionTower.xml b/dist/game/data/instances/ChamberOfDelusionTower.xml
index f2869cf4d6e1c5b35fa4c158622ac4c2d62d04ca..628785fe79927d529c25b044e2d2383b0748a7a1 100644
--- a/dist/game/data/instances/ChamberOfDelusionTower.xml
+++ b/dist/game/data/instances/ChamberOfDelusionTower.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1200" />
-	<spawnPoint spawnX="-114592" spawnY="-152509" spawnZ="-6723" />
+	<exitPoint x="-114592" y="-152509" z="-6723" />
 	<spawnlist>
 		<group name="general">
 			<!-- Room 1 -->
diff --git a/dist/game/data/instances/ChamberOfDelusionWest.xml b/dist/game/data/instances/ChamberOfDelusionWest.xml
index d4718f9ff4de2de5fc991a2537bb88340f496fe3..367c37c583b6e2660a47bc814d53f36be559d870 100644
--- a/dist/game/data/instances/ChamberOfDelusionWest.xml
+++ b/dist/game/data/instances/ChamberOfDelusionWest.xml
@@ -3,7 +3,7 @@
 	<activityTime val="40" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1200" />
-	<spawnPoint spawnX="-114592" spawnY="-152509" spawnZ="-6723" />
+	<exitPoint x="-114592" y="-152509" z="-6723" />
 	<spawnlist>
 		<group name="general">
 			<!-- Room 1 -->
diff --git a/dist/game/data/instances/CrystalCaverns.xml b/dist/game/data/instances/CrystalCaverns.xml
index 96498a1b6265e6b328b1dd7dd06430dfd684cd8c..8cb787ede364ac6d087f653c9699dbc2f60a1227 100644
--- a/dist/game/data/instances/CrystalCaverns.xml
+++ b/dist/game/data/instances/CrystalCaverns.xml
@@ -3,7 +3,7 @@
 	<activityTime val="90" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1200" />
-	<spawnPoint spawnX="149442" spawnY="173520" spawnZ="-5024" />
+	<exitPoint x="149442" y="173520" z="-5024" />
 	<reenter additionStyle="ON_INSTANCE_ENTER" >
 		<reset time="86400000" />
 	</reenter>
diff --git a/dist/game/data/instances/DarkCloudMansion.xml b/dist/game/data/instances/DarkCloudMansion.xml
index d3dcd09512bf60ec1b33db28cbcbfd9917ad1e16..6f7f6d624bb5b42d37ee943083954a063e63aac3 100644
--- a/dist/game/data/instances/DarkCloudMansion.xml
+++ b/dist/game/data/instances/DarkCloudMansion.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="30" />
-	<spawnPoint spawnX="139968" spawnY="150367" spawnZ="-3111" />
+	<exitPoint x="139968" y="150367" z="-3111" />
 	<doorlist>
 		<door doorId="24230001" />
 		<door doorId="24230002" />
diff --git a/dist/game/data/instances/DemonPrince.xml b/dist/game/data/instances/DemonPrince.xml
index c05daa72a4ecd8e28faeb489a446f9bba092eb92..d08ba88a64ffc7151159c7ebe0ed5ca95d17f9dd 100644
--- a/dist/game/data/instances/DemonPrince.xml
+++ b/dist/game/data/instances/DemonPrince.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="600" />
-	<spawnPoint spawnX="-22213" spawnY="277138" spawnZ="-9930" />
+	<exitPoint x="-22213" y="277138" z="-9930" />
 	<reenter additionStyle="ON_INSTANCE_FINISH" >
 		<reset day="Wednesday" hour="6" minute="30" />
 		<reset day="Saturday" hour="6" minute="30" />
diff --git a/dist/game/data/instances/DisciplesNecropolisPast.xml b/dist/game/data/instances/DisciplesNecropolisPast.xml
index 45bc3b8a209dc1856417163a3e1218916291afde..5779739f6a964bc014fc5879e82639aaad41db29 100644
--- a/dist/game/data/instances/DisciplesNecropolisPast.xml
+++ b/dist/game/data/instances/DisciplesNecropolisPast.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="900" />
-	<spawnPoint spawnX="171895" spawnY="-17501" spawnZ="-4903" />
+	<exitPoint x="171895" y="-17501" z="-4903" />
 	<removeBuffs type="ALL" />
 	<doorlist>
 		<door doorId="17240101" />
diff --git a/dist/game/data/instances/ElcadiasTent.xml b/dist/game/data/instances/ElcadiasTent.xml
index 9c68d68d482462d2eb9647e7dfae2c2d8a375890..9525d3ca2383d271bbee6a817f7e9a2a11cc548e 100644
--- a/dist/game/data/instances/ElcadiasTent.xml
+++ b/dist/game/data/instances/ElcadiasTent.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />	
 	<emptyDestroyTime val="1" />
-	<spawnPoint spawnX="43275" spawnY="-87928" spawnZ="-2835" />
+	<exitPoint x="43275" y="-87928" z="-2835" />
 	<spawnlist>
 		<group name="general">
 			<!-- Elcadia -->
diff --git a/dist/game/data/instances/FinalEmperialTomb.xml b/dist/game/data/instances/FinalEmperialTomb.xml
index 0866bf125cc7170c092e6e981c7fda6cd20efeb9..79607535a85ffca518d754403f0de1f9b65540f5 100644
--- a/dist/game/data/instances/FinalEmperialTomb.xml
+++ b/dist/game/data/instances/FinalEmperialTomb.xml
@@ -3,7 +3,7 @@
 	<activityTime val="120" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1800" />
-	<spawnPoint spawnX="181381" spawnY="-80883" spawnZ="-2730" />
+	<exitPoint x="181381" y="-80883" z="-2730" />
 	<reenter additionStyle="NONE" >
 		<reset day="Wednesday" hour="6" minute="30" />
 		<reset day="Saturday" hour="6" minute="30" />
diff --git a/dist/game/data/instances/HallOfSuffering.xml b/dist/game/data/instances/HallOfSuffering.xml
index 928b4a323eb690f53a6dc70e107e8ac5223f8e68..a061129ace8c04bf8f8cd83e715cf4e180ed96cd 100644
--- a/dist/game/data/instances/HallOfSuffering.xml
+++ b/dist/game/data/instances/HallOfSuffering.xml
@@ -4,5 +4,5 @@
 	<allowSummon val="false" />
 	<emptyDestroyTime val="600" />
 	<showTimer val="true" />
-	<spawnPoint spawnX="-183292" spawnY="206063" spawnZ="-12888" />
+	<exitPoint x="-183292" y="206063" z="-12888" />
 </instance>
\ No newline at end of file
diff --git a/dist/game/data/instances/HideoutOfTheDawn.xml b/dist/game/data/instances/HideoutOfTheDawn.xml
index 8e4d8fbd2080777700f65d69bd318b4eb1e0b1e6..2bafa5fe162a892f534a559c921059f41f070574 100644
--- a/dist/game/data/instances/HideoutOfTheDawn.xml
+++ b/dist/game/data/instances/HideoutOfTheDawn.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="30" />
-	<spawnPoint spawnX="147072" spawnY="23743" spawnZ="-1984" />
+	<exitPoint x="147072" y="23743" z="-1984" />
 	<removeBuffs type="ALL" />
 	<spawnlist>
 		<group name="general">
diff --git a/dist/game/data/instances/IceQueensCastle.xml b/dist/game/data/instances/IceQueensCastle.xml
index 3d8e707812cd3db0e7487fa0d7f90776224c241f..1e3d34903935234b16c5a01f64ea79f6202fd2bc 100644
--- a/dist/game/data/instances/IceQueensCastle.xml
+++ b/dist/game/data/instances/IceQueensCastle.xml
@@ -3,7 +3,7 @@
 	<activityTime val="20" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="5" />
-	<spawnPoint spawnX="113883" spawnY="-108777" spawnZ="-848" />
+	<exitPoint x="113883" y="-108777" z="-848" />
 	<doorlist>
 		<door doorId="23140101" />
 	</doorlist>
diff --git a/dist/game/data/instances/IceQueensCastleNormalBattle.xml b/dist/game/data/instances/IceQueensCastleNormalBattle.xml
index 8c861857b22a43803802cf86b1ff17795d94ec6e..43c66f7c3c22bf1c5be00b05920b0f1a4c28f6ac 100644
--- a/dist/game/data/instances/IceQueensCastleNormalBattle.xml
+++ b/dist/game/data/instances/IceQueensCastleNormalBattle.xml
@@ -3,7 +3,7 @@
 	<activityTime val="120" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="600" />
-	<spawnPoint spawnX="115717" spawnY="-125734" spawnZ="-3392" />
+	<exitPoint x="115717" y="-125734" z="-3392" />
 	<reenter additionStyle="ON_INSTANCE_FINISH" >
 		<reset day="Wednesday" hour="6" minute="30" />
 		<reset day="Saturday" hour="6" minute="30" />
diff --git a/dist/game/data/instances/JiniaGuildHideout1.xml b/dist/game/data/instances/JiniaGuildHideout1.xml
index 6ff421a2f93d2420d9cde57a04cfa311a869d3e0..8aef365b535da2c8c9cdbb9a84c63550cf1ed3bd 100644
--- a/dist/game/data/instances/JiniaGuildHideout1.xml
+++ b/dist/game/data/instances/JiniaGuildHideout1.xml
@@ -3,7 +3,7 @@
 	<activityTime val="5" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="5" />
-	<spawnPoint spawnX="113793" spawnY="-109342" spawnZ="-845" />
+	<exitPoint x="113793" y="-109342" z="-845" />
 	<spawnlist>
 		<group name="general">
 			<!-- Jinia -->
diff --git a/dist/game/data/instances/JiniaGuildHideout2.xml b/dist/game/data/instances/JiniaGuildHideout2.xml
index ac11115308200a51310b61a7cd07975b4c2ed336..31d2126f50b1ec555f4e3eb6c550b067b86ce55d 100644
--- a/dist/game/data/instances/JiniaGuildHideout2.xml
+++ b/dist/game/data/instances/JiniaGuildHideout2.xml
@@ -3,7 +3,7 @@
 	<activityTime val="5" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="5" />
-	<spawnPoint spawnX="113793" spawnY="-109342" spawnZ="-845" />
+	<exitPoint x="113793" y="-109342" z="-845" />
 	<spawnlist>
 		<group name="general">
 			<!-- Jinia -->
diff --git a/dist/game/data/instances/JiniaGuildHideout3.xml b/dist/game/data/instances/JiniaGuildHideout3.xml
index ac11115308200a51310b61a7cd07975b4c2ed336..31d2126f50b1ec555f4e3eb6c550b067b86ce55d 100644
--- a/dist/game/data/instances/JiniaGuildHideout3.xml
+++ b/dist/game/data/instances/JiniaGuildHideout3.xml
@@ -3,7 +3,7 @@
 	<activityTime val="5" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="5" />
-	<spawnPoint spawnX="113793" spawnY="-109342" spawnZ="-845" />
+	<exitPoint x="113793" y="-109342" z="-845" />
 	<spawnlist>
 		<group name="general">
 			<!-- Jinia -->
diff --git a/dist/game/data/instances/JiniaGuildHideout4.xml b/dist/game/data/instances/JiniaGuildHideout4.xml
index ac11115308200a51310b61a7cd07975b4c2ed336..31d2126f50b1ec555f4e3eb6c550b067b86ce55d 100644
--- a/dist/game/data/instances/JiniaGuildHideout4.xml
+++ b/dist/game/data/instances/JiniaGuildHideout4.xml
@@ -3,7 +3,7 @@
 	<activityTime val="5" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="5" />
-	<spawnPoint spawnX="113793" spawnY="-109342" spawnZ="-845" />
+	<exitPoint x="113793" y="-109342" z="-845" />
 	<spawnlist>
 		<group name="general">
 			<!-- Jinia -->
diff --git a/dist/game/data/instances/LibraryOfSages.xml b/dist/game/data/instances/LibraryOfSages.xml
index 0b2bbb2b0bc1cbc7269ee219302497b0942732ce..634693e28203f96b591ab3a0ac04de19a8c7a02a 100644
--- a/dist/game/data/instances/LibraryOfSages.xml
+++ b/dist/game/data/instances/LibraryOfSages.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1" />
-	<spawnPoint spawnX="37063" spawnY="-49813" spawnZ="-1128" />
+	<exitPoint x="37063" y="-49813" z="-1128" />
 	<spawnlist>
 		<group name="general">
 			<!-- Sophia2 -->
diff --git a/dist/game/data/instances/MithrilMine.xml b/dist/game/data/instances/MithrilMine.xml
index 595b522a22c049217558c90e34081c3f1006b688..cad4ff8dafeea623f75c3f59aac5480545489378 100644
--- a/dist/game/data/instances/MithrilMine.xml
+++ b/dist/game/data/instances/MithrilMine.xml
@@ -3,7 +3,7 @@
 	<activityTime val="20" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="20" />
-	<spawnPoint spawnX="178823" spawnY="-184303" spawnZ="-347" />
+	<exitPoint x="178823" y="-184303" z="-347" />
 	<spawnlist>
 		<group name="general">
 			<!-- Kegor -->
diff --git a/dist/game/data/instances/MonasteryOfSilence.xml b/dist/game/data/instances/MonasteryOfSilence.xml
index a0feb48c722c8e3ee3933ec58de773e2d9a4cf8c..0846738d61de7072a5aec43acd197adec8820237 100644
--- a/dist/game/data/instances/MonasteryOfSilence.xml
+++ b/dist/game/data/instances/MonasteryOfSilence.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1" />
-	<spawnPoint spawnX="115983" spawnY="-87351" spawnZ="-3397" />
+	<exitPoint x="115983" y="-87351" z="-3397" />
 	<removeBuffs type="ALL" />
 	<spawnlist>
 		<group name="general">
diff --git a/dist/game/data/instances/NornilsGarden.xml b/dist/game/data/instances/NornilsGarden.xml
index e33d9c943bb2392de2870b7dde07b5cbeca05964..f710a1bec55b6c522dd39796cd7b599d75074739 100644
--- a/dist/game/data/instances/NornilsGarden.xml
+++ b/dist/game/data/instances/NornilsGarden.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="3000" />
-	<spawnPoint spawnX="-84757" spawnY="60009" spawnZ="-2581" />
+	<exitPoint x="-84757" y="60009" z="-2581" />
 	<removeBuffs type="ALL" />
 	<doorlist>
 		<door doorId="16200001" />
diff --git a/dist/game/data/instances/NornilsGardenQuest.xml b/dist/game/data/instances/NornilsGardenQuest.xml
index 6b9c09ed6cdfd6d718311adc300f460cda26ffb4..2ff5998344077e0be20e3ba5885f084098c328c2 100644
--- a/dist/game/data/instances/NornilsGardenQuest.xml
+++ b/dist/game/data/instances/NornilsGardenQuest.xml
@@ -2,7 +2,7 @@
 <instance name="Nornil's Garden" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/instance.xsd">
 	<activityTime val="15" />
 	<allowSummon val="false" />
-	<spawnPoint spawnX="-119538" spawnY="87177" spawnZ="-12592" />
+	<exitPoint x="-119538" y="87177" z="-12592" />
 	<spawnlist>
 		<group name="general">
 			<!-- Rodenpicula -->
diff --git a/dist/game/data/instances/PailakaDevilsLegacy.xml b/dist/game/data/instances/PailakaDevilsLegacy.xml
index b181896faab10304cba9f2f542d0212c5662cb11..f4ca70378913225218a0aca2081a1bc2dd5b6f95 100644
--- a/dist/game/data/instances/PailakaDevilsLegacy.xml
+++ b/dist/game/data/instances/PailakaDevilsLegacy.xml
@@ -3,7 +3,7 @@
 	<activityTime val="90" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="900" />
-	<spawnPoint spawnX="85039" spawnY="147543" spawnZ="-3400" />
+	<exitPoint x="85039" y="147543" z="-3400" />
 	<doorlist>
 		<door doorId="22110100" />
 		<door doorId="22110101" />
diff --git a/dist/game/data/instances/PailakaSongOfIceAndFire.xml b/dist/game/data/instances/PailakaSongOfIceAndFire.xml
index 8012a0d22841cbcf86544d518ff8f416a7c4c647..44e279ee24f10935f7122a1e0402be7545e62d3c 100644
--- a/dist/game/data/instances/PailakaSongOfIceAndFire.xml
+++ b/dist/game/data/instances/PailakaSongOfIceAndFire.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="3000" />
-	<spawnPoint spawnX="-80666" spawnY="151321" spawnZ="-3040" />
+	<exitPoint x="-80666" y="151321" z="-3040" />
 	<spawnlist>
 		<group name="general">
 			<!-- Inspector Sinai -->
diff --git a/dist/game/data/instances/PartyDuel.xml b/dist/game/data/instances/PartyDuel.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ca1ad7bd970b10eb67438fc43a9557e61a396699
--- /dev/null
+++ b/dist/game/data/instances/PartyDuel.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<instance name="coliseum" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/instance.xsd">
+	<activityTime val="30" />
+	<allowSummon val="false" />
+	<spawnPoints startPosType="FIXED">
+		<Location x="148786" y="46368" z="-3414" />
+		<Location x="148786" y="46454" z="-3414" />
+		<Location x="148786" y="46549" z="-3414" />
+		<Location x="148786" y="46652" z="-3414" />
+		<Location x="148786" y="46745" z="-3414" />
+		<Location x="148786" y="46842" z="-3414" />
+		<Location x="148786" y="46939" z="-3414" />
+		<Location x="148786" y="47033" z="-3414" />
+		<Location x="148786" y="47132" z="-3414" />
+		<Location x="150114" y="46358" z="-3414" />
+		<Location x="150114" y="46445" z="-3414" />
+		<Location x="150114" y="46540" z="-3414" />
+		<Location x="150114" y="46642" z="-3414" />
+		<Location x="150114" y="46735" z="-3414" />
+		<Location x="150114" y="46833" z="-3414" />
+		<Location x="150114" y="46930" z="-3414" />
+		<Location x="150114" y="47023" z="-3414" />
+		<Location x="150114" y="47122" z="-3414" />
+	</spawnPoints>
+	<doorlist>
+		<door doorId="24190001" />
+		<door doorId="24190002" />
+		<door doorId="24190003" />
+		<door doorId="24190004" />
+	</doorlist>
+</instance>
\ No newline at end of file
diff --git a/dist/game/data/instances/Ranku.xml b/dist/game/data/instances/Ranku.xml
index f8aa5483e837e54e2369e8ebb08885cfc8ddd273..068d84b6b647b9f26f2021702da7e2a7be1b4009 100644
--- a/dist/game/data/instances/Ranku.xml
+++ b/dist/game/data/instances/Ranku.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="600" />
-	<spawnPoint spawnX="-19006" spawnY="277065" spawnZ="-13383" />
+	<exitPoint x="-19006" y="277065" z="-13383" />
 	<reenter additionStyle="ON_INSTANCE_FINISH" >
 		<reset day="Wednesday" hour="6" minute="30" />
 		<reset day="Saturday" hour="6" minute="30" />
diff --git a/dist/game/data/instances/SanctumoftheLordsofDawn.xml b/dist/game/data/instances/SanctumoftheLordsofDawn.xml
index cd9a85f82860e8171b4031e156fbef4b7e89bfff..a2b8f690fc1e131f2f3ad1be7851a0f04f76ff52 100644
--- a/dist/game/data/instances/SanctumoftheLordsofDawn.xml
+++ b/dist/game/data/instances/SanctumoftheLordsofDawn.xml
@@ -3,7 +3,7 @@
 	<activityTime val="60" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="900" />
-	<spawnPoint spawnX="-12797" spawnY="122675" spawnZ="-3117" />
+	<exitPoint x="-12797" y="122675" z="-3117" />
 	<doorlist>
 		<door doorId="17240001" />
 		<door doorId="17240002" />
diff --git a/dist/game/data/instances/SecretArea.xml b/dist/game/data/instances/SecretArea.xml
index fbf7e14489bc6d80f9b0ae37fc726077b43cf6a0..306e824a2c33e4c3dcbf674b01559f8d51142fe4 100644
--- a/dist/game/data/instances/SecretArea.xml
+++ b/dist/game/data/instances/SecretArea.xml
@@ -3,7 +3,7 @@
 	<activityTime val="15" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="1" />
-	<spawnPoint spawnX="-185057" spawnY="242821" spawnZ="1576" />
+	<exitPoint x="-185057" y="242821" z="1576" />
 	<spawnlist>
 		<!-- Lelrikia -->
 		<group name="general">
diff --git a/dist/game/data/instances/SeedOfDestructionStage1.xml b/dist/game/data/instances/SeedOfDestructionStage1.xml
index b1d4d4997747c8b4141de3f41b06f3bdfae90e2a..81eb19ea12f612457c8979492770eaecf0b40acf 100644
--- a/dist/game/data/instances/SeedOfDestructionStage1.xml
+++ b/dist/game/data/instances/SeedOfDestructionStage1.xml
@@ -3,7 +3,7 @@
 	<activityTime val="130" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="900" />
-	<spawnPoint spawnX="-248717" spawnY="250260" spawnZ="4337" />
+	<exitPoint x="-248717" y="250260" z="4337" />
 	<doorlist>
 		<door doorId="12240001" />
 		<door doorId="12240002" />
diff --git a/dist/game/data/instances/UrbanArea.xml b/dist/game/data/instances/UrbanArea.xml
index 0a1658d8cefb67c5c4fbcc1c35e0ddd6c3aa2c66..d7150f4236d182a8e098aaed9ac29572b0b47624 100644
--- a/dist/game/data/instances/UrbanArea.xml
+++ b/dist/game/data/instances/UrbanArea.xml
@@ -3,7 +3,7 @@
 	<activityTime val="30" />
 	<allowSummon val="false" />
 	<emptyDestroyTime val="180" />
-	<spawnPoint spawnX="13725" spawnY="255403" spawnZ="-2023" />
+	<exitPoint x="13725" y="255403" z="-2023" />
 	<spawnlist>
 		<group name="general">
 			<spawn npcId="32343" x="19604" y="250067" z="-2022" heading="16384" respawn="60" /> <!-- Moonlight Tombstone -->
diff --git a/dist/game/data/scripts/hellbound/Instances/DemonPrinceFloor/DemonPrinceFloor.java b/dist/game/data/scripts/hellbound/Instances/DemonPrinceFloor/DemonPrinceFloor.java
index b5df927681d3758986eb547df6a8961bf3a92f57..98edf9fc32e0bebb8eba092d64cd30d67b627a87 100644
--- a/dist/game/data/scripts/hellbound/Instances/DemonPrinceFloor/DemonPrinceFloor.java
+++ b/dist/game/data/scripts/hellbound/Instances/DemonPrinceFloor/DemonPrinceFloor.java
@@ -107,7 +107,7 @@ public final class DemonPrinceFloor extends AbstractInstance
 		{
 			final Instance inst = InstanceManager.getInstance().getInstance(instanceId);
 			final InstanceWorld world = InstanceManager.getInstance().getWorld(npc.getInstanceId());
-			inst.setSpawnLoc(EXIT_POINT);
+			inst.setExitLoc(EXIT_POINT);
 			
 			finishInstance(world);
 			addSpawn(CUBE, -22144, 278744, -8239, 0, false, 0, false, instanceId);
diff --git a/dist/game/data/scripts/hellbound/Instances/RankuFloor/RankuFloor.java b/dist/game/data/scripts/hellbound/Instances/RankuFloor/RankuFloor.java
index b1b4a5758ee0238ae8e84b2b4cbed4a5bee56eb9..3f7e3be1b9607ca5014f7109df6af05a0a53a785 100644
--- a/dist/game/data/scripts/hellbound/Instances/RankuFloor/RankuFloor.java
+++ b/dist/game/data/scripts/hellbound/Instances/RankuFloor/RankuFloor.java
@@ -107,7 +107,7 @@ public final class RankuFloor extends AbstractInstance
 		{
 			final Instance inst = InstanceManager.getInstance().getInstance(instanceId);
 			final InstanceWorld world = InstanceManager.getInstance().getWorld(npc.getInstanceId());
-			inst.setSpawnLoc(EXIT_POINT);
+			inst.setExitLoc(EXIT_POINT);
 			finishInstance(world);
 			addSpawn(CUBE, -19056, 278732, -15000, 0, false, 0, false, instanceId);
 		}
diff --git a/dist/game/data/scripts/instances/ChambersOfDelusion/Chamber.java b/dist/game/data/scripts/instances/ChambersOfDelusion/Chamber.java
index 3e92a69fc406f1cbbdfbe3939ac80efe4dd2b42f..0581297b1f27beca12aa3519c6fb6dd0fbe2bea9 100644
--- a/dist/game/data/scripts/instances/ChambersOfDelusion/Chamber.java
+++ b/dist/game/data/scripts/instances/ChambersOfDelusion/Chamber.java
@@ -425,7 +425,7 @@ public abstract class Chamber extends AbstractInstance
 			return;
 		}
 		final Instance inst = InstanceManager.getInstance().getInstance(player.getInstanceId());
-		Location ret = inst.getSpawnLoc();
+		Location ret = inst.getExitLoc();
 		final String return_point = player.getVariables().getString(RETURN, null);
 		if (return_point != null)
 		{
diff --git a/dist/game/data/scripts/instances/Kamaloka/Kamaloka.java b/dist/game/data/scripts/instances/Kamaloka/Kamaloka.java
index 72cc8f684fb1748a5d1cb506ce1548bc9704e098..7b22109a5b41398ee444b9ae4ff0d82fcc1c8417 100644
--- a/dist/game/data/scripts/instances/Kamaloka/Kamaloka.java
+++ b/dist/game/data/scripts/instances/Kamaloka/Kamaloka.java
@@ -1381,7 +1381,7 @@ public final class Kamaloka extends AbstractInstance
 		// set name for the kamaloka
 		inst.setName(InstanceManager.getInstance().getInstanceIdName(templateId));
 		// set return location
-		inst.setSpawnLoc(new Location(player));
+		inst.setExitLoc(new Location(player));
 		// disable summon friend into instance
 		inst.setAllowSummon(false);
 		// set duration and empty destroy time
@@ -1574,7 +1574,7 @@ public final class Kamaloka extends AbstractInstance
 						{
 							if ((partyMember != null) && (partyMember.getInstanceId() == world.getInstanceId()))
 							{
-								teleportPlayer(partyMember, inst.getSpawnLoc(), 0);
+								teleportPlayer(partyMember, inst.getExitLoc(), 0);
 							}
 						}
 					}
diff --git a/dist/game/data/scripts/instances/NornilsGarden/NornilsGarden.java b/dist/game/data/scripts/instances/NornilsGarden/NornilsGarden.java
index 09b2a7960034719a985b6ded690dfa5dabb23a9c..2db44ef2128e4448c46aecc0e22a709c4cf2d9a4 100644
--- a/dist/game/data/scripts/instances/NornilsGarden/NornilsGarden.java
+++ b/dist/game/data/scripts/instances/NornilsGarden/NornilsGarden.java
@@ -278,7 +278,7 @@ public final class NornilsGarden extends AbstractInstance
 		final Instance inst = InstanceManager.getInstance().getInstance(instanceId);
 		
 		inst.setName(InstanceManager.getInstance().getInstanceIdName(TEMPLATE_ID));
-		inst.setSpawnLoc(new Location(player));
+		inst.setExitLoc(new Location(player));
 		inst.setAllowSummon(false);
 		inst.setDuration(DURATION_TIME * 60000);
 		inst.setEmptyDestroyTime(EMPTY_DESTROY_TIME * 60000);
diff --git a/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java b/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java
index c1e3acda4743ad4c1e3bcb182ed8346f7efcadd1..36fa0e77c00034430232c13b42d7f17574bca9e2 100644
--- a/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java
+++ b/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java
@@ -290,7 +290,7 @@ public final class Q00511_AwlUnderFoot extends Quest
 		L2Party party = player.getParty();
 		int instanceId = InstanceManager.getInstance().createDynamicInstance(template);
 		Instance ins = InstanceManager.getInstance().getInstance(instanceId);
-		ins.setSpawnLoc(new Location(player));
+		ins.setExitLoc(new Location(player));
 		world = new FAUWorld();
 		world.setInstanceId(instanceId);
 		world.setTemplateId(dungeon.getInstanceId());
diff --git a/dist/game/data/xsd/instance.xsd b/dist/game/data/xsd/instance.xsd
index 2325d5b0e0cdddd9c60b698ddfa2c6eb9ef7f7a9..e66672854e3a3c56ff095507f950527814a04df5 100644
--- a/dist/game/data/xsd/instance.xsd
+++ b/dist/game/data/xsd/instance.xsd
@@ -5,7 +5,8 @@
 			<xs:sequence minOccurs="1" maxOccurs="1">
 				<xs:element name="activityTime" minOccurs="0" maxOccurs="1">
 					<xs:complexType>
-						<xs:attribute name="val" type="xs:positiveInteger" use="required" />
+						<xs:attribute name="val" type="xs:positiveInteger"
+							use="required" />
 					</xs:complexType>
 				</xs:element>
 				<xs:element name="allowSummon" minOccurs="0" maxOccurs="1">
@@ -13,9 +14,11 @@
 						<xs:attribute name="val" type="xs:boolean" use="required" />
 					</xs:complexType>
 				</xs:element>
-				<xs:element name="emptyDestroyTime" minOccurs="0" maxOccurs="1">
+				<xs:element name="emptyDestroyTime" minOccurs="0"
+					maxOccurs="1">
 					<xs:complexType>
-						<xs:attribute name="val" type="xs:positiveInteger" use="required" />
+						<xs:attribute name="val" type="xs:positiveInteger"
+							use="required" />
 					</xs:complexType>
 				</xs:element>
 				<xs:element name="PvPInstance" minOccurs="0" maxOccurs="1">
@@ -30,11 +33,32 @@
 						<xs:attribute name="text" type="xs:normalizedString" use="optional" />
 					</xs:complexType>
 				</xs:element>
-				<xs:element name="spawnPoint" minOccurs="0" maxOccurs="1">
+				<xs:element name="spawnPoints" minOccurs="0" maxOccurs="1">
 					<xs:complexType>
-						<xs:attribute name="spawnX" type="xs:integer" use="required" />
-						<xs:attribute name="spawnY" type="xs:integer" use="required" />
-						<xs:attribute name="spawnZ" type="xs:integer" use="required" />
+						<xs:sequence>
+							<xs:element name="Location" minOccurs="1" maxOccurs="unbounded">
+								<xs:complexType>
+									<xs:attribute name="x" type="xs:int" use="required" />
+									<xs:attribute name="y" type="xs:int" use="required" />
+									<xs:attribute name="z" type="xs:int" use="required" />
+								</xs:complexType>
+							</xs:element>
+						</xs:sequence>
+						<xs:attribute name="startPosType" use="required">
+							<xs:simpleType>
+								<xs:restriction base="xs:token">
+									<xs:enumeration value="FIXED" />
+									<xs:enumeration value="RANDOM" />
+								</xs:restriction>
+							</xs:simpleType>
+						</xs:attribute>
+					</xs:complexType>
+				</xs:element>
+				<xs:element name="exitPoint" minOccurs="0" maxOccurs="1">
+					<xs:complexType>
+						<xs:attribute name="x" type="xs:int" use="required" />
+						<xs:attribute name="y" type="xs:int" use="required" />
+						<xs:attribute name="z" type="xs:int" use="required" />
 					</xs:complexType>
 				</xs:element>
 				<xs:element name="reenter" minOccurs="0" maxOccurs="1">
@@ -64,9 +88,9 @@
 						<xs:attribute name="additionStyle">
 							<xs:simpleType>
 								<xs:restriction base="xs:token">
-										<xs:enumeration value="NONE" />
-										<xs:enumeration value="ON_INSTANCE_ENTER" />
-										<xs:enumeration value="ON_INSTANCE_FINISH" />
+									<xs:enumeration value="NONE" />
+									<xs:enumeration value="ON_INSTANCE_ENTER" />
+									<xs:enumeration value="ON_INSTANCE_FINISH" />
 								</xs:restriction>
 							</xs:simpleType>
 						</xs:attribute>
@@ -84,9 +108,9 @@
 						<xs:attribute name="type">
 							<xs:simpleType>
 								<xs:restriction base="xs:token">
-										<xs:enumeration value="ALL" />
-										<xs:enumeration value="WHITELIST" />
-										<xs:enumeration value="BLACKLIST" />
+									<xs:enumeration value="ALL" />
+									<xs:enumeration value="WHITELIST" />
+									<xs:enumeration value="BLACKLIST" />
 								</xs:restriction>
 							</xs:simpleType>
 						</xs:attribute>
@@ -97,7 +121,8 @@
 						<xs:sequence minOccurs="1" maxOccurs="1">
 							<xs:element name="door" minOccurs="1" maxOccurs="unbounded">
 								<xs:complexType>
-									<xs:attribute name="doorId" type="xs:positiveInteger" use="required" />
+									<xs:attribute name="doorId" type="xs:positiveInteger"
+										use="required" />
 									<xs:attribute name="default_status">
 										<xs:simpleType>
 											<xs:restriction base="xs:token">
@@ -128,10 +153,13 @@
 										<xs:element name="spawn" minOccurs="1" maxOccurs="unbounded">
 											<xs:complexType>
 												<xs:attribute name="amount" type="xs:positiveInteger" />
-												<xs:attribute name="heading" type="xs:integer" use="required" />
-												<xs:attribute name="npcId" type="xs:positiveInteger" use="required" />
+												<xs:attribute name="heading" type="xs:integer"
+													use="required" />
+												<xs:attribute name="npcId" type="xs:positiveInteger"
+													use="required" />
 												<xs:attribute name="onKillDelay" type="xs:nonNegativeInteger" />
-												<xs:attribute name="respawn" type="xs:nonNegativeInteger" use="required" />
+												<xs:attribute name="respawn" type="xs:nonNegativeInteger"
+													use="required" />
 												<xs:attribute name="respawnRandom" type="xs:nonNegativeInteger" />
 												<xs:attribute name="allowRandomWalk" type="xs:boolean" />
 												<xs:attribute name="x" type="xs:integer" use="required" />
@@ -140,14 +168,16 @@
 											</xs:complexType>
 										</xs:element>
 									</xs:sequence>
-									<xs:attribute name="name" type="xs:normalizedString" use="required" />
+									<xs:attribute name="name" type="xs:normalizedString"
+										use="required" />
 								</xs:complexType>
 							</xs:element>
 						</xs:sequence>
 					</xs:complexType>
 				</xs:element>
 			</xs:sequence>
-			<xs:attribute name="name" type="xs:normalizedString" use="required" />
+			<xs:attribute name="name" type="xs:normalizedString"
+				use="required" />
 			<xs:attribute name="ejectTime" type="xs:positiveInteger" />
 			<xs:attribute name="allowRandomWalk" type="xs:boolean" />
 		</xs:complexType>