Skip to main content

Tournament Types

The Tournament Platform supports two distinct tournament formats, each optimized for different gameplay scenarios and user experiences. Both formats share common functionality for player management, gameplay, and results processing, but differ in their creation and start logic.

Format Comparison

FeatureScheduled TournamentsHop-On/Off Tournaments
CreationCasino System creates via external APIGame Platform creates on-demand via internal API
Start TriggerSpecific scheduled timeMinimum player count reached
RegistrationPre-registration before start timeLobby-based, then buy-in via Casino System
Player FlowStandard registration → wait → tournament startsJoin lobby → buy-in → tournament starts when threshold met
Late JoinersRegistration closes at scheduled timeCreates new tournament automatically
RefundsStandard tournament cancellation policyFull refunds if player leaves before start

Common Shared Functionality

Both tournament types utilize identical systems for:

Tournament Lifecycle

Shared Components (Both Formats)

  1. Player Registration & Authentication → Standard external APIs for player management
  2. Game Platform Configuration Exchange → Internal APIs for game setup and status
  3. Tournament Gameplay & Event Reporting → SQS events and postMessage communication
  4. Player Management → Rebuy and player leaving functionality
  5. Tournament Completion → Result calculation and cleanup

Format-Specific Components

Format-Specific Flow:
  1. Casino System creates tournament with specific startTime
  2. Tournament System schedules start job or starts immediately
  3. Players register in advance using standard APIs
  4. Tournament starts automatically at scheduled time
  5. Shared gameplay flow takes over from this point
Best for: Planned events, marketing campaigns, fixed-time competitions

Integration Architecture

The Tournament Platform uses a shared common flow architecture to eliminate code duplication while supporting format-specific requirements.

Communication Patterns

  • Casino System ↔ Tournament System: Standard external APIs with operator authentication
  • Tournament System ↔ Game Platform: Internal APIs for configuration and control
  • Game Platform ↔ Casino UI: postMessage events for real-time updates
  • Tournament System → Casino System: SQS events for notifications

API Usage by Format

Scheduled Tournaments

  • Creation: POST /api/tournaments (Casino System)
  • Start Logic: Time-based automatic start
  • APIs: 100% existing external API endpoints

Hop-On/Off Tournaments

  • Creation: POST /internal/tournaments (Game Platform)
  • Start Logic: Player-count based automatic start
  • New APIs: Tournament creation and refund logic
  • Shared APIs: All gameplay, events, and management

Next Steps