Battlefield 2 Server aufsetzen

Vorbereitung

Alle Schritte sind so aufgebaut, dass sie nacheinander ausgeführt werden können. Hinweise wie USERNAME muss angepasst werden sind unbedingt zu beachten.

Öffne ein Terminal:

  • Linux: Rechtsklick auf dem Desktop → Terminal öffnen
  • Windows: per SSH mit dem Server verbinden

Falls du dich im Terminal verirrt hast, wechsel zurück in dein Home-Verzeichnis (USERNAME anpassen):

cd /home/USERNAME

32-Bit Abhängigkeiten installieren

Der Battlefield-2-Server ist eine 32-Bit-Anwendung. Deshalb müssen auf einem 64-Bit-System die i386-Bibliotheken nachinstalliert werden.

Zuerst aktivieren wir die 32-Bit-Architektur:

sudo dpkg --add-architecture i386

Paketlisten aktualisieren:

sudo apt-get update

Benötigte 32-Bit-Bibliotheken installieren:

sudo apt-get install build-essential gcc-multilib rpm libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386 libc6:i386
sudo apt-get install libstdc++5 libglib2.0-0:i386

Zusätzliche Komponenten:

  • ASP-Unterstützung (für Server-Webfunktionen):
sudo apt-get install libapache-asp-perl
  • screen wird später benötigt, um den Server im Hintergrund laufen zu lassen:
sudo apt-get install screen

Battlefield 2 Server installieren

Nun laden wir den Battlefield 2 Dedicated Server herunter und installieren ihn.

Installer herunterladen:

wget https://zoneoflife-tbd.de/downloads/bf2_server_install/bf2-linuxded-1.5.3153.0-installer.sh

Ausführungsrechte setzen:

sudo chmod 755 bf2-linuxded-1.5.3153.0-installer.sh

Installer starten:

sudo ./bf2-linuxded-1.5.3153.0-installer.sh

Während der Installation folgende Eingaben machen:

  • accept
  • yes
  • Zielverzeichnis: /home/USERNAME (Das Zielverzeichnis muss /home/USERNAME sein USERNAME anpassen)

Optional: Installer nach erfolgreicher Installation löschen, um Speicherplatz zu sparen (USERNAME anpassen):

sudo rm /home/USERNAME/bf2-linuxded-1.5.3153.0-installer.sh

ccDaemon & Mono

Für die Serververwaltung nutzen wir den ccDaemon. Dieser benötigt Mono als Laufzeitumgebung.

ccDaemon installieren

ccDaemon herunterladen:

wget https://zoneoflife-tbd.de/downloads/bf2_ccD.tar.gz

Archiv entpacken:

sudo tar -xvf bf2_ccD.tar.gz

Dateien in das Battlefield-2-Verzeichnis verschieben (USERNAME anpassen):

sudo mv bf2ccd.exe BDSoft.BF2.Server.dll /home/USERNAME/bf2

Optional: Archiv löschen, um Speicherplatz zu sparen (USERNAME anpassen):

sudo rm /home/USERNAME/bf2_ccD.tar.gz

Mono installieren

Mono herunterladen:

wget https://zoneoflife-tbd.de/downloads/mono.tar.gz

Archiv entpacken:

sudo tar -xvf mono.tar.gz

Installer ausführbar machen:

sudo chmod 755 mono-1.1.12.1_0-installer.bin

Mono installieren:

sudo ./mono-1.1.12.1_0-installer.bin

Installationsdialog:

  • Erste Abfrage: Installation Directory [/opt/mono-1.1.12.1] → leer lassen und Enter drücken
  • Zweite Abfrage: /home/USERNAME/bf2/mono (Der Pfad /home/USERNAME/bf2/mono muss exakt eingegeben werden.)

Optional: Installationsdateien löschen (USERNAME anpassen):

sudo rm /home/USERNAME/mono.tar.gz /home/USERNAME/mono-1.1.12.1_0-installer.bin

ModManager konfigurieren

Der ModManager erweitert den Battlefield-2-Server um Verwaltungs- und Administrationsfunktionen.

ModManager installieren

ModManager herunterladen:

wget https://zoneoflife-tbd.de/downloads/modmanager.tar.gz

Archiv entpacken:

sudo tar -xvf modmanager.tar.gz

Admin-Dateien verschieben (USERNAME anpassen):

sudo mv admin/* /home/USERNAME/bf2/admin/

ModManager-Konfiguration verschieben (USERNAME anpassen):

sudo mv mods/bf2/settings/modmanager.con /home/USERNAME/bf2/mods/bf2/settings/

Optional: entpackte Dateien entfernen. Dazu im Home-Verzeichnis bleiben oder mit cd ~ dorthin wechseln:

sudo rm -R admin mods

Server-IP eintragen

In der ModManager-Konfiguration muss die Server-IP gesetzt werden. (USERNAME anpassen):

sudo nano /home/USERNAME/bf2/mods/bf2/settings/modmanager.con

In Zeile 86 den Eintrag anpassen:

  • mm_rcon.rconIp "0.0.0.0" Trage hier die echte IPv4-Adresse des Servers ein.

Falls die IPv4-Adresse nicht bekannt ist, kann sie wie folgt ermittelt werden:

sudo apt install net-tools
sudo ifconfig

Die Ausgabe zeigt die IPv4- und IPv6-Adresse des Servers an.

Server-Einstellungen anpassen

Auch die Server-IP und das Admin-Skript müssen in den Servereinstellungen gesetzt werden. (USERNAME anpassen):

sudo nano /home/USERNAME/bf2/mods/bf2/settings/serversettings.con
  • sv.serverIP "" → Server-IPv4 eintragen
  • sv.interfaceIP "" → Server-IPv4 eintragen
  • sv.adminScript "default" → ändern zu sv.adminScript "modmanager"

Server starten & verwalten

Der erste Start erstellt die nötigen Konfigurationsdateien

sudo screen -A /home/USERNAME/bf2/mono/bin/mono /home/USERNAME/bf2/bf2ccd.exe -configdaemon
Wichtig: USERNAME anpassen

Du wirst Schritt für Schritt gefragt:

Root Game Folder [/home/username]: → /home/USERNAME/bf2/

Game executable [start.sh]: → leer lassen (ENTER)

Game executable arguments: → leer lassen (ENTER)

Daemon listen IP [0.0.0.0]: → Server-IPv4 eintragen

Daemon listen port [4712]: → leer lassen (ENTER)

Admin Password [Blank to skip]: → Passwort setzen (merken!)

Server in den Hintergrund schicken

Wenn der BF2 Server läuft:

  • Tastenkombination STRG + A + D
  • Du siehst danach z. B.: [detached from 10377.pts-0.servername]

Die angezeigte Nummer ist die Screen-ID. Sie wird benötigt, um die Sitzung wiederzufinden oder zu beenden.

Server beenden (sauber)

  • (10377 = deine gemerkte PID) sudo kill 10377
  • BF2 Server wurde beendet

Screen wiederfinden

Falls Terminal geschlossen wurde:

sudo screen -ls
  • 10377.pts-0.servername (Detached) → Beispiel-Ausgabe:
  • sudo screen -r 10377 → Wieder verbinden

Server normal starten (ab jetzt Standard)

Achtung: Der Parameter -configdaemon darf nur beim ersten Start verwendet werden.

Nach der Ersteinrichtung immer diesen Befehl verwenden (USERNAME anpassen):

sudo screen -A /home/USERNAME/bf2/mono/bin/mono /home/USERNAME/bf2/bf2ccd.exe

Ab jetzt darf -configdaemon nicht mehr verwendet werden.

Seitenanfang