RU/Server Manual

From Multi Theft Auto: Wiki
Revision as of 15:27, 13 May 2012 by Vincent (talk | contribs) (первая часть завершена)
Jump to navigation Jump to search

Начало

Поднять и поддерживать сервер для своих LAN или интернет-друзей намного легче, чем кажется; просто следуйте этой статье и, надеюсь, вы быстро разберетесь, как хостить свой собственный MTA:SA сервер!

Установка сервера

Приложение для выделенного сервера доступно в разных редакциях, зависящих от платформы севрера.

Linux

Есть несколько путей поднять и запустить сервер на Linux:

Windows

Установка сервера MTA:SA на Windows очень проста.

  • Перейдите на страницу закачки и скачайте установщик.
  • Когда установщик закачан, запустите его.
  • Выберите папку, куда вы хотели бы установить сервер.
  • Нажмите Install.
  • Все!

Для полной инструкции по acl.xml (access control list - лист контроля над правами) читайте: Access Control List

Настройка сервера

Выделенный сервер Multi Theft Auto изначально поддается настройке через окно консоли, прямо из игры и через браузер. Чтобы активировать последние две опции, необходимо добавить хотя бы одного администратора в ваш конфигурационный файл.

Основная настройка

Все основные опции настройки находятся в файле 'mods/deathmatch/mtaserver.conf' и могут быть заданы через обычный текстовый редактор.

Этот файл очень прост; каждая переменная имеет описание своего назначения и информацию по ее изменению.

Проброс портов

Если вы запускаете сервер на своем личном компьютере и у вас есть роутер, вам понадобится пробросить 3 порта.

Для начала откройте файл 'mods/deathmatch/mtaserver.conf' и найдите следующие строки:

<serverport>22004</serverport> 
<httpport>22005</httpport>

Эти порты нужны для правильной установки сервера. Позже мы объясним как их задавать, но сначала, если вы хотите, чтобы ваш сервер появился в браузере серверов, то есть еще один нужный нам порт - порт ASE. (краткий пример по включению / выключению ASE):

<ase>1</ase> <!-- 0 = выкл, 1 = вкл -->

Теперь нам нужно пробросить порты на вашем роутере, что не понадобится, если у вас иатк открыты все порты, или если у вас нет роутера с фаерволлом. Если так оно и есть, пропустите эту часть.

Если вы не знаете, как пробросить порты на вашем роутере, пройдите на сайт по проброске портов, найдите там модель своего роутера и следуйте инструкциям.

Почти в каждом роутере можно задать тип порта: UDP или TCP. Этот список объяснит, какой тип порта и для чего нужен:


Главный порт сервера: UDP

HTTP порт: TCP

ASE порт: UDP (он понадобится, если вы захотите появления своего сервера в браузере серверов)


ASE порт легко вычислить:

ASE порт = главный порт сервера + 123

Итак, если главный порт вашего сервера - 22003, ASE порт будет 22126.

Удачи!

В последней версии сервера вы можете проверить статус портов через следующую серверную команду openports.

Проверки клиента

При желании, античит MTA сервера может быть отключен. В нем можно также разрешить определенным или всем файлам быть измененными (напр. carmods.dat) или задать минимально допустимую весрию клиента.

Все эти настройки расположены внутри файла 'mods/deathmatch/mtaserver.conf'. Смотрите Anti-cheat guide для получения дополнительной информации.

Если вы хотите задать минимальную версию клиента, найдите следующую строку:

<minclientversion></minclientversion>

Правильные значения выглядят наподобие: 1.1.1-9.02320

Добавление администраторов

Крайне рекомендуется добавить хотя бы одного администратора на сервер, чтобы воспользоваться встроенным вебсервером для несложной поддержки и настройки сервера. Этот администратор также сможет логиниться прямо из игры и контроллировать сервер.

Чтобы добавить администратора, следуйте этим шагам:

  1. Если сервер запущен, добавьте новый аккаунт через ввод команды addaccount name password в окно севрера. Например, чтобы добавить пользователя VasyaPupkin, вам понадобится набрать:
    addaccount VasyaPupkin 123password
    

    Заметка: Если у вас нет доступа к окну сервера, а ресурс 'admin' запущен, вы можете добавить аккаунт-образец через ввод /register VasyaPupkin 123password в чат.

  2. Сервер должен будет отобразить сообщение о том, что аккаунт добавлен.
  3. Затем выключите сервер, введя shutdown в окне сервера.
  4. Удостоверьтесь, что сервер выключен; если он все еще запущен, изменения, которые вы вносите, будут перезаписаны
  5. Откройте файл 'mods/deathmatch/'acl.xml' любым текстовым редактором
  6. Добавьте аккаунт в группу Admin, используя XML-синтаксис, как это сделано ниже
    <acl>
      ...
      <group name="Admin">
        <acl name="Admin"/>
        ...
        <object name="user.VasyaPupkin" />
      </group>
      ...
    </acl>
    

    Вообще, можно добавлять пользователей в какие угодно группы. Каждая из групп связана с ACL (Access Control List). Каждый ACL содержит специфический список разрешенных и запрещенных прав. Группы существуют для того, чтобы разным пользователям могли соответствовать разные права. Группа Admin связана с Adminским ACL, который пуст (стало быть, разрешены все права). Группа Everyone связана с Defaultным ACL, который накладывает список ограничений на доступные команды (чтобы не позволять обычным пользователям пользоваться админскими командами).

  7. Это все! Вы можете добавлять столько администраторов и пользователей этим способом столько, сколько захотите, еще посмотрите на другие группы и ACL'ы, например. ACL также доступен через скриптовый движок Lua.
    Рекомендуется взглянуть на веб-интерфейс, как это сделать мы опишем ниже.

Заметка: Для сервера, когда он запущен, есть другие способы добавлять аккаунты и редактировать права. "addaccount <user> <password>" - внутренняя команда для добавления аккаунтов, но вам придется воспользоваться веб-интерфейсом, чтобы добавить эти аккаунты в специфические группы/ACLы!

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:

  1. Make sure your server is stopped
  2. Open the file 'mods/deathmatch/mtaserver.conf' with any text editor
  3. Verify that the HTTP server is enabled:
    	<httpserver>1</httpserver>
    
  4. Change the HTTP server port to your liking:
    	<httpport>22005</httpport>
    
  5. Save and close the configuration file
  6. Start your server
  7. If you happened to have changed the start-up resources in your configuration file, make sure the following resources are started:
    1. resourcebrowser
    2. resourcemanager
    3. webadmin
    4. webmap
    These are automatically started in the default configuration file, in case you just installed your server.
  8. 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/.
  9. 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.

  1. Move or copy the new resource to your <SERVER>\mods\deathmatch\resources folder.
  2. 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.

  1. Delete the ZIP file or the folder of the resource you wish to uninstall
  2. 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

  1. 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.
  2. 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
  3. 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.
  4. 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)