Lernzirkel - Forum / Battlefield 1942 / Battlefield 1942 Gameserver erstellen (Linux)Lernzirkel - Forum - Battlefield 1942 Gameserver erstellen (Linux)
In diesem Thread befinden sich 1 Posts.
Battlefield 1942 Gameserver erstellen (Linux) 10.08.2009, 11:57Bufffuchs
Serverfiles :

Linux Dedicated 1.6
mit ziel speichern unter

Update:

Update auf 1.61
mit ziel speichern unter

BFServerManager20final:
Servermanager

BFRemoteManager20final:
Remotemanager

Installation des Servers:

WICHTIG!!! Installatiert den Server aus Sicherheitsgründen bitte nicht als root!!!! Das selbe gilt auch für das laufen lassen des Servers,
legt dafür bitte einen neuen User an!!!!

1. Installationsdatei ausführbar machen

1: chmod 744 bf1942_lnxded-1.6-rc2.run


2. Installer mit

1: sh bf1942_lnxded-1.6-rc2.run


oder

1: ./bf1942_lnxded-1.6-rc2.run


starten.


3. Der 1ste EULA mit "accept" und der 2ten (falls Punkbuster installiert werden soll) mit "yes" zustimmen.

4. In der nächsten Eingabeaufforderung Zielverzeichniss auswählen. (z.B. /usr/local/games oder /home/"username")
Darin wird dann das Verzeichniss bf1942 erstellt.

4a. Archiv bf1942-update-1.61.tar.gz in das BF1942 Verzeichniss entpacken.

5. maplist.con und serversettings.con in bf1942/mods/bf1942/settings anpassen. (Können auch später mit dem BFSM konfiguriert werden)

Die maplist.con sollte so aussehen:

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
game.addLevel gazala GPM_CQ bf1942
game.addLevel invasion_of_the_philippines GPM_CQ bf1942
game.addLevel kharkov GPM_CQ bf1942
game.addLevel battleaxe GPM_CQ bf1942
game.addLevel battle_of_britain GPM_CQ bf1942
game.addLevel kursk GPM_CQ bf1942
game.addLevel stalingrad GPM_CQ bf1942
game.addLevel market_garden GPM_CQ bf1942
game.addLevel omaha_beach GPM_CQ bf1942
game.addLevel coral_sea GPM_CQ bf1942
game.addLevel wake GPM_CQ bf1942
game.addLevel tobruk GPM_CQ bf1942
game.addLevel el_alamein GPM_CQ bf1942
game.addLevel aberdeen GPM_CQ bf1942
game.addLevel iwo_jima GPM_CQ bf1942
game.addLevel guadalcanal GPM_CQ bf1942
game.addLevel battle_of_the_bulge GPM_CQ bf1942
game.addLevel liberation_of_caen GPM_CQ bf1942
game.addLevel bocage GPM_CQ bf1942
game.addLevel berlin GPM_CQ bf1942
game.addLevel midway GPM_CQ bf1942
game.setCurrentLevel gazala GPM_CQ bf1942


6. Der Server wird mit

1: sh start.sh +statusMonitor 1


oder

1: ./start.sh +statusMonitor 1


gestartet.

Damit der Server nicht beendet wird wenn man das SSH- Fenster schließt kann man einen dieser beiden Befehle benutzen:

- nohup (schickt den Serverprozess in den Hintergrund, kein weiteres eingreifen möglich)

1:
2:
3:
4:
5:
6:
7:
nohup ./start.sh &



- screen

screen -d -m -S bf1942 ./start.sh +statusMonitor 1


Jetzt läuft der Server in einer virtuellen Konsole.

In diese kann man wieder mit

1: screen -r bf1942


wechseln.

Die Konsole verlassen ohne dass der Server beendet wird kann man mit folgender Tastenkombination:

[STRG + A] + D


Um den Server zu beenden muss man in der virtuellen Konsole [STRG] + C drücken bzw. quit eingeben.



Konfiguration für den Adminzugang:

1. Für die Administration direkt im Spiel folgenden Eintrag in den beiden Dateien serverautoexec.con und adminsettings.con eintragen:

1: admin.enableRemoteAdmin "Passwort"


"Passwort" einfach mit dem Passwort ersetzen mit dem Ihr Euch später im Spiel einloggen wollt.

2. Für die Administration über ein Remotetool wie HLSW von hlsw.org oder ASE von udpsof.com/eye2 folgenden Eintrag in den beiden Dateien

serverautoexec.con und adminsettings.con eintragen:

1: admin.enableRemoteConsole "Benutzername" "Passwort" "Port"


"Benutzername" ersetzen durch den gewünschten Benuternamen, "Passwort" durch das gewünschte Passwort und
"Port" durch 4711 (Standardport, könnte auch z.B. bei 2 Servern 4712 sein)

Diese Settings müssen dann später im Remotetool eingegeben werden.





