PT-BR/Manual do Servidor

From Multi Theft Auto: Wiki
Revision as of 20:07, 6 January 2023 by Noon (talk | contribs) (Added Access Control List redirect to a missing ACL mention and corrected spelling mistakes.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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 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.

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!

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 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.


[[{{{image}}}|link=|]] Dica: 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 arquivo 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.

  • O MTA possui um arquivo exclusivo para limitar o acesso de certos usuários, administradores ou recursos à certas funções. O arquivo é conhecido como Lista de Controle de Acesso (ACL) e ele é importantissímo para que você estabeleça uma ordem em seu servidor. É recomendado que seja feita a leitura deste artigo, então não se esqueça dar uma olhada em:

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.

Verificação 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. Todas essas "avaliações" são divididas 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:

  1. 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
    
    [[{{{image}}}|link=|]] Dica: 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
  2. O servidor deverá mostrar uma mensagem confirmando o registo da nova conta.
  3. A seguir, desligue o servidor digitando shutdown no console.
  4. Tenha certeza de que seu servidor foi desligado. Se ele continua online, as informações a seguir serão perdidas
  5. Abra o arquivo 'mods/deathmatch/'acl.xml' com um Editor de Textos qualquer (pode ser o Bloco de Notas).
  6. 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>
    

    Você pode adicionar o usuário criado no grupo que preferir. Cada grupo é linkado a um ACL (Access Control List). Cada ACL contém uma série de ações que você pode ou não realizar dentro deste grupo (como kickar, banir, etc). Estes grupos existem para que diferentes usuários possam ter diferentes direitos em um servidor. O grupo Admin é apontado no ACL como um grupo poderoso (onde tudo é permitido). Já o grupo Everyone, que significa Todos, é apontado no ACL como um grupo com diversas restrições (ou seja, não podem kickar, banir, mutar, etc.).

  7. Pronto, você terminou! Agora você pode adicionar diversos usuários (sejam administradores ou usuários comuns). Dê uma olhada também nos outros grupos e ACLs disponíveis. O ACL é também acessível a partir do Mecanismo de Scripting Lua.
    É recomendado também que você dê uma olhada na interface Web. Iremos explicar como a seguir.


[[{{{image}}}|link=|]] Dica: Existem também outras formas de adicionar contas e editar as permissões do servidor enquanto ele está sendo executado. "addaccount <usuário> <senha>" é um comando interno para adicionar contas, mas você vai precisar usar a interface Web para adicionar essas contas a um grupo/ACL específico.



Usando a interface Web

O servidor dedicado (o servidor configurado em sua máquina) vem, por padrão, com alguns recursos em Lua que fornecem uma inteface Web de gerenciamento para seu servidor (melhor dizendo, permite que você gerencie seu servidor através de um site). O recurso pode ser usado para facilitar a manutenção de seu servidor, permitindo adicionar usuários, iniciar/pausar recursos, e muito mais.

A interface Web é habilitada por padrão e são servidos através do protocolo HTTP. Para ter certeza de que o servidor web está rodando na sua porta HTTP (que por padrão é a 22005), siga os seguintes passos:

  1. Certifique-se que seu servidor foi pausado (ou desligado)
  2. Abra o arquivo 'mods/deathmatch/mtaserver.conf' com um editor de textos qualquer
  3. Verifique se o servidor HTTP está ativado:
    	<httpserver>1</httpserver>
    
  4. Escolha a sua porta HTTP:
    	<httpport>22005</httpport>
    
  5. Salve o arquivo e feche-o
  6. Inicie seu servidor (MTA Server.exe)
  7. Se você chegou a alterar os recursos que são iniciados por padrão com o seu servidor, então certifique-se de que os seguintes recursos foram iniciados:
    1. resourcebrowser
    2. resourcemanager
    3. webadmin
    4. webmap
    Estes recursos são, por padrão, iniciados automaticamente com seu servidor, no caso de você ter instalado somente o servidor.
  8. Abra um navegador web (Internet Explorer 6 ou 7 não é suportado; use Mozilla Firefox, Google Chrome, Apple Safari, Opera ou outros) e navegue até o endereço do servidor HTTP: http://servidor:porta/. Por exemplo, se você está rodando o servidor localmente (no seu próprio computador) com a porta 22005 (padrão), use http://127.0.0.1:22005/.
  9. Entre com o usuário e senha do administrador (que você adicionou nos passos anteriores).


Agora você deverá estar possibilitado de manipular seu servidor através do gerenciador Web.

Configurando um servidor web externo

A interface web é também usada para distribuir arquivos que precisam estar nos computadores dos jogadores para que os recursos, que estão rodando no servidor, funcionem corretamente. Por exemplo, se um script que use a interface gráfica ou modelos costumizados para realizar tal função, o próprio código e os modelos terão que ser transferidos para cada jogador que estiver conectado. Isso porque estes recursos são processados no computador de cada cliente sem precisar da "tutela" do servidor. Estes arquivos são salvos em uma pasta do MTA para não haver uma necessidade de baixar-los novamente na próxima vez que estes forem requisitados. Este processo de distribuir os arquivos para todos os clientes pode ser feito por um:

  • Servidor web embutido no próprio servidor, ou seja, já vem com o servidor.
  • Servidor web externo (este é comum ser um pouco mais rápido) que precisa de ser configurado separadamente.

Devido a razões relacionadas a performance e experiência durante o jogo, você provavelmente vai preferir usar um servidor web externo. Caso possuir algum a disposição, este servidor deve ser acessível para o público (sem o requisito de um usuário e senha, por exemplo), visto que todo cliente poderá baixar os arquivos necessários e jogar em seu servidor sem menor problema algum.

Para habilitar o download de arquivos em um servidor externo, é preciso colocar o link de seu servidor na marcação httpdownloadurl do arquivo mtaserver.conf:

  • Você encontrará a seguinte linha, coloque o link de seu servidor...
	
<httpdownloadurl>AQUI</httpdownloadurl>

Todos os recursos que já vem na instalação do MTA (race, assault, play) são fornecidos ao servidor dedicado ainda zipados. O servidor web embutido automaticamente já extrai estes arquivos, mas você tem que encontrar uma forma de enviar só a parte necessária (os modelos, texturas, scripts contendo GUI's) para os computadores dos clientes ou você vai querer que ele baixe seu todos seus scripts? Para fazer uma cópia somente destes arquivos necessários, verifique se o valor da marcação httpautoclientfiles esteje em 1:

<httpautoclientfiles>1</httpautoclientfiles>

Quando seu servidor estiver rodando, o diretório <SERVER>/mods/deathmatch/resource-cache/http-client-files vai conter os arquivos corretos para serem hospedados em seu servidor web.

  • Se este servidor for embutido (na mesma máquina), você pode simplesmente botar http-client-files como o link de seu servidor web:
	
<httpdownloadurl>http-client-files</httpdownloadurl>
  • Se este servidor for externo (em uma máquina diferente), certifique que o link esteja acessível. Este link também pode ser de um computador remoto que esteja conectado ao seu via um programa de sincronização, exemplo:
	
<httpdownloadurl>http://www.meuservidor.pb/diretorio</httpdownloadurl>


[[{{{image}}}|link=|]] Dica: Tente evitar quaisquer caracteres speciais como ~, ! em seus links. Não use use uma barra no final de seu link. Use hxxp://www.meuservidor.pb/diretorio em vez de hxxp://www.meuservidor.pb/diretorio/

Iniciando seu servidor

Primeiro, tenha certeza que todas as etapas acima estão devidamente concluídas para que seu servidor esteja configurado e pronto para entrar no ar!

Para iniciar seu servidor, dê um clique duplo em "MTA Server.exe". Certifique-se que você liberou este aplicativo em todos os firewalls instalados e que todas as portas estejam abertas para que tudo funcione como o esperado.

Instalando/Atualizando/Desinstalando recursos de seu servidor

Os recursos podem estar em dois formatos, tanto em ZIP, tanto em uma pasta normal com os arquivos de script e seus derivados dentro dela. O servidor do MTA:SA carrega estes dois formatos. Para instalar/atualizar quaisquer recursos, o processo é bem simples:

  1. Mova ou copie o novo recurso para a pasta do seu "<SERVIDOR>\mods\deathmatch\resources".
  2. Na janela de comando do seu servidor, digite refresh. Assim será feito um escaneamento todas as pastas para verificar se recursos foram adicionados.

A desinstalação de recursos que não são mais úteis é feita de uma forma bem simples:

  1. Delete o arquivo ZIP ou a pasta do recurso que desejas remover.
  2. Na janela de comando, digite "refresh" (sem as aspas). Assim será feito um escaneamento todas as pastas para verificar se recursos foram removidos.


[[{{{image}}}|link=|]] Dica: O sistema de pastas do MTA mudou a partir das novas versões lançadas, facilitando a organização dos recursos. Então a pasta que estiver nomeada entre cochetes (exemplo: [editor]) não será interpretada como um recurso mas sim como uma "pasta normal".

Administrando seu servidor

Ao se digitar o comando "start nomedorecurso" na janela de comando do servidor, um recurso será iniciado. Se quiser parar, digite "stop nomedorecurso".

É possivel executar estes comandos e outros na janela de comando dentro do próprio jogo, a qual pode ser aberta com a tecla F8. Para que esta tática funcione, você deve fazer seu login com o comando "login usuário senha". Você pode também apertar a tecla p para mostrar o painel de administrador (uma interface gráfica que lhe permite ganhar tempo para kickar ou banir maus encarnados de seu servidor).

Para saber de outros comandos, digite help em um console.

Iniciando um mapa ou modo de jogo

Dê uma lida na sessão de comandos para o mapmanager (em Inglês) para mais informações:

Notas Úteis

  1. Você pode estar sempre atualizando seus recursos enquanto estiver no jogo desde que você esteje logado em um devido nível: "refresh" na janela de comando do servidor ou "/refresh" na janela do chat. Isso pode causar um lag por alguns segundos, se muitos recursos estiverem instalados.
  2. Nas instruções acima, <SERVIDOR> é um diretório para a pasta principal do servidor. Na maioria dos casos, o diretório é: C:\Program Files\MTA San Andreas\server
  3. Você pode indicar um arquivo diferente para servir como aquele de configuração (por padrão é o mtaserver.conf): "<SERVIDOR>\MTA Server.exe -config outraconfiguração.conf"

Dúvidas?

Porque não nos visitar em nosso: