Resolve "Merge the best from 7.40 branch"

This commit is contained in:
Erikas Kontenis
2022-04-06 14:58:52 +00:00
parent 3bd1a6f07e
commit 155da3573c
928 changed files with 43723 additions and 1221 deletions

View File

@@ -5,31 +5,34 @@
<outfit type="0" looktype="137" name="Hunter" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="138" name="Mage" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="139" name="Knight" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="140" name="Noblewoman" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="141" name="Summoner" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="142" name="Warrior" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="147" name="Barbarian" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="148" name="Druid" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="149" name="Wizard" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="150" name="Oriental" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="155" name="Pirate" premium="yes" unlocked="no" enabled="yes" />
<outfit type="0" looktype="156" name="Assassin" premium="yes" unlocked="no" enabled="yes" />
<outfit type="0" looktype="157" name="Beggar" premium="yes" unlocked="no" enabled="yes" />
<outfit type="0" looktype="158" name="Shaman" premium="yes" unlocked="no" enabled="yes" />
<outfit type="0" looktype="140" name="Noblewoman" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="141" name="Summoner" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="142" name="Warrior" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="147" name="Barbarian" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="148" name="Druid" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="149" name="Wizard" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="150" name="Oriental" premium="no" unlocked="yes" enabled="yes" />
<outfit type="0" looktype="155" name="Pirate" premium="no" unlocked="no" enabled="yes" />
<outfit type="0" looktype="156" name="Assassin" premium="no" unlocked="no" enabled="yes" />
<outfit type="0" looktype="157" name="Beggar" premium="no" unlocked="no" enabled="yes" />
<outfit type="0" looktype="158" name="Shaman" premium="no" unlocked="no" enabled="yes" />
<outfit type="0" looktype="161" name="Witch" premium="yes" unlocked="yes" enabled="yes" />
<!-- Male outfits -->
<outfit type="1" looktype="128" name="Citizen" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="129" name="Hunter" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="130" name="Mage" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="131" name="Knight" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="132" name="Nobleman" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="133" name="Summoner" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="134" name="Warrior" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="143" name="Barbarian" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="144" name="Druid" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="145" name="Wizard" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="146" name="Oriental" premium="yes" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="151" name="Pirate" premium="yes" unlocked="no" enabled="yes" />
<outfit type="1" looktype="152" name="Assassin" premium="yes" unlocked="no" enabled="yes" />
<outfit type="1" looktype="153" name="Beggar" premium="yes" unlocked="no" enabled="yes" />
<outfit type="1" looktype="154" name="Shaman" premium="yes" unlocked="no" enabled="yes" />
<outfit type="1" looktype="132" name="Nobleman" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="133" name="Summoner" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="134" name="Warrior" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="143" name="Barbarian" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="144" name="Druid" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="145" name="Wizard" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="146" name="Oriental" premium="no" unlocked="yes" enabled="yes" />
<outfit type="1" looktype="151" name="Pirate" premium="no" unlocked="no" enabled="yes" />
<outfit type="1" looktype="152" name="Assassin" premium="no" unlocked="no" enabled="yes" />
<outfit type="1" looktype="153" name="Beggar" premium="no" unlocked="no" enabled="yes" />
<outfit type="1" looktype="154" name="Shaman" premium="no" unlocked="no" enabled="yes" />
<outfit type="1" looktype="162" name="Monk" premium="yes" unlocked="yes" enabled="yes" />
</outfits>

View File

@@ -9,7 +9,7 @@
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="1" flagid="1" name="Sorcerer" description="a sorcerer" gaincap="10" gainhp="5" gainmana="30" gainhpticks="6" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="1">
<vocation id="1" flagid="1" name="Sorcerer" description="a sorcerer" gaincap="10" gainhp="5" gainmana="30" gainhpticks="12" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="1">
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="2.0"/>
<skill id="2" multiplier="2.0"/>
@@ -18,7 +18,7 @@
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="2" flagid="2" name="Druid" description="a druid" gaincap="10" gainhp="5" gainmana="30" gainhpticks="6" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="2">
<vocation id="2" flagid="2" name="Druid" description="a druid" gaincap="10" gainhp="5" gainmana="30" gainhpticks="12" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="2">
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="1.8"/>
<skill id="2" multiplier="1.8"/>
@@ -27,7 +27,7 @@
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="3" flagid="4" name="Paladin" description="a paladin" gaincap="20" gainhp="10" gainmana="15" gainhpticks="4" gainhpamount="1" gainmanaticks="4" gainmanaamount="2" manamultiplier="1.4" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="3">
<vocation id="3" flagid="4" name="Paladin" description="a paladin" gaincap="20" gainhp="10" gainmana="15" gainhpticks="8" gainhpamount="1" gainmanaticks="4" gainmanaamount="2" manamultiplier="1.4" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="3">
<skill id="0" multiplier="1.2"/>
<skill id="1" multiplier="1.2"/>
<skill id="2" multiplier="1.2"/>
@@ -36,7 +36,7 @@
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="4" flagid="8" name="Knight" description="a knight" gaincap="25" gainhp="15" gainmana="5" gainhpticks="3" gainhpamount="1" gainmanaticks="6" gainmanaamount="2" manamultiplier="3.0" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="4">
<vocation id="4" flagid="8" name="Knight" description="a knight" gaincap="25" gainhp="15" gainmana="5" gainhpticks="6" gainhpamount="1" gainmanaticks="6" gainmanaamount="2" manamultiplier="3.0" attackspeed="2000" basespeed="70" soulmax="100" gainsoulticks="120" fromvoc="4">
<skill id="0" multiplier="1.1"/>
<skill id="1" multiplier="1.1"/>
<skill id="2" multiplier="1.1"/>
@@ -45,7 +45,7 @@
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="5" flagid="1" name="Master Sorcerer" description="a master sorcerer" gaincap="10" gainhp="5" gainmana="30" gainhpticks="4" gainhpamount="1" gainmanaticks="2" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="1">
<vocation id="5" flagid="1" name="Master Sorcerer" description="a master sorcerer" gaincap="10" gainhp="5" gainmana="30" gainhpticks="12" gainhpamount="1" gainmanaticks="2" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="1">
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="2.0"/>
<skill id="2" multiplier="2.0"/>
@@ -54,7 +54,7 @@
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="6" flagid="2" name="Elder Druid" description="an elder druid" gaincap="10" gainhp="5" gainmana="30" gainhpticks="4" gainhpamount="1" gainmanaticks="2" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="2">
<vocation id="6" flagid="2" name="Elder Druid" description="an elder druid" gaincap="10" gainhp="5" gainmana="30" gainhpticks="12" gainhpamount="1" gainmanaticks="2" gainmanaamount="2" manamultiplier="1.1" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="2">
<skill id="0" multiplier="1.5"/>
<skill id="1" multiplier="1.8"/>
<skill id="2" multiplier="1.8"/>
@@ -63,7 +63,7 @@
<skill id="5" multiplier="1.5"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="7" flagid="4" name="Royal Paladin" description="a royal paladin" gaincap="20" gainhp="10" gainmana="15" gainhpticks="3" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.4" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="3">
<vocation id="7" flagid="4" name="Royal Paladin" description="a royal paladin" gaincap="20" gainhp="10" gainmana="15" gainhpticks="6" gainhpamount="1" gainmanaticks="3" gainmanaamount="2" manamultiplier="1.4" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="3">
<skill id="0" multiplier="1.2"/>
<skill id="1" multiplier="1.2"/>
<skill id="2" multiplier="1.2"/>
@@ -72,7 +72,7 @@
<skill id="5" multiplier="1.1"/>
<skill id="6" multiplier="1.1"/>
</vocation>
<vocation id="8" flagid="8" name="Elite Knight" description="an elite knight" gaincap="25" gainhp="15" gainmana="5" gainhpticks="2" gainhpamount="1" gainmanaticks="4" gainmanaamount="2" manamultiplier="3.0" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="4">
<vocation id="8" flagid="8" name="Elite Knight" description="an elite knight" gaincap="25" gainhp="15" gainmana="5" gainhpticks="4" gainhpamount="1" gainmanaticks="6" gainmanaamount="2" manamultiplier="3.0" attackspeed="2000" basespeed="70" soulmax="200" gainsoulticks="15" fromvoc="4">
<skill id="0" multiplier="1.1"/>
<skill id="1" multiplier="1.1"/>
<skill id="2" multiplier="1.1"/>

View File

@@ -196,6 +196,8 @@
<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" />
<action itemid="6554" script="misc/shop_points_scroll.lua" />
<action itemid="6555" script="misc/shop_points_scroll.lua" />
<!-- Dolls -->
<action itemid="5080" script="misc/dolls.lua" />

View File

@@ -45,7 +45,71 @@ function onUse(player, item, fromPosition, target, toPosition)
end
player:sendTextMessage(MESSAGE_INFO_DESCR, "You have found " .. rewardName .. ".")
player:addItemEx(reward:clone(), true)
local attackAttribute = math.random(-2, 5)
local rewardClone = reward:clone()
if rewardClone:getType():getAttack() > 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_ATTACK, rewardClone:getType():getAttack() + attackAttribute)
local description = rewardClone:hasAttribute(ITEM_ATTRIBUTE_DESCRIPTION) and rewardClone:getAttribute(ITEM_ATTRIBUTE_DESCRIPTION) or rewardClone:getType():getDescription()
if description ~= nil and description ~= '' then
description = description .. ". "
end
if attackAttribute == 5 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. "Enchanted with perfect attack.")
else
if attackAttribute ~= 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. "Enchanted with " .. attackAttribute .. " attack.")
end
end
end
local defenseAttribute = math.random(-2, 5)
if rewardClone:getType():getDefense() > 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DEFENSE, rewardClone:getType():getDefense() + defenseAttribute)
local description = rewardClone:hasAttribute(ITEM_ATTRIBUTE_DESCRIPTION) and rewardClone:getAttribute(ITEM_ATTRIBUTE_DESCRIPTION) or rewardClone:getType():getDescription()
if rewardClone:getType():getAttack() > 0 and attackAttribute ~= 0 then
if defenseAttribute == 5 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. " Enchanted with perfect defense.")
else
if defenseAttribute ~= 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. " Enchanted with " .. defenseAttribute .. " defense.")
end
end
else
if description ~= nil and description ~= '' then
description = description .. ". "
end
if defenseAttribute == 5 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. "Enchanted with perfect defense.")
else
if defenseAttribute ~= 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. "Enchanted with " .. defenseAttribute .. " defense.")
end
end
end
end
local armorAttribute = math.random(-1, 2)
if rewardClone:getType():getArmor() > 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_ARMOR, rewardClone:getType():getArmor() + armorAttribute)
local description = rewardClone:hasAttribute(ITEM_ATTRIBUTE_DESCRIPTION) and rewardClone:getAttribute(ITEM_ATTRIBUTE_DESCRIPTION) or rewardClone:getType():getDescription()
if description ~= nil and description ~= '' then
description = description .. ". "
end
if armorAttribute == 2 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. "Enchanted with perfect armor protection.")
else
if armorAttribute ~= 0 then
rewardClone:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, description .. "Enchanted with " .. armorAttribute .. " armor protection.")
end
end
end
player:addItemEx(rewardClone, true)
player:setStorageValue(chestQuestNumber, 1)
return true
end

