Jump to content
  • 0

[How To] Set up an Arma 3 Epoch Server on a Client PC


Ghostrider-GRG

Question

Setting up an Epoch for Arma 3 server on your PC.

 

Below is the procedure I have used to set up A3 Epoch servers on my desktop PC. These servers are useful as a test bed when I try out things like the many scripts being released for Epoch. 

 

Updated for Epoch RC 0.3.0.3

 
This How To is based upon the Install.txt provided with the Epoch server files. If your server does not start up you may have missed a step or be lacking essential software.
 
For additional information, please refer to the Epoch developer's Wiki which provides considerable additional information.

http://epochmod.gamepedia.com/A3Epoch:Arma_3_Epoch#Server_Setup_.26_Information

 

For an excellent guide on troubleshooting, refer to the FAQ at

 

For another take on this How To, which provides a more comprehensive discussion of the different things you need to consider for server setup.

 

What you will need:
 
A good text editor like Notepad ++ (freeware)

Visual C++ Redistributable Packages for Visual Studio 2013:
http://www.microsoft.com/en-us/download/details.aspx?id=40784

 

 

30 min
a bit of patience.

Stage I: create a server directory and add all needed files to your server directory.
 
 
1) Create a new directory on the disk you wish  to use for your server.  Mine is on an SSD drive E:
Lets call it: E:\Arma3Server for this tutorial.

2) Open your ..Steam\SteamApps\Common\Arma3 directory. Mine happens to be in E:\Steam\SteamApps\Common\Arma3.

3) Copy everything from that directory to your new server directory E:\Arma3Server.

4) Download Epoch Mod from here http://epochmod.com/download.php. Unpack the .rar file.

5) Copy @Epoch to your new server directory E:\Arma3Server.

6) Download the Epoch Server files https://github.com/EpochModTeam/Epoch/tree/master/Server_Install_Pack.

7) Extract the archive, and copy all files and folders in it to your E:\Arma3Server directory.
 
Stage II: Adjust the settings for your database:
8) Open the DB folder of your E:\Arma3Server directory.

9) Open redis.conf using Notepad ++ or another text editor. It will look like this.
 

bind 127.0.0.1
maxmemory 4gb
save 900 1
save 300 10
save 60 1000
requirepass Changeme9832

10) Change Changeme9832 in the "requirepass" field to a password you wish to use for your database server such as client321.

11) In your E:\Arma3Server folder, find and open @EpochHive.

12) Open EpochServer.ini using Notepad++. In it there will be a section titled [Redis] which looks like this:
 

[Redis]
IP = 127.0.0.1
Port = 6379
DB = 0
Password = foobared

13) now change the password to the one you set above for redis.conf, which for this example was client321.
 
Stage III: Complete configuration of Epoch Server Settings.
14) Next, in EpochHive.ini you need to specify the path to be used when starting the battleye on the serverside. Look for the following section:
 

[EpochServer]
BattlEyePath = C:\BattlEye
InstanceID = NA123

Change the BattlEyePath to the one appropriate for your server.  In our example, this would be E:\Arma3Server\SC\BattlEye
Now save and close EpochHive.
 
Stage IV: Configuring Automatic Restarts and other related issues.

 

In the past automatic restarts have usually been accomplished using BEC, a freeware tool. For reasons outside the scope of this how-to, development and support of BEC was discontinued and Epoch has been moving to integrated Battleye in various ways including providing functions for automatic restarts. If you wish to use BEC, you can download it using the link below:

 

http://www.armaholic.com/page.php?id=15716

 

In order to run BEC, you will need to redirect its efforts to phone home. Instructions on how to do so are listed in the post by Dwarfer in this thread.

 

 

You will also need to set the correct path to your Arma3Server\SC\Battleye folder in the configuration file for BEC which normally would be:  Arma3Server\BEC\Config\Config.cfg.

 

BEC does still provide valuable functionality such as the ability to play certain messages periodically, but you can also schedule server restarts or utilize other features if you wish. .

 

Alternatives to BEC for automated server restarts:

Please see the release notes for Epoch 0.3.0.3 for details on  the built in automated server restart functions. The new method for automated server restarts is recommended if you are setting up a new server.

 

To use the built in server restart functions, open @epochhive\epochconfigs.hpp

In the first line, change

 

serverRestart         = false; // true sends #shutdown command to server after the time specified in ForceRestartTime

 

to

 

serverRestart         = true; // true sends #shutdown command to server after the time specified in ForceRestartTime

 
17) Stage V: Create your server startup file.
18) Open a blank document and past the following into it then save it in your E:\Arma3Server directory as something like A3Epoch.bat. Note that if you are using Notepad++, its default is to save files as text files. Select *.* from the drop down menu for choosing the file type before saving you A3Epoch.bat:  Again, the you will need to adjust the paths in this file to suit those for your server.
 

@echo off
start "arma3" "arma3server.exe"  -mod=@Epoch;@EpochHive; -config=E:\Arma3Server\SC\config.cfg  -port=2302 -profiles=SC -cfg=E:\Arma3Server\SC\basic.cfg -name=SC 

 
 
