Stages

Introduction

A stage is a major step in a tournament. Its purpose is to arrange and organize the competition for the participants following a specific and standardized method. The type and the settings of a stage represent this method.

Types

There are currently six different types of stage supported on Toornament:


Single Elimination

Type: single_elimination

A single elimination stage is a bracket in which competitors are eliminated after one loss. Only the winners continue to progress in the bracket until there is only one winner.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • third_decider
    boolean
    Whether there is an additional match between the losers of the semi-finals to decide the 3rd and 4th place (this option requires at least 4 competitors in the stage).
  • threshold
    integer
    A numeric value that defines when matches should not be played anymore. Matches that involve seeds that are lower or equal to the threshold are removed from the bracket unless the match is required for a subsequent match (such as in a losers bracket).

Double Elimination

Type: double_elimination

A double elimination stage is a bracket in which competitors must lose twice to be eliminated. The stage is divided into two brackets: a winners' bracket and a losers' bracket. The winners' bracket is a single elimination bracket that involves only competitors that have never lost. The losers' bracket involves only competitors that have lost once. At the end, a grand final is played between the winners of both brackets.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • skip_round1
    boolean
    Whether the first round of the winners' bracket is played. When this round is not played, part of the competitors starts in the winners' bracket, part starts in the losers' bracket.
  • grand_final
    string

    The type of grand final: "none" implies there is no grand final between the two brackets; "simple" implies that there is only a single match in the grand final.

    Possible values: none, simple

  • threshold
    integer
    A numeric value that defines when matches should not be played anymore. Matches that involve seeds that are lower or equal to the threshold are removed from the bracket unless the match is required for a subsequent match (such as in a losers bracket).

Bracket Groups

Type: bracket_groups

The "bracket groups" type represents a stage with several groups each containing a small bracket that involves a reduced number of competitors. Competitors don't move from one group to another. They keep playing in the same group.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • nb_groups
    integer
    The number of groups
  • bracket_type
    string

    The type of bracket used in each group: "single" represents a single elimination bracket, "double" represents a double elimination bracket.

    Possible values: single, double

  • threshold
    integer
    A numeric value that defines when matches should not be played anymore. Matches that involve seeds that are lower or equal to the threshold are removed from the bracket unless the match is required for a subsequent match (such as in a losers bracket).
  • arrival
    string

    The arrival method used to distribute competitors in the groups when they arrive in the stage.

    Possible values: adjacent, sequential, snake, branch

  • departure
    string

    The departure method used to re-assign competitors from the groups to the stage when they leave the stage. The "mirror" method reproduces the same method used in the arrival.

    Default: mirror

    Possible values: adjacent, sequential, snake, branch, mirror

Round-robin Groups

Type: pools

The "round-robin groups" type represents a stage with several small groups. Each group involves a subset of the stage competitors and arranges matches between all competitors using a round-robin method.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • nb_groups
    integer
    The number of groups
  • arrival
    string

    The arrival method used to distribute competitors in the groups when they arrive in the stage.

    Possible values: adjacent, sequential, snake, branch

  • departure
    string

    The departure method used to re-assign competitors from the groups to the stage when they leave the stage. The "mirror" method reproduces the same method used in the arrival.

    Default: mirror

    Possible values: adjacent, sequential, snake, branch, mirror

  • pairing_method
    string

    The pairing method describes how competitors are paired together. The "manual" method does no pairing and lets the group settings describe the pairing manually. The "standard" method applies the standard round robin method. The "double_standard" method applies the standard method twice, once in the normal order, once in the reverse order.

    Default: standard

    Possible values: manual, standard, double_standard

  • calculators
    array

    Contains the configuration of ranking calculators used to calculate points in the ranking. By default, calculators will be configured to provide 3 points for a win, 1 point for a draw and 0 points for a loss.

    For more information, please read the Rankings documentation.

  • tiebreakers
    array

    Contains the configuration of ranking tiebreakers used to break ties in the ranking.

    For more information, please read the Rankings documentation.

Group Settings
  • size
    integer
    The number of competitors in the group
  • pairing_values
    array

    Contains the pairings used in this group. The pairing values are represented by an array of rounds each containing an array of pairings. A pairing is composed of an array with two seed numbers.

    Example: [[[1,2],[3,4],[5,6]],[[1,4],[2,5],[3,6]]]

