Jump to content
Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Tournament data: Difference between revisions

Template page
m Build reusable tournament data and rendering system
m Build reusable tournament data and rendering system
 
(7 intermediate revisions by the same user not shown)
Line 2: Line 2:
|article={{Infobox tournament
|article={{Infobox tournament
|name={{{name|{{PAGENAME}}}}}
|name={{{name|{{PAGENAME}}}}}
|date={{{date|}}}
|image={{{image|}}}
|image={{{image|}}}
|type={{{type|Player Run Festival}}}
|type={{{type|Player Run Festival}}}
|format={{{format|}}}
|mode={{{mode|}}}
|host={{{host|}}}
|host={{{host|}}}
|continent={{{continent|}}}
|continent={{{continent|}}}
Line 16: Line 13:
|runner6={{{runner6|}}}
|runner6={{{runner6|}}}
|post={{{post|}}}
|post={{{post|}}}
|youtube={{{youtube|}}}
|youtubelabel={{{youtubelabel|}}}
|youtubeexplicit={{{youtubeexplicit|}}}
|youtubecredit={{{youtubecredit|}}}
|youtubeofficial={{{youtubeofficial|}}}
|youtube2={{{youtube2|}}}
|youtube2label={{{youtube2label|}}}
|youtube2explicit={{{youtube2explicit|}}}
|youtube2credit={{{youtube2credit|}}}
|youtube2official={{{youtube2official|}}}
|youtube3={{{youtube3|}}}
|youtube3label={{{youtube3label|}}}
|youtube3explicit={{{youtube3explicit|}}}
|youtube3credit={{{youtube3credit|}}}
|youtube3official={{{youtube3official|}}}
|youtube4={{{youtube4|}}}
|youtube4label={{{youtube4label|}}}
|youtube4explicit={{{youtube4explicit|}}}
|youtube4credit={{{youtube4credit|}}}
|youtube4official={{{youtube4official|}}}
|youtube5={{{youtube5|}}}
|youtube5label={{{youtube5label|}}}
|youtube5explicit={{{youtube5explicit|}}}
|youtube5credit={{{youtube5credit|}}}
|youtube5official={{{youtube5official|}}}
|twitch={{{twitch|}}}
|twitchlabel={{{twitchlabel|}}}
|twitchcredit={{{twitchcredit|}}}
|previous={{{previous|}}}
|next={{{next|}}}
|townprevious={{{townprevious|}}}
|townnext={{{townnext|}}}
|date={{{date|}}}
|format={{{format|}}}
|mode={{{mode|}}}
|challonge={{{challonge|}}}
|challonge={{{challonge|}}}
|winner={{{winner|}}}
|winner={{{winner|}}}
|second={{{second|}}}
|second={{{second|}}}
|third={{{third|}}}
|third={{{third|}}}
|jointthird={{{jointthird|}}}
|champion={{{champion|}}}
|reigningchampion={{{reigningchampion|}}}
|reigningchampion={{{reigningchampion|}}}
|championoutcome={{{championoutcome|}}}
|championoutcome={{{championoutcome|}}}
|championprevious={{{championprevious|}}}
|winnerteam={{{winnerteam|}}}
|winnerteam={{{winnerteam|}}}
|secondteam={{{secondteam|}}}
|secondteam={{{secondteam|}}}
|thirdteam={{{thirdteam|}}}
|thirdteam={{{thirdteam|}}}
|jointthirdteam={{{jointthirdteam|}}}
|winner1={{{winner1|}}}
|winner1={{{winner1|}}}
|winner2={{{winner2|}}}
|winner2={{{winner2|}}}
Line 35: Line 69:
|third2={{{third2|}}}
|third2={{{third2|}}}
|third3={{{third3|}}}
|third3={{{third3|}}}
|previous={{{previous|}}}
|jointthird1={{{jointthird1|}}}
|previousmonth={{{previousmonth|}}}
|jointthird2={{{jointthird2|}}}
|next={{{next|}}}
|jointthird3={{{jointthird3|}}}
|nextmonth={{{nextmonth|}}}
|event2date={{{event2date|}}}
|townprevious={{{townprevious|}}}
|event2format={{{event2format|}}}
|townpreviousmonth={{{townpreviousmonth|}}}
|event2mode={{{event2mode|}}}
|townnext={{{townnext|}}}
|event2challonge={{{event2challonge|}}}
|townnextmonth={{{townnextmonth|}}}
|event2winner={{{event2winner|}}}
|event2second={{{event2second|}}}
|event2third={{{event2third|}}}
|event2jointthird={{{event2jointthird|}}}
|event2champion={{{event2champion|}}}
|event2reigningchampion={{{event2reigningchampion|}}}
|event2championoutcome={{{event2championoutcome|}}}
|event2winnerteam={{{event2winnerteam|}}}
|event2secondteam={{{event2secondteam|}}}
|event2thirdteam={{{event2thirdteam|}}}
|event2jointthirdteam={{{event2jointthirdteam|}}}
|event2winner1={{{event2winner1|}}}
|event2winner2={{{event2winner2|}}}
|event2winner3={{{event2winner3|}}}
|event2second1={{{event2second1|}}}
|event2second2={{{event2second2|}}}
|event2second3={{{event2second3|}}}
|event2third1={{{event2third1|}}}
|event2third2={{{event2third2|}}}
|event2third3={{{event2third3|}}}
|event2jointthird1={{{event2jointthird1|}}}
|event2jointthird2={{{event2jointthird2|}}}
|event2jointthird3={{{event2jointthird3|}}}
|content={{{content|}}}
}}
}}
|card={{Tournament card
|card={{Tournament card
|name={{{name|{{PAGENAME}}}}}
|name={{{name|{{PAGENAME}}}}}
|date={{{date|}}}
|image={{{image|}}}
|image={{{image|}}}
|type={{{type|Player Run Festival}}}
|type={{{type|Player Run Festival}}}
|format={{{format|}}}
|mode={{{mode|}}}
|host={{{host|}}}
|host={{{host|}}}
|continent={{{continent|}}}
|continent={{{continent|}}}
Line 60: Line 114:
|runner6={{{runner6|}}}
|runner6={{{runner6|}}}
|post={{{post|}}}
|post={{{post|}}}
|youtube={{{youtube|}}}
|youtubelabel={{{youtubelabel|}}}
|youtubeexplicit={{{youtubeexplicit|}}}
|youtubecredit={{{youtubecredit|}}}
|youtubeofficial={{{youtubeofficial|}}}
|youtube2={{{youtube2|}}}
|youtube2label={{{youtube2label|}}}
|youtube2explicit={{{youtube2explicit|}}}
|youtube2credit={{{youtube2credit|}}}
|youtube2official={{{youtube2official|}}}
|youtube3={{{youtube3|}}}
|youtube3label={{{youtube3label|}}}
|youtube3explicit={{{youtube3explicit|}}}
|youtube3credit={{{youtube3credit|}}}
|youtube3official={{{youtube3official|}}}
|youtube4={{{youtube4|}}}
|youtube4label={{{youtube4label|}}}
|youtube4explicit={{{youtube4explicit|}}}
|youtube4credit={{{youtube4credit|}}}
|youtube4official={{{youtube4official|}}}
|youtube5={{{youtube5|}}}
|youtube5label={{{youtube5label|}}}
|youtube5explicit={{{youtube5explicit|}}}
|youtube5credit={{{youtube5credit|}}}
|youtube5official={{{youtube5official|}}}
|twitch={{{twitch|}}}
|twitchlabel={{{twitchlabel|}}}
|twitchcredit={{{twitchcredit|}}}
|previous={{{previous|}}}
|next={{{next|}}}
|townprevious={{{townprevious|}}}
|townnext={{{townnext|}}}
|date={{{date|}}}
|format={{{format|}}}
|mode={{{mode|}}}
|challonge={{{challonge|}}}
|challonge={{{challonge|}}}
|winner={{{winner|}}}
|winner={{{winner|}}}
|second={{{second|}}}
|second={{{second|}}}
|third={{{third|}}}
|third={{{third|}}}
|jointthird={{{jointthird|}}}
|champion={{{champion|}}}
|reigningchampion={{{reigningchampion|}}}
|reigningchampion={{{reigningchampion|}}}
|championoutcome={{{championoutcome|}}}
|championoutcome={{{championoutcome|}}}
|championprevious={{{championprevious|}}}
|winnerteam={{{winnerteam|}}}
|winnerteam={{{winnerteam|}}}
|secondteam={{{secondteam|}}}
|secondteam={{{secondteam|}}}
|thirdteam={{{thirdteam|}}}
|thirdteam={{{thirdteam|}}}
|jointthirdteam={{{jointthirdteam|}}}
|winner1={{{winner1|}}}
|winner1={{{winner1|}}}
|winner2={{{winner2|}}}
|winner2={{{winner2|}}}
Line 79: Line 170:
|third2={{{third2|}}}
|third2={{{third2|}}}
|third3={{{third3|}}}
|third3={{{third3|}}}
|previous={{{previous|}}}
|jointthird1={{{jointthird1|}}}
|previousmonth={{{previousmonth|}}}
|jointthird2={{{jointthird2|}}}
|next={{{next|}}}
|jointthird3={{{jointthird3|}}}
|nextmonth={{{nextmonth|}}}
|event2date={{{event2date|}}}
|townprevious={{{townprevious|}}}
|event2format={{{event2format|}}}
|townpreviousmonth={{{townpreviousmonth|}}}
|event2mode={{{event2mode|}}}
|townnext={{{townnext|}}}
|event2challonge={{{event2challonge|}}}
|townnextmonth={{{townnextmonth|}}}
|event2winner={{{event2winner|}}}
|event2second={{{event2second|}}}
|event2third={{{event2third|}}}
|event2jointthird={{{event2jointthird|}}}
|event2champion={{{event2champion|}}}
|event2reigningchampion={{{event2reigningchampion|}}}
|event2championoutcome={{{event2championoutcome|}}}
|event2winnerteam={{{event2winnerteam|}}}
|event2secondteam={{{event2secondteam|}}}
|event2thirdteam={{{event2thirdteam|}}}
|event2jointthirdteam={{{event2jointthirdteam|}}}
|event2winner1={{{event2winner1|}}}
|event2winner2={{{event2winner2|}}}
|event2winner3={{{event2winner3|}}}
|event2second1={{{event2second1|}}}
|event2second2={{{event2second2|}}}
|event2second3={{{event2second3|}}}
|event2third1={{{event2third1|}}}
|event2third2={{{event2third2|}}}
|event2third3={{{event2third3|}}}
|event2jointthird1={{{event2jointthird1|}}}
|event2jointthird2={{{event2jointthird2|}}}
|event2jointthird3={{{event2jointthird3|}}}
}}
}}
|row={{Tournament row
|row={{Tournament row
|name={{{name|{{PAGENAME}}}}}
|name={{{name|{{PAGENAME}}}}}
|date={{{date|}}}
|image={{{image|}}}
|image={{{image|}}}
|type={{{type|Player Run Festival}}}
|type={{{type|Player Run Festival}}}
|format={{{format|}}}
|mode={{{mode|}}}
|host={{{host|}}}
|host={{{host|}}}
|continent={{{continent|}}}
|continent={{{continent|}}}
Line 104: Line 214:
|runner6={{{runner6|}}}
|runner6={{{runner6|}}}
|post={{{post|}}}
|post={{{post|}}}
|youtube={{{youtube|}}}
|youtubelabel={{{youtubelabel|}}}
|youtubeexplicit={{{youtubeexplicit|}}}
|youtubecredit={{{youtubecredit|}}}
|youtubeofficial={{{youtubeofficial|}}}
|youtube2={{{youtube2|}}}
|youtube2label={{{youtube2label|}}}
|youtube2explicit={{{youtube2explicit|}}}
|youtube2credit={{{youtube2credit|}}}
|youtube2official={{{youtube2official|}}}
|youtube3={{{youtube3|}}}
|youtube3label={{{youtube3label|}}}
|youtube3explicit={{{youtube3explicit|}}}
|youtube3credit={{{youtube3credit|}}}
|youtube3official={{{youtube3official|}}}
|youtube4={{{youtube4|}}}
|youtube4label={{{youtube4label|}}}
|youtube4explicit={{{youtube4explicit|}}}
|youtube4credit={{{youtube4credit|}}}
|youtube4official={{{youtube4official|}}}
|youtube5={{{youtube5|}}}
|youtube5label={{{youtube5label|}}}
|youtube5explicit={{{youtube5explicit|}}}
|youtube5credit={{{youtube5credit|}}}
|youtube5official={{{youtube5official|}}}
|twitch={{{twitch|}}}
|twitchlabel={{{twitchlabel|}}}
|twitchcredit={{{twitchcredit|}}}
|previous={{{previous|}}}
|next={{{next|}}}
|townprevious={{{townprevious|}}}
|townnext={{{townnext|}}}
|date={{{date|}}}
|format={{{format|}}}
|mode={{{mode|}}}
|challonge={{{challonge|}}}
|challonge={{{challonge|}}}
|winner={{{winner|}}}
|winner={{{winner|}}}
|second={{{second|}}}
|second={{{second|}}}
|third={{{third|}}}
|third={{{third|}}}
|jointthird={{{jointthird|}}}
|champion={{{champion|}}}
|reigningchampion={{{reigningchampion|}}}
|reigningchampion={{{reigningchampion|}}}
|championoutcome={{{championoutcome|}}}
|championoutcome={{{championoutcome|}}}
|championprevious={{{championprevious|}}}
|winnerteam={{{winnerteam|}}}
|winnerteam={{{winnerteam|}}}
|secondteam={{{secondteam|}}}
|secondteam={{{secondteam|}}}
|thirdteam={{{thirdteam|}}}
|thirdteam={{{thirdteam|}}}
|jointthirdteam={{{jointthirdteam|}}}
|winner1={{{winner1|}}}
|winner1={{{winner1|}}}
|winner2={{{winner2|}}}
|winner2={{{winner2|}}}
Line 123: Line 270:
|third2={{{third2|}}}
|third2={{{third2|}}}
|third3={{{third3|}}}
|third3={{{third3|}}}
|previous={{{previous|}}}
|jointthird1={{{jointthird1|}}}
|previousmonth={{{previousmonth|}}}
|jointthird2={{{jointthird2|}}}
|next={{{next|}}}
|jointthird3={{{jointthird3|}}}
|nextmonth={{{nextmonth|}}}
|event2date={{{event2date|}}}
|townprevious={{{townprevious|}}}
|event2format={{{event2format|}}}
|townpreviousmonth={{{townpreviousmonth|}}}
|event2mode={{{event2mode|}}}
|townnext={{{townnext|}}}
|event2challonge={{{event2challonge|}}}
|townnextmonth={{{townnextmonth|}}}
|event2winner={{{event2winner|}}}
|event2second={{{event2second|}}}
|event2third={{{event2third|}}}
|event2jointthird={{{event2jointthird|}}}
|event2champion={{{event2champion|}}}
|event2reigningchampion={{{event2reigningchampion|}}}
|event2championoutcome={{{event2championoutcome|}}}
|event2winnerteam={{{event2winnerteam|}}}
|event2secondteam={{{event2secondteam|}}}
|event2thirdteam={{{event2thirdteam|}}}
|event2jointthirdteam={{{event2jointthirdteam|}}}
|event2winner1={{{event2winner1|}}}
|event2winner2={{{event2winner2|}}}
|event2winner3={{{event2winner3|}}}
|event2second1={{{event2second1|}}}
|event2second2={{{event2second2|}}}
|event2second3={{{event2second3|}}}
|event2third1={{{event2third1|}}}
|event2third2={{{event2third2|}}}
|event2third3={{{event2third3|}}}
|event2jointthird1={{{event2jointthird1|}}}
|event2jointthird2={{{event2jointthird2|}}}
|event2jointthird3={{{event2jointthird3|}}}
}}
}}
|month={{#if:{{{date|}}}|{{#time:F Y|{{{date|}}}}}}}
|date={{{date|}}}
|date={{{date|}}}
|name={{{name|}}}
|name={{{name|}}}
|winner={{{winner|}}}
|winner={{{winner|}}}
|champion={{#switch:{{lc:{{{championoutcome|}}}}}|retained={{#if:{{{reigningchampion|}}}|{{{reigningchampion|}}}|{{Tournament championship|name={{{name|}}}}}}}|transferred={{{winner|}}}|no-show={{{winner|}}}|#default={{{winner|}}}}}
|champion={{#if:{{{champion|}}}|{{{champion|}}}|{{#switch:{{lc:{{{championoutcome|}}}}}|established={{{winner|}}}|retained={{#if:{{{reigningchampion|}}}|{{{reigningchampion|}}}|{{Tournament championship|name={{{name|}}}}}}}|transferred={{{winner|}}}|no-show={{{winner|}}}|#default={{{winner|}}}}}}}
|#default={{Infobox tournament
|#default={{Infobox tournament
|name={{{name|{{PAGENAME}}}}}
|name={{{name|{{PAGENAME}}}}}
|date={{{date|}}}
|image={{{image|}}}
|image={{{image|}}}
|type={{{type|Player Run Festival}}}
|type={{{type|Player Run Festival}}}
|format={{{format|}}}
|mode={{{mode|}}}
|host={{{host|}}}
|host={{{host|}}}
|continent={{{continent|}}}
|continent={{{continent|}}}
Line 153: Line 318:
|runner6={{{runner6|}}}
|runner6={{{runner6|}}}
|post={{{post|}}}
|post={{{post|}}}
|youtube={{{youtube|}}}
|youtubelabel={{{youtubelabel|}}}
|youtubeexplicit={{{youtubeexplicit|}}}
|youtubecredit={{{youtubecredit|}}}
|youtubeofficial={{{youtubeofficial|}}}
|youtube2={{{youtube2|}}}
|youtube2label={{{youtube2label|}}}
|youtube2explicit={{{youtube2explicit|}}}
|youtube2credit={{{youtube2credit|}}}
|youtube2official={{{youtube2official|}}}
|youtube3={{{youtube3|}}}
|youtube3label={{{youtube3label|}}}
|youtube3explicit={{{youtube3explicit|}}}
|youtube3credit={{{youtube3credit|}}}
|youtube3official={{{youtube3official|}}}
|youtube4={{{youtube4|}}}
|youtube4label={{{youtube4label|}}}
|youtube4explicit={{{youtube4explicit|}}}
|youtube4credit={{{youtube4credit|}}}
|youtube4official={{{youtube4official|}}}
|youtube5={{{youtube5|}}}
|youtube5label={{{youtube5label|}}}
|youtube5explicit={{{youtube5explicit|}}}
|youtube5credit={{{youtube5credit|}}}
|youtube5official={{{youtube5official|}}}
|twitch={{{twitch|}}}
|twitchlabel={{{twitchlabel|}}}
|twitchcredit={{{twitchcredit|}}}
|previous={{{previous|}}}
|next={{{next|}}}
|townprevious={{{townprevious|}}}
|townnext={{{townnext|}}}
|date={{{date|}}}
|format={{{format|}}}
|mode={{{mode|}}}
|challonge={{{challonge|}}}
|challonge={{{challonge|}}}
|winner={{{winner|}}}
|winner={{{winner|}}}
|second={{{second|}}}
|second={{{second|}}}
|third={{{third|}}}
|third={{{third|}}}
|jointthird={{{jointthird|}}}
|champion={{{champion|}}}
|reigningchampion={{{reigningchampion|}}}
|reigningchampion={{{reigningchampion|}}}
|championoutcome={{{championoutcome|}}}
|championoutcome={{{championoutcome|}}}
|championprevious={{{championprevious|}}}
|winnerteam={{{winnerteam|}}}
|winnerteam={{{winnerteam|}}}
|secondteam={{{secondteam|}}}
|secondteam={{{secondteam|}}}
|thirdteam={{{thirdteam|}}}
|thirdteam={{{thirdteam|}}}
|jointthirdteam={{{jointthirdteam|}}}
|winner1={{{winner1|}}}
|winner1={{{winner1|}}}
|winner2={{{winner2|}}}
|winner2={{{winner2|}}}
Line 172: Line 374:
|third2={{{third2|}}}
|third2={{{third2|}}}
|third3={{{third3|}}}
|third3={{{third3|}}}
|previous={{{previous|}}}
|jointthird1={{{jointthird1|}}}
|previousmonth={{{previousmonth|}}}
|jointthird2={{{jointthird2|}}}
|next={{{next|}}}
|jointthird3={{{jointthird3|}}}
|nextmonth={{{nextmonth|}}}
|event2date={{{event2date|}}}
|townprevious={{{townprevious|}}}
|event2format={{{event2format|}}}
|townpreviousmonth={{{townpreviousmonth|}}}
|event2mode={{{event2mode|}}}
|townnext={{{townnext|}}}
|event2challonge={{{event2challonge|}}}
|townnextmonth={{{townnextmonth|}}}
|event2winner={{{event2winner|}}}
|event2second={{{event2second|}}}
|event2third={{{event2third|}}}
|event2jointthird={{{event2jointthird|}}}
|event2champion={{{event2champion|}}}
|event2reigningchampion={{{event2reigningchampion|}}}
|event2championoutcome={{{event2championoutcome|}}}
|event2winnerteam={{{event2winnerteam|}}}
|event2secondteam={{{event2secondteam|}}}
|event2thirdteam={{{event2thirdteam|}}}
|event2jointthirdteam={{{event2jointthirdteam|}}}
|event2winner1={{{event2winner1|}}}
|event2winner2={{{event2winner2|}}}
|event2winner3={{{event2winner3|}}}
|event2second1={{{event2second1|}}}
|event2second2={{{event2second2|}}}
|event2second3={{{event2second3|}}}
|event2third1={{{event2third1|}}}
|event2third2={{{event2third2|}}}
|event2third3={{{event2third3|}}}
|event2jointthird1={{{event2jointthird1|}}}
|event2jointthird2={{{event2jointthird2|}}}
|event2jointthird3={{{event2jointthird3|}}}
|content={{{content|}}}
}}
}}
}}</includeonly><noinclude>
}}</includeonly><noinclude>
== Workflow ==
== Purpose ==
 
