Arma 3 dedicated server что это

Обновлено: 05.07.2024

This page contains useful information on how to install and configure an ARMA 3 server and includes step by step guides of the install process. Also information on how to configure and run a server. The majority of directories and paths are customizable, however those defined are all consistent with the tutorial instructions.

Much of the tutorial here was created using this forum guide.

About steamCMD utility: if you are using it on a dedicated host to install and update Arma 3 dedicated server, it is a good practice to create a separate steam account for that. Arma 3 Dedicated server package is available for free (does not require regular Arma 3 to be purchased).

Installation

Requirements

Arma 3 server does not support IPv6 or DSlite IPv4 via IPv6 tunnel. You must have a real IPv4 connection.
If you are in doubt, contact your Internet Service Provider.

Instructions (Windows o/s)

The following instructions will guide you through setting up one Arma 3 server on 1 box, however they will also set the foundations for installing multiple servers on that same box:

If you can't connect to server through server browser try to use "direct connect": this is a client side issue (doesn't mean other clients will have it too), reason for the issue for now unknown, I can say it is not related to: Windows services, Windows network settings, network routers, firewalls.

Device Host; (note: Changes to the above 2 settings require Arma relaunch to be applied, as for server same for client machines;)

Instructions (Linux o/s)

Installation

As a security best practice, create a user to run steam instead of running as root or an administrator. This way, if your ArmA server is compromised the attacker will find it more difficult to access the rest of the operating system.

Switch to the newly created steam user.

Create a new directory for SteamCMD to avoid cluttering the home directory.

Download the SteamCMD for Linux tarball from the link at the Valve Developer Community page. Use a command line download tool such as wget or curl.

Extract the tarball.

Execute steamcmd.sh. It will install the rest of the Steam client and start the Steam client shell. If this step fails on a 64-bit OS, you likely need to install 32-bit libraries.

At the Steam client shell, login with a valid Steam username and password. The Valve Developer Community Wiki recommends that you create a new Steam account for this. SteamCMD will cache the login credentials and anyone who gains access to your server will be able to log into the account used here. In addition, you cannot log into a single Steam account from two places at once. You do not need to have Arma 3 purchased on the Steam account used here to download the server. Therefore, you should create a new Steam account with no purchases only for use on this server.

Change the directory SteamCMD will install the server in.

Install the Arma 3 Linux dedicated server. The validate option will check for corruption.

Create the directories used to store the profile files and Arma3.cfg file.

Updating

You will have to update the server whenever a patch is released on Steam.

If the server is running, stop it by pressing Ctrl+C in the terminal (or screen/tmux instance) that the server is attached to. Otherwise, switch to the steam user.

Login to the Steam account used in the installation section above.

Set the Arma 3 installation directory to the same directory used above.

Update the Arma 3 Linux dedicated server. The validate option will check for corruption.

Configuration

You will most likely want to customize your server's name, password, security settings, and so on with a server.cfg file. Change to the arma3 directory and create and edit your server.cfg file.

If you don't know how to use vim, use nano instead.

See server.cfg for documentation and examples.

The first time you run the server it will auto-create a profile file at

/.local/share/Arma 3 - Other Profiles/server/server.Arma3Profile. Edit this file to customize difficulty settings.

The -profiles= parameter is broken on Linux - you must place your profiles in this directory.
Launching

A Linux executable is provided to launch the server. Make sure that you are running it under the steam user and not root or another administrator!

NB: If you are using the -mod= parameter, you must specify relative paths within or below the Arma 3 directory. Symlinks will work.

The arma3server process will attach to the current terminal. If you are connected to the server over SSH, the server will stop when you disconnect. You can keep the server running using a terminal multiplexeer like GNU Screen or tmux. There are many tutorials online on how to use these programs to detach and reattach processes from and to a terminal.

You can safely stop the server by pressing Ctrl+C in the terminal (or screen/tmux instance) that the server is attached to.

Case sensitivity & Mods

Some mods such as CUP Terrains and @ALiVE will not function if there are capital letters in any of their file names. If you do not update your mods on a regular basis, you can just use the command

