Start at the top and work down
Troubleshooting
Almost everything on this page is one of three problems: OLMod is not actually running, the
-modded switch is missing, or the files are in a folder OLMod does not look in.
Work down in order — a stage 2 symptom is often a stage 1 cause.
Stage 1
OLMod problems
You are running Overload.exe rather than olmod.exe. Very
common after a Steam update, because Steam's Play button always launches the game's
registered executable.
Launch olmod.exe directly, or through the shortcut, batch file or
non-Steam entry you set up. If you are already doing that and the banner is still
missing, check that GameMod.dll and 0Harmony.dll are in
the same folder as olmod.exe — OLMod cannot do anything without them.
Usually it is not next to the game. Confirm that olmod.exe,
Overload.exe, UnityPlayer.dll and the
Overload_Data folder are all in the same directory.
The classic cause is extracting the zip with Extract All, which creates an
olmod-0.5.14 subfolder. Move the contents up one level.
Failing that, an antivirus may have quarantined it — OLMod injects into a running process, which some scanners dislike on principle. Check your quarantine list and add an exclusion for the Overload folder if you find it there.
Take the current OLMod build from olmod.overloadmaps.com and overwrite the old files. Verifying your Overload files through Steam, GOG or Epic can also remove OLMod's files as unrecognised — if you have just verified, reinstall OLMod.
Gatekeeper blocks the unsigned library. Open System Settings → Privacy & Security shortly after the failed launch; the blocked item appears near the bottom of that pane with an Allow Anyway button.
On Linux, if olmod.sh reports permission denied, you have not run
chmod +x olmod.sh yet.
Stage 2
Plugin problems
You launched without -modded. Without it OLMod never scans for
Mod-*.dll, so the plugin is never found — and because OLMod itself
loads perfectly, everything else looks exactly right.
Re-check your launcher. On a shortcut, the Target field must end with a space and then the switch, outside the closing quotation mark:
"...\Overload\olmod.exe" -modded"...\Overload\olmod.exe -modded"Work through these in order:
- Location.
Mod-UngodlyRobotAI.dllmust be in the same folder asolmod.exe— not inOverload_Data, not in a subfolder. OLMod scans one directory and does not look further down. - Filename. The
Mod-prefix is the pattern OLMod matches. Renaming the file, or an extractor producingMod-UngodlyRobotAI (1).dll, makes it invisible. - Blocked file. Right-click the DLL → Properties. If there is an Unblock checkbox on the General tab, tick it and apply.
- Key conflict. Change
ToggleGuiKeyinUngodlyRobotAI.cfgand save — it reloads live. - Console is open. The panel will not open over OLMod's console. Press ` to dismiss it.
By design. After 40 errors the mod stops and hands the game back to the stock AI rather than flooding your log sixty times a second per robot. There is a Try again button in the panel.
If it disables itself repeatedly, that is a genuine bug and the log is worth submitting — see reading the log below.
The mod writes it on first run, so if it is absent the mod has not run — go back to the two questions above.
If the game folder is somewhere Windows protects, such as
C:\Program Files, the write can also fail on permissions. Either run
the launcher as administrator once, or copy the supplied
UngodlyRobotAI.cfg in by hand.
In game
It runs, but something feels off
Set RespectLevelScripts to true and AffectBossRobots to
false. Both are the defaults, so if you have not changed them this is not the cause. The
campaign drives specific robots at specific moments, and overriding that can strand a
scripted sequence.
If it persists on defaults, that is a bug worth reporting.
Turn on ShowPerformanceTimings first and confirm the mod is actually the
cause rather than assuming it. If it is, lower
MaxSightChecksPerFrame, then ThinkRateHz, then
FullBrainDistance — in that order, since sight checks are the most
expensive thing the AI does.
Lower GlobalSkill and LeadAccuracy before touching anything
else. Unfairness in a shooter almost always traces to prediction, not damage — a robot
that leads you perfectly every time is not difficult, it just leaves you nothing to do
about it.
There is a fuller table of these on the configuration page.
Raise RoleCommitSeconds. It is the single setting that most controls
whether a robot commits to what it is doing. At 0, roles reshuffle on every squad
update — four times a second at the default rate — and because the role feeds the
preferred range and the range feeds the state machine, it reads in play as exactly this.
This should not happen — the panel releases the cursor on close, on disable and on quit, handing it back through the game's own restore path so the handover stays correct even for a joystick player with the mouse disabled. Press F7 twice as an immediate workaround, and please report it with a log.
Working as intended. Multiplayer is off by default: this mod is tuned for single player, Overload MP has no robots to improve, and other clients would not be running your settings. The setting is in the Scope & Compatibility section if you want it anyway.
When you need proof
Reading the log
The mod tags every line it writes with [UngodlyRobotAI], so one
search answers whether it loaded.
Overload is a Unity game and writes a Unity player log. On Windows it lives under your user profile, in the folder Unity creates from the publisher and product names:
%USERPROFILE%\AppData\LocalLow\Revival Productions\Overload
Depending on the Unity version the game was built with, the file in there is named either
Player.log or output_log.txt; older Unity builds put
output_log.txt inside Overload_Data instead. Check all three
and open whichever exists — AppData is hidden by default, so paste the path
rather than browsing to it.
Search the file for [UngodlyRobotAI]. A healthy startup contains:
Loading mod ...Mod-UngodlyRobotAI.dll
[UngodlyRobotAI] Ungodly Robot AI v1.2.1 - StixsworldHD (StixsmasterHD4k)
[UngodlyRobotAI] ... bound to the game's robot internals successfully- No <code class="path">Loading mod</code> line at all
- OLMod never scanned. The
-moddedswitch is missing. - Loading line, but no tagged lines after it
- The DLL was found but failed to initialise. The exception immediately below it is the answer.
- "could not bind"
- The mod could not find something it expects on the game's side, usually after a game update renamed it. It reports why and stays disabled rather than throwing on every robot forever.
Still stuck
Where to ask
If OLMod itself is the problem
The Overload Discord and the OLMod issue tracker. If the version banner does not appear, the problem is on their side of the line, not this mod's.
If this mod is the problem
Bring the log. A report that includes the tagged lines and what you were doing is worth
ten that describe a feeling. Say which version you are on
(v1.2.1), whether you had changed any settings from defaults, and whether
it happens on a fresh UngodlyRobotAI.cfg.