Skip to main content

Install or update Metamod and CounterStrikeSharp for CS2

CounterStrikeSharp is a CS2 plugin framework loaded through Metamod. It is not a drop-in replacement for every CS:GO SourceMod plugin. A SourceMod .smx file cannot simply become a CounterStrikeSharp plugin by changing its extension.

Choose a compatible set

Record the CS2 build, host operating system, existing framework versions and plugin list. Read the current CounterStrikeSharp installation guide and release notes alongside Metamod's CS2 requirements. Requirements change after game updates; a version that worked last month is not a promise of compatibility today.

Use official release packages matching the server's operating system and architecture. Windows binaries are unsuitable for a Linux service. For a first CounterStrikeSharp installation, its documented bundled-runtime package avoids relying on an unknown existing .NET runtime. Ask support about missing system libraries; hosted game accounts generally cannot install operating-system packages.

Back up and place the loaders

Stop the server normally after notifying players. Save copies of game/csgo/gameinfo.gi, your current addons directory and relevant configuration. Include plugin databases or external database exports where applicable. Store the backup outside the paths you are about to update.

Extract Metamod so its addons directory sits inside game/csgo/. Check that you did not create addons/addons or install it beneath the old CS:GO directory. Follow the current loader instructions when adding its search-path entry to gameinfo.gi; preserve the rest of that file.

For the currently documented CS2 layout, the search-path entry is Game csgo/addons/metamod, placed below Game_LowViolence csgo_lv. If your file or release instructions differ, stop and compare the actual supported build rather than reconstructing the whole file from an online example.

Check each layer separately

Start the server and run meta list in its console. An unknown command means the Metamod loading stage needs attention. A working command with no CounterStrikeSharp entry means the next loader has not yet been confirmed.

Stop again before extracting CounterStrikeSharp's release addons content into game/csgo/. Restart, check meta list again and inspect framework startup logs. Only install one small, trusted plugin after the framework itself loads successfully. A downloaded repository source ZIP is not necessarily a ready-to-run release.

Update with a rollback point

Update during maintenance, preserving existing configuration and plugin data. Check release-specific migration instructions before replacing binaries; third-party plugins may require their own compatible updates. Do not overwrite locally edited settings with a sample configuration just because it came in an archive.

After a game update, recheck the loader entry because game-managed files can change. Test a client join and the plugin's actual function, then perform a controlled restart. If a regression appears, retain the error and version details and restore the saved compatible configuration and binaries only after checking database migration implications. Avoid an automatic downgrade across an irreversible plugin database change.

Further reading

Looking for another game? Browse game server setup and troubleshooting guides.