in the directory where your mods are located. This will recursively search the directory tree and make all the filenames lowercase.

If you regularly update your mods using, e.g. ArmA3Sync, you will find that this will redownload any files/folders that have changed case every time you run it. The solution to this is to use a package called "ciopfs" - Case Insensitive On Purpose Filesystem. You should first run the "find . -depth. " command mentioned above on your mod folder. Then, make an empty directory outside of the mods directory, e.g. mods_caseinsensitive. You then mount the directory with:

and tell ArmA3Sync to synchronise in the mods_caseinsensitive directory. Once it has finished, you can unmount the directory with:

You should find that all of the files in the original mods directory are lowercase.

This article is a Stub. You can help BI Community Wiki by expanding it .

Arma 3 dedicated server что это



Arma 3

20 июн. 2014 в 11:11 Hi just a quick question how do i enable mods with a dedicated server thanks. 20 июн. 2014 в 11:47 20 июн. 2014 в 12:51 well we have just got a steam server for about £10 a month, we used to play coop on gamespy but can no longer do this so as an alternative we rented a server and now we would like to know how we enable mods/ addons like task force radio, scenarios on to our server. thanks for reply. 22 июн. 2014 в 15:51 1 июл. 2016 в 9:35 For anyone wanting to know its from the server command line like so
-mod=@CBA_A3;@Ai_accuracy_fix;@ADR-97_Weapon_Pack;@AdvancedRappelling 14 мар. 2017 в 23:44 I know old post. But what if the mod folder name contains a space? 14 мар. 2017 в 23:47 just replace the spaces with _
as far as i know mod folder names are not required to be the same, only keys/bisigns and pbo's need to match 26 окт. 2017 в 16:42

You can rename but you dont need to. juste set your whole line with bracket, like this. mod= as well

mod="@ace;@CBA_A3;@RHSAFRF;@RHSGREF;@RHSUSAF;@task_force_radio;@AdvRap;@AdvUrRap;@EnhMov;@ACE Compat - RHS Armed Forces of the Russian Federation;@ACE Compat - RHS- GREF;@ACE Compat - RHS United States Armed Forces"

Arma 3 dedicated server что это


How to make a Arma 3 Dedicated Server + Port Forwarding Guide.

Tags: arma 3, how to make a server, custom server, server, dedicated, private, public


1


1


1


1


1


10,319 уникальных посетителей
270 добавили в избранное
















Scroll down until you see Downloading SteamCMD and Windows.

Click the download link next to the number 2 and download SteamCMD for Windows.

Back on your desktop (or wherever you want to make the server) create a new folder. I named the folder "SteamCMD" but the name doesn't affect the process.

Extract the files from the steamcmd.zip to the new folder you created.

Now your newly created folder should have a file inside it called steamcmd.exe.

Run the steamcmd.exe executable inside your folder.
Note: Some users may have to run steamcmd.exe as administrator.

A Windows Command Prompt (CMD) window will pop up and install all of the files required for SteamCMD into the folder you created.

Once done downloading the console should say the following to indicate that SteamCMD has fully installed.

The SteamCMD directory you created should be populated new files and folders.

After you are done installing SteamCMD you to have to log in to your steam account through the CMD window.

In the CMD window type: login <steam account username>.

I am using an anonymous login for this guide.

After entering your user name you then have to enter your password and 2step-auth if enabled.

If successful you should see Waiting for user info. OK in the CMD window.

NOTE: The account used to login must own a valid copy of Arma 3.

Once logged into your Steam account, you need to download the Arma 3 server files. In the CMD window type app_update 233780 validate.

This will download and verify the Arma 3 server files in your SteamCMD directory.

NOTE:
- app_update 233780 validate is how you will update your server when needed.

The download takes time based on your internet speed.

Once your download is finish and you will see "Success! App '233780' fully installed." in the CMD window.

You now have the Arma 3 Server files and are ready to setup TADST.

After downloading Tophe's Arma Dedicated Server Tool go to your Arma 3 Server directory in your SteamCMD folder.

SteamCMD Folder
⠀└📁steamapps
⠀⠀└📁common
⠀⠀⠀└📁Arma 3 Server

