How to install, configure and run a dedicated America's Army Linux server.

Apr 13, 2007 13:39 GMT  ·  By

America's Army is a tactical multiplayer first-person shooter owned by the U.S. Government and released as a global public relations initiative to help with U.S. Army recruitment. Its popularity increased due to the cross-platform availability and cost (it's free). Basically, you can run the server as well as the client on either Windows or Linux, free of charge. But unfortunately, the Linux version has been discontinued as of version 2.5, while the Windows version has reached 2.8.1 (at the time this article was written).

This article explains how to install the America's Army Linux server on a generic Linux system so it _should_ work for most distributions. Before starting the install process, you must ensure that your system meets the game's minimal requirements. You also must ensure the following ports are not blocked. Moreover, if your system is behind a router (NAT) with no external IP address, ask the router's administrator to forward these ports to your LAN IP. -UDP 1716, 1717, 1718, 8777, 27900 -TCP 14200, 20025-45, 20046, 20047, 20048, 28910

INSTALATION

Either initiate a SSH connection to the remote server or, if you're in front of it, open a terminal and type (as a normal user, running the server as root is not recommended):

code
$ wget http://treefort.icculus.org/armyops/americasarmy-lnxded-281.tar.bz2
Uncompress the archive by running the following command. A new directory called aops-lnxded-2.8.1 will be created:
code
$ bzip2 -cd americasarmy-lnxded-281.tar.bz2 | tar xf -
CD to the System directory inside the newly created one:
code
# cd aops-lnxded-2.8.1/System

CONFIGURATION

Here, you'll find the configuration file that holds the basic server settings that can safely be changed in order to have the server listed on the AA in-game browser. Most of them are self-explanatory so I won't explain them all. In the System directory, open the file server.ini in your favorite text editor and modify the following settings so it suits your needs and likings:

[Engine.GameReplicationInfo] ServerName=Your Name for the Server ShortServerName=YN-SRV AdminName=Your name AdminEmail=Your email

[Engine.AccessControl] AdminPassword=Password used to connect to the server as an administrator GamePassword=Password required to join the server PlayerAdmin=Username of the player who will have admin abilities PlayerAdmin=A second admin player. Add more lines for more admins

[IpDrv.GameSpyQR] IP=Enter the external IP if your server has two or more interfaces

[DBAuth.DBAuth] GameServerIP=Your external Internet IP again

Save the file

ACTIVATE PunkBuster

Change directory to System/pb and using a text editor, create the file pbsvgame.cfg. Then add the following line to it:

sv_punkbuster 1

START THE SERVER

Change directory back to System/ and run:

code
$ screen
$ ./server-bin ServerType MapName -nohomedir ini=server.ini log=LogName
..where ServerType can be GLOBAL or LAN MapName can be any map name (Border.aao, HQ_Raid.aao etc) LogName can be anything you want the log file to be named.

So, starting a server in Internet mode will be possible with the command:

code
$ ./server-bin GLOBAL Border.aao -nohomedir ini=server.ini log=aao.log
Congratulations, you now have a working AA server!