Skip to main content
The 5Stack match system provides comprehensive tools for organizing, managing, and playing CS2 matches. Whether you’re running a casual pickup game or a competitive tournament match, 5Stack handles everything from player management to server provisioning.

Match Types

5Stack supports multiple match formats to accommodate different competitive scenarios:

Competitive

Standard competitive format with 12 rounds per half (MR12). Designed for serious competitive play.

Wingman

2v2 matches with 8 rounds per half (MR8). Perfect for smaller team formats.

Custom

Flexible match format with customizable round settings. Use this for scrimmages or non-standard formats.

Match Statuses

Matches progress through several states from creation to completion:
1

Picking Players

Initial state where players are being added to lineups. Open matches allow anyone to join.
2

Scheduled

Match has been scheduled for a specific time. Players receive notifications.
3

Waiting for Check-In

Players must check in to confirm attendance. Configurable check-in requirements.
4

Veto

Teams veto maps and regions (if enabled). Follows a structured pick/ban process.
5

Waiting for Server

System is provisioning a game server for the match.
6

Live

Match is in progress. Server is active and players are competing.
7

Finished

Match has completed with a winner determined.

Lobby Access Modes

Control who can join your match lobby:

Open

Anyone can join the match. Perfect for public pickup games.

Friends

Only Steam friends can join. Good for semi-private matches.

Invite

Players need an invite code to join. Secure option for organized matches.

Private

Only manually added players can participate. Full control over roster.

Key Features

Automatic Server Management

The system automatically provisions CS2 game servers in your selected region. Servers are configured with all match settings and ready for players to connect.
// Match automatically gets a server when moving to Live status
match.status === e_match_status_enum.Live
match.connection_string // "connect 192.168.1.1:27015; password abc123"
match.tv_connection_string // For spectators with TV delay

Real-Time Match Statistics

5Stack tracks comprehensive statistics during matches:
  • Individual player performance (K/D/A, headshots, damage)
  • Multi-kill rounds (2K, 3K, 4K, 5K)
  • Clutch situations
  • Opening duels
  • Utility damage
  • Round-by-round breakdowns

Map Veto System

Configurable map selection process:
  • Best of 1: Single map selection
  • Best of 3: Full veto process with picks and bans
  • Best of 5: Extended veto for championship series
  • Custom Map Pool: Use workshop maps or custom selections

Region Veto

For international matches, teams can veto servers regions to ensure fair ping:
match.options.region_veto = true
match.options.regions = ['us-east', 'us-west', 'eu-west']
// Teams alternate vetoing until one region remains

Match Options

Extensive customization options available:
  • Max rounds (MR8, MR12, MR15)
  • Overtime enabled/disabled
  • Knife round for side selection
  • Default player models
  • Number of substitutes (0-5)
  • Coaches allowed
  • Check-in requirements
  • Ready settings
  • TV delay (0-120 seconds)
  • Timeout settings (tactical and technical)
  • Auto-cancellation rules
  • Match mode (auto/admin controlled)

Match Flow Example

Here’s a typical competitive match flow:
Matches can be created standalone or as part of a tournament. Tournament matches have additional constraints and automation.

Next Steps

Creating Matches

Learn how to create and configure matches

Joining Matches

Join matches and manage your lineup

Match Options

Explore all available match configuration options

Match Statistics

View and analyze match statistics

Build docs developers (and LLMs) love