Installation,Konfiguration & StartscripteInstallation herunterladen und ausführenHinweis: Es ist wichtig, dass ihr alle hier beschriebenen Schritte als root ausführt werden. Erst wenn der Server gestartet wird, muss ein neuer Benutzer verwendet werden. Zuerst erstellen wir einen Ordner, den wir als Lagerpunkt für unsere Downloads verwenden. mkdir /root/bf2142_downloads cd /root/bf2124_downloads EA bietet einen FTP-Server an, unter dem man grö?ere Downloads wie z. B. Gameserver runterladen kann. Von dort holen wir uns jetzt über wget den aktuellen Server (v1.40), entpacken direkt die Zip-Datei und führen das Setup aus. Seit Version 1.4 ist die Installation in ein RAR-Archiv gepackt. Wir brauchen also ein Unrar-Tool, das wir bei Debian direkt über apt-get installieren können. apt-get update apt-get install unrar wget http://largedownloads.ea.com/pub/patches/BF2142/1.40/bf2142-linuxded-1.09.79.0-installer.rar unrar e ./bf2142-linuxded-1.09.79.0-installer.rar chmod 777 ./bf2142-linuxded-1.09.79.0-installer.sh ./bf2142-linuxded-1.09.79.0-installer.sh Nun muss noch der Installationspfad angegeben werden. Hier verwendet ihr bitte /home Der Server wird dann automatisch in das Unterverzeichnis /home/bf2142 installiert. Benutzer für den Server anlegenIhr solltet aus Sicherheitsgründen den Gameserver niemals als root starten. Stattdessen erstellt ihr den neuen Benutzer bf2142 adduser bf2142 und verwendet bitte nicht das gleiche Passwort wie der root Benutzer. Nun gebt ihr dem neuen Benutzer noch die Rechte auf das Verzeichnis des Gameservers. chown bf2142:bf2142 -R /home/bf2142 Server konfigurierenWichtig: Alle nun folgenden Konfigurationen bitte mit dem Benutzer bf2142 ausführen! Im Verzeichnis /home/bf2142/mods/bf2142/settings befinden sich die zwei zu ändernden Dateien. Dabei handelt es sich um die maplist.con, in der die Liste der Maps mit Gamemode und Grö?e eingetragen werden und die serversettings.con, in der ihr die Einstellungen des Servers vornehmen könnt.
serversettings.conZuerst bearbeiten wir die serversettings.con mit einem lokalen Texteditor oder alternativ mit nano /home/bf2142/mods/bf2142/settings/serversettings.con Eine genaue Beschreibung der einzelnen Einstellungen findet ihr hier. Folgende Einstellungen müssen aber auf jeden Fall gemacht werden. sv.internet 1 //Damit der Server im Internet erreichbar ist sv.serverIP "xxx.xxx.xxx.xxx" //Hier kommt die IP-Adresse des Servers hin sv.serverPort 17567 //Ich würde hier den Standard nehmen, aber ihr könnt auch einen anderen Port verwenden sv.interfaceIP "xxx.xxx.xxx.xxx" //Hier muss die selbe IP wie bei sv.serverIP hin sv.friendlyFireWithMines 0 // Diese Einstellung fehlt in der Datei. Ihr könnte sie ganz unten in einer neuen Zeile hinzufügen Bitte nicht die Kommentare mit in die Datei übernehmen.
maplist.conDie Datei könnt ihr wie auch die serversettings.con entweder mit einem lokalen Texteditor oder mit nano /home/bf2142/mods/bf2142/settings/maplist.con bearbeiten. Hier kommen alle Maps rein, die in den Mapzyklus sollen. Dabei ist folgendes Format zu beachten: mapList.append kartenname modus grö?e z.B. mapList.append camp_gibraltar gpm_cq 32 Dabei ist zu beachten, dass Kartennamen immer klein geschrieben und Leerzeichen durch einen Unterstrich ersetzt werden. Wichtig ist auch, dass ihr die Gro?- und Kleinschreibung der Befehle beachtet (mapList.append). Ihr könnt die möglichen Modi und Grö?en für die Maps in der Descriptions-Datei nachlesen. Diese ist unter folgendem Pfad zu finden: /home/bf2142/mods/bf2142/levels/<mapname>/info/<mapname>.desc z. B. /home/bf2142/mods/bf2142/levels/camp_gibraltar/info/camp_gibraltar.desc Diese Datei ist im XML-Format aufgebaut. Hier mal als Beispiel die Description-Datei von der Map Camp Gibraltar: <map>
<name> Camp_Gibraltar </name>
<briefing locid="LOADINGSCREEN_MAPDESCRIPTION_Camp_Gibraltar">map description for modders maps not localized (english only)</briefing>
<music> sound/music/Camp_Gibraltar.ogg </music>
<modes>
<mode type="gpm_cq">
<maptype players="16" type="headon" locid="GAMEMODE_DESCRIPTION_assault">Unlocalized test for this mode on this map</maptype>
<maptype players="32" type="headon" locid="GAMEMODE_DESCRIPTION_assault">Unlocalized test for this mode on this map</maptype>
</mode>
</modes>
</map>
Unter <mode type="gpm_cq" findet ihr immer die möglichen Game-Modes. Es gibt insgesamt vier verschiedene Game-Modes: - gpm_cq -> Conquest - gpm_ti -> Titan - gpm_coop -> Coop (mit Bots) - gpm_sl -> Angriff (SupplyLine) Unter <maptype players="16" könnt ihr die möglichen Kartengrö?en nachlesen. Es ist übrigens egal, wieviele maximale Spieler ihr eingestellt habt. 64 Spieler können auch auf einer 16er Map zocken und umgekehrt. Server startenDen Server startet man mit der start.sh, die sich im Installationsverzeichnis des Servers befindet (/home/bf2142). Wechselt nun in dieses Verzeichnis mit cd /home/bf2142 Nun könnt ihr den Server wie folgt starten: ./start.sh +provider "www.tla-clan.eu" +region "de" +type=1 - provider -> hier könnt ihr z. B. die URL euer Homepage angeben - region -> de sigalisiert, dass der Server aus Deutschland kommt - type -> hier muss unbedingt der Wert 1 stehen, da der Server sonst im LAN-Modus, also nur lokal, läuft. Jetzt haben wir aber folgendes Problem. Wenn ihr euch vom Root-Server disconnectet dann wird der Gameserver mit beendet. Deswegen legen wir den Prozess mit screen in den Hintergrund und geben ihm den Namen bf2142, damit wir ihn auch wieder ansprechen können: screen -A -m -d -S bf2142 ./start.sh +provider "www.tla-clan.eu" +region "de" +type=1 Mit screen -r bf2142 können wir uns den Prozess wieder in den Vordergrund holen und mit der Tastenkombination Strg + a + d wieder in den Hintergrund legen. Mit Strg + c kann man den Server beenden. Um nicht ständig so lange Befehle, die man leicht vergessen kann, eingeben zu müssen, bauen wir uns ein Startscript. Erstellt dazu die Datei starten und fügt den Befehl in diese Datei ein. touch starten echo "screen -A -m -d -S bf2142 ./start.sh +provider "www.tla-clan.eu" +region "de" +type=1" > ./starten chmod 777 ./starten Jetzt basteln wir noch ein Script, mit dem wir uns den Server in den Vordergrund holen können. touch console echo "screen -r bf2142" > ./console chmod 777 ./console Nun können wir den Server ganz einfach mit ./starten starten und mit ./console in den Vordergrund holen. Punkbuster aktualisierenWenn der Server gestartet ist, dann beendet ihn zuerst. Jetzt laden wir das Update herunter cd /home/bf2142/pb wget http://www.punkbuster.com/downloads/bf2142/pbsecsv.htm Der Server wird nun beim nächsten Starten automatisch upgedatet.
Rcon Zugang einrichtenZuerst müssen wir die Datei default.py bearbeiten nano /home/bf2142/admin/default.py Sucht dort nach options = {
'port': '4711',
'password': none,
# True if multiple commands should be processed in one update and
# if as many responses as possible should be sent each update.
'allowBatching': False
}
Wo none steht könnt ihr euer Passwort einsetzten. Beachtet aber, dass es wie der Port in Hochkommas stehen muss.
options = {
'port': '4711',
'password': 'deinPasswort',
# True if multiple commands should be processed in one update and
# if as many responses as possible should be sent each update.
'allowBatching': False
}
Als nächstes muss noch eine Konfigurationsdatei angelegt werden. mkdir /home/bf2142/mods/bf2142/settings/admin cd /home/bf2142/mods/bf2142/settings/admin touch default.cfg nano ./default.cfg und fügt dort folgendes ein port=4711 password=deinPasswort Beachte, dass du hier das gleiche Passwort nehmen musst, wie du es zuvor in der Datei default.py eingetragen hast. Nun kannst du die Rcon-Konsole verwenden. Eine genaue Liste der möglichen Befehle findest du hier. BF2142CC installierenBF2142CC (www.2142cc.com) steht für Battlefield 2142 Command Control und ist eine Oberfläche für die Administration des Gameservers. Damit diese auch funktioniert müssen erst ein paar Dinge auf dem Rootserver installiert und konfiguriert werden. Zuerst einmal BF2142 CC v2.1.2628 und Mono. Installation von MonoHier ist die Version 1.2.1 zu empfehlen, da diese wohl die einzige mit BF2142CC kompatible Version ist. Meldet euch für diese Installation mit dem Benutzer root an. Nun macht folgendes cd /root/bf2142_downloads wget http://go-mono.com/archive/1.2.1/linux-installer/1/mono-1.2.1_1-installer.bin chmod 777 ./mono-1.2.1_1-installer.bin ./mono-1.2.1_1-installer.bin
Installation des BF2142-DaemonsNun wird es etwas aufwendig. Erstmal wieder mit dem Benutzer bf2142 anmelden und dann muss die aktuelle Version des Daemons heruntergeladen werden. Danach werden die Modmanagerscripte, die der Daemon benötigt installiert und konfiguriert. cd /home/bf2142 wget http://2142cc.com/downloads/2142cc_Daemon_2.1.2628.zip unzip ./2142cc_Daemon_2.1.2628.zip unzip ./modmanager-v1.6.zip Zuerst müssen einige Anpassungen der Modmanagerscripte gemacht werden. Dafür wechseln wir ins Konfigurationsverzeichnis. cd /home/bf2142/mods/bf2142/settings Dann öffnen wir die modmanager.con mit einem lokalen Texteditor oder über nano ./modmanager.con In dieser Datei finden wir folgende fünf Zeilen mm_rcon.rconBasicPassword "basic66" mm_rcon.rconIp "0.0.0.0" mm_rcon.rconListenQueue 1 mm_rcon.rconPassword "super123" mm_rcon.rconPort 4711 Als rconBasicPassword und rconPassword nehmen wir wieder das selbe Passwort wie schon in der Datei default.py. Zudem ist noch bei rconIp die IP-Adresse des Servers einzutragen. Nun muss noch die serversettings.con bearbeitet werden. Sucht dort die Einstellung sv.adminScript "default" und ändert sie in sv.adminScript "modmanager" Nun können wir uns dem Daemon zuwenden. Dafür muss er ein erstes mal gestartet werden. cd /home/bf2142 mono ./bf2ccd.exe Gebt dort die richtigen Angaben an, auf die inzwischen wohl jeder selber kommen sollte. Wenn alle Einstellungen gemacht wurden, dann beendet den Daemon mit Strg + c. Nun können wir auch für den Daemon ein Start- und Konsolenscript basteln. touch daemon_starten echo "screen -A -m -d -S bf2142_daemon /opt/mono-1.2.1/bin/mono ./bf2ccd.exe" > ./daemon_starten touch daemon_console echo "screen -r bf2142_daemon" > ./daemon_console chmod 777 ./daemon_* Wichtig: Falls der Gameserver gestartet wurde, muss er unbedingt beendet werden. Anstatt des Gameservers startet ihr nun mit ./daemon_starten den Daemon. Der startet dann nachher über den Client den Server. BF2142CC ClientDen richtigen Client zur eben installieren Version findet ihr hier. Mods installierenAlle Mods müssen in den Ordner /home/bf2142/mods Dabei ist unter Linux zu beachten, dass alle Dateinamen und Ordner klein geschrieben sind, au?er es handelt sich um Python-Code-Dateien (*.py). Diese dürfen auf keinen Fall umbenannt werden. Vergewissert euch vor dem Hochladen einer Mod, ob diese Bedingung erfüllt ist. Wenn nicht, bietet der TLA-Clan natürlich für Lau ein Tool an, das man bei sich auf dem Rechner anwendet und dann erst die Dateien hochläd. Diese Tool findest du hier. Das Tool kann auch für Custom-Maps verwendet werden. Wenn ihr die Mod hochgeladen habt, dann solltet ihr die serversettings.con, modmanager.con und den admin-Ordner im Verzeichnis /home/bf2142/mods/bf2142/settings in das settings-Verzeichnis der Mod kopieren oder die Einstellungen von Hand vornehmen. Die Mod startet ihr entweder, indem ihr es im BF2142cc auswählt oder wenn ihr lieber direkt mit dem Startscript arbeiten wollt, indem ihr den Modpfad mit übergebt. screen -A -m -d -S bf2142 ./start.sh +provider "www.tla-clan.eu" +region "de" +type=1 +modPath mods/cf2142 wäre ein Beispiel für die Conflict-Mod. Natürlich könnt ihr euch dafür wieder ein Startscript, wie schon oben beschrieben basteln. Das Script console wird aber nur einmal benötigt.
|
| Diese Seite wurde zuletzt am 12. Januar 2010 um 09:36 Uhr geändert. Diese Seite wurde bisher 9.768-mal abgerufen. Impressum |