Server Browser Rules: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Created page with "==About== "'''Server Browser Rules'''" are ''key-value'' string pairs defined server-side. These values are transmitted/announced/broadcasted by your MTA Server using the ASE (All-Seeing Eye) protocol, when queried on the main UDP Port (default 22003). The purpose of this data is to be received and parsed by MTA Clients in the Server Browser, to display the list of online MTA servers with custom information for each server. WIP")
 
mNo edit summary
 
(27 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==About==
{{Warning|The system described in this article is still work-in-progress!|true}}
{{Note|Developers are working on creating a new Server Browser Interface. Check these issues on GitHub: [https://github.com/multitheftauto/mtasa-blue/issues/2104 Add banner, server description and tags  #2104] [https://github.com/multitheftauto/mtasa-blue/issues/998 Revamp server browser #998] [https://github.com/multitheftauto/mtasa-blue/issues/759 Language filter/search #759]}}


"'''Server Browser Rules'''" are ''key-value'' string pairs defined server-side. These values are transmitted/announced/broadcasted by your MTA Server using the ASE (All-Seeing Eye) protocol, when queried on the main UDP Port (default 22003). The purpose of this data is to be received and parsed by MTA Clients in the Server Browser, to display the list of online MTA servers with custom information for each server.
==Information==


WIP
"'''Server Browser Rules'''" are ''key-value'' string pairs defined server-side.
 
These values are automatically transmitted/announced/broadcasted by your MTA Server using the ASE (All-Seeing Eye) protocol, when queried on the ASE UDP Port (server port + 123), which is 22126 by default.
 
These '''rules''' are included in your server's ASE response in addition to the server name, port, game type, map name, MTA version, password-protected, player count, max players and list of online players.
 
This data is to be received and parsed by MTA Clients (in the Server Browser) to display the list of online MTA servers with custom information for each server.
 
==Setting & Getting==
 
These ''rules'' can be set in your MTA Server's configuration file ([[Server_mtaserver.conf]]) using the following XML format:
 
<syntaxhighlight lang="xml">
<rule name="NAME_HERE" value="VALUE_HERE"/>
</syntaxhighlight>
 
They can also be defined and obtained using these two server-side functions:
 
<ul>
<li>[[setRuleValue]]</li>
<li>[[getRuleValue]]</li>
</ul>
 
==Expected Values==
 
The maximum amount of characters allowed in a rule value is '''200'''.
 
The Server Browser looks for the following information (optional) provided by servers:
 
{| class="wikitable"
! Key !! Explanation !! Accepted values || Example
|-
| '''description''' || Human-readable brief description of your server || Text || Custom cars and maps! Join various minigames from racing to drifting
|-
| '''languages''' || Comma separated list of languages that your server supports || [[#Allowed Languages|See Allowed Languages]] || en, ru, ar
|-
| '''tags''' || Comma separated list of tags that describe your server || [[#Allowed Tags|See Allowed Tags]] || freeroam, minigames, race, pvp, drifting
|-
| '''website_url''' || Website URL of your server || Valid URL starting with https:// || https://example-website.com
|-
| '''social_url_1''' || Social media URL #1 || Valid URL starting with https:// || https://discord.com/invite/example
|-
| '''social_url_2''' || Social media URL #2 || Valid URL starting with https:// || https://youtube.com/@exampleChannel
|-
| '''social_url_3''' || Social media URL #3 || Valid URL starting with https:// || https://facebook.com/examplePage
|}
 
==Full Example==
 
Below is an example configuration that you can include in '''mtaserver.conf''':
 
<syntaxhighlight lang="xml">
<rule name="description" value="Custom cars and maps! Join various minigames from racing to drifting" />
<rule name="languages" value="en, ru, ar" />
<rule name="tags" value="freeroam, minigames, race, pvp, drifting" />
<rule name="website_url" value="https://example-website.com" />
<rule name="social_url_1" value="https://discord.com/invite/example" />
<rule name="social_url_2" value="https://youtube.com/@exampleChannel" />
<rule name="social_url_3" value="https://facebook.com/examplePage" />
</syntaxhighlight>
 
==Allowed Tags==
 
Tags must contain '''lowercase letters''' and have a length of '''at least 2 characters''' and '''maximum of 20 characters'''.
 
==Allowed Languages==
 
This list should not be missing any languages from [https://translate.multitheftauto.com/ Multi Theft Auto Crowdin]
 
Total number of languages supported: 55
 
{| class="wikitable"
! Tag !! Language !! Flag
|-
| '''ar''' || Arabic || 🇸🇦
|-
| '''az''' || Azerbaijani || 🇦🇿
|-
| '''bg''' || Bulgarian || 🇧🇬
|-
| '''bn''' || Bengali || 🇧🇩
|-
| '''bs''' || Bosnian || 🇧🇦
|-
| '''cs''' || Czech || 🇨🇿
|-
| '''da''' || Danish || 🇩🇰
|-
| '''de''' || German || 🇩🇪
|-
| '''el''' || Greek || 🇬🇷
|-
| '''en''' || English || 🇺🇸
|-
| '''es''' || Spanish || 🇪🇸
|-
| '''et''' || Estonian || 🇪🇪
|-
| '''fa''' || Persian || 🇮🇷
|-
| '''fi''' || Finnish || 🇫🇮
|-
| '''fil''' || Filipino || 🇵🇭
|-
| '''fr''' || French || 🇫🇷
|-
| '''gu''' || Gujarati || 🇮🇳
|-
| '''he''' || Hebrew || 🇮🇱
|-
| '''hi''' || Hindi || 🇮🇳
|-
| '''hr''' || Croatian || 🇭🇷
|-
| '''hu''' || Hungarian || 🇭🇺
|-
| '''id''' || Indonesian || 🇮🇩
|-
| '''it''' || Italian || 🇮🇹
|-
| '''ja''' || Japanese || 🇯🇵
|-
| '''ka''' || Georgian || 🇬🇪
|-
| '''kn''' || Kannada || 🇮🇳
|-
| '''ko''' || Korean || 🇰🇷
|-
| '''lt''' || Lithuanian || 🇱🇹
|-
| '''lv''' || Latvian || 🇱🇻
|-
| '''mk''' || Macedonian || 🇲🇰
|-
| '''ml''' || Malayalam || 🇮🇳
|-
| '''mr''' || Marathi || 🇮🇳
|-
| '''ms''' || Malay || 🇲🇾
|-
| '''nb''' || Norwegian Bokmål || 🇳🇴
|-
| '''nl''' || Dutch || 🇳🇱
|-
| '''no''' || Norwegian || 🇳🇴
|-
| '''pl''' || Polish || 🇵🇱
|-
| '''pt-br''' || Brazilian Portuguese || 🇧🇷
|-
| '''pt-pt''' || European Portuguese || 🇵🇹
|-
| '''ro''' || Romanian || 🇷🇴
|-
| '''ru''' || Russian || 🇷🇺
|-
| '''sk''' || Slovak || 🇸🇰
|-
| '''sl''' || Slovenian || 🇸🇮
|-
| '''sr''' || Serbian || 🇷🇸
|-
| '''sv''' || Swedish || 🇸🇪
|-
| '''sw''' || Swahili || 🇰🇪
|-
| '''ta''' || Tamil || 🇮🇳
|-
| '''te''' || Telugu || 🇮🇳
|-
| '''th''' || Thai || 🇹🇭
|-
| '''tr''' || Turkish || 🇹🇷
|-
| '''uk''' || Ukrainian || 🇺🇦
|-
| '''ur''' || Urdu || 🇵🇰
|-
| '''vi''' || Vietnamese || 🇻🇳
|-
| '''zh''' || Chinese (Simplified) || 🇨🇳
|-
| '''zh-tw''' || Chinese (Traditional, Taiwan) || 🇹🇼
|}
 
==Useful Information==
 
<ul>
<li>[https://github.com/multitheftauto/mtasa-blue/pull/3761 github.com/multitheftauto/mtasa-blue: PR #3761]</li>
<li>[https://en.wikipedia.org/wiki/The_All-Seeing_Eye wikipedia.org: The All-Seeing Eye]</li>
<li>[https://int64.org/docs/gamestat-protocols/ase.html int64.org: All-Seeing Eye Protocol]</li>
</ul>

Latest revision as of 15:06, 5 January 2025

Dialog-warning.png Warning: The system described in this article is still work-in-progress!
[[{{{image}}}|link=|]] Note: Developers are working on creating a new Server Browser Interface. Check these issues on GitHub: Add banner, server description and tags #2104 Revamp server browser #998 Language filter/search #759

Information

"Server Browser Rules" are key-value string pairs defined server-side.

These values are automatically transmitted/announced/broadcasted by your MTA Server using the ASE (All-Seeing Eye) protocol, when queried on the ASE UDP Port (server port + 123), which is 22126 by default.

These rules are included in your server's ASE response in addition to the server name, port, game type, map name, MTA version, password-protected, player count, max players and list of online players.

This data is to be received and parsed by MTA Clients (in the Server Browser) to display the list of online MTA servers with custom information for each server.

Setting & Getting

These rules can be set in your MTA Server's configuration file (Server_mtaserver.conf) using the following XML format:

<rule name="NAME_HERE" value="VALUE_HERE"/>

They can also be defined and obtained using these two server-side functions:

Expected Values

The maximum amount of characters allowed in a rule value is 200.

The Server Browser looks for the following information (optional) provided by servers:

Key Explanation Accepted values Example
description Human-readable brief description of your server Text Custom cars and maps! Join various minigames from racing to drifting
languages Comma separated list of languages that your server supports See Allowed Languages en, ru, ar
tags Comma separated list of tags that describe your server See Allowed Tags freeroam, minigames, race, pvp, drifting
website_url Website URL of your server Valid URL starting with https:// https://example-website.com
social_url_1 Social media URL #1 Valid URL starting with https:// https://discord.com/invite/example
social_url_2 Social media URL #2 Valid URL starting with https:// https://youtube.com/@exampleChannel
social_url_3 Social media URL #3 Valid URL starting with https:// https://facebook.com/examplePage

Full Example

Below is an example configuration that you can include in mtaserver.conf:

<rule name="description" value="Custom cars and maps! Join various minigames from racing to drifting" />
<rule name="languages" value="en, ru, ar" />
<rule name="tags" value="freeroam, minigames, race, pvp, drifting" />
<rule name="website_url" value="https://example-website.com" />
<rule name="social_url_1" value="https://discord.com/invite/example" />
<rule name="social_url_2" value="https://youtube.com/@exampleChannel" />
<rule name="social_url_3" value="https://facebook.com/examplePage" />

Allowed Tags

Tags must contain lowercase letters and have a length of at least 2 characters and maximum of 20 characters.

Allowed Languages

This list should not be missing any languages from Multi Theft Auto Crowdin

Total number of languages supported: 55

Tag Language Flag
ar Arabic 🇸🇦
az Azerbaijani 🇦🇿
bg Bulgarian 🇧🇬
bn Bengali 🇧🇩
bs Bosnian 🇧🇦
cs Czech 🇨🇿
da Danish 🇩🇰
de German 🇩🇪
el Greek 🇬🇷
en English 🇺🇸
es Spanish 🇪🇸
et Estonian 🇪🇪
fa Persian 🇮🇷
fi Finnish 🇫🇮
fil Filipino 🇵🇭
fr French 🇫🇷
gu Gujarati 🇮🇳
he Hebrew 🇮🇱
hi Hindi 🇮🇳
hr Croatian 🇭🇷
hu Hungarian 🇭🇺
id Indonesian 🇮🇩
it Italian 🇮🇹
ja Japanese 🇯🇵
ka Georgian 🇬🇪
kn Kannada 🇮🇳
ko Korean 🇰🇷
lt Lithuanian 🇱🇹
lv Latvian 🇱🇻
mk Macedonian 🇲🇰
ml Malayalam 🇮🇳
mr Marathi 🇮🇳
ms Malay 🇲🇾
nb Norwegian Bokmål 🇳🇴
nl Dutch 🇳🇱
no Norwegian 🇳🇴
pl Polish 🇵🇱
pt-br Brazilian Portuguese 🇧🇷
pt-pt European Portuguese 🇵🇹
ro Romanian 🇷🇴
ru Russian 🇷🇺
sk Slovak 🇸🇰
sl Slovenian 🇸🇮
sr Serbian 🇷🇸
sv Swedish 🇸🇪
sw Swahili 🇰🇪
ta Tamil 🇮🇳
te Telugu 🇮🇳
th Thai 🇹🇭
tr Turkish 🇹🇷
uk Ukrainian 🇺🇦
ur Urdu 🇵🇰
vi Vietnamese 🇻🇳
zh Chinese (Simplified) 🇨🇳
zh-tw Chinese (Traditional, Taiwan) 🇹🇼

Useful Information