Deprecated: Use of MediaWiki\Skin\Skin::appendSpecialPagesLinkIfAbsent was deprecated in MediaWiki 1.44. [Called from MediaWiki\Skin\Skin::buildSidebar in /home/u764469453/domains/takashimarp.com/public_html/wiki/includes/skins/Skin.php at line 1639] in /home/u764469453/domains/takashimarp.com/public_html/wiki/includes/debug/MWDebug.php on line 386
Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Infobox Player: Difference between revisions

Template page
[checked revision][checked revision]
mNo edit summary
mNo edit summary
 
(27 intermediate revisions by the same user not shown)
Line 1: Line 1:
<infobox>
<includeonly><div style="width:350px; float:right; margin:0 0 1em 1em; font-size:90%; border:1px solid var(--border-color-base, #a2a9b1); background:var(--background-color-base, #fff); color:var(--color-base, #000);">
<title source="username">
<div style="font-size:120%; font-weight:bold; text-align:center; padding:8px; background-color:var(--background-color-neutral-subtle, #f8f9fa); border-bottom:1px solid var(--border-color-base, #a2a9b1); color:var(--color-base, #000);">{{{username|{{PAGENAME}}}}}</div>
<default><span style="display:block;text-align:center;padding:10px">{{PAGENAME}}</span></default>
{{#if:{{{avatar|}}}|
<format><span style="display:block;text-align:center;padding:10px">{{{username}}}</span></format>
<div style="text-align:center; padding:10px; background:var(--background-color-base, #fff);">[[File:{{{avatar}}}|200px]]</div>
</title>
|<div style="text-align:center; padding:10px; background:var(--background-color-base, #fff);">[[File:Avatar_{{#titleparts:{{PAGENAME}}|1|2}}.png|200px]]</div>
<image source="avatar">
}}
<caption source="caption"/>
<div style="text-align:center; font-size:85%; padding:5px; background:var(--background-color-base, #fff); color:var(--color-base, #000);">[{{fullurl:Special:FlexiUpload|campaign=players&username={{#titleparts:{{PAGENAME}}|1|2}}}} '''↑ Upload your avatar here''']</div>
</image>
{{#if:{{{caption|}}}|<div style="text-align:center; font-size:85%; color:var(--color-subtle, #666); padding:5px; background:var(--background-color-base, #fff);">{{{caption}}}</div>|}}
<data source="status">
 
<label><span style="display:block;text-align:center;padding:10px">Status</span></label>
<div style="text-align:center; font-weight:bold; font-size:110%; padding:8px; background-color:var(--background-color-neutral-subtle, #f8f9fa); border-top:1px solid var(--border-color-base, #a2a9b1); border-bottom:1px solid var(--border-color-base, #a2a9b1); color:var(--color-emphasized, #000);">Player information</div>
<format><span style="display:block;text-align:right;padding:10px">{{StatusBadges|{{{status}}}}}</span></format>
<table style="width:100%; padding:5px; background:var(--background-color-base, #fff);">
</data>
{{#if:{{{username|}}}|<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Username</td><td style="padding:4px; color:var(--color-base, #000);">{{{username}}}</td></tr>|}}
<data source="username">
<tr style="vertical-align:top;"><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Also known as</td><td style="padding:4px; color:var(--color-base, #000);">
<label><span style="display:block;text-align:center;padding:10px">Username</span></label>
{{{aka|<span style="color:var(--color-subtle, #999); font-style:italic;">Not specified</span>}}}
<format><span style="display:block;text-align:right;padding:10px">{{{username}}}</span></format>
</td></tr>
</data>
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Discord</td><td style="padding:4px; color:var(--color-base, #000);">{{{discord|<span style="color:var(--color-subtle, #999); font-style:italic;">Not provided</span>}}}</td></tr>
<data source="aka">
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Joined TRP</td><td style="padding:4px; color:var(--color-base, #000);">{{#if:{{{joined|}}}|{{#time: F j, Y | {{{joined}}} }}|<span style="color:var(--color-subtle, #999); font-style:italic;">Unknown</span>}}</td></tr>
<label><span style="display:block;text-align:center;padding:10px">Also known as</span></label>
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Timezone</td><td style="padding:4px; color:var(--color-base, #000);">{{{timezone|<span style="color:var(--color-subtle, #999); font-style:italic;">Not specified</span>}}}</td></tr>
<format><span style="display:block;text-align:right;padding:10px">{{{aka}}}</span></format>
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Languages</td><td style="padding:4px; color:var(--color-base, #000);">{{{languages|<span style="color:var(--color-subtle, #999); font-style:italic;">Not specified</span>}}}</td></tr>
</data>
</table>
<data source="discord">
 
<label><span style="display:block;text-align:center;padding:10px">Discord</span></label>
<div style="text-align:center; font-weight:bold; font-size:110%; padding:8px; background-color:var(--background-color-neutral-subtle, #f8f9fa); border-top:1px solid var(--border-color-base, #a2a9b1); border-bottom:1px solid var(--border-color-base, #a2a9b1); color:var(--color-emphasized, #000);">Out-of-character</div>
<format><span style="display:block;text-align:right;padding:10px">{{{discord}}}</span></format>
<table style="width:100%; padding:5px; background:var(--background-color-base, #fff);">
</data>
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Age</td><td style="padding:4px; color:var(--color-base, #000);">{{#if:{{{birthdate|}}}|{{#expr: {{#time: Y }} - {{#time: Y | {{{birthdate}}} }} - {{#ifexpr: {{#time: n }} > {{#time: n | {{{birthdate}}} }} or ({{#time: n }} = {{#time: n | {{{birthdate}}} }} and {{#time: j }} >= {{#time: j | {{{birthdate}}} }}) | 0 | 1 }} }} (born {{#time: F j, Y | {{{birthdate}}} }})|<span style="color:var(--color-subtle, #999); font-style:italic;">Not specified</span>}}</td></tr>
<data source="joined">
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Pronouns</td><td style="padding:4px; color:var(--color-base, #000);">{{{pronouns|<span style="color:var(--color-subtle, #999); font-style:italic;">Not specified</span>}}}</td></tr>
<label><span style="display:block;text-align:center;padding:10px">Joined TRP</span></label>
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Country</td><td style="padding:4px; color:var(--color-base, #000);">{{{country|<span style="color:var(--color-subtle, #999); font-style:italic;">Not specified</span>}}}</td></tr>
<format><span style="display:block;text-align:right;padding:10px">{{{joined}}}</span></format>
<tr><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Current status</td><td style="padding:4px;">{{StatusBadges|{{{status|Active}}}}}</td></tr>
</data>
</table>
<group collapse="open">
 
<header><span style="display:block;text-align:center;padding:10px">Out-of-character</span></header>
<div style="text-align:center; font-weight:bold; font-size:110%; padding:8px; background-color:var(--background-color-neutral-subtle, #f8f9fa); border-top:1px solid var(--border-color-base, #a2a9b1); border-bottom:1px solid var(--border-color-base, #a2a9b1); color:var(--color-emphasized, #000);">TRP Roles</div>
<data source="age">
<div style="padding:8px; background:var(--background-color-base, #fff); color:var(--color-base, #000);">
<label><span style="display:block;text-align:center;padding:10px">Age</span></label>
{{{roles|<span style="color:var(--color-subtle, #999); font-style:italic;">Player</span>}}}
<format><span style="display:block;text-align:right;padding:10px">{{{age}}}</span></format>
</div>
</data>
 
<data source="pronouns">
<div style="text-align:center; font-weight:bold; font-size:110%; padding:8px; background-color:var(--background-color-neutral-subtle, #f8f9fa); border-top:1px solid var(--border-color-base, #a2a9b1); border-bottom:1px solid var(--border-color-base, #a2a9b1); color:var(--color-emphasized, #000);">Roleplay activity</div>
<label><span style="display:block;text-align:center;padding:10px">Pronouns</span></label>
<table style="width:100%; padding:5px; background:var(--background-color-base, #fff);">
<format><span style="display:block;text-align:right;padding:10px">{{{pronouns}}}</span></format>
<tr style="vertical-align:top;"><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Played characters</td><td style="padding:4px; color:var(--color-base, #000);">
</data>
{{{characters|<span style="color:var(--color-subtle, #999); font-style:italic;">No characters listed</span>}}}
<data source="country">
</td></tr>
<label><span style="display:block;text-align:center;padding:10px">Country</span></label>
<tr style="vertical-align:top;"><td style="width:30%; font-weight:bold; padding:4px; color:var(--color-subtle, #666);">Relations (OOC)</td><td style="padding:4px; color:var(--color-base, #000);">
<format><span style="display:block;text-align:right;padding:10px">{{{country}}}</span></format>
{{{relations|<span style="color:var(--color-subtle, #999); font-style:italic;">No relations listed</span>}}}
</data>
</td></tr>
<data source="timezone">
</table>
<label><span style="display:block;text-align:center;padding:10px">Timezone</span></label>
 
<format><span style="display:block;text-align:right;padding:10px">{{{timezone}}}</span></format>
<div style="text-align:center; font-weight:bold; font-size:110%; padding:8px; background-color:var(--background-color-neutral-subtle, #f8f9fa); border-top:1px solid var(--border-color-base, #a2a9b1); border-bottom:1px solid var(--border-color-base, #a2a9b1); color:var(--color-emphasized, #000);">Disciplinary record</div>
</data>
<div style="padding:8px; background:var(--background-color-base, #fff); color:var(--color-base, #000);">
<data source="languages">
{{{discipline|None}}}
<label><span style="display:block;text-align:center;padding:10px">Languages</span></label>
</div>
<format><span style="display:block;text-align:right;padding:10px">{{{languages}}}</span></format>
 
</data>
</div></includeonly>
</group>
<includeonly>[[Category:Players]]</includeonly><noinclude>
<group collapse="open">
<header><span style="display:block;text-align:center;padding:10px">TRP Activity</span></header>
<data source="roles">
<label><span style="display:block;text-align:center;padding:10px">TRP Roles</span></label>
<format><span style="display:block;text-align:right;padding:10px">{{{roles}}}</span></format>
</data>
<data source="characters">
<label><span style="display:block;text-align:center;padding:10px">Played characters</span></label>
<format><span style="display:block;text-align:right;padding:10px">{{{characters}}}</span></format>
</data>
<data source="relations">
<label><span style="display:block;text-align:center;padding:10px">Relations (OOC)</span></label>
<format><span style="display:block;text-align:right;padding:10px">{{{relations}}}</span></format>
</data>
</group>
<group collapse="open">
<header><span style="display:block;text-align:center;padding:10px">Administrative</span></header>
<data source="discipline">
<label><span style="display:block;text-align:center;padding:10px">Disciplinary record</span></label>
<format><span style="display:block;text-align:right;padding:10px">{{{discipline}}}</span></format>
</data>
<data source="notes">
<label><span style="display:block;text-align:center;padding:10px">Notes</span></label>
<format><span style="display:block;text-align:right;padding:10px">{{{notes}}}</span></format>
</data>
</group>
</infobox>
<noinclude>
== Usage ==
== Usage ==
On a '''player page''', add:
On a '''player page''', add:
Line 87: Line 59:
  |caption    = Long-time TRP player
  |caption    = Long-time TRP player
  |status    = Active
  |status    = Active
  |aka        = JohnDoe2, JDoe
  |aka        =  
* JohnDoe2
* JDoe
  |discord    = JohnDoe#1234
  |discord    = JohnDoe#1234
  |joined    = September 2025
  |joined    = 2025-09-15
  |age        = 24
  |birthdate  = 2001-05-20
  |pronouns  = he/him
  |pronouns  = he/him
  |country    = USA
  |country    = USA
Line 98: Line 72:
* Player (2022–present)
* Player (2022–present)
* Moderation (previously, quit in 2023)
* Moderation (previously, quit in 2023)
  |characters = [[Jane Tanaka]], [[Kenji Sato]]
  |characters =  
* [[Jane Tanaka]]
* [[Kenji Sato]]
  |relations  =  
  |relations  =  
* Friend of [[Jane Doe]]
* Friend of Falcøn40k
* Worked with [[Richard Roe]] in Business faction
* Worked with Richard Roe in Business faction
  |discipline =  
  |discipline =  
* Warning March 2023 (spamming)
* Warning March 2023 (spamming)
* 3-day ban July 2024 (combat logging)
* 3-day ban July 2024 (combat logging)
|notes      = Returned in 2025 with good standing.
}}
}}
</pre>
</pre>


; Avatar
=== Important Notes ===
Upload player avatars as image files and reference them in the <code>|avatar=</code> parameter.


<templatedata>
==== Date Formats ====
{
* '''joined''': Use ISO format (YYYY-MM-DD) for consistent display. Example: <code>2025-08-24</code>
"params": {
* '''birthdate''': Use ISO format (YYYY-MM-DD) for age calculation. Example: <code>2005-03-15</code>
"username": {
 
"suggested": false,
==== List Format ====
"label": "Username",
For fields that support lists (aka, roles, characters, relations, discipline), use MediaWiki list syntax:
"description": "If the field is empty, the page name will be automatically added.",
<pre>
"type": "line"
|field =
},
* First item
"avatar": {
* Second item
"suggested": true,
* Third item
"label": "Avatar image",
</pre>
"type": "wiki-file-name"
 
},
==== Player Links in Relations ====
"caption": {
The relations field automatically creates links to player pages. Just write the player's username and the template will check if their page exists and link to it accordingly.
"suggested": true,
 
"label": "Avatar caption",
This template uses CSS variables that automatically adapt to the Citizen skin's light/dark theme.
"type": "line"
},
"status": {
"label": "Status",
"type": "line",
"default": "Active",
"description": "Player's current status on the server.",
"suggestedvalues": [
"Active",
"Retired"
],
"required": true,
"autovalue": "Active"
},
"aka": {
"suggested": true,
"label": "Also known as",
"description": "Alternative usernames or nicknames.",
"type": "content"
},
"discord": {
"label": "Discord",
"required": false,
"type": "line",
"description": "Player's Discord username"
},
"joined": {
"suggested": true,
"label": "Joined TRP",
"description": "When the player joined the server.",
"type": "line"
},
"age": {
"suggested": true,
"label": "Age",
"description": "Player's real-life age (out-of-character).",
"type": "line"
},
"pronouns": {
"suggested": true,
"label": "Pronouns",
"description": "Player's preferred pronouns.",
"type": "line"
},
"country": {
"suggested": true,
"label": "Country",
"description": "Player's country of residence.",
"type": "line"
},
"timezone": {
"suggested": true,
"label": "Timezone",
"description": "Player's timezone.",
"type": "line"
},
"languages": {
"suggested": true,
"label": "Languages",
"description": "Languages spoken by the player.",
"type": "line"
},
"roles": {
"suggested": true,
"label": "TRP Roles",
"description": "Player's roles on the server (staff, moderation, etc.).",
"type": "content"
},
"characters": {
"suggested": true,
"label": "Played characters",
"description": "Characters played by this player.",
"type": "content"
},
"relations": {
"suggested": true,
"label": "Relations (OOC)",
"description": "Out-of-character relationships with other players.",
"type": "content"
},
"discipline": {
"suggested": true,
"label": "Disciplinary record",
"description": "Any disciplinary actions or warnings.",
"type": "content"
},
"notes": {
"suggested": true,
"label": "Notes",
"description": "Additional notes about the player.",
"type": "content"
}
},
"sets": [],
"paramOrder": [
"username",
"avatar",
"caption",
"status",
"aka",
"discord",
"joined",
"age",
"pronouns",
"country",
"timezone",
"languages",
"roles",
"characters",
"relations",
"discipline",
"notes"
],
"format": "block"
}
</templatedata>
</noinclude>
</noinclude>
<includeonly>
[[Category:Player]]
</includeonly>

Latest revision as of 10:30, 5 September 2025


Usage

On a player page, add:

{{Infobox Player
 |username   = John Doe
 |avatar     = Avatar_JohnDoe.jpg
 |caption    = Long-time TRP player
 |status     = Active
 |aka        = 
* JohnDoe2
* JDoe
 |discord    = JohnDoe#1234
 |joined     = 2025-09-15
 |birthdate  = 2001-05-20
 |pronouns   = he/him
 |country    = USA
 |timezone   = EST (UTC-5)
 |languages  = English, Spanish
 |roles      = 
* Player (2022–present)
* Moderation (previously, quit in 2023)
 |characters = 
* [[Jane Tanaka]]
* [[Kenji Sato]]
 |relations  = 
* Friend of Falcøn40k
* Worked with Richard Roe in Business faction
 |discipline = 
* Warning – March 2023 (spamming)
* 3-day ban – July 2024 (combat logging)
}}

Important Notes

Date Formats

  • joined: Use ISO format (YYYY-MM-DD) for consistent display. Example: 2025-08-24
  • birthdate: Use ISO format (YYYY-MM-DD) for age calculation. Example: 2005-03-15

List Format

For fields that support lists (aka, roles, characters, relations, discipline), use MediaWiki list syntax:

 |field = 
* First item
* Second item
* Third item

The relations field automatically creates links to player pages. Just write the player's username and the template will check if their page exists and link to it accordingly.

This template uses CSS variables that automatically adapt to the Citizen skin's light/dark theme.