This is the dispatcher for the tournament single-source system. Each festival has one named record, for example [[Template:Tournament data/Riverside I]], and its article contains only:
 
<pre>{{Tournament data/Riverside I}}</pre>
 
Editing that record updates the article, infobox, prose, chronology, categories and [[Tournaments]] together


Tournament facts are stored once in a named record such as [[Template:Tournament data/Riverside I]]. That record supplies the article infobox, generated prose, chronology dates, and overview row.
== Article-specific content ==


# Create <code>Template:Tournament data/Tournament Name</code> using the skeleton below
Custom article sections are passed through the article call rather than stored in the central factual record. This keeps them above the automatic See also and External links sections:
# Put <code><nowiki>{{Tournament data/Tournament Name}}</nowiki></code> on the article
# Add <code><nowiki>{{Tournament data/Tournament Name|render=row}}</nowiki></code> to [[Template:Tournament list]]


Only the record contains facts. The article and list contain references to it.
<pre>{Tournament data/Asgard V
|content=
== Trivia ==
* Example
}</pre>


== Record skeleton ==
== Record skeleton ==
Line 206: Line 439:
|post=
|post=
|challonge=
|challonge=
|reigningchampion=
|championoutcome=
|championprevious=
|winnerteam=
|winnerteam=
|winner1=
|winner1=
Line 221: Line 451:
|third2=
|third2=
|third3=
|third3=
|previous=
|next=
|townprevious=
|townnext=
|render={{{render|article}}}
|render={{{render|article}}}
}}</includeonly>
}}</includeonly>
</pre>
</pre>


