Lifesteal
Lifesteal is a mechanic utilized by some weapons and other items which causes the player to be healed upon damaging an enemy. This is done via direct healing when the attack hits, the spawning of a healing projectile which heals the player on touch, or the spawning of Hearts.
Lifesteal cooldown
- This section primarily describes vanilla Terraria behavior.
There is a hidden lifesteal cooldown variable in Terraria which is constantly increasing every frame, up to a maximum which varies depending on the current difficulty mode. Whenever a player is healed with a lifesteal effect, the cooldown variable is decreased by a certain amount that is typically proportional to damage. Several lifesteal effects will fail to heal the player if the cooldown variable is at or below 0, preventing the player from abusing lifesteal to keep themselves alive for longer than intended.
The maximum amount is 60 / 50 / 40 / 30 / 40 / 30 / 20 instead of 80 / 70 in vanilla. The variable increases by 0.2 / 0.15 / 0.125 / 0.1 / 0.1 / 0.075 / 0.05 instead of 0.6 / 0.5 in vanilla.
The player's current lifesteal cooldown can be seen on Calamity's Cooldown Rack, where it appears with a red knife as its icon.
canGhostHeal
- This section primarily describes vanilla Terraria behavior.
canGhostHeal
is an internal Boolean variable that pertains to whether or not the player can steal life from enemies. The variable is defined in the files of certain NPCs, and checked for in the files of many lifestealing items and projectiles. If the item or projectile checks for canGhostHeal
in the hit enemy's file and finds that it's set to true
, then the player will be healed. If it's set to false
, the player will not be healed. canGhostHeal
is set to true
by default in all enemy files, though some enemies have it directly set to false
.
Note that not all lifestealing items and projectiles check for canGhostHeal
. If they bypass the check, they can heal the player regardless of what the hit enemy has it set to.
Lists
Lifestealing Items
Below is a list of all items in the Calamity Mod which have the ability to steal life from enemies. Also listed is their healing amount, method of healing, as well as whether or not they bypass canGhostHeal
or the lifesteal cooldown.
canGhostHeal=False NPCs
Below is a list of all NPCs in the Calamity Mod which have canGhostHeal
set to false
, meaning that the player cannot heal from hitting them with lifestealing attacks that check for the variable.
Notes
- Many of the healing projectiles spawned by lifestealing items can heal nearby teammates, instead of the player, if they are close enough.
Trivia
- The name for
canGhostHeal
is in reference to Spectre armor's healing effect while wearing the Spectre Hood. The variable was later used for many other items which had lifesteal effects. - Exoblade, Grand Guardian, Earth, and Bloodsoaked Crasher are the only weapons with two distinct lifesteal effects each. Auric Tesla armor's set bonus while wearing Auric Tesla Wire-Hemmed Visage has five distinct lifesteal effects.
Game mechanics | |||||||||
---|---|---|---|---|---|---|---|---|---|
Combat | Damage Reduction • Defense damage • Enchantment • Hit sounds • Immunity frames • Lifesteal • Minions • Rogue | ||||||||
Environment | Biome backgrounds • Events • Music | ||||||||
Events | Acid Rain • Boss Rush | ||||||||
Game | Bestiary • Configuration options • Difficulty Modes (Death Mode • Revengeance Mode) • Fishing • Game controls • Lore • Secret world seeds (For the worthy • Get fixed boi) • Vanilla changes | ||||||||
Items | Alternative crafting ingredients • Charge • Consumable • Crafting stations (By Hand) • Drops • Modifiers • Rarity • Recipes • Vanilla item recipes | ||||||||
Player | Adrenaline Meter • Aggro • Buffs and Debuffs • Dash • Death prevention • Defense • Dodge • Flight Time Bar • Rage Meter | ||||||||
UI | Boss Health Bar • Cooldown Rack • Speedrun Timer • Status messages • Tips |