From Brotato Wiki
This page covers changes that effects modders. It is only useful & relevant if you are a modder.
Weapon classes are now added to weapons as resources, just like you would add a weapon's upgrade or stats resource files. This is huge news!
Previously, to add a new weapon class, you'd have to edit the hardcoded
WeaponTyp enum -- which made adding new classes very tricky, as it required a hacky workaround if you wanted to use ModLoader.
There are some breaking changes to existing mods:
- Removed stat_effect.gd. Nearly all items now use effect.gd, which has been expanded.
Removed Effect Files
These effect files have been removed. Their effects have been replaced with just using effect.gd instead, which simplifies effect management.
The following effects have been removed. Some of these didn't do anything, others have been renamed.
|Efect Key (Old)||Replacement||Notes|
|Split into 2 effects|
|gambler||-||Did nothing before|
|leave_burning||-||Did nothing before|
New Effect Files
These effect files are new:
New Effect Keys
These effect keys have been added:
Effects have been split into 2 funcs. Previously they were all in
init_effects, but now there's also
init_stats comes with a huge benefit: TempStats can use any stat listed here! In the last version, TempStats was limited to just the primary stats that were defined in temp_stats.gd. But now, this change means that custom effects that give you temporary stats can now be a lot more varied, able to affect things like
knockback, and new effects like
DebugService has some cool new tweaks:
- "Debug Weapons" now works like "Debug Items" does, by adding the specified weapons only once. Previously it would keep adding them at the end of every wave.
- There's a new option, "Disable Saving" (
disable_saving), which stops the game from saving data. This makes it possible to use the debug option "Unlock All Challenges" (
unlock_all_challenges), which previously saved your game (as part of its functionality in
complete_challenge), which could disrupt up your save file.
Extra changes that might affect your mods.
Items don't have a
unique bool anymore. Now they're set as unique if the max number (
Custom arg color/formatting is handled differently now. Instead of using
arg_signs, now you use "Custom Arg" (
custom_arg). To add one:
- Increase the
- Right-click on an
- Choose "New CustomArg" (it's just below the "New Curve" options)
Like the old
arg_signs, each arg that's displayed on your item's text has an index, starting from
0. You can set the respective item's options to affect how that arg looks. While this is initially a little more complex, it does offer more options for arg formatting. For more info on what the options do, see
func get_arg_value in effect.gd.