/tg/ Station 13 - Modules - TypesDefine Details

code/__DEFINES/fish.dm

FISHING_DUDUse in fish tables to denote miss chance.
FISHING_RANDOM_SEEDUsed in the the hydro tray fishing spot to define a random seed reward
FISHING_RANDOM_ORGANUsed in the surgery fishing spot to define a random organ reward
FISHING_MINIMUM_DIFFICULTYThe minimum value of the difficulty of the minigame (unless it reaches 0 than it's auto-win) Any lower than this and the fish will be way too lethargic for the minigame to be engaging in the slightest.
FAV_BAIT_DIFFICULTY_MODDifficulty modifier when bait is fish's favorite
DISLIKED_BAIT_DIFFICULTY_MODDifficulty modifier when bait is fish's disliked
EXPERT_FISHER_DIFFICULTY_MODDifficulty modifier when our fisherman has the trait TRAIT_EXPERT_FISHER
ROD_SLOT_BAITSlot defines for the fishing rod and its equipment
FISHING_HOOK_WEIGHTEDFishing hook trait that lessens the bounce from hitting the edges of the minigame bar.
FISHING_HOOK_BIDIRECTIONALSee FISHING_MINIGAME_RULE_BIDIRECTIONAL
FISHING_HOOK_NO_ESCAPEPrevents the user from losing the game by letting the fish get away.
FISHING_HOOK_ENSNARELimits the completion loss of the minigame when the fsh is not on the bait area.
FISHING_HOOK_KILLAutomatically kills the fish after a while, at the cost of killing it.
FISHING_LINE_CLOAKEDReduces the difficulty of the minigame
FISHING_LINE_BOUNCYMuch like FISHING_HOOK_ENSNARE but for the fishing line.
FISHING_LINE_STIFFThe sorta opposite of FISHING_LINE_BOUNCY. It makes it slower to gain completion and faster to lose it.
FISHING_LINE_AUTOREELSkip the biting phase and go straight to the fishing phase.
FISHING_MINIGAME_RULE_BIDIRECTIONALKeeps the bait from falling from gravity, instead allowing the player to move the bait down with right click.
FISHING_MINIGAME_RULE_NO_ESCAPEPrevents the player from losing the minigame when the completion reaches 0
FISHING_MINIGAME_RULE_KILLAutomatically kills the fish after a while, at the cost of killing it
FISHING_MINIGAME_RULE_NO_EXPPrevents the fishing skill from having an effect on the minigame and experience from being awarded
FISHING_MINIGAME_RULE_ANTIGRAVIf enabled, the minigame will occasionally screw around and invert the velocity of the bait
FISHING_MINIGAME_RULE_FLIPWill filp the minigame hud for the duration of the effect
FISHING_MINIGAME_AUTOREELSkip the biting phase and go straight to the minigame, avoiding the penalty for having slow reflexes.
FISHING_MINIGAME_RULE_CAMOThe fish will fade in and out at intervals
FISHING_MINIGAME_ACTIVE_EFFECTSall the effects that are active and will last for a few seconds before triggering a cooldown
FISHING_DEFAULT_HOOK_BONUS_ADDITIVEThe default additive value for fishing hook catch weight modifiers.
FISHING_DEFAULT_HOOK_BONUS_MULTIPLICATIVEThe default multiplicative value for fishing hook catch weight modifiers.
AQUARIUM_LAYER_STEPThe distance that should separate each layer of the aquarium
AQUARIUM_MIN_OFFSETAquarium content layer offsets
AQUARIUM_GLASS_LAYERThe layer of the glass overlay
AQUARIUM_BORDERS_LAYERThe layer of the aquarium pane borders
AQUARIUM_BELOW_GLASS_LAYERLayer for stuff rendered below the glass overlay
FISH_SIZE_TINY_MAXFish size thresholds for w_class.
FISH_SIZE_TWO_HANDS_REQUIREDsize threshold for requiring two-handed carry
MAX_FISH_DEVIATION_COEFFThe coefficient for maximum weight/size divergence relative to the averages.
FISH_GRIND_RESULTS_WEIGHT_DIVISORThe volume of the grind results is multiplied by the fish' weight and divided by this.
FISH_FILLET_NUMBER_SIZE_DIVISORThe number of fillets is multiplied by the fish' size and divided by this.
FISH_WEIGHT_SLOWDOWNThe slowdown of the fish when carried begins at this value
FISH_WEIGHT_SLOWDOWN_DIVISORThe value of the slowdown equals to the weight divided by this (and then at the power of a sub-1 exponent)
FISH_WEIGHT_SLOWDOWN_EXPONENTThe sub-one exponent that results in the final slowdown of the fish item
FISH_WEIGHT_FORCE_DIVISORUsed to calculate the force of the fish by comparing (1 + log(weight/this_define)) and the w_class of the item.
FISH_WEIGHT_GRIND_TO_BITE_MULTThe multiplier used in the FISH_WEIGHT_BITE_DIVISOR define
FISH_WEIGHT_BITE_DIVISORUsed to calculate how many bites a fish can take and therefore the amount of reagents it has.
GET_FISH_SLOWDOWNSet of operations that calculate the slowdown of fish based on weight
GET_FISH_WEIGHT_RANKGets a "rank" for fish weight to determine the force of the fish (or fish tank) basically, a gross estimate based on how weight generaly scales up (250, 500, 1000, 2000, 4000 etc...) for most fish
NEW_FISH_BREEDING_TIMEOUT_MULTThe breeding timeout for newly instantiated fish is multiplied by this.
NEW_FISH_LAST_FEEDING_MULTThe last feeding timestamp of newly instantiated fish is multiplied by this: ergo, they spawn 50% hungry.
FISH_FLAG_SHOW_IN_CATALOGThis fish is shown in the catalog and on the wiki (this only matters as an initial, compile-time value)
FISH_DO_FLOP_ANIMThis fish has a flopping animation done through matrices
FISH_FLAG_PETTEDThis fish has been petted in the last 30 seconds
FISH_FLAG_EXPERIMENT_SCANNABLEThis fish can be scanned to complete fish scanning experiments
FISH_FLAG_UPDATING_SIZE_AND_WEIGHTIt lets us know that fish/update_size_and_weight() is currently running.
FISH_FLAG_OVERPOPULATEDFlag added when the population of this fish type exceeeds the stable population inside the aquarium
FISH_FLAG_SAFE_TEMPERATUREFlag added when in an aquarium which temperature is within its safe limits
FISH_FLAG_SAFE_FLUIDFlag added when in an aquarium with the right fluid type.
FISH_RARITY_BASICHow likely one's to find a given fish from random fish cases.
AQUARIUM_FLUID_FRESHWATERAquarium fluid variables. The fish' required fluid has to match this, or it'll slowly die.
AQUARIUM_COMPANYFluff. The name of the aquarium company shown in the fish catalog
ELECTROGENESIS_DURATIONhow long between electrogenesis zaps
ELECTROGENESIS_VARIANCEa random range the electrogenesis cooldown varies by
FISHING_MINIGAME_AREAThe height of the minigame slider. Not in pixels, but minigame units.
FISH_SAFE_COOKING_DURATIONThe fish needs to be cooked for at least this long so that it can be safely eaten
FISH_PROPERTIES_FAV_BAITDefines for fish properties from the collect_fish_properties proc
FISH_BAIT_TYPEDefine for favorite and disliked baits that aren't just item typepaths.
FISH_WEIGHT_MULT_WITHOUT_BAITWe multiply the weight of fish inside the loot table by this value if we are goofy enough to fish without a bait.
FISH_SOURCE_FLAG_EXPLOSIVE_MALUSFlag for fish sources. It makes large explosions less efficient at spawning fish. Meant for lazy fishing spots that cover multiple turfs (rivers, oceans etc.)
FISH_SOURCE_FLAG_NO_BLUESPACE_RODThe fish source is not elegible for random rewards from bluespace fishing rods
FISH_SOURCE_FLAG_SKIP_CATCHABLESIf present, fish that can be caught from this source won't be included in the 'fish caught' score, unless present in other sources without this flag as well.
FISH_AUTOWIKI_FILENAMEA macro to ensure the wikimedia filenames of fish icons are unique, especially since there're a couple fish that have quite ambiguous names/icon_states like "checkered" or "pike"
FISH_SOURCE_AUTOWIKI_NAMEThe list keys for the autowiki for fish sources
FISH_SOURCE_AUTOWIKI_DUDSpecial value for the name key that always comes first when the data is sorted, regardless of weight.
FISH_SOURCE_AUTOWIKI_OTHERSpecial value for the name key that always comes last
FISH_SOURCE_AUTOWIKI_QUESTIONMARKThe filename for the icon for "other stuff" which we don't articulate about on the autowiki

Define Details

AQUARIUM_BELOW_GLASS_LAYER

Layer for stuff rendered below the glass overlay

AQUARIUM_BORDERS_LAYER

The layer of the aquarium pane borders

AQUARIUM_COMPANY

Fluff. The name of the aquarium company shown in the fish catalog

AQUARIUM_FLUID_FRESHWATER

Aquarium fluid variables. The fish' required fluid has to match this, or it'll slowly die.

AQUARIUM_GLASS_LAYER

The layer of the glass overlay

AQUARIUM_LAYER_STEP

The distance that should separate each layer of the aquarium

AQUARIUM_MIN_OFFSET

Aquarium content layer offsets

DISLIKED_BAIT_DIFFICULTY_MOD

Difficulty modifier when bait is fish's disliked

ELECTROGENESIS_DURATION

how long between electrogenesis zaps

ELECTROGENESIS_VARIANCE

a random range the electrogenesis cooldown varies by

EXPERT_FISHER_DIFFICULTY_MOD

Difficulty modifier when our fisherman has the trait TRAIT_EXPERT_FISHER

FAV_BAIT_DIFFICULTY_MOD

Difficulty modifier when bait is fish's favorite

FISHING_DEFAULT_HOOK_BONUS_ADDITIVE

The default additive value for fishing hook catch weight modifiers.

FISHING_DEFAULT_HOOK_BONUS_MULTIPLICATIVE

The default multiplicative value for fishing hook catch weight modifiers.

FISHING_DUD

Use in fish tables to denote miss chance.

FISHING_HOOK_BIDIRECTIONAL

See FISHING_MINIGAME_RULE_BIDIRECTIONAL

FISHING_HOOK_ENSNARE

Limits the completion loss of the minigame when the fsh is not on the bait area.

FISHING_HOOK_KILL

Automatically kills the fish after a while, at the cost of killing it.

FISHING_HOOK_NO_ESCAPE

Prevents the user from losing the game by letting the fish get away.

FISHING_HOOK_WEIGHTED

Fishing hook trait that lessens the bounce from hitting the edges of the minigame bar.

FISHING_LINE_AUTOREEL

Skip the biting phase and go straight to the fishing phase.

FISHING_LINE_BOUNCY

Much like FISHING_HOOK_ENSNARE but for the fishing line.

FISHING_LINE_CLOAKED

Reduces the difficulty of the minigame

FISHING_LINE_STIFF

The sorta opposite of FISHING_LINE_BOUNCY. It makes it slower to gain completion and faster to lose it.

FISHING_MINIGAME_ACTIVE_EFFECTS

all the effects that are active and will last for a few seconds before triggering a cooldown

FISHING_MINIGAME_AREA

The height of the minigame slider. Not in pixels, but minigame units.

FISHING_MINIGAME_AUTOREEL

Skip the biting phase and go straight to the minigame, avoiding the penalty for having slow reflexes.

FISHING_MINIGAME_RULE_ANTIGRAV

If enabled, the minigame will occasionally screw around and invert the velocity of the bait

FISHING_MINIGAME_RULE_BIDIRECTIONAL

Keeps the bait from falling from gravity, instead allowing the player to move the bait down with right click.

FISHING_MINIGAME_RULE_CAMO

The fish will fade in and out at intervals

FISHING_MINIGAME_RULE_FLIP

Will filp the minigame hud for the duration of the effect

FISHING_MINIGAME_RULE_KILL

Automatically kills the fish after a while, at the cost of killing it

FISHING_MINIGAME_RULE_NO_ESCAPE

Prevents the player from losing the minigame when the completion reaches 0

FISHING_MINIGAME_RULE_NO_EXP

Prevents the fishing skill from having an effect on the minigame and experience from being awarded

FISHING_MINIMUM_DIFFICULTY

The minimum value of the difficulty of the minigame (unless it reaches 0 than it's auto-win) Any lower than this and the fish will be way too lethargic for the minigame to be engaging in the slightest.

FISHING_RANDOM_ORGAN

Used in the surgery fishing spot to define a random organ reward

FISHING_RANDOM_SEED

Used in the the hydro tray fishing spot to define a random seed reward

FISH_AUTOWIKI_FILENAME

A macro to ensure the wikimedia filenames of fish icons are unique, especially since there're a couple fish that have quite ambiguous names/icon_states like "checkered" or "pike"

FISH_BAIT_TYPE

Define for favorite and disliked baits that aren't just item typepaths.

FISH_DO_FLOP_ANIM

This fish has a flopping animation done through matrices

FISH_FILLET_NUMBER_SIZE_DIVISOR

The number of fillets is multiplied by the fish' size and divided by this.

FISH_FLAG_EXPERIMENT_SCANNABLE

This fish can be scanned to complete fish scanning experiments

FISH_FLAG_OVERPOPULATED

Flag added when the population of this fish type exceeeds the stable population inside the aquarium

FISH_FLAG_PETTED

This fish has been petted in the last 30 seconds

FISH_FLAG_SAFE_FLUID

Flag added when in an aquarium with the right fluid type.

FISH_FLAG_SAFE_TEMPERATURE

Flag added when in an aquarium which temperature is within its safe limits

FISH_FLAG_SHOW_IN_CATALOG

This fish is shown in the catalog and on the wiki (this only matters as an initial, compile-time value)

FISH_FLAG_UPDATING_SIZE_AND_WEIGHT

It lets us know that fish/update_size_and_weight() is currently running.

FISH_GRIND_RESULTS_WEIGHT_DIVISOR

The volume of the grind results is multiplied by the fish' weight and divided by this.

FISH_PROPERTIES_FAV_BAIT

Defines for fish properties from the collect_fish_properties proc

FISH_RARITY_BASIC

How likely one's to find a given fish from random fish cases.

FISH_SAFE_COOKING_DURATION

The fish needs to be cooked for at least this long so that it can be safely eaten

FISH_SIZE_TINY_MAX

Fish size thresholds for w_class.

FISH_SIZE_TWO_HANDS_REQUIRED

size threshold for requiring two-handed carry

FISH_SOURCE_AUTOWIKI_DUD

Special value for the name key that always comes first when the data is sorted, regardless of weight.

FISH_SOURCE_AUTOWIKI_NAME

The list keys for the autowiki for fish sources

FISH_SOURCE_AUTOWIKI_OTHER

Special value for the name key that always comes last

FISH_SOURCE_AUTOWIKI_QUESTIONMARK

The filename for the icon for "other stuff" which we don't articulate about on the autowiki

FISH_SOURCE_FLAG_EXPLOSIVE_MALUS

Flag for fish sources. It makes large explosions less efficient at spawning fish. Meant for lazy fishing spots that cover multiple turfs (rivers, oceans etc.)

FISH_SOURCE_FLAG_NO_BLUESPACE_ROD

The fish source is not elegible for random rewards from bluespace fishing rods

FISH_SOURCE_FLAG_SKIP_CATCHABLES

If present, fish that can be caught from this source won't be included in the 'fish caught' score, unless present in other sources without this flag as well.

FISH_WEIGHT_BITE_DIVISOR

Used to calculate how many bites a fish can take and therefore the amount of reagents it has.

FISH_WEIGHT_FORCE_DIVISOR

Used to calculate the force of the fish by comparing (1 + log(weight/this_define)) and the w_class of the item.

FISH_WEIGHT_GRIND_TO_BITE_MULT

The multiplier used in the FISH_WEIGHT_BITE_DIVISOR define

FISH_WEIGHT_MULT_WITHOUT_BAIT

We multiply the weight of fish inside the loot table by this value if we are goofy enough to fish without a bait.

FISH_WEIGHT_SLOWDOWN

The slowdown of the fish when carried begins at this value

FISH_WEIGHT_SLOWDOWN_DIVISOR

The value of the slowdown equals to the weight divided by this (and then at the power of a sub-1 exponent)

FISH_WEIGHT_SLOWDOWN_EXPONENT

The sub-one exponent that results in the final slowdown of the fish item

GET_FISH_SLOWDOWN

Set of operations that calculate the slowdown of fish based on weight

GET_FISH_WEIGHT_RANK

Gets a "rank" for fish weight to determine the force of the fish (or fish tank) basically, a gross estimate based on how weight generaly scales up (250, 500, 1000, 2000, 4000 etc...) for most fish

MAX_FISH_DEVIATION_COEFF

The coefficient for maximum weight/size divergence relative to the averages.

NEW_FISH_BREEDING_TIMEOUT_MULT

The breeding timeout for newly instantiated fish is multiplied by this.

NEW_FISH_LAST_FEEDING_MULT

The last feeding timestamp of newly instantiated fish is multiplied by this: ergo, they spawn 50% hungry.

ROD_SLOT_BAIT

Slot defines for the fishing rod and its equipment