0 of 0

File information

Last updated

Original upload

Created by

thefifthmatt

Uploaded by

thefifthmatt

Virus scan

Safe to use

Tags for this mod

About this mod

Shuffles all enemies and bosses with area scaling and anti-crash measures, preserving enemy behaviors where possible

Permissions and credits
It's an enemy randomizer for Dark Souls Remastered which modifies the files loaded on game startup. Enemy and boss stats are rescaled to match the area they're placed in. All 26 bosses can be randomized, keeping many of their behaviors in other arenas.

The mod's name is subject to change if I think of a better one, but a good way to explain it is that it's a DS1 port of my DS3 and Elden Ring enemy randomizers, if you've seen those before. It's not derived from rycheNhavalys's classic Dark Souls Enemy Randomizer. I don't plan on adding an item randomizer and recommend using HotPocketRemix's Dark Souls Item Randomizer.

If you would like to provide feedback or report bugs or see detailed changelogs, you can join the discord server at https://discord.gg/QArcYud (also for Fog Gate Randomizer, Elden Ring Randomizer). This mod is under development, so please check this mod page and the server for updates.

If you'd like to support my work you can use my Ko-fi page. Randomizer will always be free to use.

Gameplay changes

Most game progression actions which apply to enemies and bosses will apply to their replacements instead. Killing a mimic's replacement will drop the mimic's item, and killing the Darkroot Hydra replacement and Crystal Golem replacement will rescue Dusk. The main exceptions are tail cut drops, which are specific to the original enemy, and any loot table entries which aren't tracked in the save file.

Enemies are rescaled according to the vanilla scaling mechanic of multipliers on top of base stats, from the source's assigned tier to the target's assigned tier. For example, normally Asylum Demon is in tier 1 with no multipliers on top of its base stats and Gwyn is in tier 15 with a 270% HP multiplier and 250% attack damage multiplier on top of his base stats. Asylum Demon's replacement has an additional 50% HP reduction due to the original's miniscule base HP. Note Stray Demon and Priscilla are in tier 14, the same as most DLC bosses. Check any run's spoiler logs for further details.

Some additional features:
- Evil vagrants and Gravelord Black Phantoms are in the enemy pool and an offline simulated version of those features has been added.
- Instead of dying to the miniboss replacing Seath in order to get warped to the prison, you can defeat the miniboss to get warped automatically without dying.

Current limitations which may be addressed in the future:
- Limited support for merging with other mods (only params, text, and non-enemy-related files)
- No support for custom enemy placement or custom scaling
- Missing textures on objects placed in other maps
- Tail cut and stagger damage thresholds may not be scaled correctly
- Enemies may be placed where they don't visually fit
- NG+ enemy and boss scaling is incorrect
- Not compatible with DS1 Fog Gate Randomizer (requires update)

How to install

This mod only supports Dark Souls Remastered 1.03.1 on Steam, which is the latest version as of April 2025. PTDE is not supported. Pirated versions are not supported. You must legitimately acquire Dark Souls Remastered to use this mod.

1. Go offline

This is critical to avoid getting soft-banned. You can select "Go Offline" from Steam's menu, or else go to "System > Network settings" in-game to select Start Offline.

2. Download and extract

Download the mod's zip file and extract the entire zip contents to somewhere on your local disk. Make sure to:

- Explicitly click "Extract here" using a program like 7-Zip and launch DS1EnemyRandomizer.exe from a real directory on your disk, not from within the zip file.
- Put the mod is in its own self-contained directory after extracting it which contains DS1EnemyRandomizer.exe and all of the distribution files in dist1. Don't dump the contents into the game directory like other mods require.
- Don't download the mod to a synced filesystem like OneDrive, as required files can appear missing from the mod's perspective.

The contents may be incorrectly tagged as a virus, as the randomizer exe is unsigned software and the zip contains a Mod Engine 2 fork by Altimor.

If you get an error about framework versions running DS1EnemyRandomizer.exe, Windows will send you to a page with a bunch of download links, most of which will not work. Ignore that and install the following Desktop Runtime from Microsoft: https://aka.ms/dotnet/6.0/windowsdesktop-runtime-win-x64.exe (Temporary because the mod is migrating away from WinForms)

3. Install any other mods first

If you're using any other mods which need to be merged, they generally need to be installed before enemy randomizer. Currently, other mods need to be installed in the game directory by replacing game files, but interoperability with other Mod Engine mods may be supported in the future.

If the other mods use params (GameParam.parambnd.dcx) or text (fmg) files, they can be installed in the game directory before running randomizer, and their contents will be preserved. If other mods use mapstudio files (msb), event files (emevd), or enemy AI scripts (luabnd), they are not compatible with randomizer currently and those files will be overwritten by the randomizer. Any other files should be compatible.

Notably, this enemy randomizer is not compatible with DS1 Fog Gate Randomizer currently.

4. Randomize the game