For 1v1, use <code>winner</code>, <code>second</code>, and <code>third</code> instead of team names and member fields. Set <code>championoutcome</code> to <code>retained</code>, <code>transferred</code>, or <code>no-show</code>. The prior champion and 1v1 event are read from the registry automatically; use <code>reigningchampion</code> and <code>championprevious</code> only while that older record is missing.
For 1v1 results use <code>winner</code>, <code>second</code> and <code>third</code>. For team events, team names are optional but member fields are required. To record two joint third-place finishers, put the second player or team in <code>jointthird</code>, <code>jointthirdteam</code> and the matching member fields
 
Upcoming status is derived automatically from <code>date</code>; leave result fields blank until the event has taken place.


Chronology months are read from linked tournament records. The legacy <code>previousmonth</code>, <code>nextmonth</code>, and town equivalents are only fallbacks while older records are missing.
If one festival contains a second bracket, keep one record and repeat event fields with the <code>event2</code> prefix, such as <code>event2date</code>, <code>event2format</code>, <code>event2winnerteam</code> and <code>event2winner1</code>. Shared festival details such as host, runners, image and forums post stay unprefixed


Overall <code>previous</code> and <code>next</code> links come from [[Template:Tournament chronology]], generated from the newest-first registry. Use record-level values only to override an incomplete chronology. Town-specific chronology remains explicit.
For the 1v1 champion title use <code>championoutcome</code> as <code>established</code>, <code>retained</code>, <code>transferred</code> or <code>no-show</code>, and put the resulting title holder in <code>champion</code>. Incoming champions and prior tournaments are resolved automatically


== Parameters ==
== Parameters ==


{| class="wikitable"
{| class="wikitable"
! Group !! Parameters !! Use
! Group !! Parameters
|-
| Basic || <code>name</code>, <code>date</code>, <code>image</code>, <code>type</code> || Identity and date-derived status; <code>type</code> defaults to Player Run Festival
|-
| Details || <code>format</code>, <code>mode</code>, <code>host</code>, <code>continent</code> || Format uses 1v1, 2v2, or 3v3; mode uses Potion or Barebones
|-
|-
| Links || <code>post</code>, <code>challonge</code> || Numeric forums thread ID and Challonge ID
| Festival || <code>name</code>, <code>image</code>, <code>type</code>, <code>host</code>, <code>continent</code>
|-
|-
| Runners || <code>runner1</code>-<code>runner6</code> || Up to six organizers
| Event || <code>date</code>, <code>format</code>, <code>mode</code>, <code>challonge</code>
|-
|-
| 1v1 results || <code>winner</code>, <code>second</code>, <code>third</code> || Placed players
| Links || <code>post</code>, <code>youtube</code> through <code>youtube5</code> (each with matching label/explicit/credit fields), <code>twitch</code>, <code>twitchlabel</code>, <code>twitchcredit</code>
|-
|-
| 1v1 championship || <code>championoutcome</code>, <code>reigningchampion</code>, <code>championprevious</code> || Outcome uses <code>retained</code>, <code>transferred</code>, or <code>no-show</code>; the other fields are temporary historical overrides
| Runners || <code>runner1</code>-<code>runner6</code>
|-
|-
| Team results || <code>winnerteam</code>, <code>secondteam</code>, <code>thirdteam</code> || Team names for 2v2 or 3v3
| Podium || <code>winner</code>/<code>winnerteam</code>, <code>second</code>/<code>secondteam</code>, <code>third</code>/<code>thirdteam</code>, <code>jointthird</code>/<code>jointthirdteam</code> and member fields 1-3
|-
|-
| Team members || <code>winner1</code>-<code>3</code>, <code>second1</code>-<code>3</code>, <code>third1</code>-<code>3</code> || Players in each placed team
| Champion || <code>champion</code>, <code>championoutcome</code>; <code>reigningchampion</code> is an exceptional override
|-
|-
| Overall chronology || <code>previous</code>, <code>next</code> || Adjacent festivals overall
| Second event || Any event or result field above prefixed with <code>event2</code>
|-
|-
| Town chronology || <code>townprevious</code>, <code>townnext</code> || Adjacent festivals hosted by the same town
| Chronology overrides || <code>previous</code>, <code>next</code>, <code>townprevious</code>, <code>townnext</code>
|}
|}
== Render modes ==
* <code>article</code> — full article infobox and generated prose (default)
* <code>card</code> — compact card for tournament lists
* <code>row</code> — one row in the chronological tournament list
* <code>month</code> — month and year derived from <code>date</code>
* <code>champion</code> — resulting champion derived from the 1v1 title outcome


