----------------------------------- -- MOBMODs -- maps src/map/mob_modifier.h -- always edit both ----------------------------------- xi = xi or {} ---@enum xi.mobMod 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 % SUBLINK = 10, -- Sub link group. Enables mobs from different families to link if they share a SUBLINK value. LINK_RADIUS = 11, -- link radius 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) 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) NO_H2H_PENALTY = 20, -- Disables H2H penalty in base damage calculation when set to non-zero 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 SUPERLINK = 26, -- super link group. Only use this in scripts! 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) 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. 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). 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. 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 TRUST_DISTANCE = 77, -- TRUSTS ONLY: Set movement type/distance. See trust.lua for details. STANDBACK_RANGE = 78, -- Applies a specific standback range for the mob CANNOT_GUARD = 79, -- Check if the mob does not guard (despite being a MNK or PUP mob) SKIP_ALLEGIANCE_CHECK = 80, -- Skip the allegiance check for valid target (allows for example a mob to cast a TARGET_ENEMY spell on itself) ABILITY_RESPONSE = 81, -- Mob can respond to player ability use with onPlayerAbilityUse() RUN_SPEED_MULT = 82, -- Multiplier for the speed of a mob while running (generally when the target is out of range) 100 = 1.00x CLAIM_TYPE = 83, -- Changes the claim behavior of the mob. See xi.claimType enum. NO_SPELL_COST = 84, -- Mob does not use MP when casting spells 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) 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. 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 H2H_SINGLE_SWING = 91, -- Mob will have only one swing per attack even as MNK with H2H skill AOE_HIT_ALL = 92, -- Mob AoE can hit any player regardless of enmity RANGED_ATTACK_RANGE = 93, -- Max range for ranged auto attacks. Mob will move closer if target is beyond this range. 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. TRUST_SHIELD_SIZE = 96, -- TRUSTS ONLY: Set the size of the mob's shield. 3 = Default size, only used for trusts that use shields. }