Fix: 'Bad load' in meta list (Metamod Plugin Fails)

March 11, 2026 Daemon666 7 min read 19 wyświetleń

You run meta list and a plugin sits there as

bad load

instead of RUN. "Bad load" is Metamod telling you it found the file, tried to load it as a Metamod plugin, and the operating system or Metamod itself rejected it. It is not "file missing" (that is file open error) — the file is there, but it is the wrong kind of file, the wrong architecture, or built against an incompatible interface. Here is how to tell which.

1. Read the exact status

Get the full picture, not just the summary line:

meta list

Note the plugin's status and the path Metamod loaded it from. The path matters — a wrong or stale path is a common cause, and Metamod prints exactly what it tried.

2. Wrong architecture (the most common cause)

Everything in a CS 1.6 server is 32-bit. A 64-bit .so/.dll loads as bad load every time. Check it on Linux:

file addons/amxmodx/dlls/amxmodx_mm_i386.so

It must report:

ELF 32-bit LSB shared object, Intel 80386

If it says x86-64, you downloaded or built the wrong file. Get the 32-bit build. A missing 32-bit dependency has the same effect — the loader cannot resolve the library, so Metamod reports the load as bad. Check what it needs:

ldd addons/amxmodx/dlls/amxmodx_mm_i386.so

Any not found line is a 32-bit library you must install; see the 32-bit library setup.

3. ABI / version mismatch after an engine switch

This is the classic post-migration failure: you moved to ReHLDS and now old Metamod plugins show bad load. Classic Metamod-P and very old plugins predate the ReHLDS/Metamod-r ABI. The fix is to move to Metamod-r and use plugin builds compatible with it. If you are unsure which loader you have, Metamod-r vs Metamod-P explains how to tell and why it matters.

4. Wrong platform tag or path in plugins.ini

Metamod's plugin list is addons/metamod/plugins.ini. Each line is tagged by platform:

linux addons/amxmodx/dlls/amxmodx_mm_i386.so
win32 addons\amxmodx\dlls\amxmodx_mm.dll

Two failure modes here: a config copied from a Windows server lists .dll paths that do not exist on Linux (and vice versa), and a line with the right platform tag but a wrong or old filename. On Linux the file is case-sensitive — amxmodx_mm_i386.so is not AMXModX_mm_i386.so.

5. It is not actually a Metamod plugin

People sometimes list an AMXX plugin (.amxx) or a module in metamod/plugins.ini. Only Metamod plugins (AMXX itself, Reunion, ReAPI, etc.) belong there. An .amxx goes in AMXX's plugins.ini, not Metamod's — see installing an AMXX plugin. A file that is not a Metamod plugin loads as bad load.

Common errors

  • bad load — wrong architecture, missing 32-bit dependency, ABI mismatch, or a non-Metamod file. Work through the sections above.
  • file open error (different status) — the path in plugins.ini does not point at an existing file. Fix the path, not the binary.
  • Plugin loads on Windows, bad load on Linux — you kept the win32 path or copied a .dll. Use the linux line and the .so.
  • All plugins bad load after moving to ReHLDS — old Metamod. Switch to Metamod-r.

Verification

After the fix, restart or change the map and re-check:

meta list

Every plugin must read RUN. For AMXX specifically, confirm the chain continued to load:

amxx version
amxx plugins

If Metamod shows AMXX as RUN and amxx version answers, the loader problem is gone. A plugin that still reports bad load after you have confirmed 32-bit architecture, resolved dependencies and correct plugins.ini tagging is built against an interface your Metamod does not provide — replace it with a build made for your Metamod-r version.

Decision table: which cause is yours

Every bad load is one of a small set of causes. Run file and ldd once and this table resolves it:

What you observeCauseFix
file says x86-64Wrong architectureGet the 32-bit (i386) build
ldd shows not foundMissing 32-bit libraryInstall lib32gcc-s1 / lib32stdc++6 / libc6:i386
32-bit, deps resolve, still bad loadABI mismatchMove to Metamod-r + matching plugin build
All plugins bad load after engine swapOld Metamod vs ReHLDSSwitch to Metamod-r
Only after copying a config from another boxWrong platform tag / pathFix the win32/linux line in plugins.ini

The reason this matters: "bad load" reads like one error but is really five, and people waste hours reinstalling a perfectly good plugin when the actual fault was a 64-bit download or a win32 line on a Linux box. Two commands — file and ldd — eliminate the two most common causes in under a minute, and only when both pass are you actually looking at an interface-version problem that needs a different build of the plugin itself.

Współtwórcy: Daemon666 ✦
Udostępnij: