* lua_baseentity getShieldSize amend to account for trust * trustentity.cpp: spawn, addition to set maxHP/maxMP for HP/MP mods * trust script audit, set correct values and cleanup * trustentity addition for getShieldSize() and default shield size * naming prefix MOBMOD_TRUST amendment and remove unnecessary comments * Change party wake on sleep gambits to only check for SLEEP_I
108 lines
8.9 KiB
Lua
108 lines
8.9 KiB
Lua
-----------------------------------
|
|
-- 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.
|
|
}
|