
Date uploaded | a week ago |
Version | 1.4.8 |
Download link | score-MiscFixes-1.4.8.zip |
Downloads | 6877 |
Dependency string | score-MiscFixes-1.4.8 |
README
Misc Fixes
Designed to comprehensively address the bugs and exceptions that game updates introduce, and attempts to soften the impact that breaking changes have on the existing mod ecosystem, primarily through Harmony based IL hooks. It also applies a small amount of game integrity focused asset updates, and provides tools to assist with safely developing around error prone aspects of the game code.
Note that these changes are NOT intended to modify the vanilla gameplay experience. If it's even debatable on whether or not it's in line with the "intended" vanilla experience, it doesn't belong here.
FOR DEVS:
-
HUD ChildLocator Entries
- These are difficult to find normally because they have no identifiable component attached.
New entries:
- "SpringCanvas"
- "UpperRightCluster"
- "BottomRightCluster"
- "UpperLeftCluster"
- "BottomCenterCluster"
- "LeftCluster"
- "RightCluster"
- "NotificationArea"
- "ScoreboardPanel"
- "SkillDisplayRoot"
- "BuffDisplayRoot"
- "InventoryDisplayRoot"
Existing entries:
- "BottomLeftCluster"
- "TopCenterCluster"
- "RightUtilityArea"
- "ScopeContainer"
- "CrosshairExtras"
- "BossHealthBar"
- "RightInfoBar" -Always null, kept in for compat
-
Extension Methods
- RiskOfOptions compatible config binding
- Common ILCursor functions
- Component removal and cloning
- EntityStateConfiguration reading and modification
-
To gain access, add the MiscFixes.dll as an assembly reference (Nuget package coming soon)
-
Methods can be found in the MiscFixes.Modules.Extensions class
Important Changes
Check the changelog for more info. This list may not include everything.
- Fixes many common Henry prefab creation error
- Fixes many of the issues modded characters and skins have in the recent update.
- Fixes vanilla Asset loading issues introduced in the recent memory optimization update.
- Prevents spam error for various server methods called on clients
- Restores some failing Elder Lemurian footstep sounds
- Fixes an error message for Sale's Star pickup
- Corrects misplaced vermin spawn particle effects
- Restores printer VFX
- Restores scrapper sounds
- Prevents pointless error spam when destroying some objects, e.g., killing a Stone Titan
- Restores backwards compatibilty for temporary overlays
Error handling
- chef RolyPoly achievement NRE
- NRE with Aurelionite affix targeting
- NRE when masterless bodies level up (TryGiveFreeUnlockWhenLevelUp)
- various NREs with VineOrb (dead target on arrival, null dotDef)
- Prevents an error when spawning some projectiles, probably because they lack a model
- Some ProcessGoldEvents error
- an NRE when leaving the stage with drones (MinionLeashBodyBehavior.OnDisable)
- any Antler NREs
- rare FogDamageController NRE when targeting teammates
- Lunar exploder killed by void death error
- the roulette check NRE
- Gilded Coast chest interaction error
- an error for objects that have null HurtBoxes (only seen it for the hanging mushrooms in Golden Dieback)
- Lemurian Eggs constantly creating new lock VFX when charging the teleporter which don't get cleared upon completion
- NRE spam for arrow indicators when playing with the HUD disabled (teleporter boss, void seed, etc)
- Equipment indicator error
- a crosshair error when Seeker respawns
- a Rewired error when quiting the game
- the TestState1 - TestState2 log spam on Prime Meridian
- an error when the Child fails to teleport near your location
- an NRE when spawning close to a chest
- NREs related to TetherVfxOrigin.AddTether and TetherVfxOrigin.RemoveTetherAt for the twisted elite
- Halcyonite's Whirlwind NRE spam when its target is killed during the skill
- Meridian's Will failing to pull monsters in when a stationary target is hit
- The dreadful Facepunch exception that can occur, which randomly prevented loading (3% bug)
- Flicker light error
- an unrecoverable error caused by having multiple event systems (thanks Bubbet)
- Incompletable void seed bug
- (temporarily removed) Fixes ConVars with uppercase letters not working, e.g, egsToggle
SPECIAL THANKS TO:
- Chinchi, wouldn't have been possible without ya
CHANGELOG
1.5.0
- Moved some skin related validation to R2API.Skins
- Changed some extensions to use Component instead of MonoBehaviour
1.4.9
- Removed lobby skins fix o7
1.4.8
- Added lobby skins fix!
- Changed to proper usage of the new loading methods (maybe???)
- Fixed NRE with PlayerStatsComponent receiving a null body
- Added entityStateConfiguration extensions
- Added Component removal and deep cloning extensions
- Fixed typo in config extensions
1.4.7
- Using new asset loading methods
- Added fix for vermin spawn effect
- Made void seed hooks better, it should behave more akin to vanilla now
- Fixed chef achievement RolyPolyHitFiveAirEnemies
- Fixed AffixAurelioniteBehavior NRE hook
1.4.6
- Fixed the OnStageLoad hook (thanks Gorakh)
1.4.5
- Fixed identity crisis with config extensions
- Added scrapper sounds back
1.4.4
- Fixed edgecase with lobby skin handling
1.4.3
- Affix Aurelionite targeting NRE
- Removed False Son Boss's AI fix for missing attacks
- Removed merc evis targetting fix
- Removed Xi Construct blast fix
- Thanks to Cap_ for bringing these up!
- These fixes push the boundary of gameplay changes in a way I'm really not comfortable with.
- Go download a QoL mod or something.
1.4.2
- Added fix for OnStageLoad invalid key exceptions
- Config extensions sanitize inputs
1.4.1
- Replace Skin validation with better runtime AsyncOperationHandle validation
- Removed Starstorm fix
1.4.0
- Added extended validation checking to skins on startup to prevent common NREs
- This will remove broken skins and log errors that should help the developers know whats going wrong.
- Added ModelSkinController to Survivor display prefabs if they are missing.
- Added a good version of LobbySkinsFix
- This includes a patch that disables LobbySkinsFix v1.2.1
- Removed VAPI and MSU fixes (Starstorm2 v0.6.20 fix is still needed for now)
1.3.9
- Added version dependent fixes for VAPI, MSU and SS2
- Added RiskOfOptions compatible config binding extensions
- Added some IL matching extensions
- Changed asset loading to GUIDs
- Internal restructure
- Readme update
- Fixed previous patch's changelog
1.3.8
- Temporarily fixed ss2
- (NOT IMPLEMENTED) Added redirect to the new SkinDef.BakeAsync
1.3.7
- Fixed common henry creation template error
- Fixed null itemDisplayRuleset prefab load error
- Included the dotParticleFix hooks
1.3.6
- Fix for UnityExplorer's all commando bug
- Fix for Item display rule instantiation
- Fix for SurvivorMannequinSlotController ApplyLoadoutToMannequinInstance
1.3.5
- Removed CharacterBody HandleDisableAllSkillsDebuff fix
- Removed fix for CHEF's "It's Getting Hot Here" achievement not unregistering an event upon completion
1.3.4
- Added fix for Xi Construct's laser attack not exploding at the end
- Updated HUD childloc to include springCanvas
- Removed convar fix for now.
1.3.3
- Added more childLocator entries and renamed some
- Added fix for Halcyonite Shrine being able to drain 0 gold and getting stuck
1.3.2
- Didn't happen
1.3.1
- Fixed 9 seperate possible NREs in CharacterBody_HandleDisableAllSkillsDebuff
- Added additional child locator entries to the Hud. These are difficult to find normally because they have no identifiable component attached.
- UpperLeftCluster
- NotificationArea
- SkillIconContainer
- BuffDisplayRoot
- InventoryContainer
1.3.0
- Removed fixes that have been addressed by vanilla
- Rewrote the VineOrb.OnArrival patch and added an additional fix for null DotDefs
- Added fix for null HurtBoxes in CharacterModel.Awake
- Added fix for the multiple Lemurian Egg lock VFX
- Added fix for False Son not using Tainted Offering in phase 2
- Added fix for tether errors with the twisted elite
- Added fix for Longstanding Solitude NRE when spawning near a chest
- Added fix for the Elder Lemurian footstep sounds
- Added fix for ConVars with uppercase letters working
- Added fix for CHEF's "It's Getting Hot Here" achievement not unregistering an event upon completion
- Reworked a bunch of patches to use Harmony so there is no MMHOOK dependency
- Removed log spam for the Facepunch fix
1.2.8
- Changed false to true in OnBossGroupDefeated
ugh
- ugh
1.2.6
- Goodbye tank, no longer need fixing
- Thats the last of the mod compats yay!
1.2.5
- Goodbye tyranitar, no longer need fixing
1.2.4
- Goodbye hunk, no longer need fixing
1.2.3
- Goodbye rifter, no longer need fixing
1.2.2
- Skip call to DotController.GetDotDef from new Noxious Thorns that existed for the sole purpose of throwing index out of bounds exceptions...
- This was vanilla, probably some partially commented out code or something idk
1.2.1
- Fixed FreeItemOnLevelup hook
- Updated changelog for previous patch
1.2.0
Added a big group of changes, thanks to Chinchi
* EvisDash.FixedUpdate
- Merc eviserate no longer targets allies
* Duplicating.DropDroplet
- Printers use vfx again
* DetachParticleOnDestroyAndEndEmission.OnDisable
- Particle systems dont unparent inactive children
* PositionIndicator.UpdatePositions
- Position indicator NRE when hud is disabled
* Indicator.SetVisibleInternal
- IL only rewrite
* CrosshairOverrideBehavior.OnDestroy
- Collection modified error
* RuleChoiceController.FindNetworkUser
- Quit to menu event system nre
* RewiredIntegrationManager.RefreshJoystickAssignment
- No rewired input on quitout
* Frolic.TeleportAroundPlayer
- Handles teleport with no available nodes
* BurnEffectController.HandleDestroy
- Prevents engine call on destroyed object
* MeridianEventTriggerInteraction.Awake
- Fixes test state spam
* DamageIndicator.Awake
- Loads asset into the main menu camera's damageindicator
- Additionally added a ton of safeguards against calling server methods on client, instead of just letting those calls go through.
- Fixes sale star collider being incorrectly configured
Now onto my own fixes...
-
Mods using the old TemporaryOverlay component will now properly initialize the new TempOverlayInstance
-
Antler NREs are all gone now, sheesh
- ElusiveAntlersPickup.Start, CharacterBody.OnShardDestroyed, ElusiveAntlersPickup.FixedUpdate
-
Mysterious RouletteChestController.Idle NRE
-
Minionleash OnDisable NRE
-
ProjectileController.Start nre without ghost
-
ProcessGoldEvent nre
-
FreeItemOnLevelUp called on obj with null inventory
-
Vineorb onArrival
-
BossGroup Ondefeated calling event with no run instance
-
Remove light flicker thing cuz ss2 is good now.
- I still earn my keep by fixing the TetherVfxOrigin calling a null event.
- Also fixed the flashbang menu scene
- Thanks for continuing to boost my download count ily ss2 devs <3
-
Made the Rifter fix actually fix Rifter
-
Todo: update readme but euuuugh
1.1.3
- Forgot to make a hook actually do stuff
1.1.2
-
Welcome Rifter to the club of mod fixes!
-
Fixes a couple common errors
-
Adjusts primary proc co-efficient to 1.0
-
Fixed tether nre when invoking an event
-
Tank: Fixed particles on genesis loop
-
Tank: Enable overlays on renderers only if theyre enabled
-
Updated readme to reflect all changes
-
Added mod specific config options
1.1.1
- Tank utility gives fuel again
- Added new optimization config option for tank
- Tank no longer tanks fps hooray!
- Default is disabled in case of bugs.
1.1.0
- Fixed tank save bug hooray!
- Removed damage indicator "fix" because it broke stuff when it didnt break lol
1.0.9
- Fixed the stupid SceneDirector.PopulateScene exception that the new stage 1 has
- Why are they using the wrong spawn cards
- Why is the nullchecking so inconsistent
- Why
1.0.8
- Fixed the fix for Hunk TVirus
- Moved stuff around
1.0.7
- Added git repo
- Fixed damage indicator startup exception
1.0.6
- Actually fixed the previously mentioned CheesePlayerHandler error
1.0.5
- Fixed incompletable void seed bug
- Fixed GoldenCoast chest interaction error
- Fixed more CheesePlayerHandler errors
- Fixed Hunk Urostep
1.0.4
- Fixed Celestial War Tank duplicating crosshair bug
- Fixed Celestial War Tank CheesePlayerHandler spam on stage start
- Adjusted some metadata
1.0.3
- Corrected mistake made with the tyranitar rock fix
1.0.2
- Fixed Steamworks loading error
- Prevented (harmless) exception when loading without Hunk
1.0.1
- Fixed some more vanilla bugs
- Added mod specific fixes for Hunk and Tyranitar
1.0.0
- Initial release