Installation
Ladet euch den Linux Server runter- Code: Alles auswählen
wget LINKADRESSE
Eine gute Anlaufstelle für die Serverfiles ist immer der offizielle EA FTP: ftp://largedownloads.ea.com/pub/patches/BF2142/
Danach müsst ihr das Paket entpacken und das Installationsscript mit den passenden Rechten ausstatten
- Code: Alles auswählen
unzip BF2142 Unranked Servers v1.zip
chmod 755 bf2142-linuxded-1.0.9.1-installer
Jetzt könnt ihr den Server installieren
- Code: Alles auswählen
./bf2142-linuxded-1.0.9.1-installer
Die EULA für Gameserver und Punkbuster abnicken, Zielverzeichnis wählen (z.b. /bf2142)
ACHTUNG: Verzeichnis muss vorher schon existieren!
Einrichtung des Servers
Für die Konfiguration des Servers sind 2 Dateien wichtig:/bf2142/mods/bf2142/settings/serversettings.con
/bf2142/mods/bf2142/settings/maplist.con
Eine serversettings.con könnte so aussehen:
- Code: Alles auswählen
sv.serverName “Testserver” // Name des BF2142-Servers
sv.password “” // Kennwort zum Joinen
sv.internet 1 // LAN=0, Internet=1
sv.bandwidthChoke 0 // Bandbreitenbegrenzung, in der Regel auf 0 lassen
sv.serverIP “123.123.123.123? // IP des Gameservers
sv.serverPort 16567 // Standard-Gameport
sv.welcomeMessage “123 test eins zwo drei” // Willkommensnachricht
sv.punkBuster 1 // Punkbuster ein/ausschalten
sv.allowFreeCam 0 // Spieler kann nach dem Tod mit der Kamera um sich blicken
sv.allowExternalViews 1 // externe Kamera in Fahr/Flugzeugen erlauben
sv.allowNoseCam 1 // Cockpitansicht deaktivieren erlauben
sv.hitIndicator 1 // Zeigt einen Treffer im Fadenkreuz an
sv.maxPlayers 64 // maximale Spieleranzahl
sv.numPlayersNeededToStart 2 // Mindestspielerzahl fuer Spielbeginn
sv.notEnoughPlayersRestartDelay 15 // Restarttime bei zu wenig Spielern
sv.startDelay 15 // Wartezeit (in Sekunden) vor Spielstart
sv.endDelay 15 // Wartezeit (in Sekunden) vor Spielende
sv.spawnTime 15 // Zeit zum Wiedereintritt ins Spiel nach Tot
sv.manDownTime 15 // Zeit, in der man reanimiert werden kann
sv.endOfRoundDelay 15 // Wartezeit nach Rundenende
sv.ticketRatio 200 // Ticketratio in Prozent
sv.roundsPerMap 1 // Runden bis Mapwechsel
sv.timeLimit 1200 // Zeitlimit in Sekunden (1200 = 20 Minuten) bis Rundenende
sv.scoreLimit 0 // Scorelimit bis Rundenende
sv.soldierFriendlyFire 100 // Schaden (in Prozent) bei Beschuss durch eigenes Team
sv.vehicleFriendlyFire 100 // Schaden (in Prozent) bei Verletzung durch teameigene Fahrzeuge
sv.soldierSplashFriendlyFire 100 // Schaden (in Prozent) bei Teambeschuss durch Druckwelle
sv.vehicleSplashFriendlyFire 100 // Schaden (in Prozent) bei explodierenden, teameigenen Fahrzeugen
sv.tkPunishEnabled 0 // Bestrafung bei Teamkill ein/ausschalten
sv.tkNumPunishToKick 5 // Anzahl Teamkills bis zum automatischen Kick
sv.tkPunishByDefault 0 // Teamkills automatisch bestrafen? aus/an
sv.votingEnabled 0 // Votes erlauben
sv.voteTime 90 // Dauer eines Votes
sv.minPlayersForVoting 2 // minimale Anzahl der Spieler, die man fuer ein Voting braucht
sv.gameSpyPort 29900 // HLSW-Port (Standard = 29900)
sv.allowNATNegotiation 0 // aktivieren, wenn der Server hinter einer Firewall sitzt
sv.interfaceIP “123.123.123.123? // muss nur angegeben werden, wenn der Server mehrere IPs hat. immer identisch mit der sv.serverIP
sv.autoRecord 0 // automatisch Aufnahme von Demos
sv.demoIndexURL http: //
sv.demoDownloadURL http: //
sv.autoDemoHook “adminutils/demo/rotate_demo.py”
sv.demoQuality 1 // Demoqualität
sv.adminScript “default” // wird spaeter mal benutzt, noch keine Funktion
sv.timeBeforeRestartMap 20 // Zeit zwischen 2 Runden
sv.autoBalanceTeam 1 // Autobalance
sv.teamRatioPercent 100 // Teams gleich verteilen?
sv.voipEnabled 1 // Voiceserver ein/ausschalten
sv.voipQuality 3 // Qualitaet der Sprachuebermittlung
sv.voipServerRemote 0 // Externen Voiceserver benutzen
sv.voipServerRemoteIP “” // IP des externen Voiceservers
sv.voipServerPort 55125
sv.voipBFClientPort 55123
sv.voipBFServerPort 55124
sv.voipSharedPassword “”
sv.useGlobalRank 1 // Globalranks von Gamespy beziehen
sv.useGlobalUnlocks 1 // Waffenunlocks erlauben
sv.sponsorText “” // keine Ahnung wo der Angezeigt werden soll
sv.sponsorLogoURL “http://www.mein…meinbild.jpg” (localhost funktioniert hier nicht!)
sv.communityLogoURL “http://www.mein…meinbild.jpg” (localhost funktioniert hier nicht!)
sv.radioSpamInterval 6 // Anzahl der Durchsagen eines Mitspielers, nach der er geblockt wird
sv.radioMaxSpamFlagCount 6 // keine Ahnung
sv.radioBlockedDurationTime 30 // Zeit der Spamblockade
Achtung: die Kommentare in den settings ( “// blafasl” ) unbedingt weglassen! Dadurch wird die serversettings.con unbrauchbar!
Nun den Mapcycle anpassen: /bf2142/mods/bf2142/settings/maplist.con
Syntax: mapList.append minsk gpm_cq 16
Die Namen der Maps findet ihr unter “…mods/bf2142/levels” als Mapmodus gibts derzeit nur den Conquest Modus (gpm_cq), als Mapgroesse nimmt man 16, 32 oder 64. Alle Maps kommen so wie oben gezeigt untereinander, jede auf eine Zeile.
Starten des Servers
Im bf2142-Verzeichnis: Start des servers mit screen ./start.sh - empfehle ich für den ersten Start, da man hier die Statusmeldungen, den Ladevorgang und eventuelle Fehler siehtStart und direkt in den Hintergrund schicken:
- Code: Alles auswählen
screen -dmS BF2142Server ./start.sh
Custom Maps
Custom-Maps haben oft den Nachteil, dass sie auf Windows-Systemen erstellt wurden und diese nicht wie Linux zwischen Groß- und Kleinschreibung unterscheiden. Lade die Custom-Map auf deinen Server und schieb Sie in das Verzeichnis /bf2142/mods/bf2142/levels/hier hat jede Map ein eigenes Verzeichnis welches i.d.R. 3 Sachen enthält:-Info-Verzeichnis (mit Bildern und text für den Serverbrowser/ Ladescreen)
- server.zip
- client.zip
Die client-zip benötigst du auf dem Server logischerweise nicht. Nachdem du alle Custom-Maps auf dem Server hast, lass das Python-Script lowercasedir laufen:
Um das auszuführen muss Python installiert sein (apt-get install python), danach kannst du im bf2142-Verzeichnis mit python lowercaseDir.py /bf2 die Files umschreiben lassen. Alle Dateinamen und Verzeichnisse werden nun in kleine Buchstaben verwandelt. Nun musst du nur noch, wie oben beschrieben, die Maps dem Cycle adden.
Mods auf dem Server
Mods kommen in das Mods-Verzeichnis, wenn es noch nicht vorhanden ist, musst du ein neues Verzechnis “settings” in diesem Mod-Ordner erstellen, in welchen die beiden Dateien “serversettings.con” und “maplist.con” gehören (ich habe diese einfach aus dem Ordner bf2142/mods/bf2142/settings/ rüber kopiert)Sollten im neuen Mod-Ordner wieder großgeschriebene Verzeichnisse sein, musst du wieder das Python-Script (siehe oben) laufen lassen. Die Maps für den Mod sind im Ordner “mods/deinmod/levels/”, solltest du also Custom-Maps mit dem Mod laufen lassen wollen, musst du die hier ebenfalls nochmal rein kopieren.
Start des Mod-Servers mit
- Code: Alles auswählen
./start.sh +modPath mods/DEINMOD
Start und direkt in den Hintergrund schicken:
- Code: Alles auswählen
screen -dmS BF2142Server ./start.sh +modPath mods/DEINMOD
Zusätzliche Hinweise
Server-Grafik: hier muss eine korrekte URL-Angabe hin, “Localhost” und “127.0.0.1? funktionieren nicht!rcon-Bereich
- Im Verzeichnis “bf2142/admin” die Datei “default.cfg” erstellen
- Darin muss stehen:
- Code: Alles auswählen
port=4711
password=sicherespasswort
Der Rcon-Port kann natürlich auch anders gewählt werde, das ist der Standardport.
Einen Zeilenumbruch macht man mit dem | Zeichen. Bsp.: aus “Willkommen|auf|gameserveradmin.de” wird
Willkommen
auf
gameserveradmin.de


Map Name: Camp_Gibraltar
Map Name: Shuhia_Taiba
Map Name: Sidi_Power_Plant
Map Name: Suez_Canal
