Browse Source

Retail-like quest Acts Of Evil (171).
Reviewed by: @Zoey76

ivantotov 10 năm trước cách đây
mục cha
commit
9824b1cbf4
63 tập tin đã thay đổi với 764 bổ sung299 xóa
  1. 0 1
      L2J_DataPack/dist/game/data/scripts.cfg
  2. 0 6
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-01.htm
  3. 0 3
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-01a.htm
  4. 0 2
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-03.htm
  5. 0 2
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-03.htm
  6. 0 3
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-04.htm
  7. 0 2
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-04a.htm
  8. 0 5
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-05.htm
  9. 0 2
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-05a.htm
  10. 0 4
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-06.htm
  11. 0 2
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-07a.htm
  12. 0 3
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-08.htm
  13. 0 3
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30425-02.htm
  14. 0 3
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30437-03.htm
  15. 0 4
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-04.htm
  16. 0 2
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-04a.htm
  17. 0 220
      L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/__init__.py
  18. 7 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-01.html
  19. 1 1
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-01a.html
  20. 5 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-02.html
  21. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-03.html
  22. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-04.html
  23. 2 1
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-05.html
  24. 3 4
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-01.htm
  25. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-02.htm
  26. 3 1
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-03.htm
  27. 1 1
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-04.html
  28. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-05.html
  29. 5 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-06.html
  30. 5 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-07.html
  31. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-08.html
  32. 6 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-09.html
  33. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-10.html
  34. 6 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-11.html
  35. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-12.html
  36. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-13.html
  37. 5 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-14.html
  38. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-15.html
  39. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-16.html
  40. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-17.html
  41. 0 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-01.html
  42. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-02.html
  43. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-03.html
  44. 0 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-04.html
  45. 4 3
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30425-01.html
  46. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30425-02.html
  47. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30425-03.html
  48. 4 3
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-02.html
  49. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-03.html
  50. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-04.html
  51. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-05.html
  52. 5 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-06.html
  53. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-01.html
  54. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-02.html
  55. 2 1
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-03.html
  56. 2 1
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-04.html
  57. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-05.html
  58. 3 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-06.html
  59. 3 2
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-07.html
  60. 4 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-08.html
  61. 615 0
      L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/Q00171_ActsOfEvil.java
  62. 2 0
      L2J_DataPack/dist/game/data/scripts/quests/QuestMasterHandler.java
  63. 1 0
      L2J_DataPack/dist/sql/game/updates/20141227update.sql

+ 0 - 1
L2J_DataPack/dist/game/data/scripts.cfg

@@ -214,7 +214,6 @@ quests/60_GoodWorkReward/__init__.py
 quests/65_CertifiedSoulBreaker/__init__.py
 quests/118_ToLeadAndBeLed/__init__.py
 quests/123_TheLeaderAndTheFollower/__init__.py
-quests/171_ActsOfEvil/__init__.py
 quests/178_IconicTrinity/__init__.py
 quests/227_TestOfReformer/__init__.py
 quests/230_TestOfSummoner/__init__.py

+ 0 - 6
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-01.htm

@@ -1,6 +0,0 @@
-<html><body>Trader Arodin:<br>
-Are you a mercenary sent by the guards?<br>
-I suppose you know about my situation?<font color="LEVEL"> 20 sword blade molds</font> that were to be delivered to the Dark Elves were stolen by orcs. Dark Elves are very strict about such things... If they don't receive their order on time, they might sever our business relationship. If that happens, we stand to lose vast amounts of adena...<br>
-Please help us!<font color="LEVEL"> Recover the cargo stolen by the Turek orcs and deliver it to Dark Elven Trader Tyra</font>. You will find her in her store in the western part of the Altar of Rites.<br>Ah, before you go, let me tell you something interesting. Recently, I heard a rumor...<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30207-02.htm">"Tell me about the rumor!"</a>
-</body></html>

+ 0 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-01a.htm

@@ -1,3 +0,0 @@
-<html><body>Trader Arodin:<br>
-You must recover the cargo stolen by<font color="LEVEL"> Turek orcs</font>. The cargo consists of<font color="LEVEL"> 20 sword Blade Molds</font>. When you have recovered all of them, take them to<font color="LEVEL"> Dark Elven Trader Tyra</font>. You will find her in her store in the western part of the Altar of Rites.<br>Have you heard the rumor?<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30207-02.htm">"Tell me about the rumor."</a></body></html>

+ 0 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-03.htm

@@ -1,2 +0,0 @@
-<html><body>Trader Arodin:<br>
-Good job! You have saved our business relationship with the Dark Elves. Guard Alvah is expecting you. You should report to him right away.</body></html>

+ 0 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-03.htm

@@ -1,2 +0,0 @@
-<html><body>Guard Alvah:<br>I just received a message from Trader Arodin detailing the success of your mission! He asked me to extend his gratitude to you for your efforts. Good job!<br>Unfortunately, now we have another, even more dangerous problem! Word has come that the ol mahums are planning an all-out attack on Gludin Village! Sir Klaus Jasper discounts the danger of this, but...<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30381-04.htm">"It appears that the Turek orcs have joined forces with the ol mahums."</a></body></html>

+ 0 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-04.htm

@@ -1,3 +0,0 @@
-<html><body>Guard Alvah:<br>What's that? Ol mahums in the Orc Barracks...? Certainly this proves they are planning an attack! This is most distressing!<br>
-... I fear this still won't be enough to persuade Sir Klaus Vasper. We must try to get more information from the patrols that were sent to spy on the ol mahums... They were last known to be hiding from the ol mahums in the<font color="LEVEL"> Ruins of Agony</font>. I fear they may have been killed by the<font color="LEVEL"> Tumran bugbears</font> that roam that desolate place...<br>
-Please find out what has become of our patrols. This is of utmost importance! I must know what happened to them!</body></html>

+ 0 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-04a.htm

@@ -1,2 +0,0 @@
-<html><body>Guard Alvah:<br>
-The patrols that we sent to spy on the ol mahums must have gotten some valuable information about them. The last message we got from them said that they were hiding from the ol mahums in the<font color="LEVEL"> Ruins of Agony</font>. I fear that they may have been killed by the<font color="LEVEL"> Tumran bugbears</font> that frequent that desolate place...<br>Please hurry and find out what happened to the patrols!</body></html>

+ 0 - 5
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-05.htm

@@ -1,5 +0,0 @@
-<html><body>Guard Alvah:<br>
-So sad. Those heroic patrolmen gave their lives for this information...<br>
-Let's see... What's this? ol mahums allied with Dwarves...?! What treachery!<br>
-This is treason! We must tread carefully, my friend. The influence of the Dwarven Guild cannot be ignored. If we rushed in and made such charges that were later proven j untrue, we would be in serious trouble.<br>
-We need proof of this conspiracy of Dwarves and ol mahums! Go to the<font color="LEVEL"> Abandoned Camp</font> and check out the<font color="LEVEL"> ol mahum generals</font>. That should yield some proof.</body></html>

+ 0 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-05a.htm

@@ -1,2 +0,0 @@
-<html><body>Guard Alvah:<br>
-Don't you realize how important this Is? You must find proof of the alliance between Dwarves and ol mahums! Go to the<font color="LEVEL"> Abandoned Camp</font> and check out the<font color="LEVEL"> ol mahum generals</font>. You will find the proof there.</body></html>

+ 0 - 4
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-06.htm

@@ -1,4 +0,0 @@
-<html><body>Guard Alvah:<br>
-Have you found proof of the alliance? What's this? Ol mahum's operation orders? Let me see that... This is unbelievable...! The ol mahums' target is not Gludin Village after all! They intend to seize the Orc Barracks! Those deceitful beasts plan to falsely pledge an alliance with the orcs, send them off to train for the attack on Gludin Village and then seize their unguarded barracks! What treacherous creatures they are!<br>
-If the ol mahums are allowed to take the take the western part of Gludin Village and also establish a base in the north, we will be completely cut off!<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30381-07.htm">Show him the Weapons Trade Contract.</a></body></html>

