Do you want to help? Just register and log in to edit our pages. You can also join our #mobilelegends contributor community on our Discord.

How-To: New Bracket System on the MLBB wiki

From Liquipedia Mobile Legends: Bang Bang Wiki


General Structure of the New Bracket System[edit]

New Brackets/MatchLists are now generally entered the following way:

Bracket[edit]

{{bracket|<<<which bracket>>>|id=<<<unique MatchGroupID>>>|entryWidth=<<<You can increase length of bracket by adding numbers, is optional>>>
|RxMy={{Match
	|date=
	|other match params (Streams, Vetos,)
	|finished= (when True is applied, match is then recognized complete)
	|opponent1={{<<<OpponentTemplate>>>|<<<OpponentData>>>|score=X}}
	|opponent2={{<<<OpponentTemplate>>>|<<<OpponentData>>>|score=X}}
	|map1={{Map|team1side=<<<red/blue>>>|team2side=<<<red/blue>>>
	|t1h1=X|t1h2=X|t1h3=X|t1h4=X|t1h5=X
	|t2h1=X|t2h2=X|t2h3=X|t2h4=X|t2h5=X
	|t1b1=X|t1b2=X|t1b3=X|t1b4=X|t1b5=X
	|t2b1=X|t2b2=X|t2b3=X|t2b4=X|t2b5=X
	|winner=<<<1/2>>>
	|comment=|vod=}}
}}

}}
  • RxMy (e.g. R1M1) indicates it is Match y of Round x. (Just like the RxGydetails (e.g. R1G1details) we used for the Match details in the old brackets.)

MatchList[edit]

{{matchlist|id=<<<unique MatchGroupID>>>|entryWidth=<<<Numbers that must match GroupTableLeague's width>>>
|My={{Match
	|date=
	|other match params (Streams, Vetos,)
	|finished= (when True is applied, match is then recognized complete)
	|opponent1={{<<<OpponentTemplate>>>|<<<OpponentData>>>|score=X}}
	|opponent2={{<<<OpponentTemplate>>>|<<<OpponentData>>>|score=X}}
	|map1={{Map|team1side=<<<red/blue>>>|team2side=<<<red/blue>>>
	|t1h1=X|t1h2=X|t1h3=X|t1h4=X|t1h5=X
	|t2h1=X|t2h2=X|t2h3=X|t2h4=X|t2h5=X
	|t1b1=X|t1b2=X|t1b3=X|t1b4=X|t1b5=X
	|t2b1=X|t2b2=X|t2b3=X|t2b4=X|t2b5=X
	|winner=<<<1/2>>>
	|comment=|vod=}}
}}

}}
  • My indicates it is Match y of the MatchList.


As one can easily see regarding entering Data the differences between Brackets and MatchLists become marginal.

Examples[edit]

Bracket[edit]

{{Bracket|Bracket/2|id=TESTMATCH1|matchWidth=210
|R1M1={{Match
    |date=January 22, 2021 - 11:00 {{Abbr/SGT}}
    |twitch=
    |opponent1={{TeamOpponent|10s gaming frost}}
    |opponent2={{TeamOpponent|alter ego}}
    |map1={{Map|team1side=red|team2side=blue
        |t1h1=lapu|t1h2=kagura|t1h3=popol|t1h4=harley|t1h5=pharsa
        |t2h1=yu zhong|t2h2=jawhead|t2h3=claude|t2h4=roger|t2h5=mathilda
        |t1b1=grock
        |t2b1=miya
        |length=13:00|winner=2
    }}
    |map2={{Map|team1side=blue|team2side=red
        |t1h1=carmilla|t1h2=hayabusa|t1h3=lapu|t1h4=jawhead|t1h5=cecilion
        |t2h1=benedetta|t2h2=chou|t2h3=pharsa|t2h4=yss|t2h5=khaleed
        |t1b1=grock
        |t2b1=miya
        |length=15:20|winner=2
    }}
}}
}}
will Result in
Grand Final
Grand Final
Final
GF
10s Gaming Frost10s Gaming Frost10s F
0
Alter EgoAlter EgoAE
2
January 22, 2021 - 11:00 SGT
Lapu-Lapu
Kagura
Popol and Kupa
Harley
Pharsa
13:00
Mathilda
Roger
Claude
Jawhead
Yu Zhong
Carmilla
Hayabusa
Lapu-Lapu
Jawhead
Cecilion
15:20
Khaleed
Yi Sun-Shin
Pharsa
Chou
Benedetta

MatchList[edit]

