REQUIREMENTS
On your remote server:
Server files - if you don't have them, ask around. We won't provide them to you.
libgl1-mesa-dev - Mesa OpenGL libraries
WINE - preferably newest version you can get
Xvfb - framebuffer emulator. This utility will allow you to run GUI applications on your headless server.
x11vnc - VNC server. Thanks to this utility, you will be able to interact with GUI applications on your remote server using a VNC client.
winetricks - required to easily download and install some required libraries
On your local machine:
VNC client. On Linux you can use gvncviever, on Windows tightvnc.
Setting up server
1. Download server files and extract them:
- Code: Select all
wget <link to server files>
unrar x BFBC2_Server_R32_Full.rar
Then go to your extracted directory:
- Code: Select all
cd BFBC2_Server_R32_Full
2. Make sure you have the lastest server hook (dinput8.dll) in your game/server directory. Look on the forums or ask on #emulatornexus IRC channel.
3. Install dinput8:
- Code: Select all
winetricks dinput8
Alternatively, you can rename dinput8.dll to xinput1_3.dll
4. Start Xvfb
- Code: Select all
Xvfb :1 -screen 0 800x600x16 &
5. If it's the first time you are running the VNC server you need to generate a new password:
- Code: Select all
x11vnc -storepasswd
6. Now you can start your VNC server
- Code: Select all
x11vnc -display :1 -bg -forever -rfbauth ~/.vnc/passwd
7. Set your DISPLAY environment variable
- Code: Select all
export DISPLAY=:1
8. Conect to your VNC server and install Visual C++ runtime libraries:
- Code: Select all
winetricks vcrun2005
winetricks vcrun2008
winetricks vcrun2010
9. Modify your server options in /Instance/ServerOptions.ini
MAKE SURE TO CHANGE YOUR ADMIN PASSWORD!
10. And finally, start your server
- Code: Select all
wine Frost.Game.Main_Win32_Final.exe -serverInstancePath "Instance/" -mapPack2Enabled 1 -port 19567 -timeStampLogNames -region OC -heartBeatInterval 20000
Known problems
1. The server cannot be normally shut down once started, so it's best to run it in a screen session. When you want to shut it down, just kill its process:
- Code: Select all
kill -9 `ps x | grep Frost | grep -v grep | gawk '{print $1}'`
2. The server crashes sometimes. You can verify wether it's working or not by checking your VNC server.
Alternatively, you can make your server not display any errors, by adding the following parameteers to your startup command:
- Code: Select all
-displayErrors 0 -displayAsserts 0
If you do this, remember, that this doesn't prevent the errors from happening. It just hides them. Keep that in mind, especially if you run into some problems with your server.
3. Failed to use ICMP (network ping), this requires special permissions.
This happens if you are running the server on a limited (non-root) account. To solve it, type:
- Code: Select all
sudo setcap cap_net_raw+epi /usr/bin/wine-preloader
More information can be found here:
http://wiki.winehq.org/FAQ#head-acdec64 ... 02576e6a63
Thanks to Vaques for letting me know about it!
Useful links
Getting procon to work 24/7 on Linux
Configuring your server
Where to look for server files
Where to find the latest hook (Download section)

