diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt
index 88ab4fb9a1..6bbcb09a90 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/MissingQuests.txt
@@ -1,7 +1,4 @@
504 Competition for the Bandit Stronghold
-565 Basic Mission: Fairy Settlement - West
-566 Basic Mission: Fairy Settlement - East
-567 Basic Mission: Isle of Souls
568 Special Mission: Nornil's Cave
569 Basic Mission: Seal of Shilen
570 Special Mission: Kartia's Labyrinth (Party)
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html
@@ -0,0 +1,4 @@
+
Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html
new file mode 100644
index 0000000000..0fc08f5c72
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Eastern Fairy Colony," you must do "Dreaming of peace" and "Mutated creatures" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html
new file mode 100644
index 0000000000..6bbdd60e5e
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html
new file mode 100644
index 0000000000..8f39177aed
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html
new file mode 100644
index 0000000000..6ed533c77b
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html
new file mode 100644
index 0000000000..10495d9121
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html
new file mode 100644
index 0000000000..dea80e2e6f
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html
new file mode 100644
index 0000000000..eae0618cfa
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm
new file mode 100644
index 0000000000..8a75d8fc3e
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm
new file mode 100644
index 0000000000..abf3c1cb6f
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm
new file mode 100644
index 0000000000..b8be16bdfe
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm
new file mode 100644
index 0000000000..df0d1f3483
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html
new file mode 100644
index 0000000000..efe1aa8a6c
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html
new file mode 100644
index 0000000000..7f547de891
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 3 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java
new file mode 100644
index 0000000000..6d5a10c897
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00566_BasicMissionFairySettlementEast;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Fairy Settlement - East (566)
+ * @URL https://l2wiki.com/Basic_Mission:_Fairy_Settlement_-_East
+ * @author Dmitri
+ */
+public class Q00566_BasicMissionFairySettlementEast extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int NERUPA = 30370;
+ private static final int ELISA = 30848;
+ private static final int RADA = 33100;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 793414440;
+ private static final int SP = 793410;
+ private static final int FP = 250; // Faction points
+ private static final int SCROLL_OF_ESCAPE_FAIRY_COLONY = 39498;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 90;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00566_BasicMissionFairySettlementEast()
+ {
+ super(566);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, NERUPA, ELISA, RADA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 4, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "33100-02.html":
+ case "30370-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_FAIRY_COLONY, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "33100-03.html": // RADA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "30370-04.html": // LEPATHIA
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case RADA:
+ {
+ htmltext = "33100-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case NERUPA:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "30370-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "30370-02.html";
+ }
+ else
+ {
+ htmltext = "30370-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00774_DreamingOfPeace");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00586_MutatedCreatures");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html
new file mode 100644
index 0000000000..22478dafe4
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.90-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
@@ -0,0 +1,4 @@
+Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
new file mode 100644
index 0000000000..0d046784ed
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
new file mode 100644
index 0000000000..94d439420e
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
new file mode 100644
index 0000000000..5775c20ce0
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
new file mode 100644
index 0000000000..9de30de44b
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
new file mode 100644
index 0000000000..81a2eaf0a9
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
new file mode 100644
index 0000000000..d67b578d56
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
new file mode 100644
index 0000000000..aab07be364
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
new file mode 100644
index 0000000000..85087864ae
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
new file mode 100644
index 0000000000..aedf30892d
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
new file mode 100644
index 0000000000..3bec6e2d06
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
new file mode 100644
index 0000000000..72700b48b8
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
new file mode 100644
index 0000000000..906898ca90
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
new file mode 100644
index 0000000000..35c37e687a
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
new file mode 100644
index 0000000000..bcd16e5957
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00567_BasicMissionIsleOfSouls;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Isle of Souls (567)
+ * @URL https://l2wiki.com/Basic_Mission:_Isle_of_Souls
+ * @author Dmitri
+ */
+public class Q00567_BasicMissionIsleOfSouls extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int HESET = 33780;
+ private static final int ELISA = 30848;
+ private static final int TAPA = 30499;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 973202790;
+ private static final int SP = 973200;
+ private static final int FP = 260; // Faction points
+ private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 93;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00567_BasicMissionIsleOfSouls()
+ {
+ super(567);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "30499-02.html":
+ case "33780-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "30499-03.html": // TAPA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "33780-04.html": // HESET
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case TAPA:
+ {
+ htmltext = "30499-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case HESET:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "33780-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "33780-02.html";
+ }
+ else
+ {
+ htmltext = "33780-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00752_UncoverTheSecret");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00587_MoreAggressiveOperation");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
new file mode 100644
index 0000000000..2ac1401d31
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.93-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
index b1774ca184..480a487c52 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
@@ -1,6 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-I would like to tell you about what I have investigated so far, and give you a mission. Are you interested?
-If you already know about this mission, I can let you work on it right away.
-
-
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.
+What do you say? if you don't remember what to do, I can tell you again.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
new file mode 100644
index 0000000000..4c94cb5c52
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
new file mode 100644
index 0000000000..b86d86f633
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
new file mode 100644
index 0000000000..188c370f04
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
@@ -0,0 +1,5 @@
+Master Cyphona:
+I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
new file mode 100644
index 0000000000..46d5dea028
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
@@ -0,0 +1,4 @@
+Master Cyphona:
+We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
deleted file mode 100644
index 680a935ce8..0000000000
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
+++ /dev/null
@@ -1,6 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants minimal payment. Will you stop here?
-
-
-
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
new file mode 100644
index 0000000000..76b4f8d515
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.
+Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.
+That's about it.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
deleted file mode 100644
index 911f24f98e..0000000000
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
+++ /dev/null
@@ -1,4 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-This should be enough to deter Beleth's plans for now.
-Here is the reward I promised. Please use this to become even stronger. Never stop training!
-
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
new file mode 100644
index 0000000000..4a3d964374
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
index 2f0ab0e532..116861f740 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
@@ -1,4 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Good spirit! All right, listen well:
-Kill any monsters in Hellbound to collect more Fragments of Chaos. We cannot let Beleth get his way.
+Master Cyphona:
+This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.
+If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?
+Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
new file mode 100644
index 0000000000..08410c9eb4
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
new file mode 100644
index 0000000000..c414476494
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 150 Mutated Spirit's Souls.
+Intermediate Mission - Collect 300 Mutated Spirit's Souls.
+Advanced Mission - Collect 450 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
new file mode 100644
index 0000000000..9041babe57
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
@@ -0,0 +1,3 @@
+Master Cyphona:
+Alright. Here's the mission. Hunt the Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero, and collect their Mutated Spirit's Souls as proof. You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
index bd67cfbb8f..f42c41b57c 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Alright, this is the mission. Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 1 or above may undertake this mission.
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
new file mode 100644
index 0000000000..d906d828ac
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 2 or above may undertake this mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
deleted file mode 100644
index 1ce76fd5f1..0000000000
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
+++ /dev/null
@@ -1,3 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
-
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
new file mode 100644
index 0000000000..57548e6e11
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
new file mode 100644
index 0000000000..4373dbdfe3
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
new file mode 100644
index 0000000000..904673d2b5
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the advanced mission to collect 450 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
index 3086c79eaf..4cd0a791b0 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
@@ -1,3 +1,4 @@
-Fire Dragon Bride Leona Blackbird:
-You can obtain Fragments of Chaos if you kill monsters here. They are proof that the monsters were once human, and also make up Core Naia - meaning Beleth is ultimately after them.
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 250 Mutated Spirit's Souls. It should be manageable.
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
new file mode 100644
index 0000000000..116f0273a0
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 500 Mutated Spirit's Souls. It should be manageable.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
new file mode 100644
index 0000000000..f38e05c9e5
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 750 Mutated Spirit's Souls. It should be manageable.
+y>
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
new file mode 100644
index 0000000000..38094c8ce1
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
@@ -0,0 +1,5 @@
+Master Cyphona:
+You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
index 2ae34a0337..788d16f082 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Here are the rewards you've earned. If you're disappointed, know that Eva helps those who help themselves. Please come again later.
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 250 Mutated Spirit's Souls.
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
new file mode 100644
index 0000000000..3bcaf0d0c8
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 500 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
new file mode 100644
index 0000000000..cf69f5473a
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 750 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
index a68846949d..a2eeb363a2 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
@@ -1,5 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants is maximum payment. I am very grateful to you!
-
+Master Cyphona:
+Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.
+I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
new file mode 100644
index 0000000000..de8acf5fc6
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
new file mode 100644
index 0000000000..2a43fc2a0a
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
new file mode 100644
index 0000000000..8a4bc55c70
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
new file mode 100644
index 0000000000..ec3450a5fc
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.
+As long as you don't forget us, that is. We thank you for your hard work.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
new file mode 100644
index 0000000000..2bf94feff3
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
new file mode 100644
index 0000000000..c2f962f4f2
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
new file mode 100644
index 0000000000..aacd7919d3
--- /dev/null
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
index 3752d3cc5c..5db2527b09 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
@@ -16,6 +16,7 @@
*/
package quests.Q00775_RetrievingTheChaosFragment;
+import org.l2jmobius.Config;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
@@ -29,7 +30,7 @@ import quests.Q10455_ElikiasLetter.Q10455_ElikiasLetter;
/**
* Retrieving the Fragment of Chaos (775)
* @URL https://l2wiki.com/Retrieving_the_Fragment_of_Chaos
- * @author Gigi
+ * @author Dmitri
*/
public class Q00775_RetrievingTheChaosFragment extends Quest
{
@@ -64,9 +65,8 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
};
// Misc
private static final int MIN_LEVEL = 99;
- // Item
+ // Items
private static final int CHAOS_FRAGMENT = 37766;
- private static final int BASIC_SUPPLY_BOX = 47172;
private static final int INTERMEDIATE_SUPPLY_BOX = 47173;
private static final int ADVANCED_SUPPLY_BOX = 47174;
@@ -84,52 +84,164 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
+ String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
- return null;
+ return htmltext;
}
- String htmltext = event;
switch (event)
{
- case "31595-05.html":
+ case "31595-02.htm":
+ case "31595-03.htm":
+ case "31595-04.htm":
+ case "31595-04a.htm":
+ case "31595-04b.htm":
+ case "31595-06.html":
+ case "31595-06a.html":
+ case "31595-06b.html":
{
htmltext = event;
break;
}
- case "31595-06.htm":
+ case "select_mission":
{
qs.startQuest();
- break;
- }
- case "31595-03.html":
- {
- if (qs.isCond(2))
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
{
- final int factionLevel = player.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
- giveItems(player, BASIC_SUPPLY_BOX, 1);
- addExpAndSp(player, 4522369500L, 10853640);
- }
- else if (factionLevel == 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
- giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
- addExpAndSp(player, 9044739000L, 21707280);
- }
- else if (factionLevel > 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
- giveItems(player, ADVANCED_SUPPLY_BOX, 1);
- addExpAndSp(player, 13567108500L, 32560920);
- }
- qs.exitQuest(QuestType.DAILY, true);
- htmltext = event;
+ htmltext = "31595-04a.htm";
break;
}
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "return":
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "31595-07.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07a.html":
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07b.html":
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-10.html":
+ {
+ final int chance = getRandom(100);
+ switch (qs.getCond())
+ {
+ case 5:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 250) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ addExpAndSp(player, 12_113_489_880L, 12_113_460);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 6:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 500) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 24_226_979_760L, 24_226_920);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 7:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 750) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 36_340_469_640L, 36_340_380);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ }
+ break;
}
}
return htmltext;
@@ -141,84 +253,113 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
- if (npc.getId() == LEONA_BLACKBIRD)
+ switch (qs.getState())
{
- switch (qs.getState())
+ case State.CREATED:
{
- case State.COMPLETED:
+ htmltext = "31595-01.htm";
+ }
+ case State.STARTED:
+ {
+ switch (qs.getCond())
{
- if (!qs.isNowAvailable())
+ case 1:
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case 2:
{
htmltext = "31595-08.html";
break;
}
- qs.setState(State.CREATED);
- }
- case State.CREATED:
- {
- htmltext = "31595-01.htm";
- break;
- }
- case State.STARTED:
- {
- if (qs.isCond(1))
+ case 3:
{
- htmltext = "31595-07.html";
+ htmltext = "31595-08a.html";
+ break;
}
- else if (qs.isCond(2))
+ case 4:
{
- if (getQuestItemsCount(player, CHAOS_FRAGMENT) < 200)
- {
- htmltext = "31595-02.html";
- }
- else
- {
- htmltext = "31595-09.html";
- }
+ htmltext = "31595-08b.html";
+ break;
+ }
+ case 5:
+ case 6:
+ case 7:
+ {
+ htmltext = "31595-09.html";
+ break;
}
- break;
}
+ break;
+ }
+ case State.COMPLETED:
+ {
+ if (!qs.isNowAvailable())
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ else
+ {
+ qs.setState(State.CREATED);
+ htmltext = "31595-01.htm";
+ }
+ break;
}
- }
- else if (qs.isCompleted() && !qs.isNowAvailable())
- {
- htmltext = "31595-08.html";
}
return htmltext;
}
@Override
- public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
+ public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
- final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
- if ((qs != null) && qs.isCond(1))
+ executeForEachPlayer(player, npc, isSummon, true, false);
+ return super.onKill(npc, player, isSummon);
+ }
+
+ @Override
+ public void actionForEachPlayer(PlayerInstance player, Npc npc, boolean isSummon)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && (qs.getCond() > 1) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE))
{
- final int factionLevel = killer.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
+ switch (qs.getCond())
{
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 300)
+ case 2:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 250, 1, true))
+ {
+ qs.setCond(5, true);
+ }
+ break;
}
- }
- else if (factionLevel == 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 600)
+ case 3:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 500, 1, true))
+ {
+ qs.setCond(6, true);
+ }
+ break;
}
- }
- else if (factionLevel > 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 900)
+ case 4:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 750, 1, true))
+ {
+ qs.setCond(7, true);
+ }
+ break;
}
}
}
- return super.onKill(npc, killer, isSummon);
}
}
\ No newline at end of file
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java
index 70f15ddfce..ed3678b886 100644
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -142,6 +142,8 @@ import quests.Q00562_BasicMissionAltarOfEvil.Q00562_BasicMissionAltarOfEvil;
import quests.Q00563_BasicMissionBloodySwampland.Q00563_BasicMissionBloodySwampland;
import quests.Q00564_BasicMissionKartiasLabyrinthSolo.Q00564_BasicMissionKartiasLabyrinthSolo;
import quests.Q00565_BasicMissionFairySettlementWest.Q00565_BasicMissionFairySettlementWest;
+import quests.Q00566_BasicMissionFairySettlementEast.Q00566_BasicMissionFairySettlementEast;
+import quests.Q00567_BasicMissionIsleOfSouls.Q00567_BasicMissionIsleOfSouls;
import quests.Q00580_BeyondTheMemories.Q00580_BeyondTheMemories;
import quests.Q00581_ThePurificationRitual.Q00581_ThePurificationRitual;
import quests.Q00582_WashBloodWithBlood.Q00582_WashBloodWithBlood;
@@ -602,8 +604,8 @@ public class QuestMasterHandler
Q00563_BasicMissionBloodySwampland.class,
Q00564_BasicMissionKartiasLabyrinthSolo.class,
Q00565_BasicMissionFairySettlementWest.class,
- Q00566_BasicMissionFairySettlementEast.class, // TODO: Not done.
- Q00567_BasicMissionIsleOfSouls.class, // TODO: Not done.
+ Q00566_BasicMissionFairySettlementEast.class,
+ Q00567_BasicMissionIsleOfSouls.class,
Q00568_SpecialMissionNornilsCave.class, // TODO: Not done.
Q00569_BasicMissionSealOfShilen.class, // TODO: Not done.
Q00570_SpecialMissionKartiasLabyrinthParty.class, // TODO: Not done.
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java
deleted file mode 100644
index a6e4f44d8a..0000000000
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00566_BasicMissionFairySettlementEast extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00566_BasicMissionFairySettlementEast()
- {
- super(566);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
deleted file mode 100644
index f7eda0bb47..0000000000
--- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00567_BasicMissionIsleOfSouls extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00567_BasicMissionIsleOfSouls()
- {
- super(567);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt
index 138b681380..ace24b4e1f 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/MissingQuests.txt
@@ -4,9 +4,6 @@
555 Red Libra Request - Atelia Refinery
556 Red Libra Request - Fallen Emperor's Throne
557 Red Libra Request - Fall of Etina
-565 Basic Mission: Fairy Settlement - West
-566 Basic Mission: Fairy Settlement - East
-567 Basic Mission: Isle of Souls
568 Special Mission: Nornil's Cave
569 Basic Mission: Seal of Shilen
570 Special Mission: Kartia's Labyrinth (Party)
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html
@@ -0,0 +1,4 @@
+Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html
new file mode 100644
index 0000000000..0fc08f5c72
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Eastern Fairy Colony," you must do "Dreaming of peace" and "Mutated creatures" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html
new file mode 100644
index 0000000000..6bbdd60e5e
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html
new file mode 100644
index 0000000000..8f39177aed
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html
new file mode 100644
index 0000000000..6ed533c77b
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html
new file mode 100644
index 0000000000..10495d9121
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html
new file mode 100644
index 0000000000..dea80e2e6f
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html
new file mode 100644
index 0000000000..eae0618cfa
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm
new file mode 100644
index 0000000000..8a75d8fc3e
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm
new file mode 100644
index 0000000000..abf3c1cb6f
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm
new file mode 100644
index 0000000000..b8be16bdfe
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm
new file mode 100644
index 0000000000..df0d1f3483
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html
new file mode 100644
index 0000000000..efe1aa8a6c
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html
new file mode 100644
index 0000000000..7f547de891
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 3 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java
new file mode 100644
index 0000000000..6d5a10c897
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00566_BasicMissionFairySettlementEast;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Fairy Settlement - East (566)
+ * @URL https://l2wiki.com/Basic_Mission:_Fairy_Settlement_-_East
+ * @author Dmitri
+ */
+public class Q00566_BasicMissionFairySettlementEast extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int NERUPA = 30370;
+ private static final int ELISA = 30848;
+ private static final int RADA = 33100;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 793414440;
+ private static final int SP = 793410;
+ private static final int FP = 250; // Faction points
+ private static final int SCROLL_OF_ESCAPE_FAIRY_COLONY = 39498;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 90;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00566_BasicMissionFairySettlementEast()
+ {
+ super(566);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, NERUPA, ELISA, RADA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 4, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "33100-02.html":
+ case "30370-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_FAIRY_COLONY, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "33100-03.html": // RADA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "30370-04.html": // LEPATHIA
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case RADA:
+ {
+ htmltext = "33100-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case NERUPA:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "30370-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "30370-02.html";
+ }
+ else
+ {
+ htmltext = "30370-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00774_DreamingOfPeace");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00586_MutatedCreatures");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html
new file mode 100644
index 0000000000..22478dafe4
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.90-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
@@ -0,0 +1,4 @@
+Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
new file mode 100644
index 0000000000..0d046784ed
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
new file mode 100644
index 0000000000..94d439420e
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
new file mode 100644
index 0000000000..5775c20ce0
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
new file mode 100644
index 0000000000..9de30de44b
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
new file mode 100644
index 0000000000..81a2eaf0a9
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
new file mode 100644
index 0000000000..d67b578d56
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
new file mode 100644
index 0000000000..aab07be364
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
new file mode 100644
index 0000000000..85087864ae
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
new file mode 100644
index 0000000000..aedf30892d
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
new file mode 100644
index 0000000000..3bec6e2d06
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
new file mode 100644
index 0000000000..72700b48b8
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
new file mode 100644
index 0000000000..906898ca90
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
new file mode 100644
index 0000000000..35c37e687a
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
new file mode 100644
index 0000000000..bcd16e5957
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00567_BasicMissionIsleOfSouls;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Isle of Souls (567)
+ * @URL https://l2wiki.com/Basic_Mission:_Isle_of_Souls
+ * @author Dmitri
+ */
+public class Q00567_BasicMissionIsleOfSouls extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int HESET = 33780;
+ private static final int ELISA = 30848;
+ private static final int TAPA = 30499;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 973202790;
+ private static final int SP = 973200;
+ private static final int FP = 260; // Faction points
+ private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 93;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00567_BasicMissionIsleOfSouls()
+ {
+ super(567);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "30499-02.html":
+ case "33780-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "30499-03.html": // TAPA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "33780-04.html": // HESET
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case TAPA:
+ {
+ htmltext = "30499-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case HESET:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "33780-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "33780-02.html";
+ }
+ else
+ {
+ htmltext = "33780-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00752_UncoverTheSecret");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00587_MoreAggressiveOperation");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
new file mode 100644
index 0000000000..2ac1401d31
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.93-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
index b1774ca184..480a487c52 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
@@ -1,6 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-I would like to tell you about what I have investigated so far, and give you a mission. Are you interested?
-If you already know about this mission, I can let you work on it right away.
-
-
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.
+What do you say? if you don't remember what to do, I can tell you again.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
new file mode 100644
index 0000000000..4c94cb5c52
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
new file mode 100644
index 0000000000..b86d86f633
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
new file mode 100644
index 0000000000..188c370f04
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
@@ -0,0 +1,5 @@
+Master Cyphona:
+I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
new file mode 100644
index 0000000000..46d5dea028
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
@@ -0,0 +1,4 @@
+Master Cyphona:
+We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
deleted file mode 100644
index 680a935ce8..0000000000
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
+++ /dev/null
@@ -1,6 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants minimal payment. Will you stop here?
-
-
-
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
new file mode 100644
index 0000000000..76b4f8d515
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.
+Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.
+That's about it.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
deleted file mode 100644
index 911f24f98e..0000000000
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
+++ /dev/null
@@ -1,4 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-This should be enough to deter Beleth's plans for now.
-Here is the reward I promised. Please use this to become even stronger. Never stop training!
-
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
new file mode 100644
index 0000000000..4a3d964374
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
index 2f0ab0e532..116861f740 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
@@ -1,4 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Good spirit! All right, listen well:
-Kill any monsters in Hellbound to collect more Fragments of Chaos. We cannot let Beleth get his way.
+Master Cyphona:
+This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.
+If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?
+Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
new file mode 100644
index 0000000000..08410c9eb4
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
new file mode 100644
index 0000000000..c414476494
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 150 Mutated Spirit's Souls.
+Intermediate Mission - Collect 300 Mutated Spirit's Souls.
+Advanced Mission - Collect 450 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
new file mode 100644
index 0000000000..9041babe57
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
@@ -0,0 +1,3 @@
+Master Cyphona:
+Alright. Here's the mission. Hunt the Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero, and collect their Mutated Spirit's Souls as proof. You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
index bd67cfbb8f..f42c41b57c 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Alright, this is the mission. Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 1 or above may undertake this mission.
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
new file mode 100644
index 0000000000..d906d828ac
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 2 or above may undertake this mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
deleted file mode 100644
index 1ce76fd5f1..0000000000
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
+++ /dev/null
@@ -1,3 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
-
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
new file mode 100644
index 0000000000..57548e6e11
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
new file mode 100644
index 0000000000..4373dbdfe3
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
new file mode 100644
index 0000000000..904673d2b5
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the advanced mission to collect 450 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
index 3086c79eaf..4cd0a791b0 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
@@ -1,3 +1,4 @@
-Fire Dragon Bride Leona Blackbird:
-You can obtain Fragments of Chaos if you kill monsters here. They are proof that the monsters were once human, and also make up Core Naia - meaning Beleth is ultimately after them.
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 250 Mutated Spirit's Souls. It should be manageable.
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
new file mode 100644
index 0000000000..116f0273a0
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 500 Mutated Spirit's Souls. It should be manageable.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
new file mode 100644
index 0000000000..f38e05c9e5
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 750 Mutated Spirit's Souls. It should be manageable.
+y>
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
new file mode 100644
index 0000000000..38094c8ce1
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
@@ -0,0 +1,5 @@
+Master Cyphona:
+You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
index 2ae34a0337..788d16f082 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Here are the rewards you've earned. If you're disappointed, know that Eva helps those who help themselves. Please come again later.
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 250 Mutated Spirit's Souls.
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
new file mode 100644
index 0000000000..3bcaf0d0c8
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 500 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
new file mode 100644
index 0000000000..cf69f5473a
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 750 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
index a68846949d..a2eeb363a2 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
@@ -1,5 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants is maximum payment. I am very grateful to you!
-
+Master Cyphona:
+Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.
+I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
new file mode 100644
index 0000000000..de8acf5fc6
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
new file mode 100644
index 0000000000..2a43fc2a0a
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
new file mode 100644
index 0000000000..8a4bc55c70
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
new file mode 100644
index 0000000000..ec3450a5fc
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.
+As long as you don't forget us, that is. We thank you for your hard work.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
new file mode 100644
index 0000000000..2bf94feff3
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
new file mode 100644
index 0000000000..c2f962f4f2
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
new file mode 100644
index 0000000000..aacd7919d3
--- /dev/null
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
index 3752d3cc5c..5db2527b09 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
@@ -16,6 +16,7 @@
*/
package quests.Q00775_RetrievingTheChaosFragment;
+import org.l2jmobius.Config;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
@@ -29,7 +30,7 @@ import quests.Q10455_ElikiasLetter.Q10455_ElikiasLetter;
/**
* Retrieving the Fragment of Chaos (775)
* @URL https://l2wiki.com/Retrieving_the_Fragment_of_Chaos
- * @author Gigi
+ * @author Dmitri
*/
public class Q00775_RetrievingTheChaosFragment extends Quest
{
@@ -64,9 +65,8 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
};
// Misc
private static final int MIN_LEVEL = 99;
- // Item
+ // Items
private static final int CHAOS_FRAGMENT = 37766;
- private static final int BASIC_SUPPLY_BOX = 47172;
private static final int INTERMEDIATE_SUPPLY_BOX = 47173;
private static final int ADVANCED_SUPPLY_BOX = 47174;
@@ -84,52 +84,164 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
+ String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
- return null;
+ return htmltext;
}
- String htmltext = event;
switch (event)
{
- case "31595-05.html":
+ case "31595-02.htm":
+ case "31595-03.htm":
+ case "31595-04.htm":
+ case "31595-04a.htm":
+ case "31595-04b.htm":
+ case "31595-06.html":
+ case "31595-06a.html":
+ case "31595-06b.html":
{
htmltext = event;
break;
}
- case "31595-06.htm":
+ case "select_mission":
{
qs.startQuest();
- break;
- }
- case "31595-03.html":
- {
- if (qs.isCond(2))
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
{
- final int factionLevel = player.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
- giveItems(player, BASIC_SUPPLY_BOX, 1);
- addExpAndSp(player, 4522369500L, 10853640);
- }
- else if (factionLevel == 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
- giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
- addExpAndSp(player, 9044739000L, 21707280);
- }
- else if (factionLevel > 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
- giveItems(player, ADVANCED_SUPPLY_BOX, 1);
- addExpAndSp(player, 13567108500L, 32560920);
- }
- qs.exitQuest(QuestType.DAILY, true);
- htmltext = event;
+ htmltext = "31595-04a.htm";
break;
}
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "return":
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "31595-07.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07a.html":
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07b.html":
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-10.html":
+ {
+ final int chance = getRandom(100);
+ switch (qs.getCond())
+ {
+ case 5:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 250) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ addExpAndSp(player, 12_113_489_880L, 12_113_460);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 6:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 500) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 24_226_979_760L, 24_226_920);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 7:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 750) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 36_340_469_640L, 36_340_380);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ }
+ break;
}
}
return htmltext;
@@ -141,84 +253,113 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
- if (npc.getId() == LEONA_BLACKBIRD)
+ switch (qs.getState())
{
- switch (qs.getState())
+ case State.CREATED:
{
- case State.COMPLETED:
+ htmltext = "31595-01.htm";
+ }
+ case State.STARTED:
+ {
+ switch (qs.getCond())
{
- if (!qs.isNowAvailable())
+ case 1:
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case 2:
{
htmltext = "31595-08.html";
break;
}
- qs.setState(State.CREATED);
- }
- case State.CREATED:
- {
- htmltext = "31595-01.htm";
- break;
- }
- case State.STARTED:
- {
- if (qs.isCond(1))
+ case 3:
{
- htmltext = "31595-07.html";
+ htmltext = "31595-08a.html";
+ break;
}
- else if (qs.isCond(2))
+ case 4:
{
- if (getQuestItemsCount(player, CHAOS_FRAGMENT) < 200)
- {
- htmltext = "31595-02.html";
- }
- else
- {
- htmltext = "31595-09.html";
- }
+ htmltext = "31595-08b.html";
+ break;
+ }
+ case 5:
+ case 6:
+ case 7:
+ {
+ htmltext = "31595-09.html";
+ break;
}
- break;
}
+ break;
+ }
+ case State.COMPLETED:
+ {
+ if (!qs.isNowAvailable())
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ else
+ {
+ qs.setState(State.CREATED);
+ htmltext = "31595-01.htm";
+ }
+ break;
}
- }
- else if (qs.isCompleted() && !qs.isNowAvailable())
- {
- htmltext = "31595-08.html";
}
return htmltext;
}
@Override
- public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
+ public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
- final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
- if ((qs != null) && qs.isCond(1))
+ executeForEachPlayer(player, npc, isSummon, true, false);
+ return super.onKill(npc, player, isSummon);
+ }
+
+ @Override
+ public void actionForEachPlayer(PlayerInstance player, Npc npc, boolean isSummon)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && (qs.getCond() > 1) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE))
{
- final int factionLevel = killer.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
+ switch (qs.getCond())
{
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 300)
+ case 2:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 250, 1, true))
+ {
+ qs.setCond(5, true);
+ }
+ break;
}
- }
- else if (factionLevel == 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 600)
+ case 3:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 500, 1, true))
+ {
+ qs.setCond(6, true);
+ }
+ break;
}
- }
- else if (factionLevel > 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 900)
+ case 4:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 750, 1, true))
+ {
+ qs.setCond(7, true);
+ }
+ break;
}
}
}
- return super.onKill(npc, killer, isSummon);
}
}
\ No newline at end of file
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java
index ff0b5ea5db..d14edd8ca5 100644
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -120,6 +120,8 @@ import quests.Q00562_BasicMissionAltarOfEvil.Q00562_BasicMissionAltarOfEvil;
import quests.Q00563_BasicMissionBloodySwampland.Q00563_BasicMissionBloodySwampland;
import quests.Q00564_BasicMissionKartiasLabyrinthSolo.Q00564_BasicMissionKartiasLabyrinthSolo;
import quests.Q00565_BasicMissionFairySettlementWest.Q00565_BasicMissionFairySettlementWest;
+import quests.Q00566_BasicMissionFairySettlementEast.Q00566_BasicMissionFairySettlementEast;
+import quests.Q00567_BasicMissionIsleOfSouls.Q00567_BasicMissionIsleOfSouls;
import quests.Q00580_BeyondTheMemories.Q00580_BeyondTheMemories;
import quests.Q00581_ThePurificationRitual.Q00581_ThePurificationRitual;
import quests.Q00582_WashBloodWithBlood.Q00582_WashBloodWithBlood;
@@ -533,8 +535,8 @@ public class QuestMasterHandler
Q00563_BasicMissionBloodySwampland.class,
Q00564_BasicMissionKartiasLabyrinthSolo.class,
Q00565_BasicMissionFairySettlementWest.class,
- Q00566_BasicMissionFairySettlementEast.class, // TODO: Not done.
- Q00567_BasicMissionIsleOfSouls.class, // TODO: Not done.
+ Q00566_BasicMissionFairySettlementEast.class,
+ Q00567_BasicMissionIsleOfSouls.class,
Q00568_SpecialMissionNornilsCave.class, // TODO: Not done.
Q00569_BasicMissionSealOfShilen.class, // TODO: Not done.
Q00570_SpecialMissionKartiasLabyrinthParty.class, // TODO: Not done.
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java
deleted file mode 100644
index a6e4f44d8a..0000000000
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00566_BasicMissionFairySettlementEast extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00566_BasicMissionFairySettlementEast()
- {
- super(566);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
deleted file mode 100644
index f7eda0bb47..0000000000
--- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00567_BasicMissionIsleOfSouls extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00567_BasicMissionIsleOfSouls()
- {
- super(567);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt
index 93458a9a6d..5b686b0537 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/MissingQuests.txt
@@ -7,9 +7,6 @@
557 Red Libra Request - Fall of Etina
558 Request from the Red Libra Guild - Sea of Spores
559 Request from the Red Libra Guild - Krofin’s Nest
-565 Basic Mission: Fairy Settlement - West
-566 Basic Mission: Fairy Settlement - East
-567 Basic Mission: Isle of Souls
568 Special Mission: Nornil's Cave
569 Basic Mission: Seal of Shilen
570 Special Mission: Kartia's Labyrinth (Party)
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30134-01.html
@@ -0,0 +1,4 @@
+Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html
new file mode 100644
index 0000000000..0fc08f5c72
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Eastern Fairy Colony," you must do "Dreaming of peace" and "Mutated creatures" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html
new file mode 100644
index 0000000000..6bbdd60e5e
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html
new file mode 100644
index 0000000000..8f39177aed
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html
new file mode 100644
index 0000000000..6ed533c77b
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30370-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html
new file mode 100644
index 0000000000..10495d9121
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html
new file mode 100644
index 0000000000..dea80e2e6f
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html
new file mode 100644
index 0000000000..eae0618cfa
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/33100-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm
new file mode 100644
index 0000000000..8a75d8fc3e
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm
new file mode 100644
index 0000000000..abf3c1cb6f
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm
new file mode 100644
index 0000000000..b8be16bdfe
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm
new file mode 100644
index 0000000000..df0d1f3483
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html
new file mode 100644
index 0000000000..efe1aa8a6c
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html
new file mode 100644
index 0000000000..7f547de891
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 3 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java
new file mode 100644
index 0000000000..6d5a10c897
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/Q00566_BasicMissionFairySettlementEast.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00566_BasicMissionFairySettlementEast;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Fairy Settlement - East (566)
+ * @URL https://l2wiki.com/Basic_Mission:_Fairy_Settlement_-_East
+ * @author Dmitri
+ */
+public class Q00566_BasicMissionFairySettlementEast extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int NERUPA = 30370;
+ private static final int ELISA = 30848;
+ private static final int RADA = 33100;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 793414440;
+ private static final int SP = 793410;
+ private static final int FP = 250; // Faction points
+ private static final int SCROLL_OF_ESCAPE_FAIRY_COLONY = 39498;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 90;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00566_BasicMissionFairySettlementEast()
+ {
+ super(566);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, NERUPA, ELISA, RADA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 4, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "33100-02.html":
+ case "30370-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_FAIRY_COLONY, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "33100-03.html": // RADA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "30370-04.html": // LEPATHIA
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case RADA:
+ {
+ htmltext = "33100-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case NERUPA:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "30370-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "30370-02.html";
+ }
+ else
+ {
+ htmltext = "30370-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00774_DreamingOfPeace");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00586_MutatedCreatures");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html
new file mode 100644
index 0000000000..22478dafe4
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00566_BasicMissionFairySettlementEast/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.90-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
@@ -0,0 +1,4 @@
+Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
new file mode 100644
index 0000000000..0d046784ed
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
new file mode 100644
index 0000000000..94d439420e
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
new file mode 100644
index 0000000000..5775c20ce0
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
new file mode 100644
index 0000000000..9de30de44b
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
new file mode 100644
index 0000000000..81a2eaf0a9
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
new file mode 100644
index 0000000000..d67b578d56
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
new file mode 100644
index 0000000000..aab07be364
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
new file mode 100644
index 0000000000..85087864ae
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
new file mode 100644
index 0000000000..aedf30892d
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
new file mode 100644
index 0000000000..3bec6e2d06
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
new file mode 100644
index 0000000000..72700b48b8
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
new file mode 100644
index 0000000000..906898ca90
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
new file mode 100644
index 0000000000..35c37e687a
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
new file mode 100644
index 0000000000..bcd16e5957
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00567_BasicMissionIsleOfSouls;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Isle of Souls (567)
+ * @URL https://l2wiki.com/Basic_Mission:_Isle_of_Souls
+ * @author Dmitri
+ */
+public class Q00567_BasicMissionIsleOfSouls extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int HESET = 33780;
+ private static final int ELISA = 30848;
+ private static final int TAPA = 30499;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 973202790;
+ private static final int SP = 973200;
+ private static final int FP = 260; // Faction points
+ private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 93;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00567_BasicMissionIsleOfSouls()
+ {
+ super(567);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "30499-02.html":
+ case "33780-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "30499-03.html": // TAPA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "33780-04.html": // HESET
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case TAPA:
+ {
+ htmltext = "30499-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case HESET:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "33780-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "33780-02.html";
+ }
+ else
+ {
+ htmltext = "33780-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00752_UncoverTheSecret");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00587_MoreAggressiveOperation");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
new file mode 100644
index 0000000000..2ac1401d31
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.93-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
index b1774ca184..480a487c52 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
@@ -1,6 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-I would like to tell you about what I have investigated so far, and give you a mission. Are you interested?
-If you already know about this mission, I can let you work on it right away.
-
-
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.
+What do you say? if you don't remember what to do, I can tell you again.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
new file mode 100644
index 0000000000..4c94cb5c52
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
new file mode 100644
index 0000000000..b86d86f633
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
new file mode 100644
index 0000000000..188c370f04
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
@@ -0,0 +1,5 @@
+Master Cyphona:
+I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
new file mode 100644
index 0000000000..46d5dea028
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
@@ -0,0 +1,4 @@
+Master Cyphona:
+We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
deleted file mode 100644
index 680a935ce8..0000000000
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
+++ /dev/null
@@ -1,6 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants minimal payment. Will you stop here?
-
-
-
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
new file mode 100644
index 0000000000..76b4f8d515
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.
+Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.
+That's about it.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
deleted file mode 100644
index 911f24f98e..0000000000
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
+++ /dev/null
@@ -1,4 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-This should be enough to deter Beleth's plans for now.
-Here is the reward I promised. Please use this to become even stronger. Never stop training!
-
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
new file mode 100644
index 0000000000..4a3d964374
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
index 2f0ab0e532..116861f740 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
@@ -1,4 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Good spirit! All right, listen well:
-Kill any monsters in Hellbound to collect more Fragments of Chaos. We cannot let Beleth get his way.
+Master Cyphona:
+This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.
+If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?
+Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
new file mode 100644
index 0000000000..08410c9eb4
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
new file mode 100644
index 0000000000..c414476494
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 150 Mutated Spirit's Souls.
+Intermediate Mission - Collect 300 Mutated Spirit's Souls.
+Advanced Mission - Collect 450 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
new file mode 100644
index 0000000000..9041babe57
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
@@ -0,0 +1,3 @@
+Master Cyphona:
+Alright. Here's the mission. Hunt the Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero, and collect their Mutated Spirit's Souls as proof. You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
index bd67cfbb8f..f42c41b57c 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Alright, this is the mission. Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 1 or above may undertake this mission.
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
new file mode 100644
index 0000000000..d906d828ac
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 2 or above may undertake this mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
deleted file mode 100644
index 1ce76fd5f1..0000000000
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
+++ /dev/null
@@ -1,3 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
-
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
new file mode 100644
index 0000000000..57548e6e11
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
new file mode 100644
index 0000000000..4373dbdfe3
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
new file mode 100644
index 0000000000..904673d2b5
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the advanced mission to collect 450 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
index 3086c79eaf..4cd0a791b0 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
@@ -1,3 +1,4 @@
-Fire Dragon Bride Leona Blackbird:
-You can obtain Fragments of Chaos if you kill monsters here. They are proof that the monsters were once human, and also make up Core Naia - meaning Beleth is ultimately after them.
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 250 Mutated Spirit's Souls. It should be manageable.
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
new file mode 100644
index 0000000000..116f0273a0
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 500 Mutated Spirit's Souls. It should be manageable.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
new file mode 100644
index 0000000000..f38e05c9e5
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 750 Mutated Spirit's Souls. It should be manageable.
+y>
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
new file mode 100644
index 0000000000..38094c8ce1
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
@@ -0,0 +1,5 @@
+Master Cyphona:
+You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
index 2ae34a0337..788d16f082 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Here are the rewards you've earned. If you're disappointed, know that Eva helps those who help themselves. Please come again later.
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 250 Mutated Spirit's Souls.
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
new file mode 100644
index 0000000000..3bcaf0d0c8
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 500 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
new file mode 100644
index 0000000000..cf69f5473a
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 750 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
index a68846949d..a2eeb363a2 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
@@ -1,5 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants is maximum payment. I am very grateful to you!
-
+Master Cyphona:
+Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.
+I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
new file mode 100644
index 0000000000..de8acf5fc6
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
new file mode 100644
index 0000000000..2a43fc2a0a
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
new file mode 100644
index 0000000000..8a4bc55c70
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
new file mode 100644
index 0000000000..ec3450a5fc
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.
+As long as you don't forget us, that is. We thank you for your hard work.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
new file mode 100644
index 0000000000..2bf94feff3
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
new file mode 100644
index 0000000000..c2f962f4f2
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
new file mode 100644
index 0000000000..aacd7919d3
--- /dev/null
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
index 3752d3cc5c..5db2527b09 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
@@ -16,6 +16,7 @@
*/
package quests.Q00775_RetrievingTheChaosFragment;
+import org.l2jmobius.Config;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
@@ -29,7 +30,7 @@ import quests.Q10455_ElikiasLetter.Q10455_ElikiasLetter;
/**
* Retrieving the Fragment of Chaos (775)
* @URL https://l2wiki.com/Retrieving_the_Fragment_of_Chaos
- * @author Gigi
+ * @author Dmitri
*/
public class Q00775_RetrievingTheChaosFragment extends Quest
{
@@ -64,9 +65,8 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
};
// Misc
private static final int MIN_LEVEL = 99;
- // Item
+ // Items
private static final int CHAOS_FRAGMENT = 37766;
- private static final int BASIC_SUPPLY_BOX = 47172;
private static final int INTERMEDIATE_SUPPLY_BOX = 47173;
private static final int ADVANCED_SUPPLY_BOX = 47174;
@@ -84,52 +84,164 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
+ String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
- return null;
+ return htmltext;
}
- String htmltext = event;
switch (event)
{
- case "31595-05.html":
+ case "31595-02.htm":
+ case "31595-03.htm":
+ case "31595-04.htm":
+ case "31595-04a.htm":
+ case "31595-04b.htm":
+ case "31595-06.html":
+ case "31595-06a.html":
+ case "31595-06b.html":
{
htmltext = event;
break;
}
- case "31595-06.htm":
+ case "select_mission":
{
qs.startQuest();
- break;
- }
- case "31595-03.html":
- {
- if (qs.isCond(2))
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
{
- final int factionLevel = player.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
- giveItems(player, BASIC_SUPPLY_BOX, 1);
- addExpAndSp(player, 4522369500L, 10853640);
- }
- else if (factionLevel == 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
- giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
- addExpAndSp(player, 9044739000L, 21707280);
- }
- else if (factionLevel > 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
- giveItems(player, ADVANCED_SUPPLY_BOX, 1);
- addExpAndSp(player, 13567108500L, 32560920);
- }
- qs.exitQuest(QuestType.DAILY, true);
- htmltext = event;
+ htmltext = "31595-04a.htm";
break;
}
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "return":
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "31595-07.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07a.html":
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07b.html":
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-10.html":
+ {
+ final int chance = getRandom(100);
+ switch (qs.getCond())
+ {
+ case 5:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 250) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ addExpAndSp(player, 12_113_489_880L, 12_113_460);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 6:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 500) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 24_226_979_760L, 24_226_920);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 7:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 750) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 36_340_469_640L, 36_340_380);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ }
+ break;
}
}
return htmltext;
@@ -141,84 +253,113 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
- if (npc.getId() == LEONA_BLACKBIRD)
+ switch (qs.getState())
{
- switch (qs.getState())
+ case State.CREATED:
{
- case State.COMPLETED:
+ htmltext = "31595-01.htm";
+ }
+ case State.STARTED:
+ {
+ switch (qs.getCond())
{
- if (!qs.isNowAvailable())
+ case 1:
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case 2:
{
htmltext = "31595-08.html";
break;
}
- qs.setState(State.CREATED);
- }
- case State.CREATED:
- {
- htmltext = "31595-01.htm";
- break;
- }
- case State.STARTED:
- {
- if (qs.isCond(1))
+ case 3:
{
- htmltext = "31595-07.html";
+ htmltext = "31595-08a.html";
+ break;
}
- else if (qs.isCond(2))
+ case 4:
{
- if (getQuestItemsCount(player, CHAOS_FRAGMENT) < 200)
- {
- htmltext = "31595-02.html";
- }
- else
- {
- htmltext = "31595-09.html";
- }
+ htmltext = "31595-08b.html";
+ break;
+ }
+ case 5:
+ case 6:
+ case 7:
+ {
+ htmltext = "31595-09.html";
+ break;
}
- break;
}
+ break;
+ }
+ case State.COMPLETED:
+ {
+ if (!qs.isNowAvailable())
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ else
+ {
+ qs.setState(State.CREATED);
+ htmltext = "31595-01.htm";
+ }
+ break;
}
- }
- else if (qs.isCompleted() && !qs.isNowAvailable())
- {
- htmltext = "31595-08.html";
}
return htmltext;
}
@Override
- public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
+ public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
- final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
- if ((qs != null) && qs.isCond(1))
+ executeForEachPlayer(player, npc, isSummon, true, false);
+ return super.onKill(npc, player, isSummon);
+ }
+
+ @Override
+ public void actionForEachPlayer(PlayerInstance player, Npc npc, boolean isSummon)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && (qs.getCond() > 1) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE))
{
- final int factionLevel = killer.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
+ switch (qs.getCond())
{
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 300)
+ case 2:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 250, 1, true))
+ {
+ qs.setCond(5, true);
+ }
+ break;
}
- }
- else if (factionLevel == 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 600)
+ case 3:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 500, 1, true))
+ {
+ qs.setCond(6, true);
+ }
+ break;
}
- }
- else if (factionLevel > 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 900)
+ case 4:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 750, 1, true))
+ {
+ qs.setCond(7, true);
+ }
+ break;
}
}
}
- return super.onKill(npc, killer, isSummon);
}
}
\ No newline at end of file
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java
index 6cef3a1470..e9d16eea47 100644
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -120,6 +120,8 @@ import quests.Q00562_BasicMissionAltarOfEvil.Q00562_BasicMissionAltarOfEvil;
import quests.Q00563_BasicMissionBloodySwampland.Q00563_BasicMissionBloodySwampland;
import quests.Q00564_BasicMissionKartiasLabyrinthSolo.Q00564_BasicMissionKartiasLabyrinthSolo;
import quests.Q00565_BasicMissionFairySettlementWest.Q00565_BasicMissionFairySettlementWest;
+import quests.Q00566_BasicMissionFairySettlementEast.Q00566_BasicMissionFairySettlementEast;
+import quests.Q00567_BasicMissionIsleOfSouls.Q00567_BasicMissionIsleOfSouls;
import quests.Q00580_BeyondTheMemories.Q00580_BeyondTheMemories;
import quests.Q00581_ThePurificationRitual.Q00581_ThePurificationRitual;
import quests.Q00582_WashBloodWithBlood.Q00582_WashBloodWithBlood;
@@ -544,8 +546,8 @@ public class QuestMasterHandler
Q00563_BasicMissionBloodySwampland.class,
Q00564_BasicMissionKartiasLabyrinthSolo.class,
Q00565_BasicMissionFairySettlementWest.class,
- Q00566_BasicMissionFairySettlementEast.class, // TODO: Not done.
- Q00567_BasicMissionIsleOfSouls.class, // TODO: Not done.
+ Q00566_BasicMissionFairySettlementEast.class,
+ Q00567_BasicMissionIsleOfSouls.class,
Q00568_SpecialMissionNornilsCave.class, // TODO: Not done.
Q00569_BasicMissionSealOfShilen.class, // TODO: Not done.
Q00570_SpecialMissionKartiasLabyrinthParty.class, // TODO: Not done.
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java
deleted file mode 100644
index a6e4f44d8a..0000000000
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q00566_BasicMissionFairySettlementEast.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00566_BasicMissionFairySettlementEast extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00566_BasicMissionFairySettlementEast()
- {
- super(566);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
deleted file mode 100644
index f7eda0bb47..0000000000
--- a/L2J_Mobius_6.0_Fafurion/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00567_BasicMissionIsleOfSouls extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00567_BasicMissionIsleOfSouls()
- {
- super(567);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt
index 91f6dd6a47..41f93fdf6d 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/MissingQuests.txt
@@ -39,7 +39,6 @@
557 Red Libra Request - Fall of Etina
558 Red Libra Request - Sea of Spores
559 Request from the Red Libra Guild - Krofin's Nest
-567 Basic Mission: Isle of Souls
568 Special Mission: Nornil's Cave
569 Basic Mission: Seal of Shilen
570 Special Mission: Kartia's Labyrinth (Party)
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
new file mode 100644
index 0000000000..0e25e61045
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30134-01.html
@@ -0,0 +1,4 @@
+Teleport Device:
+(According to Gatekeeper Bella, in order to reach the Altar of Evil, you need to go to the Bloody SwamplandGo there and look for Lapathiaa Mystic of Dark Arts.)
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
new file mode 100644
index 0000000000..0d046784ed
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Bella:
+ Do you have something else you need?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
new file mode 100644
index 0000000000..94d439420e
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-02.html
@@ -0,0 +1,6 @@
+Gatekeeper Bella:
+Are you here on a mission from the Adventure Guild? I've seen many who are. If so, I'll explain the details.
+You'll have to select Dark Elf Village from the teleport link I give you and go there. The area for an active mission will appear at the top of the teleport list so it won't be hard to find.
+But you have to watch out for one thing.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
new file mode 100644
index 0000000000..3f5c6e5103
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30499-03.html
@@ -0,0 +1,5 @@
+Gatekeeper Bella:
+There's no Gatekeeper in the Dark Elf Village. In the past, there had been a Gatekeeper, however, now, due to a tragic accident, there is only a Teleport Device.
+Anyway, there's no other option. Go and check the missions.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
new file mode 100644
index 0000000000..5775c20ce0
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-01.html
@@ -0,0 +1,4 @@
+Gatekeeper Elisa:
+You want to know how to go to the Altar of Evil? It must be because of your mission from the Adventure Guild! Alright, I'll tell you.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
new file mode 100644
index 0000000000..021cbb0551
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/30848-02.html
@@ -0,0 +1,5 @@
+Gatekeeper Elisa:
+The Altar of Evil is a Hunting Zone that can be accessed by the Dark Elf Village. But, there is no direct channel to teleport from the Town of Aden to the Dark Elf Village. So, you'll have to go somewhere that has teleporting routes to the Dark Elf Village.
+You should go to the Town of Gludio. Once you get there, ask Gatekeeper Bella about how to teleport. For now, why don't you just focus on getting to the Town of Gludio.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
new file mode 100644
index 0000000000..9de30de44b
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-01.html
@@ -0,0 +1,4 @@
+Black Wizard Lapathia:
+I asked the Adventure Guild to send an adventurer but didn't expect they would send you. I'd like to see how good you are.
+(To do "Basic Mission: Isle of Souls," you must do "Uncover the Secret" and "More Aggressive Operation" through Black Wizard Lapathia.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
new file mode 100644
index 0000000000..81a2eaf0a9
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-02.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+You completed all the missions I gave you, meaning that you also completed those of the Adventure Guildsman. Are you going back to the Town of Aden? How?
+Don't tell me you're going to walk all the way up there. I know a better way.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
new file mode 100644
index 0000000000..d67b578d56
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-03.html
@@ -0,0 +1,5 @@
+Black Wizard Lapathia:
+When setting out for a joumey, veteran adventurers always pack Scrolls of Escape, it teleports the user immediately to the closest village or to the check point.
+If you have these useful items, you can move easily after hunting or when you are far away from the village. Since you've been a great help to me, I'll give you the scroll that can teleport you directly to the Town of Aden.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
new file mode 100644
index 0000000000..aab07be364
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/33780-04.html
@@ -0,0 +1,6 @@
+Black Wizard Lapathia:
+You can use the scroll now or later. Just don't forget to pack enough Scrolls of Escape once you retum to town.
+You can easily buy Scrolls of Escape at stores. Be safe until we meet again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
new file mode 100644
index 0000000000..85087864ae
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-01.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your're the one that Hephah has sent, right? If not, you should go meet Herphah and receive a mission from her before you continue. If you think it doesn't matter, I can continue anyway. Do you want me to continue?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
new file mode 100644
index 0000000000..aedf30892d
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-02.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Herphah wants you to do some missions, and I'll chose an appropriate mission depending on your relationship with us at the Adventure Guild.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
new file mode 100644
index 0000000000..3bec6e2d06
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-03.htm
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Your mission is to assist with the task at the Altar of Evil. If successful, our Adventure Guild will give you additional rewards on top of the mission payment and your relationship with our faction will grow even stronger.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
new file mode 100644
index 0000000000..72700b48b8
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-04.htm
@@ -0,0 +1,6 @@
+Adventure Guildsman Penny:
+You've already leamed everything you need to know about the mission. By that I mean, how to go to the Altar of Evil. You should be able to start the mission right away without further explanation.
+But if you want to listen to the explanation again, I'd be happy to tell you.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
new file mode 100644
index 0000000000..6a2b0fce5e
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-05.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Good choice. Now, go to Black Wizard Lapathia at the Altar of Evil and do the mission that she gives you. When the mission is done, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
new file mode 100644
index 0000000000..906898ca90
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-06.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+Welcome back! So, did you do a good job?
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
new file mode 100644
index 0000000000..ba0fe1f086
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-07.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+Thanks, you've done a great job! I'm sure eveyone in the Adventure Guild will know your name now. If there is another opportunity, we'd love for you to help us again. Good luck and farewell!
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
new file mode 100644
index 0000000000..190351d034
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-08.html
@@ -0,0 +1,3 @@
+Adventure Guildsman Penny:
+To do the mission, you have to go to Black Wizard Lapathia at the Altar of Evil. Do the mission that Lapathia gives. Then, come back to me.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
new file mode 100644
index 0000000000..05b3a3231b
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-09.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+I'm sure the Gatekeeper of the town, Gatekeeper Elise, could give you a better explanation. Go to her and ask how you can go to the Altar of Evil. She's very friendly so don't be shy.
+If you anive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
new file mode 100644
index 0000000000..3ecc46dbe2
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-10.html
@@ -0,0 +1,4 @@
+Adventure Guildsman Penny:
+You need to leam how to get there first. Go to Gatekeeper Elise and ask how to go to the Altar of Evil. She will give you a detailed explanation.
+If you arive successfully, meet the black wizard, Lapathia, and ask about the mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
new file mode 100644
index 0000000000..35c37e687a
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/34413-11.html
@@ -0,0 +1,4 @@
+Truth Seeker Devianne:
+In order to take on this mission, you must first build more trust with us.
+(Only characters with faction level 5 or above with the Blackbird Clan may undertake this quest.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
new file mode 100644
index 0000000000..bcd16e5957
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/Q00567_BasicMissionIsleOfSouls.java
@@ -0,0 +1,276 @@
+/*
+ * This file is part of the L2J Mobius project.
+ *
+ * This program 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.
+ *
+ * This program 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 .
+ */
+package quests.Q00567_BasicMissionIsleOfSouls;
+
+import org.l2jmobius.gameserver.enums.Faction;
+import org.l2jmobius.gameserver.enums.QuestType;
+import org.l2jmobius.gameserver.model.Location;
+import org.l2jmobius.gameserver.model.actor.Npc;
+import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.quest.Quest;
+import org.l2jmobius.gameserver.model.quest.QuestState;
+import org.l2jmobius.gameserver.model.quest.State;
+
+/**
+ * Basic Mission: Isle of Souls (567)
+ * @URL https://l2wiki.com/Basic_Mission:_Isle_of_Souls
+ * @author Dmitri
+ */
+public class Q00567_BasicMissionIsleOfSouls extends Quest
+{
+ // NPCs
+ private static final int PENNY = 34413;
+ private static final int HESET = 33780;
+ private static final int ELISA = 30848;
+ private static final int TAPA = 30499;
+ private static final int DE_VILLAGE_TELEPORT_DEVICE = 30134;
+ // Rewards
+ private static final long EXP = 973202790;
+ private static final int SP = 973200;
+ private static final int FP = 260; // Faction points
+ private static final int SCROLL_OF_ESCAPE_SOUL_ISLAND = 47059;
+ private static final int SCROLL_OF_ESCAPE_TOWN_OF_ADEN = 48413;
+ // Misc
+ private static final int MIN_LEVEL = 93;
+ private static final int MAX_LEVEL = 94;
+ // Location
+ private static final Location TOWN_OF_ADEN = new Location(146632, 26760, -2213);
+
+ public Q00567_BasicMissionIsleOfSouls()
+ {
+ super(567);
+ addStartNpc(PENNY);
+ addTalkId(PENNY, HESET, ELISA, TAPA, DE_VILLAGE_TELEPORT_DEVICE);
+ addCondLevel(MIN_LEVEL, MAX_LEVEL, "nolevel.html");
+ addFactionLevel(Faction.ADVENTURE_GUILD, 5, "34413-11.html");
+ }
+
+ @Override
+ public String onAdvEvent(String event, Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, false);
+
+ if (qs == null)
+ {
+ return null;
+ }
+
+ String htmltext = null;
+ switch (event)
+ {
+ case "34413-02.htm":
+ case "34413-03.htm":
+ case "34413-06.html":
+ case "30499-02.html":
+ case "33780-03.html":
+ {
+ htmltext = event;
+ break;
+ }
+ case "34413-04.htm":
+ {
+ qs.startQuest();
+ htmltext = event;
+ break;
+ }
+ case "34413-05.html":
+ {
+ qs.setCond(5, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-09.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "34413-07.html":
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_SOUL_ISLAND, 1);
+ addExpAndSp(player, EXP, SP);
+ addFactionPoints(player, Faction.ADVENTURE_GUILD, FP); // add FP points to ADVENTURE_GUILD Faction
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = "34413-08.html";
+ }
+ break;
+ }
+ case "30848-02.html": // ELISA
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "30499-03.html": // TAPA
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "33780-04.html": // HESET
+ {
+ giveItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, 1);
+ htmltext = event;
+ break;
+ }
+ case "usescroll":
+ {
+ // TODO: force player to use item SCROLL_OF_ESCAPE_TOWN_OF_ADEN
+ player.teleToLocation(TOWN_OF_ADEN); // Town of Aden near Npc Penny - temp solution
+ takeItems(player, SCROLL_OF_ESCAPE_TOWN_OF_ADEN, -1); // remove SOE - temp solution
+ qs.setCond(8, true);
+ break;
+ }
+ case "keepscroll":
+ {
+ qs.setCond(8, true);
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ @Override
+ public String onTalk(Npc npc, PlayerInstance player)
+ {
+ final QuestState qs = getQuestState(player, true);
+ String htmltext = getNoQuestMsg(player);
+
+ switch (qs.getState())
+ {
+ case State.CREATED:
+ {
+ if (npc.getId() == PENNY)
+ {
+ htmltext = "34413-01.htm";
+ }
+ break;
+ }
+ case State.STARTED:
+ {
+ switch (npc.getId())
+ {
+ case PENNY:
+ {
+ if (qs.getCond() == 1)
+ {
+ htmltext = "34413-04.htm";
+ }
+ else if (qs.getCond() == 2)
+ {
+ // htmltext = qs.getCond() == 2 ? "34413-10.htm" : "34413-06.html";
+ htmltext = "33509-10.htm";
+ }
+ else if (qs.getCond() == 5)
+ {
+ // htmltext = qs.getCond() == 5 ? "34413-08.htm" : "34413-06.html";
+ htmltext = "34413-08.html";
+ }
+ else
+ {
+ htmltext = "34413-06.html";
+ }
+ break;
+ }
+ case ELISA:
+ {
+ htmltext = "30848-01.html";
+ break;
+ }
+ case TAPA:
+ {
+ htmltext = "30499-01.html";
+ break;
+ }
+ case DE_VILLAGE_TELEPORT_DEVICE:
+ {
+ qs.setCond(5, true);
+ htmltext = "30134-01.html";
+ break;
+ }
+ case HESET:
+ {
+ if (qs.getCond() == 5)
+ {
+ qs.setCond(6, true);
+ htmltext = "33780-01.html";
+ }
+ else
+ {
+ StringBuilder str = new StringBuilder("00");
+ checkQuestCompleted(player, str); // Initialize the array with all quests completed
+ if (str.indexOf("11") != -1) // verify if all quests completed
+ {
+ qs.setCond(7, true);
+ htmltext = "33780-02.html";
+ }
+ else
+ {
+ htmltext = "33780-01.html";
+ }
+ }
+ break;
+ }
+ }
+ break;
+ }
+ case State.COMPLETED:
+
+ {
+ if (qs.isNowAvailable())
+ {
+ qs.setState(State.CREATED);
+ htmltext = "34413-01.htm";
+ }
+ else
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ break;
+ }
+ }
+ return htmltext;
+ }
+
+ private StringBuilder checkQuestCompleted(PlayerInstance player, StringBuilder string)
+ {
+ int index = 0;
+ char ch = '1';
+ final QuestState st1 = player.getQuestState("Q00752_UncoverTheSecret");
+ if ((st1 != null) && st1.isCompleted())
+ {
+ index = 0;
+ string.setCharAt(index, ch);
+ }
+ final QuestState st2 = player.getQuestState("Q00587_MoreAggressiveOperation");
+ if ((st2 != null) && st2.isCompleted())
+ {
+ index = 1;
+ string.setCharAt(index, ch);
+ }
+ return string;
+ }
+}
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
new file mode 100644
index 0000000000..2ac1401d31
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00567_BasicMissionIsleOfSouls/nolevel.html
@@ -0,0 +1,4 @@
+Penny:
+I don't understand why someone like you is interested in this mission?
+(Only characters above Lv.93-94.)
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
index b1774ca184..480a487c52 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01.htm
@@ -1,6 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-I would like to tell you about what I have investigated so far, and give you a mission. Are you interested?
-If you already know about this mission, I can let you work on it right away.
-
-
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more? if you do, you can deepen the mutual trust with us and Ferin.
+What do you say? if you don't remember what to do, I can tell you again.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
new file mode 100644
index 0000000000..4c94cb5c52
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01a.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Ah, adventurer! There you are again. How about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
new file mode 100644
index 0000000000..b86d86f633
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01b.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+Adventurer! Good to see you. Since you've helped us so much already, how about helping us some more?
+What do you say? If you don't remember what the mission was, I can tell you again.
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
new file mode 100644
index 0000000000..188c370f04
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-01c.htm
@@ -0,0 +1,5 @@
+Master Cyphona:
+I've been waiting for you, adventurer. Well since you are here now, will you listen to me? I know I can trust you, but if you complete this mission, we'll become better allies and your pockets will get heavier. What do you say? Or do you need me to explain the mission again?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
new file mode 100644
index 0000000000..46d5dea028
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.htm
@@ -0,0 +1,4 @@
+Master Cyphona:
+We've begun an investigation in the Garden of Spirits starting from here. However, we are being threatened by the spirits there, so something must be done.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
deleted file mode 100644
index 680a935ce8..0000000000
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-02.html
+++ /dev/null
@@ -1,6 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants minimal payment. Will you stop here?
-
-
-
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
new file mode 100644
index 0000000000..76b4f8d515
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.htm
@@ -0,0 +1,6 @@
+Master Cyphona:
+We know of a way to defeat those spirits, at least temporarily. This way, we'll be able to put the spirits at rest, even if it's just for a little while.
+Of course, we will give you a reward for your help. And there is one more thing. While you are helping us, you'll build trust with us. The more we trust you, the more rewards we will give you, and there are some secret missions that we only give to those we trust.
+That's about it.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
deleted file mode 100644
index 911f24f98e..0000000000
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-03.html
+++ /dev/null
@@ -1,4 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-This should be enough to deter Beleth's plans for now.
-Here is the reward I promised. Please use this to become even stronger. Never stop training!
-
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
new file mode 100644
index 0000000000..4a3d964374
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
index 2f0ab0e532..116861f740 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04.html
@@ -1,4 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Good spirit! All right, listen well:
-Kill any monsters in Hellbound to collect more Fragments of Chaos. We cannot let Beleth get his way.
+Master Cyphona:
+This isn't the first time we've met? You've completed a mission before? I see... Well, I don't really have a good memory.
+If you have completed a mission before, then that means you must have a Mark of Trust. What? You don't have one?
+Then you are either a liar, or you haven't been here in a long time. My trust is something you must continously try to maintain. Will you listen to me?
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
new file mode 100644
index 0000000000..08410c9eb4
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04a.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 250 Mutated Spirit's Souls.
+Intermediate Mission - Collect 500 Mutated Spirit's Souls.
+Advanced Mission - Collect 750 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
new file mode 100644
index 0000000000..c414476494
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-04b.htm
@@ -0,0 +1,9 @@
+Master Cyphona:
+Good. Let me tell you what to do. Just choose the mission that you are capable of doing.
+Basic Mission - Collect 150 Mutated Spirit's Souls.
+Intermediate Mission - Collect 300 Mutated Spirit's Souls.
+Advanced Mission - Collect 450 Mutated Spirit's Souls.
+
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
new file mode 100644
index 0000000000..9041babe57
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.htm
@@ -0,0 +1,3 @@
+Master Cyphona:
+Alright. Here's the mission. Hunt the Kerberos Leger, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and the Fury Kerberos Nero, and collect their Mutated Spirit's Souls as proof. You can get rewards only if you bring at least 200. Of course, you'll get more rewards if you bring more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
index bd67cfbb8f..f42c41b57c 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Alright, this is the mission. Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 1 or above may undertake this mission.
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
new file mode 100644
index 0000000000..d906d828ac
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-05a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Your Unworldly Visitors Faction Level Must be 2 or above may undertake this mission.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
deleted file mode 100644
index 1ce76fd5f1..0000000000
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.htm
+++ /dev/null
@@ -1,3 +0,0 @@
-Fire Dragon Bride Leona Blackbird:
-Kill any monster in Hellbound to obtain Fragments of Chaos. Bring them to me, and I'll pay you per 100 of them. This is vital to stopping Beleth!
-
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
new file mode 100644
index 0000000000..57548e6e11
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the basic mission to collect 200 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
new file mode 100644
index 0000000000..4373dbdfe3
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06a.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the intermediate mission to collect 400 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
new file mode 100644
index 0000000000..904673d2b5
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-06b.html
@@ -0,0 +1,6 @@
+Master Cyphona:
+You have chosen the advanced mission to collect 450 Mutated Spirit's Souls. Once you have selected the difficulty of the mission, you must meet the requirements in order to complete it. Choose wisely.
+Are you sure you want to proceed with this mission?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
index 3086c79eaf..4cd0a791b0 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07.html
@@ -1,3 +1,4 @@
-Fire Dragon Bride Leona Blackbird:
-You can obtain Fragments of Chaos if you kill monsters here. They are proof that the monsters were once human, and also make up Core Naia - meaning Beleth is ultimately after them.
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 250 Mutated Spirit's Souls. It should be manageable.
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
new file mode 100644
index 0000000000..116f0273a0
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 500 Mutated Spirit's Souls. It should be manageable.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
new file mode 100644
index 0000000000..f38e05c9e5
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Good. Left me explain the details. Go to the Garden of Spirits, defeat the Kerberos Lager, Kerberos Fort, Kerberos Nero, Fury Sylph Barrena, Fury Sylph Labido, Fury Sylph Purka, Fury Kerberos Leger, and Fury Kerberos Nero, and put them to rest.
+As evidence, please bring back 750 Mutated Spirit's Souls. It should be manageable.
+y>
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
new file mode 100644
index 0000000000..38094c8ce1
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-07c.html
@@ -0,0 +1,5 @@
+Master Cyphona:
+You want to finish already? Well, I can still give you a reward... But it won't be something good. Are you sure?
+
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
index 2ae34a0337..788d16f082 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08.html
@@ -1,3 +1,3 @@
-Fire Dragon Bride Leona Blackbird:
-Here are the rewards you've earned. If you're disappointed, know that Eva helps those who help themselves. Please come again later.
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 250 Mutated Spirit's Souls.
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
new file mode 100644
index 0000000000..3bcaf0d0c8
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 500 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
new file mode 100644
index 0000000000..cf69f5473a
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-08b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Go to the Garden of Spirits and defeat all type monsters until you collect 750 Mutated Spirit's Souls.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
index a68846949d..a2eeb363a2 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09.html
@@ -1,5 +1,6 @@
-Fire Dragon Bride Leona Blackbird:
-Finished? Wait...the Fragments of Chaos! You got it!
-This amount warrants is maximum payment. I am very grateful to you!
-
+Master Cyphona:
+Toy have collected all of the Mutated Spirit's Souls. You have completed the mission successfully.
+I would like to congratulate you on completing the mission. Here's your reward. If you have a Faction Amity Token, I can give You more rewards.
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
new file mode 100644
index 0000000000..de8acf5fc6
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09a.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
new file mode 100644
index 0000000000..2a43fc2a0a
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09b.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
new file mode 100644
index 0000000000..8a4bc55c70
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-09c.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+You completed the mission!
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
new file mode 100644
index 0000000000..ec3450a5fc
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10.html
@@ -0,0 +1,4 @@
+Master Cyphona:
+Here is your reward. This will also help to improve the trust between you and us at the Unworldly Visitors.
+As long as you don't forget us, that is. We thank you for your hard work.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
new file mode 100644
index 0000000000..2bf94feff3
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10a.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward. We'll be able to maintain our trust. As long as you don't forget about us, that is.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
new file mode 100644
index 0000000000..c2f962f4f2
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10b.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward, I'll remember how you've helped us all those times. Here's a higher level Mark of Trust. Thank you for all of your help.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
new file mode 100644
index 0000000000..aacd7919d3
--- /dev/null
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/31595-10c.html
@@ -0,0 +1,3 @@
+Master Cyphona:
+Here's your reward for helping us. Although you didn't get all the Marks, I still remember how you helped us. I have no doubt the trust between us has deepened even more.
+
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
index 3752d3cc5c..5db2527b09 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/Q00775_RetrievingTheChaosFragment/Q00775_RetrievingTheChaosFragment.java
@@ -16,6 +16,7 @@
*/
package quests.Q00775_RetrievingTheChaosFragment;
+import org.l2jmobius.Config;
import org.l2jmobius.gameserver.enums.Faction;
import org.l2jmobius.gameserver.enums.QuestType;
import org.l2jmobius.gameserver.model.actor.Npc;
@@ -29,7 +30,7 @@ import quests.Q10455_ElikiasLetter.Q10455_ElikiasLetter;
/**
* Retrieving the Fragment of Chaos (775)
* @URL https://l2wiki.com/Retrieving_the_Fragment_of_Chaos
- * @author Gigi
+ * @author Dmitri
*/
public class Q00775_RetrievingTheChaosFragment extends Quest
{
@@ -64,9 +65,8 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
};
// Misc
private static final int MIN_LEVEL = 99;
- // Item
+ // Items
private static final int CHAOS_FRAGMENT = 37766;
- private static final int BASIC_SUPPLY_BOX = 47172;
private static final int INTERMEDIATE_SUPPLY_BOX = 47173;
private static final int ADVANCED_SUPPLY_BOX = 47174;
@@ -84,52 +84,164 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
@Override
public String onAdvEvent(String event, Npc npc, PlayerInstance player)
{
+ String htmltext = null;
final QuestState qs = getQuestState(player, false);
if (qs == null)
{
- return null;
+ return htmltext;
}
- String htmltext = event;
switch (event)
{
- case "31595-05.html":
+ case "31595-02.htm":
+ case "31595-03.htm":
+ case "31595-04.htm":
+ case "31595-04a.htm":
+ case "31595-04b.htm":
+ case "31595-06.html":
+ case "31595-06a.html":
+ case "31595-06b.html":
{
htmltext = event;
break;
}
- case "31595-06.htm":
+ case "select_mission":
{
qs.startQuest();
- break;
- }
- case "31595-03.html":
- {
- if (qs.isCond(2))
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
{
- final int factionLevel = player.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
- giveItems(player, BASIC_SUPPLY_BOX, 1);
- addExpAndSp(player, 4522369500L, 10853640);
- }
- else if (factionLevel == 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
- giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
- addExpAndSp(player, 9044739000L, 21707280);
- }
- else if (factionLevel > 1)
- {
- addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
- giveItems(player, ADVANCED_SUPPLY_BOX, 1);
- addExpAndSp(player, 13567108500L, 32560920);
- }
- qs.exitQuest(QuestType.DAILY, true);
- htmltext = event;
+ htmltext = "31595-04a.htm";
break;
}
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "return":
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case "31595-07.html":
+ {
+ qs.setCond(2, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07a.html":
+ {
+ qs.setCond(3, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-07b.html":
+ {
+ qs.setCond(4, true);
+ htmltext = event;
+ break;
+ }
+ case "31595-10.html":
+ {
+ final int chance = getRandom(100);
+ switch (qs.getCond())
+ {
+ case 5:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 250) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ addExpAndSp(player, 12_113_489_880L, 12_113_460);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 100);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 6:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 500) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 24_226_979_760L, 24_226_920);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 200);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ case 7:
+ {
+ if ((getQuestItemsCount(player, CHAOS_FRAGMENT) == 750) && (player.getLevel() >= MIN_LEVEL))
+ {
+ if (chance < 2)
+ {
+ giveItems(player, CHAOS_FRAGMENT, 1);
+ }
+ else if (chance < 20)
+ {
+ giveItems(player, INTERMEDIATE_SUPPLY_BOX, 1);
+ }
+ else if (chance < 100)
+ {
+ giveItems(player, ADVANCED_SUPPLY_BOX, 1);
+ }
+ addExpAndSp(player, 36_340_469_640L, 36_340_380);
+ addFactionPoints(player, Faction.BLACKBIRD_CLAN, 300);
+ qs.exitQuest(QuestType.DAILY, true);
+ htmltext = event;
+ }
+ else
+ {
+ htmltext = getNoQuestLevelRewardMsg(player);
+ }
+ break;
+ }
+ }
+ break;
}
}
return htmltext;
@@ -141,84 +253,113 @@ public class Q00775_RetrievingTheChaosFragment extends Quest
final QuestState qs = getQuestState(player, true);
String htmltext = getNoQuestMsg(player);
- if (npc.getId() == LEONA_BLACKBIRD)
+ switch (qs.getState())
{
- switch (qs.getState())
+ case State.CREATED:
{
- case State.COMPLETED:
+ htmltext = "31595-01.htm";
+ }
+ case State.STARTED:
+ {
+ switch (qs.getCond())
{
- if (!qs.isNowAvailable())
+ case 1:
+ {
+ if ((player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 1) && (player.getFactionLevel(Faction.BLACKBIRD_CLAN) < 2))
+ {
+ htmltext = "31595-04a.htm";
+ break;
+ }
+ else if (player.getFactionLevel(Faction.BLACKBIRD_CLAN) >= 2)
+ {
+ htmltext = "31595-04b.htm";
+ break;
+ }
+ htmltext = "31595-04.htm";
+ break;
+ }
+ case 2:
{
htmltext = "31595-08.html";
break;
}
- qs.setState(State.CREATED);
- }
- case State.CREATED:
- {
- htmltext = "31595-01.htm";
- break;
- }
- case State.STARTED:
- {
- if (qs.isCond(1))
+ case 3:
{
- htmltext = "31595-07.html";
+ htmltext = "31595-08a.html";
+ break;
}
- else if (qs.isCond(2))
+ case 4:
{
- if (getQuestItemsCount(player, CHAOS_FRAGMENT) < 200)
- {
- htmltext = "31595-02.html";
- }
- else
- {
- htmltext = "31595-09.html";
- }
+ htmltext = "31595-08b.html";
+ break;
+ }
+ case 5:
+ case 6:
+ case 7:
+ {
+ htmltext = "31595-09.html";
+ break;
}
- break;
}
+ break;
+ }
+ case State.COMPLETED:
+ {
+ if (!qs.isNowAvailable())
+ {
+ htmltext = getAlreadyCompletedMsg(player, QuestType.DAILY);
+ }
+ else
+ {
+ qs.setState(State.CREATED);
+ htmltext = "31595-01.htm";
+ }
+ break;
}
- }
- else if (qs.isCompleted() && !qs.isNowAvailable())
- {
- htmltext = "31595-08.html";
}
return htmltext;
}
@Override
- public String onKill(Npc npc, PlayerInstance killer, boolean isSummon)
+ public String onKill(Npc npc, PlayerInstance player, boolean isSummon)
{
- final QuestState qs = getRandomPartyMemberState(killer, -1, 3, npc);
- if ((qs != null) && qs.isCond(1))
+ executeForEachPlayer(player, npc, isSummon, true, false);
+ return super.onKill(npc, player, isSummon);
+ }
+
+ @Override
+ public void actionForEachPlayer(PlayerInstance player, Npc npc, boolean isSummon)
+ {
+ final QuestState qs = getQuestState(player, false);
+ if ((qs != null) && (qs.getCond() > 1) && player.isInsideRadius3D(npc, Config.ALT_PARTY_RANGE))
{
- final int factionLevel = killer.getFactionLevel(Faction.BLACKBIRD_CLAN);
- if (factionLevel == 0)
+ switch (qs.getCond())
{
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 300)
+ case 2:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 250, 1, true))
+ {
+ qs.setCond(5, true);
+ }
+ break;
}
- }
- else if (factionLevel == 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 600)
+ case 3:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 500, 1, true))
+ {
+ qs.setCond(6, true);
+ }
+ break;
}
- }
- else if (factionLevel > 1)
- {
- giveItems(killer, CHAOS_FRAGMENT, 1, true);
- if (getQuestItemsCount(killer, CHAOS_FRAGMENT) >= 900)
+ case 4:
{
- qs.setCond(2, true);
+ if (giveItemRandomly(player, npc, CHAOS_FRAGMENT, 1, 750, 1, true))
+ {
+ qs.setCond(7, true);
+ }
+ break;
}
}
}
- return super.onKill(npc, killer, isSummon);
}
}
\ No newline at end of file
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java
index cf1ee9efe2..44beaa7fb8 100644
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java
+++ b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/QuestMasterHandler.java
@@ -55,6 +55,7 @@ import quests.Q00551_OlympiadStarter.Q00551_OlympiadStarter;
import quests.Q00553_OlympiadUndefeated.Q00553_OlympiadUndefeated;
import quests.Q00561_BasicMissionHarnakUndergroundRuins.Q00561_BasicMissionHarnakUndergroundRuins;
import quests.Q00564_BasicMissionKartiasLabyrinthSolo.Q00564_BasicMissionKartiasLabyrinthSolo;
+import quests.Q00567_BasicMissionIsleOfSouls.Q00567_BasicMissionIsleOfSouls;
import quests.Q00580_BeyondTheMemories.Q00580_BeyondTheMemories;
import quests.Q00618_IntoTheFlame.Q00618_IntoTheFlame;
import quests.Q00620_FourGoblets.Q00620_FourGoblets;
@@ -225,7 +226,7 @@ public class QuestMasterHandler
Q00560_HowToOvercomeFear.class, // FIXME: Custom.
Q00561_BasicMissionHarnakUndergroundRuins.class,
Q00564_BasicMissionKartiasLabyrinthSolo.class,
- Q00567_BasicMissionIsleOfSouls.class, // TODO: Not done.
+ Q00567_BasicMissionIsleOfSouls.class,
Q00568_SpecialMissionNornilsCave.class, // TODO: Not done.
Q00569_BasicMissionSealOfShilen.class, // TODO: Not done.
Q00570_SpecialMissionKartiasLabyrinthParty.class, // TODO: Not done.
diff --git a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java b/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
deleted file mode 100644
index f7eda0bb47..0000000000
--- a/L2J_Mobius_7.0_PreludeOfWar/dist/game/data/scripts/quests/not_done/Q00567_BasicMissionIsleOfSouls.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is part of the L2J Mobius project.
- *
- * This program 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.
- *
- * This program 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 .
- */
-package quests.not_done;
-
-import org.l2jmobius.Config;
-import org.l2jmobius.gameserver.model.quest.Quest;
-
-/**
- * @author Mobius
- */
-public class Q00567_BasicMissionIsleOfSouls extends Quest
-{
- private static final int START_NPC = 34413;
-
- public Q00567_BasicMissionIsleOfSouls()
- {
- super(567);
- addStartNpc(START_NPC);
- addTalkId(START_NPC);
- addCondMinLevel(Config.PLAYER_MAXIMUM_LEVEL, getNoQuestMsg(null));
- }
-}