Skip to content
4 changes: 2 additions & 2 deletions scripts/tests/packets/s2c/0x028_battle2/weaponskills.lua
Original file line number Diff line number Diff line change
Expand Up @@ -478,8 +478,8 @@ local packets =
value = ph.IGNORE,
message = xi.msg.basic.DAMAGE,
bit = 0,
has_proc = false,
has_react = false,
has_proc = ph.IGNORE,
has_react = ph.IGNORE,
},
},
},
Expand Down
15 changes: 13 additions & 2 deletions scripts/zones/Batallia_Downs/mobs/Lumber_Jack.lua
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ entity.onMobInitialize = function(mob)
mob:addImmunity(xi.immunity.TERROR)
mob:addImmunity(xi.immunity.SLOW)
mob:addImmunity(xi.immunity.ELEGY)
mob:addImmunity(xi.immunity.PETRIFY)
-- TODO: BIND or ICE resistance rank
end

entity.onMobSpawn = function(mob)
Expand All @@ -30,9 +32,18 @@ end
entity.onAdditionalEffect = function(mob, target, damage)
if mob:hasStatusEffect(xi.effect.ENSTONE) then
return 0, 0, 0
else
return xi.mob.onAddEffect(mob, target, damage, xi.mob.ae.STUN)
end

local pTable =
{
chance = 20,
effectId = xi.effect.STUN,
duration = 10,
animation = 0,
message = 0,
}

return xi.combat.action.executeAddEffectEnfeeblement(mob, target, pTable)
end
Comment thread
Xaver-DaRed marked this conversation as resolved.

entity.onMobDeath = function(mob, player, optParams)
Expand Down
12 changes: 12 additions & 0 deletions scripts/zones/Beadeaux/mobs/DeVyu_Headhunter.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
-----------------------------------
-- Area: Beadeaux (147)
-- NM: De'Vyu Headhunter
-----------------------------------
---@type TMobEntity
local entity = {}

entity.onMobDespawn = function(mob)
mob:setRespawnTime(math.random(240, 360)) -- 4 to 6 minutes
end

return entity
12 changes: 12 additions & 0 deletions scripts/zones/Beadeaux/mobs/GoBhu_Gascon.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
-----------------------------------
-- Area: Beadeaux (147)
-- NM: Go'Bhu Gascon
-----------------------------------
---@type TMobEntity
local entity = {}

entity.onMobDespawn = function(mob)
mob:setRespawnTime(math.random(240, 360)) -- 4 to 6 minutes
end

return entity
2 changes: 1 addition & 1 deletion scripts/zones/Giddeus/mobs/Eyy_Mon_the_Ironbreaker.lua
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ entity.onMobDeath = function(mob, player, optParams)
end

entity.onMobDespawn = function(mob)
mob:setRespawnTime(math.random(900, 1200)) -- 15 to 20 minutes
mob:setRespawnTime(math.random(240, 360)) -- 4 to 6 minutes
end

return entity
12 changes: 12 additions & 0 deletions scripts/zones/Grauberg_[S]/mobs/Sarcopsylla.lua
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,18 @@ entity.onAdditionalEffect = function(mob, target, damage)
return xi.combat.action.executeAddEffectDamage(mob, target, pTable)
end

entity.onMobSpellChoose = function(mob, target, spellId)
local spellList =
{
xi.magic.spell.FIRE_III,
xi.magic.spell.FIRAGA_III,
xi.magic.spell.FLARE,
xi.magic.spell.BURN,
}