Installation des BFSM:

1. Entpacken der "bfsmd" an einen beliebigen Ort. (z.B. /usr/bin, /usr/local/bin, /home/"username"/bf1942/,
/home/"username"/bf1942/bfsm/ usw.):

1:
2:
3:
tar -xzvf BFServerManager20final.tgz bfsmd
cp bfsmd /usr/bin
chmod 755 /usr/bin/bfsmd


2. Entpacken der beiden .con Dateien nach /pfad/zum/bf1942ordner/mods/bf1942/settings:

1:
2:
tar -xzvf BFServerManager20final.tgz useraccess.con servermanager.con
cp useraccess.con servermanager.con /pfad/zum/bf1942ordner/mods/bf1942/settings


3. Starten des BFSM mit:
(vorher muss die start.sh des BF1942 Servers 1x ausgeführt und wieder beendet werden damit der bf1942_linxded symlink erstellt wird.)

1: bfsmd -daemon -path /pfad/zum/bf1942ordner


(falls in /usr/bin bzw. /usr/local/bin)

1:
2:
cd /pfad/zur/bfsmd
./bfsmd -daemon -path /pfad/zum/bf1942ordner


(falls in einem anderen Ordner)

Wenn Ihr beim starten des bfsmd diese Fehlermelung angezeigt bekommt:


/bfsmd: /lib/i686/libc.so.6: version `GLIBC_2.3' not found (required by ./bfsmd)


dann läuft Eure Linux Distri noch nicht mit der glibc2.3 welche vom bfsmd benötigt wird. Falls dies der Fall ist müsst Ihr den BFSM per:

1: ./bfsmd.static


starten. Vorher muss diese aber mit:

1:
2:
3:
tar -xzvf BFServerManager20final.tgz bfsmd.static
cp bfsmd.static /usr/bin
chmod 755 /usr/bin/bfsmd.static


entpackt und in das gewünschte Verzeichniss kopiert werden.


Folgende zusätzlichen Parameter können noch benutzt werden:

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
Usage: BFSMD [-path <path>] [-ip <ip>] [-port <port>] [-pid <path>] [-daemon] [-start] [-stop][-restart] [-priority <#>]
[-syslog <#>] [-quit] [-license] [+server args] [@server cmds]

-path <path> is the /path/to/server/directory (no trailing slash)
-ip <ip> sets the server and BFSMD TCP/IP address (cannot be 0.0.0.0)
-port <port> sets the TCP port address of the BFSMD listen server (default 14667)
-pid <path> creates /path/to/pid/filename containing the BFSMD instance pid
-daemon daemonizes the BFSMD process
-start starts the server when BFSMD starts
-stop stops the server when BFSMD starts
-restart restarts the server process automatically after a crash
-priority <#> will renice the server to the given priority
-syslog <#> logs to specified syslog local facility 0-7 instead of bfsmd.log
-reuseaddr will bind BFSMD listen socket when already in use (use with caution!)
-exit stops the server when BFSMD exits
-quit terminates BFSMD when the server process terminates unexpectedly
-kill terminates the instance of BFSMD referenced by the pid file given with -pid
-license displays software license agreement
[+server args] will be passed to the server process e.g. +game bf1942
[@server cmds] will be appended to serversettings.con e.g. @game.gameSpyPort 23000


4. Verbindung zum Servermanager mit dem BFRM. Beim ersten starten müssen folgende Werte benutzt werden:

Hostname/IP: <Serverip>
BFSM Port: 14667
BFSM User: admin
BFSM Pass: password

5. Folgende Settings zuerst editieren:

- In die Einstellung "IP Address" unter "Server" die richtige IP eingeben. (Bei einem Tippfehler startet der Server nicht!!!)
- Unter "Admin" MUSS neben "Enable Remote Console" ein Häckchen sein (Sonst kann kein Mapchange usw. ausgeführt werden),
auch dürfen bei "Username" und "Passwort" nicht mehr die Standartwerte "User" und "Password" stehen,
ansonsten kann man den Server nicht als Internet Server starten.
- Unter "Users" sollte der Standartuser "admin" gelöscht und einen neuen User angelegt werden.

Dann diese Einstellungen in der unteren Menüleiste mit "Save" abspeichern, ansonsten werden diese nicht übernommen.

6. Alle weiteren Einstellungen anpassen, mindestens 1 Map unter "Maps" auswählen
(ansonsten startet der Server nicht) und den Server mit "Start" starten.

- Editiert von Bufffuchs am 10.08.2009, 15:16 -
if ($ahnung == false or $problem == true) {
read FAQ ; use SEARCH ; use GOOGLE; }
else {
use brain; make post;
}

Lust zum Fussball Tippen ?
Formel 1 Tippspiel
-- pForum 1.31 OS / © Thomas Ehrhardt, 2000-2007 --
http://gamingdivision.de/pforum