|
|
How to set up a HLTV Proxy
|
Für jeden, der sich selbst einmal als
Admin eines HLTV Proxy versuchen
möchte, wird hier die Basiskonfiguration einer
hltv.cfg, nebst weitere Begriffe, Variablen und Parametern
diskutiert.
|
|
Die Datei hltv.cfg
|
Schauen wir uns erst einmal eine 'unbehandelte' hltv.cfg an.
Falls man kein Orginal mehr zur Hand hat, liegt eine
Default-Config bereit.
Als erstes finden wir hier
delay 30
Dieser Eintrag weist
unseren HLTV Proxy an, das Spiel welches er übertragen soll,
um 30 Sekunden zeitverzögert auszustrahlen.
Dies ist von Nöten, um zum Beispiel wärend eines Clanwars
keinen Vorteil für ein Team zu bieten. Es könnte ja ein Spectator
über Battlecom o.ä. seinem Team zuflüstern, wo sich der Gegner gerade aufhält.
Weiterhin wird der Delay zum Puffern des Gameserversignals genutzt.
Der Wert wird in Sekunden eingetragen und somit
würde "delay 120" einer Zeit von 2 Minuten gleich kommen.
Ein Wert unter 10 Sekunden wird nicht akzeptiert und wie
weit man ihn nach oben setzen kann, sollte jeder selbst probieren.
Als zweiter Eintrag ist vermerkt
multicast 0
Er schaltet den HLTV Proxy auf
Unicast
und sollte, wenn man sich nicht sicher ist, ob sein Provider
Multicast
unterstützt, nicht verändert werden.
Es bedarf gewisser Vorraussetzungen für
Multicast und sind diese nicht gegeben, verlängert sich für Clients
die Zeit zum connecten unnötig. Wenn man sich sicher ist,
kann man mit "multicast 1"
Multicast einschalten.
Die Einträge
connectip 234.5.5.1
und
gameip 234.5.5.2
spielen nur bei Multicast
eine Rolle und sollten nicht verändert werden.
Der nächste Punkt wäre dann
rate 10000
und er legt fest, wieviel Bandbreite der
Gameserver zum HTLV Proxy senden soll.
Der Wert wird in Bytes pro Sekunde angegeben
und bedeutet in unserem Fall 10 kb/s.
Weiter geht es dann mit
maxclientrate 10000
Hier wird festgelegt, wieviel Bandbreite für jeden
Client bereitgestellt wird. Der Wert wird wieder
in Bytes pro Sekunde angegeben. In der Basiskonfiguration
stehen also jedem Client grosszügige 10 kb/s zur Verfügung.
Kommen wir zu
updaterate 20
Hiermit sagen wir dem Gameserver, wie oft er pro Sekunde
ein Update zum HLTV Proxy senden soll.
Im Standartfall also 20 Updates pro Sekunde.
Mit
logfile 1
wird einfach nur festgelegt, ob die Aktivitäten unseres HLTV Proxy
in einer Log-Datei festgehalten werden sollen. In unserem Fall
wird also eine hltv.log im Verzeichnis /Halflife/ bzw.
/HLServer/ erstellt. Nach jedem Start wird die alte Datei überschrieben.
Ein weiterer interessanter Punkt folgt nun. Mit
loop 1
weisen wir unseren HLTV Proxy an, nach einem Disconnect vom
Gameserver, das letzte Spiel in einer Schleife zu wiederholen.
Die verbundenen Clients werden nicht disconnectet.
Für den Fall, dass man mit dem HLTV Proxy eine Demo abspielt,
wird nach Ende der Demo diese einfach wiederholt.
Darunter folgt dann
//proxypassword
Dieser Eintrag ist ausgeklammert und wird bei der
Initialisierung nicht beachtet. Wer aber
seinen HLTV Proxy per rCon fernsteuern möchte, sollte
diesen Eintrag durch entfernen der "//" aktivieren.
Ein Passwort sollte natürlich auch angegeben werden.
Beispiel:
proxypassword admin
Jetzt kann sich jeder Client, der über dieses Passwort verfügt,
beim HLTV Proxy authentifizieren und diesen dann administrieren.
Er öffnet die Console seines Half Life und schreibt für unser Beispiel
rcon_password admin
Es ist also im Grunde nicht anderes wie einen
Gameserver per rCon zu administrieren.
Das Proxypasswort wird weiterhin dazu benutzt,
sich beim HLTV Proxy als Kommentator anzumelden.
Man öffnet seine Console im Half Life und schreibt für unser Beispiel
commentator admin
Jetzt kann man mittels des Voice Chats das Spiel kommentieren.
Bei Kommentatoren ist es wie mit dem Highlander ... Es kann nur einen geben.
Jetzt folgt wieder ein ausgeklammerter Eintrag
//password ServerPassword
Für den Fall, dass der Gameserver, zu dem wir eine
Verbindung aufbauen möchten, mit einem Passwort geschützt ist,
kann man dieses hier angeben.
Als letzten Eintrag finden wir noch
chatmode 1
Mit ihm kann der Chat zwischen den Clients an- oder
abgeschalten werden. "0" steht hierbei für aus, bei "1" können
sich nur die Spectator auf den gleichen Proxy unterhalten
und bei "2" können sich alle verbunden Spectator,
auch wenn sie auf einem anderen Proxy sind, unterhalten.
Also im Falle eines MasterProxy und mehreren
RelayProxis muss auf jeden Proxy "chatmode 2" aktiv sein,
damit sich alle unterhalten können. Falls bei
den Clients öfter die Fehlermeldung
Host_Error:
UserMsg: Not Present On Client 76
auftritt, sollte man den Chat abschalten.
|
|
Weitere Einstellungsmöglichkeiten
|
Neben den obigen Parametern einer Standard hltv.cfg stehen weitere Möglichkeiten
zur Konfiguration zur Verfügung.
Einige der Einstellungen können nicht über die HLTV-Console geändert werden, sondern
müssen vor dem Start der hltv.exe angegeben werden. Am besten
legt man sich eine Verknüpfung zu seiner hltv.exe auf den Desktop und
ergänzt die Kommandozeile um die nötigen Parameter.
Beispiel:
c:\sierra\halflife\hltv.exe
-maxclients 10 -cachesize 50
Kommandozeilenparameter
-
-maxframes x
Legt das Minimum der im Buffer zwischengespeicherten Frames fest.
Für x ist der gewünschte Wert anzugeben.
Standard ist 2400 (2 min).
Berechnet wird dies nach:
updaterate x zu puffernde Zeit in sec = x
also: 20x120=2400
-
-cachesize x
Legt fest wieviele Frames gecachet werden sollen.
Für x ist der gewünsche Wert einzutragen.
Der Default Wert ist 32 Frames.
-
-maxclients x
Legt die maximale Anzahl an Clients fest die den HLTV
Proxy connecten können. Für x
ist die gewünschte Anzahl einzutragen.
Wird dieser Wert nicht geändert, können 128 Clients connecten.
Man sollte die Anzahl seiner zur Verfügung stehenden Bandbreite anpassen.
Ein Client verbraucht rund 3 kb/s und ein T-DSL Upstream
schafft rund 16 kb/s. In diesem Falle könne 5 Clients optimal
versorgt werden. Auch die Rechnerausstattung (Hardware)
des HLTV-Proxies spielt eine Rolle.
-
-port x
Legt den Port fest unter dem der HLTV Proxy zu erreichen ist.
Für x den gewünschten Port angeben.
Der Standardport ist 27020.
-
-comm dateiname
Setzt eine zusätzliche Masterserverdatei
wie die woncomm.lst.Für dateiname wird die Datei angegeben.
-
-multicastttl n
Setzt den TTL-Wert (Time To Live) für die vom HLTV Proxy versendeten
Multicastdatenpakete. Für x
ist der gewünschte Wert anzugeben.
-
-highpriority
Hiermit weist man dem HLTV Proxy eine hohe Systempriorität zu.
Er wird dann vom System vorrangig behandelt.
-
-nomaster
Dieser Parameter wird gesetzt, wenn man auf eine
Anmeldung beim WON verzichten möchte.
Er dann für andere 'unsichtbar' und nur wer die IP-Adresse
des HLTV-Proxies kennt, kann connecten. Diesen Parameter
sollte man setzten, wenn man seinen HLTV Proxy nur
im LAN laufen lassen will.
Consolenparameter
-
connect ip:port
Stellt eine Verbindung zu einem Gameserver oder Masterproxy her.
Für ip:port ist die
IP-Adresse und der Port der Servers anzugeben.
-
disconnect
Beendet eine aktive Verbindung.
-
quit
Beendet HLTV. Alternativ kann auch exit
eingegeben werden.
-
retry
Versucht die letzte Verbindung nochmals herzustellen.
-
name proxyname
Ändert den Namen des HLTV-Proxies, der auf dem
Scoreboard angezeigt wird. Standardewert ist
HLTV Proxy.
Für proxyname
ist der gewünschte Name anzugegeben.
-
clients
Gibt eine Liste der verbundenen Clients aus.
Es werden keine Namen, sondern nur die ID's gezeigt.
-
kick id
Kickt einen Client. Für id
die entsprechende ID angeben.
Die IDs der Clients können über clients
eingesehen werden.
-
say text
Gibt eine Meldung aus, die nur von den Spectatoren gesehen gelesen
werden kann. Die Spieler auf dem Gamesservern bleiben hiervon
unbehelligt.
Für text den gewünschten Text eingeben.
-
ping ip:port
Pingt den entsprechenden Gameserver an.
Für ip:port ist die
IP-Adresse und der Port der Servers anzugeben.
-
heartbeat
Sendet ein Statuspaket zu den WON Masterservern.
-
rcon befehl
Sendet einen rCon-Befehl zum verbundenen Gameserver
oder Proxy.
Für befehl
ist der gewünschte Befehl anzugeben.
-
rcon_address ip:port
Legt das Ziel für die rCon-Befehle fest.
Für ip:port ist die
IP-Adresse und der Port der Servers anzugeben.
-
rcon_password password
Sendet das rCon-Passwort für die Remoteadministration.
Für password
ist das rCon-Passwort des HLTV-Proxies anzugeben.
-
fullupdateinterval n
Legt fest, wie oft ein nicht komprimiertes Datenpaket
an die Clients gesendet wird.
Für n
ist der gewünschte Wert in Frames anzugeben.
Der Defaultwert beträgt 20 Frames.
Die Angabe ist nur bei Multicast notwendig
und schützt die Clients vor Packet-Loss.
-
cmdlist
Gibt eine Liste mit den in der HLTV Console registrierten Befehlen aus.
-
status
Gibt den momentanen Status des HLTV-Proxies aus.
Gelistet wird unter anderem der Name, mit
wem er verbunden ist, wer mit ihm verbunden ist
und was sonst noch gerade mitteilen möchte.
-
exec dateiname
Führt eine *.cfg Datei aus.
Für dateiname ist der Name der 'Config-Datei anzugeben.
-
developer 1/0
Zeigt zusätzliche Informationen an.
1
schaltet den Developermodus an
0 deaktiviert ihn.
-
fakeloss n
Simuliert ein Fake-Loss.
Für n ist der gewünschte Wert anzugeben.
Standard ist hier wünschenswerter Weise
0.0.
-
record dateiname
Startet die Aufnahme einer Demo.
Nach einem Mapchange wird automatisch eine neue Demo gestartet.
Für dateiname ist der gewünschte Name anzugeben.
Dieser wird automatisch numerisch ergänzt
(von dateiname1.dem bis
dateiname99.dem).
-
stop
Beendet die Aufnahme einer Demo.
-
playdemo dateiname
Startet die Wiedergabe einer Demo.
Für dateiname
ist der gewünschte Name ohne
.dem anzugeben.
Ist der Parameter loop 1 aktiv,
wiederholt sich die Demo in einer Endlosschleife.
Alle Consolenbefehle können auch in der Kommandozeile angegeben werden.
Ihnen muss bei der Angabe ein
+ vorangestellt werden.
Beispiel:
c:\sierra\halflife\hltv.exe -maxclients 10 +loop 1
|
|
|