Battlefield 2142 is a first person futuristic military action game. Battlefield 2142 cannot be run in Ranked mode if you host it yourself. Only authorized server host companies can offer ranked servers. The dedicated server component can be run as a Windows Service using FireDaemon Pro, which allows you to have the dedicated server start automatically at boot prior to login, start multiple instances of the dedicated server and more. This HOWTO will show you how to set it up. You can also use FireDaemon Fusion to manage FireDaemon and other Windows services via a web browser.
Battlefield 2142 Dedicated Server Setup Under FireDaemon
First download and install the latest Battlefield 2142 Windows Server Setup file from here. The download is large (> 100 MB).
Install the dedicated server files into the directory of your choice, typically C:\Program Files\Electronic Arts\Battlefield 2142 Server. Make sure to also install PunkBuster if you're planning to run a public server.
Run the installer and configure your server to suit your preferences. You can also edit the configuration files to suit you preferences. Find two sample configuration files at the end of this HOWTO.
Download and install FireDaemon Pro into the directory of your choice, typically C:\Program Files\FireDaemon.
Next start the FireDaemon GUI from the desktop shortcut. Click on the "Create a new service definition" button in the toolbar (or type Ctrl+N) and enter the information into the fields as you see below. Adjust the paths to suit your installation. Note the required parameters.
The most important field on the tab is the Parameters. The Parameters define the initial setup of your server.
Here’s the full parameter list you should have:
+config "C:\Users\YOURUSERNAME\Documents\Battlefield 2142\ServerConfigs\_serverSettings.con" +maplist "C:\Users\YOURUSERNAME\Documents\Battlefield 2142\ServerConfigs\_mapList.con"
(+config and +maplist go on the same line)
- "+config” Loads the server config that you generated in "BF2142ServerLauncher.exe". Replace "YOURUSERNAME" with the Windows user you are running the server as.
- "+maplist” Loads the map config that you generated in "BF2142ServerLauncher.exe". Replace "YOURUSERNAME" with the Windows user you are running the server as.
Now click on the Settings tab. If you DON'T want to see your dedicated server running, uncheck the Interact with Desktop check box & select "Hidden" from the "Show Window" dropdown. You can optionally run Battlefield 2142 as the user you installed it as. In the Logon Account field type your username (e.g. Administrator) and then enter the user's password twice in the Password and Confirm fields. You can change the Process Priority to allocate more CPU time to the dedicated server or specify which CPU or core the dedicated server will run on (in the case of multi-processor, hyperthreaded or multi-core CPUs).
Now click on the Lifecycle tab. Uncheck Graceful Shutdown as Battlefield 2142 Server doesn't respond to it.
Now click OK to finish setup and start your Battlefield 2142 server!
Example Configuration Files
You can generate your own configurations from "BF2142ServerLauncher.exe" in the directory you installed the server to. Do not launch the server with the server launcher though. Just use it to generate configs.
Important: If you want your server to be viewed online, you must have the Internet box checked (or sv.internet 1 in ServerSettings.con).
When creating configs with the "BF2142ServerLauncher.exe", you need to create a new config to edit settings. Edited configs can be found in the follow directory: "C:\Users\YOURUSERNAME\Documents\Battlefield 2142\ServerConfigs" (where YOURUSERNAME is the username of the user running the server)
Below is an example ServerSettings.con file:
sv.serverName "Battlefield 2142 Unranked Server" sv.password "" sv.internet 1 sv.bandwidthChoke 0 sv.serverIP "" sv.serverPort 17567 sv.welcomeMessage "" sv.punkBuster 0 sv.allowFreeCam 0 sv.allowExternalViews 1 sv.allowNoseCam 1 sv.hitIndicator 1 sv.maxPlayers 64 sv.numPlayersNeededToStart 1 sv.notEnoughPlayersRestartDelay 15 sv.startDelay 15 sv.endDelay 15 sv.spawnTime 15 sv.manDownTime 15 sv.endOfRoundDelay 3 sv.ticketRatio 100 sv.roundsPerMap 3 sv.timeLimit 0 sv.scoreLimit 0 sv.soldierFriendlyFire 100 sv.vehicleFriendlyFire 100 sv.soldierSplashFriendlyFire 100 sv.vehicleSplashFriendlyFire 100 sv.tkPunishEnabled 1 sv.tkNumPunishToKick 3 sv.tkPunishByDefault 0 sv.votingEnabled 1 sv.voteTime 90 sv.minPlayersForVoting 2 sv.gameSpyPort 29900 sv.allowNATNegotiation 0 sv.interfaceIP "" sv.autoRecord 0 sv.demoIndexURL [URL]http://[/URL] sv.demoDownloadURL [URL]http://[/URL] sv.autoDemoHook "adminutils/demo/rotate_demo.exe" sv.demoQuality 1 sv.adminScript "default" sv.timeBeforeRestartMap 30 sv.autoBalanceTeam 0 sv.teamRatioPercent 100 sv.voipEnabled 1 sv.voipQuality 3 sv.voipServerRemote 0 sv.voipServerRemoteIP "" sv.voipServerPort 55125 sv.voipBFClientPort 55123 sv.voipBFServerPort 55124 sv.voipSharedPassword "" sv.useGlobalRank 1 sv.useGlobalUnlocks 1 sv.minUnlockLevel 0 sv.maxUnlockLevel -1 sv.sponsorText "" sv.sponsorLogoURL "" sv.communityLogoURL "" sv.customMapURL "" sv.radioSpamInterval 6 sv.radioMaxSpamFlagCount 6 sv.radioBlockedDurationTime 30 sv.maxRank 0 sv.botSkill 0.5 sv.allowSpectators 0 sv.allowTitanMovement 1
Below is an example maplist.con:
MapList.append bridge_at_remagen gpm_sl MapList.append verdun gpm_cq MapList.append tunis_harbor gpm_cq MapList.append suez_canal gpm_cq MapList.append sidi_power_plant gpm_cq MapList.append shuhia_taiba gpm_cq MapList.append minsk gpm_cq MapList.append fall_of_berlin gpm_cq MapList.append cerbere_landing gpm_cq MapList.append camp_gibraltar gpm_cq