20) Stage VI: Configure BattlEye
 
21) Open the SC\Battleye folder and rename example-BEServer.cfg to BEServer.cfg and change the RConPassword.
22) Create an empty text file and save it as bans.txt in the SC\Battleye folder. Save and close the above configuration files.
 
23) Stage VII: Starting and joining your server.
 
24) In your E:\Arma3Server folder find and open the DB folder then click start-redis.

24) If you will be using BEC, go to your E:\Arma3Server\BEC folder find BEC, and start it.

25) Start Arma 3, select Play, then multiplayer and finally in multiplayer select remote. Enter the IP and port for your server, which in our example is 127.0.0.1:2302.

 

26) Also in your E:\Arma3Server directory should be the A3Epoch file you created above under step 18. Find it and click it.
    When you do, the Arma3server console should open after slight delay, and you should see information including the port number you used above in your A3Epoch startup file.  If you are using BEC, once the   Arma3server is running, BEC should go through a few steps then indicate it has successfully connected to the server.
   
27) You should now be able to join your server.

Link to comment
Share on other sites

Recommended Posts

  • 0

Just to let you know you need BEPath= on your startup line. I know it's definitely needed for dedicated server so client hosting should be the same a presume.

Regards,

Liam

Swiftnode.net

Link to comment
Share on other sites

  • 0

Just to let you know you need BEPath= on your startup line. I know it's definitely needed for dedicated server so client hosting should be the same a presume.

Regards,

Liam

Swiftnode.net

BEPath is not required for dedicated server. Running without out it just fine and no filter edits. 

Link to comment
Share on other sites

  • 0

BEPath is not required for dedicated server. Running without out it just fine and no filter edits. 

 

Thankyou for the correction, Seems that with our clients its needed with TCAdmin as without the path Battleye fails to load, this could be of TCAdmin as it is a pain to run and manage. I know by default is server.cfg Battleye; 1 but for example for BEC to run we have to define the BE path on the command line.

 

 

But I will look into that, thanks for the information.

 

 

 

 

Regards,

 

Liam Benfield

Swiftnode.net

Link to comment
Share on other sites

  • 0

Download from here:

http://epochmod.com/download.php

 

Multiple places you can choose from. This is only for the client files that are need to actually play.

 

Cheers, do I unzip the @Epoch folder into my Arma 3 (server) directory then? So it would be like C:/Arma 3 Server/@Epoch? Because on my gaming computer I opened the @Epoch folder and copied its contents into the Arma 3 folder (so that the addons folders would merge). But now I can only play Epoch xP

 

This is relevant as to where I can find the config folder described in steps 15 and 16. Because I can't find it at the moment.

Link to comment
Share on other sites

  • 0

Cheers, do I unzip the @Epoch folder into my Arma 3 (server) directory then? So it would be like C:/Arma 3 Server/@Epoch? Because on my gaming computer I opened the @Epoch folder and copied its contents into the Arma 3 folder (so that the addons folders would merge). But now I can only play Epoch xP

 

This is relevant as to where I can find the config folder described in steps 15 and 16. Because I can't find it at the moment.

You can unzip it in whatever directory you wish. I unzip it in the directory to which my downloads are saved. You can then copy @Epoch to your C:\Arma 3 Server\ directory.

Link to comment
Share on other sites

  • 0

Cheers, do I unzip the @Epoch folder into my Arma 3 (server) directory then? So it would be like C:/Arma 3 Server/@Epoch? Because on my gaming computer I opened the @Epoch folder and copied its contents into the Arma 3 folder (so that the addons folders would merge). But now I can only play Epoch xP

 

This is relevant as to where I can find the config folder described in steps 15 and 16. Because I can't find it at the moment.

There is a config folder in your C:\Arma 3 Server\BEC directory. I copied this directory to what would be your C:\Arma 3 Server\ directory then started BEC from the C:\Arma 3 Server directory because otherwise BEC did not locate the BattlEye.dll. This probably means I missed a setting somewhere.  Be sure you start BEC before starting the server. if anyone has a solution I will add it to the [How To].

Link to comment
Share on other sites

  • 0

(new install) i was with you till part 16.... i have no cfg file or config folder in the bec directory ...those files are not included in the server files download so i guess i am missing them some how.   any advice on where to get all the bec directory files?

 

 

never mind i found them

http://ibattle.org/downloads/

Latest Bec Version 1.605

Md5 : 9cad0c28ec7d4fdeef251f3014cdaf6e
Sha1 : f1f03691090793c7a746946c8ace4a562f9ff56e

Link to comment
Share on other sites

  • 0

(new install) i was with you till part 16.... i have no cfg file or config folder in the bec directory ...those files are not included in the server files download so i guess i am missing them some how.   any advice on where to get all the bec directory files?

 

 

never mind i found them

http://ibattle.org/downloads/

Latest Bec Version 1.605

