Risk of Bulletstorm
A mod for Risk of Rain 2 that plans to add custom content, modified from Enter The Gungeon. Currently untested for multiplayer. I've added a few things here and there for networking, but any actual effects in multiplayer are unintended effects.
Feel free to message me in the Risk of Rain 2 Modding discord for any broken junk or suggestions.
Dependencies
- [Hard] BepInEx and R2API
- [Hard] ThinkInvis - TILER2
Compatibility with other mods
- Bandit Reloaded : Item Displays
- HAND : Item Displays
- Various: Unofficial support (As in I manually added their projectiles in without really asking) for changing the accuracy for projectiles (such as from the uncommon Scope item) for:
- LuaFubuki: Gauss, Lunar Chimera, Void Reaver
- KomradeSpectre: Aetherium,
- Zerodomai: Tristana
- duckduckgreyduck: ArtificerExtended
- rob: Direseeker, PlayableTemplar, Paladin, Twitch
- RyanP: ExpandedSkills
- TheMysticSword: AspectAbilities
- Enigma: Cloudburst
Known Issues:
- Master Round isn't given if the teleporter event was forcefully completed (such as with RORCheats)
- Item Displays on REX and MULT aren't setup properly
- Some issues with item displays for scav and mithrix
- Icon is broken for Master Round and Number 2
Planned
- BetterUI, ItemStatsMod Support
- Multiplayer Support
- Jarlyk's Hailstorm support (Curse increases mimic chance)
- Better messages for the Master Round
Items
Pickups
Every 30 kills (+50% per stage), the game will have a 30% chance to spawn a random weighted pickup. "Forgive Me, Please" will not trigger this. If it does, tell me because it's not supposed to.
- Armor: [10% chance] Destroys itself to block one hit of damage dealing more than 20% health or deals fatal damage, and fires a Blank. (TODO: SFX)
- Blank: [25% chance] Press T to activate, destroying all projectiles, stunning and knocking nearby enemies back. Consumed on use. (TODO: SFX, New Visual effect)
- Spread Ammo: [30% chance] Pick up to restore all allies' cooldowns and restores one equipment charge to all equipment.
White
- Cartographer's Ring: Upon starting the next stage, 10% chance (+5% chance per stack) of automatically revealing all interactables. Counts based off all players' item counts. Stacking beyond 100% has no effect.
- Mustache: Heal for +10% (+10% per stack) health upon purchase.
Green
- Disarming Personality: Hyperbolically reduces purchase costs by 10% (-5% per stack) up to 60%.
- Enraging Photo: Gain a temporary +100% damage boost upon taking 11% of your health in damage for 1 (+0.25 per stack) seconds.
- Roll Bomb: After using your Utility, drop 1 bomb(s) (+1 per stack) for 100% damage.
- Scope: Reduces spread by -10% (-5% per stack).
- There is a projectile whitelist to prevent breaking.
- You can disable the whitelist to affect all projectiles, but note this may break some functionality with other projectiles. Feel free to recommend me other projectiles to add to the whitelist, including any modded projectiles.
Red
- Backpack: Grants 1 extra equipment slot per stack.
- Hold [Left Shift] + [NumberRow keys] to switch between slots.
- Press [Left Shift] + [=] to list all equipment.
- Press [F] or [G] to cycle left/right through equipment.
- Adds onto MULT's additional slot. (MULT w/ 1 backpack = 3 slots, though you can't use retool to switch to the modded ones)
- Number 2: Increases your base stats by for every dead player.
- Singleplayer: Starts with one player dead.
- Each bonus is multiplied by: (amount dead) * Inventory Count;
| Stat |
Bonus |
| baseAttackSpeedAdd |
0.25 |
| baseDamageAdd |
2 |
| baseHealthAdd |
25 |
| baseMoveSpeedAdd |
1 |
| baseRegenAdd |
0.5 |
| armorAdd |
2 |
| critAdd |
5 |
Lunar
- Metronome: Gain a 2% damage bonus for every enemy you kill with the same skill, up to 150% (75 kills). Gain 25 extra stacks per pickup. Lose 75 stacks upon using a different skill. Shows a buff for tracking.
- Ring of Miserly Protection: Grants +125% (+75% per stack) increased maximum health ...but one shatters upon using a shrine (does not include combat).
Boss
- Master Round: Granted upon clearing a teleporter boss, as long as no player took more than 3 hits (scales with stages cleared) each. Adds 150 max health per stack.
Equipment
Normal
- Bomb: Throws a bomb for 100% damage. CD: 14s
- Charm Horn: Blowing this horn [Charms] all enemies within a radius of 20 meters for 10 seconds.
- Friendship Cookie: Revives all players and gives 3 seconds of immunity. If in singleplayer, gives an Infusion instead. Consumed on use.
- Magazine Rack: Place to create a zone of no cooldowns within a radius of 3.5m for 2.5 seconds. CD: 90s
- Meatbun: Heals the player for 33% health. Grants +10% damage until the player takes more than 5% damage. Buff stacks up to 5 times. CD: 90s
- Medkit: Heals the player for 75% max health and restores 50% barrier. CD: 100s
- Molotov: Throw to cover an area in flames for 10% damage per second for 8 seconds. CD: 55s
- Orange: -20% chance to spawn. Consuming permanently reduces equipment recharge rate by 10%, increases health by 10%, fully heals the player, but is removed from the inventory.
- Portable Barrel Device: Places a barrel, but doesn't give any money or experience for picking it up. CD: 30s
- Ration: Heals for 40% health. Automatically used upon taking fatal damage. Consumed on use.
Lunar
- Spice: Increases and decreases stats per consumed Spice. It's been slightly adjusted from Gungeon's values. These values are constant for each stack, not additive, except for the 5+ stack.
| Spice Consumed |
Health Multiplier |
Attack Speed |
Accuracy |
Enemy Bullet Speed |
Damage |
Curse |
| 1 |
+25% |
+20% |
+0% |
+0% |
+0% |
+0.5 |
| 2 |
+50% |
+40% |
+25% |
+0% |
+0% |
+1 |
| 3 |
+25% |
+40% |
+25% |
-10% |
+20% |
+1 |
| 4 |
+0% |
+40% |
+15% |
-15% |
+35% |
+1 |
| 5+ |
5 curse |
+40% |
-10% |
-15% |
+15% |
+1 |
- Consuming beyond 5 will continue to add the same as the bonuses from 5. It's not exact, but the health reduction is added via PermanentCurse. Maximum health reduced by curse is reduced by a factor of
1 + 0.01 * n, where n is the number of stacks.
Special
- Curse - Certain items apply curse. The chance of encountering a Jammed enemy increases as you gain more Curse. This is independent of elite affixes.
- Accuracy - Certain items (Spice, Scope) affect the accuracy.
- +Acc: Tighter bullet spread, projectiles fire closer towards your crosshair
- -Acc: Wider bullet spread, (Not Implemented) projectiles tend to become inaccurate.
Buffs
---AI Specific:---
- [Charmed]: Only targets any team except the team they're charmed by, and won't retaliate against the charmer's team.
- [Jammed]: +100% damage, +100% crit chance, +20% attack speed, +20% movement speed.
Changelog
1.1.0 - Content Update:
- Added---
- Pickups: Armor, Blank, and Spread Ammo
- Whites: Cartographer's Ring
- Greens: Disarming Personality, Enraging Photo, Roll Bomb
- Reds: Backpack, Number 2, Unity
- Lunars: Ring of Miserly Protection
- Boss: Master Round
- Equipment: Charm Horn, Friendship Cookie, Magazine Rack, Meatbun, Medkit, Molotov, Orange, Portable
Table Barrel Device, Ration, Trusty Lockpicks
- Lunar Equipment: Spice
- Mustache--- Added config for interaction with Blood Shrines. Added interaction with Sacrifice.
- Scope--- now affects ALOT of projectiles but not all. Can affect all projectiles via config (strongly discouraged).
- Metronome--- Added config for stack loss. Added stack display via buff count. Component changes should prevent the negative damage bug.
- Bomb--- Added assets, increased cooldown
- EliteSpawningOverhaul--- Temporarily removed dependency due to changing how Jammed is applied. Deciding whether to keep or not.
- ClassicItems--- Temporarily removed soft dependency due to it completely breaking the plugin.
1.0.1 - Reverted dependency of R2API. Adjusted item descriptions.
1.0.0 - Released!
Credits
Rico - Equipment Removal
Rein - Nonspecific, DirectorAPI
KomradeSpectre, Chen - Lots, and TILER2 Help
KingEnderBrine - keypress stuff
OKIGotIt, Ghor - Spice
rob - help with hooks
Minicooper237 - Projectile inaccuracy formula