PT-BR/Manual do Servidor
Introdução
Configurar um servidor e disponibilizá-lo para que seus amigos joguem via Internet ou LAN é mais fácil do que parece. Neste artigo estaremos abordando os passos iniciais para que você possa criar o seu próprio servidor para o MTA.
Instalando o servidor
A primeira parte consiste na instalação do servidor. Abaixo há dois tópicos, abordando a instalação em plataformas Linux e Windows, respectivamente.
Instalando no Linux
Há diversas maneiras de instalar, configurar e iniciar um servidor no Linux:
Instalando no Windows
Instalar um servidor do MTA:SA no Windows é bem simples:
- Vá para página de download do MTA:SA e baixe o instalador.
- Após o término do download, execute o arquivo.
- Clique em Next e depois em "I Agree".
- Nesta etapa você pode selecionar os componentes que deseja ou não instalar:
- Para instalar somente o servidor, mude a opção "Client and Server" para "Server Only"
- Next para continuar.
- Selecione a pasta na qual deseja instalar o servidor. Em seguida, Next.
- Clique em Install.
- Pronto!
Qual a função do arquivo acl.xml (access control list)? Para saber mais, leia o artigo em:
Configurando o servidor
O servidor dedicado do Multi Theft Auto pode ser configurado através...
- De uma espécie de prompt de comando chamado console, ou seja, um programa onde comandos não são enviados através de cliques, mas sim através de linhas de comando digitadas pelo usuário.
- Esse programa está localizado em "MTA San Andreas 1.3\server\MTA Server.exe".
- Ele é idêntico a janela cmd do windows.
- Enquanto este estiver executando, o servidor vai permanecer online, caso contrário, o servidor sai do ar.
- Do próprio jogo!
- Os comandos para configurar o servidor são enviados a partir do chat.
- Para que estes comandos sejam efetivamente enviados, é necessário o uso da "/" antes do comando em si, pois esta identifica que o que vem logo em seguida faz parte de um comando.. Exemplo "/addaccount".
- De um navegador de internet. Um website pode receber informações e configurar um servidor de MTA.
Para que possa configurar um servidor do MTASA no jogo ou via website é necessário que pelo menos uma conta com privilégios de administrador seja adicionada no acl.xml.
Configurações Gerais
Todas as configurações gerais podem ser encontradas no arquivo "mtaserver.conf" localizado na pasta "mods/deathmatch/". Este arquivo pode ser visualizado em qualquer editor de texto.
Ele é bem simples e direto, toda variável tem uma descrição abordando o que esta faz e como usa-la.
Configurando as Portas
Caso esteja executando um servidor a partir de seu computador e há um roteador entre a internet e sua máquina, então será necessário configurar 3 portas.
Antes de mais nada, abra o arquivo localizado em "mods/deathmatch/mtaserver.conf" e procure pelas linhas citadas a seguir:
<serverport>22003</serverport> <httpport>22005</httpport>
Estas portas são necessárias para que o servidor inicie corretamente. Explicaremos com maiores detalhes mais a frente. Se deseja também que seu servidor apareça na lista de servidores do MTA (Server Browser, no menu), será preciso configurar mais uma porta chamada "ASE".
(Exemplo de como ativar/desativar a porta ASE):
<ase>1</ase> <!-- 0 = desligada, 1 = ligada -->
Agora vamos liberar essas portas em seu roteador. Caso todas as portas estejam abertas ou você possui um roteador sem firewall, esta etapa é desnecessária.
Se você não sabe como abrir portas em seu roteador, visite este site, procure pelo modelo de seu roteador e siga as instruções.
Na maioria dos roteadores, há a opção de selecionar o tipo de porta: UDP ou TCP. A lista a seguir irá explicar qual porta é necessaria para que ela serve:
Porta principal do servidor: UDP (a porta padrão é 22003, mas você pode alterá-la no parâmetro <serverport> do mtaserver.config) Porta HTTP: TCP (a porta padrão é 22005, mas você pode alterá-la no parâmetro <httpport> do mtaserver.config) Porta ASE: UDP (esta é necessária caso deseje que o servidor apareça na lista de servidores do gamemonitor.com)
Para configurar a porta ASE, somamos 123 (cento e vinte e três) à porta padrão. Exemplo:
Porta padrão: 22003 ASE: 22003 + 123 = 22126
Boa sorte!
Na ultima versão do servidor, ao se digitar o comando "/openports", os status de todas as portas serão mostrados.
Checagem dos clientes
Todo jogador que entra em um servidor passa por várias "avaliações", também conhecidas como "Client Checks" (em inglês). Esse processo é necessário, principalmente, para previnir trapaças no jogo, as quais são feitas através de trainers e/ou modificações realizadas nos arquivos originais do GTA SA. Toda essas "avaliações" são dividias em diversos parâmetros, os quais são configuráveis através do arquivo mtaserver.conf localizado em "mods/deathmatch". Destacamos 2 delas como exemplo:
- O parâmetro client-file ...
- Habilita que um ou mais arquivos possam ser modificados no computador do jogador (exemplo: carmods.dat). Por padrão, o MTA não permite que nenhum arquivo da pasta "data" e "anim" do GTA SA seja modificado.
- Pertence a um grupo denominado Anti-Cheat, pois, por padrão, ele evita que um ou mais jogadores tenham vantagens sobre os outros. Todos os demais parâmetros que fazem parte desse grupo estão detalhados neste Guia Anti-Cheat.
- O parâmetro minclientversion...
- Estabelece que todos os jogadores usem uma versão igual ou superior a estipulada (exemplo: 1.3.0).
- Aqueles que estiverem usando uma versão inferior serão automaticamente desconectados do servidor.
Cada parâmetro contido no arquivo mtaserver.conf tem um valor atribuido a ele. O que faz que o servidor ignore ou trabalhe de forma diferente ao realizar essas avaliações em cada jogador.
Se deseja definir uma versão mínima do MTA dos seus jogadores, procure pela linha:
<minclientversion></minclientversion>
Use valores como: 1.1.1-9.02320
Adicionando administradores
É altamente recomendável adicionar, no mínimo, um administrador em seu servidor. Pois assim você poderá fazer uso de alguns recursos especiais, como o gerenciador Web ou alguns scripts que precisem acessar a lista ACL (painéis administrativos, por exemplo).
Para adicionar um administrador ao seu servidor, siga os seguintes passos:
- Enquanto o servidor estiver ligado (MTA Server.exe sendo executado), adicione uma nova conta digitando addaccount nome senha no console. Por exemplo, para adicionar o usuário Fulano você poderia digitar:
addaccount Fulano minhasenha123
Nota: Se você não tem acesso à janela do console, e o recurso "admin" está sendo executado, você pode adicionar uma nova conta digitando, no chat principal, o comando /register Fulano minhasenha123
- O servidor deverá mostrar uma mensagem confirmando o registo da nova conta.
- A seguir, desligue o servidor digitando shutdown no console.
- Tenha certeza de que seu servidor foi desligado. Se ele continua online, as informações a seguir serão perdidas
- Abra o arquivo 'mods/deathmatch/'acl.xml' com um Editor de Textos qualquer (pode ser o Bloco de Notas).
- Adicione a nova conta no grupo Admin usando a seguinte sintaxe do XML:
<acl> ... <group name="Admin"> <acl name="Admin"/> ... <object name="user.Fulano" /> </group> ... </acl>
You can actually add your user to any group you want. Each group is linked to an ACL (Access Control List). Each ACL contains a series of specific allowed or denied rights. These groups exist so different users can be assigned different rights. The Admin group points to the Admin ACL, which is empty (thus allowing all possible commands). The Everyone group points to the Default ACL that puts a series of restrictions on the available commands (to disallow regular players from using admin commands).
-
You're done! You can add as many administrators or users as you want this way, take a look at some of the other groups and ACLs for example. The ACL is also accessible through the Lua scripting engine.
It is recommended to take a look at the web interface, we will explain how to do this below.
Note: There are also ways to add accounts and edit rights for the server while it's running. "addaccount <user> <password>" is an internal command to add accounts, but you will have to use the web interface to add these accounts to specific groups/ACLs!
Using the web interface
The dedicated server comes with a few Lua resources that provide a nice little web interface to your server. This can be used to easily maintain your server, as it allows you to add users, start/stop resources, and more.
The web interface resources are enabled by default and are served through the built-in HTTP web server. To make sure the built-in HTTP web server runs on a port you like (22005 by default), follow these steps:
- Make sure your server is stopped
- Open the file 'mods/deathmatch/mtaserver.conf' with any text editor
- Verify that the HTTP server is enabled:
<httpserver>1</httpserver>
- Change the HTTP server port to your liking:
<httpport>22005</httpport>
- Save and close the configuration file
- Start your server
- If you happened to have changed the start-up resources in your configuration file, make sure the following resources are started:
- resourcebrowser
- resourcemanager
- webadmin
- webmap
- Open a web browser (Internet Explorer 6 or 7 are NOT supported; use Mozilla Firefox, Google Chrome, Apple Safari, Opera or others) and navigate to the HTTP server URL: http://server:port/. For example, If you are running a local server on HTTP port 22005, use http://127.0.0.1:22005/.
- Enter the username and password of the administrator you added in the previous section.
You should now be able to maintain your server from the web interface.
Configuring an external web server
The built-in web server is also used to serve files that are required by resources running on your server to any player that is connected to your server. For example, if you are running a game script with a scripted graphical user interface, or custom models, these need to be transferred to every connected player in order to function properly. This is done by either the built-in web server, or an external web server (that is usually a bit faster) but needs to be set up separately.
For performance or consistency reasons during the game, you could choose to make use of such an external web server if you have one set up. The external web server needs to be accessible for the public, so any client will be able to download the necessary client-side files in order to join and play on your server.
To enable downloading off an external web server, you should configure the httpdownloadurl tag in your server configuration:
<httpdownloadurl>http://www.myserver.tld/directory/here</httpdownloadurl>
Since all the default resources provided with the dedicated server are zipped, and are normally automatically extracted by the built-in web server, you now have to provide a way for the clients to download the compressed files to their computers. To configure MTA to maintain a copy of only your unzipped client resources, set httpautoclientfiles in your server configuration:
<httpautoclientfiles>1</httpautoclientfiles>
Now when you launch the server, the directory <SERVER>/mods/deathmatch/resource-cache/http-client-files will contain the correct client files for hosting on an external web server. If the web server is on the same machine, you can simply link the appropriate web server directory to http-client-files. If the web server is on a separate machine, ensure it has access to http-client-files via a network path, or maintain a remote copy using synchronization software.
Note 1: Please try to avoid any special characters (e.g. ~, !) in your download URLs.
Note 2: Please do not use a trailing slash in your download URL (e.g. hxxp://www.myserver.tld/directory rather than hxxp://www.myserver.tld/directory/)
Starting your server
Begin by making sure that you have finished all configuration of your server, starting your server is the last stage so everything must be ready!
To start your server double click on MTA Server.exe, make sure you allow it through any firewalls and forward ports where necessary.
Installing/Updating resources on your server
Resources can come in two formats, either a ZIP format or just a normal folder with the script files inside it. The MTA:SA server supports both these methods.
- Move or copy the new resource to your <SERVER>\mods\deathmatch\resources folder.
- In the server window type in the command refresh, this will re-scan the resources folder and update the live resources where necessary.
Uninstalling resources
Resources can easily be removed from your server if you no longer want them.
- Delete the ZIP file or the folder of the resource you wish to uninstall
- In the server window type in the command "refresh" (without the quotes), this will re-scan the resources folder and update the live resources where necessary.
Administrating your server
You can start resources by typing the command "start resourcename" in the server console, or stop ones with "stop resourcename".
It's also possible to execute these and other admin commands from the in-game console (which you can bring up with the ` key or F8); for this to work, you first need to log in with the command "login username password". Additionally, you can press the p key to bring up the admin panel: this is a graphical interface which allows you to easily kick or ban misbehaving players, among others.
For further commands, type help in a console.
Starting a map/gamemode
See the commands section of the documentation for mapmanager for more information.
Useful Notes
- You may also update the resources while in-game as long as you have the correct access levels by typing "refresh" in the clients console or "/refresh" in the chat window. This may cause a second of lag if you have many resources.
- In the above instructions, <SERVER> is the path to your server's main directory. In most cases this is C:\Program Files\MTA San Andreas\server
- You can choose a different config file for the server to use by passing it in the command line after a --config argument, e.g. mtaserver.exe --config anotherconfig.cfg.
- Do not be alarmed by the warning regarding the parsing of the settings.xml file. This happens because your server installation is still clean and unused.
Need further help?
Why not pop over to our Forums or join us on IRC (irc.multitheftauto.com #mta - mIRC)