+ 0 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-07a.htm

@@ -1,2 +0,0 @@
-<html><body>Guard Alvah:<br>
-Ask<font color="LEVEL"> Neti</font> about the Dwarven Guild seal on the weapons Contract. We must determine which guild is aiding the ol mahums!</body></html>

+ 0 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-08.htm

@@ -1,3 +0,0 @@
-<html><body>Guard Alvah:<br>
-Good job! The invasion has failed! Now Turek orcs and ol mahums will only be concerned with killing each other. What a turn of fate.<br>
-It has been said that one dedicated warrior can defeat an army, and you have proven this to be true. Please accept this token of appreciation from the Gludio Guards.</body></html>

+ 0 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30425-02.htm

@@ -1,3 +0,0 @@
-<html><body>Neti:<br>
-Please do what you can to clear<font color="LEVEL"> Trader Rolento's</font> name as soon as possible. It Is just appalling that a man of his character could have such scurrilous rumors circulated about him! He would never have supplied weapons to the ol mahums!<br>
-Please, go to the<font color="LEVEL"> south entrance of the Wasteland</font> and meet Rolento.</body></html>

+ 0 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30437-03.htm

@@ -1,3 +0,0 @@
-<html><body>Trader Rolento:<br>
-Go to the<font color="LEVEL"> Orc Barracks</font> and deliver the weapons. You'll meet<font color="LEVEL"> Turek Chief Burai</font> there. Tell him of the ol mahums treachery. That should set his blood to boil!<br>
-Take this mark from the Silver Scale Guild, and this Cargo Box as well. Don't worry. It's filled with crude weapons made of cheap brass.</body></html>

+ 0 - 4
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-04.htm

@@ -1,4 +0,0 @@
-<html><body>Turek Chief Burai:<br>
-Kaaah aak!!! Listen to me, brave Turek Warriors! Gludin Is no longer our target! We must annihilate our true enemy! Tomorrow morning we shall attack the barracks of the ol mahums!<br>
-You're a mercenary, right? Then I want to hire you to go and cut off the heads of the<font color="LEVEL"> ol mahum captains</font>!<br>
-Bring me back<font color="LEVEL"> at least 30 of their heads</font>! Then I will give you a wonderful prize!</body></html>

+ 0 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-04a.htm

@@ -1,2 +0,0 @@
-<html><body>Turek Chief Burai:<br>
-Go and cut off the heads of the<font color="LEVEL"> ol mahum captains</font>! Bring back at least<font color="LEVEL"> 30</font> of them and I will give you a prize!</body></html>

+ 0 - 220
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/__init__.py

@@ -1,220 +0,0 @@
-# Made by mtrix
-import sys
-from com.l2jserver.gameserver.model.quest import State
-from com.l2jserver.gameserver.model.quest import QuestState
-from com.l2jserver.gameserver.model.quest import Quest as JQuest
-
-qn = "171_ActsOfEvil"
-
-BLADE_MOLD,TYRAS_BILL,RANGERS_REPORT1,RANGERS_REPORT2,RANGERS_REPORT3,RANGERS_REPORT4,\
-WEAPON_TRADE_CONTRACT,ATTACK_DIRECTIVES,CERTIFICATE,CARGOBOX,OL_MAHUM_HEAD = range(4239,4250)
-
-ADENA = 57
-
-CHANCE1  = 50
-CHANCE11 = 10
-CHANCE2  = 100
-CHANCE21 = 20
-CHANCE22 = 20
-CHANCE23 = 20
-CHANCE24 = 10
-CHANCE25 = 10
-CHANCE3  = 50
-
-ALVAH,ARODIN,TYRA,ROLENTO,NETI,BURAI=30381,30207,30420,30437,30425,30617
-
-class Quest (JQuest) :
-
- def __init__(self,id,name,descr):
-     JQuest.__init__(self,id,name,descr)
-     self.questItemIds = [RANGERS_REPORT1, RANGERS_REPORT2, RANGERS_REPORT3, RANGERS_REPORT4, OL_MAHUM_HEAD, CARGOBOX, TYRAS_BILL, CERTIFICATE, BLADE_MOLD, WEAPON_TRADE_CONTRACT]
-
- def onAdvEvent (self,event,npc, player) :
-     htmltext = event
-     st = self.getQuestState(player, False)
-     if not st : return
-     cond = st.getInt("cond")
-     if st.getState() != State.COMPLETED :
-       if event == "30381-02.htm" and cond == 0 :
-         st.setState(State.STARTED)
-         st.set("cond","1")
-         st.playSound("ItemSound.quest_accept")
-       elif event == "30207-02.htm" and cond == 1 :
-         st.set("cond","2")
-       elif event == "30381-04.htm" and cond == 4:
-         st.set("cond","5")
-       elif event == "30381-07.htm" and cond == 6:
-         st.set("cond","7")
-         st.takeItems(WEAPON_TRADE_CONTRACT,-1)
-         st.playSound("ItemSound.quest_middle")
-       elif event == "30437-03.htm" and cond == 8:
-         st.giveItems(CARGOBOX,1)
-         st.giveItems(CERTIFICATE,1)
-         st.set("cond","9")
-       elif event == "30617-04.htm" and cond == 9:
-         st.takeItems(CERTIFICATE,-1)
-         st.takeItems(ATTACK_DIRECTIVES,-1)
-         st.takeItems(CARGOBOX,-1)
-         st.set("cond","10")
-     return htmltext
-
- def onTalk (self,npc,player):
-     htmltext = Quest.getNoQuestMsg(player)
-     st = self.getQuestState(player, True)
-     if not st : return htmltext
-
-     npcId = npc.getId()
-     id = st.getState()
-     level = player.getLevel()
-     cond = st.getInt("cond")
-     if npcId==ALVAH :
-         if id == State.CREATED :
-            if level > 26:
-               htmltext = "30381-01.htm"
-            else :
-               htmltext = "30381-01a.htm"
-               st.exitQuest(1)
-         elif id == State.COMPLETED :
-             htmltext = Quest.getAlreadyCompletedMsg(player)
-         elif cond==1 :
-             htmltext = "30381-02a.htm"
-         elif cond==4 :
-             htmltext = "30381-03.htm"
-         elif cond==5 :
-             if st.getQuestItemsCount(RANGERS_REPORT1) and st.getQuestItemsCount(RANGERS_REPORT2) and st.getQuestItemsCount(RANGERS_REPORT3) and st.getQuestItemsCount(RANGERS_REPORT4) :
-                 htmltext = "30381-05.htm"
-                 st.takeItems(RANGERS_REPORT1,-1)
-                 st.takeItems(RANGERS_REPORT2,-1)
-                 st.takeItems(RANGERS_REPORT3,-1)
-                 st.takeItems(RANGERS_REPORT4,-1)
-                 st.set("cond","6")
-             else :
-                 htmltext = "30381-04a.htm"
-         elif cond==6 :
-             if st.getQuestItemsCount(WEAPON_TRADE_CONTRACT) and st.getQuestItemsCount(ATTACK_DIRECTIVES) :
-                 htmltext = "30381-06.htm"
-             else :
-                 htmltext = "30381-05a.htm"
-         elif cond==7 :
-             htmltext = "30381-07a.htm"
-         elif cond==11 :
-             htmltext = "30381-08.htm"
-             st.giveItems(ADENA,95000)
-             st.addExpAndSp(159820,9182)
-             st.playSound("ItemSound.quest_finish")
-             st.exitQuest(False)
-     elif id == State.STARTED :
-         if npcId==ARODIN :
-             if cond==1 :
-                 htmltext = "30207-01.htm"
-             elif cond==2 :
-                 htmltext = "30207-01a.htm"
-             elif cond==3 :
-                 if st.getQuestItemsCount(TYRAS_BILL) :
-                     st.takeItems(TYRAS_BILL,-1)
-                     htmltext = "30207-03.htm"
-                     st.set("cond","4")
-                 else :
-                     htmltext = "30207-01a.htm"
-             elif cond==4 :
-                 htmltext = "30207-03a.htm"
-         elif npcId==TYRA :
-             if cond==2 :
-                if st.getQuestItemsCount(BLADE_MOLD)>=20 :
-                   st.takeItems(BLADE_MOLD,-1)
-                   st.giveItems(TYRAS_BILL,1)
-                   htmltext = "30420-01.htm"
-                   st.set("cond","3")
-                else :
-                   htmltext = "30420-01b.htm"
-             elif cond==3 :
-                 htmltext = "30420-01a.htm"
-             elif cond > 3 :
-                 htmltext = "30420-02.htm"
-         elif npcId==NETI :
-             if cond==7 :
-                 htmltext = "30425-01.htm"
-                 st.set("cond","8")
-             elif cond==8 :
-                 htmltext = "30425-02.htm"
-         elif npcId==ROLENTO :
-             if cond==8 :
-                 htmltext = "30437-01.htm"
-             elif cond==9 :
-                 htmltext = "30437-03a.htm"
-         elif npcId==BURAI :
-             if cond==9 and st.getQuestItemsCount(CERTIFICATE) and st.getQuestItemsCount(CARGOBOX) and st.getQuestItemsCount(ATTACK_DIRECTIVES) :
-                 htmltext = "30617-01.htm"
-             if cond==10 :
-                 if st.getQuestItemsCount(OL_MAHUM_HEAD)>=30 :
-                    htmltext = "30617-05.htm"
-                    st.giveItems(ADENA,8000)
-                    st.takeItems(OL_MAHUM_HEAD,-1)
-                    st.set("cond","11")
-                    st.playSound("ItemSound.quest_itemget")
-                 else :
-                    htmltext = "30617-04a.htm"
-     return htmltext
-
- def onKill(self,npc,player,isPet):
-     st = self.getQuestState(player, False)
-     if not st : return 
-     if st.getState() != State.STARTED : return 
-
-     npcId = npc.getId()
-     cond = st.getInt("cond")
-     chance=self.getRandom(100)
-     if cond==2 and npcId in range(20496,20500) :
-        blades = st.getQuestItemsCount(BLADE_MOLD)
-        if chance < CHANCE11 :
-           st.addSpawn(27190)
-        if chance < CHANCE1 and blades < 20 :
-           st.giveItems(BLADE_MOLD,1)
-           if blades == 19 :
-              st.playSound("ItemSound.quest_middle")
-           else :
-              st.playSound("ItemSound.quest_itemget")
-     elif cond==5 and npcId == 20062 :
-         if not st.getQuestItemsCount(RANGERS_REPORT1) and chance < CHANCE2:
-            st.giveItems(RANGERS_REPORT1,1)
-            st.playSound("ItemSound.quest_itemget")
-         elif not st.getQuestItemsCount(RANGERS_REPORT2) and chance < CHANCE21:
-            st.giveItems(RANGERS_REPORT2,1)
-            st.playSound("ItemSound.quest_itemget")
-         elif not st.getQuestItemsCount(RANGERS_REPORT3) and chance < CHANCE22:
-            st.giveItems(RANGERS_REPORT3,1)
-            st.playSound("ItemSound.quest_itemget")
-         elif not st.getQuestItemsCount(RANGERS_REPORT4) and chance < CHANCE23:
-            st.giveItems(RANGERS_REPORT4,1)
-            st.playSound("ItemSound.quest_itemget")
-     elif cond==6 and npcId==20438 :
-         if not st.getQuestItemsCount(WEAPON_TRADE_CONTRACT) and chance < CHANCE24:
-            st.giveItems(WEAPON_TRADE_CONTRACT,1)
-            st.playSound("ItemSound.quest_itemget")
-         elif not st.getQuestItemsCount(ATTACK_DIRECTIVES) and chance < CHANCE25:
-            st.giveItems(ATTACK_DIRECTIVES,1)
-            st.playSound("ItemSound.quest_itemget")
-     elif cond==10 and npcId==20066 :
-         heads=st.getQuestItemsCount(OL_MAHUM_HEAD)
-         if heads < 30 and chance < CHANCE3 :
-            st.giveItems(OL_MAHUM_HEAD,1)
-            if heads == 29 :
-               st.playSound("ItemSound.quest_middle")
-            else :
-               st.playSound("ItemSound.quest_itemget")
-     return
-
-QUEST       = Quest(171,qn,"Acts of Evil")
-
-QUEST.addStartNpc(ALVAH)
-
-QUEST.addTalkId(ALVAH)
-
-QUEST.addTalkId(ARODIN)
-QUEST.addTalkId(TYRA)
-QUEST.addTalkId(ROLENTO)
-QUEST.addTalkId(NETI)
-QUEST.addTalkId(BURAI)
-
-for i in range(20494,20500)+[20062,20066,20438] :
-    QUEST.addKillId(i)

