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

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?

 

Hey dude, try Step 7. Open the SC/Battleye folder and rename example-BEServer.cfg to BEServer.cfg and change the RConPassword.

 

from this site: 

 

Ghostrider, you might want to add that bit buddy. Only just discovered it myself after a solid few hours tearing my hair out.

 

Not I'm getting kicked by publicvariable restriction #0 but I think that's because it doesn't give me an option to enter a password!! 

 

Cheers,

 

Mick

Link to comment
Share on other sites

  • 0

Hey dude, try Step 7. Open the SC/Battleye folder and rename example-BEServer.cfg to BEServer.cfg and change the RConPassword.

 

from this site: 

 

Ghostrider, you might want to add that bit buddy. Only just discovered it myself after a solid few hours tearing my hair out.

 

Not I'm getting kicked by publicvariable restriction #0 but I think that's because it doesn't give me an option to enter a password!! 

 

Cheers,

 

Mick

 

Thanks Mick, missed that ! I have added this step to the How To. 

Link to comment
Share on other sites

  • 0

Isn't the GUID using the steamID64? If so:

http://steamidconverter.com/

 

I don't believe so. I have been pulling GUIDs from the BEC logs although there may be other ways to find it. Start and join your server on your PC, or any other Epoch for Arma 3 over which you have sufficient Admin rights to access logs.

 

For the server hosted on your PC, assuming you copied BEC into your Arma3Server directory, look for a folder called Log. Open it, and you should find a subfolder called config inside which will be three folders:  BeLog, Chat and Error. Open BeLog and open one of the log files then scan for your player name. Your GUID should be in the same line as your player name.

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 ? :)

 

What is wrong is that, for some reason, BEC is unable to find a BattlEye server. This could be due to an incorrect IP,  port or path somewhere in the configuration. I solved this by installing BEC in the Arma3Server directory itself rather than a BEC subdirectory which, admittedly is kind of a brute force workaround.

Link to comment
Share on other sites

  • 0

Hey dude, try Step 7. Open the SC/Battleye folder and rename example-BEServer.cfg to BEServer.cfg and change the RConPassword.

 

from this site: 

 

Ghostrider, you might want to add that bit buddy. Only just discovered it myself after a solid few hours tearing my hair out.

 

Not I'm getting kicked by publicvariable restriction #0 but I think that's because it doesn't give me an option to enter a password!! 

 

Cheers,

 

Mick

 

Mick - the public variable restriction seems to be related to the update to arma 3 1.36 and a fix should be released with the next patch. See details as they emerge.

Link to comment
Share on other sites

  • 0

What is wrong is that, for some reason, BEC is unable to find a BattlEye server. This could be due to an incorrect IP,  port or path somewhere in the configuration. I solved this by installing BEC in the Arma3Server directory itself rather than a BEC subdirectory which, admittedly is kind of a brute force workaround.

 

I might have fucked up some port forwarding, getting a new router in a few days. Gonna see if that helps :)

 

 

 

Note! For your own security you should not have bec located in your ArmA 2/3 server directory.

 

Source: http://ibattle.org/install-and-configure/install/

Link to comment
Share on other sites

  • 0

When I try to start BEC I keep getting the error : BE Bans file does not exist, create a new Bans.tx in your BePath or Recheck settings. Ive done everything in the guide now twice and get the same result. Any ideas? Thanks

 

Hey dude,

 

I had the same error until I added Bans.txt [don't add BE Bans.txt - it doesn't work] to my <DriveLetter>:\<A3Epochservername here>\SC\BattlEye\ folder. Makes sure you set 'show extensions for known file types' in your windows explorer folder options. Once it was in there, I commented out the:

 

# BeCustomBanFiles = Bans1.txt, file2.txt, file3.txt

 

line in the config.cfg in the <DriveLetter>:\<A3Epochservername here>\Config\ folder.

 

Then that worked a treat.

 

* Tip, set the timeout to 45 seconds or add --dsc to a .bat file

 

ie

start bec.exe --dsc

so that bec doesn't timeout waiting for your Arma3.bat file to finish starting everything [ie the file to run the server]. It makes it wait regardless of timeout.

 

Otherwise it takes too long and Bec doesn't want a bar of it. I've merged my start bec, then start arma3 epoch server bat file. So there is less changing folders and running different things.

 

@ Ghostrider: Cheers for that info dude. Though i wonder how people are making servers with this bug floating around *confused*. Will keep headbutting it though. Just 'coz I'm persistent... errr hard-headed.

 

Catchyas,

 

Mick

Link to comment
Share on other sites

  • 0

When I try to start BEC I keep getting the error : BE Bans file does not exist, create a new Bans.tx in your BePath or Recheck settings. Ive done everything in the guide now twice and get the same result. Any ideas? Thanks

 

In your Arma3Server\SC\BattlEye folder there should be a file named bans-epoch. Just rename it to bans and you should be all set. Alternatively, create an empty text file and save it as bans.txt.

Link to comment
Share on other sites

  • 0

How do I make the server public? I'm running Windows 8.1 and followed all the steps. I can only see it in LAN and not the internet list.

 

Not sure on the answer to this. I really only use these client servers for a test bed when I set up a new server or develop or modify scripts or server configurations.

Link to comment
Share on other sites

  • 0

Be kicks occur when

1. Server PBO and/or hive DLL out of date.

2. Hive DLL can't find BE filters.

3. Incorrect filters. (Use supplied filters)

4. Watchdog not running with BEC.

5. BEC can't find your server.

6. Public variable.text is in read only or inaccessible.

7. BEC/Hive DLL/Watchdog plugin blocked. (WinServer).

All I can think of off the top of my head.

Disable BE and see it all works first. Then check my FAQ in the server install help forum.

Good Luck

Link to comment
Share on other sites

  • 0

well did as this guide told me to.. joing the server give us a kicked by battleye restriction #0 so i doesnt seem to work

 

This is a known bug related in some way to Arma 3 1.36. Try a few times before giving up. Usually, the second time is the charm. If that does not help, try disabling battleye in you Arma3Server\SC\config.cfg file (set the battleye parameter to 0 here).

Link to comment
Share on other sites

  • 0

Would save some disk space (+10GB) to use a arma server install instead off coping the client files.

Also may be worth noticing if you will run the server on the client machine make sure steam is not running before starting the server other wise when you start the client it will say arma is already running.

Thanks for the guide.

Link to comment
Share on other sites

  • 0

Would save some disk space (+10GB) to use a arma server install instead off coping the client files.

Also may be worth noticing if you will run the server on the client machine make sure steam is not running before starting the server other wise when you start the client it will say arma is already running.

Thanks for the guide.

It would save space but if Epoch server files are updated it's nice to have another location to test before going live without altering the same directory your playing in. I always have a clean arma3 install just for testing. You never know if Arma3 server is going to update or the dev's may drop a patch. And what is 10Gb now days??

Link to comment
Share on other sites

  • 0

It would save space but if Epoch server files are updated it's nice to have another location to test before going live without altering the same directory your playing in. I always have a clean arma3 install just for testing. You never know if Arma3 server is going to update or the dev's may drop a patch. And what is 10Gb now days??

I have it on my SSD so yeah less used space would make a difference and you could just as well make multiple copies of the arma server install for testing would even save more space then having multiple copies of the arma client instal.

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...