{{Matchlist|id=TESTMATCHB|title=Group A Matches
|M1header=January 18, 2021
|M1={{Match|bestof=3
	|date=January 18, 2021 - 12:00 {{Abbr/SGT}}
	|opponent1={{TeamOpponent|burmese ghouls}}
	|opponent2={{TeamOpponent|unique devu}}
|map1={{Map|team1side=red|team2side=blue
        |t1h1=claude|t1h2=lunox|t1h3=beneditta|t1h4=ling|t1h5=tigreal
        |t2h1=roger|t2h2=kaja|t2h3=yu zhong|t2h4=wanwan|t2h5=jawhead
        |t1b1=grock
        |t2b1=miya
        |length=18:56|winner=2
}}
|map2={{Map|team1side=blue|team2side=red
        |t1h1=pharsa|t1h2=chou|t1h3=beneditta|t1h4=yss|t1h5=akai
        |t2h1=lancelot|t2h2=popol|t2h3=harith|t2h4=lapu-lapu|t2h5=jawhead
        |t1b1=grock
        |t2b1=miya
        |length=11:51|winner=2
}}
}}
}}
will Result in
Group A Matches
January 18, 2021
Burmese GhoulsBurmese GhoulsBG
0
2
Unique DevuUnique DevuUDV
January 18, 2021 - 12:00 SGT
Claude
Lunox
Ling
Tigreal
18:56
Jawhead
Wanwan
Yu Zhong
Kaja
Roger
Pharsa
Chou
Yi Sun-Shin
Akai
11:51
Jawhead
Lapu-Lapu
Harith
Popol and Kupa
Lancelot

How-To: Copy-Paste[edit]

The provided Copy-Paste-Code is just a rudimentary framework, you can always add additional information with the parameters explained in the following sections.
Into the |opponent1 (and |opponent2) parameter you have to fill in the OpponentTemplate according to the OpponentType, for more information see here.

You can use a generator to create brackets or matchlist here.

A List that provides the new Names for Brackets (if you know the old (e.g. 2SE) ones) can be found at Liquipedia:BracketUpdate/Legacy.
Please keep in mind that the unique ID has to have exactly 10 Signs and those signs can be letters (A-Z, a-z) or numbers (0-9) but not any symbols like a full stop.

Transcluding a page that contains Brackets or MatchLists[edit]

with the new System transclusions of Brackets/MatchLists are not possible anymore. It would generate the same Bracket/MatchList with the same id and hence create problems (aka bad entries in LPDB.)

With the new System you just use {{ShowBracket|<<<id>>>}} (with the unique id of the Bracket/MatchList that should be displayed) instead.

Opponents[edit]

With the New Bracket System any Opponent Type can be matched against each other, this way it enables 1v2, 1v4, 1vTeam, ... Matches and Brackets.

For user purposes there exist 3 Types of Opponents:

  1. solo (One-Player Opponents, these are the Opponents you want to use for 1v1 Matches.)
  2. team (Team Opponents, these are the Opponents you want to use for Team Matches or a 2v2/3v3 tournaments.)
  3. literal (Literal Opponents, these can e.g. be used to indicate how Players drop down to the Lower Bracket.)


For Team Opponents the Player Data is retrieved automatically from {{TeamCard}}s. So for those Opponent Types to work the usage of Team Cards is a Requirement! For other Opponent Types the Player Data is specified in the Opponent Template call.

Usage[edit]

Opponents are defined by calling the according templates and entering the needed Data. You can either use the general {{Template:Opponent}} template and specify the type:

  1. for solo Opponents: {{Template:SoloOpponent}}
  2. for team Opponents: {{Template:TeamOpponent}}
  3. for literal Opponents: {{Template:LiteralOpponent}}

Parameters[edit]

|score= (Optional)
Overwrite the automatically calculated score with the set value for this Opponent. (Needed if you want to use score2 in case of Score Resets.)
For Team Matches with Sub-Matches scores become mandatory again.
solo Opponent[edit]

|name= (add after SoloOpponent)

Specify the DisplayName of the Player/Opponent.
|link= (Optional)
Used to specify the link of the Player should it not coincide with the DisplayName. (If the link is not specified AND a {{ParticipantTable}} is used the link will also be retrieved via the Variables the ParticipantTable sets.)
|flag= (Optional)
Used to specify the flag of the Player. If this is not set AND a {{ParticipantTable}} is used the flag will also be retrieved via the Variables the ParticipantTable sets.
TeamOpponent[edit]

|template= or |1=

Specify the TeamTemplate from which the Opponent link/name and Display should be retrieved.
Players are added via {{TeamCard}}
Literal[edit]
|1=
The to be displayed Text. For seeding explanation or a Bye seed, it is recommended to use Literal.

