Fixes for most script warnings.

This commit is contained in:
MobiusDev
2017-08-05 13:41:36 +00:00
parent 24c3adced1
commit ceef4087e6
294 changed files with 29 additions and 2205 deletions

View File

@@ -36,18 +36,8 @@ public final class FleeMonsters extends AbstractNpcAI
// NPCs // NPCs
private static final int[] MOBS = private static final int[] MOBS =
{ {
18150, // Victim
18151, // Victim
18152, // Victim
18153, // Victim
18154, // Victim
18155, // Victim
18156, // Victim
18157, // Victim
20002, // Rabbit 20002, // Rabbit
20432, // Elpy 20432, // Elpy
22228, // Grey Elpy
25604, // Mutated Elpy
}; };
// Misc // Misc
private static final int FLEE_DISTANCE = 500; private static final int FLEE_DISTANCE = 500;

View File

@@ -36,15 +36,8 @@ import ai.AbstractNpcAI;
*/ */
public final class MonumentOfHeroes extends AbstractNpcAI public final class MonumentOfHeroes extends AbstractNpcAI
{ {
// NPCs // NPC
private static final int[] MONUMENTS = private static final int MONUMENT = 31690;
{
31690,
31769,
31770,
31771,
31772,
};
// Items // Items
private static final int HERO_CLOAK = 30372; private static final int HERO_CLOAK = 30372;
// private static final int GLORIOUS_CLOAK = 30373; // private static final int GLORIOUS_CLOAK = 30373;
@@ -65,9 +58,9 @@ public final class MonumentOfHeroes extends AbstractNpcAI
private MonumentOfHeroes() private MonumentOfHeroes()
{ {
addStartNpc(MONUMENTS); addStartNpc(MONUMENT);
addFirstTalkId(MONUMENTS); addFirstTalkId(MONUMENT);
addTalkId(MONUMENTS); addTalkId(MONUMENT);
} }
@Override @Override

View File

@@ -1,95 +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 <http://www.gnu.org/licenses/>.
*/
package ai.others.NpcBuffers;
import java.util.logging.Logger;
import com.l2jmobius.gameserver.ThreadPoolManager;
import com.l2jmobius.gameserver.data.xml.impl.SkillData;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.skills.BuffInfo;
import com.l2jmobius.gameserver.model.skills.Skill;
/**
* @author UnAfraid
*/
public class NpcBufferAI implements Runnable
{
private static final Logger LOGGER = Logger.getLogger(NpcBufferAI.class.getName());
private final L2Npc _npc;
private final NpcBufferSkillData _skillData;
protected NpcBufferAI(L2Npc npc, NpcBufferSkillData skill)
{
_npc = npc;
_skillData = skill;
}
private Skill getSkill(L2PcInstance player)
{
if (_skillData.getScaleToLevel() < 1)
{
return _skillData.getSkill();
}
final BuffInfo currentBuff = player.getEffectList().getBuffInfoBySkillId(_skillData.getSkill().getId());
if (currentBuff != null)
{
int level = currentBuff.getSkill().getLevel();
if (_skillData.getScaleToLevel() > level)
{
level++;
}
final Skill skill = SkillData.getInstance().getSkill(_skillData.getSkill().getId(), level);
if (skill == null)
{
LOGGER.warning("Requested non existing skill level: " + level + " for id: " + _skillData.getSkill().getId());
}
return skill;
}
return _skillData.getSkill();
}
@Override
public void run()
{
if ((_npc == null) || !_npc.isSpawned() || _npc.isDecayed() || _npc.isDead() || (_skillData == null) || (_skillData.getSkill() == null))
{
return;
}
if ((_npc.getSummoner() == null) || !_npc.getSummoner().isPlayer())
{
return;
}
final L2PcInstance player = _npc.getSummoner().getActingPlayer();
final Skill skill = getSkill(player);
if (skill == null)
{
return;
}
_npc.doCast(skill);
ThreadPoolManager.getInstance().scheduleGeneral(this, skill.getReuseDelay());
}
}

View File

@@ -1,49 +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 <http://www.gnu.org/licenses/>.
*/
package ai.others.NpcBuffers;
import java.util.ArrayList;
import java.util.List;
/**
* @author UnAfraid
*/
public class NpcBufferData
{
private final int _id;
private final List<NpcBufferSkillData> _skills = new ArrayList<>();
public NpcBufferData(int id)
{
_id = id;
}
public int getId()
{
return _id;
}
public void addSkill(NpcBufferSkillData skill)
{
_skills.add(skill);
}
public List<NpcBufferSkillData> getSkills()
{
return _skills;
}
}

View File

@@ -1,53 +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 <http://www.gnu.org/licenses/>.
*/
package ai.others.NpcBuffers;
import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.holders.SkillHolder;
import com.l2jmobius.gameserver.model.skills.Skill;
/**
* @author UnAfraid
*/
public class NpcBufferSkillData
{
private final SkillHolder _skill;
private final int _scaleToLevel;
private final int _initialDelay;
public NpcBufferSkillData(StatsSet set)
{
_skill = new SkillHolder(set.getInt("id"), set.getInt("level"));
_scaleToLevel = set.getInt("scaleToLevel", -1);
_initialDelay = set.getInt("initialDelay", 0) * 1000;
}
public Skill getSkill()
{
return _skill.getSkill();
}
public int getScaleToLevel()
{
return _scaleToLevel;
}
public int getInitialDelay()
{
return _initialDelay;
}
}

View File

@@ -1,65 +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 <http://www.gnu.org/licenses/>.
*/
package ai.others.NpcBuffers;
import com.l2jmobius.gameserver.ThreadPoolManager;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import ai.AbstractNpcAI;
/**
* @author UnAfraid
*/
public final class NpcBuffers extends AbstractNpcAI
{
private final NpcBuffersData _npcBuffers = new NpcBuffersData();
private NpcBuffers()
{
for (int npcId : _npcBuffers.getNpcBufferIds())
{
// TODO: Cleanup once npc rework is finished and default html is configurable.
addFirstTalkId(npcId);
addSpawnId(npcId);
}
}
// TODO: Cleanup once npc rework is finished and default html is configurable.
@Override
public String onFirstTalk(L2Npc npc, L2PcInstance player)
{
return null;
}
@Override
public String onSpawn(L2Npc npc)
{
final NpcBufferData data = _npcBuffers.getNpcBuffer(npc.getId());
for (NpcBufferSkillData skill : data.getSkills())
{
ThreadPoolManager.getInstance().scheduleAi(new NpcBufferAI(npc, skill), skill.getInitialDelay());
}
return super.onSpawn(npc);
}
public static void main(String[] args)
{
new NpcBuffers();
}
}

View File

@@ -1,110 +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 <http://www.gnu.org/licenses/>.
*/
package ai.others.NpcBuffers;
import java.io.File;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.logging.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import com.l2jmobius.commons.util.IGameXmlReader;
import com.l2jmobius.gameserver.model.StatsSet;
/**
* @author UnAfraid
*/
public class NpcBuffersData implements IGameXmlReader
{
private static final Logger LOGGER = Logger.getLogger(NpcBuffersData.class.getName());
private final Map<Integer, NpcBufferData> _npcBuffers = new HashMap<>();
protected NpcBuffersData()
{
load();
}
@Override
public void load()
{
parseDatapackFile("data/scripts/ai/others/NpcBuffers/NpcBuffersData.xml");
LOGGER.info(getClass().getSimpleName() + ": Loaded: " + _npcBuffers.size() + " buffers data.");
}
@Override
public void parseDocument(Document doc, File f)
{
StatsSet set;
Node attr;
NamedNodeMap attrs;
for (Node n = doc.getFirstChild(); n != null; n = n.getNextSibling())
{
if ("list".equalsIgnoreCase(n.getNodeName()))
{
for (Node d = n.getFirstChild(); d != null; d = d.getNextSibling())
{
if ("npc".equalsIgnoreCase(d.getNodeName()))
{
attrs = d.getAttributes();
final int npcId = parseInteger(attrs, "id");
final NpcBufferData npc = new NpcBufferData(npcId);
for (Node c = d.getFirstChild(); c != null; c = c.getNextSibling())
{
switch (c.getNodeName())
{
case "skill":
{
attrs = c.getAttributes();
set = new StatsSet();
for (int i = 0; i < attrs.getLength(); i++)
{
attr = attrs.item(i);
set.set(attr.getNodeName(), attr.getNodeValue());
}
npc.addSkill(new NpcBufferSkillData(set));
break;
}
}
}
_npcBuffers.put(npcId, npc);
}
}
}
}
}
public NpcBufferData getNpcBuffer(int npcId)
{
return _npcBuffers.get(npcId);
}
public Collection<NpcBufferData> getNpcBuffers()
{
return _npcBuffers.values();
}
public Set<Integer> getNpcBufferIds()
{
return _npcBuffers.keySet();
}
}

View File

@@ -1,20 +0,0 @@
<list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="NpcBuffersData.xsd">
<npc id="106"> <!-- Birthday Cake -->
<skill id="22250" level="1" initialDelay="1" /> <!-- Birthday Cake Vitality Buff -->
</npc>
<npc id="139"> <!-- Birthday Cake -->
<skill id="22035" level="1" initialDelay="1" /> <!-- Birthday Cake Vitality Buff -->
</npc>
<npc id="13007"> <!-- Special Christmas Tree -->
<skill id="2139" level="1" initialDelay="1" /> <!-- Special Tree Recovery Bonus -->
</npc>
<npc id="13423"> <!-- Protection Stone -->
<skill id="11360" level="1" scaleToLevel="3" initialDelay="3" /> <!-- Arcane Protection -->
</npc>
<npc id="13424"> <!-- Protection Stone -->
<skill id="11367" level="1" scaleToLevel="3" initialDelay="3" /> <!-- Arcane Protection -->
</npc>
<npc id="13425"> <!-- Protection Stone -->
<skill id="11368" level="1" scaleToLevel="3" initialDelay="3" /> <!-- Arcane Protection -->
</npc>
</list>

View File

@@ -1,23 +0,0 @@
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="list">
<xs:complexType>
<xs:sequence>
<xs:element name="npc" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element name="skill" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute type="xs:positiveInteger" name="id" use="required" />
<xs:attribute type="xs:positiveInteger" name="level" use="required" />
<xs:attribute type="xs:positiveInteger" name="scaleToLevel" use="optional" />
<xs:attribute type="xs:positiveInteger" name="initialDelay" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute type="xs:positiveInteger" name="id" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

View File

@@ -51,10 +51,6 @@ public final class PolymorphingOnAttack extends AbstractNpcAI
MOBSPAWNS.put(21267, Arrays.asList(21270, 100, 100, -1)); // Cave Ant Larva -> Cave Ant Soldier (always polymorphs) MOBSPAWNS.put(21267, Arrays.asList(21270, 100, 100, -1)); // Cave Ant Larva -> Cave Ant Soldier (always polymorphs)
MOBSPAWNS.put(21271, Arrays.asList(21272, 66, 10, 1)); // Cave Ant -> Cave Ant Soldier MOBSPAWNS.put(21271, Arrays.asList(21272, 66, 10, 1)); // Cave Ant -> Cave Ant Soldier
MOBSPAWNS.put(21272, Arrays.asList(21273, 33, 5, 2)); // Cave Ant Soldier -> Cave Noble Ant MOBSPAWNS.put(21272, Arrays.asList(21273, 33, 5, 2)); // Cave Ant Soldier -> Cave Noble Ant
MOBSPAWNS.put(21521, Arrays.asList(21522, 100, 30, -1)); // Claws of Splendor
MOBSPAWNS.put(21527, Arrays.asList(21528, 100, 30, -1)); // Anger of Splendor
MOBSPAWNS.put(21533, Arrays.asList(21534, 100, 30, -1)); // Alliance of Splendor
MOBSPAWNS.put(21537, Arrays.asList(21538, 100, 30, -1)); // Fang of Splendor
} }
protected static final NpcStringId[][] MOBTEXTS = protected static final NpcStringId[][] MOBTEXTS =