[[Category:Templates]]
[[Category:Templates]]
</noinclude>
</noinclude>

Latest revision as of 17:31, 19 August 2026

Purpose

This is the dispatcher for the tournament single-source system. Each festival has one named record, for example Template:Tournament data/Riverside I, and its article contains only:

{{Tournament data/Riverside I}}

Editing that record updates the article, infobox, prose, chronology, categories and Tournaments together

Article-specific content

Custom article sections are passed through the article call rather than stored in the central factual record. This keeps them above the automatic See also and External links sections:

{Tournament data/Asgard V
|content=
== Trivia ==
* Example
}

Record skeleton

<includeonly>{{Tournament data
|name=Tournament Name
|date=July 19, 2026
|image=
|format=3v3
|mode=Potion
|host=Town Name
|continent=Ascalon
|runner1=
|post=
|challonge=
|winnerteam=
|winner1=
|winner2=
|winner3=
|secondteam=
|second1=
|second2=
|second3=
|thirdteam=
|third1=
|third2=
|third3=
|render={{{render|article}}}
}}</includeonly>

For 1v1 results use winner, second and third. For team events, team names are optional but member fields are required. To record two joint third-place finishers, put the second player or team in jointthird, jointthirdteam and the matching member fields

If one festival contains a second bracket, keep one record and repeat event fields with the event2 prefix, such as event2date, event2format, event2winnerteam and event2winner1. Shared festival details such as host, runners, image and forums post stay unprefixed

For the 1v1 champion title use championoutcome as established, retained, transferred or no-show, and put the resulting title holder in champion. Incoming champions and prior tournaments are resolved automatically

Parameters

Group Parameters
Festival name, image, type, host, continent
Event date, format, mode, challonge
Links post, youtube through youtube5 (each with matching label/explicit/credit fields), twitch, twitchlabel, twitchcredit
Runners runner1-runner6
Podium winner/winnerteam, second/secondteam, third/thirdteam, jointthird/jointthirdteam and member fields 1-3
Champion champion, championoutcome; reigningchampion is an exceptional override
Second event Any event or result field above prefixed with event2
Chronology overrides previous, next, townprevious, townnext