Some mods may be broken due to the recent Alloyed Collective update.
ProcSolver
Limits proc chains based on damage sourcing. Has config for proc rate and proc chain depth. FULLY CONFIGURABLE!
| Last updated | 5 days ago |
| Total downloads | 8692 |
| Total rating | 1 |
| Categories | Mods Tweaks Server-side |
| Dependency string | RiskOfBrainrot-ProcSolver-1.1.5 |
| Dependants | 3 other packages depend on this package |
This mod requires the following mods to function
RiskofThunder-R2API_Language
API for modifying the language localisation of the game
Preferred version: 1.0.1bbepis-BepInExPack
Unified BepInEx all-in-one modding pack - plugin framework, detour library
Preferred version: 5.4.2116LordVGames-AddRunicLensToProcChain
Fixes Runic Lens being able to restart any proc chains it's in, potentially infinitely with enough luck & other proc items.
Preferred version: 1.0.4RiskOfBrainrot-NoMoreBandsSteal
Changes some procs to only trigger on skill or equipment damage! Configurable!
Preferred version: 1.0.6RiskOfBrainrot-ProcPatcher
Makes proc coefficient no longer affect proc chance for bleed and total damage procs. Also makes Shuriken use Primary Damage Source. Configubale.
Preferred version: 1.2.0README
Github: https://github.com/bbborbo/RoR2ProcSolver
Discord: https://discord.gg/yFRx3E6Yep
Changes:
- (Configurable) Caps proc chain length at 3 for chains initiated by a skill or equipment.
- (Configurable) Caps proc chain length at 1 for chains initiated by an item (autoplay).
- (Configurable) Reduces proc chain rate in proc chains initiated by a skill or equipment to 100%.
- (Configurable) Reduces proc chain rate in proc chains initiated by an item (autoplay) to 50%.
How Do I Make My Mod Compatible?
Proc Solver uses a new "proc rate" parameter to control proc chains. If your proc chain item doesn't incorporate it, then it can potentially extend proc chains past when ProcSolver would have ended it. Here's how you can make it compatible:
Step 1: Add the ProcSolver DLL to your libs/references/dependencies
Step 2: Add this piece of code to somewhere in your project
public static float GetProcRate(DamageInfo damageInfo)
{
if (damageInfo.procCoefficient <= 0 || !procSolverInstalled)
return damageInfo.procCoefficient;
return _GetProcRate(damageInfo);
}
[MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)]
private static float _GetProcRate(DamageInfo damageInfo)
{
return ProcSolverPlugin.GetProcRateMod(damageInfo);
}
Step 3: Any time you have a proc chain item, when rolling to proc, replace Util.CheckRoll(yourProcChance * damageInfo.procCoefficient, attackerMaster) with Util.CheckRoll(yourProcChance * GetProcRate(damageInfo), attackerMaster)
This will not affect your items' proc chances if ProcSolver is not installed!
Made by Orange and Kiwi. Thanks to mysticalchicken for help with the proc chain mask !
CHANGELOG
1.1.6
- Optimized proc chain depth calculation
- Updated dependencies
- Updated default config values following ProcPatcher math changes
- Updated compatibility information
1.1.5:
- Updated for alloyed Collective
- Compensates for SureProc in proc chain limit