View File

@@ -30,11 +30,7 @@ public class SeeThroughSilentMove extends AbstractNpcAI
//@formatter:off //@formatter:off
private static final int[] MONSTERS = private static final int[] MONSTERS =
{ {
18001, 18002, 22199, 22215, 22216, 22217, 22327, 22746, 22747, 22748, 18001, 18002, 29009, 29010, 29011, 29012, 29013
22749, 22750, 22751, 22752, 22753, 22754, 22755, 22756, 22757, 22758,
22759, 22760, 22761, 22762, 22763, 22764, 22765, 22794, 22795, 22796,
22797, 22798, 22799, 22800, 22843, 22857, 25725, 25726, 25727, 29009,
29010, 29011, 29012, 29013
}; };
//@formatter:on //@formatter:on

View File

@@ -1,115 +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 <http://www.gnu.org/licenses/>.
*/
package ai.others.Servitors;
import java.util.HashMap;
import java.util.Map;
import com.l2jmobius.gameserver.data.xml.impl.SkillData;
import com.l2jmobius.gameserver.model.StatsSet;
import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.actor.L2Npc;
import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance;
import com.l2jmobius.gameserver.model.skills.Skill;
import ai.AbstractNpcAI;
/**
* Death Gate AI.
* @author Sdw
*/
public final class GateOfUnlimitedSummoning extends AbstractNpcAI
{
// NPCs
private static final Map<Integer, Integer> DEATH_GATE = new HashMap<>();
static
{
DEATH_GATE.put(14927, 1); // Death Gate
DEATH_GATE.put(15200, 2); // Death Gate
DEATH_GATE.put(15201, 3); // Death Gate
DEATH_GATE.put(15202, 4); // Death Gate
}
// Skills
private static final int GATE_ROOT = 11289;
private static final int GATE_VORTEX = 11291;
private GateOfUnlimitedSummoning()
{
addSpawnId(DEATH_GATE.keySet());
}
@Override
public String onSpawn(L2Npc npc)
{
final L2Character summoner = npc.getSummoner();
if ((summoner != null) && summoner.isPlayer())
{
final L2PcInstance player = summoner.getActingPlayer();
getTimers().addTimer("SKILL_CAST_SLOW", 1000, npc, player);
getTimers().addTimer("SKILL_CAST_DAMAGE", 2000, npc, player);
getTimers().addTimer("END_OF_LIFE", 30000, npc, player);
}
return super.onSpawn(npc);
}
@Override
public void onTimerEvent(String event, StatsSet params, L2Npc npc, L2PcInstance player)
{
switch (event)
{
case "SKILL_CAST_SLOW":
{
final int skillLevel = DEATH_GATE.get(npc.getId());
if (skillLevel > 0)
{
final Skill skill = SkillData.getInstance().getSkill(GATE_ROOT, skillLevel);
if (skill != null)
{
npc.doCast(skill);
}
}
getTimers().addTimer("SKILL_CAST_SLOW", 3000, npc, player);
break;
}
case "SKILL_CAST_DAMAGE":
{
final Skill skill = SkillData.getInstance().getSkill(GATE_VORTEX, 1);
if (skill != null)
{
npc.doCast(skill);
}
getTimers().addTimer("SKILL_CAST_DAMAGE", 2000, npc, player);
break;
}
case "END_OF_LIFE":
{
getTimers().cancelTimer("SKILL_CAST_SLOW", npc, player);
getTimers().cancelTimer("SKILL_CAST_DAMAGE", npc, player);
npc.deleteMe();
break;
}
}
}
public static void main(String[] args)
{
new GateOfUnlimitedSummoning();
}
}