- Go into the TADST ZIP folder and find the TADST.exe.
- Drag the TADST.exe into your Arma 3 Server installation folder.

Now you have TADST ready to configure and use.


First thing you need to do is select the server file. Click the three dot button to select a server file.

Now you have to find and open the arma3server.exe in the file selector.

It is located in your SteamCMD folder:
SteamCMD
⠀└📁steamapps
⠀⠀└📁common
⠀⠀⠀└📁Arma 3 Server

Next you have to fill out the basic server info.
- The password is optional.
- Take note of the Admin Password and Password if you made one.
- Also note the port if you changed it from the default.

I used "Jake's Server" for the Server Name, "password" for the Password, and "adminpassword" for the Admin Password. You can set your Max Players to what you want.


Server Rules tab has you select rules for when to automatically kick players out of the server.
Kick Duplicates, BattlEye, Max Ping, Max Desync, Max Packet Loss, MODT, and Voting are some of the basic options.

Your missions folder is located in your documents folder:

\Documents
└📁Arma 3 - Other Profiles
⠀└📁<profile_name>
⠀⠀└📁mpmissions

- This directory is where all your in-game editor missions are saved.
- I created a mission called JakeSandbox.Tanoa. I am going to use this mission for my server.

Paste the selected mission into the mpmissions in the main Arma 3 Server directory.


- After you put your mission in the folder hit the refresh button.
- Your mission should be an option to select.

Now you have your Arma 3 Server mission configured for launch.

- The Mods tab is where you can select what DLCs and mods you want to add to your server.
- If the default DLCs aren't enabled, you can't use them while playing on the server.

Note: Even if enabled you have to own the DLCs to be able to use them in-game.

Make sure to download all requirements for the mods you use. Not doing so may cause errors or crash your server.

To save your settings, go to the profile box down at the bottom left of TADST and click the save button.

Now that you saved all of you custom options, you now have an Arma 3 server ready to start.

Press the LAUNCH button to start the server.

Using the basic Arma 3 Admin Controls are easy to learn and use.

First of all you have to get your Admin Password that you set in Configure Server

Q: Can I run the server and play the game on the same computer?
A: Yes.

Q: How can I install Steam Workshop mods?
A: You can copy the mod file from a hidden folder in the the
/Steam/steamapps/common/Arma 3/ directory, called !Workshop.
- Guide will be updated.

Q: Can I use the same Steam account on different computers to host the server and play the game?
A: As of Sept. 2021, yes.

Q: SteamCMD: ERROR! Failed to install app '233780' (No subscription).
A: You have to own a valid copy of Arma 3 on Steam.

Q: SteamCMD: ERROR! Failed to install app '107410' (No subscription).
A: You have to own a valid copy of Arma 3 on Steam.

Q: TADST: Warning: Current Steam AppId: 233780 doesn't match expected value: 107410.
A: The server folder should have a file called appid, it should have the number 233780 written in it and nothing else. Change the value to 107410 and save the file.

Q: Once I select my class in-game and press ok, the server kicks me back to the role assignment.
A: This is usually caused by a "bad" mission file. Try to load yourself into a different mission.

If you find any other problems or find a solution to unanswered problems please comment so I can update this section.

*EDIT Xfinity has change the default router access page. Some things may look different but the general process is still the same.

Port Forwarding is essentially the same with all Internet Service Providers (ISPs). The layout of the page of where you open the port(s) is different.

I will be port forwarding on a Xfinity Router for this tutorial.

First you need to find your router access page. To find out how to get there you are going to want to open a Command Prompt window by pressing on your windows key and searching for CMD.

Once you have the Command Prompt open type ipconfig and press enter.

Now you want to find your Defualt Gateway.

My Defualt Gateway is 10.0.0.1. This is the Defualt Gateway for all Xfinity Routers.

Next you have to login to your router access page.

This is what the Xifinity router login page looks like.

After logging in you need to go to the Advanced tab, then go to Port Forwarding

Next you have to Enable Port Forwarding.

