[ Basics ]
[ Linux ]
[ WIN ]
[ FAQ ]
[ Commands ]
[ Server hinter Router ]
[ Tools ]
HowTo
Wenn der Server dann läuft, muss er natürlich noch konfiguriert werden.
Wichtig sind hierbei vor allem
-
Startparameter und Konfigurationsdatei
-
Um den Server nicht bei jedem Start manuell per Kommandozeile starten zu müssen,
sollte man sich entweder ein Skript anlegen (Linux) oder eine Verknüpfung erstellen (Windows).
Die Verknüpfung unter Windows kann man dann auch in die Autostart-Gruppe aufnehmen, daß der
Server bei jedem Windowsstart automatisch geladen wird. Hierzu erstellen wir eine Verknüpfung
mit der Befehlszeile
c:\sierra\half-life\hlds.exe -game cstrike +maxplayers 12 +map de_dust
Für einen LAN-Server heißt der Befehl
c:\sierra\half-life\hlds.exe -game cstrike -insecure -nomaster +sv_lan 1 +maxplayers 12 +map de_dust
Weitere Einstellungen des Servers regelt die Datei server.cfg.
Da sich die Befehle hierfür bei CS: Source von denen bei 1.6 unterscheiden, sei für CS: Source auf die von -RKC- Bastard (-RKC- Bastards Homepage) erstellte, ausführlich kommentierte server.cfg für CS: Source verwiesen!
Hier eine kommentierte Beispieldatei für CS 1.6:
// automatisches Zielen deaktiviert
sv_aim "0"
// Cheats deaktiviert
sv_cheats "0"
// Clients dürfen das Spiel nicht pausieren
pausable "0"
// hostname des Server
hostname "Tutorial Testserver Counter-Strike 1.5"
// maximale Geschwindigkeit der Spieler
sv_maxspeed "320"
// Dauer einer map in Minuten
mp_timelimit "35"
// FF ist an!
mp_friendlyfire "1"
// Granaten verletzen eigenes Team
mp_friendly_grenade_damage "1"
// lowlag Eintrag für Internet-Server, für LAN weglassen
mp_lowlag "1"
// Dauer einer Runde in Minuten
mp_roundtime "5"
// Dauer in Sekunden bis C4 explodiert
mp_c4timer "45"
// Maximaler ein Spieler überzahl
mp_limitteams "1"
// kein Autokick für "idle Clients"
mp_autokick "0"
// Chasecam deaktiviert - freie Bewegung durch die Map
mp_chasecam "0"
// Logfiles werden geschrieben ("+log on" in der Kommandozeile)
mp_logfile "1"
// Teams werden automatisch angeglichen bei überzahl
mp_autoteambalance "1"
// Taschenlampe darf benutzt werden
mp_flashlight "1"
// Stillstand zu Beginn einer Runde in Sekunden
mp_freezetime "6"
// Evtl. vergebenes Passwort für den Server
sv_password "private"
// Teamkills werden mit Aussetzen bestraft
mp_tkpunish "1"
// Bei 2 Hostagekills vom Server kicken
mp_hostagepenalty "2"
// WICHTIG! rcon Passwort für Fernadministrierung
rcon_password "XXX"
Weitere Optionen zu Halflife allgemein und Counter-Strike finden sich
hier.
-
Mehrere Server gleichzeitig
-
Dies ist im wesentlichen eine Übersetzung des "Multiple Server Guides" der Kollegen von
server.counter-strike.net
Der einfachste Weg, mehrere CS-Server gleichzeitig auf einem Server laufen zu lassen, ist ihnen jeweils
einen eigenen Serverport zuzuweisen: -port 270XX
wobei XX größer 15 sein sollte (UDP 27015 ist der Standardport)
Im LAN-Browser tauchen standardmäßig Server mit Ports zwischen 27015 bis 27024 auf.
Ebenso ist es Platzsparender, verschiedene Konfigurationsdateien für die einzelnen Server zu benutzen
anstatt mehrere Instanzen des Servers zu installieren.
Darum hier eine Übersicht über die Kommandozeilenparameter:
+servercfgfile xxx = Angabe der Datei, die anstelle von server.cfg benutzt werden soll
+mapcyclefile XXX = Angabe der Datei, die anstelle von mapcycle.txt benutzt werden soll
+motdfile xxxx.txt = Angabe der Datei, die anstelle von motd.txt benutzt werden soll
Das sähe zB so bei einem WIN-LAN-Server aus:
C:\HLServer\hlds.exe -game cstrike -insecure +servercfgfile matcha.cfg +mapcyclefile matchta.txt +motdfile motda.txt -port 27016 -nomaster -noipx +sv_lan 1 +maxplayers 20 +map cs_assault
Die Freunde des Pinguins ersetzen C:\HLServer\hlds.exe durch zB \hlds\hlds_run
-
Maps
-
Die Map, mit der der Server starten soll, muß schon beim starten als Parameter
übergeben werden, z.B. "+map de_dust", um den Server mit de_dust zu starten. Soll diese Map
nicht rund um die Uhr gespielt werden, benötigt man eine Textdatei
mapcycle.txt, in der
die zu spielenden Maps aufgelistet sind. Solch eine Datei sollte bereits im cstrike-Verzeichnis
vorhanden sein, diese Datei könnte man im Prinzip unverändert übernehmen.
In den Mapcycle dürfen nur Maps aufgenommen werden, die sich im Verzeichnis
cstrike/maps befinden, allerdings ohne die Endung ".bsp". Eine Beispieldatei wäre:
de_dust
as_oilrig
cs_militia
de_nuke
es_jail
cs_siege
Für Anfänger sei noch bemerkt, in cs_ Maps müssen die CTs Geiseln befreien, die Terrors sollten
das verhindern, sonst geht die Runde an die CTs. In as_ Maps bewachen die CTs einen VIP zu einem
Fluchtpunkt, die Terroristen müssen diesen VIP töten, sonst gewinnen die CTs. Wenn es die Terroristen in
de_ Maps schaffen, eine Bombe an einer bestimmten Stelle zu legen, ohne daß die
CTs diese entschärfen können, dann ist die Runde gewonnen.
-
rcon Befehle
-
Mittels der rcon-Befehle kann der Serveradministrator während des Spiels Einstellungen
am Server ändern, oder unerwünschte Spieler vom Server werfen oder sogar bannen. Dazu benötigt man
das in der
server.cfg vergebene rcon Passwort.
Dieses gibt man während des Spiels in der Konsole mittels
rcon_password XXX ein, jetzt kann man alle Befehle, die man auf der Serverkonsole
ausführen kann, mittels rcon Befehl eingeben. Diese Werte werden allerdings
teilweise nach einem mapchange von den Standardwerten in der server.cfg überschrieben,
falls sie fest bleiben sollen, müssen sie also dort auch noch geändert werden.
-
Kicken und Bannen
-
Manchmal empfindet man als Serveradmin das dringende Bedürfnis, bestimmte Spieler vom
Server zu werfen, weil sie sich entweder nicht benehmen können, Teamkills machen oder
rechts-/linksradikale Dinge von sich geben.
Um einen Spieler vom Server zu kicken, genügt ein rcon kick Blaster
um den Spieler mit dem Namen Blaster vom Server zu kicken. Dieser Spieler könnte danach
sofort wieder auf den Server kommen, er ist nicht gesperrt. Da einige Spieler aber gerne
kompliziertere Namen als "Blaster" haben, bekommt man mit
rcon users eine Liste der Spieler auf dem Server samt einer UserID und einer
sogenannten UniqueID, die für jeden Spieler einzigartig sein sollte und sich u.a.
aus dem CD-Key zusammensetzt:
userid : uniqueid : name
------ : -------- : ----
1086 : 15815812 : Blaster
1063 : 1457894 : Player
1071 : 16484512 : Mastakillah
1011 : 24687875 : [DER]Depp
1044 : 54787534 : Bernd Salami
1039 : 1465766 : da lamer
6 users
Um jetzt also den Spieler Player vom Server zu kicken, gibt es zwei Möglichkeiten:
rcon kick Player oder rcon kick # 1063.
Achtung: Enthält der Spielername Leerzeichen, muss er in Anführungszeichen gesetzt werden.
Wenn ein Spieler aber permanent nervt und man ihn nicht mehr auf dem Server spielen lassen möchte,
dann muß man ihn bannen. Dazu benutzt man die UniqueID, die zwar umständlicher einzugeben ist,
dafür aber für jeden Spieler unterschiedlich sein sollte, d.h. man bannt nicht den Falschen:
rcon banid 20 15815812 kick verbannt den Spieler "Blaster" für 20 Minuten vom Server und
kickt ihn direkt, danach kann er wieder auf dem Server spielen -
wenn ein Spieler mit einem dauerhaften Bann belegt werden soll,
muß der Wert, der hier im Beispiel auf "20" steht, auf "0" gesetzt werden.
Um diese Banns auch beim nächsten Start des Servers aufrecht zu erhalten, fügt man noch ein
rcon writeid hinzu, dieser Befehl schreibt eine Datei namens banned.cfg,
in der die Banns einzeln aufgeführt sind.
Wenn man jetzt noch die Zeile exec banned.cfg ans Ende der server.cfg
anfügt, dann sind die Banns nach dem Neustart wieder aktiv.
Falls sich ein Spieler schuldig bekennt und man ihn wieder spielen lassen möchte, genügt der Befehl
rcon removeid uniqueID - zusätzlich sollte der Eintrag noch aus der
banned.cfg entfernt werden. Die gebannten IDs bekommt man mit
rcon listid heraus, wenn man nach IP Adressen gebannt hat geht das mit den Befehlen
listip und removeip.
Metamod installieren
Herzlichen Dank an tr|Mork (www.thereal-clan.net)
für diese Anleitung zur Installation von Metamod.
Was ist Metamod überhaupt?
Metamod ist sozusagen das "Dach" für die vielen Serverplugins, wie z.B. Adminmod, Clanmod, Statsme usw.
D.h. wenn ihr eines dieser Plugins nutzen wollt, müsst ihr vorher Metamod installieren (falls ihr den Adminmod-Installer
für Windows verwendet, wird Metamod automatisch mitinstalliert!)!
Wie installiert man Metamod?
Die Installation von Metamod ist relativ simpel. Ihr könnt Metamod sowohl auf einem dedizierten Server,
als auch auf einem sogenannten Listenserver installieren (ein Listenserver ist der, den ihr
normalerweise über 'Create' im Spiel aufmacht und auch selbst mitspielt).
1. Erstmal müsst ihr euch die entsprechende Metamod-Version von www.metamod.org
herunterladen! Für Windows braucht ihr die DLL-Version, für Linux die .so-Version!
2. Nun erstellt ihr im Mod-Verzeichnis, z.B. cstrike, (im Folgenden $moddir genannt) ein Verzeichnis 'addons'.
In diesem dann das Verzeichnis metamod, da rein dann noch das Verzeichnis dlls.
Das müsste hinterher so aussehen:
Unter Windows: $moddir\addons\metamod\dlls
Unter Linux: $moddir/addons/metamod/dlls
3. In das Verzeichnis 'dlls' kopiert ihr nun die metamod.dll bzw. metamod_i386.so (s.o.)
4. Jetzt geht ihr in das $moddir und öffnet die Datei liblist.gam mit einem Editor
eurer Wahl (z.B. notepad unter Windows oder vi unter Linux).
In dieser Datei sucht ihr nun die Zeile, die mit 'gamedll' bzw. 'gamedll_linux' beginnt!
Den dortigen Eintrag (normalerweise "dlls/mp.dll" oder "dlls/cs_i386.so") ändert ihr in
"addons/metamod/dlls/metamod.dll" (Unter Linux natürlich statt metamod.dll metamod_i386.so eintragen)
Bitte beachtet, dass unter Windows sowohl Slashes ('/') als auch Backslashes ('\') in der
Pfadangabe zur DLL funktionieren! Ich hab aber aus Gründen der Einfachheit nur Slashes
verwendet!
5. Nach einem Neustart eures Server sollte Metamod nun schon laufen, ihr könnt einfach
mal meta version in der Konsole eures Servers eingeben! Wenn ihr alles richtig
gemacht habt, sollte so etwas ähnliches in der Konsole erscheinen:
meta version
Metamod v1.16 2003/05/08
by Will Day willday@metamod.org
http://www.metamod.org/
compiled: May 8 2003, 13:56:47 Eastern (optimized)
6. Sollte eine Fehlermeldung erscheinen, geht nochmal alle oben genannten Punkte durch und
überprüft alles!
Wie kann ich Metamod mit Bots, z.B. dem PodBot verwenden?
PodBot installieren
Metamod nach obiger Anleitung installieren
(Das Wichtigste) Ihr müsst nun eure Startverknüpfung ändern! D.h. unter Windows öffnet ihr die Verknüpfung
mit Rechtsklick -> Eigenschaften und fügt dann die Zeile:
+localinfo mm_gamedll podbot/podbot.dll
hinten an!
ACHTUNG: Dieses Beispiel ist für den PodBot! Solltet ihr einen anderen Bot benutzen, müsst
ihr gucken, wie die DLL heisst, und wo sie in eurem cstrike-Ordner ist!
Wie konfiguriere ich Metamod?
Es gibt verschiedene Methoden, MM zu konfigurieren!
- Normalerweise geschieht dies über die Datei plugins.ini im Verzeichnis
addons/metamod.
- Falls ihr mehrere Server aus einem Verzeichnis mit unterschiedlichen MM-Plugins starten
wollt, dann könnt ihr auch mit '+localinfo mm_pluginsfile Pfad/Datei' als Startparameter
eine spezielle Config-Datei angeben!
In dieser Config-Datei müsst ihr nun die jeweiligen MM-Plugins eintragen. Dies wird dann beim Start
von MM geladen! Die Einträge erfolgen immer nach dem Muster 'Plattform Pfad [Beschreibung]'
(die [] geben einen optionalen Parameter an).
Kommentare können mit '#' oder '//' eingeleitet werden, allerdings kann ein Kommentar nur
eine ganze Zeile sein, also muss das '#' oder '//' am Anfang einer Zeile stehen!
Bittet beachtet, dass ihr in den Pfadangaben in der Config-Datei nur Slashes ('/') verwenden
solltet (Empfehlung von metamod.org)!
- Plattform gibt die Betriebssystemplattform an ('win32' für Windows und 'linux' für Linux)
- Pfad gibt den Pfad zur DLL/so-Datei des MM-Plugins an, normalerweise sollte der Pluginpfad
relativ zum $moddir angegeben werden!
- Beschreibung ist ein optionaler Parameter und wird statt dem internen Namen des
Plugins in Logausgaben und der Console angezeigt!
Beispiel-Config:
// Dies ist ein Kommentar
# Dies ist auch ein Kommentar
win32 addons/logmod/dlls/logmod_mm_i386.dll logmod
linux addons/logmod/dlls/logmod_mm_i386.so logmod
# win32 addons/soundcheck/dlls/soundcheck_mm.dll
# linux addons/soundcheck/dlls/soundcheck_mm_i386.so
win32 addons/adminmod/dlls/admin_MM.dll
linux addons/adminmod/dlls/admin_MM.so
In diesem Fall würde Soundcheck nicht geladen werden, weil der Eintrag auskommentiert ist!
Bei LogMod würde 'logmod' als Plugin-Beschreibung benutzt.
Übrigens braucht ihr nur die euerem Betriebssystem entsprechenden Zeilen in die Config
einzutragen!
Diese Datei wird beim Mapchange neu geladen, kann aber auch händisch über 'meta refresh'
neu geladen werden!
Bitte beachtet, dass die Reihenfolge der Plugins relevant ist! Wenn ihr z.B. Adminmod mit
LogD benutzen wollt, solltet ihr LogD vor Adminmod laden, um Komplikationen zu vermeiden!
Um zu Überprüfen, welche Metamod-Plugins nun auch geladen werden, gebt einfach an der Server-Konsole
oder per rcon meta list ein. Nun erscheint eine Ausgabe, die so ähnlich aussehen sollte:
meta list
Currently loaded plugins:
description stat pend file vers src load unlod
[ 1] NoSeeVar RUN - nsv_mm_i386.so v1.00 ini Chlvl Chlvl
[ 2] LogMod RUN - logmod_mm_i386.s v0.7a ini ANY Pause
[ 3] AMX RUN - amx_mm_i386.so v0.9.7 ini ANY ANY
[ 4] CS STATS RUN - csstats_mm_i386. v0.9.7 cmd ANY ANY
4 plugins, 4 running
Der Status RUN zeigt euch an, dass das Plugin gestartet wurde und auch ordnungsgemäß funktioniert.
(c) 2002 - 2007 by jwm
BITTE KEINE SUPPORTANFRAGEN, DAFÜR SIND DAS
SERVEROP-FORUM UND DER #SERVEROP-CHANNEL DA!
[ Basics ]
[ Linux ]
[ WIN ]
[ FAQ ]
[ Commands ]
[ Server hinter Router ]
[ Tools ]
|