Md5 : 9cad0c28ec7d4fdeef251f3014cdaf6e

Sha1 : f1f03691090793c7a746946c8ace4a562f9ff56e

 

Thanks - the How To was edited to include this information.

Link to comment
Share on other sites

  • 0

Go to http://steamidconverter.com

 

 

  • thanks for the quick reply and the nice guide this is the first guide i have found
  • how do i find my guid?  i think with arma 2 i did it with commander but how is this done in arma 3?

 

 

 

Go to http://steamidconverter.comand paste your profile link (eg http://steamcommunity.com/id/45534111233451 or w/e you renamed it to).

Copy the number under "steamID64". Put this in your AH config file as explained above.

 

Have Fun

Link to comment
Share on other sites

  • 0

there a much easier way then using a webpage then using a different webpage to convert it into the guid u need....

 

step 1 open arma 3

step 2 go to config

step 3 go to player profile

step 4 the number is there infront of u......no 3rd party website need.....

 

when i set up my server the number i got from the wensite wouldnt work, sometip tipped me to use my guid not my steamid64 so i went n found it the easiest way i knew

Link to comment
Share on other sites

  • 0
  • how do i find my guid?  i think with arma 2 i did it with commander but how is this done in arma 3?

 

One you have your server up and running you can find your GUID in the dedicated server window/log. It would say "exmoonshiner has joined (GUID: 14361346161461123)" or similar. There is perhaps a better way too, but at least I tried to help :P

Link to comment
Share on other sites

  • 0

Now I am stuck at the BEC thing. I'm pretty sure I've done the config file correctly, but as soon as it starts to connect it just says:

 

21:46:17 : Connecting to BattlEye server 127.0.0.1:2302

21:46:17 : Lost Connection!
21:46:17 : Closing socket & exiting!

 

Any clues what could be wrong? Did I mess up my port forwarding or something?

 

EDIT: I have made a reporter account and put in the right username/password.

 

EDIT2: Any guide for scheduler.xml ? :)

Link to comment
Share on other sites

  • 0

18:51:38 : Unexpected error :: Something strange happen when trying to connect to BeServer
19:56:09 : Unexpected error :: Something strange happen when trying to connect to BeServer

  bec seems to force close its self .... but the server is showing on lan my game just freezes when it gets to the part where it should download the mission file any idea what i could check to correct this or should i try another reinstall?

Link to comment
Share on other sites

  • 0

Now I am stuck at the BEC thing. I'm pretty sure I've done the config file correctly, but as soon as it starts to connect it just says:

 

21:46:17 : Connecting to BattlEye server 127.0.0.1:2302

21:46:17 : Lost Connection!

21:46:17 : Closing socket & exiting!

 

Any clues what could be wrong? Did I mess up my port forwarding or something?

 

EDIT: I have made a reporter account and put in the right username/password.

 

EDIT2: Any guide for scheduler.xml ? :)

Here is a link to a guide. http://www.ibattle.org/install-and-configure/setting-up-the-scheduler/

 

My Scheduler.xml appears below.  Feel free to use or adapt as you like.

 

 

<Scheduler>

    <job id='0'>

        <day>1,2,3,4,5,6,7</day>

        <start>000200</start>

        <runtime>000000</runtime>

        <loop>0</loop>

        <cmd>say -1 Server Up for 2 min, BEC is Running</cmd>

    </job>

    <job id='1'>

        <day>1,2,3,4,5,6,7</day>

        <start>000300</start>

        <runtime>001500</runtime>

        <loop>-1</loop>

        <cmd>say -1 Website: yourwebsitehere | Teamspeak:  yourTeamspeakHere</cmd>

    </job>    

    <job id='2'>

        <day>1,2,3,4,5,6,7</day>

        <start>000310</start>

        <runtime>001500</runtime>

        <loop>-1</loop>

        <cmd>say -1 The server restarts every 4 hours with several warnings</cmd>

    </job>    

    <job id='3'>

        <day>1,2,3,4,5,6,7</day>

        <start>035000</start>

        <runtime>000000</runtime>

        <loop>0</loop>

        <cmd>say -1 Server will restart in 10 min</cmd>

    </job>    

    <job id='4'>

        <day>1,2,3,4,5,6,7</day>

        <start>035500</start>

        <runtime>000000</runtime>

        <loop>0</loop>

        <cmd>say -1 Server will restart in 5 min</cmd>

    </job>    

    <job id='5'>

        <day>1,2,3,4,5,6,7</day>

        <start>035900</start>

        <runtime>000000</runtime>

        <loop>0</loop>

        <cmd>say -1 Server will restart in 1 min</cmd>

    </job>    

        <!-- RESTART SERVER -->

    <job id='6'>

        <day>1,2,3,4,5,6,7</day>

        <start>040000</start>

        <runtime>000000</runtime>

        <loop>0</loop>

               <cmd>#shutdown</cmd>    

               <cmdtype>0</cmdtype>  

    </job>    

</Scheduler>

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...