+ 7 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-01.html

@@ -0,0 +1,7 @@
+<html><body>Trader Arodin:<br>
+Are you a mercenary sent by the guards?<br>
+I suppose you know about my situation? <font color="LEVEL">20 sword blade molds</font> that were to be delivered to the Dark Elves were stolen by orcs. Dark Elves are very strict about such things... If they don't receive their order on time, they might sever our business relationship. If that happens, we stand to lose vast amounts of Adena...<br>
+Please help us! <font color="LEVEL">Recover the cargo stolen by the Turek orcs and deliver it to Dark Elven Trader Tyra.</font> You will find her in her store in the western part of the Altar of Rites.<br>
+Ah, before you go, let me tell you something interesting. Recently, I heard a rumor...<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30207-01a.html">"Tell me about the rumor!"</a>
+</body></html>

+ 1 - 1
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-02.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-01a.html

@@ -1,3 +1,3 @@
 <html><body>Trader Arodin:<br>
-Witnesses said that several ol mahums were with the orcs when they raided the cargo wagon. This is the first I've heard of orcs and ol mahums working cooperatively... Something strange is going on. Please be careful.
+Witnesses said that several Ol Mahums were with the orcs when they raided the cargo wagon. This is the first I've heard of orcs and Ol Mahums working cooperatively... Something strange is going on. Please be careful.
 </body></html>

+ 5 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-02.html

@@ -0,0 +1,5 @@
+<html><body>Trader Arodin:<br>
+You must recover the cargo stolen by <font color="LEVEL">Turek orcs</font>. The cargo consists of <font color="LEVEL">20 sword Blade Molds</font>. When you have recovered all of them, take them to <font color="LEVEL">Dark Elven Trader Tyra</font>. You will find her in her store in the western part of the Altar of Rites.<br>
+Have you heard the rumor?<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30207-01a.html">"Tell me about the rumor."</a>
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-03.html

@@ -0,0 +1,3 @@
+<html><body>Trader Arodin:<br>
+You have recovered all of the molds stolen by the Turek orcs! Thank you so much! Now, <font color="LEVEL">please deliver the recovered cargo to Dark Elven Trader Tyra.</font> You will find her in her store in the western part of the Altar of Rites. Please be careful on your journey.
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-04.html

@@ -0,0 +1,4 @@
+<html><body>Trader Arodin:<br>
+Good job! You have saved our business relationship with the Dark Elves.<br>
+<font color="LEVEL">Guard Alvah</font> is expecting you. You should report to him right away.
+</body></html>

+ 2 - 1
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30207-03a.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30207-05.html

@@ -1,2 +1,3 @@
 <html><body>Trader Arodin:<br>
-You're the one who recovered the stolen cargo, aren't you? You look well! I really appreciate what you did for us. Thanks to you, our guild was able to sustain our business relationship with the Dark Elves.</body></html>
+You're the one who recovered the stolen cargo, aren't you? You look well! I really appreciate what you did for us. Thanks to you, our guild was able to sustain our business relationship with the Dark Elves.
+</body></html>

+ 3 - 4
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-01a.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-01.htm

