Files
Bubberstation/code/__DEFINES/basic_mobs.dm
Alexis 21b4095dfd [MDB IGNORE] [IDB IGNORE] Upstream Sync - 04/17/2026 (#5453)
Upstream 04/17/2026

fixes https://github.com/Bubberstation/Bubberstation/issues/5549

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: tgstation-ci[bot] <179393467+tgstation-ci[bot]@users.noreply.github.com>
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
Co-authored-by: rageguy505 <54517726+rageguy505@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
Co-authored-by: Aliceee2ch <160794176+Aliceee2ch@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
Co-authored-by: Tsar-Salat <62388554+Tsar-Salat@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
Co-authored-by: Maxipat <108554989+Maxipat112@users.noreply.github.com>
Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: SimplyLogan <47579821+loganuk@users.noreply.github.com>
Co-authored-by: loganuk <fakeemail123@aol.com>
Co-authored-by: Leland Kemble <70413276+lelandkemble@users.noreply.github.com>
Co-authored-by: FalloutFalcon <86381784+FalloutFalcon@users.noreply.github.com>
Co-authored-by: Roxy <75404941+TealSeer@users.noreply.github.com>
Co-authored-by: Lucy <lucy@absolucy.moe>
Co-authored-by: siliconOpossum <138069572+siliconOpossum@users.noreply.github.com>
Co-authored-by: Isratosh <Isratosh@hotmail.com>
Co-authored-by: TheRyeGuyWhoWillNowDie <70169560+TheRyeGuyWhoWillNowDie@users.noreply.github.com>
Co-authored-by: Neocloudy <88008002+Neocloudy@users.noreply.github.com>
Co-authored-by: Alexander V. <volas@ya.ru>
Co-authored-by: ElGitificador <168473461+ElGitificador@users.noreply.github.com>
Co-authored-by: Twaticus <46540570+Twaticus@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: Cameron Lennox <killer65311@gmail.com>
Co-authored-by: Tim <timothymtorres@gmail.com>
Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
Co-authored-by: Layzu666 <121319428+Layzu666@users.noreply.github.com>
Co-authored-by: Arturlang <24881678+Arturlang@users.noreply.github.com>
Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com>
Co-authored-by: mrmanlikesbt <99309552+mrmanlikesbt@users.noreply.github.com>
Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com>
Co-authored-by: John F. Kennedy <54908920+MacaroniCritter@users.noreply.github.com>
Co-authored-by: Cursor <102828457+theselfish@users.noreply.github.com>
Co-authored-by: Josh <josh.adam.powell@gmail.com>
Co-authored-by: Josh Powell <josh.powell@softwire.com>
Co-authored-by: Yobrocharlie <Charliemiller5617@gmail.com>
Co-authored-by: Hardly3D <66234359+Hardly3D@users.noreply.github.com>
Co-authored-by: shayoki <96078776+shayoki@users.noreply.github.com>
Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com>
2026-05-16 00:56:00 +02:00

130 lines
5.1 KiB
Plaintext

///Basic mob flags
/// Stamina threshold to not experience stamina crit
#define BASIC_MOB_NO_STAMCRIT 0
/// Max stamina should be equal to max health
#define BASIC_MOB_STAMINA_MATCH_HEALTH -1
/// Delete mob upon death
#define DEL_ON_DEATH (1<<0)
/// Rotate mob 180 degrees while it is dead
#define FLIP_ON_DEATH (1<<1)
/// Mob remains dense while dead
#define REMAIN_DENSE_WHILE_DEAD (1<<2)
/// Mob can be set on fire
#define FLAMMABLE_MOB (1<<3)
/// Mob never takes damage from unarmed attacks
#define IMMUNE_TO_FISTS (1<<4)
/// Mob is immune to getting wet
#define IMMUNE_TO_GETTING_WET (1<<5)
/// Disables the function of attacking random body zones
#define PRECISE_ATTACK_ZONES (1<<6)
/// People would be sad to see this mob die
#define SENDS_DEATH_MOODLETS (1<<7)
/// Temporary trait applied when an attack forecast animation has completed
#define TRAIT_BASIC_ATTACK_FORECAST "trait_basic_attack_forecast"
#define INTERACTION_BASIC_ATTACK_FORCEAST "interaction_basic_attack_forecast"
/// Above this speed we stop gliding because it looks silly
#define END_GLIDE_SPEED 10
///hunger cooldown for basic mobs
#define EAT_FOOD_COOLDOWN 45 SECONDS
///mook attack status flags
#define MOOK_ATTACK_NEUTRAL 0
#define MOOK_ATTACK_WARMUP 1
#define MOOK_ATTACK_ACTIVE 2
#define MOOK_ATTACK_STRIKE 3
/// Keeps track of how many gutlunches are born
GLOBAL_VAR_INIT(gutlunch_count, 0)
/// Pet customization settings saved for every client
GLOBAL_LIST_EMPTY(customized_pets)
// Raptor defines
/// Raptor chick, tiny and very frail
#define RAPTOR_BABY "baby"
/// Raptor youngling, cannot be ridden and has reduced stats, but can hunt by itself just fine
#define RAPTOR_YOUNG "young"
/// Fully grown adult raptor
#define RAPTOR_ADULT "adult"
/// Innate raptor offsets
#define RAPTOR_INNATE_SOURCE "raptor_innate"
// Growth values
/// How much does meal complexity affect our growth?
#define RAPTOR_MEAL_COMPLEXITY_GROWTH_FACTOR 5
/// Base value for raptor growth from meat
#define RAPTOR_GROWTH_BASE_MEAT 15
/// Base value for raptor growth from ash flora
#define RAPTOR_GROWTH_BASE_PLANT 8
/// How much growth progress raptors need to accumulate to fully grow into an adult
#define RAPTOR_GROWTH_REQUIRED 100
/// Minimum random growth value a baby raptor can gain per second
#define RAPTOR_BABY_GROWTH_LOWER 0.8
/// Maximum random growth value a baby raptor can gain per second
#define RAPTOR_BABY_GROWTH_UPPER 1.2
/// How long it takes for a raptor egg to grow up, in seconds
#define RAPTOR_EGG_GROWTH_PROGRESS 100
/// How much happiness percentage affects our growth speed
#define RAPTOR_GROWTH_HAPPINESS_MULTIPLIER 0.0075 // Full happiness increases growth rate by 75%
/// Damage boost per happiness percent
#define RAPTOR_HAPPINESS_DAMAGE_BOOST 0.05
// Raptor inheritance stats
/// Maximum amount of traits a raptor can inherit
#define RAPTOR_TRAIT_INHERIT_AMOUNT 2
/// Minimum modifier to base attack values a raptor can get
#define RAPTOR_INHERIT_MIN_ATTACK -5
/// Maximum modifier to base attack values a raptor can get
#define RAPTOR_INHERIT_MAX_ATTACK 5
/// Minimum modifier to the base health value a raptor can get
#define RAPTOR_INHERIT_MIN_HEALTH -30
/// Maximum modifier to the base health value a raptor can get
#define RAPTOR_INHERIT_MAX_HEALTH 30
/// Minimum modifier to base speed values a raptor can get
#define RAPTOR_INHERIT_MIN_SPEED -0.66
/// Maximum modifier to base speed values a raptor can get
#define RAPTOR_INHERIT_MAX_SPEED 0.66
/// Minimum modifier a raptor can get to their modifiers, such as ability effect and growth speed
#define RAPTOR_INHERIT_MIN_MODIFIER -0.25
/// Maximum modifier a raptor can get to their modifiers, such as ability effect and growth speed
#define RAPTOR_INHERIT_MAX_MODIFIER 0.25
/// Genetic drift for raptors, aka min/max value from the cap that stats can receive when breeding
#define RAPTOR_GENETIC_DRIFT 0.2
/// This mob suffers depression
#define BB_BASIC_DEPRESSED "basic_depressed"
/// This mob will care for its young
#define BB_RAPTOR_MOTHERLY "raptor_motherly"
/// This mob will be playful around their owners
#define BB_RAPTOR_PLAYFUL "raptor_playful"
/// This mob will flee combat when it feels threatened
#define BB_RAPTOR_COWARD "raptor_coward"
/// Our raptor baby target we will take care of
#define BB_RAPTOR_BABY "raptor_baby"
/// The raptor we will heal up
#define BB_INJURED_RAPTOR "injured_raptor"
/// The cooldown for next time we eat
#define BB_RAPTOR_EAT_COOLDOWN "raptor_eat_cooldown"
/// Our trough target
#define BB_RAPTOR_TROUGH_TARGET "raptor_trough_target"
/// HP level at which we'll flee from attackers
#define BB_RAPTOR_FLEE_THRESHOLD "raptor_flee_threshold"
#define MAX_RAPTOR_POP 64
///Return value for [/mob/living/basic/proc/early_melee_attack]. Using this value will make the attack continue as normal.
#define BASIC_MOB_CONTINUE_ATTACK_CHAIN 0
///Return value for [/mob/living/basic/proc/early_melee_attack]. Using this value will make the attack end, but not set a cooldown. This is the default.
#define BASIC_MOB_END_ATTACK_CHAIN 1
///Return value for [/mob/living/basic/proc/early_melee_attack]. Using this value will make the attack end, and sets a cooldown. Useful if you add behavior to early_melee_attack
#define BASIC_MOB_END_ATTACK_CHAIN_COOLDOWN 2