--- title: "Fix: 'Plugin failed to load: Invalid Plugin' (AMX Mod X)" excerpt: "What 'Invalid Plugin' means in AMX Mod X, the version and architecture mismatch between .amxx and your AMXX build, corrupted uploads, wrong compiler, and reading amxx plugins status." category: "errors" tags: "amxmodx, plugins" image: "" read_time: "8 min read" ---
AMX Mod X loads your plugin list and one line reports:
Plugin failed to load: Invalid Plugin
and amxx plugins shows it as bad load. "Invalid Plugin" specifically means AMX Mod X could not recognise the .amxx as a plugin it can run — the file is corrupt, compiled for the wrong AMXX version, or not a real .amxx at all. This is distinct from a plugin that loads but errors at runtime. Here is how to pin it down.
Get the per-plugin verdict from the server console:
amxx plugins
Each plugin shows running, paused, bad load, or debug. "Invalid Plugin" corresponds to bad load with an invalid-format reason. Note which plugin and pair it with the load line in the AMXX log under addons/amxmodx/logs/, which often adds a more specific reason such as a bad file magic or version.
A truncated or corrupted upload — interrupted transfer, or FTP in ASCII mode mangling a binary — produces an invalid plugin. Confirm the file has real size and is binary:
ls -l addons/amxmodx/plugins/myplugin.amxx
A near-zero-byte file, or a file that opens as text/HTML (you accidentally saved a web page), is invalid. Re-upload in binary mode. If you compiled it yourself, make sure you copied the .amxx output, not the .sma source — a .sma renamed to .amxx is invalid because it is Pawn text, not compiled bytecode.
A plugin compiled for a newer AMX Mod X than you run can be rejected as invalid, and one compiled for a much older branch may also fail. The safe path is to compile against the version you run — 1.9 is the stable default. If you downloaded a precompiled .amxx that will not load, recompile the .sma with the matching compiler. On this platform the plugin directory compiles source on demand against pinned 1.8.2 / 1.9 / 1.10 toolchains, which sidesteps the mismatch entirely.
The .amxx format carries a version tag AMX Mod X checks on load. If someone hand-edited the file, or it was produced by an incompatible or unofficial compiler, the tag will not match and it loads as invalid. Recompile from clean source with the official amxxpc for your target version rather than trusting a mystery binary.
The plugin is listed in addons/amxmodx/configs/plugins.ini. A line pointing at a filename that does not exist, or a stray path, produces a load failure too. Keep it to the bare filename:
myplugin.amxx ; not a path, not myplugin.sma, not a commented mess
Plugins load only at map change, so after fixing the file or the line, change the map (or restart) to reload — editing on a live map changes nothing until then, as covered in updating plugins on a live server.
The cleanest way to avoid "Invalid Plugin" for good is to never ship a binary compiled for a version you do not run. If you maintain your own plugins, keep a copy of the amxxpc compiler that matches your server — 1.8.2, 1.9 or 1.10 — and compile there. A plugin that uses a native introduced in 1.9 (for example the coloured chat natives) will not even compile on 1.8.2, and a 1.10-compiled binary can be rejected by a 1.8.2 loader as an invalid format. Pin one AMXX version across your whole server and compile everything against it; mixing compilers is the fastest route back to this error.
bad load / Invalid Plugin — wrong AMXX version or a corrupt file. Recompile against your version, re-upload in binary..sma to .amxx — that is source, not bytecode. Compile it first..sma.After recompiling/re-uploading and changing the map, re-check:
amxx plugins
The plugin should now read running instead of bad load. Cross-check the AMXX log for the load line — a clean load with no invalid-format entry confirms the fix. If it loads but then throws runtime errors, that is a different layer (a missing module or a code bug); a plugin that needs a module you lack shows as bad load for a different reason, addressed in the module-load troubleshooting. Test the plugin's actual feature in-game to be sure it is genuinely working, not merely listed.