View File

@@ -19,18 +19,15 @@ function onUse(player, item, fromPosition, target, toPosition)
end
if not Tile(player:getPosition()):hasFlag(TILESTATE_PROTECTIONZONE) then
if player:getItemCount(3492) >= 1 then
player:addSkillTries(SKILL_FISHING, 1)
if math.random(1, 100) <= math.min(math.max(10 + (player:getEffectiveSkillLevel(SKILL_FISHING) - 10) * 0.597, 10), 50) then
player:addItem(3578, 1)
if target:getId() ~= 622 then
target:transform(4609, 1)
end
target:decay()
player:removeItem(3492, 1)
player:addSkillTries(SKILL_FISHING, 1)
if math.random(1, 100) <= math.min(math.max(10 + (player:getEffectiveSkillLevel(SKILL_FISHING) - 10) * 0.597, 10), 50) then
player:addItem(3578, 1)
if target:getId() ~= 622 then
target:transform(4609, 1)
end
target:decay()
end
end

View File

@@ -35,6 +35,18 @@ function onUse(player, item, fromPosition, target, toPosition)
end
end
if (configManager.getBoolean(configKeys.UH_TRAP)) then
local tile = Tile(toPosition)
local creature = tile:getBottomCreature()
if creature and creature:isPlayer() then
target = creature
end
else
-- monsters do not use mana also I do not know if you can use life fluid on monsters
-- if you can just want to use life fluids on monster then change isPlayer to isCreature
target = target:isPlayer() and target
end
if target:isCreature() and target:getPlayer() ~= nil then
if item:getFluidType() == FLUID_NONE then
player:sendCancelMessage("It is empty.")
@@ -68,7 +80,12 @@ function onUse(player, item, fromPosition, target, toPosition)
else
target:say("Gulp.", TALKTYPE_MONSTER_SAY)
end
item:transform(item:getId(), FLUID_NONE)
if player:getStorageValue(17742) ~= 1 then
item:transform(item:getId(), FLUID_NONE)
else
item:remove()
end
end
else
if toPosition.x == CONTAINER_POSITION then

View File

@@ -8,39 +8,69 @@ local holeSpots = {
595, 607, 609, 610, 615, 1066, 1067, 1080
}
local pools = {2886, 2887, 2888, 2889, 2890, 2891, 2895, 2896, 2897, 2898, 2899, 2900}
function onUse(player, item, fromPosition, target, toPosition)
local tile = Tile(toPosition)
if not tile then
return false
end
if not tile:getGround() then
return false
end
if table.contains(ropeSpots, tile:getGround():getId()) then
player:teleportTo(target:getPosition():moveRel(0, 1, -1))
if (configManager.getBoolean(configKeys.ROPE_SPOT_BLOCK)) then
-- Rope for 7.4 protocol.
local newPos = {x = toPosition.x, y = toPosition.y, z = toPosition.z, stackpos = 0}
local groundItem = getThingfromPos(newPos)
local blockingItem = getThingfromPos({x = toPosition.x, y = toPosition.y, z = toPosition.z, stackpos = 255})
if table.contains(ropeSpots, groundItem.itemid) then
newPos.y = newPos.y + 1
newPos.z = newPos.z - 1
if((blockingItem.itemid > 0 and not isInArray(pools, blockingItem.itemid)) or isCreature(blockingItem.uid)) then
doPlayerSendCancel(player, "You cannot use this object.")
else
doTeleportThing(player, newPos)
end
elseif table.contains(holeSpots, groundItem.itemid) then
newPos.y = newPos.y + 1
local downPos = {x = toPosition.x, y = toPosition.y, z = toPosition.z + 1, stackpos = 255}
local downItem = getThingfromPos(downPos)
if(downItem.itemid > 0) then
doTeleportThing(downItem.uid, newPos)
else
doPlayerSendCancel(player, "You cannot use this object.")
end
end
return true
elseif table.contains(holeSpots, tile:getGround():getId()) or target:getId() == 435 then
local tile = Tile(target:getPosition():moveRel(0, 0, 1))
else
local tile = Tile(toPosition)
if not tile then
return false
end
local thing = tile:getTopCreature()
if not thing then
thing = tile:getTopVisibleThing()
if not tile:getGround() then
return false
end
if thing:isCreature() then
thing:teleportTo(target:getPosition():moveRel(0, 1, 0), false)
if table.contains(ropeSpots, tile:getGround():getId()) then
player:teleportTo(target:getPosition():moveRel(0, 1, -1))
return true
elseif table.contains(holeSpots, tile:getGround():getId()) or target:getId() == 435 then
local tile = Tile(target:getPosition():moveRel(0, 0, 1))
if not tile then
return false
end
local thing = tile:getTopCreature()
if not thing then
thing = tile:getTopVisibleThing()
end
if thing:isCreature() then
thing:teleportTo(target:getPosition():moveRel(0, 1, 0), false)
return true
end
if thing:isItem() and thing:getType():isMovable() then
thing:moveTo(target:getPosition():moveRel(0, 1, 0))
return true
end
return true
end
if thing:isItem() and thing:getType():isMovable() then
thing:moveTo(target:getPosition():moveRel(0, 1, 0))
return true
end
return true
return false
end
return false
end
return true
end

View File

@@ -1,6 +1,6 @@
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
if player:getStorageValue(17582) < os.time() then
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your experience earnings have been enchanted by the Sabrehaven Gods.")
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your experience earnings have been enchanted by the Tibianus Gods.")
player:setStorageValue(17582, os.time() + 24 * 60 * 60) -- 24 hour
item:remove(1)
else

View File

@@ -0,0 +1,15 @@
local hundredPoints = 6554
local fiftyPoints = 6555
function onUse(player, item, fromPosition, target, toPosition)
if item:getId() == hundredPoints then
db.query("UPDATE znote_accounts SET points = points + 100 WHERE account_id = ".. player:getAccountId() .."")
elseif item:getId() == fiftyPoints then
db.query("UPDATE znote_accounts SET points = points + 50 WHERE account_id = ".. player:getAccountId() .."")
end
item:getPosition():sendMagicEffect(3)
item:remove()
player:save()
return true
end

View File

@@ -7,24 +7,24 @@ local statues = {
}
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
local skill = statues[item:getActionId()]
if not player:isPremium() then
player:sendCancelMessage(RETURNVALUE_YOUNEEDPREMIUMACCOUNT)
return true
end
-- local skill = statues[item:getActionId()]
-- if not player:isPremium() then
-- player:sendCancelMessage(RETURNVALUE_YOUNEEDPREMIUMACCOUNT)
-- return true
-- end
if player:isPzLocked() then
return false
end
-- if player:isPzLocked() then
-- return false
-- end
local entreePrice = 1000
if player:getBankBalance() < entreePrice then
player:sendCancelMessage("You do not have 1000 gold coins in your bank account balance to participate in offline training.")
return true
end
-- local entreePrice = 1000
-- if player:getBankBalance() < entreePrice then
-- player:sendCancelMessage("You do not have 1000 gold coins in your bank account balance to participate in offline training.")
-- return true
-- end
player:setOfflineTrainingSkill(skill)
player:setBankBalance(player:getBankBalance() - entreePrice)
player:remove()
-- player:setOfflineTrainingSkill(skill)
-- player:setBankBalance(player:getBankBalance() - entreePrice)
-- player:remove()
return true
end

View File

@@ -1,5 +1,5 @@
function onLogin(player)
if player:getStorageValue(17571) ~= 1 then
if player:getStorageValue(17571) ~= 1 and not player:isFakePlayer() then
player:setStorageValue(17571, 1)
-- Items

View File

@@ -108,13 +108,17 @@ local tasks = {
['orc'] = {taskerStorage = 17652, progressStorage = 17651, killsRequired = 50},
}
local maxPlayersInPartyShare = 2
local maxPlayersInPartyShare = 10
function onDeath(creature, corpse, lasthitkiller, mostdamagekiller, lasthitunjustified, mostdamageunjustified)
if not creature:isMonster() or creature:getMaster() then
return true
end
if mostdamagekiller == nil then
return true
end
local player = mostdamagekiller
if not mostdamagekiller:isPlayer() then
local master = mostdamagekiller:getMaster()

View File

