Server Browser Rules: Difference between revisions
Fernando187 (talk | contribs) No edit summary |
Fernando187 (talk | contribs) mNo edit summary |
||
(14 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{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]}} | |||
==Information== | ==Information== | ||
"'''Server Browser Rules'''" are ''key-value'' string pairs defined server-side. | "'''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 | 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. | 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. | ||
Line 33: | Line 38: | ||
| '''description''' || Human-readable brief description of your server || Text || Custom cars and maps! Join various minigames from racing to drifting | | '''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]] || en | | '''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]] || freeroam, drifting | | '''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:// | | '''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/ | | '''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:// | | '''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:// | | '''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== | ==Useful Information== |
Latest revision as of 15:06, 5 January 2025
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) | 🇹🇼 |