API

TournamentPhase

Tournament phase defines part of a tournament (number of users entering, number of rounds, format, etc.). A tournament can combine many phases to create the required flow. The first phase in a tournament always starts with Id=1. A tournament phase always has at least one round. It also holds logged users' information such as played round count, total phase points, phase position, etc.


Constructor

TournamentPhase()

Creates a tournament phase.

public TournamentPhase()

Property

GroupCount

Determine how many groups are in the current phase.

GroupCount

public int GroupCount {
    get;
    set;
}

Property

GroupSize

Determine the maximum number of teams/parties per single group.

GroupSize

public int GroupSize {
    get;
}

Property

HasGroups

Determine if there are groups in the current phase.

HasGroups

public bool HasGroups {
    get;
}

Property

Id

Phase id (starts with 1).

Id

public int Id {
    get;
    set;
}

Property

IsLoserBracketSeeded

Determine if the loser bracket is seeded in the double elimination bracket phase.

IsLoserBracketSeeded

public bool IsLoserBracketSeeded {
    get;
    set;
}

Property

IsSkipAllowed

Determine if the phase is allowed to be skipped in case there are fewer or equal teams in the current phase than expected in the next phase.

IsSkipAllowed

public bool IsSkipAllowed {
    get;
    set;
}

Property

MaxLoses

Max losses in this phase (e.g., arena can define that if you lose 3 times you are out).

MaxLoses

public int MaxLoses {
    get;
    set;
}

Property

MaxPlayers

Max players entering this phase.

MaxPlayers

public int MaxPlayers {
    get;
    set;
}

Property

MaxTeams

Max teams/parties entering this phase.

MaxTeams

public int MaxTeams {
    get;
    set;
}

Property

MaxTeamsPerMatch

Maximum allowed teams per match.

MaxTeamsPerMatch

public int MaxTeamsPerMatch {
    get;
    set;
}

Property

MinCheckinsPerTeam

Determine how many players in a team need to check in to be allowed to start a tournament match.

MinCheckinsPerTeam

public int MinCheckinsPerTeam {
    get;
    set;
}

Property

MinTeamsPerMatch

Minimum required teams per match. This indicates if a match should be played or not. Only fully checked-in teams/parties count.

Remarks: In certain phase formats, if a match does not contain MinTeamsPerMatch until the start deadline, then all checked-in parties will get an auto-win and are moved to the next round.

MinTeamsPerMatch

public int MinTeamsPerMatch {
    get;
    set;
}

Property

Rounds

Phase rounds. Each round can have different times and win conditions (e.g., each round is best of three, but the final round is best of five).

Rounds

public List<TournamentRound> Rounds {
    get;
    set;
}

Property

Scores

Determine all party scores in this phase. It holds a summary of points, wins, losses, etc. each party gathered. The list has to be loaded on demand. To populate scores, use LoadTournamentPhaseScores() on the backbone client.

Scores

public List<TournamentScore> Scores {
    get;
    set;
}

Property

Type

Phase type (e.g., Arena or Bracket).

Type

public TournamentPhaseType Type {
    get;
    set;
}

Property

UserGroupId

Determine user group id in the current phase.

UserGroupId

public int UserGroupId {
    get;
    set;
}

Property

UserIsGroupAssigned

Determine if the user group id has been assigned. In case there are groups in the first phase of a tournament, users have to check in first. For a team, only the party leader will trigger the group id assigning process on check-in.

UserIsGroupAssigned

public bool UserIsGroupAssigned {
    get;
}

Property

UserIsParticipating

Determine if the user is participating in the phase. It can be false if the user has been knocked out in the previous phase.

UserIsParticipating

public bool UserIsParticipating {
    get;
    set;
}

Property

UserLoses

Number of user losses in the current phase.

UserLoses

public int UserLoses {
    get;
    set;
}

Property

UserPlayedRoundCount

Count of already finished rounds for the user in the given phase. This increases despite if the user did or did not really play/participate in previous rounds.

UserPlayedRoundCount

public int UserPlayedRoundCount {
    get;
    set;
}

Property

UserPoints

Number of user points in the current phase. This represents total points for match results (not total points scored in game sessions).

UserPoints

public int UserPoints {
    get;
    set;
}

Property

UserPositionBottom

User's current bottom position in this phase (e.g., (1-3/8) => 3).

UserPositionBottom

public int UserPositionBottom {
    get;
    set;
}

Property

UserPositionTop

User's current top position in this phase (e.g., (1-3/8) => 1).

UserPositionTop

public int UserPositionTop {
    get;
    set;
}

Method

GetRoundById(int)

Gets phase round by specific id.

Parameters

  • Name
    roundId
    Type
    int
    Description

    Round id (first round always starts with id=1).

Returns

Tournament round or null if the round does not exist.

GetRoundById(int)

public Gimmebreak.Backbone.Tournaments.TournamentRound GetRoundById(int roundId)

Method

GetScoreByPartyId(long)

Get phase score record by party id. Note that scores have to be loaded prior to using this method; otherwise, the return value will be NULL. Use LoadTournamentPhaseScores() on the backbone client.

Parameters

  • Name
    partyId
    Type
    long
    Description

    Party id for which we want the score record.

Returns

Score record or null if it does not exist (or not loaded).

GetScoreByPartyId(long)

public Gimmebreak.Backbone.Tournaments.TournamentScore GetScoreByPartyId(long partyId)

Method

GetScoreByUserId(long)

Get phase score record by user id. Note that scores have to be loaded prior to using this method; otherwise, the return value will be NULL. Use LoadTournamentPhaseScores() on the backbone client.

Parameters

  • Name
    userId
    Type
    long
    Description

    User id for which we want the score record.

Returns

Score record or null if it does not exist (or not loaded).

GetScoreByUserId(long)

public Gimmebreak.Backbone.Tournaments.TournamentScore GetScoreByUserId(long userId)