



Before installing: Back up your Hades II profile saves (on Windows: %USERPROFILE%\Saved Games\Hades II\Profile*.sav) in case a mod update or unknown issue affects your progress. Mod settings are stored separately and persist after uninstall—see Settings reference.
A Hades II mod that makes sure you do not miss important encounters on a run: combat meetings with Nemesis, Artemis, Heracles, Icarus, and Athena; and after the True Ending, Zagreus's Infernal Contract and reformed Chronos in the hub between Erebus and Oceanus. Change everything from an in-game settings window or r2modman Config.

Open Fated Encounters from the mod overlay menu bar, or pick the floating panel in the mod list. The table below maps each in-game section and label to its r2modman config key. Both edit the same file—in r2modman, click Refresh All Edits after in-game changes; in-game picks up r2modman saves within a couple of seconds.
Settings are stored with Chalk in your profile as ReturnOfModding/config/MarcoAntolini-FatedEncounters.cfg. Config files persist even if you uninstall the mod—delete or reset MarcoAntolini-FatedEncounters.cfg manually for a clean slate.
When changes take effect in gameplay:
| Section | In-game label | Config key | Default | Description |
|---|---|---|---|---|
| — | Mod enabled | enabled |
true |
Master switch for the entire mod. When off, the mod does nothing. |
| Allies | Nemesis | allies.fieldNPCs.Nemesis |
true |
Guarantee meeting Nemesis once this run. |
| Allies | Artemis | allies.fieldNPCs.Artemis |
true |
Guarantee meeting Artemis once this run. |
| Allies | Heracles | allies.fieldNPCs.Heracles |
true |
Guarantee meeting Heracles once this run. |
| Allies | Icarus | allies.fieldNPCs.Icarus |
true |
Guarantee meeting Icarus once this run. |
| Allies | Athena | allies.fieldNPCs.Athena |
true |
Guarantee meeting Athena once this run. |
| Allies | Random region per ally at run start | allies.randomizeFieldNPCBiome |
false |
At run start, assign each enabled ally a random eligible region (only appears there). When off, use the first eligible region you enter. Ignored during Dream Dives—regions are drawn at biome transitions, so allies always fire in the first eligible region visited. |
| After True Ending | Guarantee Zagreus Infernal Contract | postTrueEnding.guaranteeZagContract |
true |
After True Ending: guarantee Zagreus offers the Infernal Contract once per run when unlocked. |
| After True Ending | Guarantee reformed Chronos in the Erebus–Oceanus hub | postTrueEnding.guaranteeChronosClearing |
true |
After True Ending: guarantee reformed Chronos in the Erebus–Oceanus hub once per run (conversation encounter, not the Asphodel send). |
| Chaos Trials & Dream Dives | Apply ally guarantees in Chaos Trials | runModes.chaosTrials |
false |
Apply ally guarantees during Chaos Trials (curated and randomized trials). Off by default—the base game blocks or gates allies in these short runs. |
| Chaos Trials & Dream Dives | Apply ally guarantees in Dream Dives | runModes.dreamDives |
false |
Apply ally guarantees during Dream Dives. Off by default. |
| Chaos Trials & Dream Dives | Guarantee Infernal Contract in Dream Dives | runModes.dreamDivesZagContract |
false |
Guarantee the Infernal Contract during Dream Dives when the True Ending Zagreus option is on. Separate from ally guarantees; may not trigger if no contract shop room appears. |
| — | — | debugLog |
false |
r2modman only. Print [FatedEncounters] messages to the game console (useful when reporting bugs). |
Found a problem or have an idea?
Enable Debug log in r2modman (see Settings reference) before reporting issues—it helps a lot.
Code and docs PRs are welcome. See CONTRIBUTING.md for dev setup and what to include in a pull request.
MIT — see LICENSE.