mirror of
https://github.com/ErikasKontenis/SabrehavenServer.git
synced 2025-04-29 17:19:20 +02:00
Merge branch '32-introduce-7-92-client-support' into 'master'
Resolve "Introduce 7.92 Client Support" Closes #32 See merge request ErikasKontenis/Sabrehaven!28
This commit is contained in:
commit
1d16e69dee
@ -1 +1 @@
|
||||
next: 17584
|
||||
next: 17723
|
25
README.md
25
README.md
@ -1,20 +1,13 @@
|
||||
# Nostalrius 7.7
|
||||
Nostalrius is a 7.7 clone project that has been in development for a long time, it is based on TheForgottenServer 1.2 fork.
|
||||
# Sabrehaven
|
||||
Sabrehaven is a 7.8-7.92 clone project that has been in development for a long time, it is based on TheForgottenServer 1.2 fork and Nostalrius 7.7.
|
||||
|
||||
- You can find here the most complete 7.72 Tibia replica that has ever been made
|
||||
- Formulas, monsters behavior, the map, everything!
|
||||
# Sabrehaven Tools
|
||||
|
||||
- https://gitlab.com/ErikasKontenis/SabrehavenMapEditor
|
||||
- https://gitlab.com/ErikasKontenis/sabrehavenitemeditor
|
||||
- https://gitlab.com/ErikasKontenis/sabrehavenxmllooteditor
|
||||
|
||||
# Credits
|
||||
|
||||
- Alejandro Mujica (Ezzz in otland) - I'm the main developer and programmer of this game server
|
||||
- Kevin Luiz (long time friendship, also helped get everything fixed and stable)
|
||||
- Zakaria Ziady (compromised myself into getting the true formulas of the game server)
|
||||
|
||||
# Map Editor
|
||||
|
||||
- https://github.com/TwistedScorpio/Map-Editor
|
||||
|
||||
# Donations
|
||||
|
||||
- If you would like to support my work and also to continue to keep me motivated in updating missing details, please, consider donating
|
||||
- kenshin2565@hotmail.com
|
||||
- Erikas Kontenis for the Sabrehaven Platform
|
||||
- Nostalrius and TheForgottenServer Team
|
@ -8,6 +8,7 @@ removeChargesFromRunes = true
|
||||
stairJumpExhaustion = 0
|
||||
experienceByKillingPlayers = false
|
||||
expFromPlayersLevelRange = 75
|
||||
distanceWeaponsDropOnGround = false
|
||||
|
||||
-- Skull System
|
||||
banLength = 30 * 24 * 60 * 60
|
||||
@ -37,6 +38,7 @@ replaceKickOnLogin = true
|
||||
maxPacketsPerSecond = -1
|
||||
autoStackCumulatives = false
|
||||
moneyRate = 1
|
||||
clientVersion = 792
|
||||
|
||||
-- Deaths
|
||||
-- NOTE: Leave deathLosePercent as -1 if you want to use the default
|
||||
@ -68,8 +70,8 @@ mysqlSock = ""
|
||||
allowChangeOutfit = true
|
||||
freePremium = true
|
||||
kickIdlePlayerAfterMinutes = 15
|
||||
maxMessageBuffer = 4
|
||||
showMonsterLoot = false
|
||||
maxMessageBuffer = 8
|
||||
showMonsterLoot = true
|
||||
blockHeight = false
|
||||
dropItems = false
|
||||
|
||||
|
512
data/XML/quests.xml
Normal file
512
data/XML/quests.xml
Normal file
@ -0,0 +1,512 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<quests>
|
||||
<quest name="Factions" startstorageid="278" startstoragevalue="1">
|
||||
<mission name="The Marid and the Efreet - Djinn Greeting" storageid="278" startvalue="1" endvalue="1" ignoreendvalue="true">
|
||||
<missionstate id="1" description="Melchior told you the word "Djanni'hah" which can be used to talk to Djinns. Be aware that once you become an ally of one Djinn race, you cannot switch sides anymore." />
|
||||
</mission>
|
||||
<mission name="The Marid and the Efreet - Marid Faction" storageid="278" startvalue="2" endvalue="2">
|
||||
<missionstate id="2" description="You have joined the Marid. These friendly, blue Djinns are honest and fair allies. You have pledged eternal loyalty to King Gabel and may enter Asha'daramai freely. Djanni'hah!" />
|
||||
</mission>
|
||||
<mission name="The Marid and the Efreet - Efreet Faction" storageid="278" startvalue="3" endvalue="3">
|
||||
<missionstate id="3" description="You have joined the Efreet. These evil, green Djinns are always up to mischievous pranks. You have pledged eternal loyalty to King Malor and may enter Mal'ouquah freely. Djanni'hah!" />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="Friends and Traders" startstorageid="17595" startstoragevalue="1">
|
||||
<mission name="The Sweaty Cyclops" storageid="17500" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Big Ben, the cyclops in Ab'Dendriel sends you to bring him 3 bast skirts for his woman. After this he will help you to forge different steel." />
|
||||
<missionstate id="2" description="Big Ben, the cyclops in Ab'Dendriel will help you to forge different steel now. Just ask him if you need something." />
|
||||
</mission>
|
||||
<mission name="The Mermaid Marina" storageid="17504" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Marina, the mermaid north of Sabrehaven sends you to bring her 50 honeycombs. After this she will help you create spool of yarn." />
|
||||
<missionstate id="2" description="Marina, the mermaid north of Sabrehaven will help you to create a spool of yarn from 10 pieces of spider silk. Just ask her if you need something." />
|
||||
</mission>
|
||||
<mission name="The Blessed Stake" storageid="17576" startvalue="1" endvalue="12">
|
||||
<missionstate id="1" description="Quentin told you about an old prayer which can bind holy energy to an object. Each of its ten lines has to be recited by a different priest though. Bring Quentin a wooden stake from Gamon to start." />
|
||||
<missionstate id="2" description="You received Quentin's prayer: "Light shall be near - and darkness afar". Now, bring your stake to Tibra in the Carlin church for the next line of the prayer." />
|
||||
<missionstate id="3" description="You received Tibra's prayer: "Hope may fill your heart - doubt shall be banned". Now, bring your stake to Maealil in the Elven settlement for the next line of the prayer." />
|
||||
<missionstate id="4" description="You received Maealil's prayer: "Peace may fill your soul - evil shall be cleansed". Now, bring your stake to Yberius in the Venore temple for the next line of the prayer." />
|
||||
<missionstate id="5" description="You received Yberius' prayer: "Protection will be granted - from dangers at hand". Now, bring your stake to Isimov in the dwarven settlement for the next line of the prayer." />
|
||||
<missionstate id="6" description="You received Isimov's prayer: "Unclean spirits shall be repelled". Now, bring your stake to Amanda in Edron for the next line of the prayer." />
|
||||
<missionstate id="7" description="You received Amanda's prayer: "Wicked curses shall be broken". Now, bring your stake to Kasmir in Darashia for the next line of the prayer." />
|
||||
<missionstate id="8" description="You received Kasmir's prayer: "Let there be honour and humility". Now, bring your stake to Rahkem in Ankrahmun for the next line of the prayer." />
|
||||
<missionstate id="9" description="You received Rahkem's prayer: "Let there be power and compassion". Now, bring your stake to Brewster in Port Hope for the next line of the prayer." />
|
||||
<missionstate id="10" description="You received Brewster's prayer: "Your hand shall be guided - your feet shall walk in harmony". Now, bring your stake to Tyrias in Liberty Bay for the next line of the prayer." />
|
||||
<missionstate id="11" description="You received Tyrias' prayer: "Your mind shall be a vessel for joy, light and wisdom". He wasn't exactly happy though and said that if you need some mumbo jumbo again, you should rather go to Chondur." />
|
||||
<missionstate id="12" description="Chondur was surprised to hear that you had to travel through all of Tibia to have your wooden stake blessed. He offered you help with the blessing if you should need one again in the future." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="Outfit and Addon Quests" startstorageid="17594" startstoragevalue="1">
|
||||
<mission name="Assassin Addon: The Red Death" storageid="17562" startvalue="18" endvalue="19" ignoreendvalue="true">
|
||||
<missionstate id="18" description="Atrad wants only two items from you for his old katana: a behemoth claw and a nose ring, both at the same time. He also told you about a "horned fox" who wears such as nose ring" />
|
||||
<missionstate id="19" description="You have received the second assassin addon." />
|
||||
</mission>
|
||||
<mission name="Citizen Addon: Backpack" storageid="18502" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Collect 100 pieces of minotaur leather and bring it to either Amber or Lubo to have them make a backpack addon for you." />
|
||||
<missionstate id="2" description="You delivered 100 pieces of minotaur leather. Some time is needed to make the backpack for you though. You should check back later and ask either Amber or Lubo for your backpack." />
|
||||
<missionstate id="3" description="You got the outfit!" />
|
||||
</mission>
|
||||
<mission name="Citizen Addon: Feather Hat" storageid="18501" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Collect a legion helmet, 100 chicken feathers and 50 honeycombs and bring them to either Hanna or Norma to have them make a feather hat addon for you." />
|
||||
<missionstate id="2" description="You got the outfit!" />
|
||||
</mission>
|
||||
<mission name="Barbarian Outfit Quest" storageid="17532" startvalue="1" endvalue="17">
|
||||
<missionstate id="1" description="Bron told you that his brother Ajax in Northport needs to learn that violence is not always the answer. He told you to make his brother angry, then show him that all he needed to do was say 'please' to fix the situation." />
|
||||
<missionstate id="2" description="You will need to leave Ajax alone for an hour, then return to him." />
|
||||
<missionstate id="3" description="Ajax told you that he has thought about it, and that violence is not always good. Return to Bron now, and tell him that Ajax said fist not always good" />
|
||||
<missionstate id="4" description="Bron mentioned that he has someone in his house that he doesn't like, and he wants you to get advice from Ajax about how to handle the situation. Go back to Ajax and ask him about Gelagos" />
|
||||
<missionstate id="5" description="Ajax told you his brother needs Fighting Spirit, and that you should get some from a Djinn and give it to him." />
|
||||
<missionstate id="6" description="You brought Bron the Fighting Spirit. He acted a little strange." />
|
||||
<missionstate id="7" description="In order to make a shirt as a present for Ajax, Bron wants you to bring him 50 Pieces of Red Cloth and 50 Pieces of Green Cloth." />
|
||||
<missionstate id="8" description="Bron wants you to bring him 10 Spider Silk Yarn." />
|
||||
<missionstate id="9" description="Bron wants you to bring him the Warrior's Sweat." />
|
||||
<missionstate id="10" description="You brought him all required items! accept it!" />
|
||||
<missionstate id="11" description="You got the Barbarian Wig Addon! Bring now the present from Bron to Ajax!" />
|
||||
<missionstate id="12" description="Bring Ajax in Northport 100 Iron Ore." />
|
||||
<missionstate id="13" description="Bring Ajax 1 Huge Chunk of Crude Iron." />
|
||||
<missionstate id="14" description="Bring Ajax 50 Perfect Behemoth Fang" />
|
||||
<missionstate id="15" description="Bring Ajax 50 Lizard Leather" />
|
||||
<missionstate id="16" description="Come later in 2 hours and ask Ajax for the axe." />
|
||||
<missionstate id="17" description="You got the Axe Addon!" />
|
||||
</mission>
|
||||
<mission name="Beggar Outfit: The Newest Fashion" storageid="17563" startvalue="1" endvalue="6">
|
||||
<missionstate id="1" description="Your current task is to bring Hugo 20 pieces of brown cloth, like the worn and ragged ghoul clothing." />
|
||||
<missionstate id="2" description="Your current task is to bring 50 pieces of minotaur leather to Hugo. If you don't know how to get leather, you should ask Kalvin." />
|
||||
<missionstate id="3" description="Your current task is to bring 10 bat wings to Hugo." />
|
||||
<missionstate id="4" description="Your current task is to bring 30 heaven blossoms to Hugo. Elves are said to cultivate these flowers." />
|
||||
<missionstate id="5" description="You brought all items required for the "poor man's look" to Hugo. He told you to come back to him after a whole day has passed, then the outfit should be finished." />
|
||||
<missionstate id="6" description="You got the outfit!" />
|
||||
</mission>
|
||||
<mission name="Druid Outfit Quest" storageid="17535" startvalue="1" endvalue="10">
|
||||
<missionstate id="1" description="Ceiron sends you to collect a sample of the blooming Griffinclaw." />
|
||||
<missionstate id="2" description="Ask Ceiron for task." />
|
||||
<missionstate id="3" description="Take Ceirons waterskin and try to fill it with water from this special trickle. In the mountains between Ankrahmun and Tiquanda are two hydra lairs." />
|
||||
<missionstate id="4" description="Ask Ceiron for task." />
|
||||
<missionstate id="5" description="Bring Ceiron 100 ounces of demon dust." />
|
||||
<missionstate id="6" description="Ask Ceiron for task." />
|
||||
<missionstate id="7" description="The last mission is to find and retrieve Ceiron's Wolf Tooth Chain lost inside the Orc Fortress." />
|
||||
<missionstate id="8" description="Ask Ceiron for Faolan." />
|
||||
<missionstate id="9" description="Head over to Cormaya, find A Majestic Warwolf's Cave and ask her about an addon." />
|
||||
<missionstate id="10" description="You got the Outfit!" />
|
||||
</mission>
|
||||
<mission name="Hunter Outfit Quest" storageid="17539" startvalue="1" endvalue="5">
|
||||
<missionstate id="1" description="Elane sends you to Liberty Bay to bring her the Crossbow from the Cult." />
|
||||
<missionstate id="2" description="Bring Elane 100 pieces of lizard leather and 100 pieces of red dragon leather." />
|
||||
<missionstate id="3" description="Bring Elane 5 enchanted chicken wings." />
|
||||
<missionstate id="4" description="Bring Elane one piece of royal steel, draconian steel and hell steel each." />
|
||||
<missionstate id="5" description="You got the Outfit!" />
|
||||
</mission>
|
||||
<mission name="Knight Addon: Helmet" storageid="17542" startvalue="1" endvalue="6">
|
||||
<missionstate id="1" description="Your current task is to bring 100 perfect behemoth fangs to Gregor in Thais." />
|
||||
<missionstate id="2" description="Your current task is to retrieve the helmet of Ramsay the Reckless from Banuta. These pesky apes steal everything they can get their dirty hands on." />
|
||||
<missionstate id="3" description="Your current task is to obtain a flask of warrior's sweat, which can be magicially extracted from headgear worn by a true warrior, but only in small amounts. Djinns are said to be good at this." />
|
||||
<missionstate id="4" description="Your current task is to bring royal steel to Gregor in Thais. Royal steel can only be refined by very skilled smiths." />
|
||||
<missionstate id="5" description="You have delivered all items required for the helmet addon. Go talk to Sam and tell him Gregor sent you. He will be glad to refine your helmet." />
|
||||
<missionstate id="6" description="You got the Outfit!" />
|
||||
</mission>
|
||||
<mission name="Mage & Summoner Addon: Wand" storageid="17549" startvalue="1" endvalue="7">
|
||||
<missionstate id="1" description="You found Angelina in a Prison. She told you a secret: Lynda in Thais can create a blessed wand. Greet her from Angelina, maybe she will aid you." />
|
||||
<missionstate id="2" description="Lynda send you to bring her a sample of all five wands and five rods (Snakebite, Moonlight, Volcanic, Quagmire, Tempest, Vortex, Dragonbreath, Plague, Cosmic Energy and Inferno)" />
|
||||
<missionstate id="3" description="Bring Lynda 10 ounces of magic sulphur" />
|
||||
<missionstate id="4" description="Bring Lynda the Necromancer's soul stone" />
|
||||
<missionstate id="5" description="Bring Lynda 20 ankhs now to complete the ritual." />
|
||||
<missionstate id="6" description="Lynda is currently preparing a ritual for you. Be patient and don't forget to check on it later!" />
|
||||
<missionstate id="7" description="You got the Outfit!" />
|
||||
</mission>
|
||||
<mission name="Mage & Summoner Addon: Fluid Belt" storageid="17546" startvalue="1" endvalue="1">
|
||||
<missionstate id="1" description="You got the Outfit!" />
|
||||
</mission>
|
||||
<mission name="Mage Tiara and Summoner Cloak" storageid="17547" startvalue="1" endvalue="12">
|
||||
<missionstate id="1" description="Your current task is to bring 70 bat wings to Myra in Port Hope." />
|
||||
<missionstate id="2" description="Your current task is to bring 20 pieces of red cloth to Myra in Port Hope. These are said to make an excellent material for a cape." />
|
||||
<missionstate id="3" description="Your current task is to bring 40 pieces of ape fur to Myra in Port Hope." />
|
||||
<missionstate id="4" description="Your current task is to bring 35 holy orchids to Myra in Port Hope. Elves are said to cultivate these." />
|
||||
<missionstate id="5" description="Your current task is to bring 10 spools of spider silk yarn to Myra in Port Hope. Only very large spiders produce silk which is strong enough to be yarned by mermaids." />
|
||||
<missionstate id="6" description="Your current task is to bring 60 lizard scales to Myra in Port Hope. Lizard scales are great for all sort of magical potions." />
|
||||
<missionstate id="7" description="Your current task is to bring 40 red dragon scales to Myra in Port Hope." />
|
||||
<missionstate id="8" description="Your current task is to bring 15 ounces of magic sulphur to Myra in Port Hope. Djinns are said to be good at extracting magic sulphur." />
|
||||
<missionstate id="9" description="Your current task is to bring 30 ounces of vampire dusts to Myra in Port Hope. You might need to ask a priest for a special blessed stake to turn vampires into dust." />
|
||||
<missionstate id="10" description="You finally collected all of the items which Myra asked for. You should ask about reward from her." />
|
||||
<missionstate id="11" description="Go talk to Zoltan in Edron and tell him that Myra nominated you for an award." />
|
||||
<missionstate id="12" description="You got the Outfit!" />
|
||||
</mission>
|
||||
<mission name="Warrior Addon: Shoulder Spike" storageid="17558" startvalue="1" endvalue="7">
|
||||
<missionstate id="1" description="Your current task is to bring 100 hardened bones to Trisha in Carlin. They can sometimes be extracted from creatures that consist only of - you guessed it, bones. You need an obsidian knife though." />
|
||||
<missionstate id="2" description="Your current task is to bring 100 turtle shells to Trisha in Carlin. Turtles can be found on some idyllic islands which have recently been discovered." />
|
||||
<missionstate id="3" description="Your current task is to show that you have fighting spirit. Maybe someone grants you a wish...?" />
|
||||
<missionstate id="4" description="Your current task is to obtain a dragon claw. You cannot get this special claw from any common dragons in Tibia. It requires a special one, a lord among the lords." />
|
||||
<missionstate id="5" description="You have delivered all items requried for the shoulder spike addon. Go talk to Cornelia and tell her Trisha sent you. She will be glad to create the should spikes." />
|
||||
<missionstate id="6" description="Cornelia is currently creating the should spikes for you. Be patient and don't forget to check on it later!" />
|
||||
<missionstate id="7" description="You have obtained the shoulder spike addon." />
|
||||
</mission>
|
||||
<mission name="Wizard Outfits Quest" storageid="17561" startvalue="1" endvalue="7">
|
||||
<missionstate id="1" description="Bring Lugri the Medusa shield!" />
|
||||
<missionstate id="2" description="Bring Lugri the Dragon Scale Mail!" />
|
||||
<missionstate id="3" description="Bring Lugri the Crown Legs!" />
|
||||
<missionstate id="4" description="Bring Lugri the Ring of the Sky!" />
|
||||
<missionstate id="5" description="You got the first Outfit Addon!" />
|
||||
<missionstate id="6" description="Bring The Queen Of The Banshees 50 Holy Orchids and she will reward you with the second addon." />
|
||||
<missionstate id="7" description="You got the second Outfit Addon!" />
|
||||
</mission>
|
||||
<mission name="Pirate Outfit Quest (Sabre)" storageid="17567" startvalue="1" endvalue="5">
|
||||
<missionstate id="1" description="Bring Duncan 100 Eye Patches from pirates!" />
|
||||
<missionstate id="2" description="Bring Duncan 100 peg legs from pirates!" />
|
||||
<missionstate id="3" description="Bring Duncan 100 pirate hooks from pirates!" />
|
||||
<missionstate id="4" description="Go to Morgan and tell him this codeword: 'firebird' to get the outfit addon!" />
|
||||
<missionstate id="5" description="You got the Outfit Addon!" />
|
||||
</mission>
|
||||
<mission name="Oriental Addon: Hipwear" storageid="17555" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Your current task is to find a mermaid's comb. If you have ever encountered a mermaid, you should ask her. Bring the comb to Habdel if you are male or to Ishina if you are female." />
|
||||
<missionstate id="2" description="You have received the first oriental addon." />
|
||||
</mission>
|
||||
<mission name="Oriental Addon: Headgear" storageid="17557" startvalue="1" endvalue="5">
|
||||
<missionstate id="1" description="Your current task is to bring 100 pieces of ape fur to Razan if you are male, or to Miraia if you are female." />
|
||||
<missionstate id="2" description="Your current task is to bring 100 fish fins to Razan if you are male, or to Miraia if you are female." />
|
||||
<missionstate id="3" description="Your current task is to bring 2 enchanted chicken wings to Razan if you are male, or to Miraia if you are female." />
|
||||
<missionstate id="4" description="Your current task is to bring 100 pieces of blue cloth to Razan if you are male, or to Miraia if you are female." />
|
||||
<missionstate id="5" description="You have received the second oriental addon." />
|
||||
</mission>
|
||||
<mission name="Shaman Addon: Staff" storageid="17570" startvalue="2" endvalue="3" ignoreendvalue="true">
|
||||
<missionstate id="2" description="Try to find a monster which sometimes lurks in the Tiquandian jungle as the revenge of the jungle against mankind. Bring the rare root it carries to Chondur as well as 5 voodoo dolls." />
|
||||
<missionstate id="3" description="You have received the first shaman addon." />
|
||||
</mission>
|
||||
<mission name="Shaman Addon: Mask" storageid="17570" startvalue="4" endvalue="5" ignoreendvalue="true">
|
||||
<missionstate id="4" description="Your current task is to collect 5 tribal masks from the dworcs and 5 banana staves from the apes. Bring them to Chondur to earn your shamanic mask." />
|
||||
<missionstate id="5" description="You have received the second shaman addon." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="Sam's Old Backpack" startstorageid="289" startstoragevalue="1">
|
||||
<mission name="Old And Used Backpack Quest" storageid="289" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Sam sends you to see Kroox in Kazordoon to get a special dwarven armor. Just tell him, his old buddy Sam is sending you." />
|
||||
<missionstate id="2" description="You have the permission to retrive a dwarven armor from the mines. The problem is, some giant spiders made the tunnels where the storage is their new home." />
|
||||
</mission>
|
||||
<mission name="Dwarven Armor Quest" storageid="290" startvalue="1" endvalue="1" description="You have completed Dwarven Armor Quest!" />
|
||||
</quest>
|
||||
<quest name="The Ancient Tombs" startstorageid="267" startstoragevalue="1">
|
||||
<mission name="Omruc's Treasure" storageid="267" startvalue="1" endvalue="1" description="You defeated Omruc and received a helmet adornment" />
|
||||
<mission name="Thalas' Treasure" storageid="262" startvalue="1" endvalue="1" description="You defeated Thalas and received a Gem Holder" />
|
||||
<mission name="Diphtrah's Treasure" storageid="265" startvalue="1" endvalue="1" description="You defeated Dipthrah and received a Damaged Helmet" />
|
||||
<mission name="Mahrdis' Treasure" storageid="261" startvalue="1" endvalue="1" description="You defeated Mahrdis and received a Helmet Ornament" />
|
||||
<mission name="Vashresamun's Treasure" storageid="264" startvalue="1" endvalue="1" description="You solved the musical riddles of Vashresamun's Tomb and received a left horn." />
|
||||
<mission name="Morguthis' Treasure" storageid="263" startvalue="1" endvalue="1" description="You defeated Morguthis and received a Right Horn" />
|
||||
<mission name="Rahemos' Treasure" storageid="266" startvalue="1" endvalue="1" description="You defeated Rahemos and received a Helmet Piece" />
|
||||
</quest>
|
||||
<quest name="The Ape City" startstorageid="293" startstoragevalue="1">
|
||||
<mission name="Hairycles' Missions" storageid="293" startvalue="1" endvalue="18">
|
||||
<missionstate id="1" description="Find whisper moss in the dworc settlement south of Port Hope and bring it back to Hairycles." />
|
||||
<missionstate id="2" description="You have completed the first mission. Hairycles was happy about the whisper moss you gave to him. He might have another mission for you." />
|
||||
<missionstate id="3" description="Hairycles asked you to bring him cough syrup from a human settlement. A healer might know more about this medicine." />
|
||||
<missionstate id="4" description="You have completed the second mission. Hairycles was happy about the cough syrup you gave to him. He might have another mission for you." />
|
||||
<missionstate id="5" description="Hairycles asked you to bring him a magical scroll from the lizard settlement Chor." />
|
||||
<missionstate id="6" description="You have completed the third mission. Hairycles appreciated that you brought the scroll to him and will try to read it. Maybe he has another mission for you later." />
|
||||
<missionstate id="7" description="Since Hairycles was not able to read the scroll you brought him, he asked you dig for a tomb in the desert to the east. Proceed in this tomb until you find an obelisk between red stones and read it." />
|
||||
<missionstate id="8" description="You have completed the fourth mission. Hairycles read your mind and can now translate the lizard scroll. He might have another mission for you." />
|
||||
<missionstate id="9" description="Hairycles wants to create a life charm for the ape people. He needs a hydra egg since it has strong regenerating powers." />
|
||||
<missionstate id="10" description="You have completed the fifth mission. Hairycles attempts to create a might charm for the protection of the ape people. He might have another mission for you later." />
|
||||
<missionstate id="11" description="Hairycles need a witches' cap mushroom which is supposed to be hidden in a dungeon deep under Fibula." />
|
||||
<missionstate id="12" description="You have completed the sixth mission. You brought the witches' cap mushroom back to Hairycles. He might have another mission for you." />
|
||||
<missionstate id="13" description="Hairycles is worried about an ape cult which drinks some strange fluid that the lizards left behind. Go to the old lizard temple under Banuta and destroy three of the casks there with a crowbar." />
|
||||
<missionstate id="14" description="You have completed the seventh mission. You found the old lizard ruins under Banuta and destroyed three of the casks with snake blood. Hairycles might have another mission for you." />
|
||||
<missionstate id="15" description="The apes now need a symbol of their faith. Speak with the blind prophet in a cave to the northeast and go to the Forbidden Land. Find a hair of the giant, holy ape Bong and bring it back." />
|
||||
<missionstate id="16" description="You completed the eighth mission. Hairycles gladly accepted the hair of the ape god which you brought him. He told you to have one final mission for you." />
|
||||
<missionstate id="17" description="Go into the deepest catacombs under Banuta and destroy the monument of the snake god with the hammer that Hairycles gave to you." />
|
||||
<missionstate id="18" description="You successfully destroyed the monument of the snake god. As reward, you can buy sacred statues from Hairycles. If you haven't done so yet, you should also ask him for a shaman outfit." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="The Djinn War - Efreet Faction" startstorageid="286" startstoragevalue="1">
|
||||
<mission name="Efreet Mission 1: The Supply Thief" storageid="286" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Travel to Thais and keep your eyes open for something that might give you a clue on the supply thief." />
|
||||
<missionstate id="2" description="You have found the potential supply thief - Partos in Thais seemed very suspicious. Baa'leal might be interested in this matter." />
|
||||
<missionstate id="3" description="You have reported the case to Baa'leal. He seemed very satisfied and told you that Alesar might have another mission for you." />
|
||||
</mission>
|
||||
<mission name="Efreet Mission 2: The Tear of Daraman" storageid="287" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Sneak into Ashta'daramai and steal a "Tear of Daraman". For more information about these gems visit the Efreet library." />
|
||||
<missionstate id="2" description="You have successfully managed to steal a Tear of Daraman from Ashta'daramai. Bring it to Alesar." />
|
||||
<missionstate id="3" description="You have delivered Daraman's Tear. Alesar seemed very satisfied and told you that Malor himself might have another mission for you." />
|
||||
</mission>
|
||||
<mission name="Efreet Mission 3: The Sleeping Lamp" storageid="288" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Malor asked you to find Fa'hradin's sleeping lamp in the orc fortress at Ulderek's Rock. Then, sneak into Ashta'daramai and exchange Gabel's sleeping lamp with Fa'hradin's lamp." />
|
||||
<missionstate id="2" description="You successfully exchanged the lamps. Malor will be happy to hear about this." />
|
||||
<missionstate id="3" description="The Efreet are very satisfied with your help. King Malor allowed you to trade with Yaman and Alesar." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="The Djinn War - Marid Faction" startstorageid="280" startstoragevalue="1">
|
||||
<mission name="Marid Mission 1: The Dwarven Kitchen" storageid="280" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Bring a cookbook of the dwarven kitchen to Bo'ques." />
|
||||
<missionstate id="2" description="You have delivered the cookbook. Bo'ques seemed very satisfied and told you that Fa'hradin might have another mission for you." />
|
||||
</mission>
|
||||
<mission name="Marid Mission 2: The Spyreport" storageid="281" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Fa'hradin asked you to sneak into the Efreet fortress Mal'ouqhah and find their undercover spy. The codeword is PIEDPIPER." />
|
||||
<missionstate id="2" description="You have delivered the spyreport. Fa'hradin seemed impressed and told you that Gabel himself might have another mission for you." />
|
||||
</mission>
|
||||
<mission name="Rata'Mari and the Cheese" storageid="282" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="You have promised Rata'Mari cheese. Once you deliver some to him, he will hand over his spyreport." />
|
||||
<missionstate id="2" description="You got Rata'Mari's spyreport. He seems to be quite happy with the cheese you brought him." />
|
||||
</mission>
|
||||
<mission name="Marid Mission 3: The Sleeping Lamp" storageid="283" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Gabel asked you to find Fa'hradin's sleeping lamp in the orc fortress at Ulderek's Rock. Then, sneak into Mal'ouqhah and exchange Malor's sleeping lamp with Fa'hradin's lamp." />
|
||||
<missionstate id="2" description="You successfully exchanged the lamps. Gabel will be happy to hear about this." />
|
||||
<missionstate id="3" description="The Marid deeply appreciate your help. King Gabel allowed you to trade with Haroun and Nah'bob." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="The Postman Missions" startstorageid="227" startstoragevalue="1">
|
||||
<mission name="Mission 1 - Check Postal Routes" storageid="227" startvalue="1" endvalue="6">
|
||||
<missionstate id="1" description="Kevin wants you to travel with Captain Bluebear to Carlin." />
|
||||
<missionstate id="2" description="Kevin wants you to travel with Uzon in Femor Hills to Edron." />
|
||||
<missionstate id="3" description="Kevin wants you to travel with Captain Seahorse to Venore." />
|
||||
<missionstate id="4" description="Kevin wants you to travel with Brodrosch to Cormaya" />
|
||||
<missionstate id="5" description="You have checked the Postal Routes, report back to Kevin!" />
|
||||
<missionstate id="6" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 2 - Fix Mailbox" storageid="228" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Kevin wants you to fix one of their Mailboxes located on Folda with a crowbar." />
|
||||
<missionstate id="2" description="You have fixed the mailbox, report back to Kevin!" />
|
||||
<missionstate id="3" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 3 - Bill Delivery" storageid="229" startvalue="1" endvalue="4">
|
||||
<missionstate id="1" description="Kevin wants you to deliver a bill to the stage magician David Brassacres. He's hiding from his creditors somewhere in Venore." />
|
||||
<missionstate id="2" description="You have found the David Brassacres, deliver him the bill!" />
|
||||
<missionstate id="3" description="You have delivered the bill to the stage magician David Brassacres, report back to Kevin!" />
|
||||
<missionstate id="4" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 4 - Aggressive Dogs" storageid="230" startvalue="1" endvalue="21">
|
||||
<missionstate id="1" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="2" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="3" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="4" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="5" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="6" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="7" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="8" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="9" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="10" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="11" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="12" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="13" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="14" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="15" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="16" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="17" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="18" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="19" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="20" description="Kevin has asked you to deliver 20 Bones to him." />
|
||||
<missionstate id="21" description="You have delivered 20 Bones to Kevin." />
|
||||
</mission>
|
||||
<mission name="Mission 5 - Present Delivery" storageid="231" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Kevin has asked you to retrieve the present behind the door on the lower right side of his room and deliver it to Dermot in Fibula." />
|
||||
<missionstate id="2" description="You have delivered the present to Dermot, report back to Kevin!" />
|
||||
<missionstate id="3" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 6 - New Uniforms" storageid="233" startvalue="1" endvalue="11">
|
||||
<missionstate id="1" description="Kevin has asked you to travel to Venore and negotiate with Hugo for new uniforms." />
|
||||
<missionstate id="2" description="Hugo said that his dog ate the last dress pattern they used and he has no clue where Kevin Postner got it from, go ask Kevin." />
|
||||
<missionstate id="3" description="Kevin wants you to ask the great Technomancer Talphion in Kazordoon for the technical details." />
|
||||
<missionstate id="4" description="Talphion will send a copy to Kevin, report back to Kevin." />
|
||||
<missionstate id="5" description="Kevin wants you tk ask Queen Eloise of Carlin for the perfect colours." />
|
||||
<missionstate id="6" description="Queen Eloise said she will send some color samples via mail to Kevin, report back to Kevin." />
|
||||
<missionstate id="7" description="Kevin has asked you to go to Noodles and find out what he dislikes the most: mouldy cheese, a piece of fur or a banana skin." />
|
||||
<missionstate id="8" description="You have found out what Noodles dislike! Report back to Kevin." />
|
||||
<missionstate id="9" description="Kevin wants you to tell Hugo that they order those uniforms." />
|
||||
<missionstate id="10" description="Hugo has agreed to make the uniforms, report back to Kevin!" />
|
||||
<missionstate id="11" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 7 - Measurements" storageid="234" startvalue="1" endvalue="8">
|
||||
<missionstate id="1" description="Kevin wants you to bring him the measurements of Ben, Lokur, Dove, Liane, Chrystal and Olrik." />
|
||||
<missionstate id="2" description="You have received the measurements from 1 of 6 postofficers." />
|
||||
<missionstate id="3" description="You have received the measurements from 2 of 6 postofficers." />
|
||||
<missionstate id="4" description="You have received the measurements from 3 of 6 postofficers." />
|
||||
<missionstate id="5" description="You have received the measurements from 4 of 6 postofficers." />
|
||||
<missionstate id="6" description="You have received the measurements from 5 of 6 postofficers." />
|
||||
<missionstate id="7" description="You have received all measurements, report back to Kevin!" />
|
||||
<missionstate id="8" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 8 - Missing Courier" storageid="242" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Kevin wants you to find the missing courier Waldo or at least his posthorn." />
|
||||
<missionstate id="2" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 9 - Dear Santa" storageid="244" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Kevin wants you to deliver som letters to Santa Claus on Vega." />
|
||||
<missionstate id="2" description="You have delivered the letters to Santa Claus on Vega." />
|
||||
<missionstate id="3" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Mission 10 - Mintwallin" storageid="245" startvalue="1" endvalue="3">
|
||||
<missionstate id="1" description="Kevin wants you to deliver a letter to Markwin, king of Mintwallin from his mother." />
|
||||
<missionstate id="2" description="You have delivered the letter to Markwin." />
|
||||
<missionstate id="3" description="You have reported back that you have completed the mission." />
|
||||
</mission>
|
||||
<mission name="Postman Rank" storageid="250" startvalue="1" endvalue="5">
|
||||
<missionstate id="1" description="Assistant Postman" />
|
||||
<missionstate id="2" description="Postman" />
|
||||
<missionstate id="3" description="Grand Postman" />
|
||||
<missionstate id="4" description="Grand Postman for Special Operations" />
|
||||
<missionstate id="5" description="Arch Postman" />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="The Shattered Isles" startstorageid="17593" startstoragevalue="1">
|
||||
<mission name="A Djinn in Love" storageid="17502" startvalue="9" endvalue="13" ignoreendvalue="true">
|
||||
<missionstate id="9" description="You need to return to Marina and ask her for a date with Ocelus." />
|
||||
<missionstate id="10" description="You need to return to Ocelus with the bad news." />
|
||||
<missionstate id="11" description="Ocelus told you to get a poem for him, if you didn't buy one already, head to Ab'Dendriel and buy a Love Poem from Elvith." />
|
||||
<missionstate id="12" description="You need to go recite the poem to Marina and impress her with the Djinn's romantic and poetic abilities." />
|
||||
<missionstate id="13" description="After reciting the poem to Marina, she decided to date Ocelus and release Ray Striker from her spell." />
|
||||
</mission>
|
||||
<mission name="A Poem for the Mermaid" storageid="17502" startvalue="7" endvalue="9" ignoreendvalue="true">
|
||||
<missionstate id="7" description="You need to find the man-stealing mermaid and try to break her spell over poor Raymond, the mermaid Marina is near the northern coast of the island." />
|
||||
<missionstate id="8" description="You discovered that she does in fact have a spell on him, and will not release him unless someone better comes along." />
|
||||
<missionstate id="9" description="You are a true master in reciting love poems now. No mermaid will be able to resist if you ask for a date!" />
|
||||
</mission>
|
||||
<mission name="Access to Goroma" storageid="17501" startvalue="2" endvalue="2" description="After helping Jack Fate to collect the 30 woodpieces, Jack Fate in Liberty Bay will bring you to Goroma." />
|
||||
<mission name="Access to Laguna Island" storageid="17502" startvalue="13" endvalue="13" ignoreendvalue="true" description="After arranging a date for Marina and Ocelus, you are allowed to use Marina's sea turtles. They will bring you to the idyllic Laguna Islands." />
|
||||
<mission name="Access to Meriana" storageid="17502" startvalue="6" endvalue="6" ignoreendvalue="true" description="After earning the trust of the governor's daughter Eleonore, Captain Waverider in Liberty Bay will bring you to Meriana if you tell him the secret codeword 'peg leg'." />
|
||||
<mission name="The Counterspell" storageid="17509" startvalue="2" endvalue="5">
|
||||
<missionstate id="2" description="You have begun Chondur's ritual. Bring him a fresh dead chicken so that he can begin to create a counterspell which will allow you to pass the magical barrier on Goroma." />
|
||||
<missionstate id="3" description="You have begun Chondur's ritual. Bring him a fresh dead rat so that he can continue creating a counterspell which will allow you to pass the magical barrier on Goroma." />
|
||||
<missionstate id="4" description="You have begun Chondur's ritual. Bring him a fresh dead black sheep so that he can complete his counterspell which will allow you to pass the magical barrier on Goroma." />
|
||||
<missionstate id="5" description="You may pass the energy barrier on Goroma. The counterspell Chondur created for you with his ritual will allow you to withstand the evil magic of the cultist." />
|
||||
</mission>
|
||||
<mission name="The Errand" storageid="17502" startvalue="3" endvalue="4" ignoreendvalue="true">
|
||||
<missionstate id="3" description="You told Eleonore to run a small errand. Deliver the 200 gold pieces she gave to the herbalist Charlotta in the south-western part of Liberty Bay." />
|
||||
<missionstate id="4" description="You delivered the gold to Charlotta. Return to Eleonore and tell her the secret password: peg leg" />
|
||||
</mission>
|
||||
<mission name="The Governor's Daughter" storageid="17502" startvalue="1" endvalue="2" ignoreendvalue="true">
|
||||
<missionstate id="1" description="You promised to find Eleonore's lost ring. She told you that a parrot stole it from her dressing table and flew to the nearby mountains. You might need a rake to retrieve the ring." />
|
||||
<missionstate id="2" description="You returned the ring to Eleonore." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="The Queen of the Banshees" startstorageid="5" startstoragevalue="1">
|
||||
<mission name="The Hidden Seal" storageid="5" startvalue="1" endvalue="1" description="You broke the first seal." />
|
||||
<mission name="The Seal of Logic" storageid="10" startvalue="1" endvalue="1" description="You broke the sixth seal." />
|
||||
<mission name="The Seal of True Path" storageid="9" startvalue="1" endvalue="1" description="You broke the fifth seal." />
|
||||
<mission name="The Seal of Sacrifice" storageid="4" startvalue="1" endvalue="1" description="You broke the fourth seal." />
|
||||
<mission name="The Seal of Demonrage" storageid="7" startvalue="1" endvalue="1" description="You broke the third seal." />
|
||||
<mission name="The Plague Seal" storageid="6" startvalue="1" endvalue="1" description="You broke the second seal." />
|
||||
<mission name="All Seals" storageid="11" startvalue="1" endvalue="1" description="You broke all the seals." />
|
||||
</quest>
|
||||
<quest name="The White Raven Monastery" startstorageid="62" startstoragevalue="2">
|
||||
<mission name="Access to the Isle of Kings" storageid="62" endvalue="2">
|
||||
<missionstate id="2" description="You are a friend of Dalbrect. Since you returned his family brooch he will sail you to the Isle of Kings unless you do something stupid." />
|
||||
</mission>
|
||||
<mission name="The Investigation" storageid="17584" startvalue="1" endvalue="2">
|
||||
<missionstate id="1" description="Investigate the catacombs. Abbot Costello should be interested in information about brother Fugio." />
|
||||
<missionstate id="2" description="You returned Fugio's Diary. Costello was very thankful about your help and gave you a blessed ankh as reward." />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="The Serpentine Tower" startstorageid="17596" startstoragevalue="1">
|
||||
<mission name="The Academy of Magic Arts Disaster" storageid="17596" endvalue="2">
|
||||
<missionstate id="1" description="The evil ancient gods teleported you to the Serpentine Tower. You must survive the disaster!" />
|
||||
<missionstate id="2" description="The earthquake destroyed the Serpentine Tower. There must be a way to get in the undergrounds." />
|
||||
</mission>
|
||||
<mission name="The Reward of The Serpentine Tower" storageid="17604" endvalue="1">
|
||||
<missionstate id="1" description="You have solved The Serpentine Tower live event quest!" />
|
||||
</mission>
|
||||
</quest>
|
||||
<quest name="Killing in the Name of..." startstorageid="17607" startstoragevalue="1">
|
||||
<!-- Daniel Steelsoul: level 6 to 49 -->
|
||||
<mission name="Daniel Steelsoul: Trolls" storageid="17633" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 trolls." />
|
||||
<mission name="Daniel Steelsoul: Trolls" storageid="17633" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Daniel Steelsoul: Goblins" storageid="17634" startvalue="0" endvalue="150" description="You already hunted |STATE|/150 goblins." />
|
||||
<mission name="Daniel Steelsoul: Goblins" storageid="17634" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Daniel Steelsoul: Rotworms" storageid="17635" startvalue="0" endvalue="150" description="You already hunted |STATE|/150 rotworms." />
|
||||
<mission name="Daniel Steelsoul: Rotworms" storageid="17635" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Daniel Steelsoul: Cyclopes" storageid="17636" startvalue="0" endvalue="150" description="You already hunted |STATE|/150 cyclopes." />
|
||||
<mission name="Daniel Steelsoul: Cyclopes" storageid="17636" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
|
||||
<!-- killing in the name of rank -->
|
||||
<mission name="Paw and Fur: Member" storageid="17615" startvalue="0" endvalue="10" description="You are member of the Paw and Fur hunting elite. You currently have |STATE| Paw & Fur points." />
|
||||
<mission name="Paw and Fur: Ranger" storageid="17615" startvalue="11" endvalue="20" description="You are Ranger of the Paw and Fur hunting elite. You currently have |STATE| Paw & Fur points." />
|
||||
<mission name="Paw and Fur: Big Game Hunter" storageid="17615" startvalue="21" endvalue="40" description="You are Big Game Hunter in the Paw and Fur hunting elite. You currently have |STATE| Paw & Fur points." />
|
||||
<mission name="Paw and Fur: Trophy Hunter" storageid="17615" startvalue="41" endvalue="70" description="You are Trophy Hunter in the Paw and Fur hunting elite. You currently have |STATE| Paw & Fur points. Ask Grizzly Adams for 'special task' he might have something for you." />
|
||||
<mission name="Paw and Fur: Elite Hunter" storageid="17615" startvalue="71" endvalue="100" description="You have obtained the highest possible rank in the Paw and Fur hunting elite, you are Elite Hunter. You currently have |STATE| Paw & Fur points. Ask Grizzly Adams for 'special task' he might have something for you." />
|
||||
|
||||
<!-- Grizzly Adams: level 6 to 49 -->
|
||||
<mission name="Paw and Fur: Crocodiles" storageid="17609" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 crocodiles." />
|
||||
<mission name="Paw and Fur: Crocodiles" storageid="17609" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Tarantulas" storageid="17610" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 tarantulas." />
|
||||
<mission name="Paw and Fur: Tarantulas" storageid="17610" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Carniphilas" storageid="17611" startvalue="0" endvalue="50" description="You already hunted |STATE|/50 carniphilas." />
|
||||
<mission name="Paw and Fur: Carniphilas" storageid="17611" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Apes" storageid="17612" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 apes." />
|
||||
<mission name="Paw and Fur: Apes" storageid="17612" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Thornback Tortoises" storageid="17613" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 thornback tortoises." />
|
||||
<mission name="Paw and Fur: Thornback Tortoises" storageid="17613" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Gargoyles" storageid="17614" startvalue="0" endvalue="65" description="You already hunted |STATE|/65 gargoyles." />
|
||||
<mission name="Paw and Fur: Gargoyles" storageid="17614" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Frost Trolls" storageid="17697" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 frost trolls." />
|
||||
<mission name="Paw and Fur: Frost Trolls" storageid="17697" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Swamp Trolls" storageid="17698" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 swamp trolls." />
|
||||
<mission name="Paw and Fur: Swamp Trolls" storageid="17698" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Rats" storageid="17699" startvalue="0" endvalue="25" description="You already hunted |STATE|/25 rats." />
|
||||
<mission name="Paw and Fur: Rats" storageid="17699" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Wolves" storageid="17700" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 wolves." />
|
||||
<mission name="Paw and Fur: Wolves" storageid="17700" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Wasps" storageid="17701" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 wasps." />
|
||||
<mission name="Paw and Fur: Wasps" storageid="17701" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Larvas" storageid="17702" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 larvas." />
|
||||
<mission name="Paw and Fur: Larvas" storageid="17702" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Dwarfs" storageid="17703" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 dwarfs." />
|
||||
<mission name="Paw and Fur: Dwarfs" storageid="17703" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Low Undeads" storageid="17704" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 undeads." />
|
||||
<mission name="Paw and Fur: Low Undeads" storageid="17704" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
|
||||
<!--Grizzly Adams: level 50 to 79 -->
|
||||
<mission name="Paw and Fur: Quara Scouts" storageid="17616" startvalue="0" endvalue="200" description="You already hunted |STATE|/200 quara scouts." />
|
||||
<mission name="Paw and Fur: Quara Scouts" storageid="17616" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Ancient Scarabs" storageid="17617" startvalue="0" endvalue="125" description="You already hunted |STATE|/125 ancient scarabs." />
|
||||
<mission name="Paw and Fur: Ancient Scarabs" storageid="17617" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Wyverns" storageid="17618" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 wyverns." />
|
||||
<mission name="Paw and Fur: Wyverns" storageid="17618" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Bonebeasts" storageid="17619" startvalue="0" endvalue="100" description="You already hunted |STATE|/100 bonebeasts." />
|
||||
<mission name="Paw and Fur: Bonebeasts" storageid="17619" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Dragons" storageid="17620" startvalue="0" endvalue="200" description="You already hunted |STATE|/200 dragons." />
|
||||
<mission name="Paw and Fur: Dragons" storageid="17620" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Medium Class Orcs" storageid="17712" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 orcs." />
|
||||
<mission name="Paw and Fur: High Class Minotaurs" storageid="17713" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 minotaurs." />
|
||||
<mission name="Paw and Fur: Lizards" storageid="17714" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 lizards." />
|
||||
<mission name="Paw and Fur: High Class Dwarfs" storageid="17715" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 dwarfs." />
|
||||
<mission name="Paw and Fur: Medium Undeads" storageid="17716" startvalue="0" endvalue="200" description="You already hunted |STATE|/200 undeads." />
|
||||
|
||||
<!--Grizzly Adams: level 80 to 129 -->
|
||||
<mission name="Paw and Fur: Quara" storageid="17621" startvalue="0" endvalue="600" description="You already hunted |STATE|/600 quara." />
|
||||
<mission name="Paw and Fur: Giant Spiders" storageid="17622" startvalue="0" endvalue="500" description="You already hunted |STATE|/500 giant spiders." />
|
||||
<mission name="Paw and Fur: Banshees" storageid="17623" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 banshees." />
|
||||
<mission name="Paw and Fur: Lichs" storageid="17624" startvalue="0" endvalue="500" description="You already hunted |STATE|/500 lichs." />
|
||||
<mission name="Paw and Fur: Cults" storageid="17625" startvalue="0" endvalue="500" description="You already hunted |STATE|/500 cults." />
|
||||
<mission name="Paw and Fur: High Class Orcs" storageid="17717" startvalue="0" endvalue="125" description="You already hunted |STATE|/125 orcs." />
|
||||
<mission name="Paw and Fur: High Class Orcs" storageid="17717" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Heros" storageid="17718" startvalue="0" endvalue="150" description="You already hunted |STATE|/150 heros." />
|
||||
<mission name="Paw and Fur: Heros" storageid="17718" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Necromancers" storageid="17719" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 necromancers." />
|
||||
<mission name="Paw and Fur: Necromancers" storageid="17719" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
|
||||
<!--Grizzly Adams: level 130+ -->
|
||||
<mission name="Paw and Fur: Hydras" storageid="17626" startvalue="0" endvalue="650" description="You already hunted |STATE|/650 hydras." />
|
||||
<mission name="Paw and Fur: Hydras" storageid="17626" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Serpent Spawns" storageid="17627" startvalue="0" endvalue="800" description="You already hunted |STATE|/800 serpent spawns." />
|
||||
<mission name="Paw and Fur: Serpent Spawns" storageid="17627" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Behemoths" storageid="17628" startvalue="0" endvalue="700" description="You already hunted |STATE|/700 behemoths." />
|
||||
<mission name="Paw and Fur: Behemoths" storageid="17628" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Dragon Lords" storageid="17629" startvalue="0" endvalue="600" description="You already hunted |STATE|/600 dragon lords." />
|
||||
<mission name="Paw and Fur: Dragon Lords" storageid="17629" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Hand of Cursed Fates" storageid="17630" startvalue="0" endvalue="200" description="You already hunted |STATE|/200 hand of cursed fates." />
|
||||
<mission name="Paw and Fur: Hand of Cursed Fates" storageid="17630" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Juggernauts" storageid="17631" startvalue="0" endvalue="200" description="You already hunted |STATE|/200 juggernauts." />
|
||||
<mission name="Paw and Fur: Juggernauts" storageid="17631" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Nightmares" storageid="17720" startvalue="0" endvalue="150" description="You already hunted |STATE|/150 nightmares." />
|
||||
<mission name="Paw and Fur: Nightmares" storageid="17720" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Warlocks" storageid="17721" startvalue="0" endvalue="300" description="You already hunted |STATE|/300 warlocks." />
|
||||
<mission name="Paw and Fur: Warlocks" storageid="17721" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
<mission name="Paw and Fur: Demons" storageid="17722" startvalue="0" endvalue="6666" description="You already hunted |STATE|/6666 demons." />
|
||||
<mission name="Paw and Fur: Demons" storageid="17722" startvalue="99999" endvalue="99999" description="You have finished the task." />
|
||||
</quest>
|
||||
<quest name="Young Mage Tasks" startstorageid="17646" startstoragevalue="1">
|
||||
<mission name="Proof of the trustworthy" storageid="17645" startvalue="0" endvalue="50" description="You already hunted |STATE|/50 amazons." />
|
||||
<mission name="Reward of the trustworthy" storageid="17646" startvalue="2" endvalue="2" description="You have proved your trustworthy and claimed the reward." />
|
||||
</quest>
|
||||
<quest name="Young Paladin Tasks" startstorageid="17647" startstoragevalue="1">
|
||||
<mission name="Proof of the trustworthy" storageid="17648" startvalue="0" endvalue="50" description="You already hunted |STATE|/50 minotaurs." />
|
||||
<mission name="Reward of the trustworthy" storageid="17647" startvalue="2" endvalue="2" description="You have proved your trustworthy and claimed the reward." />
|
||||
</quest>
|
||||
<quest name="Young Knight Tasks" startstorageid="17650" startstoragevalue="1">
|
||||
<mission name="Proof of the trustworthy" storageid="17651" startvalue="0" endvalue="50" description="You already hunted |STATE|/50 orcs." />
|
||||
<mission name="Reward of the trustworthy" storageid="17650" startvalue="2" endvalue="2" description="You have proved your trustworthy and claimed the reward." />
|
||||
</quest>
|
||||
</quests>
|
@ -1,9 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<stages>
|
||||
<config enabled="1"/>
|
||||
<stage minlevel="1" maxlevel="20" multiplier="10" />
|
||||
<stage minlevel="21" maxlevel="40" multiplier="7" />
|
||||
<stage minlevel="41" maxlevel="60" multiplier="5" />
|
||||
<stage minlevel="61" maxlevel="80" multiplier="3" />
|
||||
<stage minlevel="81" multiplier="2" />
|
||||
<stage minlevel="1" maxlevel="20" multiplier="15" />
|
||||
<stage minlevel="21" maxlevel="40" multiplier="12" />
|
||||
<stage minlevel="41" maxlevel="60" multiplier="10" />
|
||||
<stage minlevel="61" maxlevel="80" multiplier="6" />
|
||||
<stage minlevel="81" maxlevel="100" multiplier="3" />
|
||||
<stage minlevel="101" multiplier="2" />
|
||||
</stages>
|
@ -85,6 +85,26 @@
|
||||
<action actionid="82" script="nostalrius/82.lua" />
|
||||
<action actionid="83" script="nostalrius/83.lua" />
|
||||
|
||||
<!-- Pits of Inferno -->
|
||||
<action actionid="17642" script="pits_of_inferno/oil.lua" />
|
||||
<action fromaid="17653" toaid="17656" script="pits_of_inferno/hall_of_the_four_ways.lua" />
|
||||
<action fromaid="2050" toaid="2065" script="pits_of_inferno/levers.lua" />
|
||||
<action fromaid="3301" toaid="3302" script="pits_of_inferno/ladderLevers.lua" />
|
||||
<action actionid="50160" script="pits_of_inferno/mazeStone.lua" />
|
||||
<action actionid="3300" script="pits_of_inferno/stoneLever.lua" />
|
||||
<action actionid="3304" script="pits_of_inferno/trapLever.lua" />
|
||||
<action actionid="50106" script="pits_of_inferno/fireThroneLever.lua" />
|
||||
<action fromaid="50095" toaid="50104" script="pits_of_inferno/bazirWrongLevers.lua" />
|
||||
<action actionid="50105" script="pits_of_inferno/bazirMazeLever.lua" />
|
||||
<action fromaid="39511" toaid="39512" script="pits_of_inferno/bazirMirror.lua" />
|
||||
|
||||
<!-- Serpentine Tower -->
|
||||
<action actionid="17597" script="serpentine_tower/release_fire_elemental.lua" />
|
||||
<action actionid="17598" script="serpentine_tower/release_vampire.lua" />
|
||||
<action actionid="17599" script="serpentine_tower/release_behemoth.lua" />
|
||||
<action actionid="17600" script="serpentine_tower/behemoth_lever.lua" />
|
||||
<action actionid="17601" script="serpentine_tower/vampire_lever.lua" />
|
||||
|
||||
<!-- Meriana Quest -->
|
||||
<action actionid="17525" script="meriana_quest/tortoise_egg.lua" />
|
||||
<action fromaid="17528" toaid="17530" script="meriana_quest/pirate_map.lua" />
|
||||
@ -93,16 +113,19 @@
|
||||
<action fromid="6087" toid="6090" script="liberty_bay/cult_hymn.lua"/>
|
||||
<action actionid="33216" script="liberty_bay/cult_piano_teleport.lua"/>
|
||||
|
||||
<!-- Nostalrius Default Actions -->
|
||||
<!-- Sabrehaven Default Actions -->
|
||||
<!-- Furniture Parcels -->
|
||||
<action fromid="2775" toid="2812" script="misc/furniture_parcels.lua" />
|
||||
<action fromid="5086" toid="5088" script="misc/furniture_parcels.lua" />
|
||||
<action fromid="6114" toid="6115" script="misc/furniture_parcels.lua" />
|
||||
<action fromid="6371" toid="6372" script="misc/furniture_parcels.lua" />
|
||||
|
||||
<!-- Instruments -->
|
||||
<action fromid="2948" toid="2950" script="misc/instruments.lua" />
|
||||
<action fromid="2952" toid="2965" script="misc/instruments.lua" />
|
||||
<action itemid="3219" script="misc/instruments.lua" />
|
||||
<action itemid="5786" script="misc/instruments.lua" />
|
||||
<action itemid="6572" script="misc/instruments.lua" />
|
||||
|
||||
<!-- Strange Levers -->
|
||||
<action fromid="2566" toid="2567" script="misc/strange_lever.lua" />
|
||||
@ -145,6 +168,7 @@
|
||||
<action itemid="4852" script="misc/ectoplasm_container.lua" />
|
||||
<action itemid="3217" script="misc/letter_bag.lua" />
|
||||
<action fromid="3603" toid="3605" script="misc/baking.lua" />
|
||||
<action itemid="6276" script="misc/baking.lua" />
|
||||
<action itemid="5466" script="misc/distilling_rum.lua" />
|
||||
<action fromid="3264" toid="3276" script="misc/weapons.lua" />
|
||||
<action fromid="3278" toid="3286" script="misc/weapons.lua" />
|
||||
@ -154,16 +178,30 @@
|
||||
<action fromid="3309" toid="3329" script="misc/weapons.lua" />
|
||||
<action fromid="3331" toid="3348" script="misc/weapons.lua" />
|
||||
<action itemid="3208" script="misc/weapons.lua" />
|
||||
<action itemid="6101" script="misc/weapons.lua" />
|
||||
<action itemid="6527" script="misc/weapons.lua" />
|
||||
<action itemid="6553" script="misc/weapons.lua" />
|
||||
<action itemid="3059" script="misc/spellbook.lua" />
|
||||
<action fromid="5792" toid="5797" script="misc/dice.lua" />
|
||||
<action itemid="3114" script="misc/skull_candle.lua" />
|
||||
<action itemid="5957" script="misc/lottery_ticket.lua" />
|
||||
<action itemid="5776" script="misc/sabrehaven_talon.lua" />
|
||||
<action itemid="5928" script="misc/catch_fish.lua" />
|
||||
<action itemid="6279" script="misc/party_cake.lua" />
|
||||
<action itemid="6387" script="misc/christmas_card.lua" />
|
||||
<action itemid="6558" script="misc/concentrated_demonic_blood.lua" />
|
||||
<action itemid="6561" script="misc/ceremonial_ankh.lua" />
|
||||
<action itemid="6576" script="misc/fireworks_rocket.lua" />
|
||||
<action itemid="6578" script="misc/party_hat.lua" />
|
||||
<action itemid="6549" script="misc/djinn_quest_pass.lua" />
|
||||
<action itemid="6551" script="misc/djinn_quest_pass.lua" />
|
||||
<action itemid="3252" script="misc/postman_quest_pass.lua" />
|
||||
|
||||
<!-- Dolls -->
|
||||
<action itemid="5080" script="misc/dolls.lua" />
|
||||
<action itemid="5668" script="misc/dolls.lua" />
|
||||
<action itemid="5791" script="misc/dolls.lua" />
|
||||
<action itemid="6511" script="misc/dolls.lua" />
|
||||
|
||||
<!-- Keys -->
|
||||
<action fromid="2967" toid="2973" script="misc/key.lua" />
|
||||
@ -174,7 +212,8 @@
|
||||
<action itemid="2668" script="misc/time.lua" />
|
||||
<action itemid="2771" script="misc/time.lua" />
|
||||
<action itemid="2906" script="misc/time.lua" />
|
||||
|
||||
<action itemid="6092" script="misc/time.lua" />
|
||||
|
||||
<!-- Tools -->
|
||||
<action itemid="3003" script="misc/rope.lua" />
|
||||
<action itemid="3304" script="misc/crowbar.lua" />
|
||||
@ -197,6 +236,9 @@
|
||||
<action itemid="4863" script="misc/butterfly_conservation_kit.lua" />
|
||||
<action itemid="5467" script="misc/fire_bug.lua" />
|
||||
<action itemid="5938" script="misc/ceirons_waterskin.lua" />
|
||||
<action itemid="3031" script="misc/changegold.lua" />
|
||||
<action itemid="3035" script="misc/changegold.lua" />
|
||||
<action itemid="3043" script="misc/changegold.lua" />
|
||||
|
||||
<!-- Chests -->
|
||||
<action itemid="2479" script="misc/chests.lua" />
|
||||
@ -298,6 +340,18 @@
|
||||
<action itemid="5096" script="misc/food.lua" />
|
||||
<action itemid="5678" script="misc/food.lua" />
|
||||
<action itemid="6125" script="misc/food.lua" />
|
||||
<action itemid="6277" script="misc/food.lua" />
|
||||
<action itemid="6278" script="misc/food.lua" />
|
||||
<action itemid="6392" script="misc/food.lua" />
|
||||
<action itemid="6393" script="misc/food.lua" />
|
||||
<action itemid="6500" script="misc/food.lua" />
|
||||
<action itemid="6541" script="misc/food.lua" />
|
||||
<action itemid="6542" script="misc/food.lua" />
|
||||
<action itemid="6543" script="misc/food.lua" />
|
||||
<action itemid="6544" script="misc/food.lua" />
|
||||
<action itemid="6545" script="misc/food.lua" />
|
||||
<action itemid="6569" script="misc/food.lua" />
|
||||
<action itemid="6574" script="misc/food.lua" />
|
||||
|
||||
<!-- Passthrough -->
|
||||
<action fromid="2334" toid="2341" script="misc/doors.lua" />
|
||||
@ -325,6 +379,10 @@
|
||||
<action itemid="5280" script="misc/doors.lua" />
|
||||
<action itemid="5732" script="misc/doors.lua" />
|
||||
<action itemid="5735" script="misc/doors.lua" />
|
||||
<action itemid="6191" script="misc/doors.lua" />
|
||||
<action itemid="6194" script="misc/doors.lua" />
|
||||
<action itemid="6248" script="misc/doors.lua" />
|
||||
<action itemid="6251" script="misc/doors.lua" />
|
||||
|
||||
<!-- Level Doors -->
|
||||
<action itemid="1646" script="misc/doors.lua" />
|
||||
@ -341,6 +399,10 @@
|
||||
<action itemid="5129" script="misc/doors.lua" />
|
||||
<action itemid="5291" script="misc/doors.lua" />
|
||||
<action itemid="5293" script="misc/doors.lua" />
|
||||
<action itemid="6205" script="misc/doors.lua" />
|
||||
<action itemid="6207" script="misc/doors.lua" />
|
||||
<action itemid="6262" script="misc/doors.lua" />
|
||||
<action itemid="6264" script="misc/doors.lua" />
|
||||
|
||||
<!-- Quest Doors -->
|
||||
<action itemid="1642" script="misc/doors.lua" />
|
||||
@ -359,6 +421,10 @@
|
||||
<action itemid="5289" script="misc/doors.lua" />
|
||||
<action itemid="5745" script="misc/doors.lua" />
|
||||
<action itemid="5749" script="misc/doors.lua" />
|
||||
<action itemid="6201" script="misc/doors.lua" />
|
||||
<action itemid="6203" script="misc/doors.lua" />
|
||||
<action itemid="6258" script="misc/doors.lua" />
|
||||
<action itemid="6260" script="misc/doors.lua" />
|
||||
|
||||
<!-- Closed Normal Doors -->
|
||||
<action itemid="2177" script="misc/doors.lua" />
|
||||
@ -400,6 +466,14 @@
|
||||
<action itemid="5516" script="misc/doors.lua" />
|
||||
<action itemid="5733" script="misc/doors.lua" />
|
||||
<action itemid="5736" script="misc/doors.lua" />
|
||||
<action itemid="6192" script="misc/doors.lua" />
|
||||
<action itemid="6195" script="misc/doors.lua" />
|
||||
<action itemid="6197" script="misc/doors.lua" />
|
||||
<action itemid="6199" script="misc/doors.lua" />
|
||||
<action itemid="6249" script="misc/doors.lua" />
|
||||
<action itemid="6252" script="misc/doors.lua" />
|
||||
<action itemid="6254" script="misc/doors.lua" />
|
||||
<action itemid="6256" script="misc/doors.lua" />
|
||||
|
||||
<!-- Open Vertical Doors -->
|
||||
<action itemid="1630" script="misc/doors.lua" />
|
||||
@ -437,6 +511,14 @@
|
||||
<action itemid="5515" script="misc/doors.lua" />
|
||||
<action itemid="5737" script="misc/doors.lua" />
|
||||
<action itemid="5748" script="misc/doors.lua" />
|
||||
<action itemid="6193" script="misc/doors.lua" />
|
||||
<action itemid="6198" script="misc/doors.lua" />
|
||||
<action itemid="6202" script="misc/doors.lua" />
|
||||
<action itemid="6206" script="misc/doors.lua" />
|
||||
<action itemid="6250" script="misc/doors.lua" />
|
||||
<action itemid="6255" script="misc/doors.lua" />
|
||||
<action itemid="6259" script="misc/doors.lua" />
|
||||
<action itemid="6263" script="misc/doors.lua" />
|
||||
|
||||
<!-- Open Horizontal Doors -->
|
||||
<action itemid="1633" script="misc/doors.lua" />
|
||||
@ -474,4 +556,12 @@
|
||||
<action itemid="5517" script="misc/doors.lua" />
|
||||
<action itemid="5734" script="misc/doors.lua" />
|
||||
<action itemid="5746" script="misc/doors.lua" />
|
||||
<action itemid="6196" script="misc/doors.lua" />
|
||||
<action itemid="6200" script="misc/doors.lua" />
|
||||
<action itemid="6204" script="misc/doors.lua" />
|
||||
<action itemid="6208" script="misc/doors.lua" />
|
||||
<action itemid="6253" script="misc/doors.lua" />
|
||||
<action itemid="6257" script="misc/doors.lua" />
|
||||
<action itemid="6261" script="misc/doors.lua" />
|
||||
<action itemid="6265" script="misc/doors.lua" />
|
||||
</actions>
|
||||
|
@ -1,5 +1,5 @@
|
||||
local ovens = {
|
||||
2535, 2537, 2539, 2541, 3510
|
||||
2535, 2537, 2539, 2541, 3510, 6355, 6357, 6359, 6361
|
||||
}
|
||||
|
||||
local milestone = {
|
||||
@ -29,6 +29,12 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
item:remove(1)
|
||||
return true
|
||||
end
|
||||
elseif item:getId() == 6276 then
|
||||
if table.contains(ovens, target:getId()) then
|
||||
Game.createItem(6277, 1, target:getPosition())
|
||||
item:remove(1)
|
||||
return true
|
||||
end
|
||||
elseif item:getId() == 3605 then
|
||||
if table.contains(milestone, target:getId()) then
|
||||
local parent = item:getParent()
|
||||
|
16
data/actions/scripts/misc/catch_fish.lua
Normal file
16
data/actions/scripts/misc/catch_fish.lua
Normal file
@ -0,0 +1,16 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if target.itemid ~= 5553 then
|
||||
return false
|
||||
end
|
||||
|
||||
if math.random(2) ~= 1 then
|
||||
player:say("The golden fish escaped.", TALKTYPE_MONSTER_SAY)
|
||||
return true
|
||||
end
|
||||
|
||||
player:say("You catch a golden fish in the bowl.", TALKTYPE_MONSTER_SAY)
|
||||
item:transform(5929)
|
||||
target:remove()
|
||||
toPosition:sendMagicEffect(CONST_ME_MAGIC_BLUE)
|
||||
return true
|
||||
end
|
18
data/actions/scripts/misc/ceremonial_ankh.lua
Normal file
18
data/actions/scripts/misc/ceremonial_ankh.lua
Normal file
@ -0,0 +1,18 @@
|
||||
local blessings = {
|
||||
{key = 101, value = 1, name = 'Wisdom of Solitude'},
|
||||
{key = 102, value = 1, name = 'Spark of the Phoenix'},
|
||||
{key = 103, value = 3, name = 'Fire of the Suns'},
|
||||
{key = 104, value = 1, name = 'Spiritual Shielding'},
|
||||
{key = 105, value = 1, name = 'Embrace of Tibia'}
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local result, bless = 'Received blessings:'
|
||||
for i = 1, #blessings do
|
||||
bless = blessings[i]
|
||||
result = (player:getStorageValue(bless.key) == bless.value) and result .. '\n' .. bless.name or result
|
||||
end
|
||||
|
||||
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, 20 > result:len() and 'No blessings received.' or result)
|
||||
return true
|
||||
end
|
35
data/actions/scripts/misc/changegold.lua
Normal file
35
data/actions/scripts/misc/changegold.lua
Normal file
@ -0,0 +1,35 @@
|
||||
local config = {
|
||||
[3031] = {changeTo = 3035},
|
||||
[3035] = {changeBack = 3031, changeTo = 3043},
|
||||
[3043] = {changeBack = 3035}
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local ring = player:getSlotItem(CONST_SLOT_RING)
|
||||
if ring == nil or ring:getId() ~= 3007 then
|
||||
return false
|
||||
end
|
||||
|
||||
local ringCharges = ring:getAttribute(ITEM_ATTRIBUTE_CHARGES)
|
||||
local coin = config[item:getId()]
|
||||
if coin.changeTo and item.type == 100 then
|
||||
item:remove()
|
||||
player:addItem(coin.changeTo, 1)
|
||||
if ringCharges > 1 then
|
||||
ring:setAttribute(ITEM_ATTRIBUTE_CHARGES,(ringCharges-1))
|
||||
else
|
||||
ring:remove(1)
|
||||
end
|
||||
elseif coin.changeBack then
|
||||
item:remove(1)
|
||||
player:addItem(coin.changeBack, 100)
|
||||
if ringCharges > 1 then
|
||||
ring:setAttribute(ITEM_ATTRIBUTE_CHARGES,(ringCharges-1))
|
||||
else
|
||||
ring:remove(1)
|
||||
end
|
||||
else
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end
|
5
data/actions/scripts/misc/christmas_card.lua
Normal file
5
data/actions/scripts/misc/christmas_card.lua
Normal file
@ -0,0 +1,5 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
item:getPosition():sendMagicEffect(CONST_ME_SOUND_YELLOW)
|
||||
item:getPosition():sendMonsterSay("Merry Christmas, " .. player:getName() .. "!")
|
||||
return true
|
||||
end
|
5
data/actions/scripts/misc/concentrated_demonic_blood.lua
Normal file
5
data/actions/scripts/misc/concentrated_demonic_blood.lua
Normal file
@ -0,0 +1,5 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
item:getPosition():sendMagicEffect(CONST_ME_DRAWBLOOD)
|
||||
item:transform(2874, math.random(10, 11))
|
||||
return true
|
||||
end
|
26
data/actions/scripts/misc/djinn_quest_pass.lua
Normal file
26
data/actions/scripts/misc/djinn_quest_pass.lua
Normal file
@ -0,0 +1,26 @@
|
||||
local greenDjinnItem = 6549
|
||||
local blueDjinnItem = 6551
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if player:getStorageValue(278) > 1 then
|
||||
player:sendTextMessage(MESSAGE_INFO_DESCR, "You have already finished one of the djinn quest or your quest is in-progress.")
|
||||
return true
|
||||
end
|
||||
|
||||
if item:getId() == greenDjinnItem then
|
||||
player:setStorageValue(278, 3)
|
||||
player:setStorageValue(286, 3)
|
||||
player:setStorageValue(287, 3)
|
||||
player:setStorageValue(288, 3)
|
||||
elseif item:getId() == blueDjinnItem then
|
||||
player:setStorageValue(278, 2)
|
||||
player:setStorageValue(280, 2)
|
||||
player:setStorageValue(281, 2)
|
||||
player:setStorageValue(282, 2)
|
||||
player:setStorageValue(283, 3)
|
||||
end
|
||||
|
||||
item:getPosition():sendMagicEffect(3)
|
||||
item:remove()
|
||||
return true
|
||||
end
|
@ -18,6 +18,14 @@ local dolls = {
|
||||
"Grooaaaaar*cough*",
|
||||
"Aaa... CHOO!",
|
||||
"You... will.... burn!!"
|
||||
},
|
||||
[6511] = {
|
||||
"Ho ho ho",
|
||||
"Jingle bells, jingle bells...",
|
||||
"Have you been naughty?",
|
||||
"Have you been nice?",
|
||||
"Merry Christmas!",
|
||||
"Can you stop squeezing me now... I'm starting to feel a little sick."
|
||||
}
|
||||
}
|
||||
|
||||
@ -41,10 +49,23 @@ function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
elseif random == 5 then
|
||||
doTargetCombatHealth(0, player, COMBAT_PHYSICALDAMAGE, -1, -1, CONST_ME_EXPLOSIONHIT)
|
||||
end
|
||||
|
||||
if configManager.getNumber(configKeys.CLIENT_VERSION) >= 790 then
|
||||
item:transform(6566)
|
||||
item:decay()
|
||||
end
|
||||
elseif item.itemid == 5668 then
|
||||
fromPosition:sendMagicEffect(CONST_ME_MAGIC_RED)
|
||||
item:transform(item.itemid + 1)
|
||||
item:decay()
|
||||
elseif item.itemid == 5080 then
|
||||
if configManager.getNumber(configKeys.CLIENT_VERSION) >= 790 then
|
||||
item:transform(6568)
|
||||
item:decay()
|
||||
end
|
||||
elseif item.itemid == 6511 then
|
||||
item:transform(6567)
|
||||
item:decay()
|
||||
end
|
||||
|
||||
sound = sound:gsub('|PLAYERNAME|', player:getName())
|
||||
|
@ -1,5 +1,5 @@
|
||||
local lockedDoors = {
|
||||
1628, 1631, 1650, 1653, 1668, 1671, 1682, 1691, 5006, 5007, 5097, 5106, 5115, 5124, 5133, 5136, 5139, 5142, 5277, 5280, 5732, 5735
|
||||
1628, 1631, 1650, 1653, 1668, 1671, 1682, 1691, 5006, 5007, 5097, 5106, 5115, 5124, 5133, 5136, 5139, 5142, 5277, 5280, 5732, 5735, 6191, 6194, 6248, 6251
|
||||
}
|
||||
|
||||
local closedNormalDoors = {
|
||||
@ -43,6 +43,14 @@ local closedNormalDoors = {
|
||||
[5516] = 5517,
|
||||
[5733] = 5734,
|
||||
[5736] = 5737,
|
||||
[6192] = 6193,
|
||||
[6195] = 6196,
|
||||
[6197] = 6198,
|
||||
[6199] = 6200,
|
||||
[6249] = 6250,
|
||||
[6252] = 6253,
|
||||
[6254] = 6255,
|
||||
[6256] = 6257,
|
||||
}
|
||||
|
||||
local openVerticalDoors = {
|
||||
@ -81,6 +89,14 @@ local openVerticalDoors = {
|
||||
[5515] = 5514,
|
||||
[5737] = 5736,
|
||||
[5748] = 5749,
|
||||
[6193] = 6192,
|
||||
[6198] = 6197,
|
||||
[6202] = 6201,
|
||||
[6206] = 6205,
|
||||
[6250] = 6249,
|
||||
[6255] = 6254,
|
||||
[6259] = 6258,
|
||||
[6263] = 6262,
|
||||
}
|
||||
|
||||
local openHorizontalDoors = {
|
||||
@ -119,6 +135,14 @@ local openHorizontalDoors = {
|
||||
[5517] = 5516,
|
||||
[5734] = 5733,
|
||||
[5746] = 5745,
|
||||
[6196] = 6195,
|
||||
[6200] = 6199,
|
||||
[6204] = 6203,
|
||||
[6208] = 6207,
|
||||
[6253] = 6252,
|
||||
[6257] = 6256,
|
||||
[6261] = 6260,
|
||||
[6265] = 6264,
|
||||
}
|
||||
|
||||
local levelDoors = {
|
||||
@ -131,12 +155,15 @@ local levelDoors = {
|
||||
[1687] = 1688,
|
||||
[1696] = 1697,
|
||||
[5102] = 5103,
|
||||
[5104] = 5105,
|
||||
[5111] = 5112,
|
||||
[5120] = 5121,
|
||||
[5129] = 5130,
|
||||
[5291] = 5292,
|
||||
[5293] = 5294,
|
||||
[6205] = 6206,
|
||||
[6207] = 6208,
|
||||
[6262] = 6263,
|
||||
[6264] = 6265,
|
||||
}
|
||||
|
||||
local questDoors = {
|
||||
@ -148,6 +175,7 @@ local questDoors = {
|
||||
[1676] = 1677,
|
||||
[1689] = 1690,
|
||||
[1698] = 1699,
|
||||
[5104] = 5105,
|
||||
[5113] = 5114,
|
||||
[5122] = 5123,
|
||||
[5131] = 5132,
|
||||
@ -155,6 +183,10 @@ local questDoors = {
|
||||
[5289] = 5290,
|
||||
[5745] = 5746,
|
||||
[5749] = 5748,
|
||||
[6201] = 6202,
|
||||
[6203] = 6204,
|
||||
[6258] = 6259,
|
||||
[6260] = 6261,
|
||||
}
|
||||
|
||||
local passthrough = {
|
||||
|
17
data/actions/scripts/misc/fireworks_rocket.lua
Normal file
17
data/actions/scripts/misc/fireworks_rocket.lua
Normal file
@ -0,0 +1,17 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if fromPosition.x ~= CONTAINER_POSITION then
|
||||
fromPosition:sendMagicEffect(math.random(CONST_ME_FIREWORK_YELLOW, CONST_ME_FIREWORK_BLUE))
|
||||
else
|
||||
local pos = player:getPosition()
|
||||
pos:sendMagicEffect(CONST_ME_HITBYFIRE)
|
||||
pos:sendMagicEffect(CONST_ME_EXPLOSIONAREA)
|
||||
player:say("Ouch! Rather place it on the ground next time.", TALKTYPE_MONSTER_SAY)
|
||||
if (player:getHealth() > 10) then
|
||||
player:addHealth(-10)
|
||||
end
|
||||
end
|
||||
|
||||
item:remove()
|
||||
|
||||
return true
|
||||
end
|
@ -90,7 +90,11 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
elseif item:getFluidType() == FLUID_NONE then
|
||||
player:sendTextMessage(MESSAGE_STATUS_SMALL, "It is empty.")
|
||||
else
|
||||
|
||||
if item:getFluidType() == FLUID_BLOOD and target:getActionId() == 17639 then
|
||||
doRelocate({x = 32791, y = 32334, z = 09}, {x = 32791, y = 32332, z = 10})
|
||||
Position({x = 32791, y = 32332, z = 10}):sendMonsterSay("Muahahahaha...")
|
||||
end
|
||||
|
||||
Game.createItem(2886, item.type, toPosition):decay()
|
||||
item:transform(item:getId(), 0)
|
||||
end
|
||||
|
@ -1,3 +1,60 @@
|
||||
local foods = {
|
||||
[3250] = "Crunch.", -- the carrot of doom
|
||||
[3577] = "Munch.", -- meat
|
||||
[3578] = "Munch.", -- fish
|
||||
[3579] = "Mmmm.", -- salmon
|
||||
[3580] = "Munch.", -- fish
|
||||
[3581] = "Gulp.", -- shrimp
|
||||
[3582] = "Chomp.", -- ham
|
||||
[3583] = "Chomp.", -- dragon ham
|
||||
[3584] = "Yum.", -- pear
|
||||
[3585] = "Yum.", -- red apple
|
||||
[3586] = "Yum.", -- orange
|
||||
[3587] = "Yum.", -- banana
|
||||
[3588] = "Yum.", -- blueberry
|
||||
[3589] = "Slurp.", -- coconut
|
||||
[3590] = "Yum.", -- cherry
|
||||
[3591] = "Yum.", -- strawberry
|
||||
[3592] = "Yum.", -- grapes
|
||||
[3593] = "Yum.", -- melon
|
||||
[3594] = "Munch.", -- pumpkin
|
||||
[3595] = "Crunch.", -- carrot
|
||||
[3596] = "Munch.", -- tomato
|
||||
[3597] = "Crunch.", -- corncob
|
||||
[3598] = "Crunch.", -- cookie
|
||||
[3599] = "Munch.", -- candy cane
|
||||
[3600] = "Crunch.", -- bread
|
||||
[3601] = "Crunch.", -- roll
|
||||
[3602] = "Crunch.", -- brown bread
|
||||
[3606] = "Gulp.", -- egg
|
||||
[3607] = "Smack.", -- cheese
|
||||
[3723] = "Munch.", -- white mushroom
|
||||
[3724] = "Munch.", -- red mushroom
|
||||
[3725] = "Munch.", -- brown mushroom
|
||||
[3726] = "Munch.", -- orange mushroom
|
||||
[3727] = "Munch.", -- wood mushroom
|
||||
[3728] = "Munch.", -- dark mushroom
|
||||
[3729] = "Munch.", -- some mushrooms
|
||||
[3730] = "Munch.", -- some mushrooms
|
||||
[3731] = "Munch.", -- fire mushroom
|
||||
[3732] = "Munch.", -- green mushroom
|
||||
[5096] = "Yum.", -- mango
|
||||
[5678] = "Gulp.", -- tortoise egg
|
||||
[6125] = "Gulp.", -- tortoise egg from Nargor
|
||||
[6277] = "Mmmm.", -- cake
|
||||
[6278] = "Mmmm.", -- cake
|
||||
[6392] = "Mmmm.", -- valentine's cake
|
||||
[6393] = "Mmmm.", -- cream cake
|
||||
[6500] = "Mmmm.", -- gingerbreadman
|
||||
[6541] = "Gulp.", -- coloured egg
|
||||
[6542] = "Gulp.", -- coloured egg
|
||||
[6543] = "Gulp.", -- coloured egg
|
||||
[6544] = "Gulp.", -- coloured egg
|
||||
[6545] = "Gulp.", -- coloured egg
|
||||
[6569] = "Mmmm.", -- candy
|
||||
[6574] = "Mmmm.", -- bar of chocolate
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
local itemType = ItemType(item:getId())
|
||||
local condition = player:getCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT)
|
||||
@ -6,6 +63,10 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
else
|
||||
player:feed(itemType:getNutrition() * 12)
|
||||
item:remove(1)
|
||||
|
||||
if configManager.getNumber(configKeys.CLIENT_VERSION) >= 790 then
|
||||
player:say(foods[item:getId()] or "Munch.", TALKTYPE_MONSTER_SAY)
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
|
@ -40,6 +40,10 @@ local parcels = {
|
||||
[5086] = 5046,
|
||||
[5087] = 5055,
|
||||
[5088] = 5056,
|
||||
[6114] = 6111,
|
||||
[6115] = 6109,
|
||||
[6371] = 6355,
|
||||
[6372] = 6367,
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
|
@ -17,6 +17,11 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
else
|
||||
item:getPosition():sendMagicEffect(CONST_ME_SOUND_YELLOW)
|
||||
end
|
||||
elseif item:getId() == 6572 then
|
||||
item:getPosition():sendMagicEffect(CONST_ME_SOUND_GREEN)
|
||||
item:getPosition():sendMonsterSay("TOOOOOOT")
|
||||
item:transform(6573)
|
||||
item:decay()
|
||||
end
|
||||
|
||||
return true
|
||||
|
@ -39,6 +39,14 @@ local closedDoors = {
|
||||
[5733] = 5732,
|
||||
[5735] = 5737,
|
||||
[5736] = 5735,
|
||||
[6191] = 6193,
|
||||
[6192] = 6191,
|
||||
[6194] = 6196,
|
||||
[6195] = 6194,
|
||||
[6248] = 6250,
|
||||
[6249] = 6248,
|
||||
[6251] = 6253,
|
||||
[6252] = 6251,
|
||||
}
|
||||
|
||||
local openDoors = {
|
||||
@ -62,6 +70,10 @@ local openDoors = {
|
||||
[5282] = 5280,
|
||||
[5734] = 5732,
|
||||
[5737] = 5735,
|
||||
[6193] = 6191,
|
||||
[6196] = 6194,
|
||||
[6250] = 6248,
|
||||
[6253] = 6251,
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
|
@ -1,3 +1,5 @@
|
||||
local fruits = {3584, 3585, 3586, 3587, 3588, 3589, 3590, 3591, 3592, 3593, 3595, 3596, 5096}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if not target:isItem() then
|
||||
return false
|
||||
@ -7,6 +9,11 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
target:transform(2977, 1)
|
||||
target:decay()
|
||||
return true
|
||||
elseif isInArray(fruits, target:getId()) and player:removeItem(6277, 1) then
|
||||
target:remove(1)
|
||||
player:addItem(6278, 1)
|
||||
player:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
end
|
6
data/actions/scripts/misc/party_cake.lua
Normal file
6
data/actions/scripts/misc/party_cake.lua
Normal file
@ -0,0 +1,6 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
item:getPosition():sendMagicEffect(CONST_ME_POFF)
|
||||
item:transform(6278, 1)
|
||||
item:getPosition():sendMonsterSay(player:getName() .. " blew out the candle.")
|
||||
return true
|
||||
end
|
9
data/actions/scripts/misc/party_hat.lua
Normal file
9
data/actions/scripts/misc/party_hat.lua
Normal file
@ -0,0 +1,9 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local slot = player:getSlotItem(CONST_SLOT_HEAD)
|
||||
if slot and item.uid == slot.uid then
|
||||
player:getPosition():sendMagicEffect(CONST_ME_GIFT_WRAPS)
|
||||
return true
|
||||
end
|
||||
|
||||
return false
|
||||
end
|
@ -1,3 +1,51 @@
|
||||
local pitsOfInfernoLava = {
|
||||
Position(32808, 32336, 11),
|
||||
Position(32809, 32336, 11),
|
||||
Position(32810, 32336, 11),
|
||||
Position(32808, 32334, 11),
|
||||
Position(32807, 32334, 11),
|
||||
Position(32807, 32335, 11),
|
||||
Position(32807, 32336, 11),
|
||||
Position(32807, 32337, 11),
|
||||
Position(32806, 32337, 11),
|
||||
Position(32805, 32337, 11),
|
||||
Position(32805, 32338, 11),
|
||||
Position(32805, 32339, 11),
|
||||
Position(32806, 32339, 11),
|
||||
Position(32806, 32338, 11),
|
||||
Position(32807, 32338, 11),
|
||||
Position(32808, 32338, 11),
|
||||
Position(32808, 32337, 11),
|
||||
Position(32809, 32337, 11),
|
||||
Position(32810, 32337, 11),
|
||||
Position(32811, 32337, 11),
|
||||
Position(32811, 32338, 11),
|
||||
Position(32806, 32338, 11),
|
||||
Position(32810, 32338, 11),
|
||||
Position(32810, 32339, 11),
|
||||
Position(32809, 32339, 11),
|
||||
Position(32809, 32338, 11),
|
||||
Position(32811, 32336, 11),
|
||||
Position(32811, 32335, 11),
|
||||
Position(32810, 32335, 11),
|
||||
Position(32809, 32335, 11),
|
||||
Position(32808, 32335, 11),
|
||||
Position(32809, 32334, 11),
|
||||
Position(32809, 32333, 11),
|
||||
Position(32810, 32333, 11),
|
||||
Position(32811, 32333, 11),
|
||||
Position(32806, 32338, 11),
|
||||
Position(32810, 32334, 11),
|
||||
Position(32811, 32334, 11),
|
||||
Position(32812, 32334, 11),
|
||||
Position(32813, 32334, 11),
|
||||
Position(32812, 32333, 11),
|
||||
Position(32810, 32334, 11),
|
||||
Position(32812, 32335, 11),
|
||||
Position(32813, 32335, 11),
|
||||
Position(32813, 32333, 11)
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
local tile = Tile(toPosition)
|
||||
if not tile then
|
||||
@ -29,6 +77,13 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
Game.sendMagicEffect({x = 32356, y = 32074, z = 10}, 3)
|
||||
doTargetCombatHealth(0, player, COMBAT_PHYSICALDAMAGE, -50, -50)
|
||||
return true
|
||||
elseif target:getActionId() == 17643 then
|
||||
for i = 1, #pitsOfInfernoLava do
|
||||
Game.createItem(5815, 1, pitsOfInfernoLava[i])
|
||||
end
|
||||
target:transform(3141)
|
||||
toPosition:sendMagicEffect(CONST_ME_POFF)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
22
data/actions/scripts/misc/postman_quest_pass.lua
Normal file
22
data/actions/scripts/misc/postman_quest_pass.lua
Normal file
@ -0,0 +1,22 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if player:getStorageValue(250) == 5 then
|
||||
player:sendTextMessage(MESSAGE_INFO_DESCR, "You have already finished The Postman Missions.")
|
||||
return true
|
||||
end
|
||||
|
||||
player:setStorageValue(227, 6)
|
||||
player:setStorageValue(228, 3)
|
||||
player:setStorageValue(229, 4)
|
||||
player:setStorageValue(230, 21)
|
||||
player:setStorageValue(231, 3)
|
||||
player:setStorageValue(233, 11)
|
||||
player:setStorageValue(234, 8)
|
||||
player:setStorageValue(242, 2)
|
||||
player:setStorageValue(244, 3)
|
||||
player:setStorageValue(245, 3)
|
||||
player:setStorageValue(250, 5)
|
||||
|
||||
item:getPosition():sendMagicEffect(CONST_ME_SOUND_GREEN)
|
||||
item:remove()
|
||||
return true
|
||||
end
|
@ -1,6 +1,6 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
-- The Shattered Isles Parrot ring
|
||||
if target.itemid == 6094 then
|
||||
if target:getId() == 6094 then
|
||||
if player:getStorageValue(17502) == 1 and player:getStorageValue(17503) ~= 1 then
|
||||
toPosition:sendMagicEffect(CONST_ME_POFF)
|
||||
Game.createItem(6093, 1, Position(32422, 32770, 1))
|
||||
|
@ -1,11 +1,9 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2772 and Game.isItemThere({x = 33148, y = 32867, z = 09}, 2129) and Game.isItemThere ({x = 33149, y = 32867, z = 09}, 2129) and Game.isItemThere ({x = 33148, y = 32868, z = 09}, 2129) and Game.isItemThere ({x = 33149, y = 32868, z = 09}, 2129) then
|
||||
if item:getId() == 2772 and Game.isItemThere({x = 33148, y = 32867, z = 09}, 2129) and Game.isItemThere ({x = 33149, y = 32867, z = 09}, 2129) then
|
||||
item:transform(2773, 1)
|
||||
item:decay()
|
||||
Game.removeItemOnMap({x = 33148, y = 32867, z = 09}, 2129)
|
||||
Game.removeItemOnMap({x = 33149, y = 32867, z = 09}, 2129)
|
||||
Game.removeItemOnMap({x = 33148, y = 32868, z = 09}, 2129)
|
||||
Game.removeItemOnMap({x = 33149, y = 32868, z = 09}, 2129)
|
||||
elseif item:getId() == 2772 then
|
||||
item:transform(2773, 1)
|
||||
item:decay()
|
||||
@ -17,12 +15,8 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
item:decay()
|
||||
doRelocate({x = 33148, y = 32867, z = 09}, {x = 33148, y = 32869, z = 09})
|
||||
doRelocate({x = 33149, y = 32867, z = 09}, {x = 33149, y = 32869, z = 09})
|
||||
doRelocate({x = 33148, y = 32868, z = 09}, {x = 33148, y = 32869, z = 09})
|
||||
doRelocate({x = 33149, y = 32868, z = 09},{x = 33149, y = 32869, z = 09})
|
||||
Game.createItem(2129, 1, {x = 33148, y = 32867, z = 09})
|
||||
Game.createItem(2129, 1, {x = 33149, y = 32867, z = 09})
|
||||
Game.createItem(2129, 1, {x = 33148, y = 32868, z = 09})
|
||||
Game.createItem(2129, 1, {x = 33149, y = 32868, z = 09})
|
||||
end
|
||||
return true
|
||||
end
|
@ -1,7 +1,15 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2772 then
|
||||
if item:getId() == 2772 and Game.isItemThere({x = 33147, y = 32862, z = 9}, 3246) and Game.isItemThere({x = 33144, y = 32868, z = 8}, 1653) and getGlobalStorageValue(21411) == -1 then
|
||||
item:transform(2773, 1)
|
||||
item:decay()
|
||||
Game.sendMagicEffect({x = 33147, y = 32862, z = 9}, CONST_ME_SOUND_WHITE)
|
||||
Game.sendMagicEffect({x = 33145, y = 32870, z = 8}, CONST_ME_SOUND_YELLOW)
|
||||
doRelocate({x = 33147, y = 32862, z = 9}, {x = 33145, y = 32870, z = 8})
|
||||
Game.removeItemOnMap({x = 33144, y = 32868, z = 8}, 1653)
|
||||
Game.createItem(1654, 1, {x = 33144, y = 32868, z = 8})
|
||||
setGlobalStorageValue(21411, 1)
|
||||
player:setStorageValue(17605, 1)
|
||||
broadcastMessage("The player " .. player:getName() .. " have solved the Serpentine Tower!", MESSAGE_STATUS_WARNING)
|
||||
elseif item:getId() == 2773 then
|
||||
item:transform(2772, 1)
|
||||
item:decay()
|
||||
|
11
data/actions/scripts/pits_of_inferno/bazirMazeLever.lua
Normal file
11
data/actions/scripts/pits_of_inferno/bazirMazeLever.lua
Normal file
@ -0,0 +1,11 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local portal = Tile(Position(32816, 32345, 13)):getItemById(1949)
|
||||
if not portal then
|
||||
local item = Game.createItem(1949, 1, Position(32816, 32345, 13))
|
||||
item:setMovementId(17686)
|
||||
else
|
||||
portal:remove()
|
||||
end
|
||||
item:transform(item.itemid == 2772 and 2773 or 2772)
|
||||
return true
|
||||
end
|
30
data/actions/scripts/pits_of_inferno/bazirMirror.lua
Normal file
30
data/actions/scripts/pits_of_inferno/bazirMirror.lua
Normal file
@ -0,0 +1,30 @@
|
||||
local config = {
|
||||
[39511] = {
|
||||
fromPosition = Position(32739, 32392, 14),
|
||||
toPosition = Position(32739, 32391, 14)
|
||||
},
|
||||
[39512] = {
|
||||
teleportPlayer = true,
|
||||
fromPosition = Position(32739, 32391, 14),
|
||||
toPosition = Position(32739, 32392, 14)
|
||||
}
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local useItem = config[item:getActionId()]
|
||||
if not useItem then
|
||||
return true
|
||||
end
|
||||
|
||||
if useItem.teleportPlayer then
|
||||
player:teleportTo(Position(32712, 32392, 13))
|
||||
player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
|
||||
player:say('Beauty has to be rewarded! Muahahaha!', TALKTYPE_MONSTER_SAY)
|
||||
end
|
||||
|
||||
local tapestry = Tile(useItem.fromPosition):getItemById(6433)
|
||||
if tapestry then
|
||||
tapestry:moveTo(useItem.toPosition)
|
||||
end
|
||||
return true
|
||||
end
|
@ -0,0 +1,8 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item.itemid == 2772 then
|
||||
player:teleportTo(Position(32806, 32328, 15))
|
||||
player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
|
||||
item:transform(2773)
|
||||
end
|
||||
return true
|
||||
end
|
20
data/actions/scripts/pits_of_inferno/fireThroneLever.lua
Normal file
20
data/actions/scripts/pits_of_inferno/fireThroneLever.lua
Normal file
@ -0,0 +1,20 @@
|
||||
local lava = {
|
||||
Position(32912, 32209, 15),
|
||||
Position(32913, 32209, 15),
|
||||
Position(32912, 32210, 15),
|
||||
Position(32913, 32210, 15)
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local lavaTile
|
||||
for i = 1, #lava do
|
||||
lavaTile = Tile(lava[i]):getGround()
|
||||
if lavaTile and isInArray({410, 727}, lavaTile.itemid) then
|
||||
lavaTile:transform(lavaTile.itemid == 727 and 410 or 727)
|
||||
lava[i]:sendMagicEffect(CONST_ME_POFF)
|
||||
end
|
||||
end
|
||||
|
||||
item:transform(item.itemid == 2772 and 2773 or 2772)
|
||||
return true
|
||||
end
|
@ -0,0 +1,37 @@
|
||||
local config = {
|
||||
[17653] = { doorPosition = {x = 32833, y = 32333, z = 11}, vocationIds = {4, 8} },
|
||||
[17656] = { doorPosition = {x = 32835, y = 32333, z = 11}, vocationIds = {1, 5} },
|
||||
[17655] = { doorPosition = {x = 32831, y = 32333, z = 11}, vocationIds = {3, 7} },
|
||||
[17654] = { doorPosition = {x = 32837, y = 32333, z = 11}, vocationIds = {2, 6} }
|
||||
}
|
||||
|
||||
local function doTransformDoors(position)
|
||||
local tile = Tile(Position(position))
|
||||
if tile then
|
||||
local lockedDoor = tile:getItemById(1628)
|
||||
local closedDoor = tile:getItemById(1629)
|
||||
local openDoor = tile:getItemById(1630)
|
||||
if lockedDoor then
|
||||
lockedDoor:transform(1629, 1)
|
||||
lockedDoor:decay()
|
||||
elseif closedDoor then
|
||||
closedDoor:transform(1628, 1)
|
||||
closedDoor:decay()
|
||||
elseif openDoor then
|
||||
openDoor:transform(1628, 1)
|
||||
openDoor:decay()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
local configValue = config[item:getActionId()];
|
||||
if isInArray(configValue.vocationIds, player:getVocation():getId()) then
|
||||
doTransformDoors(configValue.doorPosition)
|
||||
Position(configValue.doorPosition):sendMagicEffect(CONST_ME_FIREAREA)
|
||||
item:transform(item.itemid == 2772 and 2773 or 2772)
|
||||
return true
|
||||
end
|
||||
|
||||
return false
|
||||
end
|
30
data/actions/scripts/pits_of_inferno/ladderLevers.lua
Normal file
30
data/actions/scripts/pits_of_inferno/ladderLevers.lua
Normal file
@ -0,0 +1,30 @@
|
||||
local pos = { Position(32861, 32305, 11), Position(32860, 32313, 11) }
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item:getId() ~= 2772 then
|
||||
return false
|
||||
end
|
||||
|
||||
item:transform(2773)
|
||||
|
||||
if item:getActionId() == 3301 then
|
||||
local lava = Tile(pos[1]):getItemById(727)
|
||||
if lava then
|
||||
lava:transform(1771)
|
||||
end
|
||||
|
||||
local dirtId, dirtItem = { 4797, 4799 }
|
||||
for i = 1, #dirtId do
|
||||
dirtItem = Tile(pos[1]):getItemById(dirtId[i])
|
||||
if dirtItem then
|
||||
dirtItem:remove()
|
||||
end
|
||||
end
|
||||
elseif item:getActionId() == 3302 then
|
||||
local item = Tile(pos[2]):getItemById(389)
|
||||
if item then
|
||||
item:remove()
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
62
data/actions/scripts/pits_of_inferno/levers.lua
Normal file
62
data/actions/scripts/pits_of_inferno/levers.lua
Normal file
@ -0,0 +1,62 @@
|
||||
local text = {
|
||||
[1] = 'first', [2] = 'second', [3] = 'third', [4] = 'fourth', [5] = 'fifth',
|
||||
[6] = 'sixth', [7] = 'seventh', [8] = 'eighth', [9] = 'ninth', [10] = 'tenth',
|
||||
[11] = 'eleventh', [12] = 'twelfth', [13] = 'thirteenth', [14] = 'fourteenth', [15] = 'fifteenth'
|
||||
}
|
||||
|
||||
local stonePositions = {
|
||||
Position(32851, 32333, 12),
|
||||
Position(32852, 32333, 12)
|
||||
}
|
||||
|
||||
local function createStones()
|
||||
for i = 1, #stonePositions do
|
||||
Game.createItem(1791, 1, stonePositions[i])
|
||||
end
|
||||
|
||||
setGlobalStorageValue(17657, 0)
|
||||
end
|
||||
|
||||
local function revertLever(position)
|
||||
local leverItem = Tile(position):getItemById(2773)
|
||||
if leverItem then
|
||||
leverItem:transform(2772)
|
||||
end
|
||||
end
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item:getId() ~= 2772 then
|
||||
return false
|
||||
end
|
||||
|
||||
local leverCount = math.max(0, getGlobalStorageValue(17657))
|
||||
if item:getActionId() > 2049 and item:getActionId() < 2065 then
|
||||
local number = item:getActionId() - 2049
|
||||
if leverCount + 1 ~= number then
|
||||
return false
|
||||
end
|
||||
|
||||
setGlobalStorageValue(17657, number)
|
||||
player:say('You flipped the ' .. text[number] .. ' lever. Hurry up and find the next one!', TALKTYPE_MONSTER_SAY, false, player, toPosition)
|
||||
elseif item:getActionId() == 2065 then
|
||||
if leverCount ~= 15 then
|
||||
player:say('The final lever won\'t budge... yet.', TALKTYPE_MONSTER_SAY)
|
||||
return true
|
||||
end
|
||||
|
||||
local stone
|
||||
for i = 1, #stonePositions do
|
||||
stone = Tile(stonePositions[i]):getItemById(1791)
|
||||
if stone then
|
||||
stone:remove()
|
||||
stonePositions[i]:sendMagicEffect(CONST_ME_EXPLOSIONAREA)
|
||||
end
|
||||
end
|
||||
|
||||
addEvent(createStones, 15 * 60 * 1000)
|
||||
end
|
||||
|
||||
item:transform(2773)
|
||||
addEvent(revertLever, 15 * 60 * 1000, toPosition)
|
||||
return true
|
||||
end
|
16
data/actions/scripts/pits_of_inferno/mazeStone.lua
Normal file
16
data/actions/scripts/pits_of_inferno/mazeStone.lua
Normal file
@ -0,0 +1,16 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item.itemid == 2773 then
|
||||
return false
|
||||
end
|
||||
|
||||
toPosition.x = toPosition.x - 1
|
||||
toPosition.y = toPosition.y + 1
|
||||
|
||||
local stone = Tile(toPosition):getItemById(1791)
|
||||
if stone then
|
||||
stone:remove()
|
||||
end
|
||||
|
||||
item:transform(2773)
|
||||
return true
|
||||
end
|
33
data/actions/scripts/pits_of_inferno/oil.lua
Normal file
33
data/actions/scripts/pits_of_inferno/oil.lua
Normal file
@ -0,0 +1,33 @@
|
||||
local bridgePosition = Position(32801, 32336, 11)
|
||||
|
||||
local function revertBridge()
|
||||
Tile(bridgePosition):getItemById(409):transform(622)
|
||||
end
|
||||
|
||||
local function revertLever(position)
|
||||
local leverItem = Tile(position):getItemById(2773)
|
||||
if leverItem then
|
||||
leverItem:transform(2772)
|
||||
end
|
||||
end
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item.itemid ~= 2772 then
|
||||
return false
|
||||
end
|
||||
|
||||
if not Tile(Position(32795, 32337, 11)):getItemById(2886, FLUID_OIL) then
|
||||
player:say('The lever is creaking and rusty.', TALKTYPE_MONSTER_SAY)
|
||||
return true
|
||||
end
|
||||
|
||||
local water = Tile(bridgePosition):getItemById(622)
|
||||
if water then
|
||||
water:transform(409)
|
||||
addEvent(revertBridge, 10 * 60 * 1000)
|
||||
end
|
||||
|
||||
item:transform(2773)
|
||||
addEvent(revertLever, 10 * 60 * 1000, toPosition)
|
||||
return true
|
||||
end
|
12
data/actions/scripts/pits_of_inferno/stoneLever.lua
Normal file
12
data/actions/scripts/pits_of_inferno/stoneLever.lua
Normal file
@ -0,0 +1,12 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item.itemid == 2772 then
|
||||
local stonePosition = Position(32849, 32282, 10)
|
||||
local stoneItem = Tile(stonePosition):getItemById(1791)
|
||||
if stoneItem then
|
||||
stoneItem:remove()
|
||||
stonePosition:sendMagicEffect(CONST_ME_EXPLOSIONAREA)
|
||||
item:transform(2773)
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
14
data/actions/scripts/pits_of_inferno/trapLever.lua
Normal file
14
data/actions/scripts/pits_of_inferno/trapLever.lua
Normal file
@ -0,0 +1,14 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
|
||||
item:transform(item.itemid == 2772 and 2773 or 2772)
|
||||
|
||||
if item.itemid ~= 2772 then
|
||||
return true
|
||||
end
|
||||
|
||||
local stoneItem = Tile(Position(32826, 32274, 11)):getItemById(1772)
|
||||
if stoneItem then
|
||||
stoneItem:remove()
|
||||
end
|
||||
return true
|
||||
end
|
22
data/actions/scripts/serpentine_tower/behemoth_lever.lua
Normal file
22
data/actions/scripts/serpentine_tower/behemoth_lever.lua
Normal file
@ -0,0 +1,22 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2772 and Game.isItemThere ({x = 33148, y = 32868, z = 09}, 2129) and Game.isItemThere ({x = 33149, y = 32868, z = 09}, 2129) then
|
||||
item:transform(2773, 1)
|
||||
item:decay()
|
||||
Game.removeItemOnMap({x = 33148, y = 32868, z = 09}, 2129)
|
||||
Game.removeItemOnMap({x = 33149, y = 32868, z = 09}, 2129)
|
||||
elseif item:getId() == 2772 then
|
||||
item:transform(2773, 1)
|
||||
item:decay()
|
||||
elseif item:getId() == 2773 and Game.isItemThere({x = 33148, y = 32868, z = 9}, 2129) then
|
||||
item:transform(2772, 1)
|
||||
item:decay()
|
||||
elseif item:getId() == 2773 then
|
||||
item:transform(2772, 1)
|
||||
item:decay()
|
||||
doRelocate({x = 33148, y = 32868, z = 09}, {x = 33148, y = 32869, z = 09})
|
||||
doRelocate({x = 33149, y = 32868, z = 09},{x = 33149, y = 32869, z = 09})
|
||||
Game.createItem(2129, 1, {x = 33148, y = 32868, z = 09})
|
||||
Game.createItem(2129, 1, {x = 33149, y = 32868, z = 09})
|
||||
end
|
||||
return true
|
||||
end
|
@ -0,0 +1,9 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2931 and Game.isItemThere({x = 33151, y = 32864, z = 8},1345) then
|
||||
Game.removeItemOnMap({x = 33151, y = 32864, z = 8}, 1345)
|
||||
Game.sendMagicEffect({x = 33146, y = 32871, z = 8}, 14)
|
||||
elseif item:getId() == 2931 then
|
||||
Game.sendMagicEffect({x = 33146, y = 32871, z = 8}, 3)
|
||||
end
|
||||
return true
|
||||
end
|
@ -0,0 +1,9 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2929 and Game.isItemThere({x = 33151, y = 32866, z = 08},1345) then
|
||||
Game.removeItemOnMap({x = 33151, y = 32866, z = 08}, 1345)
|
||||
Game.sendMagicEffect({x = 33148, y = 32861, z = 8}, 14)
|
||||
elseif item:getId() == 2929 then
|
||||
Game.sendMagicEffect({x = 33148, y = 32861, z = 8}, 3)
|
||||
end
|
||||
return true
|
||||
end
|
@ -0,0 +1,9 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2931 and Game.isItemThere({x = 33151, y = 32868, z = 8}, 1345) then
|
||||
Game.removeItemOnMap({x = 33151, y = 32868, z = 8}, 1345)
|
||||
Game.sendMagicEffect({x = 33145, y = 32865, z = 8}, 14)
|
||||
elseif item:getId() == 2931 then
|
||||
Game.sendMagicEffect({x = 33145, y = 32865, z = 8}, 3)
|
||||
end
|
||||
return true
|
||||
end
|
7
data/actions/scripts/serpentine_tower/vampire_lever.lua
Normal file
7
data/actions/scripts/serpentine_tower/vampire_lever.lua
Normal file
@ -0,0 +1,7 @@
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
if item:getId() == 2772 and Game.isItemThere({x = 33145, y = 32863, z = 8}, 1650) then
|
||||
Game.removeItemOnMap({x = 33145, y = 32863, z = 8}, 1650)
|
||||
Game.createItem(1651, 1, {x = 33145, y = 32863, z = 8})
|
||||
end
|
||||
return true
|
||||
end
|
@ -6,4 +6,7 @@
|
||||
<event type="login" name="FirstItems" script="firstitems.lua"/>
|
||||
<event type="login" name="RegenerateStamina" script="regeneratestamina.lua" />
|
||||
<event type="death" name="PlayerDeath" script="playerdeath.lua"/>
|
||||
|
||||
<!-- Killing In The Name Of Quest -->
|
||||
<event type="kill" name="KillingInTheNameOfKills" script="killing_in_the_name_of.lua" />
|
||||
</creaturescripts>
|
||||
|
@ -3,16 +3,31 @@ function onLogin(player)
|
||||
player:setStorageValue(17571, 1)
|
||||
|
||||
-- Items
|
||||
if player:getSex() == PLAYERSEX_FEMALE then
|
||||
player:addItem(3562, 1, true, -1, CONST_SLOT_ARMOR)
|
||||
else
|
||||
player:addItem(3561, 1, true, -1, CONST_SLOT_ARMOR)
|
||||
end
|
||||
player:addItem(3270, 1, true, -1, CONST_SLOT_LEFT)
|
||||
player:addItem(2920, 1, true, -1, CONST_SLOT_RIGHT)
|
||||
player:addItem(3355, 1, true, -1, CONST_SLOT_HEAD)
|
||||
player:addItem(3361, 1, true, -1, CONST_SLOT_ARMOR)
|
||||
player:addItem(3559, 1, true, -1, CONST_SLOT_LEGS)
|
||||
player:addItem(3552, 1, true, -1, CONST_SLOT_FEET)
|
||||
player:addItem(3412, 1, true, -1, CONST_SLOT_LEFT)
|
||||
player:addItem(3007, 1, true, 100, CONST_SLOT_RING)
|
||||
player:addItem(2920, 1, true, -1, CONST_SLOT_AMMO)
|
||||
|
||||
local container = Game.createItem(2853, 1)
|
||||
if player:getVocation():getId() == 1 then
|
||||
player:addItem(3074, 1, true, -1, CONST_SLOT_RIGHT)
|
||||
elseif player:getVocation():getId() == 2 then
|
||||
player:addItem(3066, 1, true, -1, CONST_SLOT_RIGHT)
|
||||
elseif player:getVocation():getId() == 3 then
|
||||
player:addItem(3277, 1, true, 5, CONST_SLOT_RIGHT)
|
||||
elseif player:getVocation():getId() == 4 then
|
||||
local weapons = { 3300, 3286, 3276 }
|
||||
player:addItem(weapons[math.random(#weapons)], 1, true, -1, CONST_SLOT_RIGHT)
|
||||
end
|
||||
|
||||
local container = Game.createItem(2854, 1)
|
||||
container:addItem(3585, 1)
|
||||
container:addItem(3031, 25)
|
||||
container:addItem(3725, 5)
|
||||
container:addItem(3003, 1)
|
||||
container:addItem(3457, 1)
|
||||
|
||||
player:addItemEx(container, true, CONST_SLOT_BACKPACK)
|
||||
|
||||
@ -22,11 +37,6 @@ function onLogin(player)
|
||||
else
|
||||
player:setOutfit({lookType = 128, lookHead = 78, lookBody = 106, lookLegs = 58, lookFeet = 95})
|
||||
end
|
||||
|
||||
local town = Town("Rookgaard")
|
||||
player:teleportTo(town:getTemplePosition())
|
||||
player:setTown(town)
|
||||
player:setDirection(DIRECTION_SOUTH)
|
||||
end
|
||||
return true
|
||||
end
|
||||
|
149
data/creaturescripts/scripts/killing_in_the_name_of.lua
Normal file
149
data/creaturescripts/scripts/killing_in_the_name_of.lua
Normal file
@ -0,0 +1,149 @@
|
||||
local tasks = {
|
||||
-- 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},
|
||||
['frost troll'] = {taskerStorage = 17608, progressStorage = 17697, killsRequired = 100},
|
||||
['swamp troll'] = {taskerStorage = 17608, progressStorage = 17698, killsRequired = 100},
|
||||
['rat'] = {taskerStorage = 17608, progressStorage = 17699, killsRequired = 25},
|
||||
['cave rat'] = {taskerStorage = 17608, progressStorage = 17699, killsRequired = 25},
|
||||
['wolf'] = {taskerStorage = 17608, progressStorage = 17700, killsRequired = 100},
|
||||
['wasp'] = {taskerStorage = 17608, progressStorage = 17701, killsRequired = 100},
|
||||
['larva'] = {taskerStorage = 17608, progressStorage = 17702, killsRequired = 100},
|
||||
['dwarf'] = {taskerStorage = 17608, progressStorage = 17703, killsRequired = 100},
|
||||
['skeleton'] = {taskerStorage = 17608, progressStorage = 17704, killsRequired = 100},
|
||||
['ghoul'] = {taskerStorage = 17608, progressStorage = 17704, killsRequired = 100},
|
||||
['orc spearman'] = {taskerStorage = 17608, progressStorage = 17712, killsRequired = 300},
|
||||
['orc shaman'] = {taskerStorage = 17608, progressStorage = 17712, killsRequired = 300},
|
||||
['orc rider'] = {taskerStorage = 17608, progressStorage = 17712, killsRequired = 300},
|
||||
['orc warrior'] = {taskerStorage = 17608, progressStorage = 17712, killsRequired = 300},
|
||||
['orc berserker'] = {taskerStorage = 17608, progressStorage = 17712, killsRequired = 300},
|
||||
['minotaur archer'] = {taskerStorage = 17608, progressStorage = 17713, killsRequired = 300},
|
||||
['minotaur guard'] = {taskerStorage = 17608, progressStorage = 17713, killsRequired = 300},
|
||||
['minotaur mage'] = {taskerStorage = 17608, progressStorage = 17713, killsRequired = 300},
|
||||
['lizard templar'] = {taskerStorage = 17608, progressStorage = 17714, killsRequired = 300},
|
||||
['lizard sentinel'] = {taskerStorage = 17608, progressStorage = 17714, killsRequired = 300},
|
||||
['lizard snakecharmer'] = {taskerStorage = 17608, progressStorage = 17714, killsRequired = 300},
|
||||
['dwarf soldier'] = {taskerStorage = 17608, progressStorage = 17715, killsRequired = 300},
|
||||
['dwarf guard'] = {taskerStorage = 17608, progressStorage = 17715, killsRequired = 300},
|
||||
['dwarf geomancer'] = {taskerStorage = 17608, progressStorage = 17715, killsRequired = 300},
|
||||
['ghost'] = {taskerStorage = 17608, progressStorage = 17716, killsRequired = 200},
|
||||
['demon skeleton'] = {taskerStorage = 17608, progressStorage = 17716, killsRequired = 200},
|
||||
['vampire'] = {taskerStorage = 17608, progressStorage = 17716, killsRequired = 200},
|
||||
['orc leader'] = {taskerStorage = 17608, progressStorage = 17717, killsRequired = 125},
|
||||
['orc warlord'] = {taskerStorage = 17608, progressStorage = 17717, killsRequired = 125},
|
||||
['hero'] = {taskerStorage = 17608, progressStorage = 17718, killsRequired = 150},
|
||||
['necromancer'] = {taskerStorage = 17608, progressStorage = 17719, killsRequired = 300},
|
||||
['priestess'] = {taskerStorage = 17608, progressStorage = 17719, killsRequired = 300},
|
||||
['nightmare'] = {taskerStorage = 17608, progressStorage = 17720, killsRequired = 150},
|
||||
['warlock'] = {taskerStorage = 17608, progressStorage = 17721, killsRequired = 300},
|
||||
['demon'] = {taskerStorage = 17608, progressStorage = 17722, killsRequired = 6666},
|
||||
|
||||
-- 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 = 150},
|
||||
|
||||
-- Young Vocation Tasks
|
||||
['amazon'] = {taskerStorage = 17644, progressStorage = 17645, killsRequired = 50},
|
||||
['minotaur'] = {taskerStorage = 17649, progressStorage = 17648, killsRequired = 50},
|
||||
['orc'] = {taskerStorage = 17652, progressStorage = 17651, killsRequired = 50},
|
||||
}
|
||||
|
||||
local function randomSort(arr)
|
||||
local sorted = {}
|
||||
local rand2
|
||||
local rand
|
||||
local mem
|
||||
for i=1,#arr do
|
||||
sorted[i] = arr[i]
|
||||
end
|
||||
if (#arr <= 1) then
|
||||
return sorted;
|
||||
end
|
||||
for i=1,(#arr)^2 do
|
||||
repeat
|
||||
rand = math.random(1,#sorted)
|
||||
rand2 = math.random(1,#sorted)
|
||||
until rand ~= rand2
|
||||
mem = sorted[rand]
|
||||
sorted[rand] = pgtss[rand2]
|
||||
sorted[rand2] = mem
|
||||
end
|
||||
return sorted
|
||||
end
|
||||
|
||||
local maxPlayersInPartyShare = 2
|
||||
-- not tested probably nothing is working
|
||||
function onKill(player, target)
|
||||
if target:isPlayer() or target:getMaster() then
|
||||
return true
|
||||
end
|
||||
|
||||
local targetName = target:getName():lower()
|
||||
local task = tasks[targetName]
|
||||
if task ~= nil then
|
||||
|
||||
local players
|
||||
local party = player:getParty()
|
||||
if party ~= nil and party:isSharedExperienceEnabled() then
|
||||
players = party:getMembers() -- all members of the party
|
||||
players[#players + 1] = party:getLeader() -- don't forget the leader
|
||||
|
||||
if #players > maxPlayersInPartyShare then -- if more than 4 players are in party than shuffle the table and give task bonus only for the first 4 players
|
||||
players = randomSort(players)
|
||||
end
|
||||
else
|
||||
players = { player } -- no party? then just the player
|
||||
end
|
||||
|
||||
for i, member in ipairs(players) do
|
||||
print(i)
|
||||
if i < maxPlayersInPartyShare then
|
||||
local inProgressQuest = member:getStorageValue(task.taskerStorage)
|
||||
if inProgressQuest == task.progressStorage then
|
||||
local playerQuestKills = member:getStorageValue(task.progressStorage)
|
||||
if playerQuestKills < task.killsRequired then
|
||||
member:setStorageValue(task.progressStorage, playerQuestKills + 1)
|
||||
member:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, "[Task Tracker] You have killed " .. playerQuestKills + 1 .. "/" .. task.killsRequired .. " " .. targetName .. ".")
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return true
|
||||
end
|
@ -58,6 +58,7 @@ function onLogin(player)
|
||||
player:registerEvent("PlayerLogout")
|
||||
player:registerEvent("FirstItems")
|
||||
player:registerEvent("RegenerateStamina")
|
||||
player:registerEvent("KillingInTheNameOfKills")
|
||||
|
||||
return true
|
||||
end
|
||||
|
@ -183,14 +183,20 @@ function Player:onGainExperience(source, exp, rawExp)
|
||||
if configManager.getBoolean(configKeys.STAMINA_SYSTEM) then
|
||||
useStamina(self)
|
||||
|
||||
if self:getStorageValue(17582) > os.time() then
|
||||
exp = exp * 1.1
|
||||
end
|
||||
|
||||
local staminaMinutes = self:getStamina()
|
||||
if staminaMinutes > 2400 and self:getStorageValue(17582) > os.time() then
|
||||
exp = exp * 1.5
|
||||
elseif staminaMinutes <= 840 then
|
||||
if staminaMinutes <= 840 then
|
||||
exp = exp * 0.5
|
||||
end
|
||||
end
|
||||
|
||||
if getGlobalStorageValue(17589) > os.time() then
|
||||
exp = exp * (1 + getGlobalStorageValue(17585) / 100)
|
||||
end
|
||||
|
||||
return exp
|
||||
end
|
||||
|
||||
@ -204,7 +210,20 @@ function Player:onGainSkillTries(skill, tries)
|
||||
end
|
||||
|
||||
if skill == SKILL_MAGLEVEL then
|
||||
return tries * configManager.getNumber(configKeys.RATE_MAGIC)
|
||||
tries = tries * configManager.getNumber(configKeys.RATE_MAGIC)
|
||||
|
||||
if getGlobalStorageValue(17591) > os.time() then
|
||||
tries = tries * (1 + getGlobalStorageValue(17587) / 100)
|
||||
end
|
||||
|
||||
return tries
|
||||
end
|
||||
return tries * configManager.getNumber(configKeys.RATE_SKILL)
|
||||
|
||||
tries = tries * configManager.getNumber(configKeys.RATE_SKILL)
|
||||
|
||||
if getGlobalStorageValue(17590) > os.time() then
|
||||
tries = tries * (1 + getGlobalStorageValue(17586) / 100)
|
||||
end
|
||||
|
||||
return tries
|
||||
end
|
||||
|
@ -2,6 +2,6 @@
|
||||
<globalevents>
|
||||
<globalevent type="startup" name="ServerStartup" script="startup.lua"/>
|
||||
<globalevent type="record" name="PlayerRecord" script="record.lua"/>
|
||||
<globalevent name="Server Save" time="08:55:00" script="serversave.lua" />
|
||||
<globalevent name="Server Save" time="07:55:00" script="serversave.lua" />
|
||||
<globalevent name="Rookgaard Book" interval="5000" script="rookgaard_book.lua"/>
|
||||
</globalevents>
|
||||
|
@ -1,3 +1,22 @@
|
||||
local function spawnRashid()
|
||||
local rashidSpawns = {
|
||||
['Monday'] = Position(32349, 32231, 6),
|
||||
['Tuesday'] = Position(32306, 32835, 7),
|
||||
['Wednesday'] = Position(32579, 32754, 7),
|
||||
['Thursday'] = Position(33065, 32879, 6),
|
||||
['Friday'] = Position(33233, 32484, 7),
|
||||
['Saturday'] = Position(33168, 31810, 6),
|
||||
['Sunday'] = Position(32328, 31782, 6),
|
||||
}
|
||||
|
||||
local position = rashidSpawns[os.date("%A")]
|
||||
local rashid = Game.createNpc("rashid", position)
|
||||
if rashid ~= nil then
|
||||
rashid:setMasterPos(position)
|
||||
position:sendMagicEffect(CONST_ME_MAGIC_RED)
|
||||
end
|
||||
end
|
||||
|
||||
local function setBloomingGriffinclaw()
|
||||
local position = {x = 32024, y = 32830, z = 4}
|
||||
if Game.isItemThere(position,5687) then
|
||||
@ -70,4 +89,7 @@ function onStartup()
|
||||
addEvent(setBloomingGriffinclaw, 10000)
|
||||
end
|
||||
end
|
||||
|
||||
spawnRashid()
|
||||
setGlobalStorageValue(17657, 0) -- reset POI levers
|
||||
end
|
||||
|
@ -13413,8 +13413,9 @@ Attributes = {Weight=40,SlotType=RING}
|
||||
|
||||
TypeID = 3007
|
||||
Name = "a crystal ring"
|
||||
Flags = {Take}
|
||||
Attributes = {Weight=90,SlotType=RING}
|
||||
Description = "The magical ring will convert the gold you touch"
|
||||
Flags = {Take,ShowDetail}
|
||||
Attributes = {Weight=90,SlotType=RING,TotalUses=100}
|
||||
|
||||
TypeID = 3008
|
||||
Name = "a crystal necklace"
|
||||
@ -13712,9 +13713,9 @@ Attributes = {MinimumLevel=26,Weight=2650,Brightness=2,LightColor=67,Vocations=
|
||||
|
||||
TypeID = 3066
|
||||
Name = "a snakebite rod"
|
||||
Description = "It seems to twitch and quiver as if trying to escape your grip"
|
||||
Description = "It seems to twitch and quiver as if trying to escape your grip. The rod has magical powers inside and requires no mana consumption"
|
||||
Flags = {Take,Wand}
|
||||
Attributes = {MinimumLevel=7,Weight=4300,Vocations=2,Range=4,ManaConsumption=2,AttackStrength=13,AttackVariation=5,DamageType=Poison,MissileEffect=15}
|
||||
Attributes = {MinimumLevel=7,Weight=4300,Vocations=2,Range=4,AttackStrength=13,AttackVariation=5,DamageType=Poison,MissileEffect=15}
|
||||
|
||||
TypeID = 3067
|
||||
Name = "a tempest rod"
|
||||
@ -13759,9 +13760,9 @@ Attributes = {MinimumLevel=26,Weight=2300,Brightness=2,LightColor=205,Vocations
|
||||
|
||||
TypeID = 3074
|
||||
Name = "a wand of vortex"
|
||||
Description = "Surges of energy rush through the tip of this wand"
|
||||
Description = "Surges of energy rush through the tip of this wand. The wand has magical powers inside and requires no mana consumption"
|
||||
Flags = {Take,Wand}
|
||||
Attributes = {MinimumLevel=7,Weight=2300,Brightness=2,LightColor=23,Vocations=1,ManaConsumption=2,AttackStrength=13,AttackVariation=5,DamageType=Energy,Range=3,MissileEffect=5}
|
||||
Attributes = {MinimumLevel=7,Weight=2300,Brightness=2,LightColor=23,Vocations=1,AttackStrength=13,AttackVariation=5,DamageType=Energy,Range=3,MissileEffect=5}
|
||||
|
||||
TypeID = 3075
|
||||
Name = "a wand of dragonbreath"
|
||||
@ -13837,7 +13838,7 @@ Attributes = {Weight=80,SlotType=RING,ManaShield=1,ExpireTarget=0,TotalExpireTi
|
||||
TypeID = 3089
|
||||
Name = "a life ring"
|
||||
Flags = {Take,Expire,ShowDetail}
|
||||
Attributes = {Weight=80,SlotType=RING,HealthTicks=2000,HealthGain=3,ManaTicks=2000,ManaGain=3,ExpireTarget=0,TotalExpireTime=1200,DeEquipTarget=3052}
|
||||
Attributes = {Weight=80,SlotType=RING,HealthTicks=6000,HealthGain=2,ManaTicks=6000,ManaGain=8,ExpireTarget=0,TotalExpireTime=1200,DeEquipTarget=3052}
|
||||
|
||||
TypeID = 3090
|
||||
Name = "a time ring"
|
||||
@ -13892,7 +13893,7 @@ Attributes = {Weight=110,SlotType=RING,SuppressDrunk=1,ExpireTarget=0,TotalExpi
|
||||
TypeID = 3100
|
||||
Name = "a ring of healing"
|
||||
Flags = {Take,Expire,ShowDetail}
|
||||
Attributes = {Weight=80,SlotType=RING,HealthTicks=2000,HealthGain=1,ManaTicks=2000,ManaGain=1,ExpireTarget=0,TotalExpireTime=450,DeEquipTarget=3098}
|
||||
Attributes = {Weight=80,SlotType=RING,HealthTicks=6000,HealthGain=6,ManaTicks=6000,ManaGain=24,ExpireTarget=0,TotalExpireTime=450,DeEquipTarget=3098}
|
||||
|
||||
TypeID = 3101
|
||||
Name = "a screaming spellbook"
|
||||
@ -26816,7 +26817,7 @@ Flags = {Container,Take}
|
||||
Attributes = {Capacity=8,Weight=800,SlotType=BACKPACK}
|
||||
|
||||
TypeID = 5928
|
||||
Name = "an empty goldfish bowl" # TODO: implement functionality like in tibia wiki
|
||||
Name = "an empty goldfish bowl"
|
||||
Flags = {Take}
|
||||
Attributes = {Weight=3200}
|
||||
|
||||
@ -26971,7 +26972,7 @@ Attributes = {Weight=200}
|
||||
|
||||
TypeID = 5957
|
||||
Name = "a lottery ticket"
|
||||
Description = "It has not been used yet" # TODO: Implement like in tibia wiki
|
||||
Description = "It has not been used yet"
|
||||
Flags = {Take}
|
||||
Attributes = {Weight=120}
|
||||
|
||||
@ -27649,7 +27650,7 @@ Attributes = {Weight=50}
|
||||
TypeID = 6092
|
||||
Name = "a very noble-looking watch"
|
||||
Flags = {Take,Expire}
|
||||
Attributes = {Weight=50,ExpireTarget=6091,TotalExpireTime=259200} # TODO: Implement functionality like in tibia wiki
|
||||
Attributes = {Weight=50,ExpireTarget=6091,TotalExpireTime=259200}
|
||||
|
||||
TypeID = 6093
|
||||
Name = "a crystal ring"
|
||||
@ -27762,14 +27763,14 @@ Attributes = {Weight=50}
|
||||
|
||||
TypeID = 6114
|
||||
Name = "an armor rack kit"
|
||||
Description = "Use it in your house to construct an armor rack" # TODO: Implement like in tibia wiki
|
||||
Flags = {Take,Unpass}
|
||||
Description = "Use it in your house to construct an armor rack"
|
||||
Flags = {UseEvent,Avoid,Take,Height}
|
||||
Attributes = {Weight=3500}
|
||||
|
||||
TypeID = 6115
|
||||
Name = "a weapon rack kit"
|
||||
Description = "Use it in your house to construct a weapon rack" # TODO: Implement like in tibia wiki
|
||||
Flags = {Take,Unpass}
|
||||
Description = "Use it in your house to construct a weapon rack"
|
||||
Flags = {UseEvent,Avoid,Take,Height}
|
||||
Attributes = {Weight=3500}
|
||||
|
||||
TypeID = 6116
|
29876
data/items792/items.srv
Normal file
29876
data/items792/items.srv
Normal file
File diff suppressed because it is too large
Load Diff
@ -25,3 +25,25 @@ end
|
||||
function Container.isTile(self)
|
||||
return false
|
||||
end
|
||||
|
||||
function Container.getItemsById(self, itemId)
|
||||
local list = {}
|
||||
for index = 0, (self:getSize() - 1) do
|
||||
local item = self:getItem(index)
|
||||
if item then
|
||||
if item:isContainer() then
|
||||
local rlist = item:getItemsById(itemId)
|
||||
if type(rlist) == 'table' then
|
||||
for _, v in pairs(rlist) do
|
||||
table.insert(list, v)
|
||||
end
|
||||
end
|
||||
else
|
||||
if item:getId() == itemId then
|
||||
table.insert(list, item)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
return list
|
||||
end
|
@ -72,4 +72,28 @@ function Position:moveRel(x, y, z)
|
||||
self.y = self.y + y
|
||||
self.z = self.z + z
|
||||
return self
|
||||
end
|
||||
|
||||
function Position:isInRange(from, to)
|
||||
-- No matter what corner from and to is, we want to make
|
||||
-- life easier by calculating north-west and south-east
|
||||
local zone = {
|
||||
nW = {
|
||||
x = (from.x < to.x and from.x or to.x),
|
||||
y = (from.y < to.y and from.y or to.y),
|
||||
z = (from.z < to.z and from.z or to.z)
|
||||
},
|
||||
sE = {
|
||||
x = (to.x > from.x and to.x or from.x),
|
||||
y = (to.y > from.y and to.y or from.y),
|
||||
z = (to.z > from.z and to.z or from.z)
|
||||
}
|
||||
}
|
||||
|
||||
if self.x >= zone.nW.x and self.x <= zone.sE.x
|
||||
and self.y >= zone.nW.y and self.y <= zone.sE.y
|
||||
and self.z >= zone.nW.z and self.z <= zone.sE.z then
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
@ -26,7 +26,7 @@
|
||||
<attack name="physical" chance="17" range="7" radius="1" target="1" min="-70" max="-185">
|
||||
<attribute key="shootEffect" value="energy" />
|
||||
</attack>
|
||||
<attack name="speed" chance="10" range="7" speedchange="-220" duration="5000">
|
||||
<attack name="speed" chance="10" range="7" speedchange="-80" duration="5000">
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="15" defense="20">
|
||||
|
@ -23,7 +23,7 @@
|
||||
<attack name="physical" chance="25" length="8" spread="0" min="-0" max="-580">
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="speed" chance="15" range="7" speedchange="-850" duration="50000">
|
||||
<attack name="speed" chance="15" range="7" speedchange="-400" duration="50000">
|
||||
<attribute key="areaEffect" value="whitenote" />
|
||||
</attack>
|
||||
<attack name="physical" chance="20" target="0" radius="7" min="-500" max="-800">
|
||||
@ -34,7 +34,7 @@
|
||||
<defense name="healing" chance="20" min="250" max="750">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" chance="80" speedchange="808" duration="6000">
|
||||
<defense name="speed" chance="80" speedchange="404" duration="6000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
|
@ -28,7 +28,7 @@
|
||||
<attack name="lifedrain" chance="8" range="7" target="1" min="-45" max="-170">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
<attack name="speed" chance="10" range="7" speedchange="-600" duration="5000">
|
||||
<attack name="speed" chance="10" range="7" speedchange="-100" duration="5000">
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="15" defense="18">
|
||||
|
@ -28,7 +28,7 @@
|
||||
<attack name="lifedrain" chance="8" range="7" target="1" min="-0" max="-170">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
<attack name="speed" chance="10" range="7" speedchange="-600" duration="5000">
|
||||
<attack name="speed" chance="10" range="7" speedchange="-100" duration="5000">
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="15" defense="18">
|
||||
|
@ -21,7 +21,7 @@
|
||||
<defense name="invisible" chance="25" duration="2000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" chance="10" speedchange="800" duration="5000">
|
||||
<defense name="speed" chance="10" speedchange="65" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
|
@ -16,7 +16,7 @@
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="50" attack="80">
|
||||
<attack name="speed" chance="10" range="1" speedchange="-600" duration="3000">
|
||||
<attack name="speed" chance="10" range="1" speedchange="-100" duration="3000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
|
@ -16,7 +16,7 @@
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="75" attack="80">
|
||||
<attack name="speed" chance="12" range="1" speedchange="-600" duration="3000">
|
||||
<attack name="speed" chance="12" range="1" speedchange="-100" duration="3000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
|
@ -18,7 +18,7 @@
|
||||
<attacks skill="30" attack="235">
|
||||
</attacks>
|
||||
<defenses armor="40" defense="45">
|
||||
<defense name="speed" chance="15" speedchange="210">
|
||||
<defense name="speed" chance="15" speedchange="75">
|
||||
<attribute key="areaEffect" value="greenshimmer" />
|
||||
</defense>
|
||||
<defense name="healing" chance="12" min="200" max="240">
|
||||
|
@ -23,7 +23,7 @@
|
||||
<attack name="poisonfield" chance="19" range="7" radius="3" target="0">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="speed" chance="10" range="7" target="1" speedchange="-600" duration="20000">
|
||||
<attack name="speed" chance="10" range="7" target="1" speedchange="-100" duration="20000">
|
||||
<attribute key="shootEffect" value="snowball" />
|
||||
</attack>
|
||||
<attack name="lifedrain" chance="20" range="7" target="1" min="-108" max="-137">
|
||||
|
@ -20,7 +20,7 @@
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="speed" chance="20" range="7" target="1" speedchange="-850" duration="30000">
|
||||
<attack name="speed" chance="20" range="7" target="1" speedchange="-100" duration="30000">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="greenspark" />
|
||||
</attack>
|
||||
@ -30,7 +30,7 @@
|
||||
</attacks>
|
||||
<defenses armor="30" defense="31">
|
||||
<defense name="ultimate healing" chance="35" min="600" max="800" />
|
||||
<defense name="speed" chance="10" speedchange="800" duration="5000">
|
||||
<defense name="speed" chance="10" speedchange="80" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
|
58
data/monster/790/apprentice sheng.xml
Normal file
58
data/monster/790/apprentice sheng.xml
Normal file
@ -0,0 +1,58 @@
|
||||
<monster name="Apprentice Sheng" nameDescription="Apprentice Sheng" race="blood" experience="150" speed="45" manacost="0">
|
||||
<health now="95" max="95" />
|
||||
<look type="23" corpse="5981" />
|
||||
<targetchange interval="1000" chance="50" />
|
||||
<targetstrategy nearest="100" weakest="0" mostdamage="0" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="4" />
|
||||
<flag runonhealth="20" />
|
||||
</flags>
|
||||
<attacks attack="15" skill="18">
|
||||
<attack name="energyfield" interval="1000" chance="8" range="7" radius="1" target="1">
|
||||
<attribute key="shootEffect" value="energy" />
|
||||
</attack>
|
||||
<attack name="energy" interval="1000" chance="14" range="7" min="0" max="-25">
|
||||
<attribute key="shootEffect" value="energy" />
|
||||
<attribute key="areaEffect" value="energy" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="10" range="7" min="0" max="-45">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="12" defense="13">
|
||||
<defense name="healing" interval="4000" chance="15" min="10" max="20">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity energy="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<summons maxSummons="2">
|
||||
<summon name="Hyaena" interval="5000" chance="30" />
|
||||
</summons>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="I will protect the secrets of my master!" />
|
||||
<voice sentence="This isle will become ours alone!" />
|
||||
<voice sentence="Kaplar!" />
|
||||
<voice sentence="You already know too much." />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="5878" chance="1000" /> <!-- minotaur leather -->
|
||||
<item id="3046" chance="800" /> <!-- magic lightwand -->
|
||||
<item id="3031" countmax="10" chance="300" /> <!-- gold coin -->
|
||||
<item id="2920" countmax="2" chance="300" /> <!-- torch -->
|
||||
<item id="3559" chance="200" /> <!-- leather legs -->
|
||||
<item id="3291" chance="100" /> <!-- knife -->
|
||||
<item id="3355" chance="100" /> <!-- leather helmet -->
|
||||
</loot>
|
||||
</monster>
|
67
data/monster/790/betrayed wraith.xml
Normal file
67
data/monster/790/betrayed wraith.xml
Normal file
@ -0,0 +1,67 @@
|
||||
<monster name="Betrayed Wraith" nameDescription="a betrayed wraith" race="undead" experience="3500" speed="115" manacost="0">
|
||||
<health now="4200" max="4200" />
|
||||
<look type="233" corpse="6315" />
|
||||
<targetchange interval="1000" chance="5" />
|
||||
<targetstrategy nearest="70" weakest="0" mostdamage="30" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="300" />
|
||||
</flags>
|
||||
<attacks attack="80" skill="100">
|
||||
<attack name="speed" interval="2000" chance="20" range="7" target="1" speedchange="-100" duration="3000">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="55" defense="55">
|
||||
<defense name="healing" interval="2000" chance="30" min="350" max="600">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="2000" chance="10" duration="5000">
|
||||
<attribute key="areaEffect" value="redspark" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="57" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity energy="1" />
|
||||
<immunity earth="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Rrrah!" />
|
||||
<voice sentence="Gnarr!" />
|
||||
<voice sentence="Tcharrr!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="198" chance="1000" /> <!-- gold coin -->
|
||||
<item id="3035" countmax="8" chance="1000" /> <!-- platinum coin -->
|
||||
<item id="6558" chance="652" /> <!-- concentrated demonic blood -->
|
||||
<item id="3450" countmax="15" chance="500" /> <!-- power bolt -->
|
||||
<!-- demonic essence -->
|
||||
<!-- unholy bone -->
|
||||
<!-- great mana potion -->
|
||||
<!-- ultimate health potion -->
|
||||
<item id="3028" countmax="4" chance="118" /> <!-- small diamond -->
|
||||
<!-- assassin star -->
|
||||
<item id="5944" chance="90" /> <!-- soul orb -->
|
||||
<item id="5021" countmax="2" chance="80" /> <!-- orichalcum pearl -->
|
||||
<!-- mercenary sword -->
|
||||
<item id="6299" chance="4" /> <!-- death ring -->
|
||||
<item id="5741" chance="4" /> <!-- skull helmet -->
|
||||
<item id="5799" chance="1" /> <!-- golden figurine -->
|
||||
<!-- bloody edge -->
|
||||
</loot>
|
||||
</monster>
|
69
data/monster/790/blightwalker.xml
Normal file
69
data/monster/790/blightwalker.xml
Normal file
@ -0,0 +1,69 @@
|
||||
<monster name="Blightwalker" nameDescription="a blightwalker" race="undead" experience="5850" speed="125" manacost="0">
|
||||
<health now="8900" max="8900" />
|
||||
<look type="246" corpse="6353" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="800" />
|
||||
</flags>
|
||||
<attacks attack="90" skill="100">
|
||||
<attack name="earth" interval="2000" chance="20" range="7" target="1" min="-220" max="-405">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="lifedrain" interval="2000" chance="15" target="0" radius="4" min="-65" max="-135">
|
||||
<attribute key="areaEffect" value="greenshimmer" />
|
||||
</attack>
|
||||
<attack name="drunk" interval="2000" chance="10" target="0" radius="3" duration="5000">
|
||||
<attribute key="areaEffect" value="greenspark" />
|
||||
</attack>
|
||||
<attack name="speed" interval="2000" chance="15" range="7" speedchange="-100" duration="30000">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="50" defense="50" />
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity earth="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="I can see you decaying!" />
|
||||
<voice sentence="Let me taste your mortality!" />
|
||||
<voice sentence="Your lifeforce is waning!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="197" chance="1000" /> <!-- gold coin -->
|
||||
<item id="3035" countmax="5" chance="1000" /> <!-- platinum coin -->
|
||||
<item id="3605" chance="500" /> <!-- bunch of wheat -->
|
||||
<!-- great mana potion -->
|
||||
<!-- demonic essence -->
|
||||
<item id="3147" countmax="2" chance="262" /> <!-- blank rune -->
|
||||
<item id="5944" chance="237" /> <!-- soul orb -->
|
||||
<!-- bundle of cursed straw -->
|
||||
<!-- ultimate health potion -->
|
||||
<item id="3067" chance="100" /> <!-- hailstorm rod -->
|
||||
<!-- assassin star -->
|
||||
<!-- gold ingot -->
|
||||
<!-- giant shimmering pearl -->
|
||||
<!-- giant shimmering pearl -->
|
||||
<!-- seeds -->
|
||||
<item id="3453" chance="30" /> <!-- scythe -->
|
||||
<!-- terra legs -->
|
||||
<item id="3083" chance="20" /> <!-- garlic necklace -->
|
||||
<item id="3063" chance="18" /> <!-- gold ring -->
|
||||
<item id="3324" chance="15" /> <!-- skull staff -->
|
||||
<item id="6299" chance="14" /> <!-- death ring -->
|
||||
<!-- terra mantle -->
|
||||
<item id="3306" chance="3" /> <!-- golden sickle -->
|
||||
<item id="3057" chance="1" /> <!-- amulet of loss -->
|
||||
</loot>
|
||||
</monster>
|
45
data/monster/790/countess sorrow.xml
Normal file
45
data/monster/790/countess sorrow.xml
Normal file
@ -0,0 +1,45 @@
|
||||
<monster name="Countess Sorrow" nameDescription="Countess Sorrow" race="undead" experience="5150" speed="125" manacost="0">
|
||||
<health now="7200" max="7200" />
|
||||
<look type="241" head="20" corpse="6343" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="70" attack="90" poison="50">
|
||||
<attack name="poison" interval="1000" chance="10" range="7" radius="4" target="1" min="-150" max="-350">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="poisonfield" interval="1000" chance="17" range="7" radius="3" target="1">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="manadrain" interval="1000" chance="25" range="7" min="-100" max="-400">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="25" defense="20">
|
||||
<defense name="healing" interval="1000" chance="50" min="409" max="812">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity physical="1" />
|
||||
<immunity poison="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<loot>
|
||||
<item id="6536" chance="1000" /><!-- countess sorrow's frozen tear -->
|
||||
</loot>
|
||||
</monster>
|
53
data/monster/790/dark torturer.xml
Normal file
53
data/monster/790/dark torturer.xml
Normal file
@ -0,0 +1,53 @@
|
||||
<monster name="Dark Torturer" nameDescription="a dark torturer" race="undead" experience="4650" speed="120" manacost="0">
|
||||
<health now="7350" max="7350" />
|
||||
<look type="234" corpse="6330" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="90" attack="100">
|
||||
<attack name="physical" interval="2000" chance="10" range="7" min="0" max="-781">
|
||||
<attribute key="shootEffect" value="throwingknife" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="40" defense="40">
|
||||
<defense name="healing" interval="2000" chance="10" min="200" max="250">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="You like it, don't you?" />
|
||||
<voice sentence="IahaEhheAie!" />
|
||||
<voice sentence="It's party time!" />
|
||||
<voice sentence="Harrr, Harrr!" />
|
||||
<voice sentence="The torturer is in!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="500" /><!-- gold coin -->
|
||||
<item id="3031" countmax="99" chance="400" /><!-- gold coin -->
|
||||
<item id="3582" countmax="2" chance="600" /><!-- ham -->
|
||||
<item id="3035" countmax="8" chance="550" /><!-- platinum coin -->
|
||||
<item id="6558" countmax="3" chance="333" /><!-- concentrated demonic blood -->
|
||||
<item id="5944" chance="230" /><!-- soul orb -->
|
||||
<item id="3554" chance="50" /><!-- steel boots -->
|
||||
<item id="3461" chance="52" /><!-- saw -->
|
||||
<item id="6299" chance="20" /><!-- death ring -->
|
||||
<item id="5479" chance="22" /><!-- cat's paw -->
|
||||
<item id="5021" countmax="2" chance="27" /><!-- orichalcum pearl -->
|
||||
<item id="3364" chance="30" /><!-- golden legs -->
|
||||
</loot>
|
||||
</monster>
|
65
data/monster/790/defiler.xml
Normal file
65
data/monster/790/defiler.xml
Normal file
@ -0,0 +1,65 @@
|
||||
<monster name="Defiler" nameDescription="a defiler" race="venom" experience="3700" speed="115" manacost="0">
|
||||
<health now="3650" max="3650" />
|
||||
<look type="238" corpse="6532" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="85" />
|
||||
</flags>
|
||||
<attacks skill="50" attack="80" poison="150">
|
||||
<attack name="poison" interval="2000" chance="20" range="7" min="-160" max="-270">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="poisoncondition" interval="2000" chance="15" target="0" radius="7" range="7" count="70" min="-400" max="-640">
|
||||
<attribute key="areaEffect" value="greenspark" />
|
||||
</attack>
|
||||
<attack name="poison" interval="2000" chance="20" radius="3" target="0" min="-120" max="-170">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="poisoncondition" interval="2000" chance="10" length="8" spread="3" count="70" min="-500" max="-1000">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="speed" interval="2000" chance="15" length="8" spread="3" speedchange="-100" duration="15000">
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="20" defense="20">
|
||||
<defense name="healing" interval="2000" chance="10" min="280" max="350">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity earth="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Blubb" />
|
||||
<voice sentence="Blubb Blubb" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3031" countmax="72" chance="1000" /><!-- gold coin -->
|
||||
<item id="3035" countmax="6" chance="950" /><!-- platinum coin -->
|
||||
<item id="5944" chance="200" /><!-- soul orb -->
|
||||
<item id="3034" chance="57" /><!-- talon -->
|
||||
<item id="3041" chance="3" /><!-- blue gem -->
|
||||
<item id="3032" countmax="3" chance="53" /><!-- small emeralds-->
|
||||
<item id="3030" countmax="2" chance="30" /><!-- small rubies -->
|
||||
<item id="6299" chance="30" /><!-- death ring-->
|
||||
<item id="3028" countmax="2" chance="24" /><!-- small diamond -->
|
||||
<item id="3039" chance="15" /><!-- red gem -->
|
||||
<item id="3037" chance="12" /><!-- yellow gem -->
|
||||
<item id="3038" chance="6" /><!-- green gem -->
|
||||
</loot>
|
||||
</monster>
|
38
data/monster/790/demon (goblin).xml
Normal file
38
data/monster/790/demon (goblin).xml
Normal file
@ -0,0 +1,38 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<monster name="Demon" nameDescription="a demon" race="blood" experience="25" speed="150" manacost="0">
|
||||
<health now="50" max="50" />
|
||||
<look type="35" corpse="5995" />
|
||||
<targetchange interval="1000" chance="0" />
|
||||
<targetstrategy nearest="100" weakest="0" mostdamage="0" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="15" />
|
||||
</flags>
|
||||
<attacks skill="10" attack="10">
|
||||
<attack name="physical" interval="2000" chance="10" range="7" min="0" max="-25">
|
||||
<attribute key="shootEffect" value="smallstone" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="10" defense="10" />
|
||||
<loot>
|
||||
<item id="3115" countmax="1" chance="120" /> <!-- a bone -->
|
||||
<item id="3337" countmax="1" chance="50" /> <!-- a bone club -->
|
||||
<item id="3267" countmax="1" chance="180" /> <!-- a dagger -->
|
||||
<item id="3578" countmax="1" chance="130" /> <!-- a fish -->
|
||||
<item id="3031" countmax="9" chance="500" /> <!-- a gold coin -->
|
||||
<item id="3361" countmax="1" chance="75" /> <!-- a leather armor -->
|
||||
<item id="3355" countmax="1" chance="100" /> <!-- a leather helmet -->
|
||||
<item id="3120" countmax="1" chance="70" /> <!-- a moldy cheese -->
|
||||
<item id="3294" countmax="1" chance="90" /> <!-- a short sword -->
|
||||
<item id="3462" countmax="1" chance="100" /> <!-- a small axe -->
|
||||
<item id="1781" countmax="3" chance="300" /> <!-- a small stone -->
|
||||
</loot>
|
||||
</monster>
|
59
data/monster/790/destroyer.xml
Normal file
59
data/monster/790/destroyer.xml
Normal file
@ -0,0 +1,59 @@
|
||||
<monster name="Destroyer" nameDescription="a destroyer" race="undead" experience="2500" speed="135" manacost="0">
|
||||
<health now="3700" max="3700" />
|
||||
<look type="236" corpse="6319" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="90" attack="100">
|
||||
<attack name="physical" interval="2000" chance="15" range="7" min="0" max="-200">
|
||||
<attribute key="shootEffect" value="largerock" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="30" defense="30">
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="70" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity energy="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="COME HERE AND DIE!" />
|
||||
<voice sentence="Destructiooooon!" />
|
||||
<voice sentence="It's a good day to destroy!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="600" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="400" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="400" /><!-- gold coin -->
|
||||
<item id="3031" countmax="41" chance="600" /><!-- gold coin -->
|
||||
<item id="3577" countmax="6" chance="500" /><!-- meat -->
|
||||
<item id="3304" chance="142" /><!-- crowbar -->
|
||||
<item id="3449" countmax="12" chance="125" /><!-- burst arrow -->
|
||||
<item id="3383" chance="100" /><!-- dark armor -->
|
||||
<item id="3033" countmax="2" chance="76" /><!-- small amethyst -->
|
||||
<item id="5944" chance="66" /><!-- soul orb-->
|
||||
<item id="3456" chance="62" /><!-- pick -->
|
||||
<item id="3357" chance="43" /><!-- plate armor -->
|
||||
<item id="3035" countmax="3" chance="41" /><!-- platinum coin -->
|
||||
<item id="3281" chance="16" /><!-- giant sword -->
|
||||
<item id="3554" chance="9" /><!-- steel boots -->
|
||||
<item id="3008" chance="5" /><!-- crystal necklace -->
|
||||
<item id="3062" chance="5" /><!-- mind stone -->
|
||||
<item id="6299" chance="1" /><!-- death ring -->
|
||||
<item id="5741" chance="1" /><!-- skull helmet -->
|
||||
</loot>
|
||||
</monster>
|
66
data/monster/790/diabolic imp.xml
Normal file
66
data/monster/790/diabolic imp.xml
Normal file
@ -0,0 +1,66 @@
|
||||
<monster name="Diabolic Imp" nameDescription="a diabolic imp" race="fire" experience="1950" speed="110" manacost="0">
|
||||
<health now="2900" max="2900" />
|
||||
<look type="237" corpse="6363" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="4" />
|
||||
<flag runonhealth="400" />
|
||||
</flags>
|
||||
<attacks skill="70" attack="60" poison="160">
|
||||
<attack name="fire" interval="2000" chance="20" range="7" radius="4" target="1" min="-100" max="-240">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="10" range="7" radius="2" target="1" min="-300" max="-430">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="25" defense="25">
|
||||
<defense name="healing" interval="2000" chance="10" min="650" max="800">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="50" duration="2000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="2000" chance="10" duration="1000">
|
||||
<attribute key="areaEffect" value="teleport" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Muahaha!" />
|
||||
<voice sentence="He he he." />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="500" /><!-- gold coin -->
|
||||
<item id="3031" countmax="97" chance="400" /><!-- gold coin -->
|
||||
<item id="3451" chance="500" /><!-- pitchfork -->
|
||||
<item id="6558" countmax="2" chance="250" /><!-- concentrated demonic blood -->
|
||||
<item id="3147" countmax="2" chance="166" /><!-- blank rune -->
|
||||
<item id="3415" chance="81" /><!-- guardian shield -->
|
||||
<item id="3471" chance="88" /><!-- cleaver -->
|
||||
<item id="3307" chance="56" /><!-- scimitar -->
|
||||
<item id="5944" chance="72" /><!-- soul orb -->
|
||||
<item id="3031" countmax="7" chance="33" /><!-- platinum coin -->
|
||||
<item id="3033" countmax="3" chance="22" /><!-- small amethyst -->
|
||||
<item id="3049" chance="27" /><!-- stealth ring -->
|
||||
<item id="3275" chance="19" /><!-- double axe -->
|
||||
<item id="6299" chance="1" /><!-- death ring -->
|
||||
<item id="3069" chance="8" /><!-- necrotic rod -->
|
||||
</loot>
|
||||
</monster>
|
60
data/monster/790/dracola.xml
Normal file
60
data/monster/790/dracola.xml
Normal file
@ -0,0 +1,60 @@
|
||||
<monster name="Dracola" nameDescription="Dracola" race="undead" experience="11000" speed="205" manacost="0">
|
||||
<health now="16200" max="16200" />
|
||||
<look type="231" corpse="6305" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="100" attack="130">
|
||||
<attack name="lifedrain" interval="3000" chance="20" length="8" spread="3" min="-800" max="-1000">
|
||||
<attribute key="areaEffect" value="greenshimmer" />
|
||||
</attack>
|
||||
<attack name="poison" interval="2000" chance="20" range="7" radius="4" target="1" min="-120" max="-750">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="drowncondition" interval="1000" chance="20" count="70" length="8" spread="3">
|
||||
<attribute key="areaEffect" value="poff" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="20" range="7" radius="4" target="1" min="-300" max="-870">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="redspark" />
|
||||
</attack>
|
||||
<attack name="physical" interval="3000" chance="10" range="7" min="0" max="-750">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="poison" interval="1000" chance="23" range="7" radius="4" target="1" min="-50" max="-175">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="manadrain" interval="2000" chance="10" range="7" min="-100" max="-200" />
|
||||
</attacks>
|
||||
<defenses armor="40" defense="39">
|
||||
<defense name="healing" interval="4000" chance="10" min="500" max="1000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity earth="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="5">
|
||||
<voice sentence="DEATH CAN'T STOP MY HUNGER!" yell="1" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3035" countmax="8" chance="200" /><!-- platinum coin -->
|
||||
<item id="6546" chance="1000" /><!-- dracola's eye -->
|
||||
</loot>
|
||||
</monster>
|
74
data/monster/790/fury.xml
Normal file
74
data/monster/790/fury.xml
Normal file
@ -0,0 +1,74 @@
|
||||
<monster name="Fury" nameDescription="a fury" race="blood" experience="4500" speed="125" manacost="0">
|
||||
<health now="4100" max="4100" />
|
||||
<look type="149" head="94" body="77" legs="96" feet="0" addons="3" corpse="6081" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="50" attack="170">
|
||||
<attack name="fire" interval="2000" chance="10" length="8" spread="3" min="-200" max="-300">
|
||||
<attribute key="areaEffect" value="explosionarea" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="5" length="8" spread="0" min="-120" max="-700">
|
||||
<attribute key="areaEffect" value="redspark" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="10" radius="4" target="0" min="-120" max="-300">
|
||||
<attribute key="areaEffect" value="redspark" />
|
||||
</attack>
|
||||
<attack name="lifedrain" interval="2000" chance="10" radius="3" target="0" min="-120" max="-300">
|
||||
<attribute key="areaEffect" value="blackspark" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="10" range="7" min="-125" max="-250">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="speed" interval="2000" chance="15" range="7" speedchange="-100" duration="30000">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="20" defense="20">
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="60" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
<immunity fire="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Ahhhhrrrr!" />
|
||||
<voice sentence="Waaaaah!" />
|
||||
<voice sentence="Carnage!" />
|
||||
<voice sentence="Dieee!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="300" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="300" /><!-- gold coin -->
|
||||
<item id="3031" countmax="69" chance="380" /><!-- gold coin -->
|
||||
<item id="3035" countmax="4" chance="28" /><!-- platinum coin -->
|
||||
<item id="6558" countmax="3" chance="350" /><!-- concentrated demonic blood -->
|
||||
<item id="3364" chance="1" /><!-- golden legs -->
|
||||
<item id="3577" chance="250" /><!-- meat -->
|
||||
<item id="5021" countmax="4" chance="15" /><!-- orichalcum pearl -->
|
||||
<item id="5911" chance="40" /><!-- red piece of cloth -->
|
||||
<item id="3003" countmax="3" chance="80" /><!-- small amethyst -->
|
||||
<item id="5944" chance="215" /><!-- soul orb -->
|
||||
<item id="3554" chance="7" /><!-- steel boots -->
|
||||
<item id="3065" chance="200" /><!-- terra rod -->
|
||||
<item id="5944" chance="50" /><!-- assassin star -->
|
||||
<item id="3007" chance="4" /><!-- crystal ring-->
|
||||
<item id="6299" chance="60" /><!-- death ring-->
|
||||
</loot>
|
||||
</monster>
|
96
data/monster/790/grynch clan goblin.xml
Normal file
96
data/monster/790/grynch clan goblin.xml
Normal file
@ -0,0 +1,96 @@
|
||||
<monster name="Grynch Clan Goblin" nameDescription="a Grynch Clan Goblin" race="blood" experience="4" speed="435" manacost="0">
|
||||
<health now="80" max="80" />
|
||||
<look type="61" corpse="6002" />
|
||||
<targetchange interval="1000" chance="0" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="0" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="0" />
|
||||
<flag canpushcreatures="0" />
|
||||
<flag targetdistance="11" />
|
||||
<flag runonhealth="80" />
|
||||
</flags>
|
||||
<attacks>
|
||||
</attacks>
|
||||
<defenses armor="10" defense="12">
|
||||
<defense name="speed" interval="1000" chance="15" speedchange="100" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="T'was not me hand in your pocket!" />
|
||||
<voice sentence="Look! Cool stuff in house. Let's get it!" />
|
||||
<voice sentence="Uhh! Nobody home!" />
|
||||
<voice sentence="Me just borrowed it!" />
|
||||
<voice sentence="Me no steal! Me found it!" />
|
||||
<voice sentence="Me had it for five minutes. It's family heirloom now!" />
|
||||
<voice sentence="Nice human won't hurt little, good goblin?" />
|
||||
<voice sentence="Gimmegimme!" />
|
||||
<voice sentence="Invite me in you lovely house plx!" />
|
||||
<voice sentence="Other Goblin stole it!" />
|
||||
<voice sentence="All presents mine!" />
|
||||
<voice sentence="Me got ugly ones purse" />
|
||||
<voice sentence="Free itans plz!" />
|
||||
<voice sentence="Not me! Not me!" />
|
||||
<voice sentence="Guys, help me here! Guys? Guys???" />
|
||||
<voice sentence="That only much dust in me pocket! Honest!" />
|
||||
<voice sentence="Can me have your stuff?" />
|
||||
<voice sentence="Halp, Big dumb one is after me!" />
|
||||
<voice sentence="Uh, So many shiny things!" />
|
||||
<voice sentence="Utani hur hur hur!" />
|
||||
<voice sentence="Mee? Stealing? Never!!!" />
|
||||
<voice sentence="Oh what fun it is to steal a one-horse open sleigh!" />
|
||||
<voice sentence="Must have it! Must have it!" />
|
||||
<voice sentence="Where me put me lockpick?" />
|
||||
<voice sentence="Catch me if you can!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="22" chance="225" /><!-- gold coin -->
|
||||
<item id="6496" chance="70" /><!-- present bag -->
|
||||
<item id="2992" countmax="5" chance="70" /><!-- snowball -->
|
||||
<item id="6276" countmax="3" chance="70" /><!-- lump of cake dough -->
|
||||
<item id="3586" countmax="3" chance="70" /><!-- orange -->
|
||||
<item id="3598" countmax="5" chance="70" /><!-- cookie -->
|
||||
<item id="3590" countmax="4" chance="70" /><!-- cherry -->
|
||||
<item id="3585" countmax="3" chance="7" /><!-- apple -->
|
||||
<item id="3606" countmax="2" chance="50" /><!-- egg -->
|
||||
<item id="3599" countmax="3" chance="50" /><!-- candy cane -->
|
||||
<item id="2950" chance="50" /><!-- lute -->
|
||||
<item id="3147" chance="50" /><!-- blank rune -->
|
||||
<item id="3046" chance="40" /><!-- magic light wand -->
|
||||
<item id="2639" chance="40" /><!-- landscape picture -->
|
||||
<item id="3056" chance="40" /><!-- bronze amulet -->
|
||||
<item id="2815" chance="40" /><!-- scroll -->
|
||||
<item id="6500" countmax="2" chance="40" /><!-- gingerbread man -->
|
||||
<item id="3572" chance="40" /><!-- scarf -->
|
||||
<item id="5890" countmax="5" chance="40" /><!-- chicken feather -->
|
||||
<item id="5894" countmax="3" chance="40" /><!-- bat wing -->
|
||||
<item id="5902" chance="40" /><!-- honeycomb -->
|
||||
<item id="4871" chance="40" /><!-- explorer brooch -->
|
||||
<item id="6392" chance="15" /><!-- valentine cake -->
|
||||
<item id="6091" chance="15" /><!-- watch -->
|
||||
<item id="3454" chance="15" /><!-- broom -->
|
||||
<item id="2995" chance="10" /><!-- piggy bank -->
|
||||
<item id="5792" chance="10" /><!-- dice -->
|
||||
<item id="3463" chance="10" /><!-- mirror -->
|
||||
<item id="2394" chance="7" /><!-- blue round pillow -->
|
||||
<item id="2395" chance="7" /><!-- red round pillow -->
|
||||
<item id="2396" chance="7" /><!-- green round pillow -->
|
||||
<item id="2397" chance="7" /><!-- yellow round pillow -->
|
||||
<item id="2983" chance="5" /><!-- flower bowl -->
|
||||
<item id="4828" chance="5" /><!-- bottle -->
|
||||
<item id="3042" countmax="2" chance="5" /><!-- scarab coin -->
|
||||
<item id="5021" countmax="2" chance="5" /><!-- orichalcum pearl -->
|
||||
<item id="3043" chance="2" /><!-- crystal coin -->
|
||||
<item id="3434" chance="2" /><!-- vampire shield -->
|
||||
</loot>
|
||||
</monster>
|
70
data/monster/790/hand of cursed fate.xml
Normal file
70
data/monster/790/hand of cursed fate.xml
Normal file
@ -0,0 +1,70 @@
|
||||
<monster name="Hand Of Cursed Fate" nameDescription="a hand of cursed fate" race="blood" experience="5000" speed="130" manacost="0">
|
||||
<health now="7500" max="7500" />
|
||||
<look type="230" corpse="6311" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="3500" />
|
||||
</flags>
|
||||
<attacks skill="70" attack="130" poison="380">
|
||||
<attack name="manadrain" interval="2000" chance="15" range="1" min="0" max="-920" />
|
||||
<attack name="drunk" interval="2000" chance="10" target="0" radius="4" duration="3000">
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="lifedrain" interval="2000" chance="15" range="1" min="-220" max="-880">
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="25" defense="25">
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="70" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="2000" chance="10" duration="8000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="healing" interval="2000" chance="20" min="100" max="250">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity earth="1" />
|
||||
<immunity energy="1" />
|
||||
<immunity fire="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="600" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="600" /><!-- gold coin -->
|
||||
<item id="3031" countmax="67" chance="500" /><!-- gold coin -->
|
||||
<item id="3035" countmax="7" chance="1000" /><!-- platinum coin -->
|
||||
<item id="6558" countmax="4" chance="300" /><!-- concentrated demonic blood -->
|
||||
<item id="5944" chance="311" /><!-- soul orb -->
|
||||
<item id="3029" countmax="4" chance="110" /><!-- small sapphire -->
|
||||
<item id="3062" chance="90" /><!-- mind stone -->
|
||||
<item id="3010" chance="35" /><!-- emerald bangle -->
|
||||
<item id="3084" chance="87" /><!-- protection amulet -->
|
||||
<item id="3071" chance="55" /><!-- wand of inferno -->
|
||||
<item id="3370" chance="45" /><!-- knight armor -->
|
||||
<item id="6299" chance="17" /><!-- death ring -->
|
||||
<item id="3381" chance="14" /><!-- crown armor -->
|
||||
<item id="3051" chance="31" /><!-- energy ring -->
|
||||
<item id="3055" chance="10" /><!-- platinum amulet-->
|
||||
<item id="3324" chance="7" /><!-- skull staff -->
|
||||
<item id="3036" chance="7" /><!-- violet gem -->
|
||||
<item id="3037" chance="59" /><!-- yellow gem -->
|
||||
<item id="3079" chance="5" /><!-- boots of haste -->
|
||||
<item id="5799" chance="1" /><!-- golden figurine -->
|
||||
<item id="5668" chance="2" /><!-- mysterious voodoo skull -->
|
||||
<item id="3155" countmax="8" chance="42" /><!-- sudden death rune -->
|
||||
</loot>
|
||||
</monster>
|
52
data/monster/790/hellfire fighter.xml
Normal file
52
data/monster/790/hellfire fighter.xml
Normal file
@ -0,0 +1,52 @@
|
||||
<monster name="Hellfire Fighter" nameDescription="a hellfire fighter" race="fire" experience="3900" speed="110" manacost="0">
|
||||
<health now="3800" max="3800" />
|
||||
<look type="243" corpse="6323" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks attack="80" skill="120">
|
||||
<attack name="firefield" interval="2000" chance="10" range="7" radius="3" target="0" />
|
||||
<attack name="fire" interval="2000" chance="10" target="0" length="8" spread="0" min="-392" max="-1500">
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="15" range="7" radius="3" target="0" min="-60" max="-330">
|
||||
<attribute key="areaEffect" value="fire" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="35" defense="35" />
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<loot>
|
||||
<item id="3031" countmax="246" chance="1000" /> <!-- gold coin -->
|
||||
<item id="3124" chance="500" /> <!-- burnt scroll -->
|
||||
<item id="3147" countmax="2" chance="300" /> <!-- blank rune -->
|
||||
<!-- demonic essence -->
|
||||
<item id="5944" chance="120" /> <!-- soul orb -->
|
||||
<!-- fiery heart -->
|
||||
<item id="3071" chance="95" /> <!-- wand of inferno -->
|
||||
<!-- piece of hellfire armor -->
|
||||
<item id="3280" chance="43" /> <!-- fire sword -->
|
||||
<item id="3010" chance="22" /> <!-- emerald bangle -->
|
||||
<item id="3028" chance="14" /> <!-- small diamond -->
|
||||
<item id="3035" chance="10" /> <!-- platinum coin -->
|
||||
<!-- magma legs -->
|
||||
<!-- coal -->
|
||||
<item id="3320" chance="4" /> <!-- fire axe -->
|
||||
<!-- magma coat -->
|
||||
<item id="3019" chance="2" /> <!-- demonbone amulet -->
|
||||
</loot>
|
||||
</monster>
|
73
data/monster/790/hellhound.xml
Normal file
73
data/monster/790/hellhound.xml
Normal file
@ -0,0 +1,73 @@
|
||||
<monster name="Hellhound" nameDescription="a hellhound" race="blood" experience="6800" speed="140" manacost="0">
|
||||
<health now="7500" max="7500" />
|
||||
<look type="240" corpse="6331" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="70" attack="130" poison="800">
|
||||
<attack name="earth" interval="2000" chance="5" length="8" spread="3" min="-300" max="-700">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="10" range="7" min="-395" max="-498">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="10" length="8" spread="3" min="-350" max="-660">
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
<attack name="lifedrain" interval="2000" chance="10" length="8" spread="3" min="-350" max="-976">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="10" radius="1" target="1" min="-200" max="-403">
|
||||
<attribute key="areaEffect" value="fire" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="5" range="7" min="-300" max="-549">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="40" defense="40">
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="70" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="healing" interval="2000" chance="20" min="220" max="425">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
<immunity fire="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="GROOOWL!" />
|
||||
<voice sentence="GRRRRR!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3035" countmax="7" chance="1000" /><!-- platinum coin -->
|
||||
<item id="3582" countmax="14" chance="309" /><!-- ham -->
|
||||
<item id="3027" countmax="4" chance="94" /><!-- black pearl -->
|
||||
<item id="3116" chance="10" /><!-- big bone -->
|
||||
<item id="6558" countmax="2" chance="310" /><!-- concentrated demonic blood -->
|
||||
<item id="3281" chance="9" /><!-- giant sword -->
|
||||
<item id="5944" chance="530" /><!-- soul orb -->
|
||||
<item id="3318" chance="108" /><!-- knight axe -->
|
||||
<item id="3271" chance="163" /><!-- spike sword -->
|
||||
<item id="6553" chance="4" /><!-- ruthless axe -->
|
||||
<item id="3280" chance="69" /><!-- fire sword -->
|
||||
<item id="4871" chance="1" /><!-- explorer brooch -->
|
||||
<item id="3071" chance="90" /><!-- wand of inferno -->
|
||||
</loot>
|
||||
</monster>
|
65
data/monster/790/juggernaut.xml
Normal file
65
data/monster/790/juggernaut.xml
Normal file
@ -0,0 +1,65 @@
|
||||
<monster name="Juggernaut" nameDescription="a juggernaut" race="blood" experience="6500" speed="145" manacost="0">
|
||||
<health now="20000" max="20000" />
|
||||
<look type="244" corpse="6335" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="200" attack="140">
|
||||
<attack name="physical" interval="2000" chance="15" range="7" min="0" max="-780">
|
||||
<attribute key="shootEffect" value="largerock" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="60" defense="60">
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="72" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="healing" interval="2000" chance="15" min="400" max="900">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="RAAARRR!" />
|
||||
<voice sentence="GRRRRRR!" />
|
||||
<voice sentence="WAHHHH!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="1000" /><!-- gold coin -->
|
||||
<item id="3035" countmax="15" chance="1000" /><!-- platinum coin -->
|
||||
<item id="3582" countmax="8" chance="600" /><!-- ham -->
|
||||
<item id="5944" chance="333" /><!-- soul orb -->
|
||||
<item id="6558" countmax="4" chance="250" /><!-- concentrated demonic blood -->
|
||||
<item id="3030" countmax="4" chance="200" /><!-- small ruby -->
|
||||
<item id="3032" countmax="5" chance="200" /><!-- small emerald -->
|
||||
<item id="3039" chance="138" /><!-- red gem -->
|
||||
<item id="3036" chance="8" /><!-- violet gem -->
|
||||
<item id="3019" chance="5" /><!-- demonbone amulet -->
|
||||
<item id="3360" chance="5" /><!-- golden armor -->
|
||||
<item id="3038" chance="8" /><!-- green gem -->
|
||||
<item id="3481" chance="2" /><!-- closed trap -->
|
||||
<item id="3370" chance="49" /><!-- knight armor -->
|
||||
<item id="3414" chance="8" /><!-- mastermind shield -->
|
||||
<item id="3322" chance="90" /><!-- dragon hammer -->
|
||||
<item id="3364" chance="5" /><!-- golden legs -->
|
||||
<item id="3113" chance="6" /><!-- broken pottery -->
|
||||
<item id="3340" chance="4" /><!-- heavy mace -->
|
||||
<item id="3342" chance="4" /><!-- war axe -->
|
||||
</loot>
|
||||
</monster>
|
64
data/monster/790/lost soul.xml
Normal file
64
data/monster/790/lost soul.xml
Normal file
@ -0,0 +1,64 @@
|
||||
<monster name="Lost Soul" nameDescription="a lost soul" race="undead" experience="4000" speed="110" manacost="0">
|
||||
<health now="5800" max="5800" />
|
||||
<look type="232" corpse="6310" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="450" />
|
||||
</flags>
|
||||
<attacks skill="80" attack="90">
|
||||
<attack name="physical" interval="2000" chance="10" length="3" spread="0" target="0" min="-40" max="-210">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
<attack name="speed" interval="2000" chance="20" radius="6" target="0" speedchange="-100" duration="4000">
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="30" defense="30" />
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity earth="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Forgive Meeeee!" />
|
||||
<voice sentence="Mouuuurn meeee!" />
|
||||
<voice sentence="Help meeee!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="198" chance="999" /> <!-- gold coin -->
|
||||
<item id="3035" countmax="7" chance="999" /> <!-- platinum coin -->
|
||||
<item id="3147" countmax="3" chance="352" /> <!-- blank rune -->
|
||||
<!-- unholy bone -->
|
||||
<item id="5944" chance="150" /> <!-- soul orb -->
|
||||
<!-- great mana potion -->
|
||||
<item id="3027" countmax="3" chance="120" /> <!-- black pearl -->
|
||||
<item id="3026" countmax="3" chance="110" /> <!-- white pearl -->
|
||||
<!-- great health potion -->
|
||||
<!-- demonic essence -->
|
||||
<item id="5806" chance="52" /> <!-- silver goblet -->
|
||||
<!-- rusty armor (semi-rare) -->
|
||||
<!-- rusty armor (rare) -->
|
||||
<item id="3081" chance="29" /> <!-- stone skin amulet -->
|
||||
<item id="6299" chance="25" /> <!-- death ring -->
|
||||
<item id="3039" chance="19" /> <!-- red gem -->
|
||||
<item id="3016" chance="15" /> <!-- ruby necklace -->
|
||||
<item id="6525" chance="11" /> <!-- skeleton decoration -->
|
||||
<!-- titan axe -->
|
||||
<item id="3324" chance="9" /> <!-- skull staff -->
|
||||
<!-- haunted blade -->
|
||||
<item id="3428" chance="8" /> <!-- tower shield -->
|
||||
<item id="5741" chance="1" /> <!-- skull helmet -->
|
||||
</loot>
|
||||
</monster>
|
39
data/monster/790/massacre.xml
Normal file
39
data/monster/790/massacre.xml
Normal file
@ -0,0 +1,39 @@
|
||||
<monster name="Massacre" nameDescription="Massacre" race="blood" experience="9800" speed="195" manacost="0">
|
||||
<health now="30000" max="30000" />
|
||||
<look type="244" corpse="6335" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="150" attack="150">
|
||||
<attack name="physical" interval="2000" chance="24" range="7" min="-280" max="-500">
|
||||
<attribute key="shootEffect" value="largerock" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="15" defense="15">
|
||||
<defense name="speed" interval="2000" chance="12" speedchange="90" duration="4000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity energy="1" />
|
||||
<immunity fire="1" />
|
||||
<immunity poison="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<loot>
|
||||
<item id="6540" chance="1000" /><!-- massacre's shell piece -->
|
||||
</loot>
|
||||
</monster>
|
31
data/monster/790/mr. punish.xml
Normal file
31
data/monster/790/mr. punish.xml
Normal file
@ -0,0 +1,31 @@
|
||||
<monster name="Mr. Punish" nameDescription="Mr. Punish" race="undead" experience="5500" speed="235" manacost="0">
|
||||
<health now="12000" max="12000" />
|
||||
<look type="234" corpse="6330" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag lightlevel="0" />
|
||||
<flag lightcolor="0" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="2000" />
|
||||
</flags>
|
||||
<attacks skill="170" attack="140">
|
||||
</attacks>
|
||||
<defenses armor="64" defense="72" />
|
||||
<immunities>
|
||||
<immunity energy="1" />
|
||||
<immunity fire="1" />
|
||||
<immunity poison="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<loot>
|
||||
<item id="6537" chance="1000" /><!-- mr punish's handcuffs -->
|
||||
</loot>
|
||||
</monster>
|
36
data/monster/790/munster.xml
Normal file
36
data/monster/790/munster.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<monster name="Munster" nameDescription="Munster" race="blood" experience="35" speed="100" manacost="0">
|
||||
<health now="58" max="58" />
|
||||
<look type="56" corpse="5964" />
|
||||
<targetchange interval="1000" chance="0" />
|
||||
<targetstrategy nearest="100" weakest="0" mostdamage="0" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="1" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="10" />
|
||||
</flags>
|
||||
<attacks attack="8" skill="18">
|
||||
</attacks>
|
||||
<defenses armor="2" defense="4" />
|
||||
<voices interval="2000" chance="5">
|
||||
<voice sentence="Meep!" />
|
||||
<voice sentence="Meeeeep!" />
|
||||
</voices>
|
||||
<summons maxSummons="2">
|
||||
<summon name="Rat" interval="2000" chance="20" />
|
||||
</summons>
|
||||
<loot>
|
||||
<item id="3337" chance="870" /> <!-- bone club -->
|
||||
<item id="3031" countmax="22" chance="710" /> <!-- gold coin -->
|
||||
<item id="3607" chance="560" /> <!-- cheese -->
|
||||
<item id="3492" countmax="4" chance="510" /> <!-- worm -->
|
||||
<item id="3598" countmax="2" chance="25" /> <!-- cookie -->
|
||||
<item id="5792" chance="2" /> <!-- die -->
|
||||
</loot>
|
||||
</monster>
|
65
data/monster/790/nightmare.xml
Normal file
65
data/monster/790/nightmare.xml
Normal file
@ -0,0 +1,65 @@
|
||||
<monster name="Nightmare" nameDescription="a nightmare" race="blood" experience="2150" speed="120" manacost="0">
|
||||
<health now="2700" max="2700" />
|
||||
<look type="245" corpse="6339" />
|
||||
<targetchange interval="1000" chance="5" />
|
||||
<targetstrategy nearest="70" weakest="0" mostdamage="30" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="300" />
|
||||
</flags>
|
||||
<attacks skill="50" attack="50">
|
||||
<attack name="physical" interval="2000" chance="10" range="7" radius="1" target="1" min="-120" max="-170">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="20" range="7" radius="4" target="1" min="-150" max="-350">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="25" defense="25">
|
||||
<defense name="healing" interval="2000" chance="10" min="60" max="100">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="60" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity invisible="1" />
|
||||
<immunity earth="1" />
|
||||
<immunity lifedrain="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Close your eyes... I want to show you something." />
|
||||
<voice sentence="I will haunt you forever!" />
|
||||
<voice sentence="Pffffrrrrrrrrrrrr." />
|
||||
<voice sentence="I will make you scream." />
|
||||
<voice sentence="Take a ride with me." />
|
||||
<voice sentence="Weeeheeheeeheee!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="500" /><!-- gold coin -->
|
||||
<item id="3031" countmax="55" chance="500" /><!-- gold coin -->
|
||||
<item id="3582" countmax="2" chance="290" /><!-- ham -->
|
||||
<item id="5944" chance="200" /><!-- soul orb -->
|
||||
<item id="6558" countmax="2" chance="196" /><!-- concentrated demonic blood -->
|
||||
<item id="3450" countmax="4" chance="90" /><!-- power bolt -->
|
||||
<item id="3035" countmax="3" chance="25" /><!-- platinum coin -->
|
||||
<item id="6299" chance="12" /><!-- death ring -->
|
||||
<item id="3432" chance="9" /><!-- ancient shield -->
|
||||
<item id="3371" chance="9" /><!-- knight legs -->
|
||||
<item id="3079" chance="3" /><!-- boots of haste -->
|
||||
<item id="6525" chance="3" /><!-- skeleton decoration -->
|
||||
<item id="5668" chance="1" /><!-- mysterious voodoo skull -->
|
||||
<item id="3342" chance="95" /><!-- war axe -->
|
||||
</loot>
|
||||
</monster>
|
42
data/monster/790/nomad.xml
Normal file
42
data/monster/790/nomad.xml
Normal file
@ -0,0 +1,42 @@
|
||||
<monster name="Nomad" nameDescription="a nomad" race="blood" experience="60" speed="100" manacost="420">
|
||||
<health now="160" max="160" />
|
||||
<look type="146" head="114" body="20" legs="22" feet="2" addons="2" corpse="6080" />
|
||||
<targetchange interval="1000" chance="0" />
|
||||
<targetstrategy nearest="100" weakest="0" mostdamage="0" random="0" />
|
||||
<flags>
|
||||
<flag summonable="1" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="1" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="0" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="15" />
|
||||
</flags>
|
||||
<attacks attack="30" skill="40">
|
||||
<attack name="physical" interval="2000" chance="10" target="0" radius="1">
|
||||
<attribute key="areaeffect" value="whitenote" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="15" defense="15" />
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="We are the true sons of the desert!" />
|
||||
<voice sentence="I will leave your remains to the vultures!" />
|
||||
<voice sentence="We are swift as the wind of the desert!" />
|
||||
<voice sentence="Your riches will be mine!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="40" chance="560" /> <!-- gold coin -->
|
||||
<!-- rope belt -->
|
||||
<!-- potato -->
|
||||
<item id="3274" chance="27" /> <!-- axe -->
|
||||
<item id="3359" chance="23" /> <!-- brass armor -->
|
||||
<item id="3286" chance="21" /> <!-- mace -->
|
||||
<!-- dirty turban -->
|
||||
<item id="3409" chance="9" /> <!-- steel shield -->
|
||||
<item id="3353" chance="6" /> <!-- iron helmet -->
|
||||
<!-- nomad parchment -->
|
||||
</loot>
|
||||
</monster>
|
53
data/monster/790/phantasm summon.xml
Normal file
53
data/monster/790/phantasm summon.xml
Normal file
@ -0,0 +1,53 @@
|
||||
<monster name="Phantasm" nameDescription="a phantasm" race="undead" experience="0" speed="120" manacost="0">
|
||||
<health now="65" max="65" />
|
||||
<look type="241" head="20" corpse="6343" />
|
||||
<targetchange interval="1000" chance="5" />
|
||||
<targetstrategy nearest="70" weakest="0" mostdamage="30" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="30" attack="25">
|
||||
<attack name="physical" interval="2000" chance="15" range="7" min="-50" max="-80">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="manadrain" interval="2000" chance="10" target="0" radius="3" min="-5" max="-80">
|
||||
<attribute key="areaEffect" value="yellowbubble" />
|
||||
</attack>
|
||||
<attack name="drunk" interval="2000" chance="5" radius="5" target="0" duration="6000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses>
|
||||
<defense name="healing" interval="2000" chance="30" min="40" max="65">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="10" speedchange="60" duration="6000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="2000" chance="25" duration="8000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity physical="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Oh my, you forgot to put your pants on!" />
|
||||
<voice sentence="Weeheeheeheehee!" />
|
||||
<voice sentence="Its nothing but a dream!" />
|
||||
<voice sentence="Give in!" />
|
||||
</voices>
|
||||
</monster>
|
71
data/monster/790/phantasm.xml
Normal file
71
data/monster/790/phantasm.xml
Normal file
@ -0,0 +1,71 @@
|
||||
<monster name="Phantasm" nameDescription="a phantasm" race="undead" experience="4400" speed="120" manacost="0">
|
||||
<health now="3950" max="3950" />
|
||||
<look type="241" head="20" corpse="6343" />
|
||||
<targetchange interval="1000" chance="5" />
|
||||
<targetstrategy nearest="70" weakest="0" mostdamage="30" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="350" />
|
||||
</flags>
|
||||
<attacks skill="90" attack="95">
|
||||
<attack name="physical" interval="2000" chance="10" range="7" min="-250" max="-610">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="manadrain" interval="2000" chance="20" target="0" radius="3" min="-5" max="-80">
|
||||
<attribute key="areaEffect" value="yellowbubble" />
|
||||
</attack>
|
||||
<attack name="drunk" interval="2000" chance="15" radius="5" target="0" duration="6000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses>
|
||||
<defense name="healing" interval="2000" chance="30" min="228" max="449">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="10" speedchange="500" duration="6000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="2000" chance="25" duration="8000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity physical="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Oh my, you forgot to put your pants on!" />
|
||||
<voice sentence="Weeheeheeheehee!" />
|
||||
<voice sentence="Its nothing but a dream!" />
|
||||
<voice sentence="Give in!" />
|
||||
</voices>
|
||||
<summons maxSummons="4">
|
||||
<summon name="Phantasm Summon" interval="2000" chance="20" />
|
||||
<summon name="Phantasm Summon" interval="2000" chance="20" />
|
||||
</summons>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="300" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="300" /><!-- gold coin -->
|
||||
<item id="3031" countmax="33" chance="280" /><!-- gold coin -->
|
||||
<item id="3035" countmax="4" chance="877" /><!-- platinum coin -->
|
||||
<item id="3147" countmax="2" chance="225" /><!-- blank rune -->
|
||||
<item id="3740" countmax="2" chance="269" /><!-- shadow herb -->
|
||||
<item id="3032" countmax="3" chance="101" /><!-- small emerald -->
|
||||
<item id="3381" chance="6" /><!-- crown armor -->
|
||||
<item id="3049" chance="5" /><!-- stealth ring -->
|
||||
<item id="6299" chance="3" /><!-- death ring -->
|
||||
<item id="3030" countmax="3" chance="121" /><!-- small ruby -->
|
||||
<item id="3033" countmax="3" chance="145" /><!-- small amethyst -->
|
||||
</loot>
|
||||
</monster>
|
75
data/monster/790/plaguesmith.xml
Normal file
75
data/monster/790/plaguesmith.xml
Normal file
@ -0,0 +1,75 @@
|
||||
<monster name="Plaguesmith" nameDescription="a plaguesmith" race="venom" experience="4500" speed="120" manacost="0">
|
||||
<health now="8250" max="8250" />
|
||||
<look type="247" corpse="6515" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="500" />
|
||||
</flags>
|
||||
<attacks skill="100" attack="98" poison="200">
|
||||
<attack name="poison" interval="2000" chance="15" radius="4" target="0" min="-60" max="-114">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="poison" interval="2000" chance="10" length="5" spread="3" min="-100" max="-350">
|
||||
<attribute key="areaEffect" value="yellowbubble" />
|
||||
</attack>
|
||||
<attack name="speed" interval="2000" chance="15" radius="4" target="0" speedchange="-100" duration="30000">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="40" defense="40">
|
||||
<defense name="healing" interval="2000" chance="10" min="200" max="280">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="60" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity earth="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="You are looking a bit feverish!" />
|
||||
<voice sentence="You don't look that good!" />
|
||||
<voice sentence="Hachoo!" />
|
||||
<voice sentence="Cough Cough" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="500" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="400" /><!-- gold coin -->
|
||||
<item id="3031" countmax="65" chance="500" /><!-- gold coin -->
|
||||
<item id="3122" chance="600" /><!-- dirty cape -->
|
||||
<item id="3120" chance="500" /><!-- moldy cheese -->
|
||||
<item id="3282" chance="290" /><!-- morning star-->
|
||||
<item id="3265" chance="200" /><!-- two handed sword -->
|
||||
<item id="3409" chance="200" /><!-- steel shield -->
|
||||
<item id="3110" chance="200" /><!-- piece of iron -->
|
||||
<item id="3305" chance="200" /><!-- battle hammer -->
|
||||
<item id="5944" chance="111" /><!-- soul orb -->
|
||||
<item id="3035" countmax="2" chance="71" /><!-- platinum coin -->
|
||||
<item id="3371" chance="62" /><!-- knight legs -->
|
||||
<item id="3033" countmax="3" chance="50" /><!-- small amethyst -->
|
||||
<item id="3093" chance="47" /><!-- club ring -->
|
||||
<item id="3092" chance="43" /><!-- axe ring -->
|
||||
<item id="3279" chance="21" /><!-- war hammer -->
|
||||
<item id="3017" chance="20" /><!-- silver brooch -->
|
||||
<item id="5887" chance="12" /><!-- piece of royal steel -->
|
||||
<item id="3554" chance="11" /><!-- steel boots -->
|
||||
<item id="5889" chance="10" /><!-- piece of dragonian steel -->
|
||||
<item id="5888" chance="10" /><!-- piece of hell steel -->
|
||||
<item id="3332" chance="9" /><!-- hammer of wrath -->
|
||||
<item id="3010" chance="3" /><!-- emerald bangle -->
|
||||
<item id="3103" chance="100" /><!-- war horn -->
|
||||
</loot>
|
||||
</monster>
|
54
data/monster/790/son of verminor.xml
Normal file
54
data/monster/790/son of verminor.xml
Normal file
@ -0,0 +1,54 @@
|
||||
<monster name="Son Of Verminor" nameDescription="a son of verminor" race="venom" experience="5900" speed="120" manacost="0">
|
||||
<health now="8500" max="8500" />
|
||||
<look type="19" corpse="2121" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="95" attack="90" poison="450">
|
||||
<attack name="earth" interval="2000" chance="20" range="7" target="1" min="-150" max="-200">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="15" radius="3" target="0" min="-350" max="-390">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="15" radius="3" target="0" min="-220" max="-270">
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="20" defense="20">
|
||||
<defense name="healing" interval="2000" chance="20" min="250" max="350">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="outfit" interval="5000" chance="10" monster="rat" duration="6000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="outfit" interval="5000" chance="10" monster="larva" duration="6000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="outfit" interval="5000" chance="10" monster="scorpion" duration="6000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="outfit" interval="5000" chance="10" monster="slime" duration="6000">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity earth="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Blubb" />
|
||||
</voices>
|
||||
</monster>
|
65
data/monster/790/spectre.xml
Normal file
65
data/monster/790/spectre.xml
Normal file
@ -0,0 +1,65 @@
|
||||
<monster name="Spectre" nameDescription="a spectre" race="undead" experience="2100" speed="115" manacost="0">
|
||||
<health now="1350" max="1350" />
|
||||
<look type="235" head="20" corpse="6347" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="65" attack="82" poison="300">
|
||||
<attack name="drunk" interval="2000" chance="15" radius="4" target="0" duration="6000">
|
||||
<attribute key="areaEffect" value="purplenote" />
|
||||
</attack>
|
||||
<attack name="manadrain" interval="2000" chance="15" range="7" min="-100" max="-400" />
|
||||
<attack name="lifedrain" interval="2000" chance="20" range="7" min="-300" max="-550">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="35" defense="35">
|
||||
<defense name="healing" interval="2000" chance="25" min="100" max="250">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="healing" interval="2000" chance="10" min="370" max="700">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="60" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
<immunity drown="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity earth="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Revenge ... is so ... sweet!" />
|
||||
<voice sentence="Life...force! Feed me your... lifeforce!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="330" /><!-- gold coin -->
|
||||
<item id="3031" countmax="100" chance="330" /><!-- gold coin -->
|
||||
<item id="3031" countmax="97" chance="330" /><!-- gold coin -->
|
||||
<item id="3147" countmax="2" chance="303" /><!-- blank rune -->
|
||||
<item id="3035" countmax="7" chance="38" /><!-- platinum coin -->
|
||||
<item id="5944" chance="60" /><!-- soul orb -->
|
||||
<item id="3049" chance="1" /><!-- stealth ring -->
|
||||
<item id="3073" chance="98" /><!-- wand of cosmic energy -->
|
||||
<item id="3260" chance="96" /><!-- lyre -->
|
||||
<item id="3017" chance="8" /><!-- silver brooch -->
|
||||
<item id="5909" chance="38" /><!-- white piece of cloth -->
|
||||
<item id="6299" chance="2" /><!-- death ring -->
|
||||
<item id="3017" chance="1" /><!-- shadow sceptre -->
|
||||
<item id="3019" chance="1" /><!--demonbone amulet -->
|
||||
</loot>
|
||||
</monster>
|
49
data/monster/790/the handmaiden.xml
Normal file
49
data/monster/790/the handmaiden.xml
Normal file
@ -0,0 +1,49 @@
|
||||
<monster name="The Handmaiden" nameDescription="the Handmaiden" race="blood" experience="3850" speed="225" manacost="0">
|
||||
<health now="14500" max="14500" />
|
||||
<look type="230" corpse="6311" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="3100" />
|
||||
</flags>
|
||||
<attacks skill="150" attack="100">
|
||||
<attack name="manadrain" interval="2000" chance="25" range="7" min="-150" max="-800">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</attack>
|
||||
<attack name="drunk" interval="1000" chance="12" range="1" target="1" />
|
||||
</attacks>
|
||||
<defenses armor="25" defense="35">
|
||||
<defense name="speed" interval="3000" chance="12" speedchange="100" duration="8000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="4000" chance="50" duration="6000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="healing" interval="2000" chance="50" min="100" max="250">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="1000" chance="35" speedchange="100" duration="30000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity energy="1" />
|
||||
<immunity fire="1" />
|
||||
<immunity poison="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<loot>
|
||||
<item id="6539" chance="350" /><!-- handmaiden's protector -->
|
||||
</loot>
|
||||
</monster>
|
74
data/monster/790/the imperor.xml
Normal file
74
data/monster/790/the imperor.xml
Normal file
@ -0,0 +1,74 @@
|
||||
<monster name="The Imperor" nameDescription="The Imperor" race="fire" experience="8000" speed="165" manacost="0">
|
||||
<health now="15000" max="15000" />
|
||||
<look type="237" corpse="6363" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="4" />
|
||||
<flag runonhealth="0" />
|
||||
</flags>
|
||||
<attacks skill="110" attack="110">
|
||||
<attack name="fire" interval="1000" chance="13" range="1" target="1" min="-50" max="-800">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="20" range="7" radius="6" target="1" min="-50" max="-800">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
<attack name="fire" interval="2000" chance="30" length="4" spread="2" target="1" min="-90" max="-350">
|
||||
<attribute key="shootEffect" value="fire" />
|
||||
<attribute key="areaEffect" value="firearea" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="15" defense="15">
|
||||
<defense name="healing" interval="2000" chance="50" min="175" max="505">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="12" speedchange="80" duration="4000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
<defense name="invisible" interval="3000" chance="20" duration="5000">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity poison="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<summons maxSummons="2">
|
||||
<summon name="diabolic imp" interval="5500" chance="30" />
|
||||
</summons>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Muahaha!" />
|
||||
<voice sentence="He he he!" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="79" chance="1000" /><!-- gold coin -->
|
||||
<item id="2920" chance="150" /><!-- torch -->
|
||||
<item id="6558" chance="22" /><!-- concentrated demonic blood -->
|
||||
<item id="3147" chance="180" /><!-- blank rune -->
|
||||
<item id="6534" chance="1000" /><!-- the imperor's trident -->
|
||||
<item id="6299" chance="9" /><!-- death ring -->
|
||||
<item id="3359" chance="65" /><!-- brass armor -->
|
||||
<item id="3451" chance="200" /><!-- pitchfork -->
|
||||
<item id="6528" countmax="5" chance="50" /><!-- infernal bolts -->
|
||||
<item id="3359" chance="65" /><!-- brass armor -->
|
||||
<item id="3069" chance="8" /><!-- volcanic rod -->
|
||||
<item id="3358" chance="78" /><!-- chain armor -->
|
||||
<item id="5944" chance="56" /><!-- soul orb -->
|
||||
<item id="3033" countmax="1" chance="88" /><!-- small amethyst -->
|
||||
<item id="3049" chance="45" /><!-- stealth ring -->
|
||||
</loot>
|
||||
</monster>
|
57
data/monster/790/the plasmother.xml
Normal file
57
data/monster/790/the plasmother.xml
Normal file
@ -0,0 +1,57 @@
|
||||
<monster name="The Plasmother" nameDescription="The Plasmother" race="venom" experience="8900" speed="155" manacost="0">
|
||||
<health now="7500" max="7500" />
|
||||
<look type="238" corpse="6532" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="0" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="250" />
|
||||
</flags>
|
||||
<attacks skill="30" attack="50">
|
||||
<attack name="speed" interval="1000" chance="8" radius="6" target="0" speedchange="-100" duration="10000">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="15" target="0" radius="4" min="-200" max="-350">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="earth" interval="3000" chance="15" target="1" radius="4" min="-200" max="-530">
|
||||
<attribute key="areaEffect" value="greenspark" />
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="30" defense="30">
|
||||
<defense name="healing" interval="1000" chance="75" min="505" max="605">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity earth="1" />
|
||||
<immunity lifedrain="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<summons maxSummons="2">
|
||||
<summon name="Defiler" interval="4000" chance="20" />
|
||||
</summons>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Blubb" />
|
||||
<voice sentence="Blubb Blubb" />
|
||||
<voice sentence="Blubberdiblubb" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="177" chance="200" /> <!-- gold coins -->
|
||||
<item id="3035" countmax="13" chance="250" /><!-- platinum coin -->
|
||||
<item id="3027" countmax="3" chance="50" /><!-- black pearl -->
|
||||
<item id="3029" countmax="3" chance="50" /><!-- small sapphire -->
|
||||
<item id="5944" chance="350" /><!-- soul orb -->
|
||||
<item id="6535" chance="1000" /><!-- the plasmother's remains -->
|
||||
</loot>
|
||||
</monster>
|
76
data/monster/790/undead dragon.xml
Normal file
76
data/monster/790/undead dragon.xml
Normal file
@ -0,0 +1,76 @@
|
||||
<monster name="Undead Dragon" nameDescription="an undead dragon" race="undead" experience="7200" speed="125" manacost="0">
|
||||
<health now="8350" max="8350" />
|
||||
<look type="231" corpse="6305" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="300" />
|
||||
</flags>
|
||||
<attacks skill="90" attack="96">
|
||||
<attack name="physical" interval="2000" chance="5" range="7" radius="4" target="1" min="-300" max="-400">
|
||||
<attribute key="areaEffect" value="redspark" />
|
||||
</attack>
|
||||
<attack name="physical" interval="2000" chance="10" range="7" min="-125" max="-600">
|
||||
<attribute key="shootEffect" value="death" />
|
||||
<attribute key="areaEffect" value="mortarea" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="5" range="7" radius="4" target="1" min="-100" max="-390">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="15" target="1" range="7" min="0" max="-180">
|
||||
<attribute key="shootEffect" value="poison" />
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="earth" interval="2000" chance="10" length="8" spread="3" min="-150" max="-690">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="lifedrain" interval="2000" chance="10" length="8" spread="3" min="-300" max="-700">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
<attack name="lifedrain" interval="2000" chance="10" radius="3" min="-100" max="-200">
|
||||
<attribute key="areaEffect" value="redshimmer" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="40" defense="40">
|
||||
<defense name="healing" interval="2000" chance="15" min="200" max="250">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity fire="1" />
|
||||
<immunity earth="1" />
|
||||
<immunity paralyze="1" />
|
||||
<immunity invisible="1" />
|
||||
<immunity drown="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="FEEEED MY ETERNAL HUNGER!" yell="1" />
|
||||
<voice sentence="I SENSE LIFE" yell="1" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="100" chance="355" /><!-- gold coin -->
|
||||
<item id="3031" countmax="98" chance="555" /><!-- gold coin -->
|
||||
<item id="3035" countmax="5" chance="520" /><!-- platinum coin -->
|
||||
<item id="6299" chance="11" /><!-- death ring -->
|
||||
<item id="2903" chance="60" /><!-- golden mug -->
|
||||
<item id="3450" countmax="15" chance="151" /><!-- power bolt -->
|
||||
<item id="3370" chance="55" /><!-- knight armor -->
|
||||
<item id="3061" chance="25" /><!-- life crystal -->
|
||||
<item id="5925" chance="141" /><!-- hardened bone -->
|
||||
<item id="3392" chance="17" /><!-- royal helmet -->
|
||||
<item id="3342" chance="12" /><!-- war axe -->
|
||||
<item id="3029" countmax="2" chance="283" /><!-- small sapphires -->
|
||||
<item id="3027" countmax="2" chance="227" /><!-- black pearls -->
|
||||
<item id="3360" chance="8" /><!-- golden armor -->
|
||||
</loot>
|
||||
</monster>
|
50
data/monster/790/wyvern.xml
Normal file
50
data/monster/790/wyvern.xml
Normal file
@ -0,0 +1,50 @@
|
||||
<monster name="Wyvern" nameDescription="a wyvern" race="blood" experience="515" speed="50" manacost="0">
|
||||
<health now="795" max="795" />
|
||||
<look type="239" corpse="6301" />
|
||||
<targetchange interval="1000" chance="10" />
|
||||
<targetstrategy nearest="70" weakest="10" mostdamage="10" random="10" />
|
||||
<flags>
|
||||
<flag summonable="0" />
|
||||
<flag attackable="1" />
|
||||
<flag hostile="1" />
|
||||
<flag illusionable="1" />
|
||||
<flag convinceable="0" />
|
||||
<flag pushable="0" />
|
||||
<flag canpushitems="1" />
|
||||
<flag canpushcreatures="1" />
|
||||
<flag targetdistance="1" />
|
||||
<flag runonhealth="300" />
|
||||
</flags>
|
||||
<attacks attack="40" skill="50" poison="480">
|
||||
<attack name="poisoncondition" count="450" chance="15" length="8" spread="3" min="-240" max="-240">
|
||||
<attribute key="areaEffect" value="poison" />
|
||||
</attack>
|
||||
<attack name="drunk" interval="2000" chance="10" length="3" spread="2" duration="5000">
|
||||
<attribute key="areaEffect" value="rednote" />
|
||||
</attack>
|
||||
</attacks>
|
||||
<defenses armor="25" defense="25">
|
||||
<defense name="healing" interval="2000" chance="15" min="45" max="65">
|
||||
<attribute key="areaEffect" value="blueshimmer" />
|
||||
</defense>
|
||||
<defense name="speed" interval="2000" chance="15" speedchange="85" duration="5000">
|
||||
<attribute key="areaEffect" value="greenshimmer" />
|
||||
</defense>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity invisible="1" />
|
||||
<immunity earth="1" />
|
||||
<immunity drunk="1" />
|
||||
</immunities>
|
||||
<voices interval="2000" chance="7">
|
||||
<voice sentence="Shriiiek" yell="1" />
|
||||
</voices>
|
||||
<loot>
|
||||
<item id="3031" countmax="90" chance="1000" /><!-- gold coin -->
|
||||
<item id="3583" countmax="3" chance="605" /><!-- dragon ham -->
|
||||
<item id="3450" countmax="2" chance="34" /><!-- power bolt -->
|
||||
<item id="3029" chance="50" /><!-- small sapphire -->
|
||||
<item id="3071" chance="8" /><!-- wand of inferno -->
|
||||
<item id="3010" chance="5" /><!-- emerald bangle -->
|
||||
</loot>
|
||||
</monster>
|
28
data/monster/Training Monk.xml
Normal file
28
data/monster/Training Monk.xml
Normal file
@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<monster name="Training Monk" nameDescription="a training monk" race="blood" experience="0" speed="0" manacost="0">
|
||||
<health now="100000" max="100000"/>
|
||||
<look type="57" head="0" body="0" legs="0" feet="0" corpse="6080" />
|
||||
<targetchange interval="1000" chance="5" />
|
||||
<targetstrategy nearest="100" weakest="0" mostdamage="0" random="0" />
|
||||
<flags>
|
||||
<flag summonable="0"/>
|
||||
<flag attackable="1"/>
|
||||
<flag hostile="1"/>
|
||||
<flag illusionable="0"/>
|
||||
<flag convinceable="0"/>
|
||||
<flag pushable="0"/>
|
||||
<flag canpushitems="1"/>
|
||||
<flag lightlevel="0"/>
|
||||
<flag lightcolor="0"/>
|
||||
<flag targetdistance="1"/>
|
||||
<flag runonhealth="0"/>
|
||||
</flags>
|
||||
<attacks attack="1" skill="60">
|
||||
</attacks>
|
||||
<defenses armor="0" defense="0">
|
||||
<defense name="healing" interval="10000" chance="100" min="100000" max="100000"/>
|
||||
</defenses>
|
||||
<immunities>
|
||||
<immunity invisible="1"/>
|
||||
</immunities>
|
||||
</monster>
|
@ -48,7 +48,7 @@
|
||||
<immunity invisible="1" />
|
||||
</immunities>
|
||||
<summons maxSummons="3">
|
||||
<summon name="scarab" chance="7" max="3" />
|
||||
<summon name="larva" chance="7" max="3" />
|
||||
</summons>
|
||||
<loot>
|
||||
<item id="3025" countmax="1" chance="10" /> <!-- an ancient amulet -->
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user