@@ -1,6 +1,5 @@
 <html><body>Guard Alvah:<br>
 We have had many problems lately from the Turek orcs. The worst has been their looting and pillaging! Recently a wagon crossing the Dark Elven Forest was attacked and all the cargo stolen. The Aden Trade Union has filed a formal request for assistance from the Gludio Guards!<br>
-Unfortunately, since the ol mahums are constantly trying to sneak into Gludin Village, the guards cannot leave their posts even for a moment! There has been much discussion on this subject, and we have come to the conclusion that our only option at this point is to hire mercenaries to drive out the Turek orcs.<br>
-It is quite troubling to be compelled to trust our future to outsiders...<br>
-What's that? You are a mercenary? What a stroke of luck! Would you consider helping us?<br>
-(Quest for characters level 27 or above)</body></html>
+Unfortunately, since the Ol Mahums are constantly trying to sneak into Gludin Village, the guards cannot leave their posts even for a moment! There has been much discussion on this subject, and we have come to the conclusion that our only option at this point is to hire mercenaries to drive out the Turek orcs.<br>
+(This quest can only be undertaken by a character of level 27 or above.)
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-01.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-02.htm

@@ -1,6 +1,7 @@
 <html><body>Guard Alvah:<br>
 We have had many problems lately from the Turek orcs. The worst has been their looting and pillaging! Recently a wagon crossing the Dark Elven Forest was attacked and all the cargo stolen. The Aden Trade Union has filed a formal request for assistance from the Gludio Guards!<br>
-Unfortunately, since the ol mahums are constantly trying to sneak into Gludin Village, the guards cannot leave their posts even for a moment! There has been much discussion on this subject, and we have come to the conclusion that our only option at this point is to hire mercenaries to drive out the Turek orcs.<br>
+Unfortunately, since the Ol Mahums are constantly trying to sneak into Gludin Village, the guards cannot leave their posts even for a moment! There has been much discussion on this subject, and we have come to the conclusion that our only option at this point is to hire mercenaries to drive out the Turek orcs.<br>
 It is quite troubling to be compelled to trust our future to outsiders...<br>
 What's that? You are a mercenary? What a stroke of luck! Would you consider helping us?<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30381-02.htm">"Yes, I will help"</a></body></html>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30381-03.htm">"Yes, I will help."</a>
+</body></html>

+ 3 - 1
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-02.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-03.htm

@@ -1,3 +1,5 @@
 <html><body>Guard Alvah:<br>
 Excellent! Now listen carefully.<br>
-First you must meet with<font color="LEVEL"> Trader Arodin</font> and get the details of the raid that occurred day before yesterday. Determine exactly which items were stolen from the cargo wagon. Trader Arodin can be found in the<font color="LEVEL"> Weapons Store</font>.</body></html>
+First you must meet with <font color="LEVEL">Trader Arodin</font> and get the details of the raid that occurred day before yesterday. Determine exactly which items were stolen from the cargo wagon. Trader Arodin can be found in the 
+<font color="LEVEL">Weapons Store</font>.
+</body></html>

+ 1 - 1
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-02a.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-04.html

@@ -1,3 +1,3 @@
 <html><body>Guard Alvah:<br>
-Surely you couldn't have forgotten already!? You must meet with<font color="LEVEL"> Trader Arodin at the Weapons Store</font>. He will tell you exactly which items were stolen from the cargo wagon by the Turek orcs. Please do this quickly, before the guild files a complaint!
+Surely you couldn't have forgotten already!? You must meet with <font color="LEVEL">Trader Arodin at the Weapons Store</font>. He will tell you exactly which items were stolen from the cargo wagon by the Turek orcs. Please do this quickly, before the guild files a complaint!
 </body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-05.html

@@ -0,0 +1,3 @@
+<html><body>Guard Alvah:<br>
+I trust that you met with Trader Arodin and found out what was stolen from the cargo wagon? Good! Now there is just the task of killing the Turek orcs and recovering the cargo!
+</body></html>

+ 5 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-06.html

@@ -0,0 +1,5 @@
+<html><body>Guard Alvah:<br>
+I just received a message from Trader Arodin detailing the success of your mission! He asked me to extend his gratitude to you for your efforts. Good job!<br>
+Unfortunately, now we have another, even more dangerous problem! Word has come that the Ol Mahums are planning an all-out attack on Gludin Village! Sir Klaus Vasper discounts the danger of this, but...<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30381-07.html">"It appears that the Turek orcs have joined forces with the Ol Mahums."</a>
+</body></html>

+ 5 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-07.html

@@ -0,0 +1,5 @@
+<html><body>Guard Alvah:<br>
+What's that? Ol Mahums in the Orc Barracks...? Certainly this proves they are planning an attack! This is most distressing!<br>
+... I fear this still won't be enough to persuade Sir Klaus Vasper. We must try to get more information from the patrols that were sent to spy on the Ol Mahums... They were last known to be hiding from the Ol Mahums in the <font color="LEVEL">Ruins of Agony</font>. I fear they may have been killed by the <font color="LEVEL">Tumran bugbears</font> that roam that desolate place...<br>
+Please find out what has become of our patrols. This is of utmost importance! I must know what happened to them!
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-08.html

@@ -0,0 +1,4 @@
+<html><body>Guard Alvah:<br>
+The patrols that we sent to spy on the Ol Mahums must have gotten some valuable information about them. The last message we got from them said that they were hiding from the Ol Mahums in the <font color="LEVEL">Ruins of Agony</font>. I fear that they may have been killed by the <font color="LEVEL">Tumran bugbears</font> that frequent that desolate place...<br>
+Please hurry and find out what happened to the patrols!
+</body></html>

+ 6 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-09.html

@@ -0,0 +1,6 @@
+<html><body>Guard Alvah:<br>
+So sad. Those heroic patrolmen gave their lives for this information...<br>
+Let's see... What's this? Ol Mahums allied with Dwarves...?! What treachery!<br>
+This is treason! We must tread carefully, my friend. The influence of the Dwarven Guild cannot be ignored. If we rushed in and made such charges that were later proven untrue, we would be in serious trouble.<br>
+We need proof of this conspiracy of Dwarves and Ol Mahums! Go to the <font color="LEVEL">Abandoned Camp</font> and check out the <font color="LEVEL">Ol Mahum generals</font>. That should yield some proof.
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-10.html

@@ -0,0 +1,3 @@
+<html><body>Guard Alvah:<br>
+Don't you realize how important this is? You must find proof of the alliance between Dwarves and Ol Mahums! Go to the <font color="LEVEL">Abandoned Camp</font> and check out the <font color="LEVEL">Ol Mahum generals</font>. You will find the proof there.
+</body></html>

+ 6 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-11.html

@@ -0,0 +1,6 @@
+<html><body>Guard Alvah:<br>
+Have you found proof of the alliance? What's this? Ol mahum's operation orders? Let me see that...<br>
+This is unbelievable...! The Ol Mahums' target is not Gludin Village after all! They intend to seize the Orc Barracks! Those deceitful beasts plan to falsely pledge an alliance with the orcs, send them off to train for the attack on Gludin Village and then seize their unguarded barracks! What treacherous creatures they are!<br>
+If the Ol Mahums are allowed to take the take the western part of Gludin Village and also establish a base in the north, we will be completely cut off!<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30381-12.html">Show him the Weapons Trade Contract.</a>
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30381-07.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-12.html

@@ -1,4 +1,5 @@
 <html><body>Guard Alvah:<br>
-A Contract? What's this? Hmmm, a Contract to purchase a large supplies of weapons. Look at this seal at the bottom! The mark of a Dwarven Guild! Could this be the proof we need that Dwarves are providing ol mahums with weapons?
+A Contract? What's this? Hmmm, a Contract to purchase a large supplies of weapons. Look at this seal at the bottom! The mark of a Dwarven Guild! Could this be the proof we need that Dwarves are providing ol mahums with weapons?<br>
 We must find out which guild uses this seal, but we can't ask the Dwarves directly...<br>
