From 219907d7c041ddfda77437ffb9ef46e411c4966d Mon Sep 17 00:00:00 2001 From: Skold177 <113406182+Skold177@users.noreply.github.com> Date: Tue, 23 Dec 2025 11:43:29 -0500 Subject: [PATCH] [lua] [sql] BCNM 50 Idol Thoughts Implements the BCNM 50 Idol Thoughts --- scripts/enum/mob_skill.lua | 15 +++--- .../zones/QuBia_Arena/mobs/Earth_Golem.lua | 50 ++++++++++++++++++- scripts/zones/QuBia_Arena/mobs/Fire_Golem.lua | 50 ++++++++++++++++++- .../zones/QuBia_Arena/mobs/Water_Golem.lua | 50 ++++++++++++++++++- scripts/zones/QuBia_Arena/mobs/Wind_Golem.lua | 50 ++++++++++++++++++- .../zones/VeLugannon_Palace/mobs/Zipacna.lua | 4 +- sql/mob_groups.sql | 8 +-- sql/mob_pools.sql | 8 +-- sql/mob_skills.sql | 14 +++--- sql/mob_spawn_points.sql | 24 ++++----- 10 files changed, 234 insertions(+), 39 deletions(-) diff --git a/scripts/enum/mob_skill.lua b/scripts/enum/mob_skill.lua index 2909707e632..52ce5c57b3f 100644 --- a/scripts/enum/mob_skill.lua +++ b/scripts/enum/mob_skill.lua @@ -339,14 +339,17 @@ xi.mobSkill = GIGA_SLASH = 672, DARK_NOVA = 673, - CRYSTAL_RAIN = 678, - CRYSTAL_WEAPON_FIRE = 679, -- Zipacna Weapon Start - - CRYSTAL_WEAPON_WATER = 682, -- Zipacna Weapon End + ICE_BREAK_1 = 676, + THUNDER_BREAK_1 = 677, + CRYSTAL_RAIN_1 = 678, + CRYSTAL_WEAPON_FIRE_1 = 679, + CRYSTAL_WEAPON_STONE_1 = 680, + CRYSTAL_WEAPON_WATER_1 = 681, + CRYSTAL_WEAPON_WIND_1 = 682, MIGHTY_STRIKES_1 = 688, - BENEDICTION_1 = 689, -- Season's Greetings KSNM 30 (Gilagoge Tlugvi) - HUNDRED_FISTS_1 = 690, -- Season's Greetings KSNM 30 (Goga Tlugvi) + BENEDICTION_1 = 689, + HUNDRED_FISTS_1 = 690, MANAFONT_1 = 691, CHAINSPELL_1 = 692, PERFECT_DODGE_1 = 693, diff --git a/scripts/zones/QuBia_Arena/mobs/Earth_Golem.lua b/scripts/zones/QuBia_Arena/mobs/Earth_Golem.lua index 71d3b726ccb..12aa7eaa375 100644 --- a/scripts/zones/QuBia_Arena/mobs/Earth_Golem.lua +++ b/scripts/zones/QuBia_Arena/mobs/Earth_Golem.lua @@ -6,7 +6,55 @@ ---@type TMobEntity local entity = {} -entity.onMobDeath = function(mob, player, optParams) +entity.onMobInitialize = function(mob) + mob:addImmunity(xi.immunity.LIGHT_SLEEP) + mob:addImmunity(xi.immunity.DARK_SLEEP) +end + +entity.onMobSpawn = function(mob) + mob:setMod(xi.mod.REGAIN, 75) + mob:setMod(xi.mod.DOUBLE_ATTACK, 15) +end + +-- Golems use TP moves at the same time if possible. Crystal Weapon gets mapped to the respective element, and Thunder/Ice Break gets mapped to the element the other Golems are neutral/weak to. +entity.onMobMobskillChoose = function(mob, target, skillId) + local skillList = + { + xi.mobSkill.THUNDER_BREAK_1, + xi.mobSkill.CRYSTAL_RAIN_1, + xi.mobSkill.CRYSTAL_WEAPON_STONE_1, + } + + local mimicTable = + { + [mob:getID() - 3] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_FIRE_1, elementalBreak = xi.mobSkill.ICE_BREAK_1 }, -- Fire Golem + [mob:getID() - 2] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_WATER_1, elementalBreak = xi.mobSkill.ICE_BREAK_1 }, -- Water Golem + [mob:getID() - 1] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_WIND_1, elementalBreak = xi.mobSkill.THUNDER_BREAK_1 }, -- Wind Golem + } + + local chosenSkill = skillList[math.random(1, #skillList)] + + for golemID, mimicSkills in pairs(mimicTable) do + local golem = GetMobByID(golemID) + local mimicSkill = chosenSkill + + if chosenSkill == xi.mobSkill.CRYSTAL_WEAPON_STONE_1 then + mimicSkill = mimicSkills.crystalWeapon + elseif chosenSkill == xi.mobSkill.THUNDER_BREAK_1 then + mimicSkill = mimicSkills.elementalBreak + end + + if + golem and + golem:isAlive() and + golem:getTP() > 1000 and + golem:checkDistance(target) <= 15 + then + golem:useMobAbility(mimicSkill) + end + end + + return chosenSkill end return entity diff --git a/scripts/zones/QuBia_Arena/mobs/Fire_Golem.lua b/scripts/zones/QuBia_Arena/mobs/Fire_Golem.lua index ec5ad3214f2..06470fdb31f 100644 --- a/scripts/zones/QuBia_Arena/mobs/Fire_Golem.lua +++ b/scripts/zones/QuBia_Arena/mobs/Fire_Golem.lua @@ -6,7 +6,55 @@ ---@type TMobEntity local entity = {} -entity.onMobDeath = function(mob, player, optParams) +entity.onMobInitialize = function(mob) + mob:addImmunity(xi.immunity.LIGHT_SLEEP) + mob:addImmunity(xi.immunity.DARK_SLEEP) +end + +entity.onMobSpawn = function(mob) + mob:setMod(xi.mod.REGAIN, 75) + mob:setMod(xi.mod.DOUBLE_ATTACK, 15) +end + +-- Golems use TP moves at the same time if possible. Crystal Weapon gets mapped to the respective element, and Thunder/Ice Break gets mapped to the element the other Golems are neutral/weak to. +entity.onMobMobskillChoose = function(mob, target, skillId) + local skillList = + { + xi.mobSkill.ICE_BREAK_1, + xi.mobSkill.CRYSTAL_RAIN_1, + xi.mobSkill.CRYSTAL_WEAPON_FIRE_1, + } + + local mimicTable = + { + [mob:getID() + 1] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_WATER_1, elementalBreak = xi.mobSkill.ICE_BREAK_1 }, -- Water Golem + [mob:getID() + 2] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_WIND_1, elementalBreak = xi.mobSkill.THUNDER_BREAK_1 }, -- Wind Golem + [mob:getID() + 3] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_STONE_1, elementalBreak = xi.mobSkill.THUNDER_BREAK_1 }, -- Earth Golem + } + + local chosenSkill = skillList[math.random(1, #skillList)] + + for golemID, mimicSkills in pairs(mimicTable) do + local golem = GetMobByID(golemID) + local mimicSkill = chosenSkill + + if chosenSkill == xi.mobSkill.CRYSTAL_WEAPON_FIRE_1 then + mimicSkill = mimicSkills.crystalWeapon + elseif chosenSkill == xi.mobSkill.ICE_BREAK_1 then + mimicSkill = mimicSkills.elementalBreak + end + + if + golem and + golem:isAlive() and + golem:getTP() > 1000 and + golem:checkDistance(target) <= 15 + then + golem:useMobAbility(mimicSkill) + end + end + + return chosenSkill end return entity diff --git a/scripts/zones/QuBia_Arena/mobs/Water_Golem.lua b/scripts/zones/QuBia_Arena/mobs/Water_Golem.lua index e95992218af..c5f5a7252f0 100644 --- a/scripts/zones/QuBia_Arena/mobs/Water_Golem.lua +++ b/scripts/zones/QuBia_Arena/mobs/Water_Golem.lua @@ -6,7 +6,55 @@ ---@type TMobEntity local entity = {} -entity.onMobDeath = function(mob, player, optParams) +entity.onMobInitialize = function(mob) + mob:addImmunity(xi.immunity.LIGHT_SLEEP) + mob:addImmunity(xi.immunity.DARK_SLEEP) +end + +entity.onMobSpawn = function(mob) + mob:setMod(xi.mod.REGAIN, 75) + mob:setMod(xi.mod.DOUBLE_ATTACK, 15) +end + +-- Golems use TP moves at the same time if possible. Crystal Weapon gets mapped to the respective element, and Thunder/Ice Break gets mapped to the element the other Golems are neutral/weak to. +entity.onMobMobskillChoose = function(mob, target, skillId) + local skillList = + { + xi.mobSkill.ICE_BREAK_1, + xi.mobSkill.CRYSTAL_RAIN_1, + xi.mobSkill.CRYSTAL_WEAPON_WATER_1, + } + + local mimicTable = + { + [mob:getID() - 1] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_FIRE_1, elementalBreak = xi.mobSkill.ICE_BREAK_1 }, -- Fire Golem + [mob:getID() + 1] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_WIND_1, elementalBreak = xi.mobSkill.THUNDER_BREAK_1 }, -- Wind Golem + [mob:getID() + 2] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_STONE_1, elementalBreak = xi.mobSkill.THUNDER_BREAK_1 }, -- Earth Golem + } + + local chosenSkill = skillList[math.random(1, #skillList)] + + for golemID, mimicSkills in pairs(mimicTable) do + local golem = GetMobByID(golemID) + local mimicSkill = chosenSkill + + if chosenSkill == xi.mobSkill.CRYSTAL_WEAPON_WATER_1 then + mimicSkill = mimicSkills.crystalWeapon + elseif chosenSkill == xi.mobSkill.ICE_BREAK_1 then + mimicSkill = mimicSkills.elementalBreak + end + + if + golem and + golem:isAlive() and + golem:getTP() > 1000 and + golem:checkDistance(target) <= 15 + then + golem:useMobAbility(mimicSkill) + end + end + + return chosenSkill end return entity diff --git a/scripts/zones/QuBia_Arena/mobs/Wind_Golem.lua b/scripts/zones/QuBia_Arena/mobs/Wind_Golem.lua index dec3e4cbe6a..281fbf6114e 100644 --- a/scripts/zones/QuBia_Arena/mobs/Wind_Golem.lua +++ b/scripts/zones/QuBia_Arena/mobs/Wind_Golem.lua @@ -6,7 +6,55 @@ ---@type TMobEntity local entity = {} -entity.onMobDeath = function(mob, player, optParams) +entity.onMobInitialize = function(mob) + mob:addImmunity(xi.immunity.LIGHT_SLEEP) + mob:addImmunity(xi.immunity.DARK_SLEEP) +end + +entity.onMobSpawn = function(mob) + mob:setMod(xi.mod.REGAIN, 75) + mob:setMod(xi.mod.DOUBLE_ATTACK, 15) +end + +-- Golems use TP moves at the same time if possible. Crystal Weapon gets mapped to the respective element, and Thunder/Ice Break gets mapped to the element the other Golems are neutral/weak to. +entity.onMobMobskillChoose = function(mob, target, skillId) + local skillList = + { + xi.mobSkill.THUNDER_BREAK_1, + xi.mobSkill.CRYSTAL_RAIN_1, + xi.mobSkill.CRYSTAL_WEAPON_WIND_1, + } + + local mimicTable = + { + [mob:getID() - 2] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_FIRE_1, elementalBreak = xi.mobSkill.ICE_BREAK_1 }, -- Fire Golem + [mob:getID() - 1] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_WATER_1, elementalBreak = xi.mobSkill.ICE_BREAK_1 }, -- Water Golem + [mob:getID() + 1] = { crystalWeapon = xi.mobSkill.CRYSTAL_WEAPON_STONE_1, elementalBreak = xi.mobSkill.THUNDER_BREAK_1 }, -- Earth Golem + } + + local chosenSkill = skillList[math.random(1, #skillList)] + + for golemID, mimicSkills in pairs(mimicTable) do + local golem = GetMobByID(golemID) + local mimicSkill = chosenSkill + + if chosenSkill == xi.mobSkill.CRYSTAL_WEAPON_WIND_1 then + mimicSkill = mimicSkills.crystalWeapon + elseif chosenSkill == xi.mobSkill.THUNDER_BREAK_1 then + mimicSkill = mimicSkills.elementalBreak + end + + if + golem and + golem:isAlive() and + golem:getTP() > 1000 and + golem:checkDistance(target) <= 15 + then + golem:useMobAbility(mimicSkill) + end + end + + return chosenSkill end return entity diff --git a/scripts/zones/VeLugannon_Palace/mobs/Zipacna.lua b/scripts/zones/VeLugannon_Palace/mobs/Zipacna.lua index e228a6292d4..2349f8a68e8 100644 --- a/scripts/zones/VeLugannon_Palace/mobs/Zipacna.lua +++ b/scripts/zones/VeLugannon_Palace/mobs/Zipacna.lua @@ -334,9 +334,9 @@ entity.onMobMobskillChoose = function(mob, target, skillId) local roll = math.random(1, 100) if roll <= 30 then - return xi.mobSkill.CRYSTAL_RAIN + return xi.mobSkill.CRYSTAL_RAIN_1 elseif roll <= 60 then - local weaponEle = math.random(xi.mobSkill.CRYSTAL_WEAPON_FIRE, xi.mobSkill.CRYSTAL_WEAPON_WATER) + local weaponEle = math.random(xi.mobSkill.CRYSTAL_WEAPON_FIRE_1, xi.mobSkill.CRYSTAL_WEAPON_WATER_1) return weaponEle end end diff --git a/sql/mob_groups.sql b/sql/mob_groups.sql index afd7780cfd4..832efdaa504 100644 --- a/sql/mob_groups.sql +++ b/sql/mob_groups.sql @@ -13700,10 +13700,10 @@ INSERT INTO `mob_groups` VALUES (20,1076,206,'Doll_Factory',0,128,0,500,0,0,NULL INSERT INTO `mob_groups` VALUES (21,1497,206,'Generic_Doll',0,128,0,2200,2200,0,NULL); INSERT INTO `mob_groups` VALUES (22,1519,206,'Ghul-I-Beaban_DRK',0,128,0,2000,2000,0,NULL); INSERT INTO `mob_groups` VALUES (23,6069,206,'Ghul-I-Beaban_BLM',0,128,0,2000,2000,0,NULL); -INSERT INTO `mob_groups` VALUES (24,1342,206,'Fire_Golem',0,128,0,0,0,0,NULL); -INSERT INTO `mob_groups` VALUES (25,4310,206,'Water_Golem',0,128,0,0,0,0,NULL); -INSERT INTO `mob_groups` VALUES (26,4350,206,'Wind_Golem',0,128,0,0,0,0,NULL); -INSERT INTO `mob_groups` VALUES (27,1161,206,'Earth_Golem',0,128,0,0,0,0,NULL); +INSERT INTO `mob_groups` VALUES (24,1342,206,'Fire_Golem',0,128,0,2600,0,0,NULL); +INSERT INTO `mob_groups` VALUES (25,4310,206,'Water_Golem',0,128,0,2600,0,0,NULL); +INSERT INTO `mob_groups` VALUES (26,4350,206,'Wind_Golem',0,128,0,2600,0,0,NULL); +INSERT INTO `mob_groups` VALUES (27,1161,206,'Earth_Golem',0,128,0,2600,0,0,NULL); INSERT INTO `mob_groups` VALUES (28,2831,206,'Nephiyl_Rampartbreacher',0,128,0,4200,0,0,NULL); INSERT INTO `mob_groups` VALUES (29,2828,206,'Nephiyl_Keepcollapser',0,128,0,0,4200,0,NULL); INSERT INTO `mob_groups` VALUES (30,2829,206,'Nephiyl_Moatfiller',0,128,0,4400,0,0,NULL); diff --git a/sql/mob_pools.sql b/sql/mob_pools.sql index 227ed8c734f..75b16a2d354 100644 --- a/sql/mob_pools.sql +++ b/sql/mob_pools.sql @@ -1216,7 +1216,7 @@ INSERT INTO `mob_pools` VALUES (1157,'Dynamo_Cluster','Dynamo_Cluster',68,0x0000 INSERT INTO `mob_pools` VALUES (1158,'Ealdnarche','Ealdnarche',149,0x0000080300000000000000000000000000000000,4,1,9,240,125,0,1,1,0,16,0,32,0,0,0,0,22,0,0,150,150,NULL,NULL); INSERT INTO `mob_pools` VALUES (1159,'Earth_Eater','Earth_Eater',258,0x0000A90100000000000000000000000000000000,4,5,7,240,100,0,1,0,1,0,0,0,233,1155,0,0,9,0,64,258,258,1,12); INSERT INTO `mob_pools` VALUES (1160,'Earth_Elemental','Earth_Elemental',101,0x0000B70100000000000000000000000000000000,4,5,12,240,100,0,1,0,0,0,648,0,508,1155,16,0,13,0,0,101,101,1,3); -INSERT INTO `mob_pools` VALUES (1161,'Earth_Golem','Earth_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,320,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); +INSERT INTO `mob_pools` VALUES (1161,'Earth_Golem','Earth_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,300,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); INSERT INTO `mob_pools` VALUES (1162,'Earth_Mover','Earth_Mover',1,0x0000F20600000000000000000000000000000000,1,1,7,240,100,0,0,0,0,0,0,0,0,3201,0,0,0,24,0,302,1,0,17); INSERT INTO `mob_pools` VALUES (1163,'Earth_Pot','Earth_Pot',175,0x00009C0100000000000000000000000000000000,5,4,7,240,100,0,1,0,1,16,0,0,177,1159,0,0,36,0,0,175,175,3,53); INSERT INTO `mob_pools` VALUES (1164,'Eastern_Shadow','Eastern_Shadow',221,0x0000280200000000000000000000000000000000,11,11,4,360,100,0,1,0,1,2,0,0,0,1157,0,0,0,0,0,223,223,2,22); @@ -1397,7 +1397,7 @@ INSERT INTO `mob_pools` VALUES (1338,'Fighting_Smilodon','Fighting_Smilodon',242 INSERT INTO `mob_pools` VALUES (1339,'Fingerfilcher_Dradzad','Fingerfilcher_Dradzad',189,0x0000F40700000000000000000000000000000000,19,1,2,240,100,0,1,0,1,0,0,32,0,155,0,0,0,0,0,334,334,1,15); INSERT INTO `mob_pools` VALUES (1340,'Firedrake','Firedrake',266,0x00008E0100000000000000000000000000000000,1,1,7,240,100,0,1,0,1,0,0,0,291,129,0,0,0,0,0,266,266,0,27); INSERT INTO `mob_pools` VALUES (1341,'Fire_Elemental','Fire_Elemental',102,0x0000B40100000000000000000000000000000000,4,5,12,240,100,0,1,0,0,0,36,0,1934,131,16,0,17,0,0,102,102,1,3); -INSERT INTO `mob_pools` VALUES (1342,'Fire_Golem','Fire_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,320,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); +INSERT INTO `mob_pools` VALUES (1342,'Fire_Golem','Fire_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,300,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); INSERT INTO `mob_pools` VALUES (1343,'Fire_Pot','Fire_Pot',175,0x00009C0100000000000000000000000000000000,5,4,7,240,100,0,1,0,1,16,0,0,7,135,0,0,36,0,0,175,175,3,53); INSERT INTO `mob_pools` VALUES (1344,'Fire_Pukis','Fire_Pukis',87,0x0000A40100000000000000000000000000000000,1,1,12,240,100,0,1,1,1,2,6656,0,924,135,0,0,0,0,0,2074,87,3,47); INSERT INTO `mob_pools` VALUES (1345,'First_Rampart','First_Rampart',209,0x00001A0700000000000000000000000000000000,1,1,7,320,100,0,1,0,1,0,0,0,0,0,0,0,0,0,0,209,209,1,24); @@ -4366,7 +4366,7 @@ INSERT INTO `mob_pools` VALUES (4306,'Watch_Lizard','Watch_Lizard',174,0x0000480 INSERT INTO `mob_pools` VALUES (4307,'Watch_Wamoura','Watch_Wamoura',254,0x00000A0700000000000000000000000000000000,1,1,7,265,100,0,1,1,1,16,0,0,0,3,0,0,0,0,0,254,254,1,12); INSERT INTO `mob_pools` VALUES (4308,'Watch_Wyvern','Watch_Wyvern',268,0x00003E0100000000000000000000000000000000,1,1,7,240,100,0,1,0,1,0,0,0,132,133,0,0,0,0,0,266,268,2,36); INSERT INTO `mob_pools` VALUES (4309,'Water_Elemental','Water_Elemental',106,0x0000B80100000000000000000000000000000000,4,5,12,240,100,0,1,0,0,0,256,0,343,131,16,0,15,0,0,106,106,1,3); -INSERT INTO `mob_pools` VALUES (4310,'Water_Golem','Water_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,320,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); +INSERT INTO `mob_pools` VALUES (4310,'Water_Golem','Water_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,300,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); INSERT INTO `mob_pools` VALUES (4311,'Water_Leaper','Water_Leaper',197,0x00005C0100000000000000000000000000000000,1,1,7,240,100,0,1,0,1,0,0,0,4991,131,0,0,0,0,0,197,197,1,27); INSERT INTO `mob_pools` VALUES (4312,'Water_Pot','Water_Pot',175,0x00009C0100000000000000000000000000000000,5,4,7,240,100,0,1,0,1,16,0,0,7,135,0,0,36,0,0,175,175,3,53); INSERT INTO `mob_pools` VALUES (4313,'Water_Pumpkin','Water_Pumpkin',229,0x0000240100000000000000000000000000000000,1,1,7,240,100,0,1,0,0,4,0,0,0,3,0,0,0,0,0,229,229,NULL,NULL); @@ -4406,7 +4406,7 @@ INSERT INTO `mob_pools` VALUES (4346,'Will-o-the-Wykes','Will-o-the-Wykes',56,0x INSERT INTO `mob_pools` VALUES (4347,'Wily_Opo-opo','Wily_Opo-opo',188,0x0000A00100000000000000000000000000000000,1,1,3,240,100,0,1,0,1,0,0,0,0,131,0,0,0,0,0,188,188,1,18); INSERT INTO `mob_pools` VALUES (4348,'Windjammer_Imp','Windjammer_Imp',165,0x0000BE0600000000000000000000000000000000,4,4,7,240,100,0,1,1,0,0,0,0,0,0,0,0,2,0,0,165,165,NULL,NULL); INSERT INTO `mob_pools` VALUES (4349,'Wind_Bats','Wind_Bats',47,0x0000040100000000000000000000000000000000,1,1,11,240,100,0,0,0,0,0,0,64,243,641,8,0,0,0,0,47,47,0,13); -INSERT INTO `mob_pools` VALUES (4350,'Wind_Golem','Wind_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,320,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); +INSERT INTO `mob_pools` VALUES (4350,'Wind_Golem','Wind_Golem',135,0x0000B00100000000000000000000000000000000,1,1,11,300,100,0,1,1,1,18,0,0,0,3,0,0,0,0,0,135,135,1,20); INSERT INTO `mob_pools` VALUES (4351,'Wind_Pukis','Wind_Pukis',87,0x0000A40100000000000000000000000000000000,1,1,12,240,100,0,1,1,1,2,6656,0,1611,135,0,0,0,0,0,2076,87,3,47); INSERT INTO `mob_pools` VALUES (4352,'Winebibber','Winebibber',66,0x0000260100000000000000000000000000000000,1,1,5,240,100,0,1,1,1,2,0,0,0,3,0,0,0,0,0,66,66,1,24); INSERT INTO `mob_pools` VALUES (4353,'Wingrats','Wingrats',47,0x0000040100000000000000000000000000000000,1,1,11,240,100,0,0,0,1,0,0,64,290,131,8,0,0,0,0,47,47,1,16); diff --git a/sql/mob_skills.sql b/sql/mob_skills.sql index ec5dfb0bc91..b22508177cf 100644 --- a/sql/mob_skills.sql +++ b/sql/mob_skills.sql @@ -704,13 +704,13 @@ INSERT INTO `mob_skills` VALUES (672,416,'giga_slash',1,0.0,12.0,3000,1500,4,0,0 INSERT INTO `mob_skills` VALUES (673,417,'dark_nova',1,0.0,12.0,3000,1500,4,0,0,0,0,0,0); INSERT INTO `mob_skills` VALUES (674,418,'crystal_shield',0,0.0,7.0,2000,1500,1,0,0,0,0,0,0); INSERT INTO `mob_skills` VALUES (675,419,'heavy_strike',0,0.0,7.0,2000,1500,4,0,0,1,0,0,0); -INSERT INTO `mob_skills` VALUES (676,420,'ice_break',1,0.0,15.0,2000,1500,4,0,0,0,0,0,0); -INSERT INTO `mob_skills` VALUES (677,421,'thunder_break',1,0.0,15.0,2000,1500,4,0,0,0,0,0,0); -INSERT INTO `mob_skills` VALUES (678,422,'crystal_rain',1,0.0,15.0,2000,1500,4,0,0,0,0,0,0); -INSERT INTO `mob_skills` VALUES (679,423,'crystal_weapon_fire',0,0.0,15.0,2000,1500,4,0,0,0,0,0,0); -INSERT INTO `mob_skills` VALUES (680,424,'crystal_weapon_stone',0,0.0,15.0,2000,1500,4,0,0,0,0,0,0); -INSERT INTO `mob_skills` VALUES (681,425,'crystal_weapon_water',0,0.0,15.0,2000,1500,4,0,0,0,0,0,0); -INSERT INTO `mob_skills` VALUES (682,426,'crystal_weapon_wind',0,0.0,15.0,2000,1500,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (676,420,'ice_break',1,0.0,15.0,2000,800,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (677,421,'thunder_break',1,0.0,15.0,2000,800,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (678,422,'crystal_rain',1,0.0,15.0,2000,800,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (679,423,'crystal_weapon_fire',0,0.0,15.0,2000,800,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (680,424,'crystal_weapon_stone',0,0.0,15.0,2000,800,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (681,425,'crystal_weapon_water',0,0.0,15.0,2000,800,4,0,0,0,0,0,0); +INSERT INTO `mob_skills` VALUES (682,426,'crystal_weapon_wind',0,0.0,15.0,2000,800,4,0,0,0,0,0,0); INSERT INTO `mob_skills` VALUES (683,427,'bludgeon',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0); INSERT INTO `mob_skills` VALUES (684,428,'deal_out',4,0.0,10.0,2000,1500,4,0,0,0,0,0,0); INSERT INTO `mob_skills` VALUES (685,429,'sprout_spin',1,0.0,15.0,2000,1500,4,0,0,2,0,0,0); diff --git a/sql/mob_spawn_points.sql b/sql/mob_spawn_points.sql index 65489065fbc..ea47e9aa827 100644 --- a/sql/mob_spawn_points.sql +++ b/sql/mob_spawn_points.sql @@ -70409,18 +70409,18 @@ INSERT INTO `mob_spawn_points` VALUES (17621117,0,'Ghul-I-Beaban_BLM','Ghul-I-Be INSERT INTO `mob_spawn_points` VALUES (17621119,0,'Ghul-I-Beaban_DRK','Ghul-I-Beaban',22,40,40,400,199.000,-400.677,192); INSERT INTO `mob_spawn_points` VALUES (17621120,0,'Ghul-I-Beaban_BLM','Ghul-I-Beaban',23,40,40,400,199.000,-400.677,192); -- Idol Thoughts (BS50) -INSERT INTO `mob_spawn_points` VALUES (17621122,0,'Fire_Golem','Fire Golem',24,50,50,-393.000,-201.000,399.000,185); -INSERT INTO `mob_spawn_points` VALUES (17621123,0,'Water_Golem','Water Golem',25,50,50,-397.000,-201.000,395.000,185); -INSERT INTO `mob_spawn_points` VALUES (17621124,0,'Wind_Golem','Wind Golem',26,50,50,-404.000,-201.000,399.000,195); -INSERT INTO `mob_spawn_points` VALUES (17621125,0,'Earth_Golem','Earth Golem',27,50,50,-402.000,-201.000,395.000,195); -INSERT INTO `mob_spawn_points` VALUES (17621127,0,'Fire_Golem','Fire Golem',24,50,50,7.073,-1.000,-0.901,185); -INSERT INTO `mob_spawn_points` VALUES (17621128,0,'Water_Golem','Water Golem',25,50,50,3.073,-1.000,-4.901,185); -INSERT INTO `mob_spawn_points` VALUES (17621129,0,'Wind_Golem','Wind Golem',26,50,50,-3.927,-1.000,-0.901,195); -INSERT INTO `mob_spawn_points` VALUES (17621130,0,'Earth_Golem','Earth Golem',27,50,50,-1.927,-1.000,-4.901,195); -INSERT INTO `mob_spawn_points` VALUES (17621132,0,'Fire_Golem','Fire Golem',24,50,50,407.028,199.000,-400.677,185); -INSERT INTO `mob_spawn_points` VALUES (17621133,0,'Water_Golem','Water Golem',25,50,50,403.028,199.000,-404.677,185); -INSERT INTO `mob_spawn_points` VALUES (17621134,0,'Wind_Golem','Wind Golem',26,50,50,396.028,199.000,-400.677,195); -INSERT INTO `mob_spawn_points` VALUES (17621135,0,'Earth_Golem','Earth Golem',27,50,50,398.028,199.000,-404.677,195); +INSERT INTO `mob_spawn_points` VALUES (17621122,0,'Fire_Golem','Fire Golem',24,50,50,-400,-202.125,396,192); +INSERT INTO `mob_spawn_points` VALUES (17621123,0,'Water_Golem','Water Golem',25,50,50,-396,-202.125,400,192); +INSERT INTO `mob_spawn_points` VALUES (17621124,0,'Wind_Golem','Wind Golem',26,50,50,-400,-202.125,404,192); +INSERT INTO `mob_spawn_points` VALUES (17621125,0,'Earth_Golem','Earth Golem',27,50,50,-404,-202.125,400,192); +INSERT INTO `mob_spawn_points` VALUES (17621127,0,'Fire_Golem','Fire Golem',24,50,50,-0.020,-1.625,-3.990,192); +INSERT INTO `mob_spawn_points` VALUES (17621128,0,'Water_Golem','Water Golem',25,50,50,3.980,-1.625,0.010,192); +INSERT INTO `mob_spawn_points` VALUES (17621129,0,'Wind_Golem','Wind Golem',26,50,50,-0.020,-1.625,4.010,192); +INSERT INTO `mob_spawn_points` VALUES (17621130,0,'Earth_Golem','Earth Golem',27,50,50,-4.020,-1.625,0.010,192); +INSERT INTO `mob_spawn_points` VALUES (17621132,0,'Fire_Golem','Fire Golem',24,50,50,399.920,198.375,-403.874,192); +INSERT INTO `mob_spawn_points` VALUES (17621133,0,'Water_Golem','Water Golem',25,50,50,403.920,198.375,-399.874,192); +INSERT INTO `mob_spawn_points` VALUES (17621134,0,'Wind_Golem','Wind Golem',26,50,50,399.920,198.375,-395.874,192); +INSERT INTO `mob_spawn_points` VALUES (17621135,0,'Earth_Golem','Earth Golem',27,50,50,395.920,198.375,-399.874,192); -- Demolition Squad (BS60) INSERT INTO `mob_spawn_points` VALUES (17621137,0,'Nephiyl_Rampartbreacher','Nephiyl Rampartbreacher',28,64,64,-405.001,-202.125,400.001,192);