Как запустить ark survival evolved на linux

Обновлено: 06.07.2024

Server Loses Characters or World Data Upon Restart [ ]

If your server isn't retaining characters or world data when it's restarted, it may not have full access to the folder where it's installed.

The first time the server is run, it should create a folder named ShooterGame/Saved containing various configuration and save files. If the server has run at least once but hasn't created this folder, it may not have been able to create new folders and files there. Verify that the folder where the server is installed is readable and writable by the user account that actually runs the server. (For Windows servers, check the status of User Account Control)

The server software, by default, is set-up to automatically save world data every 15 minutes. If your server crashes before the first 15 minutes are up, you will not have any data saved.

Linux [ ]

В большинстве Linux дистрибутивах брандмауэром является iptables. Для настройки правил будем использовать удобную утилиту UFW.

Все команды выполняем от root или с приставкой sudo. These open ports 7777 7778 and 27015 for UDP and optionally 27020 for TCP. You may want to adjust the list of ports you need by editing the "for port in. " line.

This script will open the ports in a way that will persist across reboots. UFW is the firewall on Ubuntu

FirewallD [ ]

This script will open the ports in a way that will persist across reboots. FirewallD is the firewall on RHEL7, CentOS7.x, and Fedora.

iptables [ ]

Keep in mind that this is only a temporary solution, and should only be used if neither of the other scripts apply for your system. To make it safe for reboots see the documentation of your distribution, how to add firewall ports to the existing configuration files - or how to add scripts to the boot process.

Automatic Startup

Windows (via Scheduled Task)

You can configure a scheduled task to automatically run a batch file and start the dedicated server when the system boots.

  1. Open 'Task Scheduler'
  2. Create Basic Task
  3. The 'Create Basic Task Wizard' will appear, name the task whatever you want
  4. Set the Trigger to 'When the computer starts'
  5. Set the Action to 'Start a program'.
  6. You will need to browse to the program/script you wish to start (which is your .BAT batch file that starts your server).
  7. Depending on how your batch file works, you may need to set the "Start in (optional)" path, so the working directory of your batch file is correct. (If your batch file simply contains the "start ShooterGame . " command, then you should set the "Start in (optional)" path of your scheduled task to the directory that contains the batch file)
  8. Before you create the scheduled task, click the checkbox to "open properties window" after it's created
  9. In the General Tab under the Security Options frame, you probably want to choose "Run whether user is logged on or not"
  10. I personally checked "run with highest privileges" just in case. This might not be necessary.

Linux (via systemd)

Note: systemd is not available for Ubuntu 14.04.

As an alternative to using a script to launch the dedicated server manually, hosts running systemd can be configured to automatically start the dedicated server when the system boots. When using this method to manage the server, using GameUserSettings.ini to specify its settings is highly recommended. Refer to Admin Game Commands for more information.

    Create a file named /etc/systemd/system/ark-dedicated.service with the following contents:

Be sure to replace <SESSION_NAME> with the desired session name for your server as well.

Finally, adjust the User and Group settings for your host. Without these two options in ark-dedicated.service , the dedicated server will be run as the root user. This is unsafe, as any vulnerability in the dedicated server could result in an attacker gaining remote superuser access on the host.

It's recommended to run the dedicated server in an unprivileged account used solely for this purpose. In the example above, the user account "steam" is used. It's a member of the "steam" group, which is generally created along with the account.

WorkingDirectory option is required to fix some issues. (For example not having WorkingDirectory set will fail to download mods (if using with -automanagedmods))

You will need to reboot after installation to initialize systemd.

Activate the new service so it starts automatically when the host boots by running the following command via sudo or a root shell:

After running this command, the dedicated server will automatically start when the host does. The command doesn't start the server immediately, so to launch the dedicated server after enabling it, run:

After following these steps, your server should be up and running and be automatically managed by the host on startup and shutdown.

Post-Setup Management

The server can be stopped by running:

