diff --git a/New Text Document.txt b/New Text Document.txt
index 2c6e2e2..1911ebc 100644
--- a/New Text Document.txt
+++ b/New Text Document.txt
@@ -1 +1 @@
-next: 17621
\ No newline at end of file
+next: 17637
\ No newline at end of file
diff --git a/data/XML/quests.xml b/data/XML/quests.xml
index 48a6741..0b947ac 100644
--- a/data/XML/quests.xml
+++ b/data/XML/quests.xml
@@ -400,6 +400,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -414,5 +427,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/creaturescripts/scripts/killing_in_the_name_of.lua b/data/creaturescripts/scripts/killing_in_the_name_of.lua
index 19adddf..dc9069b 100644
--- a/data/creaturescripts/scripts/killing_in_the_name_of.lua
+++ b/data/creaturescripts/scripts/killing_in_the_name_of.lua
@@ -1,21 +1,47 @@
local tasks = {
- ['crocodile'] = {progressStorage = 17608, killsRequired = 100},
- ['tarantula'] = {progressStorage = 17608, killsRequired = 100},
- ['carniphila'] = {progressStorage = 17608, killsRequired = 50},
- ['merlkin'] = {progressStorage = 17608, killsRequired = 100},
- ['kongra'] = {progressStorage = 17608, killsRequired = 100},
- ['sibang'] = {progressStorage = 17608, killsRequired = 100},
- ['thornback tortoise'] = {progressStorage = 17608, killsRequired = 100},
- ['gargoyle'] = {progressStorage = 17608, killsRequired = 65},
- ['quara constrictor scout'] = {progressStorage = 17608, killsRequired = 200},
- ['quara hydromancer scout'] = {progressStorage = 17608, killsRequired = 200},
- ['quara mantassin scout'] = {progressStorage = 17608, killsRequired = 200},
- ['quara pincher scout'] = {progressStorage = 17608, killsRequired = 200},
- ['quara predator scout'] = {progressStorage = 17608, killsRequired = 200},
- ['ancient scarab'] = {progressStorage = 17608, killsRequired = 125},
- ['wyvern'] = {progressStorage = 17608, killsRequired = 100},
- ['bonebeast'] = {progressStorage = 17608, killsRequired = 100},
- ['dragon'] = {progressStorage = 17608, killsRequired = 200},
+ -- Grizzly Adams
+ ['crocodile'] = {taskerStorage = 17608, progressStorage = 17609, killsRequired = 100},
+ ['tarantula'] = {taskerStorage = 17608, progressStorage = 17610, killsRequired = 100},
+ ['carniphila'] = {taskerStorage = 17608, progressStorage = 17611, killsRequired = 50},
+ ['merlkin'] = {taskerStorage = 17608, progressStorage = 17612, killsRequired = 100},
+ ['kongra'] = {taskerStorage = 17608, progressStorage = 17612, killsRequired = 100},
+ ['sibang'] = {taskerStorage = 17608, progressStorage = 17612, killsRequired = 100},
+ ['thornback tortoise'] = {taskerStorage = 17608, progressStorage = 17613, killsRequired = 100},
+ ['gargoyle'] = {taskerStorage = 17608, progressStorage = 17614, killsRequired = 65},
+ ['quara constrictor scout'] = {taskerStorage = 17608, progressStorage = 17616, killsRequired = 200},
+ ['quara hydromancer scout'] = {taskerStorage = 17608, progressStorage = 17616, killsRequired = 200},
+ ['quara mantassin scout'] = {taskerStorage = 17608, progressStorage = 17616, killsRequired = 200},
+ ['quara pincher scout'] = {taskerStorage = 17608, progressStorage = 17616, killsRequired = 200},
+ ['quara predator scout'] = {taskerStorage = 17608, progressStorage = 17616, killsRequired = 200},
+ ['ancient scarab'] = {taskerStorage = 17608, progressStorage = 17617, killsRequired = 125},
+ ['wyvern'] = {taskerStorage = 17608, progressStorage = 17618, killsRequired = 100},
+ ['bonebeast'] = {taskerStorage = 17608, progressStorage = 17619, killsRequired = 100},
+ ['dragon'] = {taskerStorage = 17608, progressStorage = 17620, killsRequired = 200},
+ ['quara constrictor'] = {taskerStorage = 17608, progressStorage = 17621, killsRequired = 600},
+ ['quara hydromancer'] = {taskerStorage = 17608, progressStorage = 17621, killsRequired = 600},
+ ['quara mantassin'] = {taskerStorage = 17608, progressStorage = 17621, killsRequired = 600},
+ ['quara pincher'] = {taskerStorage = 17608, progressStorage = 17621, killsRequired = 600},
+ ['quara predator'] = {taskerStorage = 17608, progressStorage = 17621, killsRequired = 600},
+ ['giant spider'] = {taskerStorage = 17608, progressStorage = 17622, killsRequired = 500},
+ ['banshee'] = {taskerStorage = 17608, progressStorage = 17623, killsRequired = 300},
+ ['lich'] = {taskerStorage = 17608, progressStorage = 17624, killsRequired = 500},
+ ['acolyte of the cult'] = {taskerStorage = 17608, progressStorage = 17625, killsRequired = 500},
+ ['adept of the cult'] = {taskerStorage = 17608, progressStorage = 17625, killsRequired = 500},
+ ['enlightened of the cult'] = {taskerStorage = 17608, progressStorage = 17625, killsRequired = 500},
+ ['novice of the cult'] = {taskerStorage = 17608, progressStorage = 17625, killsRequired = 500},
+ ['hydra'] = {taskerStorage = 17608, progressStorage = 17626, killsRequired = 650},
+ ['serpent spawn'] = {taskerStorage = 17608, progressStorage = 17627, killsRequired = 800},
+ ['behemoth'] = {taskerStorage = 17608, progressStorage = 17628, killsRequired = 700},
+ ['dragon lord'] = {taskerStorage = 17608, progressStorage = 17629, killsRequired = 600},
+ ['hand of cursed fate'] = {taskerStorage = 17608, progressStorage = 17630, killsRequired = 200},
+ ['juggernaut'] = {taskerStorage = 17608, progressStorage = 17631, killsRequired = 200},
+
+ -- Daniel Steelsoul
+ ['troll'] = {taskerStorage = 17632, progressStorage = 17633, killsRequired = 100},
+ ['goblin'] = {taskerStorage = 17632, progressStorage = 17634, killsRequired = 150},
+ ['rotworm'] = {taskerStorage = 17632, progressStorage = 17635, killsRequired = 150},
+ ['carrion worm'] = {taskerStorage = 17632, progressStorage = 17635, killsRequired = 150},
+ ['cyclops'] = {taskerStorage = 17632, progressStorage = 17636, killsRequired = 500},
}
function onKill(player, target)
@@ -25,11 +51,11 @@ function onKill(player, target)
local task = tasks[target:getName():lower()]
if task ~= nil then
- local inProgressQuest = player:getStorageValue(task.progressStorage)
- if inProgressQuest > 0 then
- local playerQuestKills = player:getStorageValue(inProgressQuest)
+ local inProgressQuest = player:getStorageValue(task.taskerStorage)
+ if inProgressQuest == task.progressStorage then
+ local playerQuestKills = player:getStorageValue(task.progressStorage)
if playerQuestKills < task.killsRequired then
- player:setStorageValue(inProgressQuest, playerQuestKills + 1)
+ player:setStorageValue(task.progressStorage, playerQuestKills + 1)
end
end
end
diff --git a/data/npc/daniel.npc b/data/npc/daniel.npc
index dbdc126..0d5d62f 100644
--- a/data/npc/daniel.npc
+++ b/data/npc/daniel.npc
@@ -87,4 +87,32 @@ VANISH,! -> "PRAISE TO BANOR!"
Topic=2,"yes" -> "Take this!", Burning(10,1), EffectOpp(5), EffectMe(8)
Topic=2 -> "Then be more careful with your words!"
+
+# Level 6-49
+"task",QuestValue(17632)=0,level>5,level<50 -> "I may have several tasks for you citizen. Edron needs a help in the hunting of: trolls, goblins, rotworms or cyclopes.", Topic=3
+Topic=3,"troll" -> Amount=17633, "The trolls living west of our city have become quite a nuisance lately. Not that they are really dangerous to us, but still, we must show them that there's a line they shouldn't cross. ...",
+ "I want you to kill 100 of them. If you succeed, I'll provide you some pretty coins and experience. Are you willing to take on this task?", Topic=4
+Topic=3,"goblin" -> Amount=17634, "It's not only the trolls invading from the west coast. Goblins also have a lair there where they constantly prepare for their next attack. ...",
+ "If you could kill 150 goblins for us, that'd be a good start. Would you be willing to help us in this matter?", Topic=4
+Topic=3,"rotworm" -> Amount=17635, "Maybe you have noticed the numerous rotworms that burrowed under Edron. They're quite a pest. You look strong enough to be able to vanquish a few for us. Do you think you can kill 150 rotworms?", Topic=4
+Topic=3,"cyclop" -> Amount=17636, "We've successfully driven the minotaurs off this island, but the underground city of the cyclopes - Cyclopolis - is still standing. ...",
+ "We're always looking for adventurers who'd help us decimate the number of cyclopes. Will you assist the city of Edron by killing 500 of them?", Topic=4
+
+"task",QuestValue(17633)=100 -> Amount=1000, Price=1000, "Very nice, %N. That will push the trolls' forces back a little. Here is your reward!", SetQuestValue(QuestValue(17632),99999), SetQuestValue(17632,0), Experience(Amount), CreateMoney
+"task",QuestValue(17634)=150 -> Amount=1500, Price=1000, "Congratulations, you've fought well against the goblin plague. Thank you! Here is your reward!", SetQuestValue(QuestValue(17632),99999), SetQuestValue(17632,0), Experience(Amount), CreateMoney
+"task",QuestValue(17635)=150 -> Amount=1000, Price=1500, "Well done! Thanks to you the city is a bit safer. Here's your reward!", SetQuestValue(QuestValue(17632),99999), SetQuestValue(17632,0), Experience(Amount), CreateMoney
+"task",QuestValue(17636)=500 -> Amount=15000, Price=5000, "Very good job, %N. You've been a great help. Here's your reward!", SetQuestValue(QuestValue(17632),99999), SetQuestValue(17632,0), Experience(Amount), CreateMoney
+
+# Speaks
+"task",QuestValue(17632)>0 -> "Your current task is in progress. Follow the status of your task in the quest log. If you wish to cancel your in-progress task then don't be afraid and feel free to cancel."
+
+Topic=4,"yes" -> "I'm pleased with your eagerness. Good luck!", SetQuestValue(17632,Amount), SetQuestValue(Amount,0)
+Topic=4 -> "Maybe next time."
+
+"cancel",QuestValue(17632)>0 -> "Are you sure you want to cancel your current task?", Topic=6
+Topic=6,"yes" -> "Alright! Feel free to do other tasks for us.", SetQuestValue(QuestValue(17632),99999), SetQuestValue(17632,0)
+Topic=6 -> "Good! Speak to me again when you are done hunting."
+
+"task" -> "I don't have any tasks for your level."
+
}
diff --git a/data/npc/grizzlyadams.npc b/data/npc/grizzlyadams.npc
index 6ae261d..13dc2e2 100644
--- a/data/npc/grizzlyadams.npc
+++ b/data/npc/grizzlyadams.npc
@@ -7,6 +7,16 @@ Home = [32693,32767,6]
Radius = 3
Behaviour = {
+ADDRESS,"hello$",QuestValue(17615)>99,! -> "Welcome back elite hunter %N of the 'Paw and Fur - Hunting Elite'. Feel free to do tasks for us."
+ADDRESS,"hi$",QuestValue(17615)>99,! -> *
+ADDRESS,"hello$",QuestValue(17615)>69,! -> "Welcome back trophy hunter %N of the 'Paw and Fur - Hunting Elite'. Feel free to do tasks for us."
+ADDRESS,"hi$",QuestValue(17615)>69,! -> *
+ADDRESS,"hello$",QuestValue(17615)>39,! -> "Welcome back big game hunter %N of the 'Paw and Fur - Hunting Elite'. Feel free to do tasks for us."
+ADDRESS,"hi$",QuestValue(17615)>39,! -> *
+ADDRESS,"hello$",QuestValue(17615)>19,! -> "Welcome back ranger %N of the 'Paw and Fur - Hunting Elite'. Feel free to do tasks for us."
+ADDRESS,"hi$",QuestValue(17615)>19,! -> *
+ADDRESS,"hello$",QuestValue(17615)>9,! -> "Welcome back huntsman %N of the 'Paw and Fur - Hunting Elite'. Feel free to do tasks for us."
+ADDRESS,"hi$",QuestValue(17615)>9,! -> *
ADDRESS,"hello$",QuestValue(17607)=1,! -> "Welcome to the 'Paw and Fur - Hunting Elite' %N. Feel free to do tasks for us."
ADDRESS,"hi$",QuestValue(17607)=1,! -> *
ADDRESS,"hello$",! -> "Welcome %N. Would you like to join the 'Paw and Fur - Hunting Elite'?"
@@ -26,6 +36,13 @@ VANISH,! -> "Happy hunting, old chap!"
"task",QuestValue(17607)=0 -> "Firstly, you have to join us in our society %N. Would you like to join the 'Paw and Fur - Hunting Elite'?"
"mission",QuestValue(17607)=0 -> *
+# Trades
+"do","you","sell" -> "I am looking for Sabrehaven talons however I will need them later."
+"do","you","have" -> *
+"offer" -> *
+"trade" -> *
+"sabrehaven","talon" -> "We as a hunting society know very interesting purposes of those magical talons. But only the loyal hunters of the 'Paw and Fur - Hunting Elite' are allowed to know."
+
# Level 6-49
"task",QuestValue(17608)=0,level>5,level<50 -> "Alright, what would you like to hunt? Crocodiles, tarantulas, carniphilas, apes, thornback tortoises or gargoyles.", Topic=1
Topic=1,"crocodile" -> Amount=17609, "They are a nuisance! You'll find them here in the jungle near the river. Hunt 100 crocodiles and you'll get a nice reward. Interested?", Topic=2
@@ -44,7 +61,7 @@ Topic=1 -> "Maybe next time."
"task",QuestValue(17614)=65 -> Data=3, Amount=5000, Price=2500, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
# Level 50-79
-"task",QuestValue(17608)=0,level>49,level<80 -> "Alright, what would you like to hunt? Quara scouts, ancient scarabs, wyverns, bonebeasts, dragons.", Topic=5
+"task",QuestValue(17608)=0,level>49,level<80 -> "Alright, what would you like to hunt? Quara scouts, ancient scarabs, wyverns, bonebeasts or dragons.", Topic=5
Topic=5,"quara" -> Amount=17616, "The scouts can be found on Malada, one of the Shattered Isles. Your task is to kill 200 quara scouts. I accept quara constrictor scouts, quara hydromancer scouts, quara mantassin scouts, quara pincher scouts and quara predator scouts, are you in?", Topic=2
Topic=5,"scarab" -> Amount=17617, "They can be found in tombs beneath the desert around Ankrahmun. Hunt 125 of them. Interested?", Topic=2
Topic=5,"wyvern" -> Amount=17618, "They can be found all over Tibia. Hunt 100 wyverns. Interested?", Topic=2
@@ -57,6 +74,36 @@ Topic=5,"dragon" -> Amount=17620, "They can be found all over Tibia. Hunt 200 dr
"task",QuestValue(17619)=100 -> Data=3, Amount=9000, Price=9000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
"task",QuestValue(17620)=200 -> Data=2, Amount=10000, Price=4000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+# Level 80-129
+"task",QuestValue(17608)=0,level>79,level<130 -> "Alright, what would you like to hunt? Underwater quara, giant spiders, banshees, lichs or cults.", Topic=6
+Topic=6,"quara" -> Amount=17621, "As you wish. Seek out a quara settlement and hunt 600 quara, it doesn't matter which type you hunt except scouts. Alright?", Topic=2
+Topic=6,"spider" -> Amount=17622, "Never liked spiders. Simply too many legs. And I always find them in my bath! Those nasty creepy-crawlies are a threat to the hygiene of every living being in Tibia. Hunt 500 of them. Okay?", Topic=2
+Topic=6,"banshee" -> Amount=17623, "The Banshee is an undead creature of sheer terror. There is several places where you can hunt them. Hunt 300 of them. Okay?", Topic=2
+Topic=6,"lich" -> Amount=17624, "Lich hell. Ugh, to become a Lich is the ultimate goal of all those who follow the dark path of necromancy. Hunt 500 of them. Alright?", Topic=2
+Topic=6,"cult" -> Amount=17625, "I hate those strange cult fanatics. Hunt 500 of any cult follower. Alright?", Topic=2
+
+"task",QuestValue(17621)=600 -> Data=4, Amount=80000, Price=25000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17622)=500 -> Data=3, Amount=70000, Price=30000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17623)=300 -> Data=5, Amount=100000, Price=20000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17624)=500 -> Data=4, Amount=30000, Price=40000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17625)=500 -> Data=2, Amount=35000, Price=35000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+
+# Level 130+
+"task",QuestValue(17608)=0,level>129 -> "Alright, what would you like to hunt? Hydras, serpent spawns, behemoths, dragon lords, hand of cursed fates, juggernauts.", Topic=7
+Topic=7,"hydra" -> Amount=17626, "The hydras are located in the eastern jungle of Tiquanda and there are several mountain caves that are inhabited by them. Your task is to hunt a mere 650 hydras. Are you willing to do that?", Topic=2
+Topic=7,"serpent" -> Amount=17627, "Very dangerous, nasty and slimy creatures. They live deep in the old ruins of Banuta. I think a mere 800 serpent spawns should do the trick. What do you say?", Topic=2
+Topic=7,"behemoth" -> Amount=17628, "Behemoths must be kept away from the settlements at all costs. You'll find them east of here in the taboo-area or under Cyclopolis in Edron. Go there and hunt a few of them - shall we say... 700? Are you up for that?", Topic=2
+Topic=7,"dragon" -> Amount=17629, "They can be found all over Tibia. Hunt 600 dragon lords. Interested?", Topic=2
+Topic=7,"hand" -> Amount=17630, "Those creatures are annoying and obviously lacking a head. Hunt 200 of them. Interested?", Topic=2
+Topic=7,"juggernaut" -> Amount=17631, "Juggernauts are known to be able to slash the head of a dragon with one hit. Hunt 200 of them. Interested?", Topic=2
+
+"task",QuestValue(17626)=650 -> Data=4, Amount=200000, Price=50000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17627)=800 -> Data=5, Amount=300000, Price=80000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17628)=700 -> Data=5, Amount=250000, Price=60000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17629)=600 -> Data=5, Amount=100000, Price=45000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17630)=200 -> Data=5, Amount=150000, Price=100000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+"task",QuestValue(17631)=200 -> Data=6, Amount=250000, Price=200000, "Spiffing work, old chap. What would you like to get for reward: %A EXP or %P gold?", Topic=4
+
# Speaks
"task",QuestValue(17608)>0 -> "Your current task is in progress. Follow the status of your task in the quest log. If you wish to cancel your in-progress task then don't be afraid and feel free to cancel."
@@ -71,6 +118,19 @@ Topic=2 -> "Maybe later."
Topic=3,"yes" -> "Alright! Feel free to do other tasks for us.", SetQuestValue(QuestValue(17608),99999), SetQuestValue(17608,0)
Topic=3 -> "Good! Speak to me again when you are done hunting."
+"rank",QuestValue(17615)>99 -> Amount=QuestValue(17615), "At this time, you have %A points and your rank is Elite Hunter."
+"point",QuestValue(17615)>99 -> *
+"rank",QuestValue(17615)>69 -> Amount=QuestValue(17615), "At this time, you have %A points and your rank is Trophy Hunter."
+"point",QuestValue(17615)>69 -> *
+"rank",QuestValue(17615)>39 -> Amount=QuestValue(17615), "At this time, you have %A points and your rank is Big Game Hunter."
+"point",QuestValue(17615)>39 -> *
+"rank",QuestValue(17615)>19 -> Amount=QuestValue(17615), "At this time, you have %A points and your rank is Ranger."
+"point",QuestValue(17615)>19 -> *
+"rank",QuestValue(17615)>9 -> Amount=QuestValue(17615), "At this time, you have %A points and your rank is Huntsman."
+"point",QuestValue(17615)>9 -> *
+"rank",QuestValue(17607)=1 -> Amount=QuestValue(17615), "At this time, you have %A points and your rank is Member."
+"point",QuestValue(17607)=1 -> *
+
"mission" -> "We prefer to call that 'task' in the society of the 'Paw and Fur - Hunting Elite'."
}
diff --git a/data/talkactions/scripts/query_houses.lua b/data/talkactions/scripts/query_houses.lua
index 13de481..e49b99d 100644
--- a/data/talkactions/scripts/query_houses.lua
+++ b/data/talkactions/scripts/query_houses.lua
@@ -23,7 +23,7 @@ function onSay(player, words, param)
if isFound then
local position = item:getPosition()
- player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Your current position is: " .. position.x .. ", " .. position.y .. ", " .. position.z .. ".")
+ player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Item position is: " .. position.x .. ", " .. position.y .. ", " .. position.z .. ".")
end
end
end