-Have you met<font color="LEVEL"> Neti</font>, who lives in this village? Ask her! She used to live among the Dwarves in Schuttgart and knows their ways.</body></html>
+Have you met <font color="LEVEL">Neti</font>, who lives in this village? Ask her! She used to live among the Dwarves in Schuttgart and knows their ways.
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-13.html

@@ -0,0 +1,3 @@
+<html><body>Guard Alvah:<br>
+Ask <font color="LEVEL">Neti</font> about the Dwarven Guild seal on the weapons Contract. We must determine which guild is aiding the Ol Mahums!
+</body></html>

+ 5 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-14.html

@@ -0,0 +1,5 @@
+<html><body>Guard Alvah:<br>
+What did Neti say? <font color="LEVEL">Trader Rolento</font>? That Dwarf with the business near the <font color="LEVEL">southern entrance of the Wasteland</font> drafted the Weapons Trade Contract?<br>
+I knew that guy wasn't on the level... Such an odd place for a business... He must have done that to avoid notice of his nefarious dealings...<br>
+You must confront Trader Rolento with this Contract. If he confesses to dealing with the Ol Mahums I will have him arrested!
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-15.html

@@ -0,0 +1,3 @@
+<html><body>Guard Alvah:<br>
+We must take Trader Rolento's word for now. First you must visit <font color="LEVEL">the Orc Barracks</font> and meet with <font color="LEVEL">Turek Chief Burai</font>. Show him the Ol Mahums' Operation Order, he'll call off his dogs. Better these evil ones attack each other than us. 
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-16.html

@@ -0,0 +1,3 @@
+<html><body>Guard Alvah:<br>
+Well that explains everything! The Turek Chief, eh? This is brilliant! It sets both of our enemies back on their heels with one stroke! 
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30381-17.html

@@ -0,0 +1,3 @@
+<html><body>Guard Alvah:<br>Good job! The invasion has failed! Now Turek orcs and ol mahums will only be concerned with killing each other. What a turn of fate.<br>
+It has been said that one dedicated warrior can defeat an army, and you have proven this to be true. Please accept this token of appreciation from the Gludio Guards.
+</body></html>

+ 0 - 0
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30420-01b.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-01.html


+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30420-01.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-02.html

@@ -1,3 +1,4 @@
-<html><body>Traider Tyra:<br>
+<html><body>Trader Tyra:<br>
 Hmm, I ordered the mold over a month ago... This merchandise is a week late and it looks like it's been damaged.<br>
-Regardless of whether the cargo was stolen or not, you're responsible for delivering the goods on time. However, it is true that Turek orcs are carrying out raids of unprecedented audacity. I will make an exception this time. This time I will pay you, as specified in the Contract. From now on, please make sure that my orders arrive on time. Give this bill to Trader Arodin.</body></html>
+Regardless of whether the cargo was stolen or not, you're responsible for delivering the goods on time. However, it is true that Turek orcs are carrying out raids of unprecedented audacity. I will make an exception this time. This time I will pay you, as specified in the Contract. From now on, please make sure that my orders arrive on time.Give this bill to Trader Arodin.<br>
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30420-01a.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-03.html

@@ -1,2 +1,3 @@
-<html><body>Traider Tyra:<br>
-Please take the bill I gave you to Trader Arodin. You will find him in the weapons shop in Gludin Village. Remind him that from now on he should keep the terms of our Contract.</body></html>
+<html><body>Trader Tyra:<br>
+Please take the bill I gave you to Trader Arodin. You will find him in the weapons shop in Gludin Village. Remind him that from now on he should keep the terms of our Contract.
+</body></html>

+ 0 - 0
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30420-02.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30420-04.html


+ 4 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30425-01.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30425-01.html

@@ -1,4 +1,5 @@
 <html><body>Neti:<br>
-I have a basic idea of your situation... Could I take a look at the Contract?
-This is the mark of the Silver Scale guild.<font color="LEVEL"> Trader Rolento</font> is the only Dwarf in this area who belongs to that guild... However, he would never supply weapons to the ol mahums...<br>
-I'm sure there must have been a misunderstanding! Or, maybe someone framed him... If you met him you would realize that I know what I'm talking about. Please! Go and meet Rolento at the<font color="LEVEL"> south entrance of the Wasteland</font>, you'll realize he would never have done such a thing.</body></html>
+I have a basic idea of your situation... Could I take a look at the Contract?<br>
+This is the mark of the Silver Scale guild. <font color="LEVEL">Trader Rolento</font> is the only Dwarf in this area who belongs to that guild... However, he would never supply weapons to the Ol Mahums...<br>
+I'm sure there must have been a misunderstanding! Or, maybe someone framed him... If you met him you would realize that I know what I'm talking about. Please! Go and meet Rolento at <font color="LEVEL">the south entrance of the Wasteland</font>, you'll realize he would never have done such a thing.
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30425-02.html

@@ -0,0 +1,4 @@
+<html><body>Neti:<br>
+Please do what you can to clear <font color="LEVEL">Trader Rolento's</font> name as soon as possible. It is just appalling that a man of his character could have such scurrilous rumors circulated about him! He would never have supplied weapons to the Ol Mahums!<br>
+Please, go to the <font color="LEVEL">south entrance of the Wasteland</font> and meet Rolento.
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30425-03.html

@@ -0,0 +1,4 @@
+<html><body>Neti:<br>
+Well, I hear what you say, but I don't understand why Rolento would give weapons to the Ol Mahums... Surely he must have had some noble purpose? He must be aware of the seriousness of this offense...<br>
+Let's hope for the best!
+</body></html>

+ 4 - 3
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30437-01.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-02.html

@@ -1,5 +1,6 @@
 <html><body>Trader Rolento:<br>
 Ah, yes, this is my Contract. Is there a problem?<br>
-What do you mean the ol mahums? What are you talking about? No way! That's not what happened...!<br>
-Listen to me for a minute! A while back an ol mahum general came to me looking for a gift for the orcs. Apparently they had signed a peace agreement. He said that he wanted to present them with gifts as an expression of trust...<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30437-02.htm">Tell him about the invasion plans of the Turek orcs.</a></body></html>
+What do you mean the Ol Mahums? What are you talking about? No way! That's not what happened...!<br>
+Listen to me for a minute! A while back an Ol Mahum general came to me looking for a gift for the orcs. Apparently they had signed a peace agreement. He said that he wanted to present them with gifts as an expression of trust...<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30437-03.html">Tell him about the invasion plans of the Turek orcs.</a>
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30437-02.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-03.html

@@ -1,5 +1,6 @@
 <html><body>Trader Rolento:<br>
 He told me that the weapons would be used for hunting! He said that the Turek orcs were starving in the snow and needed the weapons to hunt wild hogs! He didn't say anything about an invasion. This is the first I've heard of that! Please believe me!<br>
 Sigh! And I thought I had really hammered out a good deal with that creature...<br>
-Damn those ol mahums! They're not going to get away with this! I have a plan!<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30437-03.htm">"Tell me about vour plan."</a></body></html>
+Damn those Ol Mahums! They're not going to get away with this! I have a plan!<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30437-04.html">"Tell me about your plan."</a>
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-04.html

@@ -0,0 +1,4 @@
+<html><body>Trader Rolento:<br>
+Go to <font color="LEVEL">the Orc Barracks</font> and deliver the weapons. You'll meet <font color="LEVEL">Turek Chief Burai</font> there. Tell him of the Ol Mahums treachery. That should set his blood to boil!<br>
+Take this mark from the Silver Scale Guild, and this Cargo Box as well. Don't worry. It's filled with crude weapons made of cheap brass.
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30437-03a.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-05.html

@@ -1,3 +1,4 @@
 <html><body>Trader Rolento:<br>