View File

@@ -40,9 +40,6 @@ public final class SymbolMaker extends AbstractNpcAI
31051, // Keach 31051, // Keach
31052, // Heid 31052, // Heid
31053, // Kidder 31053, // Kidder
31264, // Olsun
31308, // Achim
31953, // Rankar
}; };
private SymbolMaker() private SymbolMaker()

View File

@@ -55,7 +55,6 @@ public final class TeleportToRaceTrack extends AbstractNpcAI
}; };
// Misc // Misc
private static final Map<Integer, Integer> TELEPORTERS = new HashMap<>(); private static final Map<Integer, Integer> TELEPORTERS = new HashMap<>();
static static
{ {
TELEPORTERS.put(30059, 2); // Trisha TELEPORTERS.put(30059, 2); // Trisha
@@ -66,9 +65,6 @@ public final class TeleportToRaceTrack extends AbstractNpcAI
TELEPORTERS.put(30320, 0); // Richlin TELEPORTERS.put(30320, 0); // Richlin
TELEPORTERS.put(30848, 6); // Elisa TELEPORTERS.put(30848, 6); // Elisa
TELEPORTERS.put(30899, 4); // Flauen TELEPORTERS.put(30899, 4); // Flauen
TELEPORTERS.put(31320, 8); // Ilyana
TELEPORTERS.put(31275, 9); // Tatiana
TELEPORTERS.put(31964, 10); // Bilia
} }
// Player Variables // Player Variables

View File

@@ -71,28 +71,6 @@ public final class WyvernManager extends AbstractNpcAI
MANAGERS.put(35536, ManagerType.CASTLE); MANAGERS.put(35536, ManagerType.CASTLE);
MANAGERS.put(35556, ManagerType.CASTLE); MANAGERS.put(35556, ManagerType.CASTLE);
MANAGERS.put(35419, ManagerType.CLAN_HALL); MANAGERS.put(35419, ManagerType.CLAN_HALL);
MANAGERS.put(35638, ManagerType.CLAN_HALL);
MANAGERS.put(36457, ManagerType.FORT);
MANAGERS.put(36458, ManagerType.FORT);
MANAGERS.put(36459, ManagerType.FORT);
MANAGERS.put(36460, ManagerType.FORT);
MANAGERS.put(36461, ManagerType.FORT);
MANAGERS.put(36462, ManagerType.FORT);
MANAGERS.put(36463, ManagerType.FORT);
MANAGERS.put(36464, ManagerType.FORT);
MANAGERS.put(36465, ManagerType.FORT);
MANAGERS.put(36466, ManagerType.FORT);
MANAGERS.put(36467, ManagerType.FORT);
MANAGERS.put(36468, ManagerType.FORT);
MANAGERS.put(36469, ManagerType.FORT);
MANAGERS.put(36470, ManagerType.FORT);
MANAGERS.put(36471, ManagerType.FORT);
MANAGERS.put(36472, ManagerType.FORT);
MANAGERS.put(36473, ManagerType.FORT);
MANAGERS.put(36474, ManagerType.FORT);
MANAGERS.put(36475, ManagerType.FORT);
MANAGERS.put(36476, ManagerType.FORT);
MANAGERS.put(36477, ManagerType.FORT);
} }
private WyvernManager() private WyvernManager()

View File

@@ -35,12 +35,6 @@ public final class Alliance extends AbstractNpcAI
30511,30512,30513,30520,30525,30565,30594,30595,30676,30677, 30511,30512,30513,30520,30525,30565,30594,30595,30676,30677,
30681,30685,30687,30689,30694,30699,30704,30845,30847,30849, 30681,30685,30687,30689,30694,30699,30704,30845,30847,30849,
30854,30857,30862,30865,30894,30897,30900,30905,30910,30913, 30854,30857,30862,30865,30894,30897,30900,30905,30910,30913,
31269,31272,31276,31279,31285,31288,31314,31317,31321,31324,
31326,31328,31331,31334,31336,31755,31958,31961,31965,31968,
31974,31977,31996,32092,32093,32094,32095,32096,32097,32098,
32145,32146,32147,32150,32153,32154,32157,32158,32160,32171,
32193,32196,32199,32202,32205,32206,32209,32210,32213,32214,
32217,32218,32221,32222,32225,32226,32229,32230,32233,32234
}; };
// @formatter:on // @formatter:on

View File

@@ -51,12 +51,6 @@ public final class Clan extends AbstractNpcAI
30511,30512,30513,30520,30525,30565,30594,30595,30676,30677, 30511,30512,30513,30520,30525,30565,30594,30595,30676,30677,
30681,30685,30687,30689,30694,30699,30704,30845,30847,30849, 30681,30685,30687,30689,30694,30699,30704,30845,30847,30849,
30854,30857,30862,30865,30894,30897,30900,30905,30910,30913, 30854,30857,30862,30865,30894,30897,30900,30905,30910,30913,
31269,31272,31276,31279,31285,31288,31314,31317,31321,31324,
31326,31328,31331,31334,31336,31755,31958,31961,31965,31968,
31974,31977,31996,32092,32093,32094,32095,32096,32097,32098,
32145,32146,32147,32150,32153,32154,32157,32158,32160,32171,
32193,32196,32199,32202,32205,32206,32209,32210,32213,32214,
32217,32218,32221,32222,32225,32226,32229,32230,32233,32234
}; };
// @formatter:on // @formatter:on
private static final Map<String, String> LEADER_REQUIRED = new HashMap<>(); private static final Map<String, String> LEADER_REQUIRED = new HashMap<>();

View File