Click on Add Service (or rule) and fill out the following.
- The Service Name doesn't affect the server.
- Make sure the Service Type is TCP/UDP.
- If you followed this guide, you should make the starting port 2301 and the ending port 2303.

For the Server IPv4 Address go back to your Command Prompt window and look for your "Local" IPv4 Address mine is 10.0.0.3 so that's what I'm going to put in but yours may be different.

Создание выделенного сервера на платформе Windows

1. Скачивание и Установка сервера Создаем папку steamcmd
Скачиваем steamcmd и бросаем его в папку steamcmd.
Запускаем steamcmd.exe и ждем когда он закачает нужные файлы.
Создаем батник Update.bat:

ВАЖНО!

Должно получиться так: 2. Настройка сервера Все что теперь нам нужно, это скаченная вами RW. Открываем его и настраиваем под себя:


Теперь очень важный момент

папка server, находящаяся d:\RW\Users\, переименовывается в имя вашей учетной записи. (должно быть написано латиницей) 3. Готовимся к запуску создаем на рабочем столе ярлык arma3server.exe. Создавать надо оттуда, где у вас находится RW с дистрибутивом сервера.
в свойствах ярлыка arma3server.exe, во вкладке ярлык, в поле объект мы дописываем (не забываем пробел перед -port):

Полная строчка у вас должна будет выглядить так:

4. Небольшие замечания ваша миссия кидается d:\RW\mpmissions\
ваша миссия, без расширения .pbo должна быть прописана в config.cfg, в строчке

читайте ниже, если у вас стоит роутер. Не сделав это, ваш сервер не будет виден.
в данной инструкции прописаны те порты, которые используются у меня. Вы должны прописать свои (если захотите использовать другие)
для запуска сервера требуется DirectX, без него во время запуска вылетит ошибка.

Исходящие (Outgoing):

Если же вы например запускаете два сервера на одной машине (один IP), то тогда делается разница по портам, с логичным разделением между ними.
от 2302 до 2310 для первого, и с 2312 до 2320 для второго.

Если ошибка при запуске

Если при запуске сервера появилась ошибка, что на ПК отсутствует VCOMP120.dll:


XAPOFX1_5.dll
x3daudio1_7.dll

Материал любезно взят (и заметно доработан) с Заметки системного администратора

Альтернативный UpDate (апдейтер) файл для сервера ArmA III

Альтернативный вариант по отношению к Update.bat , но помним что он под Windows, и идёт в формате .cmd

Что бы не путаться по первости, и для порядка, рекомендую назвать Arma3_Steam_Updater
Код здесь:

Файл, можно просто скачать и вписать туда в 4 строке свои ЛОГИН ПАРОЛЬ.
Открываем блокнотом или NotePad++, или Visual Studio Code
Последний, кстати, при попытке сохранить файл в формате SQF предложит закачать библиотеку SQF команд. Что очень удобно!

Вложения по данной теме (если кто-то пропустил ссылки в тексте):

Additional Info

Useful Links