return spellList[math.random(1, #spellList)]
end

entity.onMobDeath = function(mob, player, optParams)
xi.hunts.checkHunt(mob, player, 502)
end
Expand Down
4 changes: 4 additions & 0 deletions scripts/zones/Monastic_Cavern/mobs/Orcish_Hexspinner.lua
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,8 @@ local entity = {}
entity.onMobDeath = function(mob, player, optParams)
end

entity.onMobDespawn = function(mob)
mob:setRespawnTime(math.random(1260, 1440)) -- 21 to 24 minutes
end

return entity
4 changes: 4 additions & 0 deletions scripts/zones/Monastic_Cavern/mobs/Orcish_Warlord.lua
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,8 @@ local entity = {}
entity.onMobDeath = function(mob, player, optParams)
end

entity.onMobDespawn = function(mob)
mob:setRespawnTime(math.random(1260, 1440)) -- 21 to 24 minutes
end

return entity
16 changes: 16 additions & 0 deletions scripts/zones/The_Eldieme_Necropolis/mobs/Anemone.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
-----------------------------------
-- Area: The Eldieme Necropolis (195)
-- NM: Anemone
-----------------------------------
---@type TMobEntity
local entity = {}

entity.onMobInitialize = function(mob)
mob:setRespawnTime(math.random(64800, 86400)) -- 18 to 24 hours
end

entity.onMobDespawn = function(mob)
mob:setRespawnTime(math.random(64800, 86400)) -- 18 to 24 hours
end

return entity
387 changes: 194 additions & 193 deletions sql/mob_groups.sql

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion sql/mob_pools.sql
Original file line number Diff line number Diff line change
Expand Up @@ -4938,7 +4938,7 @@ INSERT INTO `mob_pools` VALUES (4879,'Larkish_Opo-opo','Larkish_Opo-opo',188,0x0
INSERT INTO `mob_pools` VALUES (4880,'Furfluff_Lapinion','Furfluff_Lapinion',206,0x0000910700000000000000000000000000000000,1,1,7,240,100,0,0,0,0,2,0,0,1,131,0,0,0,0,0,206,206,1,12);
INSERT INTO `mob_pools` VALUES (4881,'Uprooted_Sapling','Uprooted_Sapling',216,0x0000880100000000000000000000000000000000,1,1,7,240,100,0,0,0,1,2,0,0,1,1155,0,0,0,0,0,216,216,1,12);
INSERT INTO `mob_pools` VALUES (4882,'Twitherym_Windstorm','Twitherym_Windstorm',338,0x0000E80900000000000000000000000000000000,1,1,12,240,100,0,1,0,1,0,0,0,0,131,0,0,0,0,0,338,338,1,8);
INSERT INTO `mob_pools` VALUES (4883,'Sarcopsylla','Sarcopsylla',64,0x0000B70800000000000000000000000000000000,6,4,2,150,100,0,1,0,0,2,0,0,1,2691,8,0,505,0,1024,64,64,1,6);
INSERT INTO `mob_pools` VALUES (4883,'Sarcopsylla','Sarcopsylla',64,0x0000B70800000000000000000000000000000000,6,4,2,150,100,0,1,0,0,2,0,0,1,2691,8,0,0,0,1024,64,64,1,6);
INSERT INTO `mob_pools` VALUES (4884,'Fetid_Twitherym','Fetid_Twitherym',338,0x0000E80900000000000000000000000000000000,1,1,12,240,100,0,1,0,1,0,0,64,7,131,0,0,0,0,0,338,338,1,8);
INSERT INTO `mob_pools` VALUES (4885,'Somber_Obdella','Somber_Obdella',172,0x00008E0700000000000000000000000000000000,1,1,7,240,100,0,1,0,1,0,0,0,1,643,8,0,0,0,0,172,172,1,11);
INSERT INTO `mob_pools` VALUES (4886,'Craklaw_FdH','Craklaw_FdH',344,0x0000FB0900000000000000000000000000000000,7,7,12,240,100,0,1,0,0,2,0,0,1,131,0,0,0,0,0,344,344,1,16);
Expand Down
24 changes: 12 additions & 12 deletions sql/mob_spawn_points.sql
Original file line number Diff line number Diff line change
Expand Up @@ -55164,27 +55164,27 @@ INSERT INTO `mob_spawn_points` VALUES (17404137,0,'Skimmer','Skimmer',20,72,74,5
INSERT INTO `mob_spawn_points` VALUES (17404138,0,'Skimmer','Skimmer',20,72,74,-41.950,-18.440,-63.250,182);
INSERT INTO `mob_spawn_points` VALUES (17404139,0,'Skimmer','Skimmer',20,72,74,16.642,-18.670,-9.464,191);
INSERT INTO `mob_spawn_points` VALUES (17404140,0,'Skimmer','Skimmer',20,72,74,36.412,-18.646,-47.014,58);
INSERT INTO `mob_spawn_points` VALUES (17404141,0,'Steelshell','Steelshell',21,73,76,15.545,-18.570,-17.527,99);
INSERT INTO `mob_spawn_points` VALUES (17404142,0,'Steelshell','Steelshell',21,73,76,26.763,-18.580,-32.549,46);
INSERT INTO `mob_spawn_points` VALUES (17404143,0,'Steelshell','Steelshell',21,73,76,16.000,-18.000,-88.000,38);
INSERT INTO `mob_spawn_points` VALUES (17404144,0,'Steelshell','Steelshell',21,73,76,7.103,-20.950,-49.950,27);
INSERT INTO `mob_spawn_points` VALUES (17404141,0,'Steelshell','Steelshell',42,73,76,15.545,-18.570,-17.527,99);
INSERT INTO `mob_spawn_points` VALUES (17404142,0,'Steelshell','Steelshell',42,73,76,26.763,-18.580,-32.549,46);
INSERT INTO `mob_spawn_points` VALUES (17404143,0,'Steelshell','Steelshell',42,73,76,16.000,-18.000,-88.000,38);
INSERT INTO `mob_spawn_points` VALUES (17404144,0,'Steelshell','Steelshell',42,73,76,7.103,-20.950,-49.950,27);
INSERT INTO `mob_spawn_points` VALUES (17404145,0,'Water_Elemental','Water Elemental',13,69,72,29.784,-18.520,-24.531,253);
INSERT INTO `mob_spawn_points` VALUES (17404146,0,'Skimmer','Skimmer',20,72,74,50.000,-18.000,-59.000,1);
INSERT INTO `mob_spawn_points` VALUES (17404147,0,'Skimmer','Skimmer',20,72,74,43.947,-18.571,-85.895,127);
INSERT INTO `mob_spawn_points` VALUES (17404148,0,'Steelshell','Steelshell',21,73,76,40.000,-18.000,-34.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404149,0,'Steelshell','Steelshell',21,73,76,21.000,-18.000,-19.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404148,0,'Steelshell','Steelshell',42,73,76,40.000,-18.000,-34.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404149,0,'Steelshell','Steelshell',42,73,76,21.000,-18.000,-19.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404150,0,'Water_Elemental','Water Elemental',13,69,72,0.351,-18.517,-54.159,27);
INSERT INTO `mob_spawn_points` VALUES (17404151,0,'Skimmer','Skimmer',20,72,74,-30.740,-18.670,-58.660,26);
INSERT INTO `mob_spawn_points` VALUES (17404152,0,'Skimmer','Skimmer',20,72,74,-33.990,-18.670,-62.875,239);
INSERT INTO `mob_spawn_points` VALUES (17404153,0,'Steelshell','Steelshell',21,73,76,-16.760,-18.040,-66.820,222);
INSERT INTO `mob_spawn_points` VALUES (17404154,0,'Steelshell','Steelshell',21,73,76,-43.500,-18.610,-60.930,208);
INSERT INTO `mob_spawn_points` VALUES (17404153,0,'Steelshell','Steelshell',42,73,76,-16.760,-18.040,-66.820,222);
INSERT INTO `mob_spawn_points` VALUES (17404154,0,'Steelshell','Steelshell',42,73,76,-43.500,-18.610,-60.930,208);
INSERT INTO `mob_spawn_points` VALUES (17404155,0,'Water_Elemental','Water Elemental',13,69,72,-4.769,-18.620,-41.430,169);
INSERT INTO `mob_spawn_points` VALUES (17404156,0,'Skimmer','Skimmer',20,72,74,19.787,-18.670,-109.080,95);
INSERT INTO `mob_spawn_points` VALUES (17404157,0,'Skimmer','Skimmer',20,72,74,22.735,-18.520,-88.225,198);
INSERT INTO `mob_spawn_points` VALUES (17404158,0,'Steelshell','Steelshell',21,73,76,21.000,-18.000,-122.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404159,0,'Steelshell','Steelshell',21,73,76,16.853,-18.350,-99.209,138);
INSERT INTO `mob_spawn_points` VALUES (17404160,0,'Steelshell','Steelshell',21,73,76,-10.000,-18.000,-82.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404161,0,'Steelshell','Steelshell',21,73,76,24.826,-18.760,-106.770,196);
INSERT INTO `mob_spawn_points` VALUES (17404158,0,'Steelshell','Steelshell',42,73,76,21.000,-18.000,-122.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404159,0,'Steelshell','Steelshell',42,73,76,16.853,-18.350,-99.209,138);
INSERT INTO `mob_spawn_points` VALUES (17404160,0,'Steelshell','Steelshell',42,73,76,-10.000,-18.000,-82.000,127);
INSERT INTO `mob_spawn_points` VALUES (17404161,0,'Steelshell','Steelshell',42,73,76,24.826,-18.760,-106.770,196);
INSERT INTO `mob_spawn_points` VALUES (17404162,0,'Water_Elemental','Water Elemental',13,69,72,19.773,-18.520,-77.761,136);
INSERT INTO `mob_spawn_points` VALUES (17404163,0,'Skimmer','Skimmer',20,72,74,55.773,-18.620,-164.800,48);
INSERT INTO `mob_spawn_points` VALUES (17404164,0,'Skimmer','Skimmer',20,72,74,42.269,-18.720,-157.350,101);
Expand Down
6 changes: 1 addition & 5 deletions sql/mob_spell_lists.sql
Original file line number Diff line number Diff line change
Expand Up @@ -5020,11 +5020,7 @@ INSERT INTO `mob_spell_lists` VALUES ('Mountain_Worm_NM',504,210,54,255); -- qua
INSERT INTO `mob_spell_lists` VALUES ('Mountain_Worm_NM',504,238,18,50); -- rasp (18~50)
INSERT INTO `mob_spell_lists` VALUES ('Mountain_Worm_NM',504,258,7,255); -- bind (7~255)

-- Sarcopsylla (505)
INSERT INTO `mob_spell_lists` VALUES ('Sarcopsylla',505,146,1,255); -- fire_iii (1~255)
INSERT INTO `mob_spell_lists` VALUES ('Sarcopsylla',505,176,1,255); -- firaga_iii (1~255)
INSERT INTO `mob_spell_lists` VALUES ('Sarcopsylla',505,204,1,255); -- flare (1~255)
INSERT INTO `mob_spell_lists` VALUES ('Sarcopsylla',505,235,1,255); -- burn (1~255)
-- 505 is free

-- Poroggo with Providence (506)
INSERT INTO `mob_spell_lists` VALUES ('Providence',506,57,1,255); -- Haste (1~255)
Expand Down