@@ -1,5 +0,0 @@
<html><body>Grand Magister Devon:<br>
To change profession means that you have attained a certain degree of ability and experience, and may be promoted to a higher-level profession. Dark Fighters like yourself can change profession to a<font color="LEVEL"> Palus Knight</font> or an<font color="LEVEL"> Assassin</font>. Which profession do you want to learn about?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-02.html">Palus Knight</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-05.html">Assassin</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Magister Devon:<br>
<font color="LEVEL">Palus Knights</font> are the elite champions of the Dark Elves. Their swordsmanship far surpasses that of the Humans. However, to become a Palus Knight your level must be at least 20 and you must pass the Test of the Palus Knight.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-03.html">Description of Palus Knight</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 0">Change profession to Palus Knight</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-01.html">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Magister Devon:<br>
<font color="LEVEL">Palus Knights</font> are the elite knights of the Dark Elves. Their excellent swordsmanship is based on swift, precise attacks and effective defense, and it cannot be compared to other races that depend on mere strength or coarser skills.<br>
Many of the most talented of Palus Knights are selected for the highest order, as a<font color="LEVEL"> Shillien Knight</font>, or become<font color="LEVEL"> Bladedancers</font>, with almost unearthly skill in swordsmanship.<br>
To become a Palus Knight, you must pass the test and bring back the<font color="LEVEL"> gaze of the abyss</font> as proof.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-04.html">Ask about the gaze of the abyss</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-02.html">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
The<font color="LEVEL"> gaze of the abyss</font> is a token given to those who have passed the Test of the Palus Knight. The Test of the Palus Knight is conducted by<font color="LEVEL"> Master Virgil</font> of the Dark Elven Guild in the<font color="LEVEL"> town of Gludio</font>. Seek him out to take the test. The town of Gludio is to the east of here. The Dark Elven Guild is in the northeast part of Gludio. Of course, using a Gatekeeper is faster.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-03.html">Return</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Magister Devon:<br>
Assassins are stealthy killers and fighters in the service of darkness. But to become an Assassin, your level must be at least 20 and you must pass the Test of the Assassin.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-06.html">Description of Assassin</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 1">Change profession to Assassin</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-01.html">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Magister Devon:<br>
<font color="LEVEL">Assassins</font> are murderers who kill quietly and swiftly, then vanish into the shadows. They are also feared spies and night fighters, who are gifted in concealment and stealth. They target the enemy's weak points with small, swift weapons like daggers, or shoot arrows from a long distance. While Palus Knights fight their opponents on the battlefield, Assassins fight enemies of the race in the black darkness of moonless night, to claim silent victory.<br>
The most elite Assassins are chosen as<font color="LEVEL"> Abyss Walker</font> to learn the ultimate secrets of assassination and searching. On the other hand, some Assassins are chosen as<font color="LEVEL"> Phantom Rangers,</font> and train their archery skills to the highest level.<br>
To become an Assassin, you must pass a test and bring back the<font color="LEVEL"> iron heart.</font><br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-07.html">Ask about the iron heart</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-05.html">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
The<font color="LEVEL"> iron heart</font> is only given to those who pass the Test of the Assassin.<font color="LEVEL"> Triskel</font> is in charge of that test. He is a great Dark Elf, who has been an Assassin himself for a long time. He is always near the Dark Elven guild in the<font color="LEVEL"> town of Gludio</font>, so you will easily find him once you get there. You can get to the town of Gludio by following the road to the east. Of course, using a Gatekeeper is much easier.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-06.html">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Grand Magister Devon:<br>
To change profession means that you have attained a certain degree of ability and experience, and may be promoted to a higher-level profession. Dark Mystics like yourself can change profession to become a<font color="LEVEL"> Dark Wizard</font> or a<font color="LEVEL"> Shillien Oracle</font>. Which profession do you want to learn about?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-09.html">Dark Wizard</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-12.html">Shillien Oracle</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Dark Wizard and command powerful summoning magic, elemental magic and black magic, your level must be at least 20 and you must pass the Test of the Dark Wizard.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-10.html">Description of Dark Wizard</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 2">Change profession to Dark Wizard</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-08.html">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Magister Devon:<br>
<font color="LEVEL">Dark Wizards</font> are those with wizardry that can command more powerful spirits, and can use elemental magic, black magic and summoning magic, all at a higher level than the Dark Mystic. Their magic uses fire and wind to attack enemies. Also, they can cast curses on their enemies, or even steal their very lives, and they can call sleeping spirits out of the darkness to take form as their 'servitors.'<br>
Those who are greatly talented among Dark Wizards are chosen as<font color="LEVEL"> Spellhowlers</font>, who intensely study elemental magic, or else are chosen as<font color="LEVEL"> Phantom Summoners</font> to learn summoning magic of the highest level.<br>
You must pass the test and bring back the<font color="LEVEL"> jewel of darkness</font> as proof.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-11.html">Ask about the jewel of darkness</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-09.html">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Grand Magister Devon:<br>
To take the Test of the Dark Wizard, you'll have to find the<font color="LEVEL"> Shamaness Varika</font> in the Dark Forest. To change profession, you must pass the test she gives and bring back the<font color="LEVEL"> jewel of darkness</font> as a token. She stays at the<font color="LEVEL"> altar</font> of the Dark Forest.<br>
To get to the altar, take the road north. Then you will come to the Dark Forest. Enter the forest and go down the road until you come to a road that forks to the east. Take that road until you arrive at the altar.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-10.html">Return</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Shillien Oracle, a spiritual leader among Dark Elves who serve Shilen, the goddess of darkness, your level must be at least 20 and you must pass the Test of the Shillien Oracle.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-13.html">Description of Shillien Oracle</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 3">Change profession to Shillien Oracle</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-08.html">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Magister Devon:<br>
The<font color="LEVEL"> Shillien Oracle</font> is a celebrant of darkness who fulfills the oracular prophecies of Shilen by studying darkness and death spawned by Shilen and the spirits of destruction and chaos that serve her. Unlike Human and Elven priests, who look to the gods of light, the Shillien Oracle understands the truth of both light and darkness, and not only can heal companions with white magic and supplementary magic, but can also curse opponents or steal their energy by means of black magic.<br>
The most spiritually advanced Shillien Oracles are chosen as<font color="LEVEL"> Shillien Elders</font>. The Shillien Elder is our spiritual leader, and understands the divine natures of Shilen and Gran Kain better than anyone else.<br>
To become a Shillien Oracle, you must pass the test and bring back the<font color="LEVEL"> orb of abyss</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DarkElvenChange1 32160-14.html">Ask about the orb of abyss</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-12.html">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
The<font color="LEVEL"> orb of abyss</font> is given only to those who have passed the Test of the Shillien Oracle. To take the Test of the Shillien Oracle, you should find<font color="LEVEL"> Sorceress Sidra</font> in the Dark Elven Guild of the<font color="LEVEL"> town of Gludio</font>. As you know, you can get to the town of Gludio by following the road towards the east. Of course, using a Gatekeeper is much easier.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DarkElvenChange1 32160-13.html">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Palus Knight, you need the appropriate level and token. Your level must be at least 20 to qualify to change profession. You need a token to prove you have passed the Test of the Palus Knight, as well.<br>
However, it seems your level is not high enough, and you have not passed the Test of the Palus Knight, either. First, raise your level to 20 or higher. Also, seek<font color="LEVEL"> Master Virgil</font> of our guild in the<font color="LEVEL"> town of Gludio</font> to take the test. You can change profession to Palus Knight only after you take his test and bring back the<font color="LEVEL"> gaze of the abyss</font> as proof. You can get to the town of Gludio by following the road towards the east. Of course, using a Gatekeeper is faster.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Palus Knight, you need the appropriate level and token. Your level must be at least 20 to qualify to change profession. You need a token to prove you have passed the Test of the Palus Knight, as well.<br>
It seems that you admirably passed the Test of the Palus Knight, but your level is not high enough. Level 20 or higher is required to change profession. I cannot allow you change profession if your level is not sufficient, even if you have a token. Come back when you have raised your level.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Palus Knight, you need the appropriate level and token. Your level must be at least 20 to qualify to change profession. You also need a token to prove you have passed the Test of the Palus Knight, as well.<br>
I am satisfied with your level, but it seems that you have not passed the Test of the Palus Knight. Go to<font color="LEVEL"> Master Virgil</font> in the<font color="LEVEL"> town of Gludio</font> to take the test. You can change profession to a Palus Knight only after you take his test and bring back the<font color="LEVEL"> gaze of the abyss</font> as proof. You can get to the town of Gludio by following the road towards the east. Of course, using a Gatekeeper is faster.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
Congratulations! Now you are a proud Palus Knight of the Dark Elves. The way of the Palus Knight may still feel strange, but do not worry -- everything is going to be all right once you start learning from the Masters around you.<br>
In the future, may you be a proud Dark Elf of great dignity, who glorifies the name of Shilen and destroys the arrogant Elves in glorious battle. Congratulations again on becoming a Palus Knight!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become an Assassin, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. You also need a token that proves that you passed the Test of the Assassin.<br>
However, it seems your level is not high enough, and you have not passed the Test of the Assassin, either. First, raise your level to 20 or higher. To take the test, you must find<font color="LEVEL"> Triskel</font> and pass the test that he gives, bringing back the<font color="LEVEL"> iron heart</font> as proof. He is always near the Dark Elven Guild in the<font color="LEVEL"> town of Gludio</font>, so you will easily find him once you get there. You can get to the town of Gludio by following the road towards the east.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become an Assassin, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. You also need a token that proves that you passed the Test of the Assassin.<br>
It seems that you admirably passed the Test of the Assassin, but your level is not high enough. Level 20 or higher is required to change profession. I cannot allow you to change profession if your level is not sufficient, even if you have a token. Come back when you have raised your level.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become an Assassin, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. You also need a token that proves that you passed the Test of the Assassin.<br>
I am satisfied with your level, but it seems that you have not passed the Test of the Assassin. To become an Assassin, find<font color="LEVEL"> Triskel</font> and pass the test that he gives you, bringing back the<font color="LEVEL"> iron heart</font> as proof. He is always near the Dark Elven Guild in the<font color="LEVEL"> town of Gludio</font>, so you will easily find him nearby once you get there. You can get to the town of Gludio by following the road towards the east.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
Congratulations! You are an Assassin of the proud Dark Elves at last. The way of the Assassin may still feel strange, but do not worry -- everything is going to be all right once you start learning from the Masters around you.<br>
May you be an Assassin of renown, worthy to walk in the way of Shilen. Endeavor always to be the best Assassin and Dark Elf, a true master of the night. Congratulations again on becoming an Assassin!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Dark Wizard, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. You must also have a token that proves that you passed the Test of the Dark Wizard.<br>
However, it seems your level is not high enough, and you have not passed the Test of the Dark Wizard, either. First, raise your level to 20 or higher. Also, to take the test, look for<font color="LEVEL"> Shamaness Varika</font> in the Dark Forest. To change profession, you must pass the test she gives and bring back the<font color="LEVEL"> jewel of darkness</font> as a token. She is staying at the<font color="LEVEL"> altar</font> of the Dark Forest. The altar is in the southern part of the forest. To reach the altar, take the road north. Then you will come to the Dark Forest. Enter the forest and go down the road until you come to a road that forks to the east. Take that road until you arrive at the altar.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Dark Wizard, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. You must also have a token that proves that you passed the Test of the Dark Wizard.<br>
It seems that you admirably passed the Test of the Dark Wizard, but your level is not high enough. Level 20 or higher is required to change profession. I cannot allow you to change profession if your level is not sufficient, even if you have a token. Come back when you have raised your level.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Dark Wizard, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. You must also have a token that proves that you passed the Test of the Dark Wizard.<br>
I am satisfied with your level, but it seems that you have not passed the Test of the Dark Wizard. To take the test, you have to find the<font color="LEVEL"> Shamaness Varika</font> in the Dark Forest. To change profession, you must pass the test she gives and bring back the<font color="LEVEL"> jewel of darkness</font> as a token. She is staying at the<font color="LEVEL"> altar</font> of the Dark Forest. The altar is in the south part of the forest. To reach the altar, take the road north. Then you will come to the Dark Forest. Enter the forest and go down the road until you come to a road that forks to the east. Take that road until you arrive at the altar.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
Congratulations! At last you are a Dark Wizard of the proud Dark Elves. The path of the Dark Wizard might be strange for you now, but do not worry too much -- everything is going to be all right once you start learning from the Masters around you.<br>
May you be a Dark Wizard of great dignity, who makes the names of Shilen and Gran Kain feared throughout the sunlit world. Congratulations again on becoming a Dark Wizard of mighty magical power!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Shillien Oracle, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. Also, a token that proves that you passed the Test of the Shillien Oracle is required.<br>
However, it seems your level is not high enough, and you have not yet passed the Test of the Shillien Oracle. First, try to raise your level to 20 or higher. To take the test, you should visit<font color="LEVEL"> Sorceress Sidra</font> of the Dark Elven Guild in the<font color="LEVEL"> town of Gludio</font>. You can change profession to Shillien Oracle only if you pass her test and bring back the<font color="LEVEL"> orb of abyss</font> as a token. You can get to the town of Gludio by following the road towards the east.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Shillien Oracle, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. Also, a token that proves you have passed the Test of the Shillien Oracle is required.<br>
It seems that you admirably passed the Test of the Shillien Oracle, but your level is not high enough. Level 20 or higher is required to change profession. I cannot allow you to change profession if your level is not sufficient, even if you have a token. Come back when you have raised your level.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
To become a Shillien Oracle, the appropriate level and token are required. Your level must be at least 20 to qualify to change profession. Also, a token that proves that you passed the Test of the Shillien Oracle is required.<br>
I am satisfied with your level, but it seems that you have not passed the Test of the Shillien Oracle. To take the test, you should find<font color="LEVEL"> Sorceress Sidra</font> in the Dark Elven Guild of the<font color="LEVEL"> town of Gludio</font>. You can change profession to Shillien Oracle only if you pass her test and bring back the<font color="LEVEL"> orb of abyss</font> as a token. You can get to the town of Gludio by following the road towards the east.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
Congratulations! At last you are a Shillien Oracle of the proud Dark Elves. The path of a Shillien Oracle might be strange for you now, but there is nothing to worry about -- everything is going to be all right once you start learning from the Masters around you.<br>
Strive to be a Shillien Oracle of great dignity, who increases the pride of Dark Elves everywhere. I hope you will make the names of Shilen and Gran Kain feared throughout the sunlit world. Congratulations again on becoming a Shillien Oracle, our proud Celebrant!
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Grand Magister Devon:<br>
I honor your accomplishments -- you have already changed profession twice! The future of the Dark Elves is glorious indeed with such excellent champions as yourself in our cause. Keep up the good work.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Magister Devon:<br>
You have already changed profession. You may no longer select a different profession.<br>
Do your best on your chosen path ... Keep up your great efforts to glorify the name of Shilen, our goddess of darkness and the first goddess of water. And never forget the pride of the Dark Elves.
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Grand Magister Devon:<br>
Look here, child. Consider whether you came to the right person. I am Grand Magister Devon and I teach the Dark Elves that are led here by the will of Shilen. If you are not a Dark Elf that honors the will of Shilen, please go away.
</body></html>