Map Parameters[edit]

|teamXside=
Use this to set the side for each team, either red or blue
|tXhY=
Use this to set the hero picked for each team
You can type it with all lowercase
|tXBY=
Use this to set the hero banned for each team
You can type it with all lowercase
|length=
Use this to set the match length, under the form of MINUTES:SECONDS
|winner=
Use this to set the winner of this Map/Game.
  • For a draw set it to 0.
  • If Opponent1 won the Map set it to 1.
  • If Opponent2 won the Map set it to 2.
  • For a not played map (e.g. 3rd Map in a Bo3 that went 2-0) use skip.
|walkover=
Use this to indicate a walkover took place and possibly who won by default.
  • 1 indicates that Opponent1 won by default.
  • 2 indicates that Opponent2 won by default.
  • FF indicates that a forfeit took place. In this Case the Map-Winner is determined by the |winner parameter.
  • DQ indicates that a disqualification took place. In this Case the Map-Winner is determined by the |winner parameter.
|comment= (Optional)
If you want to add a Comment to this Map/Game.
|header= (Optional)
If you want to add a Header to this Map/Game.
|vod= (Optional)
If you want to add a VoD to this Map/Game.

Match Parameters[edit]

|date= (Optional, but recommended)
If not entered this will default to the var set by {{Infobox league}}.
|bestof= (Optional)
If not set this will default to the bestof var if it is set.
|finished= (Optional)
Will be automatically set to true if a winner is determined/set or if the match is going on for 24h. (If date is set ~8.5h instead of 24h.)
|winner= (Optional)
If bestof is set (by parameter of var) this can automatically be determined by the score sums. If walkover is set as a number the winner is determined via that too.
|cancelled=true (Optional)
Indicates that the match was cancelled.
|comment= (Optional)
If you want to add a Comment to this Match.
|walkover= (Optional)
Use this to indicate a walkover took place and possibly who won by default.
  • 1 indicates that Opponent1 won by default.
  • 2 indicates that Opponent2 won by default.
  • FF indicates that a forfeit took place. In this Case the Map-Winner is determined by the |winner parameter.
  • DQ indicates that a disqualification took place. In this Case the Map-Winner is determined by the |winner parameter.

Qualification[edit]

If the Match is a qualification match you can use the following parameters to set preset literals (for before the match takes place):

|qualWinLiteral=
For the opponent that qualifies via winning the match.
|qualLoseLiteral=
For the opponent that qualifies via losing the match (in case it is a seeding match).

MediaLinks[edit]

Media Links work just like on the old Brackets, just that they now are applied in the Match Template instead of inside the Details. Available MediaLinks are:

|preview=
|preview2=
|interview=
|interview2=
|recap=
|review=
|lrthread=
|vod=
|vodgameX= (X = 1; ...; 9)

Streams[edit]

Stream work just like on the old Brackets, just that they now are applied in the Match Template instead of inside the Details. Available Streams are:

|stream=
|twitch=
|twitch2=
|afreeca=
|afreecatv=
|dailymotion=
|douyu=
|smashcast=
|youtube=
|trovo=

MatchGroup (Bracket/MatchList) Parameters[edit]

|id=
Set the (unique) id of the MatchGroup.

Brackets[edit]

|2=
Set the Bracket Template that should be used to define the display.
Example use bracket/2 to display Template:Bracket/2 (i.e. a 2SEBracket).
|R#M$=
Call a Match Template into this parameter to enter Data for Match $ of Round #.
|R#M$header= (Optional)
Set the header for Match R#M$.

You also have the following parameters available to adjust the display:

|hideRoundTitles=
|matchHeight=
|matchWidth=
|matchWidthMobile=
|headerHeight=
|emptyRoundTitles=
|hideMatchLine=
|qualifiedHeader=

MatchLists[edit]

|M#header= (Optional)
Set a header for Match #.
|M#=
Call a Match Template into this parameter to enter Data for Match #.

You also have the following parameters available to adjust the display:

|width=
|attached=
|nocollapse=
|collapsed=

Display a bracket/matchlist on an additional page[edit]

To display a Bracket/MatchList on a different page you just have to call its display by entering {{DisplayMatchGroup|BRACKET-ID}}, where "BRACKET-ID" is the ID of the Bracket/MatchList that should be displayed.

For Brackets you have the following parameters available to adjust the display:

|hideRoundTitles=
|matchHeight=
|matchWidth=
|headerHeight=
|emptyRoundTitles=
|hideMatchLine=
|qualifiedHeader=

For MatchLists you have the following parameters available to adjust the display:

|width=
|attached=
|nocollapse=
|collapsed=

See also[edit]