Ungodly Blasphemous install guide

Station 05

Confirm it worked

Four folders, one log file and two hotkeys. If all six checks pass, the install is finished and correct.

Six checks. Every one of them has a screenshot of a working install next to it — click any picture to open the untouched 1920×1080 original and compare it against your own screen properly.

All six should already pass

If you followed stations 03 and 04, this page is a formality. It exists so that when something misbehaves three weeks from now, you have a definition of "correct" to measure against.

Look for four additions

Check 1 — the game folder§

Open the folder holding Blasphemous.exe. Four things that were not there before the install should be:

  • winhttp.dll — around 26 KB. The proxy. If this is missing, nothing else matters.
  • doorstop_config.ini — around 2 KB. Tells the proxy what to start.
  • .doorstop_version1 KB. A version stamp; Explorer may hide it if you have hidden files off.
  • BepInEx\ — a folder, sitting next to Blasphemous_Data.
Windows Explorer showing the Blasphemous game folder with BepInEx, winhttp.dll, doorstop_config.ini and Blasphemous.exe
The game folder after BepInEx is installed. winhttp.dll, doorstop_config.ini and .doorstop_version sit beside Blasphemous.exe, and the BepInEx folder has appeared next to Blasphemous_Data. Shown at 1280×720 — the original is 1920×1080.

If winhttp.dll is missing but you know you copied it

Check your antivirus quarantine before copying it back. A proxy DLL beside a game executable is a pattern some security products flag on sight, and it will keep removing it until the folder is excluded.

Five folders and a log

Check 2 — the BepInEx folder§

Open BepInEx. Six items: cache, config, core, patchers, plugins and LogOutput.log.

The BepInEx folder containing cache, config, core, patchers, plugins and LogOutput.log
Inside BepInEx after one launch. core and patchers ship in the zip; cache, config, plugins and LogOutput.log are written by the first run. Shown at 1280×720 — the original is 1920×1080.
ItemShould exist because
coreIt shipped inside the zip. If it is missing, the extract went to the wrong level.
patchersAlso from the zip. Empty is correct — nothing here uses preloader patches.
cacheWritten on the first launch. Its presence proves BepInEx actually ran, not just that files were copied.
configWritten on the first launch, holding BepInEx.cfg.
pluginsWritten on the first launch. Contents checked below.
LogOutput.logWritten on every launch. A few KB is normal.

Only core and patchers present?

Then the files were copied but BepInEx has never run. Launch the game once, quit, and look again. If they still do not appear, go to station 03’s diagnosis list.

Two loose DLLs

Check 3 — the plugins folder§

Open BepInEx\plugins. Exactly two files, loose, no subfolders:

FileSizeVersion
UngodlyDifficulty.dll183 KB (187,392 bytes)1.1.1
UngodlyGFX.dll160 KB (163,840 bytes)1.2.0
The BepInEx plugins folder containing UngodlyDifficulty.dll and UngodlyGFX.dll
Both plugins installed. Loose DLLs directly in plugins — no sub-folder, no rename. Sizes read 183 KB and 160 KB. Shown at 1280×720 — the original is 1920×1080.

Sizes matter more than they look. A DLL that reads a few kilobytes is usually an HTML error page that got saved under a .dll name, and it will fail to load with a message about a bad image format.

Three files, two of them new

Check 4 — the config folder§

Open BepInEx\config. After a launch with both plugins installed there are three files:

The BepInEx config folder containing BepInEx.cfg and the two Ungodly configuration files
The config folder after the first modded launch. Both plugin configuration files have written themselves — 63 KB and 47 KB of documented settings you never had to create. Shown at 1280×720 — the original is 1920×1080.
FileSizeWritten by
BepInEx.cfg6 KBBepInEx, at station 03
com.stixsworldhd.blasphemous.ungodlydifficulty.cfg63 KBUngodly Difficulty, on its first launch
com.stixsworldhd.blasphemous.ungodlygfx.cfg47 KBUngodly GFX, on its first launch

These files existing is the strongest single signal in this whole page. A plugin cannot write its configuration file unless it loaded, constructed and bound every one of its settings — so if both are there at full size, both plugins are genuinely running.

They are the documentation too

Open either one in Notepad. Every entry carries its type, its default, its legal range, and a plain-English note on what changing it does to the game in front of you. The in-game panel shows the same text under each control, pulled from the same source, so the file and the panel cannot drift apart.

The count and the banners

Check 5 — the log§

Open BepInEx\LogOutput.log. Search for the word plugins and you want to find this:

The lines that matter

[Info   :   BepInEx] 2 plugins to load
[Info   :   BepInEx] Loading [Ungodly GFX 1.2.0]
[Info   :   BepInEx] Loading [UNGODLY DIFFICULTY 1.1.1]
[Message:   BepInEx] Chainloader ready
What you seeWhat it means
2 plugins to loadBoth DLLs found. 1 means one is in the wrong place; 0 means both are.
Two Loading […] linesBoth constructed successfully. The version in the banner is authoritative — a renamed file cannot lie here.
Chainloader readyThe load phase finished without an exception taking anything down.
Bits64 near the topYou are on the 64-bit build, which is the only one that works.

Two lines that are supposed to be there

AccessTools.Property: Could not find property … isBatchMode is HarmonyX probing for a Unity 2018 API in a Unity 2017.4.40 game. The Action "Submit" does not exist is Rewired, the game’s own input library. Both appear on installs with no plugins at all. Neither is a problem.

The part you can see

Check 6 — the panels§

Start the game and get to the main menu. Then:

PressExpected
F10A gold panel titled with seven tabs: Display, Render Scale, Interface, Quality, Colour, Post-FX, Diagnostics. The mouse pointer appears with it.
F7A crimson panel with nine tabs: Overview, Director, Enemies, Combat, Bosses, Elites, Player, Per-Enemy, Diagnostics.
F11A small graphics readout in the corner. Press again to hide.
F8A small difficulty readout in the corner, led by the live difficulty number.
The Ungodly GFX settings panel open on the Render Scale tab
Ungodly GFX on F10, Render Scale tab. The multiplier is at 4.00 and the panel reports the internal buffer it just built. Gold palette, seven tabs. Shown at 1280×720 — the original is 1920×1080.
The Ungodly Difficulty settings panel open on the Director tab
Ungodly Difficulty on F7, Director tab. Crimson palette, nine tabs, and every control carries its own plain-English description underneath. Shown at 1280×720 — the original is 1920×1080.

Both panels should be fully drawn: readable text, visible tab strip, sliders you can grab. A panel that appears as a featureless dark rectangle is a known failure with a known cause and a switch that fixes it — station 08 explains it.

Suggestions

What to do first§

Two settings each, to see whether it is doing anything, before you go anywhere near the other 160-odd dials.

First move

Ungodly GFX

Open F10Render Scale. Set World render scale to Multiplier and the multiplier to 2. Apply. Everything that is not a sprite — lighting, fog, embers, blood — stops being blocky. Then push to 3 or 4 if your GPU is bored. Set Screen fit mode to PixelPerfectInteger and leave the rest alone for now.

Save it with Save to config file so it survives a restart.

First move

Ungodly Difficulty

Open F7Overview and press a preset. Scourge is a firm step up; Ordeal is a serious one. Close the panel, press F8 for the readout, and go and fight something.

Watch the number after UNGODLY DIFFICULTY. Cruising makes it climb. Getting mauled makes it drop. That is the entire idea, and you can watch it happen.

Both panels apply live

Nothing needs a restart. Drag a slider and the game changes underneath the panel. Save to config file is only about surviving the next launch — it has nothing to do with whether the setting is in effect right now.