Skip to main content

MatchZy

MatchZy is a plugin for CS2 that runs and manages practice/pugs/scrims/matches with easy configuration!

What can MatchZy do?

MatchZy can solve a lot of match management requirements. It provides basic commands like !ready, !unready, !pause, !unpause, !tac, !tech, match stats, and much more!

Feature highlights:

  • Practice Mode many more commands!
  • Warmup with infinite money 🤑
  • Knife round (With expected logic, i.e., the team with the most players wins. If the same number of players, then the team with HP advantage wins. If the same HP, the winner is decided randomly)
  • Start live match (after knife winner makes side selection. Knife round can also be disabled by the !kniferound, !kr and !rk commands).
  • Automatically starts demo recording and stops recording when the match is ended
  • Coaching system - (Coach need to join team, before .coach ct or .coach t work)
  • Damage report after every round
  • Support for round restore (Currently using the vanilla valve's backup system)
  • Provides easy configuration

Usage Commands

Most of the commands can also be used using ! prefix instead of . (like !ready or /ready)

Chat CommandsDescription
.coach team-side-hereStarts coaching the specified side. Example: .coach t to start coaching the terrorist side!
.readyMarks the player ready.
.unreadyMarks the player unready.
.unpauseRequest for unpausing the match. Both teams need to type .unpause to unpause the match.
.pausePauses the match in freezetime (Normal pause).
.stayStays on the same side (For knife winner, after the knife round).
.switch or .swapSwitches the side (For knife winner, after the knife round).
.stopRestore the backup of the current round. Both teams need to type .stop to restore the current round.
.tacStarts a tactical timeout.
.techPauses the match in freezetime (Technical issues).

Practice Commands

Chat CommandsDescription
.spawn <number>Spawns to the provided competitive spawn number of the same team.
.ctspawn <number>Spawns to the provided competitive spawn number of CT (Alias: .cts).
.tspawn <number>Spawns to the provided competitive spawn number of T (Alias: .ts).
.botAdds a bot on the user's current position.
.nobotsRemoves all the bots.
.crouchbotAdds a crouched bot on the user's current position.
.boostAdds a bot on the current position and boosts the player on it.
.crouchboostAdds a crouched bot on the current position and boosts the player on it.
.ct, .t, .specChanges player team to the requested team.
.fas / .watchmeForces all players into spectator except the player who called this command.
.clearClears all active smokes, molotovs, and incendiaries.
.fastforwardFast-forwards the server time to 20 seconds (Alias: .ff).
.noflashToggles immunity to flashbangs (it will still blind others with noflash disabled).
.dryrunTurns on dry-run mode (Alias: .dry).
.godTurns on god mode.
.savenade <name> <description>Saves a lineup (Alias: .sn).
.loadnade <name>Loads a lineup (Alias: .ln).
.deletenade <name>Deletes a lineup from file (Alias: .dn).
.importnade <code>Imports a lineup using a provided code (Alias: .in).
.listnades <filter>Lists all saved lineups or those matching the given filter (Alias: .lin).
.breakBreaks all breakable entities (glass windows, wooden doors, vents, etc.).
.rethrowRethrows your last thrown grenade (Alias: .rt).
.timerStarts a timer and stops it on the second execution, showing the duration.
.lastTeleports you back to where you threw your last grenade from.
.back <number>Teleports you back to the provided position in your grenade history.
.delay <seconds>Sets a delay on your last grenade for use with .rethrow or .throwindex.
.throwindex <index>...Throws grenades from specific positions in your history. Example: .throwindex 1 2 throws your 1st and 2nd grenades.
.lastindexPrints the index number of your last thrown grenade.
.rethrowsmokeRethrows your last thrown smoke grenade.
.rethrownadeRethrows your last thrown HE grenade.
.rethrowflashRethrows your last thrown flashbang.
.rethrowmolotovRethrows your last thrown molotov.
.rethrowdecoyRethrows your last thrown decoy.
.solidToggles mp_solid_teammates in practice mode.
.impactsToggles sv_showimpacts in practice mode.
.nadecamToggles sv_grenade_trajectory_prac_pipreview in practice mode.

Admin Commands

Chat CommandsDescription
.startForce starts a match.
.forceForce starts a match.
.restartForcefully restarts or resets a match or scrim. (Also available commands: .end, .endgame, .endmatch, .forceend, .stopmatch)
.forcepausePauses the match as an admin (Players cannot unpause the admin-paused game). (.fp for a shorter command)
.forceunpauseForce unpauses the match. (.fup for a shorter command)
.restore <round-number>Restores the backup of the provided round number.
.knife / .rkToggles the knife round. If disabled, the match will skip the Warmup phase and go directly to the Live phase. (Shortcut commands: !kr, !kniferound)
.matchActivates match mode. All 10 players must ready up, knife round enabled by default in this mode.
.scrimActivates scrim mode. All 10 players must ready up, knife round is disabled - All rounds would be played irrespective of the winner. Useful in scrims!
.readyrequired <number>Sets the number of ready players required to start the match. All connected players must be ready to start the game.
.settingsDisplays the current settings, like whether knife is enabled or not, value of ready-required players, etc.
.ctname <teamname> / .tname <teamname>Sets team name for Team CT / Team T.
.pracStarts Practice Mode.
.exitpracExits Practice mode and loads Match mode.
.exitdryExits DryRun mode and loads back to Practice Mode.