@@ -1,3 +1,214 @@
local fakePlayers = {
{x = 32864, y = 31997, z = 7},
{x = 32864, y = 31998, z = 7},
{x = 32865, y = 31999, z = 7},
{x = 32871, y = 31999, z = 7},
{x = 32872, y = 32000, z = 7},
{x = 32825, y = 32065, z = 7},
{x = 32828, y = 32065, z = 7},
{x = 32885, y = 32050, z = 7},
{x = 32885, y = 32049, z = 7},
{x = 32823, y = 31887, z = 7},
{x = 32691, y = 31716, z = 7},
{x = 32705, y = 31787, z = 7},
{x = 32716, y = 31928, z = 7},
{x = 32880, y = 31845, z = 7},
{x = 32879, y = 31845, z = 7},
{x = 32882, y = 31840, z = 7},
{x = 32655, y = 32109, z = 8},
{x = 32665, y = 32109, z = 8},
{x = 32254, y = 32019, z = 7},
{x = 32255, y = 32020, z = 7},
{x = 32245, y = 32021, z = 7},
{x = 32238, y = 32330, z = 7},
{x = 32238, y = 32331, z = 7},
{x = 32273, y = 32396, z = 7},
{x = 32465, y = 32315, z = 7},
{x = 32225, y = 31740, z = 7},
{x = 32230, y = 31739, z = 7},
{x = 32257, y = 31838, z = 7},
{x = 32258, y = 31840, z = 7},
{x = 32258, y = 31844, z = 7},
{x = 32260, y = 31846, z = 7},
{x = 32261, y = 31848, z = 7},
{x = 32231, y = 31701, z = 7},
{x = 32516, y = 31599, z = 7},
{x = 32486, y = 31590, z = 7},
{x = 32493, y = 31590, z = 7},
{x = 32503, y = 31670, z = 7},
{x = 32579, y = 31928, z = 0},
{x = 32596, y = 31922, z = 0},
{x = 32621, y = 31921, z = 1},
{x = 32651, y = 31942, z = 7},
{x = 32531, y = 32721, z = 7},
{x = 32531, y = 32720, z = 7},
{x = 32530, y = 32720, z = 7},
{x = 32537, y = 32813, z = 7},
{x = 32537, y = 32814, z = 7},
{x = 32537, y = 32759, z = 7},
{x = 32538, y = 32759, z = 7},
{x = 33275, y = 32829, z = 7},
{x = 33238, y = 32555, z = 7},
{x = 33237, y = 32555, z = 7},
{x = 33187, y = 32343, z = 7},
{x = 33187, y = 32342, z = 7},
{x = 33152, y = 32354, z = 7},
{x = 33154, y = 32354, z = 7},
{x = 33076, y = 32345, z = 7},
{x = 32655, y = 31648, z = 10},
{x = 32656, y = 31648, z = 10},
{x = 32657, y = 31648, z = 10},
{x = 33262, y = 31866, z = 7},
{x = 33263, y = 31866, z = 7},
{x = 33244, y = 31904, z = 7},
{x = 33245, y = 31903, z = 7},
{x = 33219, y = 31926, z = 7},
{x = 33298, y = 31839, z = 7},
{x = 33298, y = 31838, z = 7},
{x = 33358, y = 31692, z = 9},
{x = 33359, y = 31692, z = 9},
{x = 33360, y = 31692, z = 9},
{x = 33362, y = 31696, z = 9},
{x = 33366, y = 31696, z = 9},
{x = 33318, y = 31728, z = 7},
{x = 33318, y = 31729, z = 7},
{x = 33273, y = 31680, z = 7},
{x = 33169, y = 31737, z = 7},
{x = 33274, y = 31791, z = 6},
{x = 33321, y = 32419, z = 7},
{x = 33318, y = 32406, z = 7},
{x = 32372, y = 32840, z = 7},
{x = 32371, y = 32839, z = 7},
{x = 32369, y = 32838, z = 7},
{x = 32347, y = 32691, z = 7},
{x = 32348, y = 32692, z = 7},
{x = 32157, y = 32783, z = 7},
{x = 32225, y = 32880, z = 7},
{x = 32386, y = 32695, z = 7},
{x = 32314, y = 32830, z = 8},
{x = 32593, y = 31885, z = 12},
{x = 32593, y = 31884, z = 12},
{x = 32586, y = 31919, z = 10},
{x = 32547, y = 31921, z = 10},
{x = 32763, y = 31941, z = 7},
{x = 32763, y = 31942, z = 7},
{x = 32700, y = 31842, z = 7},
{x = 32700, y = 31841, z = 7},
{x = 32991, y = 32377, z = 7},
{x = 32314, y = 32282, z = 7},
{x = 32659, y = 31632, z = 15},
{x = 32660, y = 31632, z = 15},
{x = 32661, y = 31632, z = 15},
{x = 32663, y = 31632, z = 15},
{x = 32661, y = 31634, z = 15},
{x = 32714, y = 31649, z = 15},
{x = 32715, y = 31649, z = 15},
{x = 32716, y = 31649, z = 15},
{x = 32717, y = 31649, z = 15},
{x = 32577, y = 31601, z = 11},
{x = 32577, y = 31602, z = 11},
{x = 32577, y = 31603, z = 11},
{x = 32577, y = 31604, z = 11},
{x = 32577, y = 31605, z = 11},
{x = 32602, y = 31611, z = 11},
{x = 32601, y = 31611, z = 11},
{x = 32600, y = 31610, z = 11},
{x = 32599, y = 31610, z = 11},
{x = 32598, y = 31609, z = 11},
{x = 32598, y = 31608, z = 11},
{x = 32604, y = 31670, z = 7},
{x = 32605, y = 31670, z = 7},
{x = 32606, y = 31670, z = 7},
{x = 32607, y = 31670, z = 7},
{x = 32608, y = 31670, z = 7},
{x = 32609, y = 31670, z = 7},
{x = 32537, y = 31772, z = 4},
{x = 32537, y = 31772, z = 3},
{x = 32382, y = 32130, z = 10},
{x = 32410, y = 32123, z = 10},
{x = 32408, y = 32123, z = 10},
{x = 32445, y = 32213, z = 8},
{x = 32445, y = 32212, z = 8},
{x = 32444, y = 32210, z = 8},
{x = 32392, y = 31805, z = 8},
{x = 32127, y = 31660, z = 8},
{x = 32127, y = 31659, z = 8},
{x = 32187, y = 31623, z = 4},
{x = 32188, y = 31623, z = 4},
{x = 32189, y = 31623, z = 4},
{x = 32189, y = 31624, z = 4},
{x = 32187, y = 31625, z = 4},
{x = 32190, y = 31656, z = 7},
{x = 32030, y = 31691, z = 7},
{x = 32030, y = 31692, z = 7},
{x = 32030, y = 31693, z = 7},
{x = 31960, y = 31583, z = 7},
{x = 31960, y = 31584, z = 7},
{x = 31961, y = 31585, z = 7},
{x = 31961, y = 31582, z = 7},
{x = 32029, y = 31536, z = 10},
{x = 32258, y = 31641, z = 7},
{x = 32316, y = 31747, z = 2},
{x = 32317, y = 31747, z = 2},
{x = 32910, y = 32085, z = 5},
{x = 33021, y = 32046, z = 5},
{x = 32978, y = 32254, z = 7},
{x = 32977, y = 32254, z = 7},
{x = 32976, y = 32254, z = 7},
{x = 32975, y = 32254, z = 7},
{x = 32974, y = 32254, z = 7},
{x = 32950, y = 32271, z = 7},
{x = 32952, y = 32270, z = 7},
{x = 32951, y = 32270, z = 7},
{x = 32953, y = 32264, z = 7},
{x = 32383, y = 32852, z = 6},
{x = 32393, y = 32838, z = 0},
{x = 32393, y = 32839, z = 0},
{x = 32393, y = 32840, z = 0},
{x = 32572, y = 31875, z = 10},
{x = 32571, y = 31875, z = 10},
{x = 32724, y = 31975, z = 6},
{x = 32801, y = 31861, z = 6},
{x = 32800, y = 31862, z = 6},
{x = 32801, y = 31862, z = 6},
{x = 32801, y = 31863, z = 6},
{x = 32800, y = 31863, z = 6},
{x = 33227, y = 32389, z = 5},
{x = 33228, y = 32389, z = 5},
{x = 33329, y = 32171, z = 5},
{x = 33330, y = 32171, z = 5},
{x = 33305, y = 31991, z = 6},
{x = 33305, y = 31992, z = 6},
{x = 33311, y = 31990, z = 6},
{x = 33312, y = 31990, z = 6},
{x = 33361, y = 32048, z = 7},
{x = 33363, y = 32047, z = 7},
{x = 33364, y = 32045, z = 7},
{x = 33359, y = 32046, z = 7},
{x = 33331, y = 32056, z = 7},
{x = 33332, y = 32055, z = 7},
{x = 33335, y = 32054, z = 7},
{x = 33334, y = 32049, z = 7},
{x = 33313, y = 31946, z = 7},
{x = 33314, y = 31882, z = 7},
{x = 33280, y = 31842, z = 8},
{x = 33226, y = 32869, z = 7},
{x = 33204, y = 31909, z = 7},
{x = 33218, y = 31924, z = 7},
{x = 33220, y = 31924, z = 7}
}
local fakePlayerOutfits = {
[1] = {136, 137, 138, 139, 140, 141, 142, 147, 148, 149, 150}, -- female outfits
[2] = {128, 129, 130, 131, 132, 133, 134, 143, 144, 145, 146} -- male outfits
}
local fakePlayerRunes = {
[1] = { id = 3189, count = 3},
[2] = { id = 3152, count = 1},
[3] = { id = 3198, count = 5}
}
function onLogin(player)
local loginStr = "Welcome to " .. configManager.getString(configKeys.SERVER_NAME) .. "!"
if player:getLastLoginSaved() <= 0 then
@@ -10,35 +221,27 @@ function onLogin(player)
loginStr = string.format("Your last visit on " .. configManager.getString(configKeys.SERVER_NAME) .. ": %s.", os.date("%a %b %d %X %Y", player:getLastLoginSaved()))
end
if not player:isPremium() then
local dayNow = tonumber(os.date("%d", os.time()))
local hourNow = tonumber(os.date("%H", os.time()))
if dayNow == 8 and hourNow == 20 then
player:addPremiumDays(5)
player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Congratulations " .. player:getName() .. " on starting your adventure at the " .. configManager.getString(configKeys.SERVER_NAME) .. "! 5 premium days have been added to your account!")
elseif dayNow == 8 then
player:addPremiumDays(2)
player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Congratulations " .. player:getName() .. " on starting your adventure at the " .. configManager.getString(configKeys.SERVER_NAME) .. "! 2 premium days have been added to your account!")
end
end
player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
-- Stamina
nextUseStaminaTime[player.uid] = 0
-- Promotion
if player:isPremium() then
if player:getVocation():getId() ~= 0 and player:getVocation():getId() < 5 and player:getStorageValue(30018) == 1 then
player:setVocation(player:getVocation():getId() + 4)
end
else
if player:getVocation():getId() ~= 0 and player:getVocation():getId() > 4 then
player:setVocation(player:getVocation():getId() - 4)
end
end
-- Outfits
if not player:isPremium() then
if player:getSex() == PLAYERSEX_FEMALE then
local outfit = player:getOutfit()
if outfit.lookType > 139 then
player:setOutfit({lookType = 136, lookHead = 78, lookBody = 106, lookLegs = 58, lookFeet = 95})
end
else
local outfit = player:getOutfit()
if outfit.lookType > 131 then
player:setOutfit({lookType = 128, lookHead = 78, lookBody = 106, lookLegs = 58, lookFeet = 95})
end
end
if player:getVocation():getId() ~= 0 and player:getVocation():getId() < 5 and player:getStorageValue(30018) == 1 then
player:setVocation(player:getVocation():getId() + 4)
end
-- Premium system
@@ -46,9 +249,69 @@ function onLogin(player)
player:setStorageValue(43434, 1)
elseif player:getStorageValue(43434) == 1 then
player:setStorageValue(43434, 0)
if player:getVocation():getId() > 0 then
player:teleportTo({x = 32369, y = 32241, z = 7})
player:setTown(Town("Thais"))
end
-- FakePlayer
if player:isFakePlayer() then
local inFightCondition = Condition(CONDITION_INFIGHT)
inFightCondition:setParameter(CONDITION_PARAM_TICKS, 2000 * 60 * 1000)
player:addCondition(inFightCondition)
player:addManaSpent(2500)
if player:getLevel() <= 17 then
if player:getVocation():getId() == 2 then
player:addExperience(math.random(2500, 11000), false)
else
player:addExperience(math.random(9000, 11000), false)
end
end
if player:getItemCount(3578) <= 0 then
local randomFakePlayerPosition = math.random(1, #fakePlayers)
player:teleportTo(fakePlayers[randomFakePlayerPosition])
Game.sendMagicEffect(fakePlayers[randomFakePlayerPosition], 11)
table.remove(fakePlayers, randomFakePlayerPosition)
local container = Game.createItem(2854, 1)
container:addItem(3578, math.random(5, 15))
if math.random(5, 15) >= 10 then
container:addItem(3483, 1)
end
if math.random(5, 15) >= 5 then
container:addItem(3003, 1)
end
player:addItemEx(container, true, CONST_SLOT_BACKPACK)
if player:getVocation():getId() == 1 or player:getVocation():getId() == 2 or player:getVocation():getId() == 3 then
local backpackCount = math.random(1, 2)
local runeCount = math.random(5, 20) * backpackCount
for i=1,backpackCount do
local bp = Game.createItem(2854, 1)
for i=1,20 do
if runeCount <= 0 then
bp:addItem(3147, 1)
else
bp:addItem(fakePlayerRunes[player:getVocation():getId()].id, fakePlayerRunes[player:getVocation():getId()].count)
runeCount = runeCount - 1
end
end
player:addItemEx(bp, true, CONST_SLOT_BACKPACK)
end
end
end
if player:getStorageValue(17740) ~= 1 then
local fakeOutfitTypes = fakePlayerOutfits[player:getSex() + 1]
player:setOutfit({
lookType = fakeOutfitTypes[math.random(#fakeOutfitTypes)],
lookHead = math.random(0, 132),
lookBody = math.random(0, 132),
lookLegs = math.random(0, 132),
lookFeet = math.random(0, 132)
})
player:setStorageValue(17740, 1)
end
end

View File

@@ -82,5 +82,4 @@ function onDeath(player, corpse, killer, mostDamageKiller, unjustified, mostDama
if warId ~= 0 then
guildwars:processKill(warId, killer, player)
end
end

View File

@@ -1,3 +1,108 @@
local monsterOfTheDay = {
[8430] = { monster = 'Crocodile' },
[8431] = { monster = 'Tarantula' },
[8432] = { monster = 'Carniphila' },
[8433] = { monster = 'Merlkin' },
[8434] = { monster = 'Kongra' },
[8435] = { monster = 'Sibang' },
[8436] = { monster = 'Thornback Tortoise' },
[8437] = { monster = 'Gargoyle' },
[8438] = { monster = 'Quara Constrictor Scout' },
[8439] = { monster = 'Quara Hydromancer Scout' },
[8440] = { monster = 'Quara Mantassin Scout' },
[8441] = { monster = 'Quara Pincher Scout' },
[8442] = { monster = 'Quara Predator Scout' },
[8443] = { monster = 'Ancient Scarab' },
[8444] = { monster = 'Wyvern' },
[8445] = { monster = 'Bonebeast' },
[8446] = { monster = 'Dragon' },
[8447] = { monster = 'Quara Constrictor' },
[8448] = { monster = 'Quara Hydromancer' },
[8449] = { monster = 'Quara Mantassin' },
[8450] = { monster = 'Quara Pincher' },
[8451] = { monster = 'Quara Predator' },
[8452] = { monster = 'Giant Spider' },
[8453] = { monster = 'Banshee' },
[8454] = { monster = 'Lich' },
[8455] = { monster = 'Acolyte of The Cult' },
[8456] = { monster = 'Adept of The Cult' },
[8457] = { monster = 'Enlightened of The Cult' },
[8458] = { monster = 'Novice of The Cult' },
[8459] = { monster = 'Hydra' },
[8460] = { monster = 'Serpent Spawn' },
[8461] = { monster = 'Behemoth' },
[8462] = { monster = 'Dragon Lord' },
[8463] = { monster = 'Hand of Cursed Fate' },
[8464] = { monster = 'Juggernaut' },
[8465] = { monster = 'Frost Troll' },
[8466] = { monster = 'Swamp Troll' },
[8467] = { monster = 'Rat' },
[8468] = { monster = 'Cave Rat' },
[8469] = { monster = 'Wolf' },
[8470] = { monster = 'Winter Wolf' },
[8471] = { monster = 'Wasp' },
[8472] = { monster = 'Larva' },
[8473] = { monster = 'Dwarf' },
[8474] = { monster = 'Skeleton' },
[8475] = { monster = 'Ghoul' },
[8476] = { monster = 'Elf' },
[8477] = { monster = 'Elf Scout' },
[8478] = { monster = 'Elf Arcanist' },
[8479] = { monster = 'Bug' },
[8480] = { monster = 'Smuggler' },
[8481] = { monster = 'Wild Warrior' },
[8482] = { monster = 'Bandit' },
[8483] = { monster = 'Hyaena' },
[8484] = { monster = 'Lion' },
[8485] = { monster = 'Bear' },
[8486] = { monster = 'Slime' },
[8487] = { monster = 'Beholder' },
[8488] = { monster = 'Elder Beholder' },
[8489] = { monster = 'Green Djinn' },
[8490] = { monster = 'Blue Djinn' },
[8491] = { monster = 'Marid' },
[8492] = { monster = 'Efreet' },
[8493] = { monster = 'Pirate Skeleton' },
[8494] = { monster = 'Pirate Marauder' },
[8495] = { monster = 'Pirate Cutthroat' },
[8496] = { monster = 'Pirate Ghost' },
[8497] = { monster = 'Pirate Buccaneer' },
[8498] = { monster = 'Pirate Corsair' },
[8499] = { monster = 'Orc Spearman' },
[8500] = { monster = 'Orc Shaman' },
[8501] = { monster = 'Orc Rider' },
[8502] = { monster = 'Orc Warrior' },
[8503] = { monster = 'Orc Berserker' },
[8504] = { monster = 'Minotaur Archer' },
[8505] = { monster = 'Minotaur Guard' },
[8506] = { monster = 'Minotaur Mage' },
[8507] = { monster = 'Lizard Templar' },
[8508] = { monster = 'Lizard Sentinel' },
[8509] = { monster = 'Lizard Snakecharmer' },
[8510] = { monster = 'Dwarf Soldier' },
[8511] = { monster = 'Dwarf Guard' },
[8512] = { monster = 'Dwarf Geomancer' },
[8513] = { monster = 'Ghost' },
[8514] = { monster = 'Demon Skeleton' },
[8515] = { monster = 'Vampire' },
[8516] = { monster = 'Orc Leader' },
[8517] = { monster = 'Orc Warlord' },
[8518] = { monster = 'Hero' },
[8519] = { monster = 'Necromancer' },
[8520] = { monster = 'Priestess' },
[8521] = { monster = 'Nightmare' },
[8522] = { monster = 'Warlock' },
[8523] = { monster = 'Demon' },
[8524] = { monster = 'Troll' },
[8525] = { monster = 'Goblin' },
[8526] = { monster = 'Rotworm' },
[8527] = { monster = 'Carrion Worm' },
[8528] = { monster = 'Cyclops' },
[8529] = { monster = 'Amazon' },
[8530] = { monster = 'Minotaur' },
[8531] = { monster = 'Orc' }
}
local trainingStatues = {17724, 17725, 17726, 17727, 17728}
function Player:onLook(thing, position, distance)
@@ -230,6 +335,18 @@ function Player:onGainExperience(source, exp, rawExp)
exp = exp * (1 + getGlobalStorageValue(17585) / 100)
end
if source:isMonster() and not source:getMaster() then
if getGlobalStorageValue(8420) > 0 then
if source:getName():lower() == monsterOfTheDay[getGlobalStorageValue(8420)].monster:lower() then
exp = exp * (1 + getGlobalStorageValue(8421) / 100)
end
end
end
if self:isPremium() then
exp = exp * (1 + 10 / 100)
end
return exp
end

View File

@@ -4,4 +4,5 @@
<globalevent type="record" name="PlayerRecord" script="record.lua"/>
<globalevent name="Server Save" time="07:55:00" script="serversave.lua" />
<globalevent name="Rookgaard Book" interval="5000" script="rookgaard_book.lua"/>
<globalevent name="PowerGamers" interval="60000" script="powergamers.lua"/>
</globalevents>

View File

@@ -0,0 +1,30 @@
local function getEternalStorage(key, parser)
local value = result.getDataString(db.storeQuery("SELECT `value` FROM `znote_global_storage` WHERE `key` = ".. key .. ";"), "value")
if not value then
if parser then
return false
else
return -1
end
end
return tonumber(value) or value
end
local function setEternalStorage(key, value)
if getEternalStorage(key, true) then
db.query("UPDATE `znote_global_storage` SET `value` = '".. value .. "' WHERE `key` = ".. key .. ";")
else
db.query("INSERT INTO `znote_global_storage` (`key`, `value`) VALUES (".. key ..", ".. value ..");")
end
return true
end
function onThink(interval, lastExecution, thinkInterval)
if tonumber(os.date("%d")) ~= getEternalStorage(23856) then
setEternalStorage(23856, (tonumber(os.date("%d"))))
db.query("UPDATE `znote_players` SET `onlinetime7`=`onlinetime6`, `onlinetime6`=`onlinetime5`, `onlinetime5`=`onlinetime4`, `onlinetime4`=`onlinetime3`, `onlinetime3`=`onlinetime2`, `onlinetime2`=`onlinetime1`, `onlinetime1`=`onlinetimetoday`, `onlinetimetoday`=0;")
db.query("UPDATE `znote_players` `z` INNER JOIN `players` `p` ON `p`.`id`=`z`.`player_id` SET `z`.`exphist7`=`z`.`exphist6`, `z`.`exphist6`=`z`.`exphist5`, `z`.`exphist5`=`z`.`exphist4`, `z`.`exphist4`=`z`.`exphist3`, `z`.`exphist3`=`z`.`exphist2`, `z`.`exphist2`=`z`.`exphist1`, `z`.`exphist1`=`p`.`experience`-`z`.`exphist_lastexp`, `z`.`exphist_lastexp`=`p`.`experience`;")
end
db.query("UPDATE `znote_players` SET `onlinetimetoday` = `onlinetimetoday` + 60, `onlinetimeall` = `onlinetimeall` + 60 WHERE `player_id` IN (SELECT `player_id` FROM `players_online` WHERE `players_online`.`player_id` = `znote_players`.`player_id`)")
return true
end

View File

@@ -1,3 +1,108 @@
local monsterOfTheDay = {
{ id = 8430, monster = 'Crocodile' },
{ id = 8431, monster = 'Tarantula' },
{ id = 8432, monster = 'Carniphila' },
{ id = 8433, monster = 'Merlkin' },
{ id = 8434, monster = 'Kongra' },
{ id = 8435, monster = 'Sibang' },
{ id = 8436, monster = 'Thornback Tortoise' },
{ id = 8437, monster = 'Gargoyle' },
{ id = 8438, monster = 'Quara Constrictor Scout' },
{ id = 8439, monster = 'Quara Hydromancer Scout' },
{ id = 8440, monster = 'Quara Mantassin Scout' },
{ id = 8441, monster = 'Quara Pincher Scout' },
{ id = 8442, monster = 'Quara Predator Scout' },
{ id = 8443, monster = 'Ancient Scarab' },
{ id = 8444, monster = 'Wyvern' },
{ id = 8445, monster = 'Bonebeast' },
{ id = 8446, monster = 'Dragon' },
{ id = 8447, monster = 'Quara Constrictor' },
{ id = 8448, monster = 'Quara Hydromancer' },
{ id = 8449, monster = 'Quara Mantassin' },
{ id = 8450, monster = 'Quara Pincher' },
{ id = 8451, monster = 'Quara Predator' },
{ id = 8452, monster = 'Giant Spider' },
{ id = 8453, monster = 'Banshee' },
{ id = 8454, monster = 'Lich' },
{ id = 8455, monster = 'Acolyte of The Cult' },
{ id = 8456, monster = 'Adept of The Cult' },
{ id = 8457, monster = 'Enlightened of The Cult' },
{ id = 8458, monster = 'Novice of The Cult' },
{ id = 8459, monster = 'Hydra' },
{ id = 8460, monster = 'Serpent Spawn' },
{ id = 8461, monster = 'Behemoth' },
{ id = 8462, monster = 'Dragon Lord' },
{ id = 8463, monster = 'Hand of Cursed Fate' },
{ id = 8464, monster = 'Juggernaut' },
{ id = 8465, monster = 'Frost Troll' },
{ id = 8466, monster = 'Swamp Troll' },
{ id = 8467, monster = 'Rat' },
{ id = 8468, monster = 'Cave Rat' },
{ id = 8469, monster = 'Wolf' },
{ id = 8470, monster = 'Winter Wolf' },
{ id = 8471, monster = 'Wasp' },
{ id = 8472, monster = 'Larva' },
{ id = 8473, monster = 'Dwarf' },
{ id = 8474, monster = 'Skeleton' },
{ id = 8475, monster = 'Ghoul' },
{ id = 8476, monster = 'Elf' },
{ id = 8477, monster = 'Elf Scout' },
{ id = 8478, monster = 'Elf Arcanist' },
{ id = 8479, monster = 'Bug' },
{ id = 8480, monster = 'Smuggler' },
{ id = 8481, monster = 'Wild Warrior' },
{ id = 8482, monster = 'Bandit' },
{ id = 8483, monster = 'Hyaena' },
{ id = 8484, monster = 'Lion' },
{ id = 8485, monster = 'Bear' },
{ id = 8486, monster = 'Slime' },
{ id = 8487, monster = 'Beholder' },
{ id = 8488, monster = 'Elder Beholder' },
{ id = 8489, monster = 'Green Djinn' },
{ id = 8490, monster = 'Blue Djinn' },
{ id = 8491, monster = 'Marid' },
{ id = 8492, monster = 'Efreet' },
{ id = 8493, monster = 'Pirate Skeleton' },
{ id = 8494, monster = 'Pirate Marauder' },
{ id = 8495, monster = 'Pirate Cutthroat' },
{ id = 8496, monster = 'Pirate Ghost' },
{ id = 8497, monster = 'Pirate Buccaneer' },
{ id = 8498, monster = 'Pirate Corsair' },
{ id = 8499, monster = 'Orc Spearman' },
{ id = 8500, monster = 'Orc Shaman' },
{ id = 8501, monster = 'Orc Rider' },
{ id = 8502, monster = 'Orc Warrior' },
{ id = 8503, monster = 'Orc Berserker' },
{ id = 8504, monster = 'Minotaur Archer' },
{ id = 8505, monster = 'Minotaur Guard' },
{ id = 8506, monster = 'Minotaur Mage' },
{ id = 8507, monster = 'Lizard Templar' },
{ id = 8508, monster = 'Lizard Sentinel' },
{ id = 8509, monster = 'Lizard Snakecharmer' },
{ id = 8510, monster = 'Dwarf Soldier' },
{ id = 8511, monster = 'Dwarf Guard' },
{ id = 8512, monster = 'Dwarf Geomancer' },
{ id = 8513, monster = 'Ghost' },
{ id = 8514, monster = 'Demon Skeleton' },
{ id = 8515, monster = 'Vampire' },
{ id = 8516, monster = 'Orc Leader' },
{ id = 8517, monster = 'Orc Warlord' },
{ id = 8518, monster = 'Hero' },
{ id = 8519, monster = 'Necromancer' },
{ id = 8520, monster = 'Priestess' },
{ id = 8521, monster = 'Nightmare' },
{ id = 8522, monster = 'Warlock' },
{ id = 8523, monster = 'Demon' },
{ id = 8524, monster = 'Troll' },
{ id = 8525, monster = 'Goblin' },
{ id = 8526, monster = 'Rotworm' },
{ id = 8527, monster = 'Carrion Worm' },
{ id = 8528, monster = 'Cyclops' },
{ id = 8529, monster = 'Amazon' },
{ id = 8530, monster = 'Minotaur' },
{ id = 8531, monster = 'Orc' }
}
local function spawnRashid()
local rashidSpawns = {
['Monday'] = Position(32349, 32231, 6),
@@ -91,5 +196,8 @@ function onStartup()
end
spawnRashid()
--addEvent(function () Game.setGameState(GAME_STATE_CLOSED) end, 5000)
setGlobalStorageValue(17657, 0) -- reset POI levers
setGlobalStorageValue(8420, monsterOfTheDay[math.random(1, #monsterOfTheDay)].id)
setGlobalStorageValue(8421, math.random(10, 25))
end

View File

@@ -26079,7 +26079,7 @@ Flags = {Chest,Unpass,Unmove,Height,Disguise}
Attributes = {DisguiseTarget=2481}
TypeID = 5776
Name = "a Sabrehaven talon"
Name = "a Tibianus talon"
Description = "Rumours say that the Gods enchanted these talons for the greatest good, or the greatest evil achievements"
Flags = {Cumulative,Take,Disguise}
Attributes = {DisguiseTarget=3034,Weight=20}

View File

@@ -1748,51 +1748,51 @@ Attributes = {Waypoints=100}
TypeID = 439
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 440
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 441
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 442
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 443
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 444
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 445
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 446
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 447
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 448
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 449
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 450
Name = "wooden floor"
Flags = {Unpass,Unmove,Unlay}
Flags = {Top,Unpass,Unmove,Unlay}
TypeID = 451
Name = "stairs"
@@ -10135,17 +10135,17 @@ Flags = {Bottom,Unpass,Unmove,Height}
TypeID = 2314
Name = "a big table"
Flags = {Destroy,Height,Avoid}
Flags = {Destroy,Height,Avoid,Unpass}
Attributes = {DestroyTarget=3138}
TypeID = 2315
Name = "a square table"
Flags = {Destroy,Height,Avoid}
Flags = {Destroy,Height,Avoid,Unpass}
Attributes = {DestroyTarget=3138}
TypeID = 2316
Name = "a small round table"
Flags = {Destroy,Height,Avoid}
Flags = {Destroy,Height,Avoid,Unpass}
Attributes = {DestroyTarget=3138}
TypeID = 2317
@@ -10158,7 +10158,7 @@ Flags = {Bottom,Unpass,Unmove,Height}
TypeID = 2319
Name = "a small table"
Flags = {Destroy,Height,Avoid}
Flags = {Destroy,Height,Avoid,Unpass}
Attributes = {DestroyTarget=3140}
TypeID = 2320
@@ -10267,42 +10267,42 @@ Flags = {Bottom,Unpass,Unmove,Height}
TypeID = 2346
Name = "a carved stone table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2347,DestroyTarget=3141}
TypeID = 2347
Name = "a carved stone table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2346,DestroyTarget=3141}
TypeID = 2348
Name = "a tusk table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2349,DestroyTarget=3137}
TypeID = 2349
Name = "a tusk table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2348,DestroyTarget=3137}
TypeID = 2350
Name = "a bamboo table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2351,DestroyTarget=3137}
TypeID = 2351
Name = "a bamboo table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2350,DestroyTarget=3137}
TypeID = 2352
Name = "a thick trunk"
Flags = {Destroy,Height}
Flags = {Destroy,Height,Unpass}
Attributes = {DestroyTarget=3136}
TypeID = 2353
Name = "an ornamented stone table"
Flags = {Rotate,Destroy,Height}
Flags = {Rotate,Destroy,Height,Unpass}
Attributes = {RotateTarget=2346,DestroyTarget=3141}
TypeID = 2354
@@ -10664,22 +10664,22 @@ Attributes = {Capacity=6}
TypeID = 2431
Name = "drawers"
Flags = {Container,Rotate,Destroy,Height,Avoid}
Flags = {Container,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=10,RotateTarget=2434,DestroyTarget=3136}
TypeID = 2432
Name = "drawers"
Flags = {Container,Rotate,Destroy,Height,Avoid}
Flags = {Container,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=10,RotateTarget=2431,DestroyTarget=3136}
TypeID = 2433
Name = "drawers"
Flags = {Container,Rotate,Destroy,Height,Avoid}
Flags = {Container,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=10,RotateTarget=2432,DestroyTarget=3136}
TypeID = 2434
Name = "drawers"
Flags = {Container,Rotate,Destroy,Height,Avoid}
Flags = {Container,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=10,RotateTarget=2433,DestroyTarget=3136}
TypeID = 2435
@@ -10869,7 +10869,7 @@ Attributes = {Capacity=15,Weight=8000,DestroyTarget=3135}
TypeID = 2472
Name = "a chest"
Flags = {Container,Take,Rotate,Destroy,Height,Avoid}
Flags = {Container,Take,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=15,Weight=12000,RotateTarget=2482,DestroyTarget=3137}
TypeID = 2473
@@ -10905,37 +10905,37 @@ Attributes = {DisguiseTarget=2472}
TypeID = 2480
Name = "a chest"
Flags = {Container,Take,Rotate,Destroy,Height,Avoid}
Flags = {Container,Take,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=15,Weight=12000,RotateTarget=2481,DestroyTarget=3137}
TypeID = 2481
Name = "a chest"
Flags = {Container,Take,Rotate,Destroy,Height,Avoid}
Flags = {Container,Take,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=15,Weight=12000,RotateTarget=2472,DestroyTarget=3137}
TypeID = 2482
Name = "a chest"
Flags = {Container,Take,Rotate,Destroy,Height,Avoid}
Flags = {Container,Take,Rotate,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=15,Weight=12000,RotateTarget=2480,DestroyTarget=3137}
TypeID = 2483
Name = "a large trunk"
Flags = {Container,Rotate,Destroy,Height}
Flags = {Container,Rotate,Destroy,Height,Unpass}
Attributes = {Capacity=18,RotateTarget=2486,DestroyTarget=3140}
TypeID = 2484
Name = "a large trunk"
Flags = {Container,Unpass,Rotate,Destroy,Height}
Flags = {Container,Unpass,Rotate,Destroy,Height,Unpass}
Attributes = {Capacity=18,RotateTarget=2485,DestroyTarget=3140}
TypeID = 2485
Name = "a large trunk"
Flags = {Container,Unpass,Rotate,Destroy,Height}
Flags = {Container,Unpass,Rotate,Destroy,Height,Unpass}
Attributes = {Capacity=18,RotateTarget=2483,DestroyTarget=3140}
TypeID = 2486
Name = "a large trunk"
Flags = {Container,Unpass,Rotate,Destroy,Height}
Flags = {Container,Unpass,Rotate,Destroy,Height,Unpass}
Attributes = {Capacity=18,RotateTarget=2484,DestroyTarget=3140}
TypeID = 2487
@@ -11098,7 +11098,7 @@ Flags = {Unmove}
TypeID = 2519
Name = "a barrel"
Flags = {Container,Destroy,Height,Avoid}
Flags = {Container,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=25,DestroyTarget=3138}
TypeID = 2520
@@ -11118,7 +11118,7 @@ Attributes = {FluidSource=WINE}
TypeID = 2523
Name = "a barrel"
Flags = {Container,Destroy,Height,Avoid}
Flags = {Container,Destroy,Height,Avoid,Unpass}
Attributes = {Capacity=25,DestroyTarget=3135}
TypeID = 2524
@@ -13838,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=6000,HealthGain=2,ManaTicks=6000,ManaGain=8,ExpireTarget=0,TotalExpireTime=1200,DeEquipTarget=3052}
Attributes = {Weight=80,SlotType=RING,HealthTicks=3000,HealthGain=1,ManaTicks=3000,ManaGain=1,ExpireTarget=0,TotalExpireTime=1200,DeEquipTarget=3052}
TypeID = 3090
Name = "a time ring"
@@ -13893,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=6000,HealthGain=6,ManaTicks=6000,ManaGain=24,ExpireTarget=0,TotalExpireTime=450,DeEquipTarget=3098}
Attributes = {Weight=80,SlotType=RING,HealthTicks=2000,HealthGain=1,ManaTicks=2000,ManaGain=4,ExpireTarget=0,TotalExpireTime=450,DeEquipTarget=3098}
TypeID = 3101
Name = "a screaming spellbook"
@@ -14802,7 +14802,7 @@ Attributes = {Weight=3500,WeaponType=AXE,Attack=15,Defense=8}
TypeID = 3277
Name = "a spear"
Flags = {Cumulative,Take,Distance}
Attributes = {Weight=2000,Range=7,Attack=25,Defense=0,MissileEffect=1,Fragility=3}
Attributes = {Weight=2000,Range=7,Attack=25,Defense=0,MissileEffect=1}
TypeID = 3278
Name = "a magic longsword"
@@ -16169,7 +16169,7 @@ Attributes = {Weight=500}
TypeID = 3549
Name = "soft boots"
Flags = {Take,Expire,ShowDetail}
Attributes = {Weight=800,DeEquipTarget=6529,SlotType=FEET,ExpireTarget=6530,TotalExpireTime=14400,HealthGain=1,HealthTicks=2000,ManaGain=2,ManaTicks=1000}
Attributes = {Weight=800,DeEquipTarget=6529,SlotType=FEET,ExpireTarget=6530,TotalExpireTime=14400,HealthGain=1,HealthTicks=2000,ManaGain=1,ManaTicks=2000}
TypeID = 3550
Name = "patched boots"
@@ -16179,7 +16179,7 @@ Attributes = {Weight=1000,SlotType=FEET,ArmorValue=2}
TypeID = 3551
Name = "sandals"
Flags = {Take}
Attributes = {Weight=600,SlotType=FEET}
Attributes = {Weight=600,SlotType=FEET,SpeedBoost=5}
TypeID = 3552
Name = "leather boots"
@@ -25411,122 +25411,122 @@ Attributes = {Weight=6000,ExpireTarget=0,TotalExpireTime=600}
TypeID = 5630
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5631
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5632
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5633
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5634
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5635
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5636
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5637
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5638
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5639
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5640
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5641
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5642
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5643
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5644
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5645
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5646
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5647
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5648
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5649
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5650
Name = "a dirt wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5651
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5652
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5653
Name = "a stone wall"
Flags = {Unpass,Unmove,Unthrow,Unlay}
Flags = {Bottom,Unpass,Unmove,Unthrow,Unlay}
Attributes = {Waypoints=0}
TypeID = 5654
@@ -26079,7 +26079,7 @@ Flags = {Chest,Unpass,Unmove,Height,Disguise}
Attributes = {DisguiseTarget=2481}
TypeID = 5776
Name = "a Sabrehaven talon"
Name = "a Tibianus talon"
Description = "Rumours say that the Gods enchanted these talons for the greatest good, or the greatest evil achievements"
Flags = {Cumulative,Take,Disguise}
Attributes = {DisguiseTarget=3034,Weight=20}
@@ -26947,7 +26947,7 @@ Attributes = {Weight=250}
TypeID = 5952
Name = "a poem scroll"
Description = "It contains a love poem, written by an unknown elven poet."
Description = "It contains a love poem, written by an unknown elven poet"
Flags = {Take}
Attributes = {Weight=120}
@@ -29752,10 +29752,16 @@ Flags = {MultiUse,Take,Weapon}
Attributes = {Weight=5800,SlotType=TWOHANDED,WeaponType=AXE,Attack=49,Defense=15}
TypeID = 6554
Name = "" # this is nothing in client
Name = "a 100 points scroll"
Description = "It grants you 100 shop points"
Flags = {Take}
Attributes = {Weight=120}
TypeID = 6555
Name = "" # this is nothing in client
Name = "a 50 points scroll"
Description = "It grants you 50 shop points"
Flags = {Take}
Attributes = {Weight=120}
TypeID = 6556
Name = "a tic-tac-toe token"

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="amazon" nameDescription="an amazon" race="blood" experience="60" speed="46" manacost="390">
<monster name="Amazon" nameDescription="an amazon" race="blood" experience="60" speed="46" manacost="390">
<health now="110" max="110" />
<look type="137" head="113" body="120" legs="95" feet="115" corpse="6081" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="ancient scarab" nameDescription="an ancient scarab" race="venom" experience="720" speed="69" manacost="0">
<monster name="Ancient Scarab" nameDescription="an ancient scarab" race="venom" experience="720" speed="69" manacost="0">
<health now="1000" max="1000" />
<look type="79" head="0" body="0" legs="0" feet="0" corpse="6021" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="assassin" nameDescription="an assassin" race="blood" experience="105" speed="72" manacost="450">
<monster name="Assassin" nameDescription="an assassin" race="blood" experience="105" speed="72" manacost="450">
<health now="175" max="175" />
<look type="152" head="95" body="95" legs="95" feet="95" addons="3" corpse="6080" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="badger" nameDescription="a badger" race="blood" experience="5" speed="30" manacost="200">
<monster name="Badger" nameDescription="a badger" race="blood" experience="5" speed="30" manacost="200">
<health now="23" max="23" />
<look type="105" head="0" body="0" legs="0" feet="0" corpse="6034" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="bandit" nameDescription="a bandit" race="blood" experience="65" speed="50" manacost="450">
<monster name="Bandit" nameDescription="a bandit" race="blood" experience="65" speed="50" manacost="450">
<health now="245" max="245" />
<look type="129" head="58" body="40" legs="24" feet="95" corpse="6080" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="banshee" nameDescription="a banshee" race="undead" experience="900" speed="70" manacost="0">
<monster name="Banshee" nameDescription="a banshee" race="undead" experience="900" speed="70" manacost="0">
<health now="1000" max="1000" />
<look type="78" head="0" body="0" legs="0" feet="0" corpse="6019" />
<targetchange interval="1000" chance="3" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="bat" nameDescription="a bat" race="blood" experience="10" speed="60" manacost="250">
<monster name="Bat" nameDescription="a bat" race="blood" experience="10" speed="60" manacost="250">
<health now="30" max="30" />
<look type="122" head="0" body="0" legs="0" feet="0" corpse="6053" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="bear" nameDescription="a bear" race="blood" experience="23" speed="38" manacost="300">
<monster name="Bear" nameDescription="a bear" race="blood" experience="23" speed="38" manacost="300">
<health now="80" max="80" />
<look type="16" head="0" body="0" legs="0" feet="0" corpse="5975" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="behemoth" nameDescription="a behemoth" race="blood" experience="2500" speed="130" manacost="0">
<monster name="Behemoth" nameDescription="a behemoth" race="blood" experience="2500" speed="130" manacost="0">
<health now="4000" max="4000" />
<look type="55" head="0" body="0" legs="0" feet="0" corpse="5999" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="beholder" nameDescription="a beholder" race="blood" experience="170" speed="35" manacost="0">
<monster name="Beholder" nameDescription="a beholder" race="blood" experience="170" speed="35" manacost="0">
<health now="260" max="260" />
<look type="17" head="0" body="0" legs="0" feet="0" corpse="5992" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="black knight" nameDescription="a black knight" race="blood" experience="1600" speed="155" manacost="0">
<monster name="Black Knight" nameDescription="a black knight" race="blood" experience="1600" speed="155" manacost="0">
<health now="1800" max="1800" />
<look type="131" head="95" body="95" legs="95" feet="95" addons="3" corpse="6080" />
<targetchange interval="1000" chance="3" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="black sheep" nameDescription="a black sheep" race="blood" experience="0" speed="18" manacost="250">
<monster name="Black Sheep" nameDescription="a black sheep" race="blood" experience="0" speed="18" manacost="250">
<health now="20" max="20" />
<look type="13" head="0" body="0" legs="0" feet="0" corpse="5994" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="blue djinn" nameDescription="a blue djinn" race="blood" experience="190" speed="70" manacost="0">
<monster name="Blue Djinn" nameDescription="a blue djinn" race="blood" experience="190" speed="70" manacost="0">
<health now="330" max="330" />
<look type="80" head="0" body="0" legs="0" feet="0" corpse="6020" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="bonebeast" nameDescription="a bonebeast" race="undead" experience="580" speed="69" manacost="0">
<monster name="Bonebeast" nameDescription="a bonebeast" race="undead" experience="580" speed="69" manacost="0">
<health now="515" max="515" />
<look type="101" head="0" body="0" legs="0" feet="0" corpse="6030" />
<targetchange interval="1000" chance="20" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="bug" nameDescription="a bug" race="venom" experience="18" speed="40" manacost="250">
<monster name="Bug" nameDescription="a bug" race="venom" experience="18" speed="40" manacost="250">
<health now="29" max="29" />
<look type="45" head="0" body="0" legs="0" feet="0" corpse="5990" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="blue butterfly" nameDescription="a blue butterfly" race="venom" experience="0" speed="120" manacost="0">
<monster name="Blue Butterfly" nameDescription="a blue butterfly" race="venom" experience="0" speed="120" manacost="0">
<health now="2" max="2" />
<look type="227" head="0" body="0" legs="0" feet="0" corpse="4993" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="purple butterfly" nameDescription="a purple butterfly" race="venom" experience="0" speed="120" manacost="0">
<monster name="Purple Butterfly" nameDescription="a purple butterfly" race="venom" experience="0" speed="120" manacost="0">
<health now="2" max="2" />
<look type="213" head="0" body="0" legs="0" feet="0" corpse="4992" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="red butterfly" nameDescription="a red butterfly" race="venom" experience="0" speed="120" manacost="0">
<monster name="Red Butterfly" nameDescription="a red butterfly" race="venom" experience="0" speed="120" manacost="0">
<health now="2" max="2" />
<look type="228" head="0" body="0" legs="0" feet="0" corpse="4991" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="yellow butterfly" nameDescription="a yellow butterfly" race="venom" experience="0" speed="180" manacost="0">
<monster name="Yellow Butterfly" nameDescription="a yellow butterfly" race="venom" experience="0" speed="180" manacost="0">
<health now="2" max="2" />
<look type="10" head="0" body="0" legs="0" feet="0" corpse="5013" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="carniphila" nameDescription="a carniphila" race="venom" experience="150" speed="15" manacost="490">
<monster name="Carniphila" nameDescription="a carniphila" race="venom" experience="150" speed="15" manacost="490">
<health now="255" max="255" />
<look type="120" head="0" body="0" legs="0" feet="0" corpse="6047" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="cave rat" nameDescription="a cave rat" race="blood" experience="10" speed="35" manacost="250">
<monster name="Cave Rat" nameDescription="a cave rat" race="blood" experience="10" speed="35" manacost="250">
<health now="30" max="30" />
<look type="56" head="0" body="0" legs="0" feet="0" corpse="5964" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="centipede" nameDescription="a centipede" race="blood" experience="30" speed="43" manacost="335">
<monster name="Centipede" nameDescription="a centipede" race="blood" experience="30" speed="43" manacost="335">
<health now="70" max="70" />
<look type="124" head="0" body="0" legs="0" feet="0" corpse="6050" />
<targetchange interval="1000" chance="6" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="chicken" nameDescription="a chicken" race="blood" experience="0" speed="24" manacost="220">
<monster name="Chicken" nameDescription="a chicken" race="blood" experience="0" speed="24" manacost="220">
<health now="15" max="15" />
<look type="111" head="0" body="0" legs="0" feet="0" corpse="6042" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="cobra" nameDescription="a cobra" race="blood" experience="30" speed="20" manacost="275">
<monster name="Cobra" nameDescription="a cobra" race="blood" experience="30" speed="20" manacost="275">
<health now="65" max="65" />
<look type="81" head="0" body="0" legs="0" feet="0" corpse="4188" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="crab" nameDescription="a crab" race="blood" experience="30" speed="60" manacost="305">
<monster name="Crab" nameDescription="a crab" race="blood" experience="30" speed="60" manacost="305">
<health now="55" max="55" />
<look type="112" head="0" body="0" legs="0" feet="0" corpse="6039" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="crocodile" nameDescription="a crocodile" race="blood" experience="40" speed="38" manacost="350">
<monster name="Crocodile" nameDescription="a crocodile" race="blood" experience="40" speed="38" manacost="350">
<health now="105" max="105" />
<look type="119" head="0" body="0" legs="0" feet="0" corpse="6046" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="crypt shambler" nameDescription="a crypt shambler" race="undead" experience="195" speed="30" manacost="580">
<monster name="Crypt Shambler" nameDescription="a crypt shambler" race="undead" experience="195" speed="30" manacost="580">
<health now="330" max="330" />
<look type="100" head="0" body="0" legs="0" feet="0" corpse="6029" />
<targetchange interval="1000" chance="4" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="cyclops" nameDescription="a cyclops" race="blood" experience="150" speed="55" manacost="490">
<monster name="Cyclops" nameDescription="a cyclops" race="blood" experience="150" speed="55" manacost="490">
<health now="260" max="260" />
<look type="22" head="0" body="0" legs="0" feet="0" corpse="5962" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dark monk" nameDescription="a dark monk" race="blood" experience="145" speed="75" manacost="480">
<monster name="Dark Monk" nameDescription="a dark monk" race="blood" experience="145" speed="75" manacost="480">
<health now="190" max="190" />
<look type="225" head="0" body="0" legs="0" feet="0" corpse="6080" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="deathslicer" nameDescription="a deathslicer" race="undead" experience="0" speed="199" manacost="0">
<monster name="Deathslicer" nameDescription="a deathslicer" race="undead" experience="0" speed="199" manacost="0">
<health now="8200" max="8200" />
<look type="102" head="0" body="0" legs="0" feet="0" corpse="3138" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="deer" nameDescription="a deer" race="blood" experience="0" speed="58" manacost="260">
<monster name="Deer" nameDescription="a deer" race="blood" experience="0" speed="58" manacost="260">
<health now="25" max="25" />
<look type="31" head="0" body="0" legs="0" feet="0" corpse="5970" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="demon" nameDescription="a demon" race="fire" experience="6000" speed="80" manacost="0">
<monster name="Demon" nameDescription="a demon" race="fire" experience="6000" speed="80" manacost="0">
<health now="8200" max="8200" />
<look type="35" head="0" body="0" legs="0" feet="0" corpse="5995" />
<targetchange interval="1000" chance="10" />
@@ -79,7 +79,7 @@
<item id="3049" countmax="1" chance="14" /> <!-- a stealth ring -->
<item id="3034" countmax="1" chance="35" /> <!-- a talon -->
<item id="5954" countmax="1" chance="100" /> <!-- a demon horn -->
<item id="5776" countmax="1" chance="1" /> <!-- a Sabrehaven talon -->
<item id="5776" countmax="1" chance="1" /> <!-- a Tibianus talon -->
</loot>
<script>
<event name="KillingInTheNameOf" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="demon skeleton" nameDescription="a demon skeleton" race="undead" experience="240" speed="50" manacost="620">
<monster name="Demon Skeleton" nameDescription="a demon skeleton" race="undead" experience="240" speed="50" manacost="620">
<health now="400" max="400" />
<look type="37" head="0" body="0" legs="0" feet="0" corpse="5963" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dog" nameDescription="a dog" race="blood" experience="0" speed="22" manacost="220">
<monster name="Dog" nameDescription="a dog" race="blood" experience="0" speed="22" manacost="220">
<health now="20" max="20" />
<look type="32" head="0" body="0" legs="0" feet="0" corpse="5971" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dragon" nameDescription="a dragon" race="blood" experience="700" speed="45" manacost="0">
<monster name="Dragon" nameDescription="a dragon" race="blood" experience="700" speed="45" manacost="0">
<health now="1000" max="1000" />
<look type="34" head="0" body="0" legs="0" feet="0" corpse="5973" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dragon lord" nameDescription="a dragon lord" race="blood" experience="2100" speed="60" manacost="0">
<monster name="Dragon Lord" nameDescription="a dragon lord" race="blood" experience="2100" speed="60" manacost="0">
<health now="1900" max="1900" />
<look type="39" head="0" body="0" legs="0" feet="0" corpse="5984" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dwarf" nameDescription="a dwarf" race="blood" experience="45" speed="45" manacost="320">
<monster name="Dwarf" nameDescription="a dwarf" race="blood" experience="45" speed="45" manacost="320">
<health now="90" max="90" />
<look type="69" head="0" body="0" legs="0" feet="0" corpse="6007" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dwarf geomancer" nameDescription="a dwarf geomancer" race="blood" experience="245" speed="60" manacost="0">
<monster name="Dwarf Geomancer" nameDescription="a dwarf geomancer" race="blood" experience="245" speed="60" manacost="0">
<health now="380" max="380" />
<look type="66" head="0" body="0" legs="0" feet="0" corpse="6015" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dwarf guard" nameDescription="a dwarf guard" race="blood" experience="165" speed="63" manacost="650">
<monster name="Dwarf Guard" nameDescription="a dwarf guard" race="blood" experience="165" speed="63" manacost="650">
<health now="245" max="245" />
<look type="70" head="0" body="0" legs="0" feet="0" corpse="6013" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dwarf soldier" nameDescription="a dwarf soldier" race="blood" experience="70" speed="48" manacost="360">
<monster name="Dwarf Soldier" nameDescription="a dwarf soldier" race="blood" experience="70" speed="48" manacost="360">
<health now="135" max="135" />
<look type="71" head="0" body="0" legs="0" feet="0" corpse="6014" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dworc fleshhunter" nameDescription="a dworc fleshhunter" race="blood" experience="35" speed="34" manacost="300">
<monster name="Dworc Fleshhunter" nameDescription="a dworc fleshhunter" race="blood" experience="35" speed="34" manacost="300">
<health now="85" max="85" />
<look type="215" head="0" body="0" legs="0" feet="0" corpse="6058" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dworc venomsniper" nameDescription="a dworc venomsniper" race="blood" experience="30" speed="36" manacost="300">
<monster name="Dworc Venomsniper" nameDescription="a dworc venomsniper" race="blood" experience="30" speed="36" manacost="300">
<health now="80" max="80" />
<look type="216" head="0" body="0" legs="0" feet="0" corpse="6059" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="dworc voodoomaster" nameDescription="a dworc voodoomaster" race="blood" experience="50" speed="35" manacost="300">
<monster name="Dworc Voodoomaster" nameDescription="a dworc voodoomaster" race="blood" experience="50" speed="35" manacost="300">
<health now="80" max="80" />
<look type="214" head="0" body="0" legs="0" feet="0" corpse="6055" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="efreet" nameDescription="an efreet" race="blood" experience="300" speed="77" manacost="0">
<monster name="Efreet" nameDescription="an efreet" race="blood" experience="300" speed="77" manacost="0">
<health now="550" max="550" />
<look type="103" head="0" body="0" legs="0" feet="0" corpse="6032" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="elder beholder" nameDescription="an elder beholder" race="blood" experience="280" speed="45" manacost="0">
<monster name="Elder Beholder" nameDescription="an elder beholder" race="blood" experience="280" speed="45" manacost="0">
<health now="500" max="500" />
<look type="108" head="0" body="0" legs="0" feet="0" corpse="6037" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="elephant" nameDescription="an elephant" race="blood" experience="160" speed="55" manacost="500">
<monster name="Elephant" nameDescription="an elephant" race="blood" experience="160" speed="55" manacost="500">
<health now="320" max="320" />
<look type="211" head="0" body="0" legs="0" feet="0" corpse="6052" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="elf" nameDescription="an elf" race="blood" experience="42" speed="55" manacost="320">
<monster name="Elf" nameDescription="an elf" race="blood" experience="42" speed="55" manacost="320">
<health now="100" max="100" />
<look type="62" head="0" body="0" legs="0" feet="0" corpse="6003" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="elf arcanist" nameDescription="an elf arcanist" race="blood" experience="175" speed="70" manacost="0">
<monster name="Elf Arcanist" nameDescription="an elf arcanist" race="blood" experience="175" speed="70" manacost="0">
<health now="220" max="220" />
<look type="63" head="0" body="0" legs="0" feet="0" corpse="6011" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="elf scout" nameDescription="an elf scout" race="blood" experience="75" speed="70" manacost="360">
<monster name="Elf Scout" nameDescription="an elf scout" race="blood" experience="75" speed="70" manacost="360">
<health now="160" max="160" />
<look type="64" head="0" body="0" legs="0" feet="0" corpse="6012" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="fire devil" nameDescription="a fire devil" race="blood" experience="110" speed="50" manacost="530">
<monster name="Fire Devil" nameDescription="a fire devil" race="blood" experience="110" speed="50" manacost="530">
<health now="200" max="200" />
<look type="40" head="0" body="0" legs="0" feet="0" corpse="5985" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="fire elemental" nameDescription="a fire elemental" race="fire" experience="220" speed="55" manacost="690">
<monster name="Fire Elemental" nameDescription="a fire elemental" race="fire" experience="220" speed="55" manacost="690">
<health now="280" max="280" />
<look type="49" head="0" body="0" legs="0" feet="0" corpse="2118" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="flamethrower" nameDescription="a flamethrower" race="undead" experience="18" speed="0" manacost="0">
<monster name="Flamethrower" nameDescription="a flamethrower" race="undead" experience="18" speed="0" manacost="0">
<health now="100" max="100" />
<look typeex="2190" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="flamingo" nameDescription="a flamingo" race="blood" experience="0" speed="44" manacost="250">
<monster name="Flamingo" nameDescription="a flamingo" race="blood" experience="0" speed="44" manacost="250">
<health now="25" max="25" />
<look type="212" head="0" body="0" legs="0" feet="0" corpse="6054" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="frost troll" nameDescription="a frost troll" race="blood" experience="23" speed="30" manacost="300">
<monster name="Frost Troll" nameDescription="a frost troll" race="blood" experience="23" speed="30" manacost="300">
<health now="55" max="55" />
<look type="53" head="0" body="0" legs="0" feet="0" corpse="5998" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="gargoyle" nameDescription="a gargoyle" race="undead" experience="150" speed="60" manacost="0">
<monster name="Gargoyle" nameDescription="a gargoyle" race="undead" experience="150" speed="60" manacost="0">
<health now="250" max="250" />
<look type="95" head="0" body="0" legs="0" feet="0" corpse="6027" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="gazer" nameDescription="a gazer" race="blood" experience="90" speed="30" manacost="0">
<monster name="Gazer" nameDescription="a gazer" race="blood" experience="90" speed="30" manacost="0">
<health now="120" max="120" />
<look type="109" head="0" body="0" legs="0" feet="0" corpse="6036" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="ghost" nameDescription="a ghost" race="undead" experience="120" speed="40" manacost="0">
<monster name="Ghost" nameDescription="a ghost" race="undead" experience="120" speed="40" manacost="0">
<health now="150" max="150" />
<look type="48" head="0" body="0" legs="0" feet="0" corpse="5993" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="ghoul" nameDescription="a ghoul" race="blood" experience="85" speed="32" manacost="450">
<monster name="Ghoul" nameDescription="a ghoul" race="blood" experience="85" speed="32" manacost="450">
<health now="100" max="100" />
<look type="18" head="0" body="0" legs="0" feet="0" corpse="5976" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="giant spider" nameDescription="a giant spider" race="venom" experience="900" speed="80" manacost="0">
<monster name="Giant Spider" nameDescription="a giant spider" race="venom" experience="900" speed="80" manacost="0">
<health now="1300" max="1300" />
<look type="38" head="0" body="0" legs="0" feet="0" corpse="5977" />
<targetchange interval="1000" chance="10" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="goblin" nameDescription="a goblin" race="blood" experience="25" speed="20" manacost="290">
<monster name="Goblin" nameDescription="a goblin" race="blood" experience="25" speed="20" manacost="290">
<health now="50" max="50" />
<look type="61" head="0" body="0" legs="0" feet="0" corpse="6002" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="green djinn" nameDescription="a green djinn" race="blood" experience="190" speed="70" manacost="0">
<monster name="Green Djinn" nameDescription="a green djinn" race="blood" experience="190" speed="70" manacost="0">
<health now="330" max="330" />
<look type="51" head="0" body="0" legs="0" feet="0" corpse="6016" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="hero" nameDescription="a hero" race="blood" experience="1200" speed="100" manacost="0">
<monster name="Hero" nameDescription="a hero" race="blood" experience="1200" speed="100" manacost="0">
<health now="1400" max="1400" />
<look type="73" head="0" body="0" legs="0" feet="0" corpse="6080" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="hunter" nameDescription="a hunter" race="blood" experience="150" speed="65" manacost="530">
<monster name="Hunter" nameDescription="a hunter" race="blood" experience="150" speed="65" manacost="530">
<health now="150" max="150" />
<look type="129" head="95" body="116" legs="120" feet="115" corpse="6080" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="hyaena" nameDescription="a hyaena" race="blood" experience="20" speed="58" manacost="275">
<monster name="Hyaena" nameDescription="a hyaena" race="blood" experience="20" speed="58" manacost="275">
<health now="60" max="60" />
<look type="94" head="0" body="0" legs="0" feet="0" corpse="6026" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="hydra" nameDescription="a hydra" race="blood" experience="2100" speed="60" manacost="0">
<monster name="Hydra" nameDescription="a hydra" race="blood" experience="2100" speed="60" manacost="0">
<health now="2250" max="2250" />
<look type="121" head="0" body="0" legs="0" feet="0" corpse="6048" />
<targetchange interval="1000" chance="5" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="illusion" nameDescription="a illusion" race="blood" experience="25" speed="20" manacost="0">
<monster name="Illusion" nameDescription="a illusion" race="blood" experience="25" speed="20" manacost="0">
<health now="50" max="50" />
<look type="107" head="0" body="0" legs="0" feet="0" corpse="6002" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="kongra" nameDescription="a kongra" race="blood" experience="110" speed="52" manacost="0">
<monster name="Kongra" nameDescription="a kongra" race="blood" experience="110" speed="52" manacost="0">
<health now="340" max="340" />
<look type="116" head="0" body="0" legs="0" feet="0" corpse="6043" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="larva" nameDescription="a larva" race="venom" experience="44" speed="22" manacost="355">
<monster name="Larva" nameDescription="a larva" race="venom" experience="44" speed="22" manacost="355">
<health now="70" max="70" />
<look type="82" head="0" body="0" legs="0" feet="0" corpse="6023" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="lich" nameDescription="a lich" race="undead" experience="900" speed="65" manacost="0">
<monster name="Lich" nameDescription="a lich" race="undead" experience="900" speed="65" manacost="0">
<health now="880" max="880" />
<look type="99" head="0" body="0" legs="0" feet="0" corpse="6028" />
<targetchange interval="1000" chance="3" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="lion" nameDescription="a lion" race="blood" experience="30" speed="55" manacost="320">
<monster name="Lion" nameDescription="a lion" race="blood" experience="30" speed="55" manacost="320">
<health now="80" max="80" />
<look type="41" head="0" body="0" legs="0" feet="0" corpse="5986" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="lizard sentinel" nameDescription="a lizard sentinel" race="blood" experience="105" speed="50" manacost="560">
<monster name="Lizard Sentinel" nameDescription="a lizard sentinel" race="blood" experience="105" speed="50" manacost="560">
<health now="265" max="265" />
<look type="114" head="0" body="0" legs="0" feet="0" corpse="6040" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="lizard snakecharmer" nameDescription="a lizard snakecharmer" race="blood" experience="200" speed="52" manacost="0">
<monster name="Lizard Snakecharmer" nameDescription="a lizard snakecharmer" race="blood" experience="200" speed="52" manacost="0">
<health now="325" max="325" />
<look type="115" head="0" body="0" legs="0" feet="0" corpse="6041" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="lizard templar" nameDescription="a lizard templar" race="blood" experience="145" speed="47" manacost="0">
<monster name="Lizard Templar" nameDescription="a lizard templar" race="blood" experience="145" speed="47" manacost="0">
<health now="410" max="410" />
<look type="113" head="0" body="0" legs="0" feet="0" corpse="4321" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="magicthrower" nameDescription="a magicthrower" race="undead" experience="18" speed="0" manacost="0">
<monster name="Magicthrower" nameDescription="a magicthrower" race="undead" experience="18" speed="0" manacost="0">
<health now="100" max="100" />
<look typeex="2190" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="marid" nameDescription="a marid" race="blood" experience="300" speed="77" manacost="0">
<monster name="Marid" nameDescription="a marid" race="blood" experience="300" speed="77" manacost="0">
<health now="550" max="550" />
<look type="104" head="0" body="0" legs="0" feet="0" corpse="6033" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="merlkin" nameDescription="a merlkin" race="blood" experience="135" speed="57" manacost="0">
<monster name="Merlkin" nameDescription="a merlkin" race="blood" experience="135" speed="57" manacost="0">
<health now="230" max="230" />
<look type="117" head="0" body="0" legs="0" feet="0" corpse="6044" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="mimic" nameDescription="a mimic" race="undead" experience="18" speed="40" manacost="250">
<monster name="Mimic" nameDescription="a mimic" race="undead" experience="18" speed="40" manacost="250">
<health now="29" max="29" />
<look type="92" head="0" body="0" legs="0" feet="0" corpse="2472" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="minotaur" nameDescription="a minotaur" race="blood" experience="50" speed="44" manacost="330">
<monster name="Minotaur" nameDescription="a minotaur" race="blood" experience="50" speed="44" manacost="330">
<health now="100" max="100" />
<look type="25" head="0" body="0" legs="0" feet="0" corpse="5969" />
<targetchange interval="1000" chance="0" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="minotaur archer" nameDescription="a minotaur archer" race="blood" experience="65" speed="40" manacost="390">
<monster name="Minotaur Archer" nameDescription="a minotaur archer" race="blood" experience="65" speed="40" manacost="390">
<health now="100" max="100" />
<look type="24" head="0" body="0" legs="0" feet="0" corpse="5982" />
<targetchange interval="1000" chance="50" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF - 8"?>
<monster name="minotaur guard" nameDescription="a minotaur guard" race="blood" experience="160" speed="55" manacost="550">
<monster name="Minotaur Guard" nameDescription="a minotaur guard" race="blood" experience="160" speed="55" manacost="550">
<health now="185" max="185" />
<look type="29" head="0" body="0" legs="0" feet="0" corpse="5983" />
<targetchange interval="1000" chance="5" />

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