-Why are you still here? Have you already forgotten our plan? Take the weapons to the<font color="LEVEL"> Orc Barracks</font>. Tell<font color="LEVEL"> Turek Chief Burai</font> of the ol mahums treachery. The orcs will take care of them.<br>
-Keep the mark of the Silver Scale guild with you always! When you show it to them, they will know that I sent you. Now be on your way!</body></html>
+Why are you still here? Have you already forgotten our plan? Take the weapons to <font color="LEVEL">the Orc Barracks</font>. Tell <font color="LEVEL">Turek Chief Burai</font> of the Ol Mahums' treachery. The orcs will take care of them.<br>
+Keep the mark of the Silver Scale guild with you always! When you show it to them, they will know that I sent you. Now be on your way!
+</body></html>

+ 5 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30437-06.html

@@ -0,0 +1,5 @@
+<html><body>Trader Rolento:<br>
+What happened?<br>
+I knew it! They should keep each other busy for a while! Har har!<br>
+You saved me on that one. I owe you one, buddy.
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-01.html

@@ -0,0 +1,4 @@
+<html><body>Turek Chief Burai:<br>
+Tejakar Turek! May glory be heaped upon the soldiers of our tribe!<br>
+The Humans will soon feel our wrath!
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-01.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-02.html

@@ -1,4 +1,5 @@
 <html><body>Turek Chief Burai:<br>
 Who let you in here? Did you see my soldiers out there? You're very brave, stranger!<br>
-What's that about weapons? Ah, yes, the shipment from the ol mahums! But you don't look like a trader?! You look more like a mercenary!<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30617-02.htm">Show him the mark from the Silver Scale Guild.</a></body></html>
+What's that about weapons? Ah, yes, the shipment from the Ol Mahums! But you don't look like a trader?! You look more like a mercenary!<br>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30617-03.html">Show him the mark from the Silver Scale Guild.</a>
+</body></html>

+ 2 - 1
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-02.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-03.html

@@ -1,4 +1,5 @@
 <html><body>Turek Chief Burai:<br>
 That is just so Dwarf! They are such cowards!<br>
 These weapons will mean that brave Turek Warriors no longer need fear the Humans! We shall crush them mercilessly! Tejakar Turek!<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30617-03.htm">Show him the ol mahums operation order.</a></body></html>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30617-04.html">Show him the Ol Mahums' operation order.</a>
+</body></html>

+ 2 - 1
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-03.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-04.html

@@ -2,4 +2,5 @@
 ...?<br>
 This is unbelievable!<br>
 How dare they deceive us! Those filthy traitors!<br>
-<a action="bypass -h Quest 171_ActsOfEvil 30617-04.htm">"You've been played!"</a></body></html>
+<a action="bypass -h Quest Q00171_ActsOfEvil 30617-05.html">"You've been played!"</a>
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-05.html

@@ -0,0 +1,4 @@
+<html><body>Turek Chief Burai:<br>
+Kaaah aak!!! Listen to me, brave Turek Warriors! Gludin is no longer our target! We must annihilate our true enemy! Tomorrow morning we shall attack the barracks of the Ol Mahums!<br>
+You're a mercenary, right? Then I want to hire you to go and cut off the heads of the <font color="LEVEL">Ol Mahum captains</font>! Bring me back at least <font color="LEVEL">30 of their heads</font>! Then I will give you a wonderful prize!
+</body></html>

+ 3 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-06.html

@@ -0,0 +1,3 @@
+<html><body>Turek Chief Burai:<br>
+Go and cut off the heads of the <font color="LEVEL">Ol Mahum captains</font>! Bring back at least <font color="LEVEL">30</font> of them and I will give you a prize!
+</body></html>

+ 3 - 2
L2J_DataPack/dist/game/data/scripts/quests/171_ActsOfEvil/30617-05.htm → L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-07.html

@@ -1,4 +1,5 @@
 <html><body>Turek Chief Burai:<br>
-Good job! 30 good ol mahums!<br>
+Good job! 30 good Ol Mahums!<br>
 This is just the beginning of the carnage! They shall rue the day they deceived us! We will attack their barracks at dawn and give no quarter!<br>
-Go to Gludin and tell them that they are off the hook... For now. One day the mighty Turek tribe will sweep down like a black cloud and destroy them!</body></html>
+Go to Gludin and tell them that they are off the hook... For now. One day the mighty Turek tribe will sweep down like a black cloud and destroy them!
+</body></html>

+ 4 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/30617-08.html

@@ -0,0 +1,4 @@
+<html><body>Turek Chief Burai:<br>
+This is just the beginning of the carnage! The Ol Mahums will rue the day they deceived us! We will attack their barracks at dawn and give no quarter!<br>
+Go to Gludin and tell them that they are off the hook... For now. One day the mighty Turek tribe will sweep down like a black cloud and destroy them!
+</body></html>

+ 615 - 0
L2J_DataPack/dist/game/data/scripts/quests/Q00171_ActsOfEvil/Q00171_ActsOfEvil.java