Further Reading
Tools
Useful Addons
    (AI Skill setting addon) (Inject server information to all missions automatically

File Locations

Some files are automatically created when you use certain commandline parameters Some files have to be created manually. If you have followed the instructions accurately, you will now have the following files and directories in addition to the clean install

  • D:\Games\Arma3\A3Master\ Users\Administrator\Administrator.Arma3Profile(Difficulty settings)
  • D:\Games\Arma3\A3Master\ Users\Administrator\Administrator.vars.Arma3Profile(Some binarised content which you cannot edit)
  • D:\Games\Arma3\A3Master\ Users\Administrator\Arma3.cfg(Bandwidth settings)
  • D:\Games\Arma3\A3Master\ MPMissions\(This is where custom made mission.pbo's need to be placed)
  • D:\Games\Arma3\A3Master\ arma3.rpt(Debug Log, automatically created every time the arma3server.exe is started)
  • D:\Games\Arma3\A3Master\ CONFIG_server.cfg(Manually created)
  • D:\Games\ArmA3\A3Files\ Arma3server_steamcmd_example.cmd(Manually created)
  • D:\Apps\Steam\

Port Forwarding

Arma 3 uses the same default ports as Arma 2 with the addition of several ports. So if you intend running A2 and A3 servers on the same machine, you need to edit the ports used. Default ports are all UDP and as follows:

  • 2302 (default Arma 3 Game port) + (VON is now part of main gameport due to NAT issues)
  • 2303 (STEAM query, +1)
  • 2304 (Steam port, +2)
  • 2305 (VON port, +3 - not used atm. but allocated)
  • 2306 (BattlEye traffic, +4)

To define the ArmA3 Game port used, state -port= **** in your command line arguments (Where **** is the new initial Arma 3 Game, e.g 2302)

and to define your Steam ports add the following lines to your CONFIG_server.cfg (editing the actual port numbers as required)

STEAM ports are now linked to game-port as +1 for query and +2 to-master.

If you are running multiple servers, i would suggest the following format

2302 UDP (gameport + VON)
2303 UDP (STEAM query port)
2304 UDP (STEAM master port)
2305 UDP (VON reserved port but not used atm.)
2306 UDP (BattlEye traffic port)
so open ports 2302-2306
. and leave at least 100 ports between the next 2 nd server set

2402 UDP (gameport + VON)
2403 UDP (STEAM query port)
2404 UDP (STEAM master port)
2405 UDP (VON reserved port but not used atm.)
2406 UDP (BattlEye traffic port)
so open ports 2402-2406
and leave at least 100 ports between the next 3 rd server set, etc.

NAT traversal

UPnP allows you to automatically create port forwarding on your router to bypass NAT (UPnP enabled routers are required). The functionality can be easily enabled in server config as described in the server.cfg page.

Configuring for stable or Dev branch

Edit the Arma3server_steamcmd_example.cmd as defined below then run it

  • To select Development version
  • To select stable build (Dedicated server package)
  • To select stable build (Full client\server package)

Since 12 th March 2013 the development branch and the stable branch versions are no longer compatible. This means:

  • Only DEV clients can connect to a DEV server
  • Only Stable clients can connect to stable servers

Advanced Configuration

This article is a Stub. You can help BI Community Wiki by expanding it .

Bandwidth Optimisation

This article is a Stub. You can help BI Community Wiki by expanding it .

Multiple Server configuration

There are various methods available to run multiple Dedicated Arma 3 servers on the same box. Each server instance requires:

  • Its own unique set of ports
  • Its own profile
  • Its own config

This post explains it more in depth.

Each method has some pro's and cons To select the preferred methodology that suits your requirements you need to have considered the following

  • The useage of the "Keys" folder
  • The useage of the "MpMissions" folder
  • Available Hard drive space
  • Update management
METHOD 1

see THIS POST for more detailed information This is copy of the master install into a different directory As may times as you have space for

  • Most robust
  • Unique MpMissions folder
  • Unique "keys" folder
  • Allows ability to run seperate instances of different branches of the game, (E.g Dev or Stable)
  • Uses more drive space
  • Requires more effort to create and automate the updating process
METHOD 2

This uses 1 master install folder and has renamed arma3server.exe's in sub folders of the master see THIS POST for more detailed information

Pros (Compared to Method 1)

  • Uses less space than Method 1
  • Updating will be easier

Cons (Compared to Method 1)

  • Not very robust
  • Shares MPMissions folders with all the other exe's (Will create a very cluttered MpMissions folder and allows admins to select addon required missions for a mod this server instance isn't running
  • Shares "keys" folder with all other exe's (This can cause an issue when running various differing -mod servers)
  • Will not allow you to run seperate instances of different branches of the game
METHOD 3

This is a hybrid of method 1, in that it is essentially a "Virtual" copy of the master install in a different directory the difference being that many folders are sim linked to the initial Master directory simlink GUI:

Pros (Compared to Method 1)

  • Uses less drive space (As you wont have multiple copies of the addons folder)
  • Allows for unique MpMissions folder if desired
  • Allows for unique "keys" folder if desired
  • Updating will be easier

Cons (Compared to Method 1)

  • Requires more effort to initially create the simlinks and directories
  • Will not allow you to run seperate instances of different branches of the game at the same time, (E.g Dev or Stable)

For example, on Linux, if you initially have the following folder layout:

Instead of copying the folders as directed in METHOD 1, run the following commands:

Then proceed with the rest of the instructions in METHOD 1.

METHOD 4

You can of course mix and match all 3 previous methods to suit your specific requirements.

Dedicated Server & Client configuration

In order for the Arma 3 server to be able to connect to the Steam servers, the Arma 3 server has to be ping-able (ICMP 8 - Echo Reply) as well as opened TCP/UDP ports.

The only known issue, is to make sure you start the server up before you start the steam client Failing to do this causes steam port issues and your client will not be able to connect to the server

Headless Client

This article is a Stub. You can help BI Community Wiki by expanding it .


A Headless Client can be used by missions to offload AI processing to a dedicated client, freeing up the dedicated server process from most AI processing. Thus more AI units can be spawned and the server process will be able to dedicate most of it is processing towards communication with the clients. For a Headless Client/Dedicated Server to function together efficiently, they both need to be connected to each other via extremely low latency and high bandwidth. Effectively, they need to be on the same LAN at least, but preferably running on the same computer.

Setup and Execution
  • Headless Client for ARMA 3 requires a valid active Steam account logged in to function (see Dwarden's post)
  • A Headless Client is simply Arma3.exe run from the command line with parameters, for example:

In the example above, the headless client is running on the same host as the dedicated server. It uses a profile called HC and connects to the server with a password as required by the server (the password is for password protected servers, optional). The server in this example is running on port 2444, alter this to the port of your server.

  • The Headless Client profile needs to be created like any other profile in Arma 3 (Note: It is best if you name this profile HC)

No configuration of the profile is necessary, but after creation, edit HC.Arma3Profile located in C:\Users\yourusername\Documents\Arma 3 - Other Profiles\HC and add this line:

Alternatively, you can use the full Arma 3 client to connect to any multiplayer server with BattlEye enabled and accept the BattlEye License Agreement, which will do the same thing as manually editing HC.Arma3Profile.

Once the profile is ready, copy the profile directory to C:\Users\yourusername\Documents\Arma 3 - Other Profiles on the server (if the profile was not created on the server). If the profile was created on the server or is not going to run on the server and is already on the computer it is going to run on, then it is ready to go.

  • If the Headless Client is on the server, the server's cfg must have the local loopback address as seen below (e.g. A3Server.cfg):

Dwarden suggests that battleyeLicense=1; be in the server's config, but it is unclear whether this is actually necessary. (Dwarden's post).

  • If the Headless Client is running in the same network or the same computer, the server's config has to have the address in localClient[]=x.x.x.x.

This will allow the server to communicate with the Headless Client using unrestricted bandwidth. It is also required to add the adress to headlessClients[]=;. Multiple headless clients at different addresses can be added:

Headless Client on a Dedicated Server Notes

If the Arma 3 Headless Client and an Arma 3: Dedicated Server are running on the same Windows computer (VM or physical), it may be beneficial to set processor affinity to prevent execution intensive threads from being scheduled across the same (v)CPUs. The operating system will generally schedule threads efficiently, but manual CPU allocation is possible. This can be achieved by right-clicking on the process (e.g. Arma3Server.exe(*32)) in the processes tab of the Windows Task Manager and selecting Set Affinity. . Be aware that on a physical intel CPU, the odd numbered CPUs are Hyper-thread cores.

Note: You can use automated solution for affinity assign via batch file with commandline CMD /AFFINITY HEXvalue e.g. CMD /C START /AFFINITY 0xF3 arma3server.exe

It has been observed that although the ARMA server and client processes will kick off multiple threads, the bulk of processing is used up by only one or two threads. For example, spawning 50 AI units does not generate 50 threads. There is one thread in the process that handles all of the AI units, irrespective of how many have been spawned. In this way, the ARMA server and client processes do not make maximal use of the processing capability found in modern processors and so AI counts do not scale easily. As such, faster CPU core speed is king and offloading the AI to multiple headless clients on the same computer will probably produce the best possible results for complex missions involving many AI units (albeit an expensive way to get the results).

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