View File

@@ -37,7 +37,6 @@ public final class DarkElvenChange1 extends AbstractNpcAI
30290, // Xenos 30290, // Xenos
30297, // Tobias 30297, // Tobias
30462, // Tronix 30462, // Tronix
32160, // Devon
}; };
// Items // Items
private static int GAZE_OF_ABYSS = 1244; private static int GAZE_OF_ABYSS = 1244;

View File

@@ -37,13 +37,8 @@ public final class DarkElvenChange2 extends AbstractNpcAI
30195, // Brecson 30195, // Brecson
30699, // Medown 30699, // Medown
30474, // Angus 30474, // Angus
31324, // Andromeda
30862, // Oltran 30862, // Oltran
30910, // Xairakin 30910, // Xairakin
31285, // Samael
31334, // Tifaren
31974, // Drizzit
32096, // Helminter
}; };
// Items // Items
private static int MARK_OF_CHALLENGER = 2627; private static int MARK_OF_CHALLENGER = 2627;

View File

@@ -1,5 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Ah yes, class transfer... It's simple, really! Once a person reaches a certain level of ability and experience, he can be promoted to a higher class. For instance, a Dwarven Fighter like you can become an <font color="LEVEL">Artisan</font> or a <font color="LEVEL">Scavenger</font>. If you insist, I can tell you about them...<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfBlacksmithChange1 32093-02.htm">Artisan</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfBlacksmithChange1 32093-04.htm">Scavenger</Button>
</body></html>

