From Brotato Wiki
(fix "used by" column width + fix line breaks) |
(add some missing effects) |
||
(4 intermediate revisions by the same user not shown) | |||
Line 7: | Line 7: | ||
This page documents the various effects in the vanilla game. Modders can apply these effects to their custom content. | This page documents the various effects in the vanilla game. Modders can apply these effects to their custom content. | ||
Please view the items/characters/weapons for more details on the exact usage. | |||
''Note: Despite the folder names, most of these effects can used by characters, weapons or items. They're only split into Global/Items/Weapons here to make it easier to find the associated files.'' | |||
==Global Effects (Guide)== | |||
====effect.gd==== | |||
Location: {{Color|color=cream|text=res://items/global/effect.gd}} | |||
The file that is used the most for applying effects. If you want to apply an effect, there's a very strong chance you'll do it with this file. | |||
Here's an overview of what the various properties of effect.gd do. We'll use {{Color|cream|acid_effect_1.tres}} as a reference, which grants "{{Color|green|+8}} Max HP" ''(at time of writing)''. | |||
{| class="wikitable" | |||
!Property | |||
!Value for Acid | |||
!Description | |||
|- | |||
|Key | |||
|stat_max_hp | |||
|Has two uses: | |||
*Most commonly, it specifies the target of the effect's behaviour: For example, if you're modifying a stat, the key is the stat (eg "stat_max_hp"). | |||
*The second use is to specify a custom effet key, with the effect ID being the key: For example, Crown uses the key "harvesting_growth". | |||
|- | |||
|Text Key | |||
|<small>''n/a''</small> | |||
|If an effect key is specified, it's retrieved from the translation file. | |||
*For simple stat changes, you don't need to provide a Text Key. But for anything more complex than basic stat changes, you'll probably need one. | |||
*For example, Crown's Text Key is "effect_harvesting_growth". | |||
*The translation string can include placeholders for args (arguments), which replace strings like "{0}", "{1}", etc. | |||
*If you're making your own custom effect, you can specify what value these args should use with the method get_args in your effect file. | |||
*To see how they're processed, view the "text" method in {{Color|cream|text=singletons/text.gd}}. | |||
**This method basically reads the Text Key from the translations file, and works out where the arg replacements should be (ie. "{0}", "{1}", etc) | |||
**Then replaces it them with the args provided. | |||
|- | |||
|Value | |||
|8 | |||
|Sets the strength of the effect. | |||
For stats, this determines how much of a stat should be increased. The number can also be negative, which means a stat should be decreased. Sometimes the Value is used as a boolean, where 0 means FALSE/OFF/DISABLED, and 1 means TRUE/ON/ENABLED. Examples: | |||
*{{MiniIconbox|Alien Eyes}} = The value of 6 determines that 6 Alien Eyes should be shot. | |||
*{{MiniIconbox|Baby Elephant}} = The value of 25 is used to determine that the chance of Baby Elephant's effect is 25%. | |||
|- | |||
|Custom Key | |||
|<small>''n/a''</small> | |||
|Custom Key can be used instead of Key, to determine a special effect. | |||
This allows you to use the Key to specify, in most cases, the stat that the effect should act upon, while also using a custom effect. Example: | |||
*{{MiniIconbox|Anvil}}'s effect is set with its Custom Key, "upgrade_random_weapon". | |||
*The effect upgrades a random weapon, and if it can't, then it increases a stat. | |||
*Anvil's effect sets the key to "stat_armor", which means that the increased stat is Armor | |||
*(And its value of "2" means that the Armor stat should be increased by 2.) | |||
|- | |||
|Storage Method | |||
|Sum | |||
|Determines how the value should be saved/applied: | |||
*'''Sum''' = The value will be added (or deducted) from whatever the current run's effect value is. | |||
**Acid uses this to add +8 to the current Max HP value. | |||
**Your final Max HP value is the ''sum'' of whatever your current Max HP is, plus Acid's value of +8. | |||
*'''Key Value''' = ??? | |||
**Used by: apprentice / farmer_effect_2b / glutton_effect_1 / peacock_effect_2 / peacock_effect_3 | |||
*'''Replace''' = This effect's value should replace (ie. override) the current run's stat. | |||
**Eg. Arms Dealer uses "minimum_weapons_in_shop", with a value of 1, which replaces any other values in the run. | |||
|- | |||
|Effect Sign | |||
|From Value | |||
|Determines how to get the sign ("+" or "-") of the value. | |||
*'''Positive''' = Force a plus sign (+) | |||
* '''Negative''' = Force a minus sign (-) | |||
*'''From Value''' = Get the sign from the value. If it's positive, show +, and vice versa. This is usually the best setting to use. | |||
*'''Neutral''' = Ensures no sign will be added. | |||
*'''From Arg''' = This means that the sign or format is specified with Custom Args. | |||
|- | |||
|Custom Args | |||
|<small>''n/a''</small> | |||
|Allows you to determine the formatting of any and all args that this effect uses. See below for more details. | |||
|} | |||
====custom_arg.gd==== | |||
Location: {{Color|color=cream|text=res://items/global/custom_arg.gd}} | |||
Not an effect file, but it used by many effects. Applied to the `custom_args` property, this allows you to format additional args. | |||
You can find items that use this by searching the code for: <code>custom_args = [ SubResource(</code> | |||
For example, open {{Color|cream|estys_couch_effect_1.tres}} in Godot's Inspector, which has lots of args ("{{Color|green|+2}} HP Regeneration for every -1% Speed you have."). | |||
__TOC__ | __TOC__ | ||
==Item Effects== | ==Item Effects== | ||
Location: {{Color|color=cream|text=res://effects/items/*.gd}} | |||
Despite the heading, these effects can actually be used by characters and weapons too. | |||
{| class="wikitable" | {| class="wikitable" | ||
!File (*.gd) | !File (*.gd) | ||
!key | !key | ||
!custom_key | |||
!text_key | !text_key | ||
!Description | !Description | ||
! style="min-width:180px" | Used By | ! style="min-width:180px" | Used By | ||
|- | |- | ||
|effect | |effect.gd | ||
|<small>{{Color|color=cream|text= | |<small>{{Color|color=cream|text=Stat ID, eg:}} <code>stat_max_hp</code> / <code>bounce</code></small> | ||
| | |||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
|Increases a stat (key) by the value | |Increases a stat (key) by the value | ||
|''<small>Many items</small>'' | |''<small>Many items</small>'' | ||
|- | |- | ||
| | |projectile_effect.gd | ||
|<code><small>alien_eyes</small></code> | |<code><small>alien_eyes</small></code> | ||
| | |||
|<code><small>effect_alien_eyes</small></code> | |<code><small>effect_alien_eyes</small></code> | ||
|Shoots {0} alien eyes around you every {4} seconds dealing {1} ({3}) damage each | |Shoots {0} alien eyes around you every {4} seconds dealing {1} ({3}) damage each | ||
|{{MiniIconbox|name=Alien Eyes}} | |{{MiniIconbox|name=Alien Eyes}} | ||
|- | |- | ||
| | |effect.gd | ||
|<small>{{Color|color=cream|text=Stat ID, eg:}} <code>stat_max_hp</code> / <code>bounce</code></small> | |||
|<code><small>upgrade_random_weapon</small></code> | |<code><small>upgrade_random_weapon</small></code> | ||
|<code><small>effect_upgrade_random_weapon</small></code> | |<code><small>effect_upgrade_random_weapon</small></code> | ||
|A random weapon is upgraded when entering a shop. | |A random weapon is upgraded when entering a shop. | ||
If you have no weapon to upgrade, you gain { | If you have no weapon to upgrade, you gain {VALUE} {STAT} instead. | ||
|{{MiniIconbox|name=Anvil}} | |{{MiniIconbox|name=Anvil}} | ||
|- | |- | ||
|burn_chance_effect | |burn_chance_effect | ||
|<code><small>burn_chance</small></code> | |<code><small>burn_chance</small></code> | ||
| | |||
|<code><small>effect_burn_chance</small></code> | |<code><small>effect_burn_chance</small></code> | ||
|Attacks have a {0} chance to deal {1}x{2} ({3}) burning damage | |Attacks have a {0} chance to deal {1}x{2} ({3}) burning damage. | ||
Needs a corresponding burning_data stats file | |||
|{{MiniIconbox|name=Scared Sausage}} | |{{MiniIconbox|name=Scared Sausage}} | ||
|- | |- | ||
|class_bonus_effect | |class_bonus_effect | ||
|<code><small>effect_weapon_class_bonus</small></code> | |<code><small>effect_weapon_class_bonus</small></code> | ||
| | |||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
|{0} {1} with {2} weapons | |{0} {1} with {2} weapons | ||
Grants a bonus to a specific stat (stat_name) when using a specific weapon class (weapon_class). Eg "+100 Range with Precise weapons" | |||
|{{MiniIconbox|name=Brawler}}, | |{{MiniIconbox|name=Brawler}}, | ||
{{MiniIconbox|name=Ghost}},{{MiniIconbox|name=Wildling}} | {{MiniIconbox|name=Crazy}}, | ||
{{MiniIconbox|name=Doctor}}, | |||
{{MiniIconbox|name=Ghost}}, | |||
{{MiniIconbox|name=Wildling}} | |||
|- | |- | ||
|convert_stat_effect | |convert_stat_effect | ||
|<code><small>materials</small></code> | |<code><small>materials</small></code> | ||
| | |||
|<code><small>effect_convert_stat_end_of_wave</small></code> | |<code><small>effect_convert_stat_end_of_wave</small></code> | ||
|{0} of your {1} are converted into {2} at the end of a wave ({3} {1} = {4} {2}) | |{0} of your {1} are converted into {2} at the end of a wave ({3} {1} = {4} {2}) | ||
Line 64: | Line 157: | ||
|dmg_when_death_effect | |dmg_when_death_effect | ||
|<code><small>dmg_when_death_from_luck</small></code> | |<code><small>dmg_when_death_from_luck</small></code> | ||
| | |||
|<code><small>effect_deal_dmg_when_death</small></code> | |<code><small>effect_deal_dmg_when_death</small></code> | ||
|{0} chance to deal {1} ({2}) damage to a random enemy when an enemy dies | |{0} chance to deal {1} ({2}) damage to a random enemy when an enemy dies | ||
Line 70: | Line 164: | ||
|dmg_when_pickup_gold_effect | |dmg_when_pickup_gold_effect | ||
|<code><small>dmg_when_pickup_gold_from_luck</small></code> | |<code><small>dmg_when_pickup_gold_from_luck</small></code> | ||
| | |||
|<code><small>effect_deal_dmg_when_pickup_gold</small></code> | |<code><small>effect_deal_dmg_when_pickup_gold</small></code> | ||
|{0} chance to deal {1} ({2}) damage to a random enemy when you pick up a material | |{0} chance to deal {1} ({2}) damage to a random enemy when you pick up a material | ||
Line 76: | Line 171: | ||
|- | |- | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<small>{{Color|color=cream|text= | |<small>{{Color|color=cream|text=Stat ID, eg:}} <code>stat_max_hp</code> / <code>bounce</code></small> | ||
|<code><small>effect_gain_stat_for_every_enemy</small></code><code><small>effect_gain_stat_for_every_perm_stat</small></code><code><small>effect_gain_stat_for_every_stat</small></code> | | | ||
|Links 2 stats together | |<code><small>effect_gain_stat_for_every_enemy</small></code> | ||
<code><small>effect_gain_stat_for_every_perm_stat</small></code> | |||
<code><small>effect_gain_stat_for_every_stat</small></code> | |||
|Links 2 stats together: | |||
* {value} {stat} for every current living enemy | |||
* {value} {stat} for every permanent {2} {3} you have | |||
* {value} {key} for every {2} {3} you have | |||
* ''Specify the 1st stat with key'' | |||
* ''Specify the 2nd stat with stat_scaled'' | |||
|{{MiniIconbox|name=Artificer}}, | |{{MiniIconbox|name=Artificer}}, | ||
Line 95: | Line 201: | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<code><small>stat_attack_speed</small></code> | |<code><small>stat_attack_speed</small></code> | ||
| | |||
|<code><small>effect_gain_stat_for_every_enemy</small></code> | |<code><small>effect_gain_stat_for_every_enemy</small></code> | ||
| | | | ||
Line 101: | Line 208: | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<code><small>stat_max_hp</small></code> | |<code><small>stat_max_hp</small></code> | ||
| | |||
|<code><small>effect_gain_stat_for_every_stat</small></code> | |<code><small>effect_gain_stat_for_every_stat</small></code> | ||
| | | | ||
Line 107: | Line 215: | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<code><small>stat_attack_speed</small></code> | |<code><small>stat_attack_speed</small></code> | ||
| | |||
|<code><small>effect_gain_stat_for_every_stat</small></code> | |<code><small>effect_gain_stat_for_every_stat</small></code> | ||
| | | | ||
Line 113: | Line 222: | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<code><small>stat_engineering</small></code> | |<code><small>stat_engineering</small></code> | ||
| | |||
|<code><small>effect_gain_stat_for_every_stat</small></code> | |<code><small>effect_gain_stat_for_every_stat</small></code> | ||
| | | | ||
Line 119: | Line 229: | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<code><small>stat_hp_regeneration</small></code> | |<code><small>stat_hp_regeneration</small></code> | ||
| | |||
|<code><small>effect_gain_stat_for_every_perm_stat</small></code> | |<code><small>effect_gain_stat_for_every_perm_stat</small></code> | ||
| | | | ||
Line 125: | Line 236: | ||
|gain_stat_for_every_stat_effect | |gain_stat_for_every_stat_effect | ||
|<code><small>stat_percent_damage</small></code> | |<code><small>stat_percent_damage</small></code> | ||
| | |||
|<code><small>effect_gain_stat_for_every_perm_stat</small></code> | |<code><small>effect_gain_stat_for_every_perm_stat</small></code> | ||
| | | | ||
Line 131: | Line 243: | ||
|healing_effect | |healing_effect | ||
|<code><small>effect_heal</small></code> | |<code><small>effect_heal</small></code> | ||
| | |||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |Only used by consumables. Functionally useless in the shop. | ||
|{{MiniModIconbox|name=Fruit|rarity=0|image=Fruit.png}} | |{{MiniModIconbox|name=Fruit|rarity=0|image=Fruit.png}} | ||
Line 139: | Line 252: | ||
|hp_cap_effect | |hp_cap_effect | ||
|<code><small>hp_cap</small></code> | |<code><small>hp_cap</small></code> | ||
| | |||
|<code><small>effect_hp_cap_at_current_value</small></code> | |<code><small>effect_hp_cap_at_current_value</small></code> | ||
| | |Your Max HP is capped at its current value | ||
|{{MiniIconbox|name=Handcuffs}} | |{{MiniIconbox|name=Handcuffs}} | ||
|- | |- | ||
|item_exploding_effect | |item_exploding_effect | ||
|<code><small>explode_on_hit</small></code> | |<code><small>explode_on_hit</small></code> | ||
| | |||
|<code><small>effect_explode_on_hit</small></code> | |<code><small>effect_explode_on_hit</small></code> | ||
| | |You explode for {damage} ({scaling}) damage when you take damage. | ||
''Requires an explosion stats file, which sets the damage and scaling.'' | |||
|{{MiniIconbox|name=Bull}} | |{{MiniIconbox|name=Bull}} | ||
|- | |- | ||
| rowspan="2" |item_exploding_effect | | rowspan="2" |item_exploding_effect | ||
| rowspan="2" |<code><small>explode_on_death</small></code> | | rowspan="2" |<code><small>explode_on_death</small></code> | ||
| | |||
| rowspan="2" |<code><small>effect_explode_on_death</small></code> | | rowspan="2" |<code><small>effect_explode_on_death</small></code> | ||
| | | rowspan="2" |Enemies have a {0} chance to explode for {1} ({2}) damage when they die | ||
|{{MiniIconbox|name=Landmines}} | |{{MiniIconbox|name=Landmines}} | ||
|- | |- | ||
Line 160: | Line 277: | ||
|pacifist_effect | |pacifist_effect | ||
|<code><small>pacifist</small></code> | |<code><small>pacifist</small></code> | ||
| | |||
|<code><small>effect_pacifist</small></code> | |<code><small>effect_pacifist</small></code> | ||
| | |Gain {value} material and XP for every living enemy at the end of a wave | ||
|{{MiniIconbox|name=Pacifist}} | |{{MiniIconbox|name=Pacifist}} | ||
|- | |- | ||
|projectile_effect | |projectile_effect | ||
|<code><small>projectiles_on_death</small></code> | |<code><small>projectiles_on_death</small></code> | ||
| | |||
|<code><small>effect_projectiles_on_death</small></code> | |<code><small>effect_projectiles_on_death</small></code> | ||
| | |Spawns projectiles when an enemy dies. | ||
Requires an associated projectile stats data (.tres) file. | |||
The .tres can be custom, or you can use the default ''base_ranged_weapon_stats.tres'' | |||
|{{MiniIconbox|name=Baby with a Beard}} | |{{MiniIconbox|name=Baby with a Beard}} | ||
|- | |- | ||
|remove_speed_effect | |remove_speed_effect | ||
|<code><small>remove_speed</small></code> | |<code><small>remove_speed</small></code> | ||
| | |||
|<code><small>effect_remove_speed</small></code> | |<code><small>effect_remove_speed</small></code> | ||
| | |Hitting an enemy reduces their speed by ''x''%. | ||
The max removed amount can be changed (eg Ugly Tooth is max of -30%) | |||
|{{MiniIconbox|name=Ugly Tooth}} | |{{MiniIconbox|name=Ugly Tooth}} | ||
|- | |- | ||
|replace_effect | |replace_effect | ||
|<code><small>double_hp_regen_below_half_health</small></code> | |<code><small>double_hp_regen_below_half_health</small></code> | ||
| | |||
|<code><small>effect_double_hp_regen_below_half_health</small></code> | |<code><small>effect_double_hp_regen_below_half_health</small></code> | ||
| | | | ||
Line 184: | Line 309: | ||
|replace_effect | |replace_effect | ||
|<code><small>minimum_weapons_in_shop</small></code> | |<code><small>minimum_weapons_in_shop</small></code> | ||
| | |||
|<code><small>effect_minimum_weapon_in_shop</small></code> | |<code><small>effect_minimum_weapon_in_shop</small></code> | ||
| | | | ||
Line 190: | Line 316: | ||
|replace_effect | |replace_effect | ||
|<code><small>weapon_slot</small></code> | |<code><small>weapon_slot</small></code> | ||
| | |||
|<code><small>effect_no_weapons</small></code> | |<code><small>effect_no_weapons</small></code> | ||
| | | | ||
Line 196: | Line 323: | ||
|replace_effect | |replace_effect | ||
|<code><small>hp_shop</small></code> | |<code><small>hp_shop</small></code> | ||
| | |||
|<code><small>effect_hp_shop</small></code> | |<code><small>effect_hp_shop</small></code> | ||
| | | | ||
Line 202: | Line 330: | ||
|replace_effect | |replace_effect | ||
|<code><small>trees_start_wave</small></code> | |<code><small>trees_start_wave</small></code> | ||
| | |||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |Sets the first wave that [[Trees]] can spawn on. | ||
|{{MiniIconbox|name=Explorer}} | |{{MiniIconbox|name=Explorer}} | ||
|- | |- | ||
|replace_effect | |replace_effect | ||
|<code><small>max_melee_weapons</small></code> | |<code><small>max_melee_weapons</small></code> | ||
| | |||
|<code><small>effect_generalist</small></code> | |<code><small>effect_generalist</small></code> | ||
| | | | ||
Line 214: | Line 344: | ||
|replace_effect | |replace_effect | ||
|<code><small>max_ranged_weapons</small></code> | |<code><small>max_ranged_weapons</small></code> | ||
| | |||
|<code><small>[EMPTY]</small></code> | |<code><small>[EMPTY]</small></code> | ||
| | | | ||
Line 220: | Line 351: | ||
|replace_effect | |replace_effect | ||
|<code><small>dodge_cap</small></code> | |<code><small>dodge_cap</small></code> | ||
| | |||
|<code><small>effect_dodge_cap</small></code> | |<code><small>effect_dodge_cap</small></code> | ||
| | | | ||
Line 226: | Line 358: | ||
|replace_effect | |replace_effect | ||
|<code><small>weapon_slot</small></code> | |<code><small>weapon_slot</small></code> | ||
| | |||
|<code><small>effect_max_weapons</small></code> | |<code><small>effect_max_weapons</small></code> | ||
| | | | ||
Line 232: | Line 365: | ||
|replace_effect | |replace_effect | ||
|<code><small>can_attack_while_moving</small></code> | |<code><small>can_attack_while_moving</small></code> | ||
| | |||
|<code><small>effect_cant_attack_while_moving</small></code> | |<code><small>effect_cant_attack_while_moving</small></code> | ||
| | | | ||
Line 238: | Line 372: | ||
|replace_effect | |replace_effect | ||
|<code><small>double_boss</small></code> | |<code><small>double_boss</small></code> | ||
| | |||
|<code><small>effect_double_boss</small></code> | |<code><small>effect_double_boss</small></code> | ||
| | | | ||
Line 244: | Line 379: | ||
|starting_item_effect | |starting_item_effect | ||
|<code><small>starting_item</small></code> | |<code><small>starting_item</small></code> | ||
| | |||
|<code><small>effect_starting_item</small></code> | |<code><small>effect_starting_item</small></code> | ||
| | | | ||
Line 264: | Line 400: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_armor</small></code> | |<code><small>stat_armor</small></code> | ||
| | |||
|<code><small>effect_stat_while_not_moving</small></code> | |<code><small>effect_stat_while_not_moving</small></code> | ||
| | | | ||
Line 270: | Line 407: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_dodge</small></code> | |<code><small>stat_dodge</small></code> | ||
| | |||
|<code><small>effect_stat_while_not_moving</small></code> | |<code><small>effect_stat_while_not_moving</small></code> | ||
| | | | ||
Line 276: | Line 414: | ||
|stat_effect | |stat_effect | ||
|<code><small>gold_on_crit_kill</small></code> | |<code><small>gold_on_crit_kill</small></code> | ||
| | |||
|<code><small>effect_gold_on_crit_kill</small></code> | |<code><small>effect_gold_on_crit_kill</small></code> | ||
| | | | ||
Line 282: | Line 421: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_attack_speed</small></code> | |<code><small>stat_attack_speed</small></code> | ||
| | |||
|<code><small>effect_stat_while_not_moving</small></code> | |<code><small>effect_stat_while_not_moving</small></code> | ||
| | | | ||
Line 288: | Line 428: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_percent_damage</small></code> | |<code><small>stat_percent_damage</small></code> | ||
| | |||
|<code><small>effect_on_hit</small></code> | |<code><small>effect_on_hit</small></code> | ||
| | | | ||
Line 294: | Line 435: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_percent_damage</small></code> | |<code><small>stat_percent_damage</small></code> | ||
| | |||
|<code><small>effect_gain_stat_end_of_wave</small></code> | |<code><small>effect_gain_stat_end_of_wave</small></code> | ||
| | | | ||
Line 300: | Line 442: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_percent_damage</small></code> | |<code><small>stat_percent_damage</small></code> | ||
| | |||
|<code><small>effect_stack_stat</small></code> | |<code><small>effect_stack_stat</small></code> | ||
| | | | ||
Line 306: | Line 449: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_max_hp</small></code> | |<code><small>stat_max_hp</small></code> | ||
| | |||
|<code><small>effect_gain_stat_end_of_wave</small></code> | |<code><small>effect_gain_stat_end_of_wave</small></code> | ||
| | | | ||
Line 312: | Line 456: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_hp_regeneration</small></code> | |<code><small>stat_hp_regeneration</small></code> | ||
| | |||
|<code><small>effect_gain_stat_end_of_wave</small></code> | |<code><small>effect_gain_stat_end_of_wave</small></code> | ||
| | | | ||
Line 317: | Line 462: | ||
|stat_effect | |stat_effect | ||
|<code><small>stat_lifesteal</small></code> | |<code><small>stat_lifesteal</small></code> | ||
| | |||
|<code><small>effect_gain_stat_end_of_wave</small></code> | |<code><small>effect_gain_stat_end_of_wave</small></code> | ||
| | | | ||
Line 322: | Line 468: | ||
|stat_gains_modification_effect | |stat_gains_modification_effect | ||
|<code><small>effect_increase_stat_gains</small></code> | |<code><small>effect_increase_stat_gains</small></code> | ||
| | |||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | | | ||
Line 328: | Line 475: | ||
|stat_gains_modification_effect | |stat_gains_modification_effect | ||
|<code><small>effect_reduce_stat_gains</small></code> | |<code><small>effect_reduce_stat_gains</small></code> | ||
| | |||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | | | ||
Line 334: | Line 482: | ||
|structure_effect | |structure_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_landmines</code> | |<code>effect_landmines</code> | ||
| | | | ||
Line 342: | Line 491: | ||
|tier_effect | |tier_effect | ||
|<code>min_weapon_tier</code> | |<code>min_weapon_tier</code> | ||
| | |||
|<code>effect_min_weapon_tier</code> | |<code>effect_min_weapon_tier</code> | ||
| | | | ||
Line 348: | Line 498: | ||
|tier_effect | |tier_effect | ||
|<code>max_weapon_tier</code> | |<code>max_weapon_tier</code> | ||
| | |||
|<code>effect_max_weapon_tier</code> | |<code>effect_max_weapon_tier</code> | ||
| | | | ||
Line 354: | Line 505: | ||
|turret_effect | |turret_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_turret</code> | |<code>effect_turret</code> | ||
| | | | ||
Line 362: | Line 514: | ||
|turret_effect | |turret_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_turret_healing</code> | |<code>effect_turret_healing</code> | ||
| | | | ||
Line 368: | Line 521: | ||
|turret_effect | |turret_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_turret_laser</code> | |<code>effect_turret_laser</code> | ||
| | | | ||
Line 374: | Line 528: | ||
|turret_effect | |turret_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_turret_rocket</code> | |<code>effect_turret_rocket</code> | ||
| | | | ||
Line 380: | Line 535: | ||
|turret_effect | |turret_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_tyler</code> | |<code>effect_tyler</code> | ||
| | | | ||
Line 386: | Line 542: | ||
|turret_effect | |turret_effect | ||
|<code>wandering_bot</code> | |<code>wandering_bot</code> | ||
| | |||
|<code>effect_wandering_bot</code> | |<code>effect_wandering_bot</code> | ||
| | | | ||
Line 392: | Line 549: | ||
|turret_flame_effect | |turret_flame_effect | ||
|''<small>{{Color|color=grey|text=not specified}}</small>'' | |''<small>{{Color|color=grey|text=not specified}}</small>'' | ||
| | |||
|<code>effect_turret_flame</code> | |<code>effect_turret_flame</code> | ||
| | | | ||
Line 400: | Line 558: | ||
|unique_weapon_effect | |unique_weapon_effect | ||
|<code>stat_attack_speed</code> | |<code>stat_attack_speed</code> | ||
| | |||
|<code>effect_unique_weapon_bonus</code> | |<code>effect_unique_weapon_bonus</code> | ||
| | | | ||
Line 406: | Line 565: | ||
|unique_weapon_effect | |unique_weapon_effect | ||
|<code>stat_attack_speed</code> | |<code>stat_attack_speed</code> | ||
| | |||
|<code>effect_unique_weapon_bonus</code> | |<code>effect_unique_weapon_bonus</code> | ||
| | | | ||
Line 412: | Line 572: | ||
|weapon_bonus_effect | |weapon_bonus_effect | ||
|''<small>{{Color|color=grey|text=???}}</small>'' | |''<small>{{Color|color=grey|text=???}}</small>'' | ||
| | |||
|''<small>{{Color|color=grey|text=???}}</small>'' | |''<small>{{Color|color=grey|text=???}}</small>'' | ||
| | | | ||
Line 418: | Line 579: | ||
|weapon_gain_effect | |weapon_gain_effect | ||
|''<small>{{Color|color=grey|text=???}}</small>'' | |''<small>{{Color|color=grey|text=???}}</small>'' | ||
| | |||
|''<small>{{Color|color=grey|text=???}}</small>'' | |''<small>{{Color|color=grey|text=???}}</small>'' | ||
| | | | ||
|''<small>{{Color|color=pastelred|text=unused}}</small>'' | |''<small>{{Color|color=pastelred|text=unused}}</small>'' | ||
|} | |} | ||
Other effects (TODO): | |||
* chance_stat_damage_effect | |||
* stat_cap_effect | |||
* stat_with_max_effect | |||
==Weapon Effects== | ==Weapon Effects== | ||
Stored in {{Color|color=cream|text=res://effects/weapons/*.gd}} | |||
Like Item Effects above, some of these can be used by items/characters. | Like Item Effects above, some of these can be used by items/characters. | ||
{| class="wikitable" | {| class="wikitable" | ||
!Effect File (*.gd) | !Effect File (*.gd) | ||
!key | !key | ||
!Used By | ! Used By | ||
|- | |- | ||
|burning_effect | |burning_effect | ||
Line 463: | Line 632: | ||
|} | |} | ||
== Danger Effects == | ==Danger Effects== | ||
{| class="wikitable" | {| class="wikitable" | ||
!Effect File (*.gd) | !Effect File (*.gd) | ||
Line 488: | Line 657: | ||
|<code>enemy_strength</code> | |<code>enemy_strength</code> | ||
|Danger 3 | |Danger 3 | ||
|Text key is <code><small>EFFECT_STRONGER_ENEMIES</small></code>, value is: <code>12</code> | | Text key is <code><small>EFFECT_STRONGER_ENEMIES</small></code>, value is: <code>12</code> | ||
|- | |- | ||
|{{Color|color=cream|text=items/global/effect.gd}} | |{{Color|color=cream|text=items/global/effect.gd}} | ||
|<code>enemy_strength</code> | |<code>enemy_strength</code> | ||
|Danger 4 | |Danger 4 | ||
|Text key is <code><small>EFFECT_STRONGER_ENEMIES</small></code>, value is: <code>26</code> | | Text key is <code><small>EFFECT_STRONGER_ENEMIES</small></code>, value is: <code>26</code> | ||
|- | |- | ||
|{{Color|color=cream|text=effects/weapons/null_effect.gd}} | |{{Color|color=cream|text=effects/weapons/null_effect.gd}} | ||
Line 503: | Line 672: | ||
|<code>enemy_strength</code> | |<code>enemy_strength</code> | ||
|Danger 5 | |Danger 5 | ||
|Text key is <code><small>EFFECT_STRONGER_ENEMIES</small></code>, value is: <code>40</code> | | Text key is <code><small>EFFECT_STRONGER_ENEMIES</small></code>, value is: <code>40</code> | ||
|- | |- | ||
|{{Color|color=cream|text=effects/items/replace_effect.gd}} | |{{Color|color=cream|text=effects/items/replace_effect.gd}} | ||
|<code>double_boss</code> | |<code>double_boss</code> | ||
|Danger 5 | |Danger 5 | ||
|Text key is <code><small>effect_double_boss</small></code> | | Text key is <code><small>effect_double_boss</small></code> | ||
|} | |} | ||
==List of Effect Keys== | == List of Effect Keys== | ||
This section lists most of the effect keys, taken from the effect init arrays in run_data.gd (<code><small>init_tracked_effects</small></code> & <code><small>init_effects</small></code>). | This section lists most of the effect keys, taken from the effect init arrays in run_data.gd (<code><small>init_tracked_effects</small></code> & <code><small>init_effects</small></code>). | ||
Line 584: | Line 753: | ||
!key | !key | ||
!text_key | !text_key | ||
!Description | !Description | ||
!Used In (effect file, *.tres) | ! Used In (effect file, *.tres) | ||
|- | |- | ||
|additional_weapon_effects | |additional_weapon_effects | ||
|effect_additional_weapon_bonus | |effect_additional_weapon_bonus | ||
|Changes a stat (key) based on how many weapons you have | |Changes a stat (key) based on how many weapons you have | ||
|multitasker_effect_2 ''[effect_key]'' | |multitasker_effect_2 ''[effect_key]'' | ||
|- | |- | ||
|bounce | |bounce | ||
|effect_bouncing | |effect_bouncing | ||
|Adds bouncing to all projectiles | | Adds bouncing to all projectiles | ||
|ricochet_effect_1 | |ricochet_effect_1 | ||
|- | |- | ||
Line 634: | Line 798: | ||
|- | |- | ||
|chance_double_gold | |chance_double_gold | ||
|effect_chance_double_gold | |effect_chance_double_gold | ||
|% chance to double materials when they're collected | |% chance to double materials when they're collected | ||
|metal_detector_effect_1 | |metal_detector_effect_1 | ||
Line 652: | Line 816: | ||
|convert_stats_end_of_wave | |convert_stats_end_of_wave | ||
|effect_convert_stat_end_of_wave | |effect_convert_stat_end_of_wave | ||
| Converts a stat (key) to another stat (to_stat) when a wave ends | |Converts a stat (key) to another stat (to_stat) when a wave ends | ||
|demon_effect_1 | |demon_effect_1 | ||
|- | |- | ||
Line 662: | Line 826: | ||
|diff_gold_drops | |diff_gold_drops | ||
| --- | | --- | ||
| Appears to increase/decrease the chance for enemies to drop materials by % | |Appears to increase/decrease the chance for enemies to drop materials by % | ||
|''{{Color|color=cream|text=Unused, but appears to have some code that supports it.}}'' | |''{{Color|color=cream|text=Unused, but appears to have some code that supports it.}}'' | ||
|- | |- | ||
|dmg_when_death_from_luck | |dmg_when_death_from_luck | ||
|effect_deal_dmg_when_death | |effect_deal_dmg_when_death | ||
|% chance to deal a % of luck as damage, when an enemy dies. | |% chance to deal a % of luck as damage, when an enemy dies. | ||
{{Color|color=pastelred|text=Accepts a stat option, but '''only''' scales with Luck, ignoring the stat you specify}} | {{Color|color=pastelred|text=Accepts a stat option, but '''only''' scales with Luck, ignoring the stat you specify}} | ||
Line 672: | Line 836: | ||
|- | |- | ||
|dmg_when_pickup_gold_from_luck | |dmg_when_pickup_gold_from_luck | ||
|effect_deal_dmg_when_pickup_gold | |effect_deal_dmg_when_pickup_gold | ||
|% chance to deal a % of luck as damage, when you collect a material. | |% chance to deal a % of luck as damage, when you collect a material. | ||
{{Color|color=pastelred|text=As above, accepts a stat but only scales with Luck}} | {{Color|color=pastelred|text=As above, accepts a stat but only scales with Luck}} | ||
Line 685: | Line 849: | ||
|- | |- | ||
|double_boss | |double_boss | ||
|effect_double_boss | |effect_double_boss | ||
|Makes 2 bosses spawn instead of 1 | |Makes 2 bosses spawn instead of 1 | ||
|difficulty_5_effect_4 | |difficulty_5_effect_4 | ||
Line 701: | Line 865: | ||
|enemy_gold_drops | |enemy_gold_drops | ||
|effect_enemy_gold_drops | |effect_enemy_gold_drops | ||
| Change the amount of materials dropped by enemies. | |Change the amount of materials dropped by enemies. | ||
This is an '''int''' (eg -50), not a ''float'' (eg -0.5). | This is an '''int''' (eg -50), not a ''float'' (eg -0.5). | ||
Line 715: | Line 879: | ||
|- | |- | ||
|enemy_strength | |enemy_strength | ||
|effect_stronger_enemies | |effect_stronger_enemies | ||
|Affects both enemy HP, and the damage they deal | |Affects both enemy HP, and the damage they deal | ||
|difficulty_3_effect_2, difficulty_4_effect_2, difficulty_5_effect_2 | |difficulty_3_effect_2, difficulty_4_effect_2, difficulty_5_effect_2 | ||
|- | |- | ||
|explode_on_death | |explode_on_death | ||
|effect_explode_on_death | |effect_explode_on_death | ||
|% chance for enemies to explode on death. | |% chance for enemies to explode on death. | ||
Needs a corresponding weapon_stats file | Needs a corresponding weapon_stats file | ||
Line 743: | Line 907: | ||
|free_rerolls | |free_rerolls | ||
|effect_free_shop_reroll | |effect_free_shop_reroll | ||
|Adds free rerolls. Can't be negative | | Adds free rerolls. Can't be negative | ||
|dangerous_bunny_effect_0 | |dangerous_bunny_effect_0 | ||
|- | |- | ||
Line 758: | Line 922: | ||
|- | |- | ||
|gold_drops | |gold_drops | ||
|effect_enemy_gold_drops | |effect_enemy_gold_drops | ||
|Changes % of dropped materials. Int, not a float. | |Changes % of dropped materials. Int, not a float. | ||
See also: ''enemy_gold_drops; neutral_gold_drops'' | See also: ''enemy_gold_drops; neutral_gold_drops'' | ||
Line 765: | Line 929: | ||
|gold_on_crit_kill | |gold_on_crit_kill | ||
|effect_gold_on_crit_kill | |effect_gold_on_crit_kill | ||
|Gain materials when you score a crit | | Gain materials when you score a crit | ||
|hunting_trophy_effect_1, dagger_effect | |hunting_trophy_effect_1, dagger_effect | ||
|- | |- | ||
Line 781: | Line 945: | ||
|- | |- | ||
|heal_when_pickup_gold | |heal_when_pickup_gold | ||
|effect_heal_when_pickup_gold | |effect_heal_when_pickup_gold | ||
|% chance to heal 1HP when you pick up materials. | |% chance to heal 1HP when you pick up materials. | ||
Can't change the healed amount, only the chance | Can't change the healed amount, only the chance | ||
Line 787: | Line 951: | ||
|- | |- | ||
|hp_cap | |hp_cap | ||
|effect_hp_cap_at_current_value | |effect_hp_cap_at_current_value | ||
|Changes the Max HP cap. Default is 999999. | |Changes the Max HP cap. Default is 999999. | ||
Use ''set_cap_to_current_max_hp=true'' to cap at current. | Use ''set_cap_to_current_max_hp=true'' to cap at current. | ||
Line 793: | Line 957: | ||
|- | |- | ||
|hp_shop | |hp_shop | ||
|effect_hp_shop | |effect_hp_shop | ||
|Changes shop items to cost Max HP, instead of materials | |Changes shop items to cost Max HP, instead of materials | ||
|demon_effect_2 | |demon_effect_2 | ||
Line 814: | Line 978: | ||
|- | |- | ||
|instant_gold_attracting | |instant_gold_attracting | ||
|effect_instant_gold_attracting | |effect_instant_gold_attracting | ||
|% chance to attract dropped materials | |% chance to attract dropped materials | ||
|baby_gecko_effect_1, sifds_relic_effect_1 | |baby_gecko_effect_1, sifds_relic_effect_1 | ||
Line 830: | Line 994: | ||
|knockback | |knockback | ||
|effect_knockback | |effect_knockback | ||
| Add/reduce knockback for all weapons by ''x'' | |Add/reduce knockback for all weapons by ''x'' | ||
|boxing_glove_effect_1 | |boxing_glove_effect_1 | ||
|- | |- | ||
Line 844: | Line 1,008: | ||
|- | |- | ||
|max_melee_weapons | |max_melee_weapons | ||
|effect_generalist | |effect_generalist | ||
|Set the max number of held melee weapons to ''x'' | |Set the max number of held melee weapons to ''x'' | ||
|generalist_effect_3 | |generalist_effect_3 | ||
|- | |- | ||
|max_ranged_weapons | |max_ranged_weapons | ||
|[EMPTY] | |[EMPTY] | ||
|Set the max number of held ranged weapons to ''x'' | |Set the max number of held ranged weapons to ''x'' | ||
|generalist_effect_4 | |generalist_effect_4 | ||
|- | |- | ||
|max_weapon_tier | |max_weapon_tier | ||
|effect_max_weapon_tier | |effect_max_weapon_tier | ||
|Set the max tier for weapons to 1/2/3/4. | |Set the max tier for weapons to 1/2/3/4. | ||
Zero-based, so 0 = tier 1, 1 = tier 2, etc. | Zero-based, so 0 = tier 1, 1 = tier 2, etc. | ||
Line 860: | Line 1,024: | ||
|- | |- | ||
|min_weapon_tier | |min_weapon_tier | ||
|effect_min_weapon_tier | |effect_min_weapon_tier | ||
|Set the min tier for weapons to 1/2/3/4. Zero based (see above) | |Set the min tier for weapons to 1/2/3/4. Zero based (see above) | ||
|knight_effect_4 | |knight_effect_4 | ||
Line 900: | Line 1,064: | ||
|- | |- | ||
|pacifist | |pacifist | ||
|effect_pacifist | |effect_pacifist | ||
|Gain x% materials and XP per living enemy when a wave ends. No effect if 0 or below. | | Gain x% materials and XP per living enemy when a wave ends. No effect if 0 or below. | ||
|pacifist_effect_2 | |pacifist_effect_2 | ||
|- | |- | ||
Line 911: | Line 1,075: | ||
|- | |- | ||
|piercing | |piercing | ||
|effect_piercing | |effect_piercing | ||
|Adds +1 piercing to all projectiles | | Adds +1 piercing to all projectiles | ||
|bandana_effect_1 | |bandana_effect_1 | ||
|- | |- | ||
Line 938: | Line 1,102: | ||
|- | |- | ||
|remove_speed | |remove_speed | ||
|effect_remove_speed | |effect_remove_speed | ||
| Hitting an enemy reduces their speed by ''x''%. | |Hitting an enemy reduces their speed by ''x''%. | ||
The max removed amount can be changed (eg Ugly Tooth is max of -30%) | The max removed amount can be changed (eg Ugly Tooth is max of -30%) | ||
|ugly_tooth_effect_1 | |ugly_tooth_effect_1 | ||
Line 945: | Line 1,109: | ||
|starting_item | |starting_item | ||
|effect_starting_item | |effect_starting_item | ||
|Sets a starting item for a character | | Sets a starting item for a character | ||
|{{Color|color=cream|text=Many characters, too many to list}} | |{{Color|color=cream|text=Many characters, too many to list}} | ||
|- | |- | ||
Line 956: | Line 1,120: | ||
|stats_end_of_wave | |stats_end_of_wave | ||
|effect_gain_stat_end_of_wave | |effect_gain_stat_end_of_wave | ||
| Gain stats when the wave ends | |Gain stats when the wave ends | ||
|grinds_magical_leaf_effect_* (all 3), vigilante_ring_effect_1 | |grinds_magical_leaf_effect_* (all 3), vigilante_ring_effect_1 | ||
|- | |- | ||
Line 962: | Line 1,126: | ||
|''{{Color|color=cream|text=n/a}}'' | |''{{Color|color=cream|text=n/a}}'' | ||
|Array of structures. Should not be modified outside of ''struture_effect.gd''. | |Array of structures. Should not be modified outside of ''struture_effect.gd''. | ||
|via: structure_effect | | via: structure_effect | ||
via: gain_stat_for_every_stat_effect | via: gain_stat_for_every_stat_effect | ||
|- | |- | ||
|temp_stats_on_hit | |temp_stats_on_hit | ||
|effect_on_hit | |effect_on_hit | ||
|Gain temporary stats when you take damage, until the end of the wave. | | Gain temporary stats when you take damage, until the end of the wave. | ||
Only works with the core stats ("stat_*"), plus ''explosion_size'' and ''explosion_damage''. See ''temp_stats.gd'' for the full list. | Only works with the core stats ("stat_*"), plus ''explosion_size'' and ''explosion_damage''. See ''temp_stats.gd'' for the full list. | ||
|triangle_of_power_effect_3, masochist_effect_1 | |triangle_of_power_effect_3, masochist_effect_1 | ||
Line 973: | Line 1,137: | ||
|temp_stats_stacking | |temp_stats_stacking | ||
|effect_stack_stat | |effect_stack_stat | ||
|Gain temporary stats every 5 seconds, until the end of the wave. | | Gain temporary stats every 5 seconds, until the end of the wave. | ||
Can't change the timer, fixed to 5sec. | Can't change the timer, fixed to 5sec. | ||
Line 981: | Line 1,145: | ||
|temp_stats_while_not_moving | |temp_stats_while_not_moving | ||
|effect_stat_while_not_moving | |effect_stat_while_not_moving | ||
|Gain temporary stats when you stand still, until you move again. | | Gain temporary stats when you stand still, until you move again. | ||
Lasts until the wave ends. | Lasts until the wave ends. | ||
|barricade_effect_1, chameleon_effect_1, statue_effect_1, | |barricade_effect_1, chameleon_effect_1, statue_effect_1, | ||
Line 1,003: | Line 1,167: | ||
|unique_weapon_effects | |unique_weapon_effects | ||
|effect_unique_weapon_bonus | |effect_unique_weapon_bonus | ||
| Gain stats based on the number of unique weapons | |Gain stats based on the number of unique weapons | ||
|focus_effect_2, spider_effect_2 | |focus_effect_2, spider_effect_2 | ||
|- | |- | ||
|weapon_bonus | |weapon_bonus | ||
|effect_additional_weapon_bonus | |effect_additional_weapon_bonus | ||
| Gain stats based on the number of weapons you currently hold | |Gain stats based on the number of weapons you currently hold | ||
|focus_effect_2, spider_effect_2, | |focus_effect_2, spider_effect_2, | ||
Line 1,015: | Line 1,179: | ||
|weapon_class_bonus | |weapon_class_bonus | ||
|''{{Color|color=cream|text=n/a}}'' | |''{{Color|color=cream|text=n/a}}'' | ||
| Gain bonus stats based on the number of held weapons in the specified class | |Gain bonus stats based on the number of held weapons in the specified class | ||
|brawler_effect_1, crazy_effect_1, doctor_effect_1, | |brawler_effect_1, crazy_effect_1, doctor_effect_1, | ||
ghost_effect_1, wildling_effect_1 | ghost_effect_1, wildling_effect_1 | ||
Line 1,056: | Line 1,220: | ||
|EFFECT_CONSUMABLE_STAT_WHILE_MAX | |EFFECT_CONSUMABLE_STAT_WHILE_MAX | ||
EFFECT_CONSUMABLE_STAT_WHILE_MAX_LIMITED | EFFECT_CONSUMABLE_STAT_WHILE_MAX_LIMITED | ||
|Gain stats if you collect consumables at max HP | | Gain stats if you collect consumables at max HP | ||
|{{MiniIconbox|name=Extra Stomach}} | |{{MiniIconbox|name=Extra Stomach}} | ||
|{{MiniIconbox|name=Farmer}}, {{MiniIconbox|name=Glutton}} | |{{MiniIconbox|name=Farmer}}, {{MiniIconbox|name=Glutton}} | ||
Line 1,068: | Line 1,232: | ||
|damage_against_bosses | |damage_against_bosses | ||
|effect_damage_against_bosses | |effect_damage_against_bosses | ||
|Deal % more/less damage against elites/bosses | | Deal % more/less damage against elites/bosses | ||
|{{MiniIconbox|name=Silver Bullet}} | |{{MiniIconbox|name=Silver Bullet}} | ||
|{{MiniIconbox|name=Jack}} | |{{MiniIconbox|name=Jack}} | ||
Line 1,074: | Line 1,238: | ||
|dmg_on_dodge | |dmg_on_dodge | ||
|EFFECT_DEAL_DMG_WHEN_DODGE | |EFFECT_DEAL_DMG_WHEN_DODGE | ||
|Deal damage when you dodge (Chance%) | | Deal damage when you dodge (Chance%) | ||
|{{MiniIconbox|name=Riposte}} | |{{MiniIconbox|name=Riposte}} | ||
| - | | - | ||
Line 1,098: | Line 1,262: | ||
|enemy_damage | |enemy_damage | ||
| - | | - | ||
|Deal % more/less damage against enemies (not elites/bosses) | | Deal % more/less damage against enemies (not elites/bosses) | ||
|{{MiniIconbox|name=Peacock}} | |{{MiniIconbox|name=Peacock}} | ||
|{{MiniIconbox|name=Jack}} | |{{MiniIconbox|name=Jack}} | ||
Line 1,128: | Line 1,292: | ||
|heal_on_crit_kill | |heal_on_crit_kill | ||
|effect_heal_on_crit_kill | |effect_heal_on_crit_kill | ||
|Heal 1 HP when killing an enemy with a critical hit (Chance%) | | Heal 1 HP when killing an enemy with a critical hit (Chance%) | ||
|{{MiniIconbox|name=Tentacle}} | |{{MiniIconbox|name=Tentacle}} | ||
| - | | - | ||
Line 1,134: | Line 1,298: | ||
|heal_on_dodge | |heal_on_dodge | ||
|EFFECT_HEAL_WHEN_DODGE | |EFFECT_HEAL_WHEN_DODGE | ||
|Heal x HP when you dodge (%Chance) | | Heal x HP when you dodge (%Chance) | ||
|{{MiniIconbox|name=Adrenaline}} | |{{MiniIconbox|name=Adrenaline}} | ||
| - | | - | ||
Line 1,165: | Line 1,329: | ||
| - | | - | ||
|- | |- | ||
|temp_pct_stats_start_wave | |temp_pct_stats_start_wave | ||
|''{{Color|color=pastelred|text=None}}'' | |''{{Color|color=pastelred|text=None}}'' | ||
|(Needs confirming:) Increase stat ''x'' by y% at the start of a wave. | |(Needs confirming:) Increase stat ''x'' by y% at the start of a wave. | ||
Line 1,183: | Line 1,347: | ||
{| class="wikitable" | {| class="wikitable" | ||
!Key | !Key | ||
!Text Key | ! Text Key | ||
!Description | !Description | ||
!Values | !Values | ||
!Notes | !Notes | ||
!Used By | ! Used By | ||
|- | |- | ||
|<code>accuracy</code> | |<code>accuracy</code> | ||
Line 1,198: | Line 1,362: | ||
|<code>cryptid</code> | |<code>cryptid</code> | ||
|<code><small>effect_cryptid</small></code> | |<code><small>effect_cryptid</small></code> | ||
|Gain {0} material and XP for every living tree | | Gain {0} material and XP for every living tree | ||
at the end of a wave | at the end of a wave | ||
|<small>Number (int)</small> | |<small>Number (int)</small> |
Latest revision as of 11:52, 22 August 2024
This page documents the various effects in the vanilla game. Modders can apply these effects to their custom content.
Please view the items/characters/weapons for more details on the exact usage.
Note: Despite the folder names, most of these effects can used by characters, weapons or items. They're only split into Global/Items/Weapons here to make it easier to find the associated files.
Global Effects (Guide)
effect.gd
Location: res://items/global/effect.gd
The file that is used the most for applying effects. If you want to apply an effect, there's a very strong chance you'll do it with this file.
Here's an overview of what the various properties of effect.gd do. We'll use acid_effect_1.tres as a reference, which grants "+8 Max HP" (at time of writing).
Property | Value for Acid | Description |
---|---|---|
Key | stat_max_hp | Has two uses:
|
Text Key | n/a | If an effect key is specified, it's retrieved from the translation file.
|
Value | 8 | Sets the strength of the effect.
For stats, this determines how much of a stat should be increased. The number can also be negative, which means a stat should be decreased. Sometimes the Value is used as a boolean, where 0 means FALSE/OFF/DISABLED, and 1 means TRUE/ON/ENABLED. Examples:
|
Custom Key | n/a | Custom Key can be used instead of Key, to determine a special effect.
This allows you to use the Key to specify, in most cases, the stat that the effect should act upon, while also using a custom effect. Example:
|
Storage Method | Sum | Determines how the value should be saved/applied:
|
Effect Sign | From Value | Determines how to get the sign ("+" or "-") of the value.
|
Custom Args | n/a | Allows you to determine the formatting of any and all args that this effect uses. See below for more details. |
custom_arg.gd
Location: res://items/global/custom_arg.gd
Not an effect file, but it used by many effects. Applied to the `custom_args` property, this allows you to format additional args.
You can find items that use this by searching the code for: custom_args = [ SubResource(
For example, open estys_couch_effect_1.tres in Godot's Inspector, which has lots of args ("+2 HP Regeneration for every -1% Speed you have.").
Item Effects
Location: res://effects/items/*.gd
Despite the heading, these effects can actually be used by characters and weapons too.
File (*.gd) | key | custom_key | text_key | Description | Used By |
---|---|---|---|---|---|
effect.gd | Stat ID, eg: stat_max_hp / bounce
|
not specified | Increases a stat (key) by the value | Many items | |
projectile_effect.gd | alien_eyes
|
effect_alien_eyes
|
Shoots {0} alien eyes around you every {4} seconds dealing {1} ({3}) damage each | Alien Eyes | |
effect.gd | Stat ID, eg: stat_max_hp / bounce
|
upgrade_random_weapon
|
effect_upgrade_random_weapon
|
A random weapon is upgraded when entering a shop.
If you have no weapon to upgrade, you gain {VALUE} {STAT} instead. |
Anvil |
burn_chance_effect | burn_chance
|
effect_burn_chance
|
Attacks have a {0} chance to deal {1}x{2} ({3}) burning damage.
Needs a corresponding burning_data stats file |
Scared Sausage | |
class_bonus_effect | effect_weapon_class_bonus
|
not specified | {0} {1} with {2} weapons
Grants a bonus to a specific stat (stat_name) when using a specific weapon class (weapon_class). Eg "+100 Range with Precise weapons" |
Brawler, | |
convert_stat_effect | materials
|
effect_convert_stat_end_of_wave
|
{0} of your {1} are converted into {2} at the end of a wave ({3} {1} = {4} {2}) | Demon | |
dmg_when_death_effect | dmg_when_death_from_luck
|
effect_deal_dmg_when_death
|
{0} chance to deal {1} ({2}) damage to a random enemy when an enemy dies | Cyberball | |
dmg_when_pickup_gold_effect | dmg_when_pickup_gold_from_luck
|
effect_deal_dmg_when_pickup_gold
|
{0} chance to deal {1} ({2}) damage to a random enemy when you pick up a material | Baby Elephant, | |
gain_stat_for_every_stat_effect | Stat ID, eg: stat_max_hp / bounce
|
effect_gain_stat_for_every_enemy
|
Links 2 stats together:
|
Artificer, | |
gain_stat_for_every_stat_effect | stat_attack_speed
|
effect_gain_stat_for_every_enemy
|
Community Support | ||
gain_stat_for_every_stat_effect | stat_max_hp
|
effect_gain_stat_for_every_stat
|
Padding | ||
gain_stat_for_every_stat_effect | stat_attack_speed
|
effect_gain_stat_for_every_stat
|
Retromation's Hoodie | ||
gain_stat_for_every_stat_effect | stat_engineering
|
effect_gain_stat_for_every_stat
|
Strange Book | ||
gain_stat_for_every_stat_effect | stat_hp_regeneration
|
effect_gain_stat_for_every_perm_stat
|
Esty's Couch | ||
gain_stat_for_every_stat_effect | stat_percent_damage
|
effect_gain_stat_for_every_perm_stat
|
Power Generator | ||
healing_effect | effect_heal
|
not specified | Only used by consumables. Functionally useless in the shop. | Fruit | |
hp_cap_effect | hp_cap
|
effect_hp_cap_at_current_value
|
Your Max HP is capped at its current value | Handcuffs | |
item_exploding_effect | explode_on_hit
|
effect_explode_on_hit
|
You explode for {damage} ({scaling}) damage when you take damage.
Requires an explosion stats file, which sets the damage and scaling. |
Bull | |
item_exploding_effect | explode_on_death
|
effect_explode_on_death
|
Enemies have a {0} chance to explode for {1} ({2}) damage when they die | Landmines | |
Rip and Tear | |||||
pacifist_effect | pacifist
|
effect_pacifist
|
Gain {value} material and XP for every living enemy at the end of a wave | Pacifist | |
projectile_effect | projectiles_on_death
|
effect_projectiles_on_death
|
Spawns projectiles when an enemy dies.
Requires an associated projectile stats data (.tres) file. The .tres can be custom, or you can use the default base_ranged_weapon_stats.tres |
Baby with a Beard | |
remove_speed_effect | remove_speed
|
effect_remove_speed
|
Hitting an enemy reduces their speed by x%.
The max removed amount can be changed (eg Ugly Tooth is max of -30%) |
Ugly Tooth | |
replace_effect | double_hp_regen_below_half_health
|
effect_double_hp_regen_below_half_health
|
Regeneration Potion | ||
replace_effect | minimum_weapons_in_shop
|
effect_minimum_weapon_in_shop
|
Arms Dealer | ||
replace_effect | weapon_slot
|
effect_no_weapons
|
Bull | ||
replace_effect | hp_shop
|
effect_hp_shop
|
Demon | ||
replace_effect | trees_start_wave
|
not specified | Sets the first wave that Trees can spawn on. | Explorer | |
replace_effect | max_melee_weapons
|
effect_generalist
|
Generalist | ||
replace_effect | max_ranged_weapons
|
[EMPTY]
|
Generalist | ||
replace_effect | dodge_cap
|
effect_dodge_cap
|
Ghost | ||
replace_effect | weapon_slot
|
effect_max_weapons
|
Multitasker | ||
replace_effect | can_attack_while_moving
|
effect_cant_attack_while_moving
|
Soldier | ||
replace_effect | double_boss
|
effect_double_boss
|
Danger 5 | ||
starting_item_effect | starting_item
|
effect_starting_item
|
Brawler,
Mage, | ||
stat_effect | stat_armor
|
effect_stat_while_not_moving
|
Barricade | ||
stat_effect | stat_dodge
|
effect_stat_while_not_moving
|
Chameleon | ||
stat_effect | gold_on_crit_kill
|
effect_gold_on_crit_kill
|
Hunting Trophy | ||
stat_effect | stat_attack_speed
|
effect_stat_while_not_moving
|
Statue | ||
stat_effect | stat_percent_damage
|
effect_on_hit
|
Triangle of Power | ||
stat_effect | stat_percent_damage
|
effect_gain_stat_end_of_wave
|
Vigilante Ring | ||
stat_effect | stat_percent_damage
|
effect_stack_stat
|
Wisdom | ||
stat_effect | stat_max_hp
|
effect_gain_stat_end_of_wave
|
Grind's Magical Leaf | ||
stat_effect | stat_hp_regeneration
|
effect_gain_stat_end_of_wave
|
|||
stat_effect | stat_lifesteal
|
effect_gain_stat_end_of_wave
|
|||
stat_gains_modification_effect | effect_increase_stat_gains
|
not specified | Many characters | ||
stat_gains_modification_effect | effect_reduce_stat_gains
|
not specified | Many characters | ||
structure_effect | not specified | effect_landmines
|
Landmines | ||
tier_effect | min_weapon_tier
|
effect_min_weapon_tier
|
Knight | ||
tier_effect | max_weapon_tier
|
effect_max_weapon_tier
|
Wildling | ||
turret_effect | not specified | effect_turret
|
Turret | ||
turret_effect | not specified | effect_turret_healing
|
Medical Turret | ||
turret_effect | not specified | effect_turret_laser
|
Laser Turret | ||
turret_effect | not specified | effect_turret_rocket
|
Explosive Turret | ||
turret_effect | not specified | effect_tyler
|
Tyler | ||
turret_effect | wandering_bot
|
effect_wandering_bot
|
Wandering Bot | ||
turret_flame_effect | not specified | effect_turret_flame
|
Incendiary Turret
Wrench (Tier 2) | ||
unique_weapon_effect | stat_attack_speed
|
effect_unique_weapon_bonus
|
Focus | ||
unique_weapon_effect | stat_attack_speed
|
effect_unique_weapon_bonus
|
Spider | ||
weapon_bonus_effect | ??? | ??? | unused | ||
weapon_gain_effect | ??? | ??? | unused |
Other effects (TODO):
- chance_stat_damage_effect
- stat_cap_effect
- stat_with_max_effect
Weapon Effects
Stored in res://effects/weapons/*.gd
Like Item Effects above, some of these can be used by items/characters.
Effect File (*.gd) | key | Used By |
---|---|---|
burning_effect | effect_burning
|
Flame Turret, Flaming Knuckles, Torch, Flamethrower, Wand |
exploding_effect | effect_explode_melee
|
Plank, Plasma Sledgehammer, Power Fist, Nuclear Launcher, Shredder |
gain_stat_every_killed_enemies_effect | effect_gain_stat_every_killed_enemies
|
Ghost Axe, Ghost Flint, Ghost Scepter |
projectiles_on_hit_effect | effect_projectiles_on_hit
|
Cactus Mace, Sniper Gun |
projectiles_on_hit_effect | effect_lightning_on_hit
|
Lightning Shiv |
projectiles_on_hit_effect | effect_slow_projectiles_on_hit
|
Thunder Sword |
slow_in_zone_effect | effect_slow_in_zone
|
Taser |
weapon_stack_effect | effect_weapon_stack
|
Stick |
Danger Effects
Effect File (*.gd) | Key | Danger | Notes |
---|---|---|---|
effects/weapons/null_effect.gd | effect_no_modifiers
|
Danger 0 | - |
effects/weapons/null_effect.gd | effect_new_enemies
|
Danger 1+ | There's no code directly related to this key |
effects/weapons/null_effect.gd | effect_elites
|
Danger 2+ | There's no code directly related to this key |
items/global/effect.gd | enemy_strength
|
Danger 3 | Text key is EFFECT_STRONGER_ENEMIES , value is: 12
|
items/global/effect.gd | enemy_strength
|
Danger 4 | Text key is EFFECT_STRONGER_ENEMIES , value is: 26
|
effects/weapons/null_effect.gd | effect_more_elites
|
Danger 4+ | There's no code directly related to this key |
items/global/effect.gd | enemy_strength
|
Danger 5 | Text key is EFFECT_STRONGER_ENEMIES , value is: 40
|
effects/items/replace_effect.gd | double_boss
|
Danger 5 | Text key is effect_double_boss
|
List of Effect Keys
This section lists most of the effect keys, taken from the effect init arrays in run_data.gd (init_tracked_effects
& init_effects
).
Many of these can be applied with effect.gd (res://items/global/effect.gd).
See Stats > Secondary Stats for a list of the items these effects can apply to.
Primary Stats
Effect Key | Notes |
---|---|
stat_max_hp
|
|
stat_hp_regeneration
|
|
stat_lifesteal
|
|
stat_percent_damage
|
|
stat_melee_damage
|
|
stat_ranged_damage
|
|
stat_elemental_damage
|
|
stat_attack_speed
|
|
stat_crit_chance
|
|
stat_engineering
|
|
stat_range
|
|
stat_armor
|
|
stat_dodge
|
|
stat_speed
|
|
stat_luck
|
|
stat_harvesting
|
Misc
Some of these are repeated from above, others are only set with effect_key
. Search the decompiled project for effect_key
to find the latter.
List of effects via: res://singletons/run_data.gd > func init_effects
Also try searching: RunData.effects["effect_key"]
(replace effect_key
with a key).
See also: List of %/flat stat text modifiers: res://singletons/text.gd
key | text_key | Description | Used In (effect file, *.tres) |
---|---|---|---|
additional_weapon_effects | effect_additional_weapon_bonus | Changes a stat (key) based on how many weapons you have | multitasker_effect_2 [effect_key] |
bounce | effect_bouncing | Adds bouncing to all projectiles | ricochet_effect_1 |
bounce_damage | none | Increase bounce damage by x. Can't exceed the base damage. | arms_dealer_effect_1b, engineer_effect_4, farmer_effect_4, one_arm_effect_2 |
burn_chance | effect_burn_chance | Chance to inflict burn. Needs a corresponding burning_data stats file | scared_sausage_effect_1 |
burning_cooldown_reduction | effect_burning_cooldown_reduction | Makes burning tick faster | eye_surgery_effect_1 |
burning_spread | effect_burning_spread | Makes burning spread to +x more enemies
|
snake_effect_1 |
can_attack_while_moving | effect_cant_attack_while_moving | Set to 0 to prevent attacks while moving
|
soldier_effect_5 |
cant_stop_moving | --- | Set to 1 to stop the player from being able to stop moving.
Used in Invasion's "Pants Ant" item |
Unused, but appears to have some code that supports it. |
chance_double_gold | effect_chance_double_gold | % chance to double materials when they're collected | metal_detector_effect_1 |
class_bonus_effect | effect_weapon_class_bonus | Grants a bonus to a specific stat (stat_name) when using a specific weapon class (weapon_class) | brawler_effect_1, crazy_effect_1, doctor_effect_1,
ghost_effect_1, wildling_effect_1 |
consumable_heal | effect_consumable_heal | Increase HP gained from consumables | alien_worm_effect_2, lemonade_effect_1, weird_food_effect_1,
chunky_effect_3, chopper_effect, chopper_4_effect |
convert_stats_end_of_wave | effect_convert_stat_end_of_wave | Converts a stat (key) to another stat (to_stat) when a wave ends | demon_effect_1 |
destroy_weapons | Removes all held weapons when you enter a shop | arms_dealer_effect_3 | |
diff_gold_drops | --- | Appears to increase/decrease the chance for enemies to drop materials by % | Unused, but appears to have some code that supports it. |
dmg_when_death_from_luck | effect_deal_dmg_when_death | % chance to deal a % of luck as damage, when an enemy dies.
Accepts a stat option, but only scales with Luck, ignoring the stat you specify |
cyberball_effect_1 |
dmg_when_pickup_gold_from_luck | effect_deal_dmg_when_pickup_gold | % chance to deal a % of luck as damage, when you collect a material.
As above, accepts a stat but only scales with Luck |
baby_elephant_effect_1, lucky_effect_3 |
dodge_cap | effect_dodge_cap | Increases/decreases the dodge cap by a %.
Warning: This increases the cap, it doesn't overwrite it. So you'll probably need to add a condition to check for Ghost (or just check the current cap). Default is 60% (or 90% with Ghost). |
ghost_effect_3 |
double_boss | effect_double_boss | Makes 2 bosses spawn instead of 1 | difficulty_5_effect_4 |
double_hp_regen | effect_double_hp_regen | Makes HP Regeneration trigger twice as often | doctor_effect_3 |
double_hp_regen_below_half_health | effect_double_hp_regen_below_half_health | Makes HP Regeneration trigger twice as often, when you're below 50% HP | potion_effect_1 |
enemy_gold_drops | effect_enemy_gold_drops | Change the amount of materials dropped by enemies.
This is an int (eg -50), not a float (eg -0.5). See also: gold_drops, neutral_gold_drops |
explorer_effect_8 |
enemy_speed | --- | Change enemy movement speed | +: alien_baby_effect_2, explorer_effect_9 |
-: snail_effect_1, old_effect_1 | |||
enemy_strength | effect_stronger_enemies | Affects both enemy HP, and the damage they deal | difficulty_3_effect_2, difficulty_4_effect_2, difficulty_5_effect_2 |
explode_on_death | effect_explode_on_death | % chance for enemies to explode on death.
Needs a corresponding weapon_stats file |
rip_and_tear_effect_1 |
explode_on_hit | effect_explode_on_hit | Explode when you take damage.
Always procs. You can set the chance%, but this is ignored |
bull_effect_4 |
explosion_damage | none | Increases explosion damage | dynamite_effect_1, explosive_shells_effect_1, etc |
explosion_size | none | Increases explosion size | plastic_explosive_effect_1, artificer_effect_1b |
free_rerolls | effect_free_shop_reroll | Adds free rerolls. Can't be negative | dangerous_bunny_effect_0 |
gain_* | Change stat modifications by x%, eg. "Increase range modifications by 50%".
Added via stat_gains_modification_effect, and applied via get_stat_gain. |
See RunData.effects["gain_" + stat]
| |
gain_pct_gold_start_wave | effect_gain_pct_gold_start_wave | Gain/lose +x% of your materials when a wave starts. | piggy_bank_effect_1 |
gold_drops | effect_enemy_gold_drops | Changes % of dropped materials. Int, not a float.
See also: enemy_gold_drops; neutral_gold_drops |
explorer_effect_8, farmer_effect_3, streamer_effect_2b |
gold_on_crit_kill | effect_gold_on_crit_kill | Gain materials when you score a crit | hunting_trophy_effect_1, dagger_effect |
group_structures | effect_group_structures | Makes structures (mines/turrets) spawn closely grouped together | engineer_effect_3 |
harvesting_growth | effect_harvesting_growth | Increase/decrease the % Harvesting growth.
Without items it's 5% at the end of each wave. Farmer has +5, Crown has +8. |
crown_effect_1, farmer_effect_2 |
heal_when_pickup_gold | effect_heal_when_pickup_gold | % chance to heal 1HP when you pick up materials.
Can't change the healed amount, only the chance |
cute_monkey_effect_1 |
hp_cap | effect_hp_cap_at_current_value | Changes the Max HP cap. Default is 999999.
Use set_cap_to_current_max_hp=true to cap at current. |
handcuffs_effect_4 |
hp_shop | effect_hp_shop | Changes shop items to cost Max HP, instead of materials | demon_effect_2 |
hp_start_next_wave | effect_hp_start_next_wave | Start the next wave with % less HP. Int, not float. | weird_ghost_effect_2 |
hp_start_wave | effect_start_wave_less_hp | Start ALL waves with % less HP. Int, not float. | sad_tomato_effect_2 |
inflation | --- | Increases the cost of items (even more), based on the current wave.
Inflation was removed. It was part of the original demo. |
|
instant_gold_attracting | effect_instant_gold_attracting | % chance to attract dropped materials | baby_gecko_effect_1, sifds_relic_effect_1 |
item_box_gold | effect_item_box_gold | +x materials when you pick up a Crate | bag_effect_1 |
items_price | none | Change shop item costs by x% | coupon_effect_1, entrepreneur_effect_0, mutant_effect_2, saver_effect_4 |
knockback | effect_knockback | Add/reduce knockback for all weapons by x | boxing_glove_effect_1 |
lose_hp_per_second | effect_lose_hp_per_second | HP is reduced by -x every second | blood_donation_effect_2, sick_effect_3 |
map_size | none | Increase/decrease the map size by x% | explorer_effect_6, old_effect_3 |
max_melee_weapons | effect_generalist | Set the max number of held melee weapons to x | generalist_effect_3 |
max_ranged_weapons | [EMPTY] | Set the max number of held ranged weapons to x | generalist_effect_4 |
max_weapon_tier | effect_max_weapon_tier | Set the max tier for weapons to 1/2/3/4.
Zero-based, so 0 = tier 1, 1 = tier 2, etc. |
wildling_effect_3 |
min_weapon_tier | effect_min_weapon_tier | Set the min tier for weapons to 1/2/3/4. Zero based (see above) | knight_effect_4 |
neutral_gold_drops | none | Increases materials from EntityType.NEUTRAL by +x% (ie. trees)
See also: gold_drops; enemy_gold_drops |
Unused, but supported in the code |
no_melee_weapons | effect_no_melee_weapons | Stops melee weapons appearing in the shop.
Doesn't remove weapons that are already held. |
ranger_effect_5 |
no_min_range | none | If 1, the min_range of a weapon is used.
Useless in vanilla because all weapons have a min_range of 0. |
Unused, but supported in the code |
no_ranged_weapons | effect_no_ranged_weapons | Stops ranged weapons appearing in the shop.
Doesn't remove weapons that are already held. |
gladiator_effect_3, knight_effect_3 |
number_of_enemies | none | Increase/decrease the number of enemies that spawn, when a group of them spawns | candle_effect_3, gentle_alien_effect_2, mouse_effect_2, white_flag_effect_2,
explorer_effect_7, loud_effect_2, old_effect_4 |
one_shot_trees | effect_one_shot_trees | Makes trees get destroyed in 1 hit | lumberjack_shirt_effect_1 |
pacifist | effect_pacifist | Gain x% materials and XP per living enemy when a wave ends. No effect if 0 or below. | pacifist_effect_2 |
pickup_range | effect_pickup_range | Change pickup range by x% | alien_tongue_effect_1, gnome_effect_4, little_frog_effect_1,
explorer_effect_4, soldier_effect_3 |
piercing | effect_piercing | Adds +1 piercing to all projectiles | bandana_effect_1 |
piercing_damage | effect_piercing_damage | Bounce damage. Can't exceed the base damage. | pumpkin_effect_1,
arms_dealer_effect_1b, engineer_effect_4, farmer_effect_4, one_arm_effect_2 |
projectiles_on_death | effect_projectiles_on_death | Spawns projectiles when an enemy dies.
Requires an associated projectile stats data (.tres) file. The .tres can be custom, or you can use the default base_ranged_weapon_stats.tres |
baby_with_a_beard_effect_1 |
recycling_gains | effect_recycling_gains | Increase gains from recycling.
Recycling Machine = +35%, Entrepreneur = +25% (total: +60%, so realistically you'd need to use set this to <40 to avoid an infinite money exploit with Entrepreneur and Recycling Machine) |
recycling_machine_effect_1, entrepreneur_effect_2 |
remove_speed | effect_remove_speed | Hitting an enemy reduces their speed by x%.
The max removed amount can be changed (eg Ugly Tooth is max of -30%) |
ugly_tooth_effect_1 |
starting_item | effect_starting_item | Sets a starting item for a character | Many characters, too many to list |
stat_links | n/a | Seems to be used by gain_stat_for_every_stat_effect.gd, to associate one stat with another (eg. gain X per y).
Linked stats can be: General stats (stat_max_hp etc), "materials", "structure" (number of structures) and "living_enemy". |
|
stats_end_of_wave | effect_gain_stat_end_of_wave | Gain stats when the wave ends | grinds_magical_leaf_effect_* (all 3), vigilante_ring_effect_1 |
structures | n/a | Array of structures. Should not be modified outside of struture_effect.gd. | via: structure_effect
via: gain_stat_for_every_stat_effect |
temp_stats_on_hit | effect_on_hit | Gain temporary stats when you take damage, until the end of the wave.
Only works with the core stats ("stat_*"), plus explosion_size and explosion_damage. See temp_stats.gd for the full list. |
triangle_of_power_effect_3, masochist_effect_1 |
temp_stats_stacking | effect_stack_stat | Gain temporary stats every 5 seconds, until the end of the wave.
Can't change the timer, fixed to 5sec. Ticks 4 times in a 20sec wave (1), 12 times in a 60sec wave (9), 18 times in a 90sec wave (10+). |
wisdom_effect_1 |
temp_stats_while_not_moving | effect_stat_while_not_moving | Gain temporary stats when you stand still, until you move again.
Lasts until the wave ends. |
barricade_effect_1, chameleon_effect_1, statue_effect_1,
soldier_effect_1, soldier_effect_2, speedy_effect_3, streamer_effect_1 |
torture | effect_torture | Stops you healing in any way. Gain +x HP per second instead | torture_effect_2 |
trees | effect_trees | Increases the number of tress that can spawn at once. | tree_effect_1, explorer_effect_1 |
trees_start_wave | [EMPTY] | Either makes trees spawn more often, or makes trees spawn in immediately after starting a wave (see _physics_process in wave_manager.gd) | explorer_effect_11 |
unique_weapon_effects | effect_unique_weapon_bonus | Gain stats based on the number of unique weapons | focus_effect_2, spider_effect_2 |
weapon_bonus | effect_additional_weapon_bonus | Gain stats based on the number of weapons you currently hold | focus_effect_2, spider_effect_2,
gladiator_effect_1, multitasker_effect_2 |
weapon_class_bonus | n/a | Gain bonus stats based on the number of held weapons in the specified class | brawler_effect_1, crazy_effect_1, doctor_effect_1,
ghost_effect_1, wildling_effect_1 see: effect_weapon_class_bonus |
weapon_slot | effect_no_weapons
effect_max_weapons |
Set the number of weapon slots to x | bull, multitasker, one arm |
xp_gain | none | Increase/decrease XP gain by x% | bean_teacher_effect_1, black_belt_effect_1, diploma_effect_2, scar_effect_1
mutant_effect_1 |
Note: These effects are listed in run_data, but don't do anything: gambler, leave_burning, wandering_bots.
Added in v0.6.1.6
- double_hp_regen_below_half_health
- hit_protection
- minimum_weapons_in_shop
- percent_materials (only works with temp_stats_while_not_moving)
- temp_stats_while_moving
- upgrade_random_weapon
- weapons_price
Added in v0.8.0.3
View more details in: Patch 0.8.0.3/Modding Changes
Key | Text | Description | Item(s) | Characters |
---|---|---|---|---|
consumable_stats_while_max | EFFECT_CONSUMABLE_STAT_WHILE_MAX
EFFECT_CONSUMABLE_STAT_WHILE_MAX_LIMITED |
Gain stats if you collect consumables at max HP | Extra Stomach | Farmer, Glutton |
convert_stats_half_wave | EFFECT_CONVERT_STAT_TEMP_HALF_WAVE | Converts stats halfway through the wave | > | Cyborg |
damage_against_bosses | effect_damage_against_bosses | Deal % more/less damage against elites/bosses | Silver Bullet | Jack |
dmg_on_dodge | EFFECT_DEAL_DMG_WHEN_DODGE | Deal damage when you dodge (Chance%) | Riposte | - |
dmg_when_death | EFFECT_DEAL_DMG_WHEN_DEATH | Damage a random enemy when another enemy dies (Chance%) | Cyberball | - |
dmg_when_heal | EFFECT_DEAL_DMG_WHEN_HEAL | Damage a random enemy when you heal (Chance%) | > | Lich |
dmg_when_pickup_gold | EFFECT_DEAL_DMG_WHEN_PICKUP_GOLD | Damage a random enemy when you collect a material | Baby Elephant | Lucky |
enemy_damage | - | Deal % more/less damage against enemies (not elites/bosses) | Peacock | Jack |
enemy_health | - | Enemies have % more/less HP | > | Jack |
explode_on_consumable | effect_explode_on_consumable | Explode when you collect a consumable (Chance%) | Spicy Sauce | Glutton |
extra_enemies_next_wave | effect_extra_enemies_next_wave | Lamprey enemies will span at the start of the next wave | Bait | - |
giant_crit_damage | effect_giant_crit_damage | Crits deal % of an enemy's HP as bnus damage | Giant Belt | - |
heal_on_crit_kill | effect_heal_on_crit_kill | Heal 1 HP when killing an enemy with a critical hit (Chance%) | Tentacle | - |
heal_on_dodge | EFFECT_HEAL_WHEN_DODGE | Heal x HP when you dodge (%Chance) | Adrenaline | - |
starting_weapon | effect_starting_item | Starting weapon for characters. Key is the weapon's my_id
|
> | Brawler, Crazy, |
stats_next_wave | effect_stat_next_wave | Change stats, for the next wave only | Peacock | - |
structures_cooldown_reduction | effect_structures_cooldown_reduction | Reduces the attack cooldown of your structures by x
(scales with stat specified with key) |
Improved Tools | - |
temp_pct_stats_stacking | None | (Needs confirming:) Similar to temp_stats_stacking ,
but increases stat x by y% every 5 seconds, until the end of the wave |
None | - |
temp_pct_stats_start_wave | None | (Needs confirming:) Increase stat x by y% at the start of a wave. | None | - |
upgrade_random_weapon | effect_upgrade_random_weapon | See Anvil. The stat that gets increased if all weapons are maxed
can be chanegd with |
Anvil |
Added in v1.0.0.3
View more details in: Modding Changes for 1.0.0.3
Key | Text Key | Description | Values | Notes | Used By |
---|---|---|---|---|---|
accuracy
|
EFFECT_ACCURACY
|
+/-x % accuracy | Number (%) | Renegade | |
cryptid
|
effect_cryptid
|
Gain {0} material and XP for every living tree
at the end of a wave |
Number (int) | Cryptid | |
extra_loot_aliens_next_wave
|
effect_extra_loot_aliens_next_wave
|
+x additional loot aliens appear during the next wave | Number (int) | Applied with custom_key
|
Lure |
guaranteed_shop_items
|
effect_guaranteed_shop_item
|
Shops always sell x | Key = Item ID | Applied with custom_key
|
Fisherman |
no_heal
|
effect_no_heal
|
You can't heal in any way | Bool (0/1) | Golem | |
projectiles
|
EFFECT_PROJECTILES
|
+x projectiles | Number (int) | Renegade | |
specific_items_price
|
EFFECT_SPECIFIC_ITEM_PRICE
|
+/- x price | Key = Item ID | Applied with custom_key
|
Fisherman |
stats_below_half_health
|
effect_stat_below_half_health
|
{STAT/VALUE} when you have less than 50% health | Key = stat | Applied with custom_key
|
Golem |
stats_on_level_up
|
EFFECT_STAT_ON_LEVEL_UP
|
{STAT/VALUE} when you level up | Key = stat | Applied with custom_key
|
Apprentice |
temp_stats_on_dodge
|
EFFECT_TEMP_STAT_ON_DODGE
|
{STAT/VALUE} when you dodge | Key = stat | Applied with custom_key
|
Cryptid |
tier_i_weapon_effects
|
EFFECT_TIER_I_WEAPON_BONUS
|
{STAT/VALUE} for every Tier 1 weapon | Key = stat | Applied with custom_key
|
King |
tier_iv_weapon_effects
|
EFFECT_TIER_IV_WEAPON_BONUS
|
{STAT/VALUE} for every Tier 4 weapon | Key = stat | Applied with custom_key
|
King |
tree_turrets
|
EFFECT_TREE_TURRET
|
Killing a tree spawns a turret | Bool (0/1) | Pocket Factory | |
upgraded_baits
|
effect_upgraded_baits
|
Baits make special enemies spawn in all future waves | Bool (0/1) | Fisherman | |
special_enemies_last_wave
|
UNUSED | UNUSED | UNUSED | UNUSED | UNUSED |
Modding [T] | |
---|---|
Wiki | Modding • Notes • Effects • Vanilla Items |
Godot | Download • Docs • GDRETools • GodotSteam • Jonus' Tutorial |
Misc | BrotatoMods • Cooldown Calculator |