Skip to content

Releases: bropacman/shadow-man-remastered-randomizer

Shadow Man Remastered Randomizer v1.2.0 - Sprint, Dedicated Saves, & Dead Side Guns

Choose a tag to compare

@bropacman bropacman released this 15 Aug 15:58

What's New

Shift-Sprint

  • Hold Shift to move at a configurable multiple of normal speed, on both land and in water
  • Configurable from 1.0x–5.0x; Off (default) disables it entirely for vanilla movement
  • Applied as a direct EXE patch, same as the other Gameplay Tuning options
  • Supports the standard three-state system: a fixed value, off, or random (let the seed decide)

Dedicated Save Files

  • Randomizer playthroughs now save to their own rando/ folder instead of the vanilla saves/ folder - no more overwriting your vanilla saves, and no toggling anything back and forth
  • Zero setup: this is automatic, not an option to configure
  • Launching the unpatched vanilla exe still reads/writes your original saves untouched - only thoth_x64_patched.exe uses the new save location

Force "I Like Dead Side Guns"

  • New option forces the vanilla secret that lets Deadside weapons work on Liveside and vice versa, without needing to find its hidden in-world unlock trigger
  • Applied by editing kexengine.cfg at patch time - requires having launched the game at least once already so that file exists
  • Supports the standard three-state system: always on, always off, or random

Also New: Archipelago Multiworld Support (separate from this tool)