View File

@@ -1,11 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
<font color="LEVEL">Artisans</font> specialize in making items with materials brought to them by Scavengers and Bounty Hunters.<br>
Artisans lack the physical strength and fighting ability of Scavengers, but their creativity is exemplary. They are very sought-after during wartime, and they survive battle well since they send Siege Golems to the front line to do their fighting for them.<br>
The most elite Artisans become <font color="LEVEL">Warsmiths</font>.<br>
Scavengers are not my specialty, but I'll tell you what I know about them. They collect all sorts of materials for the manufacture of items.<br>
Scavengers must be ready to travel anywhere in the world at a moment's notice to obtain necessary materials, and sometimes even scavenge dead bodies for items.<br>
The most elite Scavengers become <font color="LEVEL">Bounty Hunters</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfBlacksmithChange1 32093-03.htm">"Tell me how I can become an Artisan."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfBlacksmithChange1 56">"I want to become an Artisan."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DwarfBlacksmithChange1 32093-01.htm">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Anyone wishing to become an Artisan must have achieved at least level 20 and passed the appropriate test.<br><font color="LEVEL">Blacksmith Silvery in the Dwarven Village</font> knows better than anyone else what you need to do to become an Artisan. I doubt you'll pass the test, but if you do, come back to see me! I'll make you an Artisan, no problem!<br>
By the way, Gatekeepers make long journeys much shorter and less complicated. You could get to the Dwarven Village in no time!<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DwarfBlacksmithChange1 32093-01.htm">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
You're confused! I teach Artisans, not Scavengers! If you want to be a <font color="LEVEL">Scavenger</font>, speak with <font color="LEVEL">Warehouse Chief Older</font> in the Warehouse.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DwarfBlacksmithChange1 32093-01.htm">Return</Button>
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
My main job here is to teach Dwarven Fighters and Artisans. I don't know if you have heard, but our Black Anvil Guild possesses unparalleled arms manufacturing skills! You don't believe me, do you? You're an idiot! Run along! I don't have time for the likes of you!
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Hey! Easy there! Don't you realize that you've already transferred classes once? Hmmm, you have pretty good skills, so you should plan to transfer class again someday! <font color="LEVEL">Head Blacksmith Newyear</font> over there is in charge of class transfer to the higher occupations. Go on, don't be such a coward!
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Transferring your class isn't everything, squirt! Don't loiter around, you're scaring off the customers! Don't you have anything better to do than bother me? You could be out collecting materials to make weapons, or making a Siege Golem for the battlefield...There are tons of things you can do!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Look, you know good and well that you've got to be at least level 20 to become an Artisan!<br>
Did you think I wouldn't notice? Oh, you were badly mistaken, my friend! Come back to see me when you've had more experience and an upgraded level, I'll make you an Artisan even though you don't want it!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Not everyone who wants to become an Artisan can become one... Your level isn't 20 yet and you haven't even applied to take the test! I don't have time to waste on the likes of you! Get out!<br>
Oh, what a sad look! All right, I'll tell you again... To be an Artisan, you must raise your level and pass the appropriate test. Speak with <font color="LEVEL">Silvery in the Dwarven Village</font>. Come back to see me after you pass the test and I'll make you an Artisan! Understood?
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
Hmmph, you've finally become an artisan. Though you're not yet reliable, you're still a member of our Black Anvil Guild and responsible for upholding the honor and integrity of the guild. From here on out, my advice is that you focus on becoming the best artisan you can be. I'm telling you this a little late, but make sure you're diligent about learning skills from nearby blacksmiths.<br>
Here's a small gift for you from our guild. Take it to <font color="LEVEL">the Grand Master, Grand Magister, Master Trainer or High Priest who permits transfers in any major town</font> and you can exchange it for a usable Shadow Weapon.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Head Blacksmith Bolin:<br>
You know good and well that you must pass a test to become an Artisan!<br>
Your level is good enough, but you haven't passed the test! Speak with <font color="LEVEL">Silvery in the Dwarven Village</font>. You can't pass the test without her! Come back after you've passed the test.
</body></html>

View File

@@ -35,7 +35,6 @@ public final class DwarfBlacksmithChange1 extends AbstractNpcAI
30499, // Tapoy 30499, // Tapoy
30504, // Mendio 30504, // Mendio
30595, // Opix 30595, // Opix
32093, // Bolin
}; };
// Items // Items

View File

@@ -37,9 +37,6 @@ public final class DwarfBlacksmithChange2 extends AbstractNpcAI
30687, // Vergara 30687, // Vergara
30847, // Ferris 30847, // Ferris
30897, // Roman 30897, // Roman
31272, // Noel
31317, // Lombert
31961, // Newyear
}; };
// Items // Items

View File

