2023-05-29 18:28:58 -04:00
-----------------------------------
-- MOBMODs
-- maps src/map/mob_modifier.h
-- always edit both
-----------------------------------
xi = xi or { }
2024-08-25 17:54:24 -04:00
---@enum xi.mobMod
2023-05-29 18:28:58 -04:00
xi.mobMod =
{
NONE = 0 ,
GIL_MIN = 1 , -- minimum gil drop -- spawn mod only
GIL_MAX = 2 , -- maximum gil drop -- spawn mod only
MP_BASE = 3 , -- Give mob mp. Used for mobs that are not mages, wyverns, avatars
SIGHT_RANGE = 4 , -- sight range
SOUND_RANGE = 5 , -- sound range
BUFF_CHANCE = 6 , -- % chance to buff (combat only)
GA_CHANCE = 7 , -- % chance to use -ga spell
HEAL_CHANCE = 8 , -- % chance to use heal
HP_HEAL_CHANCE = 9 , -- can cast cures below this HP %
2025-10-01 07:31:47 -07:00
SUBLINK = 10 , -- Sub link group. Enables mobs from different families to link if they share a SUBLINK value.
2023-05-29 18:28:58 -04:00
LINK_RADIUS = 11 , -- link radius
2025-01-15 15:49:56 -07:00
SEES_THROUGH_ILLUSION = 12 , -- Mob can see through the Illusion effect that grants effects similar to Sneak & Invisible without this mod and allows aggro (see Viscious Liquid in mamook)
2023-05-29 18:28:58 -04:00
SEVERE_SPELL_CHANCE = 13 , -- % chance to use a severe spell like death or impact
SKILL_LIST = 14 , -- uses given mob skill list
MUG_GIL = 15 , -- amount gil carried for mugging
DETECTION = 16 , -- Overrides mob family's detection method. In order to set to override to none an unused bit must be set such as DETECT_NONE1.
NO_DESPAWN = 17 , -- do not despawn when too far from spawn. Gob Diggers have this.
VAR = 18 , -- temp var for whatever. Gets cleared on spawn
CAN_SHIELD_BLOCK = 19 , -- toggle shield use for mobs without physical shields (trusts)
2026-01-31 20:16:11 -07:00
NO_H2H_PENALTY = 20 , -- Disables H2H penalty in base damage calculation when set to non-zero
2023-05-29 18:28:58 -04:00
PET_SPELL_LIST = 21 , -- set pet spell list
NA_CHANCE = 22 , -- % chance to cast -na
IMMUNITY = 23 , -- immune to set status effects. This only works from the db, not scripts
GRADUAL_RAGE = 24 , -- (!) TODO: NOT YET IMPLEMENTED -- gradually rages
BUILD_RESIST = 25 , -- (!) TODO: NOT YET IMPLEMENTED -- builds resistance to given effects
2025-01-19 03:07:08 -05:00
SUPERLINK = 26 , -- super link group. Only use this in scripts!
2023-05-29 18:28:58 -04:00
SPELL_LIST = 27 , -- set spell list
EXP_BONUS = 28 , -- bonus exp (bonus / 100) negative values reduce exp.
ASSIST = 29 , -- mobs will assist me
SPECIAL_SKILL = 30 , -- give special skill (example: Gigas boulder ranged attack)
ROAM_DISTANCE = 31 , -- distance allowed to roam from spawn
DONT_ROAM_HOME = 32 , -- Allow mobs to roam any distance from spawn. Useful for mobs with scripted roaming behavior.
SPECIAL_COOL = 33 , -- cool down for special (example: Time between Gigas boulder ranged attacks)
2025-12-06 19:28:03 -05:00
MAGIC_COOL = 34 , -- Spell cooldown (time between casting spells) This value is over-ridden if mob is in standback mode, use STANDBACK_COOL for standback cooldown.
STANDBACK_COOL = 35 , -- Cooldown time between RANGED ATTACKS and MAGIC SPELLS while in standback mode.
2023-05-29 18:28:58 -04:00
ROAM_COOL = 36 , -- cool down time in seconds after roaming
ALWAYS_AGGRO = 37 , -- aggro regardless of level. Spheroids
NO_DROPS = 38 , -- If set monster cannot drop any items, not even seals.
SHARE_POS = 39 , -- share a pos with another mob (eald'narche exoplates)
TELEPORT_CD = 40 , -- cooldown for teleport abilities (tarutaru AA, angra mainyu, eald'narche)
TELEPORT_START = 41 , -- mobskill ID to begin teleport
TELEPORT_END = 42 , -- mobskill ID to end teleport
TELEPORT_TYPE = 43 , -- teleport type - 1: on cooldown, 2 - to close distance
DUAL_WIELD = 44 , -- enables a mob to use their offhand in attacks
ADD_EFFECT = 45 , -- enables additional effect script to process on mobs attacks
AUTO_SPIKES = 46 , -- enables additional effect script to process when mob is attacked
SPAWN_LEASH = 47 , -- forces a mob to not move farther from its spawn than its leash distance
SHARE_TARGET = 48 , -- mob always targets same target as ID in this var
CHECK_AS_NM = 49 , -- If set, a mob will check as a NM.
ROAM_RESET_FACING = 50 , -- Resume facing the default spawn rotation after roaming home.
ROAM_TURNS = 51 , -- Maximum amount of turns during a roam
ROAM_RATE = 52 , -- Roaming frequency. roam_cool - rand(roam_cool / (roam_rate / 10))
BEHAVIOR = 53 , -- Add behaviors to mob
GIL_BONUS = 54 , -- Allow mob to drop gil. Multiplier to gil dropped by mob (bonus / 100) * total
IDLE_DESPAWN = 55 , -- Time (in seconds) to despawn after being idle
HP_STANDBACK = 56 , -- mob will always standback with hp % higher to value
MAGIC_DELAY = 57 , -- Amount of seconds mob waits before casting first spell
SPECIAL_DELAY = 58 , -- Amount of seconds mob waits before using first special
WEAPON_BONUS = 59 , -- Add a flat modifer mob weapon damage ( damage + bonus )
SPAWN_ANIMATIONSUB = 60 , -- reset animationsub to this on spawn
HP_SCALE = 61 , -- Scale the mobs max HP. ( hp_scale / 100 ) * maxhp
NO_STANDBACK = 62 , -- Mob will never standback
ATTACK_SKILL_LIST = 63 , -- skill list to use in place of regular attacks
CHARMABLE = 64 , -- mob is charmable
NO_MOVE = 65 , -- Mob will not be able to move
MULTI_HIT = 66 , -- Mob will have as many swings as defined.
NO_AGGRO = 67 , -- If set, mob cannot aggro until unset.
ALLI_HATE = 68 , -- Range around target to add alliance member to enmity list.
NO_LINK = 69 , -- If set, mob cannot link until unset.
NO_REST = 70 , -- Mob cannot regain hp (e.g. re-burrowing antlions during ENM).
2024-06-29 08:46:43 -07:00
LEADER = 71 , -- Used for mob following. Positive number is how many followers a leader has. A negative number is the distance from this mob ID to the leader ID.
2023-05-29 18:28:58 -04:00
MAGIC_RANGE = 72 , -- magic aggro range
TARGET_DISTANCE_OFFSET = 73 , -- Adjusts how close a mob will move to it's target. 12 = 1.2 yalm. Positive values to go closer, negative farther.
ONE_WAY_LINKING = 74 , -- Will link with other mobs in its party (typically the same mob family) while roaming, but will not let others link with it once engaged
CAN_PARRY = 75 , -- Check if a mob is allowed to have parry rank (Rank Value 1-5)
NO_WIDESCAN = 76 , -- Disables widescan for a specific mob
2023-06-28 20:54:03 +01:00
TRUST_DISTANCE = 77 , -- TRUSTS ONLY: Set movement type/distance. See trust.lua for details.
2024-07-16 06:15:44 -04:00
STANDBACK_RANGE = 78 , -- Applies a specific standback range for the mob
2024-07-18 23:29:32 +03:00
CANNOT_GUARD = 79 , -- Check if the mob does not guard (despite being a MNK or PUP mob)
2024-08-19 15:28:39 +03:00
SKIP_ALLEGIANCE_CHECK = 80 , -- Skip the allegiance check for valid target (allows for example a mob to cast a TARGET_ENEMY spell on itself)
2023-09-13 12:36:06 +01:00
ABILITY_RESPONSE = 81 , -- Mob can respond to player ability use with onPlayerAbilityUse()
2024-12-17 01:27:57 -05:00
RUN_SPEED_MULT = 82 , -- Multiplier for the speed of a mob while running (generally when the target is out of range) 100 = 1.00x
2025-03-17 12:00:25 -06:00
CLAIM_TYPE = 83 , -- Changes the claim behavior of the mob. See xi.claimType enum.
2025-09-02 09:28:09 -06:00
NO_SPELL_COST = 84 , -- Mob does not use MP when casting spells
2025-09-15 10:42:58 -05:00
ASTRAL_PET_OFFSET = 85 , -- If non-zero, defines the offset from main mob's ID for astral flow (if zero, will assume offset of 2)
2025-09-23 13:58:05 -07:00
BASE_DAMAGE_MULTIPLIER = 86 , -- Multiplies the mob's base damage. Example: 150 = x1.5
DAMAGE_OFFSET = 87 , -- Adds or subtracts the mob's base damage offset.
RANGED_DAMAGE_OFFSET = 88 , -- Adds or subtracts the mob's ranged base damage offset.
2025-10-05 22:38:40 -05:00
AVATAR_PETID = 89 , -- A value from xi.petId to select model/ability from when owner uses astral flow
AVATAR_ASTRAL_DELAY = 90 , -- Number of milliseconds to delay AF after avatar spawn
2025-09-30 13:11:41 -07:00
H2H_SINGLE_SWING = 91 , -- Mob will have only one swing per attack even as MNK with H2H skill
2025-12-16 06:45:32 -07:00
AOE_HIT_ALL = 92 , -- Mob AoE can hit any player regardless of enmity
2026-05-03 15:47:56 -04:00
RANGED_ATTACK_RANGE = 93 , -- Max range for ranged auto attacks. Mob will move closer if target is beyond this range.
2026-05-04 21:02:15 -07:00
FOLLOW_LEASH_RANGE = 94 , -- Distance the leader can walk before their followers start moving. Applied to followers.
FOLLOW_STOP_RANGE = 95 , -- Distance the followers attempt to stop at once their leader stops moving. Applied to followers.
2026-05-16 11:47:14 +01:00
TRUST_SHIELD_SIZE = 96 , -- TRUSTS ONLY: Set the size of the mob's shield. 3 = Default size, only used for trusts that use shields.
2023-05-29 18:28:58 -04:00
}