Close Dark Souls if you have the game open, and launch DS1EnemyRandomizer.exe. Use "Select exe" to select the location of your DarkSoulsRemastered.exe, which is used for merging and to access some game files.

There are two main ways to launch the game in a randomized state. The default is using Mod Engine 2 with the "Launch DS1" button inside randomizer, which doesn't modify any files in the game directory. The other is to override files in the game directory with the "Output files to game directory" option. If you have any mods to merge from step 3, you must use the Mod Engine launcher and select the "Merge files from game directory" option.

The crash fix dll is required to prevent the mod from crashing, and it specifically requires using Dark Souls Remastered 1.03.1. It must be injected early, before the game initializes its static heaps. With the Mod Engine launcher, the dll is loaded by the launcher. Otherwise, the dll copied to dinput8.dll in the game directory. Only uncheck this if you have a different way to chainload this dll.

Select any other options you like, click "Randomize!", and wait for the status bar to show success. Whether it succeeds or fails, a file is created for the run in the spoiler_logs directory, which contains boss and enemy locations if it succeeds and additional debugging information if it fails.

5. Launch the game with randomizer

To do this with the built-in Mod Engine launcher, click the "Launch DS1" button inside randomizer. If you chose to output game files to the game directory instead, it can be launched from Steam.

6. Uninstall

To stop using the mod, simply launch Dark Souls Remastered from Steam after uninstalling it. If you chose to output files to the game directory, use the "File > Restore game directory backups" menu option in the randomizer. This will restore all files that were present when randomizer first installed files in the game directory.

After doing that, if you want to make sure all mods have been uninstalled, run "Properties > Installed Files > Verify integrity of game files" for Dark Souls Remastered in Steam, and also delete or rename dinput8.dll and d3d11.dll if they exist in your game directory.

Finally, consider deleting all save slots with randomizer playthroughs so you don't accidentally load into them while online, risking a ban.

Bugs and installation issues

If you encounter bugs with randomized enemies, you can report them, ideally on the mod's discord server. I might eventually see them on Nexus Mods but many bug reports here don't have enough information to be usable. Send your spoiler log or full options string, not just the seed number, what the original enemy and replacement enemy is (ideally the line from the spoiler log), and for issues where enemies were incorrectly disabled or enabled, what route you took since you last quit out or sat at a bonfire.

If you are softlocked somewhere due to a bug in the randomizer or other mods, you can use tools like DSR Gadget to warp to a safe bonfire like Firelink Shrine.

Known gameplay issues:
- Enemies and bosses may be invisible, but they can still attack and you can still lock onto them. This is a base game behavior in some places if you get too far away from enemies, but can also happen in New Londo/Valley of Drakes/Four Kings fight for unknown reasons.
- The boss replacing Kalameet may spawn too early or not spawn during the normal trigger. Try quitting out if this happens.

If DS1 does not get launched at all after clicking "Launch DS1", especially if a command window pops up for a split second and closes, that could indicate an issue with Mod Engine. Make sure Steam is running. Dark Souls Remastered may need to be installed on the default drive, and it should not be set to launch as administrator (under Properties > Compatibility for DarkSoulsRemastered.exe).

If DS1 shows up for a split second and then closes, it means the heap patch dll was not applied. Close the game, select the option to install the dll, and run randomizer again. The dll is in dist1\DLL\DS1HeapPatch.dll and if nothing else works you can copy it into the game directory and rename it to dinput8.dll, or use some other mechanism where you can be sure it's loaded on game startup without delayed initialization.

If you see an in-game popup saying "Error: Enemy Randomizer was installed incorrectly" or "?ActionEventInfo? ID: 666400", it means that either you didn't restart the game after running randomizer, or that you installed the randomizer incorrectly such that core features will be broken and likely softlock you. In the second case, start from scratch and follow the installation instructions above. The randomizer can merge itself with some mods, and if you tried to do it yourself and saw this error message, you did it wrong.

Not related to mods, Dark Souls Remastered has a known issue where the controller stops responding despite being connected and functional for other games. To fix it, first close Task Manager if you have it open, reopen Task Manager using Ctrl+Alt+Del, and click on Dark Souls Remastered from the process list. Don't close the process, just click on it. That's the fix.

Acknowledgements

This mod was possible thanks to TKGP for creating SoulsFormats, HotPocketRemix for DS1 emedf, katalash for DSLuaDecompiler, Grimrukh for work on navmeshes and other formats, and others who have contributed to modding tools and documented their findings on the ?ServerName? modding discord server (https://discord.gg/mT2JJjx) and elsewhere.

The mod uses Avalonia and MessageBox.Avalonia which are provided under the MIT License, DS1HeapPatch.dll under AGPL, and Mod Engine by Altimor from DSR Shader Overhaul with permission to use it in other mods.

Special thanks to illusory wall for his thorough documentation of DS1's mechanics which were invaluable for making this mod, and for helping with initial testing.