aiespion-Hades_II_Randomizer_Crash_Fix icon

Hades II Randomizer Crash Fix

Replacement fork of Dannyj1's Hades II Randomizer 1.6.0. Fixes missing enemy-data crashes during stat scaling while keeping the original randomizer features. Disable the original before use.

Last updated a day ago
Total downloads 10
Total rating 0 
Categories Mods Gameplay AI Generated
Dependency string aiespion-Hades_II_Randomizer_Crash_Fix-1.0.0
Dependants 0 other packages depend on this package

This mod requires the following mods to function

SGG_Modding-DemonDaemon-1.1.0 icon
SGG_Modding-DemonDaemon

Adapter to allow mods to be designed for both ReturnOfModding and ModImporter

Preferred version: 1.1.0
SGG_Modding-ModUtil-4.0.1 icon
SGG_Modding-ModUtil

Utility mod for mod interactions within lua for SGG's games

Preferred version: 4.0.1

README

Hades II Randomizer — Crash Fix

Keep the chaos. Fix the missing-data crashes.

A focused replacement fork of Dannyj1's Hades II Randomizer 1.6.0, with three defensive checks in enemy stat scaling. It addresses the GeneratorData nil-value crash that can interrupt room transitions, including later in a run.

All original randomizer features are included. Enemies, elite enemies, minibosses, boon offerings, and elemental traits can be shuffled; optional settings also randomize your starting keepsake, weapon/aspect, and Arcana cards.

What this fixes

  • Late-game crash: skips difficulty scaling when an enemy has no GeneratorData, instead of attempting to read a field from nil.
  • Early-game miniboss crash: applies the same missing-data check to miniboss scaling.
  • Missing-health crash: checks that MaxHealth exists before using it in the late-game armor condition.

The existing scaling rules and randomization logic are otherwise preserved.

Install

  1. Back up your Hades II saves before changing gameplay mods.
  2. Disable or uninstall Dannyj1-Hades_II_Randomizer. This package replaces it; do not enable both. They register the same randomizer and wrap the same game functions.
  3. Install this package through Thunderstore Mod Manager or r2modman. Allow its required dependencies to install.
  4. Launch the game with mods enabled and start a new run.

If you previously customized the original mod, reapply those settings to this fork's configuration. The mod manager's Config Editor is recommended. The configuration file is under your profile's ReturnOfModding/config folder and uses this package's team and package name.

For manual installation, place the contents of this archive's plugins folder in a dedicated folder under ReturnOfModding/plugins, with the required dependencies installed.

Configuration

Setting Default Effect
Enabled true Enables the randomizer
RandomizeEnemies true Shuffles enemies, elites, and minibosses
RandomizeBoonOfferings true Shuffles god boon offerings
RandomizeElementalTraits true Shuffles elemental traits
ScaleStats true Adjusts enemy stats by run progress
RandomizeKeepsake false Randomizes the starting keepsake
RandomizeWeapon false Randomizes the starting weapon and aspect
RandomizeArcanaCards false Randomizes equipped Arcana cards
ArcanaCardEquipChance 50 Equip chance for randomized Arcana cards

Testing and limits

The original script's missing-data failures were reproduced in an isolated process using Hades II's installed Lua 5.2 runtime. The repair passed those regression cases, normal scaling and restoration across 12 room transitions, ignored-enemy checks, and a disabled-mod check. Packaged Lua files were also checked for syntax errors.

Full gameplay and compatibility with every mod combination have not been verified. This is a targeted repair to version 1.6.0, not a general update of the entire randomizer. It does not fix unrelated model, animation, font, or audio warnings from other mods.

The original mod's limitations still apply: a fresh save's first run is not randomized, pre-placed satyrs in Chronos' room are not randomized, and loading an existing run after restarting the game does not restore the original mod's randomization state. Start a new run to use the randomizer reliably.

Credits, source, and license

Original randomizer: Danny Jelsma / Dannyj1, copyright 2024. Upstream source.

This is an unofficial fork, not an official release by Dannyj1 or Supergiant Games. The upstream Lua sources and loader entry point are included, with the stat-scaling changes identified in plugins/stat_scaler.lua. The Apache License 2.0 and attribution are preserved in LICENSE and NOTICE.

The three defensive checks, release text, and custom icon were prepared with AI assistance. The original randomizer code is credited to its upstream author.