League

Type: league

The league type represents a stage with few large groups. Each group involves a subset of the stage competitors and arranges matches between all competitors using a round-robin method.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • nb_groups
    integer
    The number of groups
  • arrival
    string

    The arrival method used to distribute competitors in the groups when they arrive in the stage.

    Possible values: adjacent, sequential, snake, branch

  • departure
    string

    The departure method used to re-assign competitors from the groups to the stage when they leave the stage. The "mirror" method reproduces the same method used in the arrival.

    Default: mirror

    Possible values: adjacent, sequential, snake, branch, mirror

  • pairing_method
    string

    The pairing method describes how competitors are paired together. The "manual" method does no pairing and lets the group settings describe the pairing manually. The "standard" method applies the standard round robin method. The "double_standard" method applies the standard method twice, once in the normal order, once in the reverse order.

    Default: standard

    Possible values: manual, standard, double_standard

  • calculators
    array

    Contains the configuration of ranking calculators used to calculate points in the ranking. By default, calculators will be configured to provide 3 points for a win, 1 point for a draw and 0 points for a loss.

    For more information, please read the Rankings documentation.

  • tiebreakers
    array

    Contains the configuration of ranking tiebreakers used to break ties in the ranking.

    For more information, please read the Rankings documentation.

Group Settings
  • size
    integer
    The number of competitors in the group
  • pairing_values
    array

    Contains the pairings used in this group. The pairing values are represented by an array of rounds each containing an array of pairings. A pairing is composed of an array with two seed numbers.

    Example: [[[1,2],[3,4],[5,6]],[[1,4],[2,5],[3,6]]]

Swiss System

Type: swiss

The swiss type represents a stage with one or several groups. Each group involves a subset of the stage competitors and arranges matches between the competitors using a swiss pairing method.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • nb_groups
    integer
    The number of groups
  • arrival
    string

    The arrival method used to distribute competitors in the groups when they arrive in the stage.

    Possible values: adjacent, sequential, snake, branch

  • departure
    string

    The departure method used to re-assign competitors from the groups to the stage when they leave the stage. The "mirror" method reproduces the same method used in the arrival.

    Default: mirror

    Possible values: adjacent, sequential, snake, branch, mirror

  • pairing_method
    string

    The pairing method describes how competitors are paired together. The "manual" method does no pairing and lets the round settings describe the pairing manually. The "p_balanced" method pairs competitors using a same level difference within a score group. The "p_opposite" method pairs competitors by favoring top ranked within a score group. The "p_random" method pairs randomly within a score group.

    Default: p_balanced

    Possible values: manual, p_balanced, p_opposite, p_random

  • calculators
    array

    Contains the configuration of ranking calculators used to calculate points in the ranking. By default, calculators will be configured to provide 2 points for a win, 1 point for a draw, 1 point for a bye and 0 points for a loss.

    For more information, please read the Rankings documentation.

  • tiebreakers
    array

    Contains the configuration of ranking tiebreakers used to break ties in the ranking.

    For more information, please read the Rankings documentation.

Group Settings
  • size
    integer
    The number of competitors in the group
Round Settings
  • size
    integer
    The number of competitors in the round
  • pairing_values
    array

    Contains the pairings used in this round. The pairing values are represented by an array of pairings. A pairing is composed of an array with two seed numbers.

    When using the manual pairing method, this must contain a valid pairing table. When another pairing method is used, this will contain the calculated pairings when the round is created.

    Example: [[1,2],[3,4],[5,6]]

Simple

Type: simple

The simple type represents a stage with one or several matches. There is only one group and one round. There is no relation between matches.

Stage Settings
  • size
    integer
    The number of competitors in the stage
  • match_type
    string

    Type of match for the stage, choose between one versus one or free for all.

    Possible values: duel, ffa

  • nb_matches
    integer
    The number of matches available in the stage.
  • arrival
    string

    The arrival method used to distribute competitors in the groups when they arrive in the stage.

    Default: sequential

    Possible values: adjacent, sequential, snake

  • departure
    string

    The departure method used to re-assign competitors from the groups to the stage when they leave the stage. The "mirror" method reproduces the same method used in the arrival.

    Default: mirror

    Possible values: adjacent, sequential, snake, mirror