Core API Changelog 1.3.7 - Seekers of the Storm 2.0 Phase 2
Disclaimer
Modders who recieved the 1.3.7 Beta are not affiliated with Gearbox. Said modders are not responsible nor liable for these changes or any frustration.
If there are any significant changes that are worth being documented that aren't already, simply leave a post in the 1.3.7 API Changelog thread in #development in the RoR2 Modding Discord. It is possible we missed something.
DCCSBlender
Prior to 1.3.7, each DccsPool (DP) with monsters/interactables from both DLCs would need a DirectorCardCategorySelection (DCCS) for the base game, DLC1, DLC2, and DLC1+2. For example, dpSkyMeadowMonsters would need:
dccsSkyMeadowMonsters(The base pool)dccsSkyMeadowMonstersDLC1(The pool for DLC1)dccsSkyMeadowMonstersDLC2(The pool for DLC2)dccsSkyMeadowMonstersDLC1+2(The pool for DLC1+2)
This approach had some side effects where the latter three DCCS would compete with each other (dccsSkyMeadowMonsters doesn't compete because it is in the Always Include field of the DccsPool). It explains why, for example, Magma Worm would be able to spawn in Sky Meadow even though DLC1 was enabled. It also explains why Void Cradles cannot roll sometimes.
A con with this approach is scalability. To support both DLCs in a modded/new stage, you would need 4 monster DCCS and 4 interactable DCCS. There are a lot of repeated entries across all of these assets and it results in a massive time sink to implement them all.
Post 1.3.7, a given DP would only need 1 DCCS per expansion. dpSkyMeadowMonsters now only needs:
dccsSkyMeadowMonstersdccsSkyMeadowMonstersDLC1dccsSkyMeadowMonstersDLC2
Additionally, the DCCSBlender class will automatically blend all of the dccs together. There are no longer repeated card entries across a DP's DCCS:
dccsSkyMeadowMonstersonly contains cards tied to the base game.dccsSkyMeadowMonstersDLC1only contains cards tied to DLC1.

There are new fields in the ClassicStageInfo of each RoR2 map called contentSourceMixLimitOverride and contentSourceMixLimitOverrideValue. Currently, the game only mixes a maximum of 2 DCCS into the base dccs provided. This means if there was a third expansion (a mod or a hypothetical DLC3) with its own DCCS, it will compete with DLC1 and DLC2 dccs. The contentSourceMixLimitOverride fields overrides that behavior per scene to allow more or fewer mixes.
What needs to be done:
For developers that add monster entries via R2API: wait. R2API will update to account for the DCCS changes.
For developers that make new stages or monster pools:
- Backup your stage's DCCS and DP in case of future changes.
- Remove any DLC1+2 DCCS from the associated DP.
- Remake any DLC1 or DLC2 DCCS to make it only contain respective DLC content. For example: Fogbound Lagoon's DLC1 Monster DCCS should only contain Xi Construct, Alpha Construct, Gup, etc.
- Your DP should reflect this:

False Son Entity States
Various entity states related to the boss fight make changes in fields and methods available which need to be adapted if accessed previously.
EntityStates.FalseSonBoss.FissureSlamremovedminimumDuration,swingEffectInstance,detonateNextFrame,amServer,totalFissuresFired, andtimeToGenerateNextFissure.EntityStates.FalseSonBoss.FissureSlamWindupremovedgauntlet,soundID,chargeAnimPlayed, andstateAborted.EntityStates.FalseSonBoss.LunarRaineremovednodesToTeleportTo,fissureLocation, andlunarRainStartTime.fisurreLocschanged from aList<NodeGraph.NodeIndex>to aList<Vector3>.EntityStates.SwatAwayPlayerSlamremoveddamageCoefficient,hitEffectPrefab,procCoefficient,pushAwayForce,forceVector,impactSound,minimumDuration,blastRadius,blastProcCoefficient,blastDamageCoefficient,blastForce,blastBonusForce,blastImpactEffectPrefab,blastEffectPrefab, andfistEffectPrefab.hitBoxGroupNameis now static.swingEffectInstanceis now not static.EntityStates.FalseSonBoss.LunarGazeFireandEntityStates.FalseSonBoss.LunarGazeFirePluscompletely removed.RoR2/MeridianEventTriggerInteractionmassive changes.
Item References
- The following items have been renamed:
LowerHealthBody->AttackSpeedPerNearbyAllyOrEnemy(and similar for the related buff, collider, and item behavior)GoldOnStageStart->BarrageOnBoss(and similar for the related buff and item behavior)ResetChests->ItemDropChanceOnKill- Note that this changes the Addressable Keys for any of the associated item assets.
Character Body Flag UseAmbientLevel
CharacterBody.BodyFlags.UsesAmbientLevelhas been added.
Damage Source Equipment
- There is now a new
DamageSourcetype calledEquipment. This is a flag that tracks damage done by an equipment. - This is not included in the already existing
SkillMask.
Other API Changes
RoR2.CharacterBody.OnShardDestroyedchanged its method signature.RoR2.Stage.FixedUpdatehas been renamed toUpdate.RoR2.TeleportOnLowHealthBehaviorremovedtimesAddedThisLevel.RoR2.UI.ChatBox.Showchanged its method signature.
Credits
- Writing: JaceCascade and Chinchi