and its current status can be viewed (whether it's running or not) by running:

Note: If you need to update the ark-dedicated.service file (to change the dedicated server's startup options or to adjust its path), run the following command to ensure your changes are applied:

Системные требования [ ]

Для запуска сервера требуется не менее 6ГБ ОЗУ. Потребление ОЗУ зависит от количества подключенных игроков. А так же зависит от настроек сервера и установленных модов.

В Windows пустой сервер ARK: SE использует от 4.5 ГБ, Linux от 4GB ОЗУ.

Сервер прослушивает входящие соединения через порты, перечисленные ниже. Убедитесь, что ваша сетевая конфигурация разрешает входящие соединения с этими портами и направляет их на хост, на котором будет работать ваш выделенный сервер.

Порт Назначение
UDP 27015 Query порт для запросов Steam browser
UDP 7777 Основной игровой порт
UDP 7778 Порт для "сырых" сокетов UDP (Всегда больше на +1 чем основной)
TCP 27020 RCON порт, для удаленного администрирования (опционально)

Примечание: указаны порты по умолчанию, администратор сервера может указать любые порты.

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

Примечание: Query порт не может быть указан в диапазоне 27020 и 27050 из-за того, что Steam использует эти порты.

Backing Up Server Data

To make a backup of the server data, simply copy the folder named ShooterGame/Saved (and his content) to the desired backup location. This folder contains all tribe, player and world data for the server. Performing a backup is recommended before updating a server to a new release.

SteamCMD [ ]

Выделенный сервер ARK: SE доступен на Windows и Linux. SteamCMD используется для загрузки сервера. Посетите страницу SteamCMD для уточнения детальной информации. Далее описываемые действия являются краткими инструкциями.

  1. Скачайте и установить SteamCMD на ваш сервер
  2. Создайте папку для размещения файлов сервера. Требуется около 15+ ГБ дискового пространства.
  3. Запустите SteamCMD на своем сервере и используйте его для загрузки файлов сервера. (Удалите <> и замените их двойными кавычками, например, force_install_dir "C:\Program Files (x86)\Ark Server" )
  4. Используйте идентификатор 376030 для ARK: Survival Evolved и 445400 для ARK: Survival of The Fittest

Замените <install_dir> на ранее созданную папку. Пример: Linux, /home/steam/servers/ark Windows, c:\arkserver .

Для Linux, создайте server_start.sh : и разместите в ВАША_ПАПКА_С_СЕРВЕРОМ/ShooterGame/Binaries/Linux/

В Linux, после создания скрипта, сделайте его запускаемым:

В скриптах <server_name> это название сервера, отредактируйте по своему желанию, <join_password> укажите пароль для подключения к серверу и <admin_password> пароль для получения прав администратора сервера. Если для подключения к серверу пароль не требуется, удалите параметр ?ServerPassword= .

Notes

If you're planning to have players join from the EpicGames version of ARK you must have the -crossplay command line option set.

Updating

To update the server when a new version is released, repeat the same SteamCMD commands shown in the previous section. Be sure to use the correct set of commands for your platform. Refer to SteamCMD's documentation for details on automating this process.

If you use the systemd startup file you can easily integrate the update-mechanism to be run before every start of the game.

SteamCMD provides additional tools to make installation and updates easier and more seamless.

Windows [ ]

  1. Если вы используете Windows 10, нажмите на пуск в левом нижнем углу и введите «Брандмауэр».
  2. После открытия брандмауэра нажмите «Дополнительные параметры» на левой панели.
  3. Нажмите «Правила для входящих подключений» на левой панели, затем нажмите «Создать правило . » на правой панели.
  4. Когда откроется "Мастер создания правила для нового входящего подключения", выберите «Порт», затем «Далее».
  5. Теперь "Мастер создания правила" попросит вас, указать тип TCP или UDP порт. Выберите TCP. Затем убедитесь, что выбран «Определенные локальные порты», а затем укажите порт, который вы планируете открыть. (по умолчанию 27020 для RCON).
  6. Выберите «Разрешить подключение» и продолжите работу с мастером.
  7. Далее убедитесь что установлены все галочки на профилях.
  8. Введите имя правила (обязательно) и описание (необязательно).
  9. Повторите эти шаги, но теперь вместо TCP укажите UDP. Обязательно откройте порты для Steam Query - порт запроса (по умолчанию 27015) и игровой порт (по умолчанию 7777).
  10. Теперь у вас должно быть 3 ваших правила в разделе «Правила входящих подключений».
  11. Закройте окно дополнительных параметров брандмауэра и снова откройте брандмауэр Windows.
  12. Нажмите «Разрешение взаимодействия с приложениями или компонентами брандмауэра». Прокрутите вниз до ShooterGame. Убедитесь, что во всех приложениях с именем ShooterGame установлены флажки Личное и Публичное.
  13. Все готово, если порты не открылись, вернись и начните сначала.

Server Installation

  1. Install SteamCMD on your host.
  2. Create a folder to house the server files on a volume with at least 15GB of free disk space. The server files consume about 10.4GB of space (Feb 2020 after Genesis 1 launch), but it's wise to plan for saves and future content updates which will consume additional space.
  3. Launch SteamCMD on your host and use it to download the server files. (Remove the < > and replace them with double quotes, for example, force_install_dir "C:\Program Files (x86)\Ark Server")
  4. Use app id 376030 for Survival Evolved or use 445400 for Survival of The Fittest.

Replace <install_dir> with the full path to the folder created in Step 2. On Linux, this will be a path like /home/steam/servers/ark . On Windows, this will be a path like c:\arkserver .

For Linux, create server_start.sh and place it in YOUR_ARK_SERVER_FOLDER/ShooterGame/Binaries/Linux/ (remove the '<' '>' symbols!)

On Linux, after creating the script, make it executable:

In both of these examples, replace <server_name> with the desired name for your server, <join_password> with whatever password players must provide to join your server and <admin_password> with the password that must be provided to gain administrator access to the server. If no player join password is desired, remove the entire option from the list (including the ?ServerPassword= parameter itself).

Run a Beta Branch

Sometimes events are not implemented in the main game but into a so called branch. To run this event you change to this branch.

Add -beta with the branch name to the app_update command, like

Additionally start the server with -branchname .

Of course change the branchname to whatever the name of the branch is. When the event is or should be finished, just remove the additions.

Tool - ARK Server Manager

ASM.jpg

The Ark Server Manager is designed to help you set up and maintain your own Ark: Survival Evolved (tm) dedicated servers. It provides a simple user interface allowing you to create and edit server profiles containing all of the settings you need to customize the playing experience for you and your friends.

What it does:

  • Manages the SteamCMD tool and Server installations/updates.
  • Organizes settings and writes INI files and command-line arguments automatically.
  • Tracks server status and allows direct control of server state.
  • Save and load server profiles - even import directly from an existing server deployment.
  • Scheduled updates server files and mods.
  • Works with Survival of the fittest.

Установка бета версий [ ]

Иногда вы можете поучаствовать в тестировании бета версий.

Добавьте параметр -beta после app_update, например:

А так же запустите сервер с параметром -branchname .

Brachname это пример, название бета версии может быть другим.

Чтобы ваш сервер был виден в списках серверов Ark, так и в списках Steam, сделайте следующее:

Troubleshooting

Server loses characters or world data upon restart

If your server isn't retaining characters or world data when it's restarted, it may not have full access to the folder where it's installed.

The first time the server is run, it should create a folder named ShooterGame/Saved containing various configuration and save files. If the server has run at least once but hasn't created this folder, it may not have been able to create new folders and files there. Verify that the folder where the server is installed is readable and writable by the user account that actually runs the server. (For Windows servers, check the status of User Account Control)

The server software, by default, is set-up to automatically save world data every 15 minutes. If your server crashes before the first 15 minutes are up, you will not have any data saved.

Linux server exhibits high CPU usage and low memory usage (Below 1GB)

This can occur when the server can't open all the files it needs due to an insufficient open files limit on the host. Refer to the Linux section above and follow the procedure to increase the host's open files limit.

Finding Your Server in Lists [ ]

You can access your server via the Steam servers list or the Ark unofficial list. Just search for you name in the Ark list, or find your IP address in the Steam server list. It is best to add your servers IP:PORT to your Steam favourites and joining using the 'favourites' tab ingame. The ingame list has a limit on the servers it will show at one time. There is no guarantee your server will appear in the unofficial lists all the time.

Linux (via systemd) [ ]

NOTE: systemd is not available for Ubuntu 14.04

Be sure to replace <SESSION_NAME> with the desired session name for your server as well.

Finally, adjust the User and Group settings for your host. Without these two options in ark-dedicated.service , the dedicated server will be run as the root user. This is unsafe, as any vulnerability in the dedicated server could result in an attacker gaining remote superuser access on the host.

It's recommended to run the dedicated server in an unprivileged account used solely for this purpose. In the example above, the user account "steam" is used. It's a member of the "steam" group, which is generally created along with the account.

WorkingDirectory option is required to fix some issues. (For example not having WorkingDirectory set will fail to download mods (if using with -automanagedmods))

You will need to reboot after installation to initialize systemd.

Activate the new service so it starts automatically when the host boots by running the following command via sudo or a root shell:

After running this command, the dedicated server will automatically start when the host does. The command doesn't start the server immediately, so to launch the dedicated server after enabling it, run:

After following these steps, your server should be up and running, and be automatically managed by the host on startup and shutdown.

Post-Setup Management [ ]

The server can be stopped by running:

and its current status can be viewed (whether it's running or not) by running:

Note: If you need to update the ark-dedicated.service file (to change the dedicated server's startup options or to adjust its path), run the following command to ensure your changes are applied:

To update the server when a new version is released, repeat the same SteamCMD commands shown in the previous section. Be sure to use the correct set of commands for your platform. Refer to SteamCMD's documentation for details on automating this process.

If you use the systemd startup file you can easily integrate the update-mechanism to be run before every start of the game.

SteamCMD provides additional tools to make installation and updates easier and more seamless.

While running the game, the command console can be accessed with either the [

] (tilde) or [TAB] keys (depending on game version, default configuration and your keyboard layout). Once in the console, to activate administrator commands, enter:

Replace <admin_password> with the server's administrator password.

Refer to Backing Up Server Data [ ]

To make a backup of the server data, simply copy the folder named ShooterGame/Saved (and his content) to the desired backup location. This folder contains all tribe, player and world data for the server. Performing a backup is recommended before updating a server to a new release.

[WINE] Поддержка Linux и MacOS

Так как поддержки Linux и MacOS ждать не приходится, по понятным причинам. Сделайте поддержку хотя бы игры через WINE.
Предлагаю все вопросы задавать в этой теме.

Сейчас через вайн получается скачать и поставить игру, зайти в Игровой центр.
При запуске выдаётся ошибка "Таймаут запроса к службе"
В консоле вайн даёт ошибку

00b9:err:service:process_send_command service protocol error - failed to read pipe r = 0 count = 0!
Интересно сколько наберётся пользователей ляликс среди игроков лост арк, человак 100?

Так как поддержки Linux и MacOS ждать не приходится, по понятным причинам. Сделайте поддержку хотя бы игры через WINE.
Предлагаю все вопросы задавать в этой теме.

Сейчас через вайн получается скачать и поставить игру, зайти в Игровой центр.
При запуске выдаётся ошибка "Таймаут запроса к службе"
В консоле вайн даёт ошибку


Installing an ARK: Survival Evolved Dedicated Server on Debian, CentOS, and Arch Linux

The assumption is made that you are already familiar with Debian/CentOS/Arch and have the know-how to accomplish the operating system tasks in this guide. This is not a guide on how to use Linux in general or Debian/CentOS/Arch in particular.


2,561 уникальных посетителей
22 добавили в избранное

















  • 27015 UDP (query port for Steam's server browser)
  • 27020 TCP (RCON for remote console server access)
  • 7777 UDP (game client port)
  • 7778 UDP (raw UDP socket port; always game client port +1)

Before you execute the above command in Arch, you need to first enable the multilib repository. You do this by uncommenting the following two lines in /etc/pacman.conf:

SteamCMD is the command-line version of Steam used to install servers of all sorts, both Valve and non-Valve products. In addition to ARK, examples of other games that use SteamCMD for its servers are Left 4 Dead 2 (Valve) and Arma 3 (Bohemia Interactive).

Install SteamCMD as a non-root user. To do this, execute the following command:

in one of the following directories (create as necessary):

The first option is if you want to use an already-existing user account denoted by <USER>. The second option is if you create a user named 'steam' used specifically for server-related purposes. In this case <USER> is 'steam' and the path is truncated accordingly. The rest of the guide will assume the server is installed under the user 'steam'.

For security reasons, avoid installing SteamCMD in locations such as /usr, /usr/local, /opt, etc. By installing in /home, the read/write priveleges and authorized access are significantly restricted.

Execute the following command in the steamcmd directory created in Step 3:

Then, enter the following commands at the Steam> prompt:

Steam> login anonymous Steam> force_install_dir /home/steam/servers/ark Steam> app_update 376030 validate Steam> quit

If the download does not finish and instead times out and returns you to the Steam> prompt with an error message, then re-enter 'app_update 376030 validate' until installation is successful. You may have to do this several times.

It is also possible to initiate the download as a single command:

$ ./steamcmd.sh +login anonymous +force_install_dir /home/steam/servers/ark +app_update 376030 validate

A final argument +quit can also be added to the preceeding command so as to avoid having to manually exit SteamCMD. However, my preference is to avoid doing so in the event that the update encounters errors and the app_update command needs to be re-executed. As is commonly done in Linux, the single-line command can also be aliased to save on typing and memorizing (don't forget to adjust the execution path for steamcmd.sh).

As was the case for SteamCMD, for security reasons the server should also be installed in /home. The install path is /home/steam/servers/ark.

with the following contents:

[Unit] Description=ARK: Survival Evolved dedicated server Wants=network-online.target After=syslog.target network.target nss-lookup.target network-online.target [Service] ExecStartPre=/home/steam/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/steam/servers/ark +app_update 376030 +quit ExecStart=/home/steam/servers/ark/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName=<SESSION_NAME> -server -log LimitNOFILE=100000 ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s INT $MAINPID User=steam Group=steam [Install] WantedBy=multi-user.target

Replace <SESSION_NAME> with the text to appear in the browser listing. Also note that ExecStartPre and ExecStart are both just single lines. Steam may be causing line-wraps in your viewing of this guide so as to make it appear as if there are additional lines between ExecStartPre, ExecStart, and LimitNOFILE. The correct lining is:

[Service] ExecStartPre=. ExecStart=. LimitNOFILE=. ExecReload=. ExecStop=. User=. Group=.

Also notice that the service is registered under the User+Group 'steam'. Change accordingly if needed.

The above code starts the server with The Island as the world map. To use The Center, change TheIsland -> TheCenter (no spaces in TheIsland or TheCenter) in the ExecStart line.

Note: Various other guides instruct to create scripts for launching the server and also instruct to modify certain system settings to increase the number of open files allowed in order to satisfy the requirements for ARK. Using the above systemd approach eliminates the need for using such scripts and modifications as everything is automatically taken care of when the server is run as a proper system service.

Start then immediately stop the server (after it completes its first initialization):

$ sudo systemctl enable ark-server $ sudo systemctl start ark-server $ sudo systemctl stop ark-server

Starting the server once will generate the necessary default configuration files, which can then be modified to tweak the server's settings.

The enable command is what registers ark-server.service as a service and allows the server to automatically start on boot. To disable automatic startup and the service in general, execute the following command:


Note the difference in usage of enable versus start and disable versus stop: enable and disable relate to registering and de-registering the service with the operating system, while start and stop just activate and de-activate the service without affecting its registered status with the operating system.

Configure the server's settings to your liking via the following two files*:

/home/steam/servers/ark/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini /home/steam/servers/ark/ShooterGame/Saved/Config/LinuxServer/Game.ini

then start the server again:

Consult the following for a comprehensive list of configuration options:

* It is possible to add some (but not all) settings directly to the ExecStart command line in Step 5 instead of the above .ini files. A lot of people prefer to (incorrectly) use this method. The .ini configuration files approach is the preferred method, especially if only one game instance is being run. The command line arguments approach has two main uses: 1) to quickly change certain settings for testing and debugging purposes, and 2) to easily switch between multiple different game instances (different maps, mods, etc.), with the intention of still playing other instances. This allows one to maintain a single set of .ini files common to all instances. Moreover, it is possible to register multiple different system services as done in Step 5 with differing ExecStart lines in order to facilitate switching between different game instances. For example, instead of ark-server.service, one could create ark-server-island.service and ark-server-center.service, and each of these can have its own set of mods loaded via ExecStart, while sharing the same base .ini configurations.

Leaving the default-generated settings will allow connections to the server at this point. Also, once the server is started it is immediately visible and joinable (in

1 min) in the public server browser. It's a good idea to set a join-server password until all configurations have been completed:

GameUserSettings.ini

To see the server, go to View -> Servers in the main Steam client. Then, navigate to the Favorites tab -> click on Add a server -> enter the IP address of the server. If it is not visible, then there is likely a problem with port forwarding and/or the firewall. Adding it to favourites here will also list it under the Favorites filter in-game.

Note: After the server is started, it will take approximately 1 minute to initialize everything before it is visible and joinable.

The following command lets you check the status of the server:

After any future updates to ark-server.service, run the following command to ensure the changes are applied:

All game states are saved in:

To make a backup, simply copy the above files to a safe location. It's good practice to just backup the entire directory at regular intervals (e.g., once or twice a day) and keep a 1-2 week's worth of archives. Each game state is

The frequency that the server will create a saved state can be set in the server configuration files.

Take the TheIsland_DATE_TIME.ark that was backed up in Step 10 that you want to restore as the current game state and rename it to TheIsland.ark. Stop the server, place the file back into the /SavedArks directory (overwriting the current file), and restart the server.

Whenever an update is released, simply 'stop' the server, execute Step 4, then 'start' the server. It is not necessary to 'disable'/'enable' the server, just 'stop'/'start'.

Make sure to keep backups in case you need to roll-back.

There are many fantastic mods available on the Steam Workshop. While these mods can significantly enhance ARK, they can also be the downfall of your server if not selected and managed carefully.

    They should be 'clean' and 'stackable'. This means that they do not interfere with or alter any core game files, and that they can be used alongside other mods. Many mods specify in their Workshop descriptions that they satisfy these criteria. This first consideration will not necessarily be satisfied in the case of 'total conversion' or 'overhaul' mods.

To install mods, the first thing that should be done is to add the mod IDs to the server configuration file. To do this open:

/home/steam/servers/ark/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini

and under the [ServerSettings] block add/modify the ActiveMods line:

For example, two mods that I like to use are Structures Plus and Platforms Plus. They would appear in GameUserSettings.ini as:

These IDs are obtained from the corresponding Workshop urls:

When creating the ActiveMods list, the order may be important as some mods require that they be loaded before others. Load order is left-to-right. That means that the left-most mod, or the first in the list, will be loaded first by the server, while the right-most mod, or the last in the list, will be loaded last by the server. Workshop descriptions will typically indicate if load order is important for a particular mod. Otherwise, if order is important but not specified, then it will need to be determined by trial-and-error.

The next step is to get the actual content onto the server. Navigate to the Workshop page of a particular mod, then use your Steam client to subscribe to the mod on the computer where you have the user-playable installation of ARK installed. The subscription should trigger the content download.

Once the download is complete, start ARK on that computer and wait at the main menu screen until the mod is actually installed. Mod installation status is displayed in the bottom-right of the main menu screen.

Then, exit ARK and navigate to the following location on the computer where the user-playable version of ARK is installed:

Locate the folder and the .mod file corresponding to the ID value you noted down from the Workshop url. Copy those two items to your server:

The server can now be started and the mods will be loaded.

If a user attempts to login to the server and they do not have a mod in the list, then the mod will be automatically downloaded. Depending on the number and/or sizes of the mods, users might timeout and get disconnected from the server when attempting to join if downloading and installing takes too long. Several attempts to join the server might be necessary until everything is downloaded and installed.

It is at this point that the issue of the number of mods on the server comes into play. The server does not update mods automatically. The process of copying mods over to the server manually must be done each time there is an update to a mod. This becomes problematic when considering a lot of mods.

First of all, when a Workshop content update triggers in the Steam client, there is no information as to what exactly from the Workshop was updated. So there is the problem of tracking down which mod was updated.

The second problem is that Workshop content updates are pushed automatically to clients (the Steam option to not automatically update game content does not apply to Workshop content). Therefore, it is possible that users are locked out of a server because of incompatibilities between their version of the mod and that which is installed on the server. Then, instead of a simple update and continuing to play the game, time is wasted trying to hunt down which mod needs to be updated.

A third possible issue is if a game update breaks a mod's compatibility with the game. Until patched by the mod authors, you could end up losing dinos and your base.

Therefore, consider using only a handful of carefully-selected stable, and preferrably actively-maintained, mods (10 is a reasonable number, 20 is pushing it) that can be quickly looked up on the Workshop pages for modification dates in order to track down which mods need to be updated.

The higher the number of mods used, the higher the probability of more frequent updates. You don't want to be updating the server on a daily basis.

The following are comprehensive tools for all things server-related (these are not mine, but rather just ones that I particularly like):

It is recommended to get acquainted with and use these tools after the initial installation. While the tools can also install the server, it initially takes longer to figure out how the tools work than it is to just follow Steps 1-7. However, beyond the installation phase, these tools are indispensable.

Think of the following analogy: you are on foot about to cross an intersection. Crossing by foot will likely get you across more quickly (Steps 1-7) than hailing a cab (the Tools). However, once you do cross, you are limited by how far you can go by walking compared to in-vehicle. People typically want to get a server up and running as quickly as possible. The details can come later =)

Hardware

The server requires at least 6GB of RAM to start. Memory requirements increase as the number of connected players increases. This is also dependant on your settings/mods and configurable options. Some mods increase RAM more than others. On Windows Server 2012 R2, the server uses 2.3GB of RAM without any clients. On Linux, the installation uses 3.2GB of RAM without any clients.

Network

The server listens for incoming connections on the ports listed below. Ensure your network configuration allows incoming connections to these ports and directs them to the host that will be running your dedicated server.

Port Purpose
UDP 27015 Query port for Steam's server browser
UDP 7777 Game client port
UDP 7778 Raw UDP socket port (always Game client port +1)
TCP 27020 RCON for remote console server access (optional)

You can host multiple dedicated servers on the same host, however be aware that CPU and memory should be monitored carefully if they are busy servers rather than test servers. For example:

Server instance Game port Raw UDP port Query port RCON port
Server game instance 1 7777 7778 27015 27020
Server game instance 2 7779 7780 27016 27021
Server game instance 3 7781 7782 27017 27022
Server game instance 4
completely different ports
9999 10000 37015 37016
Note: Query Port cannot be between 27020 and 27050 due to Steam using those ports.

Operating system

Windows

Microsoft Visual C++ 2013 Redistributable (can be found in the Steam Ark game folder under _CommonRedist/vcredist/folder).

DirectX (DXSETUP, can be found in the Steam Ark game folder under _CommonRedist/DirectX/June2010/ folder).

Linux

64bit Linux servers will require 32 bit binaries to install/run steamcmd.

The game server requires glibc 2.14 or greater. Ubuntu 14.04 (and newer) and Debian 8 (Jessie) satisfy this requirement automatically, but older versions, such as Debian 7 (Wheezy), do not. To install the required version of glibc on a Debian 7 (Wheezy) host:

  1. Add the following lines to /etc/apt/sources.list :
  2. To update the host's available packages list and install the updated glibc library package, run the following commands via sudo or a root shell:

For other older distributions that don't include glibc 2.14 or newer, refer to the distribution's documentation and support forums for guidance.

Open Files Limit

To ensure that the host's open files limit is high enough to support the game server:

    Add the following lines to /etc/sysctl.conf :

then run the following command via sudo or a root shell to apply the change:

Tuned is a daemon that monitors the use of system components and dynamically tunes system settings, currently only on RHEL7, CentOS7.x and Fedora.

Note: You need to set tuned to „throughput-performance“. Otherwise all changes in /etc/security/limits.conf will ignored!

SteamCMD

The dedicated server is available for both Linux and Windows platforms. For both platforms, SteamCMD is used to download the server files. Refer to that page for detailed instructions on its installation and usage; the instructions included in the steps below are deliberately concise for space considerations.

Warning: [Linux-specific | Windows: report missing] If you want to use a SSD to run the server, but your normal steam folder is on your main HDD, check the soft-links of the folders located in '.steam'

Port Forwarding [ ]

What ports work depends on you. Try forwarding 27015 as the port, and 27016 as the query port. 27015, 27016, and 7777 are the most common ports that work.

Enter the ports that you have forwarded in the start_server.bat file you should have created earlier. For example,

start ShooterGameServer.exe TheIsland?listen?SessionName=<server_name>?ServerPassword=<join_password>?ServerAdminPassword=<admin_password>?Port=7777?QueryPort=27015?MaxPlayers=<max_players></max_players>

Good luck, port forwarding is not very easy.

Linux Server Exhibits High CPU Usage and Low Memory Usage (Below 1GB) [ ]

This can occur when the server can't open all the files it needs due to an insufficient open files limit on the host. Refer to the Linux section above and follow the procedure to increase the host's open files limit.

This freeware give an interface for your ARK Dedicated Server. It works with SteamCMD.

Console Commands

While running the game, the command console can be accessed with either the [

] (tilde) or [TAB] keys (depending on game version, default configuration and your keyboard layout). Once in the console, to activate administrator commands, enter:

Replace <admin_password> with the server's administrator password.

Refer to Admin Game Commands for a list of available commands.

If the console can't be opened in-game, exit the game, open the game's DefaultInput.ini file (located in your Steam library in the folder named steamapps\common\ARK\ShooterGame\Config ) with a text editor and locate the line (near the bottom of the file) that reads:

Remove the semicolon (;), changing the line to read:

Save the file and launch the game. The console should be accessible.

Windows (via Scheduled Task) [ ]

You can configure a scheduled task to automatically run a batch file and start the dedicated server when the system boots.

  1. Open 'Task Scheduler'
  2. Create Basic Task
  3. The 'Create Basic Task Wizard' will appear, name the task whatever you want
  4. Set the Trigger to 'When the computer starts'
  5. Set the Action to 'Start a program'.
  6. You will need to browse to the program/script you wish to start (which is your .BAT batch file that starts your server).
  7. Depending on how your batch file works, you may need to set the "Start in (optional)" path, so the working directory of your batch file is correct. (If your batch file simply contains the "start ShooterGame . " command, then you should set the "Start in (optional)" path of your scheduled task to the directory that contains the batch file)
  8. Before you create the scheduled task, click the checkbox to "open properties window" after it's created
  9. In the General Tab under the Security Options frame, you probably want to choose "Run whether user is logged on or not"
  10. I personally checked "run with highest privileges" just in case. This might not be necessary.

Port Forwarding and Firewall

For your server to become visible in both the Ark server lists and the Steam lists, do the following:

Windows (Firewall and Allow Rules)

  1. If you're on Windows 10, click on the search box in the lower left corner and type in "wf.msc" without the quotes. Click the "Run as administrator" option.
  2. Click "Inbound Rules" on the left panel, then click "New Rule. " on the right panel.
  3. When the New Inbound Rule Wizard opens up, select Port, then Next.
  4. The wizard will present options for choosing the protocol and specifying ports. Leave the default selection of the TCP protocol and "Specific local ports". List the ports you plan to forward into the box (default 27020 for RCON). Use a comma to separate multiple ports. Select Next to continue.
  5. Select "Allow the connection" and continue with the wizard.
  6. Make sure all of the boxes are selected for where the rule applies.
  7. Enter a name (required) and a description (optional). It is recommended to append the protocol (TCP or UDP) to the rule name.
  8. Repeat these steps, but choose UDP on the "Protocol and Ports" page. Make sure to enter your steam browser/query port (27015 default) and game port (7777 default). You also need the raw udp socket port (7778 default, always your game port +1) if using ?bRawSockets.
  9. When finished, you should have a rule for TCP and a rule for UDP in the Inbound Rules section.
  10. This section and the port forwarding section go hand in hand.
  11. Close the advanced firewall window and open Windows Firewall again.
  12. Click "Allow an app or feature through Windows Firewall". Scroll down to ShooterGame. Make sure all apps named ShooterGame have the Private and Public boxes checked.
  13. You're done. If your ports don't work when you forward them, you can edit your Firewall inbound rules by going back to the advanced tab, selecting the Inbound Rules tab, right-clicking the rules you created, then clicking properties.

OS X (firewall application)

Linux

For most Linux distros, if there is a firewall at all it will be iptables based. Most modern distributions will use a different interface, it's a good idea to use that instead of direct iptables commands.

All firewall changes must be made either as root or with sudo. These open ports 7777 7778 and 27015 for UDP and optionally 27020 for TCP. You may want to adjust the list of ports you need by editing the "for port in. " line.

This script will open the ports in a way that will persist across reboots. UFW is the firewall on Ubuntu

FirewallD

This script will open the ports in a way that will persist across reboots. FirewallD is the firewall on RHEL7, CentOS7.x and Fedora.

iptables

Keep in mind that this is only a temporary solution and should only be used if neither of the other scripts apply for your system. To make it safe for reboots see the documentation of your distribution, how to add firewall ports to the existing configuration files - or how to add scripts to the boot process.

Port Forwarding

What ports work depends on you. Try forwarding 27015 as the port and 27016 as the query port. 27015, 27016 and 7777 are the most common ports that work.

For example, start ShooterGameServer.exe TheIsland?listen?SessionName=<server_name>?ServerPassword=<join_password>?ServerAdminPassword=<admin_password>?Port=7777?QueryPort=27015?MaxPlayers=<max_players></max_players>

Good luck, port forwarding is not very easy.

Finding Your Server in Lists

You can access your server via the Steam servers list or the Ark unofficial list. Just search for your name in the Ark list, or find your IP address in the Steam server list. It is best to add your servers IP:PORT to your Steam favorites and joining using the 'favorites' tab in game. The in game list has a limit on the servers it will show at one time. There is no guarantee your server will appear in the unofficial lists all the time.

Программное обеспечение [ ]

Windows [ ]

Microsoft Visual C++ 2013 - 2015 Redistributable (находится в папке _CommonRedist/vcredist ).

DirectX (находится в папке _CommonRedist/DirectX ).

Linux [ ]

64 битному Linux серверу необходимы 32 битные компоненты для установки и запуска steamcmd.

Выделенному серверу ARK: SE требуется glibc 2.14 или выше. В Ubuntu 14.04 (или новее) и Debian 8 (Jessie) эти компоненты установлены, а в старых версиях, например, Debian 7 (Wheezy), нет. Чтобы установить необходимую версию glibc на Debian 7 (Wheezy):

  1. Добавьте экспериментальные репозитории в /etc/apt/sources.list :
  2. Обновите список доступных пакетов и установите экспериментальную библиотеку glibc, выполнив команду в консоли(добавьте в начало sudo если нет root привилегий):

Примечание: данная процедура не обновит систему до Debian Unstable (sid); только glibc и все его зависимости(возможно это сломает все, лучше использовать новые ОС).

Для более старых дистрибутивов, которые не поддерживают glibc 2.14, почитайте документации к дистрибутиву или обратитесь за помощью на форумах.

Лимит открытых файлов [ ]

Что бы настроить лимит на открытые файлы, следуйте инструкциям:

    Добавьте строку в /etc/sysctl.conf :

затем выполните следующую команду, чтобы применить изменения(добавьте в начало sudo, если нет root привилегий)

Внимание: без этих настроек игровой сервер может не запуститься. Если сервер запускается, но сильно нагружает процессор без использования как минимум 5,5 ГБ ОЗУ, сервер не смог открыть все необходимые ему файлы, и необходимо применить указанные выше изменение.

это демон, который отслеживает использование системных компонентов и динамически настраивает системные параметры, в настоящее время только на RHEL7, CentOS7.x и Fedora.

Примечание: вам нужно настроить «пропускную способность». В противном случае все изменения в /etc/security/limits.conf будут игнорироваться!

Читайте также: