Skip to content

Commit

Permalink
Ceizak NM - Transcendent Scorpion HP, Level & Skill Adjustments
Browse files Browse the repository at this point in the history
  • Loading branch information
Yuch committed Feb 11, 2025
1 parent 8fc6773 commit ac79be6
Show file tree
Hide file tree
Showing 8 changed files with 127 additions and 6 deletions.
20 changes: 20 additions & 0 deletions scripts/actions/mobskills/hell_scissors.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
-----------------------------------
-- Hell Scissors
-- Description: Damage equal to 95% of target's HP.
-- Type: Physical (Slashing)
-----------------------------------
---@type TMobSkill
local mobskillObject = {}

mobskillObject.onMobSkillCheck = function(target, mob, skill)
return 0
end

mobskillObject.onMobWeaponSkill = function(target, mob, skill)
local dmg = target:getHP() * 0.95
target:takeDamage(dmg, mob, xi.attackType.PHYSICAL, xi.damageType.SLASHING)
mob:resetEnmity(target)
return dmg
end

return mobskillObject
2 changes: 2 additions & 0 deletions scripts/enum/mob_skills.lua
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,8 @@ xi.mobSkill =

BOREAS_MANTLE = 1980, -- Unique entry.

HELL_SCISSORS = 2221,

QUEASYSHROOM_2 = 2232,

ROAR_3 = 2406,
Expand Down
61 changes: 61 additions & 0 deletions scripts/zones/Ceizak_Battlegrounds/mobs/Transcendent_Scorpion.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
-----------------------------------
-- Area: Ceizak Battlegrounds
-- NM: Transcendent Scorpion
-- !pos 160 0 -400 261
-- !additem 6013
-----------------------------------
---@type TMobEntity
local entity = {}

local removables = {
xi.effect.FLASH, xi.effect.BLINDNESS, xi.effect.ELEGY, xi.effect.REQUIEM,
xi.effect.PARALYSIS, xi.effect.POISON, xi.effect.DISEASE, xi.effect.PLAGUE,
xi.effect.WEIGHT, xi.effect.BIND, xi.effect.BIO, xi.effect.DIA, xi.effect.BURN,
xi.effect.FROST, xi.effect.CHOKE, xi.effect.RASP, xi.effect.SHOCK, xi.effect.DROWN,
xi.effect.STR_DOWN, xi.effect.DEX_DOWN, xi.effect.VIT_DOWN, xi.effect.AGI_DOWN,
xi.effect.INT_DOWN, xi.effect.MND_DOWN, xi.effect.CHR_DOWN, xi.effect.ADDLE, xi.effect.SLOW,
xi.effect.HELIX, xi.effect.ACCURACY_DOWN, xi.effect.ATTACK_DOWN, xi.effect.EVASION_DOWN,
xi.effect.DEFENSE_DOWN, xi.effect.MAGIC_ACC_DOWN, xi.effect.MAGIC_ATK_DOWN,
xi.effect.MAGIC_EVASION_DOWN, xi.effect.MAGIC_DEF_DOWN, xi.effect.MAX_TP_DOWN,
xi.effect.MAX_MP_DOWN, xi.effect.MAX_HP_DOWN
}

local function removeSpecificDebuffs(mob)
local numEffectsRemoved = 0
for _, effect in ipairs(removables) do
if mob:hasStatusEffect(effect) then
mob:delStatusEffect(effect)
numEffectsRemoved = numEffectsRemoved + 1
end
end

return numEffectsRemoved
end

entity.onMobFight = function(mob, target)
if mob:getHPP() <= 50 then
mob:setMobMod(xi.mobMod.SKILL_LIST, 2021)
else
mob:setMobMod(xi.mobMod.SKILL_LIST, 2020)
end
end

entity.onMobSpawn = function(mob)
mob:addListener('WEAPONSKILL_USE', 'ALL_MOBSKILL_CHECK', function(mobArg, target, skillID, tp, action)
local effectsRemoved = removeSpecificDebuffs(mob)
if effectsRemoved > 0 then
local hateList = mob:getEnmityList()
for _, hateEntity in ipairs(hateList) do
local player = hateEntity.entity
if player and player:isPC() then
player:messageSpecial(zones[xi.zone.CEIZAK_BATTLEGROUNDS].text.SPRING_STEP)
end
end
end
end)
end

entity.onMobDeath = function(mob)
end

return entity
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ entity.onTrade = function(player, npc, trade)
npcUtil.popFromQM(player, npc, ID.mob.TRANSCENDENT_SCORPION, { radius = 1 })
then
player:confirmTrade()
player:messageSpecial(ID.text.MONSTER_APPEAR)
end
end

