-
Notifications
You must be signed in to change notification settings - Fork 310
Setup Server
Here you'll learn how to setup your own server, in both windows and linux environments.
Before starting, you should have both life_server and Altis_Life.Altis packaged as a pbo.
You can find it already packaged in our releases tab, or you can pack it using pboManager.
Download extDB3 from Torndeco's Bitbucket repository. Note: extDB3 is required for Altis Life RPG v5.0.0 as of commit 8de51bd.
If you're using a version <=4.4R4, extDB2 can be found here. It comes with both (Windows & Linux) versions. Just replace any mention of extDB3 in this guide with extDB2 and make sure to use the old extDB2-conf.ini format since it differs from extDB3.
Requirements:
- MySQL Server / MariaDB Server (MariaDB is recommended)
- Steam CMD
- vc2015 redist (x86)
- vc2015 redist 64-bit (Only needed if you're running the 64-bit Arma server executable)
Step 1: (Installing MySQL server)
- Download MariaDB server, install it and take note of your root login and password.
- Next, open HeidiSQL (Or MySQL WorkBench, or navicat... Heidi is already installed with MariaDB) and start a new session.
- Once the session has been started, open AltisLife.sql and edit the string 'changeme' to a password of your choice.
CREATE USER IF NOT EXISTS `arma3`@`localhost` IDENTIFIED BY 'changeme';
- Once the password has been changed, go to File > Load SQL File. Then, select the AltisLife.sql file. It'll open a new tab, then, just select the play button.
- Now, refresh it and you'll see a new database in the left, with the name "AltisLife".
Note: If you use MySQL, server version 5.6.5 or higher is required.
Step 2: (Installing Arma 3 Server)
This step is only needed if you don't have the ArmA 3 client already installed, if so, you can use its directory.
- Extract steamcmd to the folder where you want your ArmA 3 server to be installed.
- Now, double click on it, and it'll start to set the environment.
- When it finishes, you'll see a white line starting with "Steam>" in the cmd.
- Now do this:
Steam> login 'steamlogin' 'steampassword' 'steamguardcode'
Steam> app_update 233780 validate
Steam> quit
obs: steamguardcode is optional, and only for accounts with mobile guard enabled.
Example:
Steam> login armalife 123456 qtk4c
Steam> app_update 233780 validate
Steam> quit
Step 3: (Installing needed Mods/Mission)
- After installing your ArmA 3 server, in the folder where you put steamcmd.exe, go: steamapps > common > Arma 3 Server
- Afterwards, create a new folder with the name: @life_server, and inside this folder, another one with called: Addons
- Now, go back to the ArmA 3 Server folder and create one more folder with named: @extDB3
- It should be like this:
Arma 3 Server
├ @life_server
| └ Addons
└ @extDB3
- After this, copy the life_server.pbo to @life_server > Addons folder and the Altis_Life.Altis.pbo to MPMissions folder.
--------------------------------------------------
If you are using 5.0.0+, please note the following:
5.0.0 and future builds have two different SQMs (for both Altis & Tanoa). If you are downloading from the GitHub itself, these are contained within an SQMs
folder, and you must do the following:
- Open
SQMs
folder - Copy SQM for your chosen map
- Move SQM into
Altis_Life.Altis
(orTanoa_Life.Tanoa
etc) - Rename SQM to
mission.sqm
--------------------------------------------------
- And then, open extDB3-vXX.7z and extract @extDB3 and tbbmalloc.dll, in the Windows folder, to your ArmA 3 Server folder.
- It should be like this:
Arma 3 Server
├ @life_server
| └ Addons
| └ life_server.pbo
├ @extDB3
| ├ extdb-conf.ini
| └ extDB3.dll
├ MPMissions
| └ Altis_Life.Altis.pbo
└ tbbmalloc.dll
Step 4: (Configuring extDB3)
- Open the extdb3-conf.ini file (inside the @extDB3 folder)
- Inside it, edit it to resemble this:
[altislife]
IP = MyDatabaseIP
Port = 3306
Username = MyDatabaseLogin
Password = MyDatabasePassword
Database = altislife
Example:
[altislife]
IP = 127.0.0.1
Port = 3306
Username = arma3
Password = 123456
Database = altislife
Obs: Use 127.0.0.1 as IP if the MySQL server shares the same machine with arma3server.
Step 5: (Starting server)
- First, we need to create a batch file. For this, open the notepad, and paste this:
@echo off
echo ==============================
echo Starting the Altis Life Server
echo ==============================
echo.
set svExe=arma3server_x64.exe
set svPort=2302
set svMod=@life_server;@extDB3;
IF not exist "basic.cfg" (
echo ==============================
echo Creating basic.cfg file
echo ==============================
echo.
echo MaxMsgSend = 128; >> basic.cfg
echo MaxSizeGuaranteed = 512; >> basic.cfg
echo MaxSizeNonguaranteed = 256; >> basic.cfg
echo MinBandwidth = 131072; >> basic.cfg
echo MaxBandwidth = 2097152000; >> basic.cfg
echo MinErrorToSend = 0.001; >> basic.cfg
echo MinErrorToSendNear = 0.01; >> basic.cfg
echo MaxCustomFileSize = 1310720; >> basic.cfg
echo class sockets{maxPacketSize = 1400;}; >> basic.cfg
echo adapter=-1; >> basic.cfg
echo 3D_Performance=1; >> basic.cfg
echo Resolution_W=0; >> basic.cfg
echo Resolution_H=0; >> basic.cfg
echo Resolution_Bpp=32; >> basic.cfg
echo terrainGrid=25; >> basic.cfg
echo viewDistance=2000; >> basic.cfg
echo Windowed=0; >> basic.cfg
PING -n 2 127.0.0.1>nul
)
IF not exist "config.cfg" (
echo ==============================
echo Creating config.cfg file
echo ==============================
echo.
echo hostName = "ArmaLife Server -- Altis"; >> config.cfg
echo password = ""; >> config.cfg
echo passwordAdmin = "123456"; >> config.cfg
echo serverCommandPassword = ""; >> config.cfg
echo logFile = ""; >> config.cfg
echo motd[] = { >> config.cfg
echo }; >> config.cfg
echo. >> config.cfg
echo motdInterval = 3; >> config.cfg
echo maxPlayers = 75; >> config.cfg
echo kickduplicate = 1; >> config.cfg
echo verifySignatures = 2; >> config.cfg
echo allowedFilePatching = 0; >> config.cfg
echo requiredSecureId = 0; >> config.cfg
echo voteMissionPlayers = 3; >> config.cfg
echo voteThreshold = 1.5; >> config.cfg
echo disableVoN = 0; >> config.cfg
echo vonCodecQuality = 10; >> config.cfg
echo persistent = 1; >> config.cfg
echo timeStampFormat = "none"; >> config.cfg
echo BattlEye = 1; >> config.cfg
echo. >> config.cfg
echo doubleIdDetected = ""; >> config.cfg
echo onUserConnected = ""; >> config.cfg
echo onUserDisconnected = ""; >> config.cfg
echo onHackedData = ""; >> config.cfg
echo onDifferentData = ""; >> config.cfg
echo onUnsignedData = ""; >> config.cfg
echo regularCheck = ""; >> config.cfg
echo. >> config.cfg
echo class Missions >> config.cfg
echo { >> config.cfg
echo class Mission_1 >> config.cfg
echo { >> config.cfg
echo template = "Altis_Life.Altis"; >> config.cfg
echo difficulty = "regular"; >> config.cfg
echo }; >> config.cfg
echo }; >> config.cfg
PING -n 2 127.0.0.1>nul
)
:folder
set Folder=ServerProfiles
IF not exist %Folder% (
echo ==============================
echo Creating ServerProfiles Folder
echo ==============================
echo.
mkdir %Folder%
PING -n 2 127.0.0.1>nul
)
echo ==============================
echo Server .exe: %svExe%
echo ==============================
echo.
start "" "%svExe%" -cfg=basic.cfg -config=config.cfg -profiles=ServerProfiles -nosound -port=%svPort% -serverMod=%svMod% -autoInit;
PING -n 2 127.0.0.1>nul
echo ==============================
echo Listening to port: %svPort%
echo ==============================
echo.
PING -n 2 127.0.0.1>nul
echo ==============================
echo Mods: %svMod%
echo ==============================
echo.
PING -n 8 127.0.0.1>nul
@exit
- Then, save it as startserver.bat and place it inside your ArmA 3 server folder
- Now, just double click it and the server will start with all the needed mods & config files
Obs: Remember to install the vc2015 redist (x86) before starting the server. Otherwise, you won't be able to connect to the database.
Obs2: The batch creates both config & basic CFGs in the root folder.
Obs3: The RPT logs from the server are saved in the ServerProfiles, inside your ArmA 3 server folder.
-=WIP=-
Altis Life RPG or ArmA RPG Life is developed by AsYetUntitled (prior ArmaLife developers), originally created by TAWTonic.
This website is not affiliated or authorized by Bohemia Interactive a.s. Bohemia Interactive, ARMA, DAYZ and all associated logos and designs are trademarks or registered trademarks of Bohemia Interactive a.s.