Trial of the Challenger
- ID
- 211
- Название
- Trial of the Challenger
- start_npcs_json
- [30644]
- npc_ids_json
- [27110,27112,27113,27114,30535,30644,30645,30646,30647]
- constants_json
- {"FILAUR":30535,"KASH":30644,"MARTIEN":30645,"RALDO":30646,"CHEST_OF_SHYSLASSYS":30647,"SHYSLASSYS":27110,"GORR":27112,"BARAHAM":27113,"SUCCUBUS_QUEEN":27114,"LETTER_OF_KASH":2628,"WATCHER_EYE_1":2629,"WATCHER_EYE_2":2630,"SCROLL_OF_SHYSLASSYS":2631,"BROKEN_KEY":2632,"ADENA":57,"ELVEN_NECKLACE_BEADS":1904,"WHITE_TUNIC_PATTERN":1936,"IRON_BOOTS_DESIGN":1940,"MANTICOR_SKIN_GAITERS_PATTERN":1943,"RIP_GAUNTLETS_PATTERN":1946,"TOME_OF_BLOOD_PAGE":2030,"MITHRIL_SCALE_GAITERS_MATERIAL":2918,"BRIGANDINE_GAUNTLETS_PATTERN":2927,"MARK_OF_CHALLENGER":2627,"DIMENSIONAL_DIAMOND":7562}
- Статус разбора
- metadata_only; dynamic Java conditions/rewards retained in source; unresolved starts: []
- Источник
- game/data/scripts/quests/Q00211_TrialOfTheChallenger/Q00211_TrialOfTheChallenger.java
NPC квеста
| ID | Название | Старт квеста | Уровень |
|---|---|---|---|
| 27110 | Shyslassys | Нет | 36 |
| 27112 | Gorr | Нет | 36 |
| 27113 | Baraham | Нет | 36 |
| 27114 | Succubus Queen | Нет | 34 |
| 30535 | Filaur | Нет | 70 |
| 30644 | Kash | Да | 70 |
| 30645 | Martien | Нет | 70 |
| 30646 | Raldo | Нет | 70 |
| 30647 | Chest Of Shyslassys | Нет | 70 |
Условия уровней: выражения из Java
else if (player.getLevel() < 35) if (player.getLevel() >= 36)
Выдача предметов, адены и опыта: выражения из Java
giveItems(player, DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getPlayerClass().getId())); rewardItems(player, BRIGANDINE_GAUNTLETS_PATTERN, 1); rewardItems(player, IRON_BOOTS_DESIGN, 1); rewardItems(player, MANTICOR_SKIN_GAITERS_PATTERN, 1); rewardItems(player, MITHRIL_SCALE_GAITERS_MATERIAL, 1); rewardItems(player, RIP_GAUNTLETS_PATTERN, 1); rewardItems(player, ELVEN_NECKLACE_BEADS, 1); rewardItems(player, TOME_OF_BLOOD_PAGE, 1); rewardItems(player, WHITE_TUNIC_PATTERN, 1); rewardItems(player, IRON_BOOTS_DESIGN, 1); rewardItems(player, ADENA, getRandom(1, 1000)); giveItems(player, LETTER_OF_KASH, 1); giveItems(player, MARK_OF_CHALLENGER, 1); addExpAndSp(player, 72394, 11250); giveItems(player, BROKEN_KEY, 1); giveItems(player, SCROLL_OF_SHYSLASSYS, 1); giveItems(player, WATCHER_EYE_1, 1); giveItems(player, WATCHER_EYE_2, 1);
Квесты содержат динамические условия Java. Выражения выдачи включают промежуточные предметы, варианты и случайные награды; это не гарантированная награда. Константы приведены выше. Полные условия — в исходнике.
Тексты квеста
[30535-01.htm] Filaur of the Gray Pillar: What am I to do? What if the shield is really destroyed? Arrgh! I can't even think about it! Hmm, must stay calm. If someone wanted to destroy the shield... Where would they go? Ah-Hah!! There is only one place I know of! The deepest parts of the Mithril Mines, where the Earth Wyrm was slain and its blood spilled! The shield is most vulnerable in places where evil is rampant. Could it be that those who seek to destroy the magic shield are led by the evil Queen of the Succubus? In fact I am quite sure of it! You must leave at once and foil their evil plan! Please!
[30535-02.htm] Filaur of the Gray Pillar: You fool! Why are you still here? Can you not even manage such an easy task on your own? Well... I understand the burden of having the responsibility of saving the world on your shoulders... But if you want to prove your valor to Fighter Raldo, you must take care of this! Go to the deepest parts of the Mithril Mines and put an end to the monsters that are attempting to destroy the shield! Leave at once!
[30535-03.htm] Eldar Filaur: I thought Raldo would send me a skilled fighter. You are useless. You would not last one minute in battle. Go and train yourself!
[30535-04.htm] Eldar Filaur: Hey, you! Raldo was looking for you... Something about giving you the Mark of the Challenger... He has gone to the Mithril Mines, saying that the Queen of the Succubus may appear at any time. Why don't you meet him there?
[30644-01.htm] Kash: You wish to earn the Mark of the Challenger? You are certainly aware of the difficulty of this task... It is not to be taken lightly, especially by an unskilled person like yourself... You must realistically assess your abilities! (This quest may only be undertaken by a character of level 35 and above.)
[30644-02.htm] Kash: You seek the Mark of the Challenger? You must be mistaken. That mark is out of your league. (This quest may only be undertaken by Warriors, Elven Knights, Palus Knights, Orc Raiders, or Monks.)
[30644-03.htm] Kash: You wish to earn the Mark of the Challenger? You are certainly aware of the difficulty of this task... I don't have the mark, but I can tell you where it is... if you will you do something for me... Ask what kind of adventure it is.
[30644-04.htm] Kash: Are you familiar with the Neutral Zone between the lands of the Elves and the Dark Elves? Shyslyssys, an ancient medusa, makes her home there. Of course, these stories always include an extraordinary amount of treasure. You must go to her cave and kill everyone there. You may keep all the treasure you find, all I ask is that you bring back any old parchment that is there. Will you accept? "I accept."
[30644-05.htm] Kash: Your bravery is impressive, my young friend, but you must not go alone. Not that I don't trust your abilities... But this is a medusa that has lived for hundreds of years! She must be guarding something important... It would be best to gather some friends to go with you.
[30644-05a.htm] Kash: Ha! You get points for courage, if nothing else! But I wouldn't advise that you hunt there all by yourself. Courage alone won't get you very far against a centuries-old Medusa, youngster! That thing must have learned a few tricks over the years, eh? I think you'd best round up a group of your friends before trying your luck against the stone-looker. Here, take this Dimension Diamond and hold on to it. You can trade it to the village gatekeeper for something special that may help you on your journey.
[30644-06.htm] Kash: The medusa has feasted on many warriors in its hundreds of years of existence. Not to dismiss your skills lightly, but better warriors than you have ended up as this creature's lunch. By the way, I have learned that it lives in the cave near the waterfalls.
[30644-07.htm] Kash: You are true to your word. Ha, only one more to go... Oh, don't pay any attention to me. I am just talking to myself. Yes, the Mark of the Challenger. I have entrusted it to Martien, a friend living in the Town of Giran. Take him this Letter of Introduction and he will give you the mark.
[30644-08.htm] Kash: Martien is a very influential person in the Town of Giran. It is hard to meet him without a Letter of Introduction!
[30644-09.htm] Kash: What a nice surprise to see that you are still alive! You haven't yet performed the task Martien asked of you? Don't blame me, Martien is the villain here. Ha, I have never told a lie in my entire life!
[30645-01.htm] Martien: Yes, I have the mark, but it is not for sale. I could not risk giving it to someone who is not qualified... Would you mind taking a challenge? Take the challenge
[30645-02.htm] Martien: Let's see then, what would be appropriate...? Ah, yes! There is an evil creature attacking the villagers of Floran in recent days. He has been called 'Gorr'. He lives in a cave near Floran and attacks innocent villagers at random. Go and kill this evil creature. "The hero who saved a village"... Doesn't this sound like someone who might carry such a mark?
[30645-03.htm] Martien: Hmmm, it must be more of a challenge for you than I thought it would be. Oh, well, while you're sitting here resting the monster is devouring a mother and her baby... If you have any integrity at all you will get off your ass and go kill 'Gorr' now! Remember, he lives in a cave near Floran.
[30645-04.htm] Martien: So, you have killed Gorr? Congratulations! Unfortunately, just now the villagers of Floran were attacked again by another evil creature. This time the creature is called 'Baraham'. Perhaps he came to avenge the death of Gorr... Anyway, you should search the other caves near Gorr's shelter...
[30645-05.htm] Martien: Please find the evil creature 'Baraham' and kill it! I suggest that you search the other caves nearby where Gorr was found. I'll understand if you are not up to this task... After all, you weren't qualified to receive the Mark of Challenger...
[30645-06.htm] Martien: This man, Kash... I don't trust him... Who was it that said he was an idiot and that I'd easily be able to push him around? He is smarter than I thought! All right, I admit it. I took advantage of you. I don't have the mark of the challenger... So what? You can't do anything. Ask about Raldo
[30645-06a.htm] Martien: Hiccup!...! Duh,duh,...did you meet Raldo? In case huh, huh, he asks about muh, me, tuh, tuh...tell him that you have nuh, nuh, never seen me...! Puh, puh, please...! Ask where to meet Raldo
[30645-06b.htm] Martien: I duh, duh, don't know...! He is always wandering around eh, eh, everywhere...! He is the watcher of the magic field... I think you can find huh, huh, him near the Cave of 'Baraham'...
[30645-07.htm] Martien: Did you kill Baraham? Magnificent! You have fulfilled your task well. About that Mark of the Challenger... Ask about Raldo
[30646-01.htm] Raldo: You rascal! Why would you harm the guardians? "I have come to kill the monsters threatening the villagers."
[30646-02.htm] Raldo: What the hell do you mean? I know everything that goes on in the town of Floran! Now confess! Who sent you here? Tell him about the Mark of the Challenger and Martien
[30646-03.htm] Raldo: You fool! You were completely bamboozled by those two devils! They have no right to the Mark of Challenger! I, Raldo, alone possess that right! You bear the responsibility for weakening the magic field. "I will help." "It is none of my business."
[30646-04.htm] Raldo: Good! I must examine the other magic fields, meanwhile you should go to the Dwarven Village. That is where the two devils most likely have gone. Ask Filaur of the Gray Pillar of the Dwarven Village for the location of the magic field. They have probably sent a flock of succubus to drain it. Guard the field and when the evil creatures show up, kill them all! This is probably the last chance! If the magic field is destroyed 'the thing' will revive!
[30646-06.htm] Raldo: So you would abandon the Mark of the Challenger... Damn you! Your true nature emerges! Naturally you have no intention of going to the Dwarven Village to meet Filaur of the Gray Pillar, or to protect the last seal?
[30646-06a.htm] Raldo: Why are you still here? You must leave for the Dwarven Village right away! Find the location of the magic field with the help of Elder Filaur and then kill all the succubus so that they cannot destroy it!
[30646-07.htm] Champion Raldo: That chick is the leader, I think. Don't bother with the small fry, that's my motto! Oh, don't worry about my friends. They're off guarding other places, and honestly they'd dust the floor with you, anyway. But hey, no hard feelings, right? You were a big help in protecting this place, and no one can say that Champion Raldo doesn't know how to repay bravery when he sees it. Here, take this! It's a gift for your efforts. In fact, it's the Mark of Challenger, the one you were looking for. Well, enough talk -- I'd best get out there and slay them all before they get away. Excelsior!
[30647-01.htm] Chest of Shyslassys: There is a keyhole in the middle of the chest. Will you use the key?
[30647-02.htm] Chest of Shyslassys: The gold is inside the chest.
[30647-03.htm] Chest of Shyslassys: There are glittering materials inside the box.
[30647-04.htm] Chest of Shyslassys: You cannot open the chest if you do not have the correct key!
Исходник условий и наград (Java)
/*
* Copyright (c) 2013 L2jMobius
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
* IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
package quests.Q00211_TrialOfTheChallenger;
import org.l2jmobius.gameserver.entity.actor.Npc;
import org.l2jmobius.gameserver.entity.actor.Player;
import org.l2jmobius.gameserver.entity.actor.enums.player.PlayerClass;
import org.l2jmobius.gameserver.mechanics.script.Quest;
import org.l2jmobius.gameserver.mechanics.script.QuestSound;
import org.l2jmobius.gameserver.mechanics.script.QuestState;
import org.l2jmobius.gameserver.mechanics.script.State;
import org.l2jmobius.gameserver.network.serverpackets.SocialAction;
public class Q00211_TrialOfTheChallenger extends Quest
{
// NPCs
private static final int FILAUR = 30535;
private static final int KASH = 30644;
private static final int MARTIEN = 30645;
private static final int RALDO = 30646;
private static final int CHEST_OF_SHYSLASSYS = 30647;
// Monsters
private static final int SHYSLASSYS = 27110;
private static final int GORR = 27112;
private static final int BARAHAM = 27113;
private static final int SUCCUBUS_QUEEN = 27114;
// Items
private static final int LETTER_OF_KASH = 2628;
private static final int WATCHER_EYE_1 = 2629;
private static final int WATCHER_EYE_2 = 2630;
private static final int SCROLL_OF_SHYSLASSYS = 2631;
private static final int BROKEN_KEY = 2632;
// Rewards
private static final int ADENA = 57;
private static final int ELVEN_NECKLACE_BEADS = 1904;
private static final int WHITE_TUNIC_PATTERN = 1936;
private static final int IRON_BOOTS_DESIGN = 1940;
private static final int MANTICOR_SKIN_GAITERS_PATTERN = 1943;
private static final int RIP_GAUNTLETS_PATTERN = 1946;
private static final int TOME_OF_BLOOD_PAGE = 2030;
private static final int MITHRIL_SCALE_GAITERS_MATERIAL = 2918;
private static final int BRIGANDINE_GAUNTLETS_PATTERN = 2927;
private static final int MARK_OF_CHALLENGER = 2627;
private static final int DIMENSIONAL_DIAMOND = 7562;
public Q00211_TrialOfTheChallenger()
{
super(211, "Trial of the Challenger");
registerQuestItems(LETTER_OF_KASH, WATCHER_EYE_1, WATCHER_EYE_2, SCROLL_OF_SHYSLASSYS, BROKEN_KEY);
addStartNpc(KASH);
addTalkId(FILAUR, KASH, MARTIEN, RALDO, CHEST_OF_SHYSLASSYS);
addKillId(SHYSLASSYS, GORR, BARAHAM, SUCCUBUS_QUEEN);
}
@Override
public String onEvent(String event, Npc npc, Player player)
{
String htmltext = event;
final QuestState st = getQuestState(player, false);
if (st == null)
{
return htmltext;
}
switch (event)
{
case "30644-05.htm":
{
st.startQuest();
if (!player.getVariables().getBoolean("secondClassChange35", false))
{
htmltext = "30644-05a.htm";
giveItems(player, DIMENSIONAL_DIAMOND, DF_REWARD_35.get(player.getPlayerClass().getId()));
player.getVariables().set("secondClassChange35", true);
}
break;
}
case "30645-02.htm":
{
st.setCond(4, true);
takeItems(player, LETTER_OF_KASH, 1);
break;
}
case "30646-04.htm":
case "30646-06.htm":
{
st.setCond(8, true);
takeItems(player, WATCHER_EYE_2, 1);
break;
}
case "30647-04.htm":
{
if (hasQuestItems(player, BROKEN_KEY))
{
if (getRandom(10) < 2)
{
htmltext = "30647-03.htm";
playSound(player, QuestSound.ITEMSOUND_QUEST_JACKPOT);
takeItems(player, BROKEN_KEY, 1);
final int chance = getRandom(100);
if (chance > 90)
{
rewardItems(player, BRIGANDINE_GAUNTLETS_PATTERN, 1);
rewardItems(player, IRON_BOOTS_DESIGN, 1);
rewardItems(player, MANTICOR_SKIN_GAITERS_PATTERN, 1);
rewardItems(player, MITHRIL_SCALE_GAITERS_MATERIAL, 1);
rewardItems(player, RIP_GAUNTLETS_PATTERN, 1);
}
else if (chance > 70)
{
rewardItems(player, ELVEN_NECKLACE_BEADS, 1);
rewardItems(player, TOME_OF_BLOOD_PAGE, 1);
}
else if (chance > 40)
{
rewardItems(player, WHITE_TUNIC_PATTERN, 1);
}
else
{
rewardItems(player, IRON_BOOTS_DESIGN, 1);
}
}
else
{
htmltext = "30647-02.htm";
takeItems(player, BROKEN_KEY, 1);
rewardItems(player, ADENA, getRandom(1, 1000));
}
}
break;
}
}
return htmltext;
}
@Override
public String onTalk(Npc npc, Player player)
{
String htmltext = getNoQuestMsg(player);
final QuestState st = getQuestState(player, true);
switch (st.getState())
{
case State.CREATED:
{
if ((player.getPlayerClass() != PlayerClass.WARRIOR) && (player.getPlayerClass() != PlayerClass.ELVEN_KNIGHT) && (player.getPlayerClass() != PlayerClass.PALUS_KNIGHT) && (player.getPlayerClass() != PlayerClass.ORC_RAIDER) && (player.getPlayerClass() != PlayerClass.ORC_MONK))
{
htmltext = "30644-02.htm";
}
else if (player.getLevel() < 35)
{
htmltext = "30644-01.htm";
}
else
{
htmltext = "30644-03.htm";
}
break;
}
case State.STARTED:
{
final int cond = st.getCond();
switch (npc.getId())
{
case KASH:
{
if (cond == 1)
{
htmltext = "30644-06.htm";
}
else if (cond == 2)
{
htmltext = "30644-07.htm";
st.setCond(3, true);
takeItems(player, SCROLL_OF_SHYSLASSYS, 1);
giveItems(player, LETTER_OF_KASH, 1);
}
else if (cond == 3)
{
htmltext = "30644-08.htm";
}
else if (cond > 3)
{
htmltext = "30644-09.htm";
}
break;
}
case CHEST_OF_SHYSLASSYS:
{
htmltext = "30647-01.htm";
break;
}
case MARTIEN:
{
if (cond == 3)
{
htmltext = "30645-01.htm";
}
else if (cond == 4)
{
htmltext = "30645-03.htm";
}
else if (cond == 5)
{
htmltext = "30645-04.htm";
st.setCond(6, true);
takeItems(player, WATCHER_EYE_1, 1);
}
else if (cond == 6)
{
htmltext = "30645-05.htm";
}
else if (cond == 7)
{
htmltext = "30645-07.htm";
}
else if (cond > 7)
{
htmltext = "30645-06.htm";
}
break;
}
case RALDO:
{
if (cond == 7)
{
htmltext = "30646-01.htm";
}
else if (cond == 8)
{
htmltext = "30646-06a.htm";
}
else if (cond == 10)
{
htmltext = "30646-07.htm";
takeItems(player, BROKEN_KEY, 1);
giveItems(player, MARK_OF_CHALLENGER, 1);
addExpAndSp(player, 72394, 11250);
player.broadcastPacket(new SocialAction(player.getObjectId(), 3));
st.exitQuest(false, true);
}
break;
}
case FILAUR:
{
if (cond == 8)
{
if (player.getLevel() >= 36)
{
htmltext = "30535-01.htm";
st.setCond(9, true);
}
else
{
htmltext = "30535-03.htm";
}
}
else if (cond == 9)
{
htmltext = "30535-02.htm";
addRadar(player, 176560, -184969, -3729);
}
else if (cond == 10)
{
htmltext = "30535-04.htm";
}
break;
}
}
break;
}
case State.COMPLETED:
{
htmltext = getAlreadyCompletedMsg(player);
break;
}
}
return htmltext;
}
@Override
public void onKill(Npc npc, Player player, boolean isPet)
{
final QuestState st = getQuestState(player, false);
if ((st == null) || !st.isStarted())
{
return;
}
switch (npc.getId())
{
case SHYSLASSYS:
{
if (st.isCond(1))
{
st.setCond(2, true);
giveItems(player, BROKEN_KEY, 1);
giveItems(player, SCROLL_OF_SHYSLASSYS, 1);
addSpawn(CHEST_OF_SHYSLASSYS, npc, false, 200000);
}
break;
}
case GORR:
{
if (st.isCond(4))
{
giveItems(player, WATCHER_EYE_1, 1);
st.setCond(5, true);
}
break;
}
case BARAHAM:
{
if (st.isCond(6))
{
giveItems(player, WATCHER_EYE_2, 1);
st.setCond(7, true);
}
addSpawn(RALDO, npc, false, 100000);
break;
}
case SUCCUBUS_QUEEN:
{
if (st.isCond(9))
{
st.setCond(10, true);
}
addSpawn(RALDO, npc, false, 100000);
break;
}
}
}
}