Published on · last updated on
Requirements
MatchZy is a CounterStrikeSharp plugin. Before you start, Metamod:Source and CounterStrikeSharp therefore have to be running - as described in our guide install Metamod & CounterStrikeSharp. For a public match server, you also need a GSLT.
CS2 server hosting from €5.99 / month
Prepaid without a contract, DDoS protection up to 250 Gbit/s.
View plans & pricesInstall MatchZy
- Download the current MatchZy release from the official repository (matching your CSSharp version).
- Unpack it into
addons/counterstrikesharp/plugins/MatchZy/(via WebFTP or SFTP). - Restart the server or run
css_plugins reload MatchZyin the console. - Check with
css_plugins listwhether MatchZy is loaded.
Start and control a match
MatchZy offers two ways: a fixed server config or loading a match config (JSON, Get5-compatible) by command. The most important commands in the game or via RCON:
.ready/.unready- players report ready; once a team is completely ready, the knife round starts..start- start the match manually (admin)..pause/.unpause- tactical or technical pause..stop- back to the last round (backup) if someone disconnected.matchzy_loadmatch_url/get5_loadmatch- load a complete match config.
After the knife round, the winning team gets to choose sides (.stay / .switch). MatchZy stores demos and match backups on the server automatically - you download them via WebFTP/SFTP.
Match backups: the most important part
MatchZy writes a backup file after every round. That sounds like a side issue, but it is the reason why serious play is possible with the plugin at all: if someone drops out of the connection in the middle of the match or the server crashes, you pick up exactly there instead of starting over.
.stop # back to the last round (both teams have to agree)
matchzy_loadbackup_file backup_round12.cfg
The files are in the server directory and carry the round number in their name. Download them after a match or clean them up occasionally - quite a lot accumulates over many matches. Backups are self-service throughout with us via WebFTP or SFTP.
Good to know: a backup loads the round state, not the player assignment. Anyone who switched teams in between has to switch back. That is why .stop during a running match is always the better choice than a manually loaded backup.
Match config instead of manual work
For recurring matches, it is worth storing the settings once as JSON instead of setting them in the game every time. The file defines teams, map order, game mode and side selection:
{
"matchid": "1",
"num_maps": 1,
"players_per_team": 5,
"maplist": ["de_mirage"],
"team1": { "name": "Team A", "players": { "STEAM_1:0:...": "Player1" } },
"team2": { "name": "Team B", "players": { "STEAM_1:0:...": "Player2" } }
}
It is loaded via matchzy_loadmatch_url from a reachable address or directly from the server. If players are assigned via their SteamID, MatchZy sorts them into the right team automatically when they join - that saves the usual quarter of an hour of sorting before kick-off.
Because the format is largely Get5-compatible, existing configurations from CS:GO times usually keep working without changes. How to build a complete tournament flow from this is explained under tournament setup.
When MatchZy does not respond
Almost all problems have one of three causes:
- The plugin is not loaded. Check with
css_plugins listvia RCON whether MatchZy is on the list. If it is missing, the location or the CounterStrikeSharp version is wrong - see install CounterStrikeSharp. - The commands do not arrive. MatchZy uses the dot as a prefix, not the slash.
.readyworks,/readydoes not. - The match does not start despite ready. Then a player is missing compared with
players_per_team. Either fill the spot or adjust the value in the config.
After a CS2 update, it can happen that CounterStrikeSharp and with it MatchZy temporarily do not load. That is normal and resolves itself as soon as the developers catch up - until then, the only thing that helps is waiting, not tinkering with the configuration.
Frequently asked questions
Rent your own CS2 server
Sub-tick optimized hardware, unlimited slots, Workshop maps, Metamod:Source & CounterStrikeSharp - prepaid, made in Germany.
View plans & pricesCS2 server hosting
from €5.99 / month
Prepaid without a contract, DDoS protection up to 250 Gbit/s, hosted in Frankfurt am Main.
View plans & pricesRead more
- CS2 server - overview
- Install Metamod & CounterStrikeSharp
- Add Workshop maps
- RCON command reference
- Metamod & CounterStrikeSharp explained
- Tournament setup (matches & demos)
Discover more