@@ -0,0 +1,615 @@
+/*
+ * Copyright (C) 2004-2014 L2J DataPack
+ * 
+ * This file is part of L2J DataPack.
+ * 
+ * L2J DataPack is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J DataPack is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package quests.Q00171_ActsOfEvil;
+
+import com.l2jserver.gameserver.enums.QuestSound;
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.quest.Quest;
+import com.l2jserver.gameserver.model.quest.QuestState;
+import com.l2jserver.gameserver.network.NpcStringId;
+import com.l2jserver.gameserver.network.clientpackets.Say2;
+import com.l2jserver.gameserver.network.serverpackets.NpcSay;
+import com.l2jserver.gameserver.util.Util;
+
+/**
+ * Acts Of Evil (171)
+ * @author ivantotov
+ */
+public final class Q00171_ActsOfEvil extends Quest
+{
+	// NPCs
+	private final static int TRADER_ARODIN = 30207;
+	private static final int GUARD_ALVAH = 30381;
+	private final static int TYRA = 30420;
+	private final static int NETI = 30425;
+	private final static int TRADER_ROLENTO = 30437;
+	private final static int TUREK_CHIEF_BURAI = 30617;
+	// Items
+	private final static int BLADE_MOLD = 4239;
+	private final static int TYRAS_BILL = 4240;
+	private final static int RANGERS_REPORT1 = 4241;
+	private final static int RANGERS_REPORT2 = 4242;
+	private final static int RANGERS_REPORT3 = 4243;
+	private final static int RANGERS_REPORT4 = 4244;
+	private final static int WEAPONS_TRADE_CONTRACT = 4245;
+	private final static int ATTACK_DIRECTIVES = 4246;
+	private final static int CERTIFICATE_OF_THE_SILVER_GUILD = 4247;
+	private final static int ROLENTOS_CARGOBOX = 4248;
+	private final static int OL_MAHUM_CAPTAINS_HEAD = 4249;
+	// Monster
+	private static final int TUMRAN_BUGBEAR = 20062;
+	private static final int TUMRAN_BUGBEAR_WARRIOR = 20064;
+	private static final int OL_MAHUM_CAPTAIN = 20066;
+	private static final int OL_MAHUM_GENERAL = 20438;
+	private static final int TUREK_ORC_ARCHER = 20496;
+	private static final int TUREK_ORC_SKIRMISHER = 20497;
+	private static final int TUREK_ORC_SUPPLIER = 20498;
+	private static final int TUREK_ORC_FOOTMAN = 20499;
+	// Quest Monster
+	private static final int OL_MAHUM_SUPPORT_TROOP = 27190;
+	// Misc
+	private static final int MIN_LEVEL = 27;
+	
+	public Q00171_ActsOfEvil()
+	{
+		super(171, Q00171_ActsOfEvil.class.getSimpleName(), "Acts Of Evil");
+		addStartNpc(GUARD_ALVAH);
+		addTalkId(GUARD_ALVAH, TRADER_ARODIN, TYRA, NETI, TRADER_ROLENTO, TUREK_CHIEF_BURAI);
+		addKillId(TUMRAN_BUGBEAR, TUMRAN_BUGBEAR_WARRIOR, OL_MAHUM_CAPTAIN, OL_MAHUM_GENERAL, TUREK_ORC_ARCHER, TUREK_ORC_SKIRMISHER, TUREK_ORC_SUPPLIER, TUREK_ORC_FOOTMAN, OL_MAHUM_SUPPORT_TROOP);
+		addSpawnId(OL_MAHUM_SUPPORT_TROOP);
+		registerQuestItems(BLADE_MOLD, TYRAS_BILL, RANGERS_REPORT1, RANGERS_REPORT2, RANGERS_REPORT3, RANGERS_REPORT4, WEAPONS_TRADE_CONTRACT, ATTACK_DIRECTIVES, CERTIFICATE_OF_THE_SILVER_GUILD, ROLENTOS_CARGOBOX, OL_MAHUM_CAPTAINS_HEAD);
+	}
+	
+	@Override
+	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+	{
+		if ("DESPAWN".equals(event))
+		{
+			if (npc != null)
+			{
+				npc.broadcastPacket(new NpcSay(npc, Say2.NPC_ALL, NpcStringId.YOU_SHOULD_CONSIDER_GOING_BACK));
+				npc.deleteMe();
+			}
+			return super.onAdvEvent(event, npc, player);
+		}
+		
+		final QuestState qs = getQuestState(player, false);
+		if (qs == null)
+		{
+			return null;
+		}
+		
+		String htmltext = null;
+		switch (event)
+		{
+			case "30381-03.htm":
+			{
+				if (qs.isCreated())
+				{
+					qs.startQuest();
+					qs.setMemoState(1);
+					htmltext = event;
+				}
+				break;
+			}
+			case "30381-07.html":
+			{
+				qs.setMemoState(5);
+				qs.setCond(5, true);
+				htmltext = event;
+				break;
+			}
+			case "30381-12.html":
+			{
+				qs.setMemoState(7);
+				qs.setCond(7, true);
+				htmltext = event;
+				break;
+			}
+			case "30437-04.html":
+			{
+				takeItems(player, WEAPONS_TRADE_CONTRACT, 1);
+				giveItems(player, CERTIFICATE_OF_THE_SILVER_GUILD, 1);
+				giveItems(player, ROLENTOS_CARGOBOX, 1);
+				qs.setMemoState(9);
+				qs.setCond(9, true);
+				htmltext = event;
+				break;
+			}
+			case "30207-01a.html":
+			case "30437-02.html":
+			case "30437-03.html":
+			case "30617-03.html":
+			case "30617-04.html":
+			{
+				htmltext = event;
+				break;
+			}
+			case "30617-05.html":
+			{
+				takeItems(player, ATTACK_DIRECTIVES, 1);
+				takeItems(player, CERTIFICATE_OF_THE_SILVER_GUILD, 1);
+				takeItems(player, ROLENTOS_CARGOBOX, 1);
+				qs.setMemoState(10);
+				qs.setCond(10, true);
+				htmltext = event;
+				break;
+			}
+		}
+		return htmltext;
+	}
+	
+	@Override
+	public String onKill(L2Npc npc, L2PcInstance killer, boolean isSummon)
+	{
+		final QuestState qs = getQuestState(killer, false);
+		if ((qs != null) && qs.isStarted() && Util.checkIfInRange(1500, npc, killer, true))
+		{
+			switch (npc.getId())
+			{
+				case TUMRAN_BUGBEAR:
+				case TUMRAN_BUGBEAR_WARRIOR:
+				{
+					if (qs.isMemoState(5))
+					{
+						if (!hasQuestItems(killer, RANGERS_REPORT1))
+						{
+							giveItems(killer, RANGERS_REPORT1, 1);
+							playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+						}
+						else if (hasQuestItems(killer, RANGERS_REPORT1) && !hasQuestItems(killer, RANGERS_REPORT2))
+						{
+							if (getRandom(100) <= 19)
+							{
+								giveItems(killer, RANGERS_REPORT2, 1);
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+						else if (hasQuestItems(killer, RANGERS_REPORT1, RANGERS_REPORT2) && !hasQuestItems(killer, RANGERS_REPORT3))
+						{
+							if (getRandom(100) <= 19)
+							{
+								giveItems(killer, RANGERS_REPORT3, 1);
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+						else if (hasQuestItems(killer, RANGERS_REPORT1, RANGERS_REPORT2, RANGERS_REPORT3) && !hasQuestItems(killer, RANGERS_REPORT4))
+						{
+							if (getRandom(100) <= 19)
+							{
+								giveItems(killer, RANGERS_REPORT4, 1);
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+					}
+					break;
+				}
+				case OL_MAHUM_CAPTAIN:
+				{
+					if (qs.isMemoState(10) && (getQuestItemsCount(killer, OL_MAHUM_CAPTAINS_HEAD) < 30))
+					{
+						if (getRandom(100) <= 49)
+						{
+							giveItems(killer, OL_MAHUM_CAPTAINS_HEAD, 1);
+							if (getQuestItemsCount(killer, OL_MAHUM_CAPTAINS_HEAD) == 30)
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE);
+							}
+							else
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+					}
+					break;
+				}
+				case OL_MAHUM_GENERAL:
+				{
+					if (qs.isMemoState(6))
+					{
+						if (getRandom(100) <= 9)
+						{
+							if (!hasQuestItems(killer, WEAPONS_TRADE_CONTRACT))
+							{
+								giveItems(killer, WEAPONS_TRADE_CONTRACT, 1);
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+							if (!hasQuestItems(killer, ATTACK_DIRECTIVES))
+							{
+								giveItems(killer, ATTACK_DIRECTIVES, 1);
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+					}
+					break;
+				}
+				case TUREK_ORC_ARCHER:
+				{
+					if (qs.isMemoState(2) && (getQuestItemsCount(killer, BLADE_MOLD) < 20))
+					{
+						if (getRandom(100) < 53)
+						{
+							giveItems(killer, BLADE_MOLD, 1);
+							if (getQuestItemsCount(killer, BLADE_MOLD) == 20)
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE);
+							}
+							else
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) == 5)
+						{
+							addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) >= 10)
+						{
+							if (getRandom(100) <= 24)
+							{
+								addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+							}
+						}
+					}
+					break;
+				}
+				case TUREK_ORC_SKIRMISHER:
+				{
+					if (qs.isMemoState(2) && (getQuestItemsCount(killer, BLADE_MOLD) < 20))
+					{
+						if (getRandom(100) < 55)
+						{
+							giveItems(killer, BLADE_MOLD, 1);
+							if (getQuestItemsCount(killer, BLADE_MOLD) == 20)
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE);
+							}
+							else
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) == 5)
+						{
+							addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) >= 10)
+						{
+							if (getRandom(100) <= 24)
+							{
+								addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+							}
+						}
+					}
+					break;
+				}
+				case TUREK_ORC_SUPPLIER:
+				{
+					if (qs.isMemoState(2) && (getQuestItemsCount(killer, BLADE_MOLD) < 20))
+					{
+						if (getRandom(100) < 51)
+						{
+							giveItems(killer, BLADE_MOLD, 1);
+							if (getQuestItemsCount(killer, BLADE_MOLD) == 20)
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE);
+							}
+							else
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) == 5)
+						{
+							addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) >= 10)
+						{
+							if (getRandom(100) <= 24)
+							{
+								addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+							}
+						}
+					}
+					break;
+				}
+				case TUREK_ORC_FOOTMAN:
+				{
+					if (qs.isMemoState(2) && (getQuestItemsCount(killer, BLADE_MOLD) < 20))
+					{
+						if (getRandom(2) < 1)
+						{
+							giveItems(killer, BLADE_MOLD, 1);
+							if (getQuestItemsCount(killer, BLADE_MOLD) == 20)
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_MIDDLE);
+							}
+							else
+							{
+								playSound(killer, QuestSound.ITEMSOUND_QUEST_ITEMGET);
+							}
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) == 5)
+						{
+							addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+						}
+						if (getQuestItemsCount(killer, BLADE_MOLD) >= 10)
+						{
+							if (getRandom(100) <= 24)
+							{
+								addAttackPlayerDesire(addSpawn(OL_MAHUM_SUPPORT_TROOP, npc, true, 0, false), killer);
+							}
+						}
+					}
+					break;
+				}
+			}
+		}
+		return super.onKill(npc, killer, isSummon);
+	}
+	
+	@Override
+	public String onTalk(L2Npc npc, L2PcInstance player)
+	{
+		final QuestState qs = getQuestState(player, true);
+		final int memoState = qs.getMemoState();
+		String htmltext = getNoQuestMsg(player);
+		if (qs.isCreated())
+		{
+			if (npc.getId() == GUARD_ALVAH)
+			{
+				if (player.getLevel() < MIN_LEVEL)
+				{
+					htmltext = "30381-01.htm";
+				}
+				else
+				{
+					htmltext = "30381-02.htm";
+				}
+			}
+		}
+		else if (qs.isStarted())
+		{
+			switch (npc.getId())
+			{
+				case GUARD_ALVAH:
+				{
+					switch (qs.getCond())
+					{
+						case 1:
+						{
+							htmltext = "30381-04.html";
+							break;
+						}
+						case 2:
+						case 3:
+						{
+							htmltext = "30381-05.html";
+							break;
+						}
+						case 4:
+						{
+							htmltext = "30381-06.html";
+							break;
+						}
+						case 5:
+						{
+							if (hasQuestItems(player, RANGERS_REPORT1, RANGERS_REPORT2, RANGERS_REPORT3, RANGERS_REPORT4))
+							{
+								takeItems(player, RANGERS_REPORT1, 1);
+								takeItems(player, RANGERS_REPORT2, 1);
+								takeItems(player, RANGERS_REPORT3, 1);
+								takeItems(player, RANGERS_REPORT4, 1);
+								qs.setMemoState(6);
+								qs.setCond(6, true);
+								htmltext = "30381-09.html";
+							}
+							else
+							{
+								htmltext = "30381-08.html";
+							}
+							break;
+						}
+						case 6:
+						{
+							if (hasQuestItems(player, WEAPONS_TRADE_CONTRACT, ATTACK_DIRECTIVES))
+							{
+								htmltext = "30381-11.html";
+							}
+							else
+							{
+								htmltext = "30381-10.html";
+							}
+							break;
+						}
+						case 7:
+						{
+							htmltext = "30381-13.html";
+							break;
+						}
+						case 8:
+						{
+							htmltext = "30381-14.html";
+							break;
+						}
+						case 9:
+						{
+							htmltext = "30381-15.html";
+							break;
+						}
+						case 10:
+						{
+							htmltext = "30381-16.html";
+							break;
+						}
+						case 11:
+						{
+							giveAdena(player, 95000, true);
+							addExpAndSp(player, 159820, 9182);
+							htmltext = "30381-17.html";
+							qs.exitQuest(false, true);
+							break;
+						}
+					}
+					break;
+				}
+				case TRADER_ARODIN:
+				{
+					if (memoState == 1)
+					{
+						qs.setMemoState(2);
+						qs.setCond(2, true);
+						htmltext = "30207-01.html";
+					}
+					else if (memoState == 2)
+					{
+						if (getQuestItemsCount(player, BLADE_MOLD) < 20)
+						{
+							htmltext = "30207-02.html";
+						}
+						else
+						{
+							htmltext = "30207-03.html";
+						}
+					}
+					else if (memoState == 3)
+					{
+						takeItems(player, TYRAS_BILL, 1);
+						qs.setMemoState(4);
+						qs.setCond(4, true);
+						htmltext = "30207-04.html";
+					}
+					else if (memoState >= 4)
+					{
+						htmltext = "30207-05.html";
+					}
+					break;
+				}
+				case TYRA:
+				{
+					if (memoState == 2)
+					{
+						if (getQuestItemsCount(player, BLADE_MOLD) < 20)
+						{
+							htmltext = "30420-01.html";
+						}
+						else
+						{
+							takeItems(player, BLADE_MOLD, -1);
+							giveItems(player, TYRAS_BILL, 1);
+							qs.setMemoState(3);
+							qs.setCond(3, true);
+							htmltext = "30420-02.html";
+						}
+					}
+					else if (memoState == 3)
+					{
+						htmltext = "30420-03.html";
+					}
+					else if (memoState >= 4)
+					{
+						htmltext = "30420-04.html";
+					}
+					break;
+				}
+				case NETI:
+				{
+					if (memoState == 7)
+					{
+						qs.setMemoState(8);
+						qs.setCond(8, true);
+						htmltext = "30425-01.html";
+					}
+					else if (memoState == 8)
+					{
+						htmltext = "30425-02.html";
+					}
+					else if (memoState >= 9)
+					{
+						htmltext = "30425-03.html";
+					}
+					break;
+				}
+				case TRADER_ROLENTO:
+				{
+					if (memoState == 8)
+					{
+						htmltext = "30437-02.html";
+					}
+					else if (memoState == 9)
+					{
+						htmltext = "30437-05.html";
+					}
+					else if (memoState >= 10)
+					{
+						htmltext = "30437-06.html";
+					}
+					break;
+				}
+				case TUREK_CHIEF_BURAI:
+				{
+					if (memoState < 9)
+					{
+						htmltext = "30617-01.html";
+					}
+					else if (memoState == 9)
+					{
+						htmltext = "30617-02.html";
+					}
+					else if (memoState == 10)
+					{
+						if (getQuestItemsCount(player, OL_MAHUM_CAPTAINS_HEAD) < 30)
+						{
+							htmltext = "30617-06.html";
+						}
+						else
+						{
+							giveAdena(player, 8000, true);
+							takeItems(player, OL_MAHUM_CAPTAINS_HEAD, -1);
+							qs.setMemoState(11);
+							qs.setCond(11, true);
+							htmltext = "30617-07.html";
+						}
+					}
+					else if (memoState == 11)
+					{
+						htmltext = "30617-08.html";
+					}
+					break;
+				}
+			}
+		}
+		else if (qs.isCompleted())
+		{
+			if (npc.getId() == GUARD_ALVAH)
+			{
+				htmltext = getAlreadyCompletedMsg(player);
+			}
+		}
+		return htmltext;
+	}
+	
+	@Override
+	public String onSpawn(L2Npc npc)
+	{
+		startQuestTimer("DESPAWN", 200000, npc, null);
+		return super.onSpawn(npc);
+	}
+}

