Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

improve: content fixes #1358

Merged
merged 10 commits into from
Aug 7, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion data-otservbr-global/lib/core/storages.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2799,7 +2799,9 @@ Storage = {
PaleWormTimer = 47018,
PaleWormKilled = 47019,
},
PoltergeistOutfits = {}
PoltergeistOutfits = {
Received = 47020,
}
},
U12_40 = { -- update 12.40 - Reserved Storages 47201 - 47500
RevenantOutfits = {},
Expand Down
65 changes: 33 additions & 32 deletions data-otservbr-global/monster/constructs/rotten_golem.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Rotten Golem")
local monster = {}

monster.description = "a rotten golem"
monster.experience = 23400
monster.experience = 17860
monster.outfit = {
lookType = 1312,
lookHead = 0,
Expand All @@ -18,13 +18,13 @@ monster.Bestiary = {
class = "Construct",
race = BESTY_RACE_CONSTRUCT,
toKill = 5000,
FirstUnlock = 25,
SecondUnlock = 3394,
FirstUnlock = 200,
SecondUnlock = 2000,
CharmsPoints = 100,
Stars = 5,
Occurrence = 0,
Locations = "Rotten Wasteland."
}
}

monster.health = 28000
monster.maxHealth = 28000
Expand Down Expand Up @@ -62,50 +62,51 @@ monster.flags = {
isBlockable = false,
canWalkOnEnergy = true,
canWalkOnFire = true,
canWalkOnPoison = true
canWalkOnPoison = true,
}

monster.light = {
level = 0,
color = 0
color = 0,
}

monster.voices = {
interval = 5000,
chance = 10
chance = 10,
}

monster.loot = {
{name = "crystal coin", chance = 70540},
{name = "great spirit potion", chance = 32220, maxCount = 7},
{id = 281, chance = 54560}, -- giant shimmering pearl (green)
{id = 282, chance = 54560}, -- giant shimmering pearl (brown)
{name = "terra amulet", chance = 35500},
{name = "giant sword", chance = 13500},
{name = "war axe", chance = 9500},
{name = "mercenary sword", chance = 11500},
{name = "titan axe", chance = 19500},
{name = "underworld rod", chance = 35500},
{name = "sacred tree amulet", chance = 17500},
{name = "fur armor", chance = 9500},
{name = "terra mantle", chance = 3500},
{name = "wood cape", chance = 2500},
{name = "rubber cap", chance = 1500},
{name = "stone skin amulet", chance = 2000},
{id = 34109, chance = 50} -- bag you desire
{name = "crystal coin", chance = 60590},
{name = "great spirit potion", chance = 31180, maxCount = 5},
{name = "sacred tree amulet", chance = 3590},
{name = "underworld rod", chance = 3030},
{id = 281, chance = 2690}, -- giant shimmering pearl
{name = "titan axe", chance = 2500},
{name = "terra amulet", chance = 1900},
{name = "mercenary sword", chance = 1900},
{name = "war axe", chance = 1560},
{name = "giant sword", chance = 1540},
{name = "fur armor", chance = 990},
{name = "wood cape", chance = 920},
{name = "stone skin amulet", chance = 740},
{name = "terra mantle", chance = 510},
{name = "rubber cap", chance = 430},
{id = 34109, chance = 20} -- bag you desire
}

monster.attacks = {
{name ="melee", interval = 2000, chance = 100, minDamage = 0, maxDamage = -950},
{name ="combat", interval = 2000, chance = 15, type = COMBAT_HOLYDAMAGE, minDamage = -650, maxDamage = -900, range = 7, shootEffect = CONST_ANI_SMALLHOLY, effect = CONST_ME_HOLYAREA, target = true},
{name ="combat", interval = 2000, chance = 20, type = COMBAT_EARTHDAMAGE, minDamage = -750, maxDamage = -1200, radius = 7, effect = CONST_ME_BIGPLANTS, target = false},
{name ="root", interval = 2000, chance = 10, target = true}
-- Chain: const_me-> CONST_ME_GREEN_ENERGY_SPARK, combat_t->COMBAT_EARTHDAMAGE
{name ="combat", interval = 2000, chance = 15, type = COMBAT_HOLYDAMAGE, minDamage = -1200, maxDamage = -1450, range = 7, shootEffect = CONST_ANI_SMALLHOLY, effect = CONST_ME_HOLYAREA, target = true},
{name ="combat", interval = 2000, chance = 20, type = COMBAT_EARTHDAMAGE, minDamage = -900, maxDamage = -1400, radius = 5, effect = CONST_ME_BIGPLANTS, target = false},
{name ="combat", interval = 2000, chance = 20, type = COMBAT_EARTHDAMAGE, minDamage = -1100, maxDamage = -1300, radius = 7, effect = CONST_ME_BIGPLANTS, target = false},
{name ="poison chain", interval = 2000, chance = 20, minDamage = -1050, maxDamage = -1200, radius = 7, effect = CONST_ME_BIGPLANTS, target = false},
{name ="root", interval = 2000, chance = 1, target = true}
}

monster.defenses = {
defense = 110,
armor = 120
defense = 108,
armor = 108,
mitigation = 3.04,
}

monster.elements = {
Expand All @@ -117,8 +118,8 @@ monster.elements = {
{type = COMBAT_MANADRAIN, percent = 0},
{type = COMBAT_DROWNDAMAGE, percent = 0},
{type = COMBAT_ICEDAMAGE, percent = 0},
{type = COMBAT_HOLYDAMAGE , percent = 50},
{type = COMBAT_DEATHDAMAGE , percent = -20}
{type = COMBAT_HOLYDAMAGE, percent = 50},
{type = COMBAT_DEATHDAMAGE, percent = -20},
}

monster.immunities = {
Expand Down
77 changes: 38 additions & 39 deletions data-otservbr-global/monster/demons/brachiodemon.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ local mType = Game.createMonsterType("Brachiodemon")
local monster = {}

monster.description = "a brachiodemon"
monster.experience = 22880
monster.experience = 15770
monster.outfit = {
lookType = 1299,
lookHead = 0,
Expand All @@ -18,13 +18,13 @@ monster.Bestiary = {
class = "Demon",
race = BESTY_RACE_DEMON,
toKill = 5000,
FirstUnlock = 25,
SecondUnlock = 3394,
FirstUnlock = 200,
SecondUnlock = 2000,
CharmsPoints = 100,
Stars = 5,
Occurrence = 0,
Locations = "Claustrophobic Inferno."
}
}

monster.health = 25000
monster.maxHealth = 25000
Expand Down Expand Up @@ -62,59 +62,58 @@ monster.flags = {
isBlockable = false,
canWalkOnEnergy = true,
canWalkOnFire = true,
canWalkOnPoison = true
canWalkOnPoison = true,
}

monster.light = {
level = 0,
color = 0
color = 0,
}

monster.voices = {
interval = 5000,
chance = 10,
{text = "Feel the heat!", yell = false},
{text = "Hand over your life.", yell = false},
{text = "I can give you a hand... or two.", yell = false}
{text = "I can give you a hand... or two.", yell = false},
}

monster.loot = {
{name = "crystal coin", chance = 70540},
{name = "platinum coin", chance = 90540, maxCount = 32},
{name = "ultimate health potion", chance = 32220, maxCount = 7},
{id = 33936, chance = 35560}, -- hand
{name = "skull staff", chance = 65560},
{name = "epee", chance = 75560},
{name = "crystal mace", chance = 25560},
{name = "noble axe", chance = 8560},
{name = "spellbook of mind control", chance = 9000},
{id = 33937, chance = 7500}, -- head
{name = "fire axe", chance = 13500},
{name = "royal helmet", chance = 15500},
{name = "mastermind shield", chance = 9500},
{name = "assassin dagger", chance = 8500},
{name = "butcher's axe", chance = 7500},
{name = "jade hammer", chance = 6500},
{name = "crystalline sword", chance = 5500},
{name = "alloy legs", chance = 4500},
{name = "metal bat", chance = 3500},
{id = 23531, chance = 8920}, -- ring of green plasma
{id = 34025, chance = 1550}, -- diabolic skull
{id = 34109, chance = 50} -- bag you desire
{name = "crystal coin", chance = 58990},
{name = "ultimate health potion", chance = 29110, maxCount = 4},
{id = 33936, chance = 5490}, -- hand
{id = 33932, chance = 3710}, -- head many faces
{name = "epee", chance = 3290},
{name = "crystal mace", chance = 1690},
{name = "noble axe", chance = 1600},
{name = "spellbook of mind control", chance = 1180},
{name = "skull staff", chance = 930},
{id = 23532, chance = 930}, -- ring of green plasma
{name = "royal helmet", chance = 840},
{name = "jade hammer", chance = 840},
{name = "metal bat", chance = 760},
{name = "diabolic skull", chance = 590},
{name = "fire axe", chance = 590},
{name = "crystalline sword", chance = 420},
{name = "butcher's axe", chance = 420},
{name = "mastermind shield", chance = 420},
{name = "assassin dagger", chance = 340},
{name = "alloy legs", chance = 170},
{id = 34109, chance = 20} -- bag you desire
}

monster.attacks = {
{name ="melee", interval = 2000, chance = 100, minDamage = 0, maxDamage = -950},
{name ="combat", interval = 2000, chance = 15, type = COMBAT_DEATHDAMAGE, minDamage = -450, maxDamage = -700, range = 7, radius = 4, shootEffect = CONST_ANI_SUDDENDEATH, effect = CONST_ME_MORTAREA, target = true},
{name ="combat", interval = 2000, chance = 18, type = COMBAT_FIREDAMAGE, minDamage = -450, maxDamage = -900, radius = 3, effect = CONST_ME_FIREAREA, target = false},
{name ="combat", interval = 2000, chance = 22, type = COMBAT_DEATHDAMAGE, minDamage = -450, maxDamage = -900, radius = 4, effect = CONST_ME_EXPLOSIONHIT, target = false},
{name ="combat", interval = 2000, chance = 24, type = COMBAT_FIREDAMAGE, minDamage = -450, maxDamage = -1000, radius = 4, effect = CONST_ME_EXPLOSIONAREA, target = false},
{name ="combat", interval = 2000, chance = 10, type = COMBAT_DEATHDAMAGE, minDamage = -700, maxDamage = -1150, length = 8, effect = CONST_ME_EXPLOSIONHIT, target = false},
{name ="combat", interval = 2000, chance = 24, type = COMBAT_FIREDAMAGE, minDamage = -1100, maxDamage = -1550, radius = 4, effect = CONST_ME_EXPLOSIONAREA, target = false},
{name ="combat", interval = 2000, chance = 22, type = COMBAT_DEATHDAMAGE, minDamage = -900, maxDamage = -1280, radius = 4, effect = CONST_ME_EXPLOSIONHIT, target = false},
{name ="combat", interval = 2000, chance = 10, type = COMBAT_DEATHDAMAGE, minDamage = -1150, maxDamage = -1460, range = 7, effect = CONST_ANI_SUDDENDEATH, target = true},
{name ="combat", interval = 2000, chance = 15, type = COMBAT_DEATHDAMAGE, minDamage = -950, maxDamage = -1100, range = 7, radius = 4, shootEffect = CONST_ANI_SUDDENDEATH, effect = CONST_ME_MORTAREA, target = true},
}

monster.defenses = {
defense = 90,
armor = 105
defense = 100,
armor = 100,
mitigation = 2.75,
}

monster.elements = {
Expand All @@ -126,8 +125,8 @@ monster.elements = {
{type = COMBAT_MANADRAIN, percent = 0},
{type = COMBAT_DROWNDAMAGE, percent = 0},
{type = COMBAT_ICEDAMAGE, percent = -25},
{type = COMBAT_HOLYDAMAGE , percent = -35},
{type = COMBAT_DEATHDAMAGE , percent = 50}
{type = COMBAT_HOLYDAMAGE, percent = -35},
{type = COMBAT_DEATHDAMAGE, percent = 50},
}

monster.immunities = {
Expand All @@ -137,4 +136,4 @@ monster.immunities = {
{type = "bleed", condition = false}
}

mType:register(monster)
mType:register(monster)
71 changes: 36 additions & 35 deletions data-otservbr-global/monster/demons/infernal_demon.lua
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
local mType = Game.createMonsterType("Infernal Demon")
local monster = {}

monster.description = "a infernal demon"
monster.experience = 26000
monster.description = "an infernal demon"
monster.experience = 17430
monster.outfit = {
lookType = 1313,
lookHead = 0,
Expand All @@ -18,13 +18,13 @@ monster.Bestiary = {
class = "Demon",
race = BESTY_RACE_DEMON,
toKill = 5000,
FirstUnlock = 25,
SecondUnlock = 3394,
FirstUnlock = 200,
SecondUnlock = 2000,
CharmsPoints = 100,
Stars = 5,
Occurrence = 0,
Locations = "Claustrophobic Inferno."
}
}

monster.health = 32000
monster.maxHealth = 32000
Expand Down Expand Up @@ -60,54 +60,55 @@ monster.flags = {
runHealth = 0,
healthHidden = false,
isBlockable = false,
canWalkOnEnergy = true,
canWalkOnEnergy = false,
canWalkOnFire = true,
canWalkOnPoison = true
canWalkOnPoison = true,
}

monster.light = {
level = 0,
color = 0
color = 0,
}

monster.voices = {
interval = 5000,
chance = 10,
{text = "The smell of fear follows you.", yell = false},
{text = "Your soul will burn.", yell = false}
{text = "Your soul will burn.", yell = false},
}

monster.loot = {
{name = "crystal coin", chance = 70540},
{name = "platinum coin", chance = 90540, maxCount = 50},
{name = "ultimate health potion", chance = 32220, maxCount = 7},
{name = "small diamond", chance = 65560, maxCount = 7},
{name = "gold ingot", chance = 25560},
{name = "blue crystal splinter", chance = 25560},
{name = "cyan crystal fragment", chance = 25560},
{name = "red crystal fragment", chance = 25560},
{name = "magma boots", chance = 35500},
{name = "blue gem", chance = 65560},
{name = "giant sword", chance = 13500},
{name = "war axe", chance = 9500},
{name = "mercenary sword", chance = 11500},
{name = "green crystal fragment", chance = 9500},
{name = "onyx chip", chance = 7500},
{id = 34109, chance = 50} -- bag you desire
{name = "crystal coin", chance = 64000},
{name = "ultimate health potion", chance = 22860, maxCount = 5},
{name = "gold ingot", chance = 18860},
{name = "cyan crystal fragment", chance = 7430},
{name = "red crystal fragment", chance = 7430},
{name = "blue crystal shard", chance = 5710},
{name = "small diamond", chance = 4570},
{name = "blue gem", chance = 4570},
{name = "green crystal fragment", chance = 3430},
{name = "magma amulet", chance = 3430},
{name = "mercenary sword", chance = 2860},
{name = "onyx chip", chance = 2860},
{name = "war axe", chance = 2860},
{name = "giant sword", chance = 2860},
{name = "magma boots", chance = 2290},
{name = "stone skin amulet", chance = 570},
{id = 34109, chance = 20}, -- bag you desire
}

monster.attacks = {
{name ="melee", interval = 2000, chance = 100, minDamage = 0, maxDamage = -1050},
{name ="combat", interval = 2000, chance = 20, type = COMBAT_DEATHDAMAGE, minDamage = -750, maxDamage = -1000, radius = 4, effect = CONST_ME_MORTAREA, target = false},
{name ="combat", interval = 2000, chance = 15, type = COMBAT_FIREDAMAGE, minDamage = -550, maxDamage = -900, range = 7, shootEffect = CONST_ANI_FIRE, effect = CONST_ME_FIREAREA, target = true},
{name ="combat", interval = 2000, chance = 10, type = COMBAT_FIREDAMAGE, minDamage = -800, maxDamage = -1250, length = 8, effect = CONST_ME_EXPLOSIONHIT, target = false}
-- Chain: const_me-> CONST_ME_WHITE_ENERGY_SPARK, combat_t->COMBAT_DEATHDAMAGE
{name ="melee", interval = 2000, chance = 100, minDamage = 0, maxDamage = -1450},
{name ="combat", interval = 2000, chance = 15, type = COMBAT_FIREDAMAGE, minDamage = -1150, maxDamage = -1400, range = 7, shootEffect = CONST_ANI_FIRE, effect = CONST_ME_FIREAREA, target = false},
{name ="combat", interval = 2000, chance = 10, type = COMBAT_FIREDAMAGE, minDamage = -800, maxDamage = -1250, length = 8, effect = CONST_ME_EXPLOSIONHIT, target = false},
{name ="combat", interval = 2000, chance = 20, type = COMBAT_DEATHDAMAGE, minDamage = -1000, maxDamage = -1350, radius = 4, effect = CONST_ME_MORTAREA, target = false},
{name ="death chain", interval = 2000, chance = 20, minDamage = -1100, maxDamage = -1380, target = true},
}

monster.defenses = {
defense = 110,
defense = 120,
armor = 120,
{name ="combat", interval = 2000, chance = 15, type = COMBAT_HEALING, minDamage = 650, maxDamage = 1200, effect = CONST_ME_MAGIC_RED, target = false}
mitigation = 3.33,
}

monster.elements = {
Expand All @@ -119,8 +120,8 @@ monster.elements = {
{type = COMBAT_MANADRAIN, percent = 0},
{type = COMBAT_DROWNDAMAGE, percent = 0},
{type = COMBAT_ICEDAMAGE, percent = -20},
{type = COMBAT_HOLYDAMAGE , percent = -25},
{type = COMBAT_DEATHDAMAGE , percent = 50}
{type = COMBAT_HOLYDAMAGE, percent = -25},
{type = COMBAT_DEATHDAMAGE, percent = 50},
}

monster.immunities = {
Expand All @@ -130,4 +131,4 @@ monster.immunities = {
{type = "bleed", condition = false}
}

mType:register(monster)
mType:register(monster)
Loading