@@ -1,5 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
Do you want to know about class transfer? Class transfer entails one person temporarily gaining experience and ability in order to advance to a higher class. For instance, Dwarven Fighters like you can advance into <font color="LEVEL">Scavengers</font> or <font color="LEVEL">Artisans.</font> I can give you more detailed information if you wish.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfWarehouseChange1 32092-02.htm">Scavenger.</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfWarehouseChange1 32092-04.htm">Artisan.</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
<font color="LEVEL">Scavengers</font> collect the ingredients which are essential for making items. They must be ready to go anywhere in the world to get necessary materials and they occasionally even search dead bodies for items. Scavengers don't just collect things. They must possess the strength and fighting skills necessary to cope with dangerous situations. Elite Scavengers may become <font color="LEVEL">Bounty Hunters</font>. Bounty Hunters collect Dragon Scales and can be selected to lead Trade Associations once others recognize their abilities.<br>
Artisans are not my area of expertise, but I'll tell you the basics. Artisans create items with the materials that Scavengers or Bounty Hunters bring in. Artisans are physically weaker than Scavengers, but their creativity is superb.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfWarehouseChange1 32092-03.htm">"How do I become a Scavenger?"</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest DwarfWarehouseChange1 54">"I want to become a Scavenger."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DwarfWarehouseChange1 32092-01.htm">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
If you want to be a Scavenger, you must have achieved at least level 20 and passed the appropriate test.<br>
To take the test, speak with <font color="LEVEL">Collector Pippi in the Dwarven Village</font>. Pass her test and she'll give you a proof. Bring it to me and I'll make you a Scavenger right away.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DwarfWarehouseChange1 32092-01.htm">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
I can only teach Scavengers, I can't teach Artisans. If you want to be an <font color="LEVEL">Artisan</font>, go and see <font color="LEVEL">Head Blacksmith Bolin</font>. He can be rude, but he knows his job well!<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest DwarfWarehouseChange1 32092-01.htm">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
I teach Dwarven Fighters and Scavengers.<br>
I don't think you're in the right place. You don't look talented enough to collect materials and manufacture things! You should find a teacher somewhere else.
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
It seems you've already completed your first class transfer. I admire your ambition, but you don't need to be so humble! You're equipped with the basic abilities, so strive to reach a higher class. You should speak with <font color="LEVEL">Yasheni</font> over there.
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
Thank you for coming to see me again! But you've already finished your second class transfer, and we have no further business! Go on and find some adventure!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
You don't know the path to becoming a Scavenger? First, you must be at least at level 20.<br>
That won't change even if you pass the test to become a Scavenger. It is my belief that until you reach level 20 or higher, you still lack the basic qualities necessary to transfer to the Scavenger class. I see that you are very close to accomplishing that goal. After you upgrade your level by hunting monsters, no one will question your qualifications, adventurer. Return here after upgrading your level, and I will certainly recognize you as a Scavenger.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
You're getting ahead of yourself! You haven't achieved level 20 and you haven't taken the Scavenger test!<br>
Now, listen carefully! There's only one way to become a Scavenger. Raise your level and pass the Scavenger test. To take the test, speak with <font color="LEVEL">Collector Pippi in the Dwarven Village</font>. Pass her test and she'll give you a proof. Bring it to me and I'll make you a Scavenger right away.
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
Congratulations! I knew that an adventurer like you would be able to complete this safely. Now, if you want to increase your skills in earnest, the warehouse keepers in this region will gladly teach you. You have now become a proud member of the Iron Gate Guild! I hope that you take pride in that fact and reward our trust with hard work.<br>This is a small gift that our guild has prepared to help you in your journey. Take this to <font color="LEVEL">the Grand Master, Grand Magister, Master Trainer or High Priest who permits transfers in any major town</font> and you will be able to exchange it for a usable Shadow Weapon.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Warehouse Chief Alder:<br>
You don't remember how to be a Scavenger? If you want to be a Scavenger, you must have achieved at least level 20 and passed the appropriate test.<br>
Your level is satisfactory, but you haven't passed the Scavenger test. If you want to take the test, speak with <font color="LEVEL">Collector Pippi in the Dwarven Village</font>. Pass her test and she'll give you a proof. Bring it to me and I'll make you a Scavenger right away.
</body></html>

View File

@@ -35,7 +35,6 @@ public final class DwarfWarehouseChange1 extends AbstractNpcAI
30498, // Moke 30498, // Moke
30503, // Rikadio 30503, // Rikadio
30594, // Ranspo 30594, // Ranspo
32092, // Alder
}; };
// Items // Items

View File

@@ -37,9 +37,6 @@ public final class DwarfWarehouseChange2 extends AbstractNpcAI
30685, // Baxt 30685, // Baxt
30845, // Klump 30845, // Klump
30894, // Natools 30894, // Natools
31269, // Mona
31314, // Donal
31958, // Yasheni
}; };
// Items // Items

View File

