diff --git a/data-otservbr-global/monster/bosses/bakragore.lua b/data-otservbr-global/monster/bosses/bakragore.lua index 76f1c36c68c..2a0ca5c60fc 100644 --- a/data-otservbr-global/monster/bosses/bakragore.lua +++ b/data-otservbr-global/monster/bosses/bakragore.lua @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Bakragore") local monster = {} monster.description = "Bakragore" -monster.experience = 550000 +monster.experience = 15000000 monster.outfit = { lookType = 1671, lookHead = 0, @@ -13,6 +13,15 @@ monster.outfit = { lookMount = 0, } +monster.events = { + "RottenBloodBakragoreDeath", +} + +monster.bosstiary = { + bossRaceId = 2367, + bossRace = RARITY_NEMESIS, +} + monster.health = 660000 monster.maxHealth = 660000 monster.race = "undead" @@ -25,11 +34,6 @@ monster.changeTarget = { chance = 20, } -monster.bosstiary = { - bossRaceId = 2367, - bossRace = RARITY_NEMESIS, -} - monster.strategiesTarget = { nearest = 70, health = 10, @@ -57,26 +61,48 @@ monster.flags = { canWalkOnPoison = true, } -monster.events = { - "RottenBloodBakragoreDeath", -} - monster.light = { level = 0, color = 0, } -monster.summon = {} +monster.summon = { + maxSummons = 2, + summons = { + { name = "Elder Bloodjaw", chance = 20, interval = 2000, count = 2 }, + }, +} -monster.voices = {} +monster.voices = { + interval = 5000, + chance = 10, + { text = "Light ... darkens!", yell = false }, + { text = "Light .. the ... darkness!", yell = false }, + { text = "Darkness ... is ... light!", yell = false }, + { text = "WILL ... PUNISH ... YOU!", yell = false }, + { text = "RAAAR!", yell = false }, +} monster.loot = { - { name = "crystal coin", chance = 7480, maxCount = 165 }, - { name = "giant amethyst", chance = 10970, maxCount = 1 }, - { name = "giant topaz", chance = 5395, maxCount = 6 }, - { name = "mastermind potion", chance = 8938, maxCount = 23 }, - { name = "ultimate mana potion", chance = 11433, maxCount = 198 }, - { name = "yellow gem", chance = 9985, maxCount = 9 }, + { name = "crystal coin", chance = 8938, maxCount = 200 }, + { name = "supreme health potion", chance = 8938, maxCount = 300 }, + { name = "ultimate mana potion", chance = 11433, maxCount = 300 }, + { name = "ultimate spirit potion", chance = 11433, maxCount = 300 }, + { name = "berserk potion", chance = 10938, maxCount = 90 }, + { name = "bullseye potion", chance = 10938, maxCount = 90 }, + { name = "mastermind potion", chance = 10938, maxCount = 30 }, + { name = "blue gem", chance = 10570, maxCount = 10 }, + { name = "giant amethyst", chance = 10570, maxCount = 10 }, + { name = "giant emerald", chance = 10570, maxCount = 10 }, + { name = "giant ruby", chance = 10570, maxCount = 10 }, + { name = "red gem", chance = 10570, maxCount = 10 }, + { name = "giant sapphire", chance = 10570, maxCount = 10 }, + { name = "giant topaz", chance = 10570, maxCount = 10 }, + { name = "violet gem", chance = 10970, maxCount = 10 }, + { name = "yellow gem", chance = 10970, maxCount = 10 }, + { name = "figurine of bakragore", chance = 10970 }, + { name = "bakragore's amalgamation", chance = 570 }, + { name = "spiritual horseshoe", chance = 470 }, { id = 43895, chance = 360 }, -- Bag you covet } diff --git a/data-otservbr-global/monster/bosses/chagorz.lua b/data-otservbr-global/monster/bosses/chagorz.lua index 1f2c8174df3..bec5b74e9e8 100644 --- a/data-otservbr-global/monster/bosses/chagorz.lua +++ b/data-otservbr-global/monster/bosses/chagorz.lua @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Chagorz") local monster = {} monster.description = "Chagorz" -monster.experience = 180000 +monster.experience = 3250000 monster.outfit = { lookType = 1665, lookHead = 0, @@ -13,6 +13,15 @@ monster.outfit = { lookMount = 0, } +monster.events = { + "RottenBloodBossDeath", +} + +monster.bosstiary = { + bossRaceId = 2366, + bossRace = RARITY_ARCHFOE, +} + monster.health = 350000 monster.maxHealth = 350000 monster.race = "undead" @@ -25,11 +34,6 @@ monster.changeTarget = { chance = 20, } -monster.bosstiary = { - bossRaceId = 2366, - bossRace = RARITY_NEMESIS, -} - monster.strategiesTarget = { nearest = 70, health = 10, @@ -57,10 +61,6 @@ monster.flags = { canWalkOnPoison = true, } -monster.events = { - "RottenBloodBossDeath", -} - monster.light = { level = 0, color = 0, @@ -68,7 +68,14 @@ monster.light = { monster.summon = {} -monster.voices = {} +monster.voices = { + interval = 5000, + chance = 10, + { text = "The light... that... drains!", yell = false }, + { text = "RAAAR!", yell = false }, + { text = "WILL ... PUNISH ... YOU!", yell = false }, + { text = "Darkness ... devours!", yell = false }, +} monster.loot = { { name = "crystal coin", chance = 5441, maxCount = 108 }, diff --git a/data-otservbr-global/monster/bosses/ichgahal.lua b/data-otservbr-global/monster/bosses/ichgahal.lua index d03b6300af8..7d0d21924e4 100644 --- a/data-otservbr-global/monster/bosses/ichgahal.lua +++ b/data-otservbr-global/monster/bosses/ichgahal.lua @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Ichgahal") local monster = {} monster.description = "Ichgahal" -monster.experience = 180000 +monster.experience = 3250000 monster.outfit = { lookType = 1665, lookHead = 0, @@ -13,6 +13,15 @@ monster.outfit = { lookMount = 0, } +monster.events = { + "RottenBloodBossDeath", +} + +monster.bosstiary = { + bossRaceId = 2364, + bossRace = RARITY_NEMESIS, +} + monster.health = 350000 monster.maxHealth = 350000 monster.race = "undead" @@ -25,11 +34,6 @@ monster.changeTarget = { chance = 20, } -monster.bosstiary = { - bossRaceId = 2364, - bossRace = RARITY_NEMESIS, -} - monster.strategiesTarget = { nearest = 70, health = 10, @@ -57,18 +61,25 @@ monster.flags = { canWalkOnPoison = true, } -monster.events = { - "RottenBloodBossDeath", -} - monster.light = { level = 0, color = 0, } -monster.summon = {} +monster.summon = { + maxSummons = 8, + summons = { + { name = "Mushroom", chance = 30, interval = 5000, count = 8 }, + }, +} -monster.voices = {} +monster.voices = { + interval = 5000, + chance = 10, + { text = "Rott!!", yell = false }, + { text = "Putrefy!", yell = false }, + { text = "Decay!", yell = false }, +} monster.loot = { { name = "crystal coin", chance = 14615, maxCount = 115 }, @@ -89,6 +100,7 @@ monster.loot = { { name = "putrefactive figurine", chance = 11416, maxCount = 1 }, { name = "ichgahal's fungal infestation", chance = 7902, maxCount = 1 }, { name = "white gem", chance = 13559, maxCount = 3 }, + { id = 43895, chance = 360 }, -- Bag you covet } monster.attacks = { diff --git a/data-otservbr-global/monster/bosses/murcion.lua b/data-otservbr-global/monster/bosses/murcion.lua index 4aa446f33a3..ad091f74758 100644 --- a/data-otservbr-global/monster/bosses/murcion.lua +++ b/data-otservbr-global/monster/bosses/murcion.lua @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Murcion") local monster = {} monster.description = "Murcion" -monster.experience = 180000 +monster.experience = 3250000 monster.outfit = { lookType = 1664, lookHead = 0, @@ -13,6 +13,15 @@ monster.outfit = { lookMount = 0, } +monster.events = { + "RottenBloodBossDeath", +} + +monster.bosstiary = { + bossRaceId = 2362, + bossRace = RARITY_NEMESIS, +} + monster.health = 350000 monster.maxHealth = 350000 monster.race = "undead" @@ -25,11 +34,6 @@ monster.changeTarget = { chance = 20, } -monster.bosstiary = { - bossRaceId = 2362, - bossRace = RARITY_NEMESIS, -} - monster.strategiesTarget = { nearest = 70, health = 10, @@ -57,16 +61,17 @@ monster.flags = { canWalkOnPoison = true, } -monster.events = { - "RottenBloodBossDeath", -} - monster.light = { level = 0, color = 0, } -monster.summon = {} +monster.summon = { + maxSummons = 8, + summons = { + { name = "Mushroom", chance = 30, interval = 5000, count = 8 }, + }, +} monster.voices = {} diff --git a/data-otservbr-global/monster/bosses/vemiath.lua b/data-otservbr-global/monster/bosses/vemiath.lua index 982a0f74c80..97be142a621 100644 --- a/data-otservbr-global/monster/bosses/vemiath.lua +++ b/data-otservbr-global/monster/bosses/vemiath.lua @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Vemiath") local monster = {} monster.description = "Vemiath" -monster.experience = 180000 +monster.experience = 3250000 monster.outfit = { lookType = 1665, lookHead = 0, @@ -13,6 +13,15 @@ monster.outfit = { lookMount = 0, } +monster.events = { + "RottenBloodBossDeath", +} + +monster.bosstiary = { + bossRaceId = 2365, + bossRace = RARITY_ARCHFOE, +} + monster.health = 350000 monster.maxHealth = 350000 monster.race = "undead" @@ -25,11 +34,6 @@ monster.changeTarget = { chance = 20, } -monster.bosstiary = { - bossRaceId = 2365, - bossRace = RARITY_NEMESIS, -} - monster.strategiesTarget = { nearest = 70, health = 10, @@ -57,10 +61,6 @@ monster.flags = { canWalkOnPoison = true, } -monster.events = { - "RottenBloodBossDeath", -} - monster.light = { level = 0, color = 0, @@ -68,7 +68,14 @@ monster.light = { monster.summon = {} -monster.voices = {} +monster.voices = { + interval = 5000, + chance = 10, + { text = "The light... that... drains!", yell = false }, + { text = "RAAAR!", yell = false }, + { text = "WILL ... PUNISH ... YOU!", yell = false }, + { text = "Darkness ... devours!", yell = false }, +} monster.loot = { { name = "crystal coin", chance = 8852, maxCount = 125 }, diff --git a/data-otservbr-global/monster/quests/rotten_blood/mushroom.lua b/data-otservbr-global/monster/quests/rotten_blood/mushroom.lua new file mode 100644 index 00000000000..d5611b8ea9c --- /dev/null +++ b/data-otservbr-global/monster/quests/rotten_blood/mushroom.lua @@ -0,0 +1,94 @@ +local mType = Game.createMonsterType("Mushroom") +local monster = {} + +monster.description = "a Mushroom" +monster.experience = 0 +monster.outfit = { + lookType = 1669, --todo get correct lookType + lookHead = 0, + lookBody = 0, + lookLegs = 0, + lookFeet = 0, + lookAddons = 0, + lookMount = 0, +} + +monster.health = 10000 +monster.maxHealth = 10000 +monster.race = "undead" +monster.corpse = 0 +monster.speed = 0 +monster.manaCost = 0 + +monster.changeTarget = { + interval = 2500, + chance = 40, +} + +monster.strategiesTarget = { + nearest = 70, + health = 10, + damage = 10, + random = 10, +} + +monster.flags = { + summonable = false, + attackable = true, + hostile = true, + convinceable = false, + pushable = false, + rewardBoss = false, + illusionable = false, + canPushItems = true, + canPushCreatures = true, + staticAttackChance = 98, + targetDistance = 1, + runHealth = 0, + healthHidden = false, + isBlockable = false, + canWalkOnEnergy = true, + canWalkOnFire = true, + canWalkOnPoison = true, +} + +monster.light = { + level = 0, + color = 0, +} + +monster.voices = {} + +monster.loot = {} + +monster.attacks = { + { name = "melee", interval = 2000, chance = 100, minDamage = 0, maxDamage = -400 }, + { name = "combat", interval = 3000, chance = 100, type = COMBAT_LIFEDRAIN, minDamage = -2500, maxDamage = -3000, radius = 3, effect = CONST_ME_POISONAREA, target = false }, -- life drain bomb +} + +monster.defenses = { + defense = 65, + armor = 0, +} + +monster.elements = { + { type = COMBAT_PHYSICALDAMAGE, percent = 0 }, + { type = COMBAT_ENERGYDAMAGE, percent = 0 }, + { type = COMBAT_EARTHDAMAGE, percent = 0 }, + { type = COMBAT_FIREDAMAGE, percent = 0 }, + { type = COMBAT_LIFEDRAIN, percent = 0 }, + { type = COMBAT_MANADRAIN, percent = 0 }, + { type = COMBAT_DROWNDAMAGE, percent = 0 }, + { type = COMBAT_ICEDAMAGE, percent = 0 }, + { type = COMBAT_HOLYDAMAGE, percent = 0 }, + { type = COMBAT_DEATHDAMAGE, percent = 0 }, +} + +monster.immunities = { + { type = "paralyze", condition = true }, + { type = "outfit", condition = true }, + { type = "invisible", condition = true }, + { type = "bleed", condition = true }, +} + +mType:register(monster) diff --git a/data-otservbr-global/npc/torkada.lua b/data-otservbr-global/npc/torkada.lua index 954bd05e9fe..ddbe4d0326e 100644 --- a/data-otservbr-global/npc/torkada.lua +++ b/data-otservbr-global/npc/torkada.lua @@ -11,7 +11,12 @@ npcConfig.walkInterval = 0 npcConfig.walkRadius = 0 npcConfig.outfit = { - lookType = 1414, + lookType = 1243, + lookHead = 59, + lookBody = 78, + lookLegs = 78, + lookFeet = 57, + lookAddons = 0, } npcConfig.flags = {