Expand Down
6 changes: 3 additions & 3 deletions sql/mob_groups.sql
Original file line number Diff line number Diff line change
Expand Up @@ -14178,10 +14178,10 @@ INSERT INTO `mob_groups` VALUES (35,4749,261,'Lavender_Twitherym',0,128,0,19000,
INSERT INTO `mob_groups` VALUES (36,4927,261,'Colkhab',0,128,0,0,9999,116,116,0);
INSERT INTO `mob_groups` VALUES (37,0,261,'Rapier_Hornet',0,128,0,0,0,0,0,0);

-- delve
-- delve nm
INSERT INTO `mob_groups` VALUES (38,4862,261,'Unfettered_Twitherym',0,128,0,60000,9999,110,110,0);
INSERT INTO `mob_groups` VALUES (39,4863,261,'Supernal_Chapuli',0,128,0,0,0,107,109,0);
INSERT INTO `mob_groups` VALUES (40,6911,261,'Transcendent_Scorpion',0,128,0,0,0,0,0,0);
INSERT INTO `mob_groups` VALUES (40,6911,261,'Transcendent_Scorpion',0,128,0,96500,0,110,110,0);
INSERT INTO `mob_groups` VALUES (41,6912,261,'Mastop',0,128,0,0,0,0,0,0);
INSERT INTO `mob_groups` VALUES (42,4864,261,'Taxet',0,128,0,0,0,107,109,0);

Expand Down Expand Up @@ -14722,7 +14722,7 @@ INSERT INTO `mob_groups` VALUES (46,5250,270,'Imposing_Dullahan',330,0,0,0,0,127
INSERT INTO `mob_groups` VALUES (47,6601,270,'Hefty_Marolith',330,0,0,0,0,127,128,0);

-- ------------------------------------------------------------
-- Cirdas_Caverns_[U] (Zone 271)
-- Cirdas_Caverns_[U] (Zone 271) -- delve ceizak
-- ------------------------------------------------------------

INSERT INTO `mob_groups` VALUES (1,0,271,'Rufescent_Bat',0,128,0,0,0,0,0,0);
Expand Down
2 changes: 1 addition & 1 deletion sql/mob_pools.sql
Original file line number Diff line number Diff line change
Expand Up @@ -6950,7 +6950,7 @@ INSERT INTO `mob_pools` VALUES (6907,'Voso','Voso',71,0x00006F010000000000000000
INSERT INTO `mob_pools` VALUES (6908,'Bothersome_Chapuli','Bothersome_Chapuli',339,0x0000F10900000000000000000000000000000000,12,12,7,240,100,0,1,1,1,2,0,0,0,131,0,0,0,0,0,339,339);
INSERT INTO `mob_pools` VALUES (6909,'Molted_Mantis','Molted_Mantis',340,0x0000380800000000000000000000000000000000,4,4,12,240,100,0,1,1,0,2,0,0,0,643,8,0,2,0,0,340,340);
INSERT INTO `mob_pools` VALUES (6910,'Prosperous_Luckybug','Prosperous_Luckybug',170,0x0000E30700000000000000000000000000000000,6,6,7,220,100,0,1,1,0,2,0,0,0,643,0,0,0,0,0,170,170);
INSERT INTO `mob_pools` VALUES (6911,'Transcendent_Scorpion','Transcendent_Scorpion',217,0x00003B0800000000000000000000000000000000,1,1,5,240,100,0,1,1,1,2,0,0,0,135,0,0,0,0,0,217,217);
INSERT INTO `mob_pools` VALUES (6911,'Transcendent_Scorpion','Transcendent_Scorpion',217,0x00003B0800000000000000000000000000000000,1,12,5,240,100,0,1,1,1,2,0,0,0,135,0,0,0,0,0,2020,217);
INSERT INTO `mob_pools` VALUES (6912,'Mastop','Mastop',131,0x0000DD0700000000000000000000000000000000,4,4,3,240,100,0,1,1,1,2,0,32,0,159,0,0,0,0,0,131,131);
INSERT INTO `mob_pools` VALUES (6913,'Gurgling_Crab','Gurgling_Crab',77,0x0000640100000000000000000000000000000000,7,7,4,240,100,0,1,0,0,4,0,0,0,129,8,0,0,0,0,77,77);
INSERT INTO `mob_pools` VALUES (6914,'Famished_Jagil','Famished_Jagil',197,0x00005D0100000000000000000000000000000000,1,1,8,240,100,0,1,0,1,4,0,0,0,129,0,0,0,0,0,197,197);
Expand Down
39 changes: 38 additions & 1 deletion sql/mob_skill_lists.sql
Original file line number Diff line number Diff line change
Expand Up @@ -3954,7 +3954,44 @@ INSERT INTO `mob_skill_lists` VALUES ('Unfettered_Twitherym',2017,2952); -- blac

INSERT INTO `mob_skill_lists` VALUES ('Unfettered_Twitherym_low_50',2018,2953); -- smouldering_swarm

-- Next available ID: 2019
/*INSERT INTO `mob_skill_lists` VALUES ('Supernal_Chapuli',2019,2945); -- natures_meditation
INSERT INTO `mob_skill_lists` VALUES ('Supernal_Chapuli',2019,2946); -- sensilla_blades
INSERT INTO `mob_skill_lists` VALUES ('Supernal_Chapuli',2019,2947); -- tegmina_buffet
INSERT INTO `mob_skill_lists` VALUES ('Supernal_Chapuli',2019,2948); -- sanguinary_slash*/

INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion',2020,353); -- death_scissors
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion',2020,354); -- wild_rage
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion',2020,356); -- sharp_strike

INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion_low_50',2021,353); -- death_scissors (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion_low_50',2021,354); -- wild_rage (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion_low_50',2021,356); -- sharp_strike (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion_low_50',2021,721); -- stasis (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion_low_50',2021,723); -- earthbreaker (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Transcendent_Scorpion_low_50',2021,2221); -- hell_scissors (Below 50%)

/*INSERT INTO `mob_skill_lists` VALUES ('Mastop',2022,2158); -- insipid_nip
INSERT INTO `mob_skill_lists` VALUES ('Mastop',2022,2160); -- bombilation
INSERT INTO `mob_skill_lists` VALUES ('Mastop',2022,2161); -- cimicine_discharge
INSERT INTO `mob_skill_lists` VALUES ('Mastop',2022,2162); -- emetic_discharge
INSERT INTO `mob_skill_lists` VALUES ('Mastop',2022,2770); -- booming_bombination*/

/*INSERT INTO `mob_skill_lists` VALUES ('Taxet',2023,1951); -- magma_fan
INSERT INTO `mob_skill_lists` VALUES ('Taxet',2023,1952); -- erratic_flutter
INSERT INTO `mob_skill_lists` VALUES ('Taxet',2023,1953); -- proboscis
INSERT INTO `mob_skill_lists` VALUES ('Taxet',2023,1954); -- erosion_dust
INSERT INTO `mob_skill_lists` VALUES ('Taxet',2023,1955); -- exuviation
INSERT INTO `mob_skill_lists` VALUES ('Taxet',2023,1956); -- fire_break
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,1951); -- magma_fan (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,1952); -- erratic_flutter (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,1953); -- proboscis (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,1954); -- erosion_dust (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,1955); -- exuviation (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,1956); -- fire_break (Below 50%)
INSERT INTO `mob_skill_lists` VALUES ('Taxet_low_50',2024,3044); -- benumbing_blaze (Below 50%)*/

-- Next ID : 2025

-- ------------------------------------------------------------
-- Start of Ambuscade section
Expand Down
2 changes: 1 addition & 1 deletion sql/mob_skills.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2234,7 +2234,7 @@ INSERT INTO `mob_skills` VALUES (2217,1598,'berserk',0,0.0,7.0,2000,1000,1,0,0,0
INSERT INTO `mob_skills` VALUES (2218,1599,'penumbral_impact',0,0.0,7.0,2000,1000,4,0,0,0,0,0,0);
INSERT INTO `mob_skills` VALUES (2219,1600,'dark_wave',1,0.0,10.0,2000,1000,4,0,0,0,0,0,0);
-- INSERT INTO `mob_skills` VALUES (2220,1964,'tartarean_storm',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0);
-- INSERT INTO `mob_skills` VALUES (2221,1965,'hell_scissors',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0);
INSERT INTO `mob_skills` VALUES (2221,1965,'hell_scissors',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0);
-- INSERT INTO `mob_skills` VALUES (2222,1602,'hurricane_breath',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0);
-- INSERT INTO `mob_skills` VALUES (2223,1557,'ore_toss',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0);
-- INSERT INTO `mob_skills` VALUES (2224,1558,'head_butt',0,0.0,7.0,2000,1500,4,0,0,0,0,0,0);
Expand Down

0 comments on commit ac79be6

Please sign in to comment.