This repo now also contains the tooling behind a full [Archipelago](https://archipelago.gg)
multiworld implementation of Shadow Man Remastered - a separate project from
this standalone randomizer that happens to share the same core patching
engine under the hood. None of it ships inside Shadow Man Randomizer.exe
or changes single-player use in any way, but if you're into AP:

Fixes & Polish

  • Fixed the "Force 'I Like Dead Side Guns'" checkbox label wrapping across three lines in the GUI
  • Piston Combos moved above the (now-grouped) untested options in Gameplay - Shuffle

Known Issues

  • Unique Retractor Keys is temporarily disabled. It's implemented but hasn't been tested yet, so it's grayed out in the GUI (grouped with Prisms under a new "Untested - Disabled" header) until that happens - watch future releases for it to come back online
  • Cadeaux counting is not fully reliable - some cadeaux may not register in-game depending on how they were placed. Lowering the altar cost and Fogometers door from their defaults is recommended until this is resolved (try altar ~50, Fogometers ~500)
  • Entrance hints are not updated when the Entrance Randomizer is active

How to Use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required. For CLI usage and all available options, see the [README](https://github.com/bropacman/shadow-man-remastered-randomizer#readme).

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.7 - Piston Combos & Starting Bundles

Choose a tag to compare

@bropacman bropacman released this 28 Jun 17:13

What's New

Dark Engine Piston Combo Randomization

  • The six dark engine piston combination values can now be randomized per-seed
  • New combination codes are patched directly into the in-game Jack's Schematic journal page — the journal is always the source of truth for the current seed
  • When active, Jack's Schematic becomes a required progression item in fill logic
  • Supports the standard three-state system: always on, always off, or random (let the seed decide)

Starting Bundles

  • New option to grant a full group of sub-items at seed start, removing them from the shuffle pool
  • Available bundles: All Accumulators, All Retractors, All Eclipsers, All Gad Powers
  • Replaces the previous per-sub-item shuffle toggles — if you want a group out of the pool, just start with it

Decimal Health Steps

  • Starting Health, Health Per Altar, and Death Penalty now accept values in 0.5 steps (e.g. 3.5, 0.5)
  • Random resolution for health options also rounds to the nearest 0.5 step

Patch Tracker On by Default

  • The Teddy Bear map tracker hints are now enabled by default
  • Uncheck in the GUI (or pass --no-patch-tracker via CLI) to strip all item badges instead

Visual Polish

  • New key item container — the in-game object used to hold randomized key items has been replaced with a Jaunty-themed pot model, fitting more naturally into the world
  • Randomizer program icon — the .exe and GUI now have a proper icon

Fixes

  • Fill now respects randomized soul level thresholds — when soul threshold shuffle is active, the fill algorithm uses the randomized SL→souls mapping during simulation so gate logic matches what the player actually sees in-game
  • Map hints fixed for Gad Powers, Retractors, and Accumulators — hints now correctly update after collecting these items
  • Settings string copy/paste — trailing == padding is now stripped from the exported settings string for easier copy-pasting; import handles both padded and unpadded strings

Spoiler Log Overhaul

  • Randomizer version and compact settings string now appear in the log header
  • Boolean settings display as yes/no instead of True/False
  • Dark engine piston combo table — shows vanilla combo on the left, new combo on the right, with on changed pistons
  • Soul threshold table — shows vanilla vs. randomized soul counts for SL1–SL10
  • Sky shuffle table — shows which level's sky files were swapped into each slot
  • KPF output filename now includes the seed: shadowman_randomizer_<seed>.kpf

Known Issues

  • Cadeaux counting is not fully reliable — some cadeaux may not register in-game depending on how they were placed. Lowering the altar cost and Fogometers door from their defaults is recommended until this is resolved (try altar ~50, Fogometers ~500)
  • Entrance hints are not updated when the Entrance Randomizer is active

How to Use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required. For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.6 — Soul Level Thresholds, Death Penalty, and Bug Fixes

Choose a tag to compare

@bropacman bropacman released this 28 May 02:43

Shadow Man Remastered Randomizer v1.1.6 — Soul Thresholds, Death Penalty, and Bug Fixes

What's New

  • Soul Level Threshold Randomization
    • --soul-threshold-mode — Randomizes the soul counts required to reach each soul level. Three distribution styles:
      • progressive — Geometric ramp; early SLs stay low, later SLs compress toward 120.
      • balanced — Evenly spaced breakpoints across the full range.
      • random — Fully random intermediate thresholds.
    • --soul-threshold-mode-random — Lets the seed pick a mode for you; every run plays differently even at the same gate preset.
  • Death Penalty
    • --death-penalty — Each death reduces your max health by a configurable number of steps (1–10), floored at that step so you always retain at least some health. Step 0 disables it.
    • Pairs with --death-penalty-random to let the seed pick a step.
  • Enemy Options
    • Uncap enemy counts (--enemy-uncap-counts) — Each spawn slot independently samples from the enemy pool with replacement. Any type can appear 0 or many times per level rather than being capped to vanilla counts. Great for variety in smaller levels.
    • Pairs with --enemy-uncap-counts-random.
  • Experimental (Use at Your Own Risk)
    • Additional per-category shuffle toggles and a prism shuffle option are available via CLI for those who want to experiment — not yet confirmed beatable and not exposed in the GUI.

Fixes

Category Fix Description
Crashes & Game-Breaking Prison level crash: Fixed game crash on entering Texas Prison due to a misread of the RSC file's live record count field. The 2-byte big-endian integer at file offset 8 was being treated as a single byte, corrupting the field to 255 on every run.
Unverified barrel/cadeaux locations: Locations flagged is_verified=False were incorrectly included in the filler pool, causing writes to non-existent slots in the RSC files and triggering validation errors.
Stale working files: Working files and the patched EXE are now cleared at the start of each run to prevent picking up partially-patched files or a previously modified EXE from a prior seed.
Engineers Key placement: Fixed missing Engineers Key gate requirements across many slots in Cageways, which allowed the key to be placed behind itself. Access rules updated.
Book of Prophecy / Gad pickup conflict: Fixed a conflict between the Book of Prophecy item type and the three physical Gad pickup records that caused incorrect item dispatch in certain seeds.
39 placements not written: Locations in florida/instance.rsc, ah2playr/instance.rsc, and as2exper/fx.rsc were present in the placement dict but never written to file, causing validation errors and potentially unbeatable seeds.
Logic and Fill Cadeaux counts: Post-fill junk placement now correctly maintains per-level cadeaux totals by passing reward IDs through the filler path. This fixes launch crashes caused by mismatched cadeaux states.
True form enemies: Prevented true form enemies from spawning in a low-ceiling prison area. Added liveside_interior context group to exclude these slots.
Fill govi weighting: The depth nudge that biases key items toward govi slots now only applies when the slot has an actual item gate requirement, not to open govis like those in the Louisiana Swamp.
Enemy Shuffle London Underground: Night-variant (uground) file names weren't resolving correctly, meaning shuffle log changes were never written. File name mapping fixed.
EXE Patching Fogometers SL10 door ring graphic: The in-world ARC ring decoration on the Fogometers soul gate is now correctly renamed to reflect the shuffled SL requirement.
PyInstaller spec: Build spec now uses a glob so new patch modules are never accidentally missing from the generated .exe.
Spoiler log renamed: Output file format changed to spoiler_log_<seed>.txt instead of spoiler_seed_<seed>.txt.

Known Issues

⚠️ Cadeaux counting is not fully reliable
Some cadeaux may not register in-game depending on how they were placed. Lowering the altar cost and Fogometers door from their defaults is strongly recommended until this is resolved (try altar ~50, Fogometers ~500).

⚠️ Map hints are not fully reliable
Various hints do not go away after collecting the item (Gad Powers, Retractors, Accumulators, 1 Violator). Entrance hints are also not updated when the Entrance Randomizer is active.


How to Use

  1. Download Shadow Man Randomizer.exe.
  2. Point it at your game folder.
  3. Hit Run. (No Python required)

Note: For CLI usage and all available options, see the README.

Requirements

  • Game: Shadow Man Remastered (Steam or GOG)
  • OS: Windows 10/11

Shadow Man Remastered Randomizer v1.1.5 - Life Altar Tuning, Settings Sharing, and Random Randomization

Choose a tag to compare

@bropacman bropacman released this 23 May 04:47

Shadow Man Remastered Randomizer v1.1.5 - Life Altar Tuning, Settings Sharing, and Random Randomization

What's new

  • New randomizer options accept random — the following settings can now be set to a randomized value to let the seed pick for you:
    • Coffin Gate Soul Levels Preset
    • Entrance Mode
    • Starting Health
    • Health Per Altar
    • Cadeaux Required Per Altar
    • Fog Door Requirement
    • Insanity Tier
    • Balancing Amount
    • Enemy Mode

Gameplay Tuning Additions

  • Starting health — configure the initial health value you begin with (can be set to 1-10 or random)
  • Altar life health granted — adjust how much max health is granted for offering cadeaux to a life altar (can be set to 1-10 or random)
  • Altar cadeaux required — set the specific number of cadeaux needed to trigger a life altar (can be set to random)
  • Altar health granted — customize how much health is rewarded per completed altar (can be set to random)
  • Fogometers gate cadeaux required — configure the exact cadeaux threshold required to open the Fog door leading to the Light Soul (can be set to random)

New EXE Features

  • Settings string import/export — seed settings can now be copied and shared as a compact base64 string directly from the GUI, making it easy to reproduce or share an exact configuration
  • Copyable output window — the log window at the bottom of the GUI now allows text selection and copying for easier troubleshooting

Fixes

  • Built .exe was silently missing three modules (cadeaux_patch.py, health_patch.py, rsc_utils.py) — fixed in the PyInstaller bundle
  • Entrance randomizer description in the GUI now correctly says "Deadside levels & Engine Rooms" instead of the old misleading wording
  • Ambient Shuffle additions - added more ambient creatures to the shuffle
  • Weapon SFX Shuffle additions - added more weapon sfx sound categories to shuffle

Known issues

  • Cadeaux counting is not fully reliable — some cadeaux may not register in-game depending on how they were placed. A warning now appears in the GUI cadeaux section. Lowering the altar cost and Fogometers door from their defaults is strongly recommended until this is resolved (try altar ~50, Fogometers ~500)
  • Map hints are not fully reliable — various hints to not go away after collecting the item the hint was for: Gad Powers, Retractors, Accumulators, 1 Violator). Entrance hints also not updated if Entrance randomizer is turned on.

How to use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required. For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.4 - Entrance Randomizer, Ambient & Sky Shuffle, Enemy Overhaul

Choose a tag to compare

@bropacman bropacman released this 20 May 02:00

What's new

  • Entrance randomizer — hub portals can now be reshuffled in two modes: deadside_only shuffles the 9 Deadside portals among themselves; cross_hub throws all 14 portals (Deadside + Dark Engine) into one pool so a Deadside portal may lead to a Dark Engine spoke. Works best paired with an open gate preset and Insanity Tier ≥ 1
  • Ambient creature shuffle — rats, egrets, flies, butterflies, and friendly fish can now be shuffled across their spawn slots. Three modes available: global (free-for-all, any ambient becomes any other), full (shuffle within movement-type pools), or contextual (shuffle within context-group + movement-type pools). Purely cosmetic
  • Sky texture shuffle — sky layer TGAs are shuffled across levels per-filename (horizon swaps with horizon, clouds with clouds, hills with hills). Each seed paints a stranger sky over Deadside. Purely cosmetic
  • Enemy SFX shuffle — enemy sound sets can now be shuffled within their own pools; pain sounds swap with pain sounds, startle with startle, attack with attack
  • Enemy mix-movement mode — new option to allow enemies to swap freely across movement-type pools (ground, flying, swimming all in one pool) during enemy shuffle

Fixes

  • True form fixed-point bug — in some seeds one true form would silently stay in its vanilla slot due to a permutation fixed-point in the depth-bucket shuffle. All 15 true forms now always relocate on every seed
  • Broken event triggers on buttons & cutscenes — gad temples no longer zero out cutscenes and events to remove gad power cutscene trigger

How to use
Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required. For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.3 - Map Hints & Coffin Gate Enhancements

Choose a tag to compare

@bropacman bropacman released this 09 May 08:16

What's new

  • Teddy Bear map hints — enable the Patch Tracker option to rewrite in-game map badge hints to reflect randomized item locations
  • Coffin gate preset enhancements — gate shuffle now uses a linear pool guaranteeing an even spread from SL1 to your chosen cap, no pile-up at max SL
  • Open first N gates — new option to force the first N linear coffin gates to SL0, opening up the early game; configurable per preset or manually (Marrow → Wasteland → Asylum → Temple of Fire → Cageways → Playrooms)
  • Friendly console output — the randomizer log now shows themed progress descriptions instead of raw technical output; item placements are no longer spoiled on seed generation
  • Spoiler log completeness — all randomizer options are now recorded in the spoiler log header for full seed reproducibility

Fixes

  • Restore vanilla now works from the .exe — previously caused a crash due to a missing built-in; fixed
  • Starting item duplicates — starting item options now only show 1 item from item groups (eclipser, retractor, accumulator). Violator updated to use the RSC_Q_VIOLATOR which is the interactable version of the violator

How to use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required.
For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.2 - Gad Cutscene & Swamp Govi fixes

Choose a tag to compare

@bropacman bropacman released this 06 May 01:42

What's new

  • GAD platform blockers — a static blocking object is now placed on the GAD power platform in each temple, physically preventing the post-puzzle cutscene from triggering

Fixes

  • Swamp Govi night checks — several Govi locations were incorrectly including the night variant of the swamp level as a valid check; corrected to day-only

How to use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required.
For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.1 - Seed, Patching, GUI Fixes

Choose a tag to compare

@bropacman bropacman released this 05 May 00:29

What's new

  • --shuffle-progression/weapons/lore flags — replaced the old negative --no-progression/weapons/lore flags with positive BooleanOptionalAction defaults, cleaner CLI behavior
  • Max SL cap dropdown — replaced the free-text input with a select supporting 0–10 plus "preset"; selecting open now auto-sets Max SL to 0 and disables the field automatically

Fixes

  • Gate ARC decorations — patcher was using the short RSC_X_COFGATE_ARC prefix, which only covers gate numbers 4–7 and 9; switched to always writing RSC_X_COFFIN_GATE_ARC fixing invisible decorations, notably Wasteland at SL10
  • GAD Blood Temple Y coordinate — injection site Y was 511.8 instead of the correct surveyed value 670.0, causing misplaced GAD pickup spawns
  • Random starting item seed — was resolved client-side in the GUI, making it non-reproducible; moved to seeded RNG in the patcher so the same seed always produces the same starting item
  • Max SL cap hardcoded to 10 — the field always passed --max-sl 10, silently overriding preset caps; fixed to blank by default so presets are respected
  • Gate preset story renamed to open — corrected throughout README, GUI, and docs
  • Easy preset SL cap — was inconsistently SL5 in GUI and SL8 in constants; corrected to SL7 everywhere
  • Insanity tier and Max SL dropdowns — were stretching full width and pushing tooltip bubbles off screen; fixed with explicit widths

How to use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required.

For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.1.0 — Starting Items

Choose a tag to compare

@bropacman bropacman released this 04 May 05:41

What's new

  • Starting Item — place a bonus item at the Louisiana Swampland church at game start; removed from the shuffle pool automatically
  • Insanity Mode visual improvements — marker crates are scaled and textured via the KPF mod pipeline, no loose files required

Fixes & cleanup

  • GUI row spacing now consistent across all sections
  • Asset and mesh overrides flow through the KPF system correctly

How to use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required.

For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11

Shadow Man Remastered Randomizer v1.0.1 - Insanity Tiers

Choose a tag to compare

@bropacman bropacman released this 30 Apr 18:27

Shadow Man Remastered Randomizer v1.0.1

Standalone randomizer for Shadow Man Remastered (Nightdive Studios, 2021). Generates a single .kpf mod file — drop it in your mods/ folder and play.

What's added

  • Insanity Tiers - Shuffle key items with tiers of where key progression items can be placed. (Govi slots, cadeaux slots, all barrel slots)

How to use

Download Shadow Man Randomizer.exe, point it at your game folder, and hit Run. No Python required.

For CLI usage and all available options, see the README.

Requirements

  • Shadow Man Remastered (Steam or GOG)
  • Windows 10/11