+ 2 - 0
L2J_DataPack/dist/game/data/scripts/quests/QuestMasterHandler.java

@@ -170,6 +170,7 @@ import quests.Q00167_DwarvenKinship.Q00167_DwarvenKinship;
 import quests.Q00168_DeliverSupplies.Q00168_DeliverSupplies;
 import quests.Q00169_OffspringOfNightmares.Q00169_OffspringOfNightmares;
 import quests.Q00170_DangerousSeduction.Q00170_DangerousSeduction;
+import quests.Q00171_ActsOfEvil.Q00171_ActsOfEvil;
 import quests.Q00172_NewHorizons.Q00172_NewHorizons;
 import quests.Q00173_ToTheIsleOfSouls.Q00173_ToTheIsleOfSouls;
 import quests.Q00174_SupplyCheck.Q00174_SupplyCheck;
@@ -628,6 +629,7 @@ public class QuestMasterHandler
 		Q00168_DeliverSupplies.class,
 		Q00169_OffspringOfNightmares.class,
 		Q00170_DangerousSeduction.class,
+		Q00171_ActsOfEvil.class,
 		Q00172_NewHorizons.class,
 		Q00173_ToTheIsleOfSouls.class,
 		Q00174_SupplyCheck.class,

+ 1 - 0
L2J_DataPack/dist/sql/game/updates/20141227update.sql

@@ -0,0 +1 @@
+UPDATE character_quests SET name='Q00171_ActsOfEvil' WHERE name='171_ActsOfEvil';