@@ -36,9 +36,6 @@ public final class ElfHumanClericChange2 extends AbstractNpcAI
30191, // Hollint 30191, // Hollint
30857, // Orven 30857, // Orven
30905, // Squillari 30905, // Squillari
31279, // Gregory
31328, // Innocentin
31968, // Baryl
}; };
// Items // Items

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
Ah yes, class transfer... It's simple, really. Once you reach a certain level of ability and experience, you can transfer to the next class level. In other words, Human Fighters may become <font color="LEVEL">Warriors, Human Knights or Rogues</font>.Which occupation are you interested in?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-02.htm">Warrior</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-05.htm">Human Knight</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-08.htm">Rogue</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
Warriors place the utmost importance on developing the strength of their bodies. Those who have mastered the Dagger are among the elite of their class. Anyone wishing to become a Warrior must have achieved at least level 20 and passed the appropriate test.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-03.htm">"Tell me more about Warriors."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 1">"I want to transfer to the Warrior class."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-01.htm">Return</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
<font color="LEVEL">Warriors</font> rely heavily on physical strength in battle, and seem to take pleasure in decimating their enemies. Their awesome strength makes them the first choice for the front line.<br>
The most elite Warriors become <font color="LEVEL">Warlords</font> or <font color="LEVEL">Gladiators</font>. <br>Anyone wishing to become a Warrior must pass the appropriate test and bring me the <font color="LEVEL">Medallion of Warrior</font> as evidence.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-04.htm">"Tell me about the Medallion of Warrior."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-02.htm">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Master Schule:<br>
The <font color="LEVEL">Medallion of Warrior</font> is awarded to those who pass the Warrior test. Speak with <font color="LEVEL">Master Auron in Gludin Village</font>. You'll find him at the Warrior Mercenary Guild in the northern part of the village. Good luck!<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-03.htm">Return</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
Human Knights focus on their primary skills of attack and defense. Anyone wishing to become a Human Knight must have achieved at least level 20 and passed the appropriate test.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-06.htm">"Tell me more about Human Knights."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 4">"I want to transfer to the Human Knight class."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-01.htm">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Master Schule:<br>
<font color="LEVEL">Knights</font> fight very differently from Warriors, whose sword skills are based on a philosophy of attack. Knights, on the other hand, use a defense-oriented style well-suited for close-distance combat. Their role is to protect other members of their party by using their defensive skills to lure monsters away.<br>
As a result of their willingness to sacrifice themselves for others, Knights are honored and respected throughout the land. If you win your spurs as a Knight, you may one day even aspire to the top ranks of the Knightly class, the <font color="LEVEL">Paladin</font> or <font color="LEVEL">Dark Avenger</font>.<br>
But first you must become a Knight by passing the Test of the Knight and returning with the <font color="LEVEL">Sword of Ritual</font> as proof.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-07.htm">Ask about the Sword of Ritual.</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-05.htm">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Master Schule:<br>
Speak with <font color="LEVEL">Sir Klaus Vasper in Gludin Village</font> to learn how to get the <font color="LEVEL">Sword of Ritual</font>. He's the leader of the Warrior Guild.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-06.htm">Return</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
Rogues prefer the simple utility of small Swords, Bows and Light Armor in battle. Anyone wishing to become a Rogue must have achieved at least level 20 and passed the appropriate test.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-09.htm">"Tell me more about Rogues."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 7">"I want to transfer to the Rogue class."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-01.htm">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Master Schule:<br>
<font color="LEVEL">Rogues</font> are the most practical of all Human Fighters. They avoid the dangers of close combat by using long-distance weapons, such as Bows and Small Swords. They're well-known for their agile and unusual combat style.<br>
Their specialties include scouting, investigating, espionage and assassination. The most elite Rogues become either a <font color="LEVEL">Hawkeye</font> specializing in Bows or a <font color="LEVEL">Treasure Hunter</font> specializing in Daggers.<br>
Anyone wishing to become a Rogue must pass the appropriate test and bring me <font color="LEVEL">Captain Bezique's Recommendation</font> as proof.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-10.htm">"Tell me about Bezique's Recommendation."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-08.htm">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Grand Master Schule:<br>
<font color="LEVEL">Captain Bezique in Gludin Village</font> will give you his Letter of Recommendation when you pass the test for Rogue class transfer. Bring it to me and I'll make you a Rogue.<br>
You can find Captain Bezique on duty at the east entrance of Gludin Village near the port. Remember, the Gatekeeper can make a long trip much shorter and less complicated.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-09.htm">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Grand Master Schule:<br>
Ah yes, class transfer... It's simple, really. Once you reach a certain level of ability and experience, you can transfer to the next class level. As an example, Elven Fighters may become <font color="LEVEL">Elven Knights</font> or <font color="LEVEL">Elven Scouts</font>. Which occupation are you interested in?<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-12.htm">Elven Knight</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-15.htm">Elven Scout</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
Elven Knights are exemplary swordsmen. Anyone wishing to become an Elven Knight must have achieved at least level 20 and passed the appropriate test.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-13.htm">"Tell me more about Elven Knights."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 19">"I want to transfer to the Elven Knight class."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-11.htm">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Master Schule:<br>
The class of <font color="LEVEL">Elven Knight</font> is achieved by Elven warriors who have chosen swordsmanship as their specialty. Quick and agile, Elven Knights dominate their enemies with graceful swordsmanship and nimble footwork -- watching them, you'll think that you're watching the most magnificent warriors in the world. Originally the Elven Knights were established as an Order of Knights to defend the Mother Tree from invaders. Now, however, many of them have ventured into the Human world to advance the will of Einhasad and Eva.<br>
The most talented among the Elven Knights can advance to become <font color="LEVEL">Temple Knights</font>, who focus purely on swordsmanship or <font color="LEVEL">Swordsingers</font>, whose mystic songs raise the morale and fighting power of their comrades in battle. Naturally, achieving such lofty positions requires not only natural talent but also years of rigorous training.<br>
To become an Elven Knight, you must first pass a test and bring back proof called the <font color="LEVEL">Elven Knight's Brooch</font>.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-14.htm">Ask about the Elven Knight's Brooch.</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-12.htm">Return</Button>
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Master Schule:<br>
Anyone wishing to become an Elven Knight should speak with <font color="LEVEL">Master Sorius in the Town of Gludio</font>. He can be found in the Warrior Guild in the northern part of the village. Pass his test and bring me the <font color="LEVEL">Elven Knight Brooch</font> as evidence.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-13.htm">Return</Button>
</body></html>

View File

@@ -1,6 +0,0 @@
<html><body>Grand Master Schule:<br>
Elven Scouts possess exemplary survival skills. Their weapons of choice are Bows and Daggers. Anyone wishing to become an Elven Scout must have achieved at least level 20 and passed the appropriate test.<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-16.htm">"Tell me more about Elven Scouts."</Button>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 22">"I want to become an Elven Scout."</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-11.htm">Return</Button>
</body></html>

View File

@@ -1,7 +0,0 @@
<html><body>Grand Master Schule:<br>
<font color="LEVEL">Elven Scouts</font> are different from ordinary Knights in that they prefer the bow to the sword. As a result, their fighting power is generally lower. But they have shown their toughness by successfully defending the Elven Forest for thousands of years. For this reason, some people call them the Watchmen of the Forest.<br>
Among Elven Scouts, who value agility above all else, the most talented ones are often selected to become renowned adventurers called <font color="LEVEL">Plains Walkers</font>. Also, a number of Elven Scouts are chosen to become <font color="LEVEL">Silver Rangers</font>, who train to acquire ultimate mastery in archery. Of course, achieving such prestigious positions requires exceptional focus and years of rigorous training.<br>
In order to become an Elven Scout, you must pass a test and bring back proof called "Master Reisa's Recommendation."<br>
<Button ALIGN=LEFT ICON="NORMAL" action="bypass -h Quest ElfHumanFighterChange1 32094-17.htm">Ask about Master Reisa's Recommendation.</Button>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-15.htm">Return</Button>
</body></html>

View File

@@ -1,5 +0,0 @@
<html><body>Grand Master Schule:<br>
Anyone wishing to become an Elven Scout must possess the proper skills. <font color="LEVEL">Master Reisa in the Town of Gludio</font> has been in charge of the Elven Scout review for as long as I can remember, and she can judge more fairly than anyone else.<br>
You can find her at the Warrior Guild in the northern part of the village. Pass her test and bring the me her recommendation letter as proof, and I'll make you an Elven Scout.<br>
<Button ALIGN=LEFT ICON="RETURN" action="bypass -h Quest ElfHumanFighterChange1 32094-16.htm">Return</Button>
</body></html>

View File

@@ -1,3 +0,0 @@
<html><body>Grand Master Schule:<br>
What are you doing here? I'd say you're at the wrong guild! I only teach Warriors!
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Master Schule:<br>
You've already completed your first class transfer.<br>
If you wish to work towards your second class transfer, speak with <font color="LEVEL">Grand Master Hector</font> over there.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Master Schule:<br>
Since you've already completed your second class transfer, there is nothing further I can do.<br>
Remember, when you chose the path of a Warrior, you swore to protect the weak and uphold the good! Sadly, the stronger Humans become, the easier they're tempted by the forces of evil. Never forget to stay true to your principles.
</body></html>

View File

@@ -1,4 +0,0 @@
<html><body>Grand Master Schule:<br>
Anyone wishing to become a Warrior must have achieved at least level 20 and brought me the <font color="LEVEL">Medallion of Warrior</font>.<br>
You've passed the test and obtained the proof, but your level isn't high enough. Come back when you've raised your level.
</body></html>

Some files were not shown because too many files have changed in this diff Show More