HLTV

Od HLDS.pl
(Różnice między wersjami)
Skocz do: nawigacji, wyszukiwania
 
m (Mecze i nagrywanie dem)
 
(Nie pokazano 42 wersji utworzonych przez 5 użytkowników)
Linia 1: Linia 1:
 
=Opis=
 
=Opis=
{{stub}}
 
'''H'''alf-'''L'''ife '''T'''ele'''V'''ision ( ''HLTV'') to system do nagrywania i rozprowszechniania obserwacji z gry [[Half-Life]] i jest automatycznie instalowana z [[HLDS]]. Potrafi nagrywać dema oraz odtwarzać je potem w internecie, potrafi przekazywać dane z serwera gry aby gracze mogli obserwować grę bez przeszkadzania graczom.
 
  
Pod serwery [[Source]] zobacz [[SRCTV]]
+
'''H'''alf-'''L'''ife '''T'''ele'''V'''ision (''HLTV'') to system do nagrywania i rozprowszechniania obserwacji z gry [[Half-Life]] i jest automatycznie instalowana z [[HLDS]]. Potrafi nagrywać dema oraz odtwarzać je potem w internecie, potrafi przekazywać dane z serwera gry aby gracze mogli obserwować grę bez przeszkadzania graczom.
  
 +
Pod serwery [[Source]] zobacz [[SRCTV]]
  
 
Half-Life TV, w skrócie nazywane HLTV, daje możliwość posiadania nielimitowanej liczby graczy oglądających gry, rozgrywających się w czasie rzeczywistym, oraz nagranych z nich dem. Oglądający mają możliwość przyglądania się grze w sposób zbliżony jaki daje funkcja Spectator w normalnym serwerze gry. Oczywiście ich pełne możliwości mogą być kontrolowane aby uniknąć pewnego rodzaju nieporozumień mogących występować po meczu.
 
Half-Life TV, w skrócie nazywane HLTV, daje możliwość posiadania nielimitowanej liczby graczy oglądających gry, rozgrywających się w czasie rzeczywistym, oraz nagranych z nich dem. Oglądający mają możliwość przyglądania się grze w sposób zbliżony jaki daje funkcja Spectator w normalnym serwerze gry. Oczywiście ich pełne możliwości mogą być kontrolowane aby uniknąć pewnego rodzaju nieporozumień mogących występować po meczu.
Linia 13: Linia 12:
  
 
Osoby udostępniające serwer HLTV maja pełną kontrole nad systemem HLTV:  
 
Osoby udostępniające serwer HLTV maja pełną kontrole nad systemem HLTV:  
*mogą zmieniać liczbę slotów (czyli ilu widzów może oglądać mecz będąc
+
*mogą zmieniać liczbę slotów (czyli ilu widzów może oglądać mecz będąc podłączonym do właśnie danego serwera HLTV)
podłączonym do właśnie danego serwera HLTV)
+
 
*można wysyłać kolorowe napisy na ekrany widzów
 
*można wysyłać kolorowe napisy na ekrany widzów
 
*można kontrolować zdalnie HLTV jak i serwer gry
 
*można kontrolować zdalnie HLTV jak i serwer gry
Linia 21: Linia 19:
  
 
Postawienie prostego serwera HLTV nie jest zadaniem trudnym - właściwie starczy wpisać 3 komendy i leci. Jednakże więcej można wycisnąć i ustawić jeśli trzeba. Natomiast ustawianie większej sieci HLTV na np tysiące widzów wymaga większego nakładu pracy oraz koordynacji oraz znajomości nie tylko prostych funkcji HLTV ale także znajomości sprzętu komputerowego i łączy internetowych.
 
Postawienie prostego serwera HLTV nie jest zadaniem trudnym - właściwie starczy wpisać 3 komendy i leci. Jednakże więcej można wycisnąć i ustawić jeśli trzeba. Natomiast ustawianie większej sieci HLTV na np tysiące widzów wymaga większego nakładu pracy oraz koordynacji oraz znajomości nie tylko prostych funkcji HLTV ale także znajomości sprzętu komputerowego i łączy internetowych.
 
  
 
=Oglądanie gier=
 
=Oglądanie gier=
Linia 35: Linia 32:
 
  connect ip:port  
 
  connect ip:port  
  
np
+
Przykład:
  
 
  connect 123.34.56.7:27020  
 
  connect 123.34.56.7:27020  
Linia 47: Linia 44:
 
*Map Overview - ogólny rzut a mapę z góry
 
*Map Overview - ogólny rzut a mapę z góry
 
*Map Chase - rzut na mapę z góry ale mapa przesuwa się utrzymując wybranego gracza w centrum widoku.(czasem jak nie ma *grafiki to zamiast widoku mapki mamy zieloną kratkę, krótkie info na końcu w FAQ)
 
*Map Chase - rzut na mapę z góry ale mapa przesuwa się utrzymując wybranego gracza w centrum widoku.(czasem jak nie ma *grafiki to zamiast widoku mapki mamy zieloną kratkę, krótkie info na końcu w FAQ)
 
  
 
Najprostszą metodą zmiany widoku jest naciskanie klawisza odpowiadającego za funkcję JUMP (najczęściej prawy klawisz myszy albo SPACJA). Można także użyć menu naciskając klawisz DUCK (domyślnie CTRL),a tam możesz zmodyfikować aktualne ustawienia widoku. Naciskając klawisz USE (domyślnie E) możesz zmieniać ustawienia widoku - tzw PIP,rozwinięcie skrótu oznacza Picture-In-Picture (widok w widoku).
 
Najprostszą metodą zmiany widoku jest naciskanie klawisza odpowiadającego za funkcję JUMP (najczęściej prawy klawisz myszy albo SPACJA). Można także użyć menu naciskając klawisz DUCK (domyślnie CTRL),a tam możesz zmodyfikować aktualne ustawienia widoku. Naciskając klawisz USE (domyślnie E) możesz zmieniać ustawienia widoku - tzw PIP,rozwinięcie skrótu oznacza Picture-In-Picture (widok w widoku).
Linia 75: Linia 71:
 
*3 : Widok Mapy
 
*3 : Widok Mapy
 
*4 : Widok Mapy z Pościgiem
 
*4 : Widok Mapy z Pościgiem
 
 
  
 
=Podstawy HLTV=
 
=Podstawy HLTV=
 +
[[Grafika:hltv.graph1.gif|thumb|right]]
 
Podstawą HLTV jest system rozpowszechniania - czyli serwer HLTV jako aplikacja, powszechnie zwany także HLTV proxy.
 
Podstawą HLTV jest system rozpowszechniania - czyli serwer HLTV jako aplikacja, powszechnie zwany także HLTV proxy.
 
Serwer HLTV jest aplikacją konsolową która w działaniu przypomina trochę serwer dedykowany HLDS. Aby nadawać grę do oglądania, HLTV proxy musi się podłączyć do serwera gry tak jak normalny gracz, jednakże przechodzi on od razu do grupy Spectators. Widzowie natomiast podłączają się do HLTV proxy i oglądają grę. W ostateczności to wygląda mniej więcej tak:
 
Serwer HLTV jest aplikacją konsolową która w działaniu przypomina trochę serwer dedykowany HLDS. Aby nadawać grę do oglądania, HLTV proxy musi się podłączyć do serwera gry tak jak normalny gracz, jednakże przechodzi on od razu do grupy Spectators. Widzowie natomiast podłączają się do HLTV proxy i oglądają grę. W ostateczności to wygląda mniej więcej tak:
Linia 94: Linia 89:
 
Master Proxy przeważnie przesyła dane do Relay proxy ale może tez wysyłać do innych obserwatorów, często administratorów całości.
 
Master Proxy przeważnie przesyła dane do Relay proxy ale może tez wysyłać do innych obserwatorów, często administratorów całości.
  
Przykład  
+
Przykład:
 
<pre>
 
<pre>
                                      -&gt; HLTV Relay Proxy 1 =&gt; Spectator Clients
+
                                  -&gt; HLTV Relay Proxy 1 =&gt; Spectator Clients
HL Game Server -&gt; HLTV Master       -&gt; HLTV Relay Proxy 2 =&gt; Spectator Clients
+
HL Game Server -&gt; HLTV Master     -&gt; HLTV Relay Proxy 2 =&gt; Spectator Clients
                                      -&gt; HLTV Relay Proxy 3 =&gt; Spectator Clients
+
                                  -&gt; HLTV Relay Proxy 3 =&gt; Spectator Clients
 
</pre>
 
</pre>
 
   
 
   
Przykład 2
+
Przykład 2:
 
   
 
   
 
<pre>
 
<pre>
                                                                          =&gt; Spectator
+
                                                                      =&gt; Spectator
 
                       -&gt; Relay Proxy Level A 1 =&gt; Relay Proxy Level B =&gt; Spectator
 
                       -&gt; Relay Proxy Level A 1 =&gt; Relay Proxy Level B =&gt; Spectator
Game Server-&gt;Master -&gt; Relay Proxy Level A 2 =&gt; Spectator (oper)
+
Game Server-&gt;Master   -&gt; Relay Proxy Level A 2 =&gt; Spectator (oper)
 
                       -&gt; Relay Proxy Level A 3 =&gt; Spectator
 
                       -&gt; Relay Proxy Level A 3 =&gt; Spectator
 
                       -&gt; Spectator Clients (admin)
 
                       -&gt; Spectator Clients (admin)
 
</pre>
 
</pre>
 
 
[[Grafika:hltv.graph1.gif]]
 
 
  
 
=Rozpowszechnianie HLTV=
 
=Rozpowszechnianie HLTV=
Linia 141: Linia 132:
 
powinno się pojawić cos mniej więcej takiego:
 
powinno się pojawić cos mniej więcej takiego:
  
<pre>
+
--- HLTV Status ---
--- HLTV Status ---
+
Local IP 192.168.1.2:27020, FPS 72.8, Network In 0.8 Out 0.9
Local IP 192.168.1.2:27020, FPS 72.8, Network In 0.8 Out 0.9
+
Local Slots 128, Spectators 0, Proxies 0
Local Slots 128, Spectators 0, Proxies 0
+
Source: Server "Half-Life" (192.168.1.3:27015)
Source: Server "Half-Life" (192.168.1.3:27015)
+
Total Slots 128, Spectators 0, Proxies 1
Total Slots 128, Spectators 0, Proxies 1
+
Time 01:02, Game "valve", Map "maps/frenzy.bsp", Players 1
Time 01:02, Game "valve", Map "maps/frenzy.bsp", Players 1
+
</pre>
+
  
 
Komenda status pokazuje:
 
Komenda status pokazuje:
Linia 157: Linia 146:
 
Czas gry, rodzaj modu (tutaj valve, może być cstrike, dod, tfc...), mapę, graczy na serwerze.
 
Czas gry, rodzaj modu (tutaj valve, może być cstrike, dod, tfc...), mapę, graczy na serwerze.
 
Info o nagrywanym demie (jesli nagrywane).
 
Info o nagrywanym demie (jesli nagrywane).
 
  
 
=Oglądanie dem z HLTV=
 
=Oglądanie dem z HLTV=
Linia 175: Linia 163:
 
a obejrzysz dane demo.
 
a obejrzysz dane demo.
 
Róznica pomiędzy playdemo a veiwdemo jest znacząca - ta druga opcja daje mozliwość przwijania dema, pauzowania, czy tryb spowolnienia ruchu.
 
Róznica pomiędzy playdemo a veiwdemo jest znacząca - ta druga opcja daje mozliwość przwijania dema, pauzowania, czy tryb spowolnienia ruchu.
 
  
 
=Nagrywanie dem poprzez HLTV=
 
=Nagrywanie dem poprzez HLTV=
Linia 188: Linia 175:
  
 
  record nazwa_dema  
 
  record nazwa_dema  
 
  
 
Wszelkie gry będa nagrywane po wykonaniu tej komendy.
 
Wszelkie gry będa nagrywane po wykonaniu tej komendy.
Linia 207: Linia 193:
  
 
Dalej jest nazwa mapy, oraz rozszerzenie, czyli .dem
 
Dalej jest nazwa mapy, oraz rozszerzenie, czyli .dem
 
  
 
Dema zapisuja dokładnie te same dane które otrzymują gracze podczas rozgrywki i będący obserwatorami.
 
Dema zapisuja dokładnie te same dane które otrzymują gracze podczas rozgrywki i będący obserwatorami.
Linia 215: Linia 200:
  
 
  status
 
  status
 
  
 
Aby zatrzymać nagrywanie dem wpisz
 
Aby zatrzymać nagrywanie dem wpisz
 
  stoprecording
 
  stoprecording
 
 
  
 
=Mecze i nagrywanie dem=
 
=Mecze i nagrywanie dem=
  
Czasem nie chcemy aby ktokolwiek podczas nagrywania dema miał możliwośc wejścia na HLTV.  
+
Czasem nie chcemy aby ktokolwiek podczas nagrywania dema miał możliwośc wejścia na HLTV.
 
Stosujemy tę opcje aby zmiejszyć obciążenie serwera, albo aby HLTV tylko i wyłącznie nagrało demka, które potem opublikujemy na sieci.
 
Stosujemy tę opcje aby zmiejszyć obciążenie serwera, albo aby HLTV tylko i wyłącznie nagrało demka, które potem opublikujemy na sieci.
  
 
Wtedy warto uzyć poniższych ustawień, aby uzyskac optymalne parametry przy nagrywaniu
 
Wtedy warto uzyć poniższych ustawień, aby uzyskac optymalne parametry przy nagrywaniu
<pre>
 
maxclients 0  // nie pozwalaj na obserwatorów
 
delay 10      // ustaw niskie opóżnienie, zmniejsza obciążenie HLTV, sczególnie jeśli na serwerze gry
 
rate 10000    // zmaksymalizuj przepustowość
 
updaterate 20  // ustaw standardowe update dla hltv
 
nomaster 1    // nie rejestruj w serwerach globalnych sieci WON/Steam
 
</pre>
 
  
 +
maxclients 0 // nie pozwalaj na obserwatorów
 +
delay 10      // ustaw niskie opóżnienie, zmniejsza obciążenie HLTV, sczególnie jeśli na serwerze gry
 +
rate 10000    // zmaksymalizuj przepustowość
 +
updaterate 20 // ustaw standardowe update dla hltv
 +
nomaster 1    // nie rejestruj w serwerach globalnych sieci WON/Steam
  
 
Często na oficjalnych meczach przeciwne drużyny nie ufają sobie nawzajem i nie pozwalają drugiemu zespołowi na ustawienie HLTV aby nagrać demo, bo obawiają się, że będzie używane do cheat'owania - podpowiadane np. O pozycji graczy i ich ruchach.
 
Często na oficjalnych meczach przeciwne drużyny nie ufają sobie nawzajem i nie pozwalają drugiemu zespołowi na ustawienie HLTV aby nagrać demo, bo obawiają się, że będzie używane do cheat'owania - podpowiadane np. O pozycji graczy i ich ruchach.
 
Aby tego uniknąć gracze mogą sprawdzić komendą ''status'' stan HLTV.
 
Aby tego uniknąć gracze mogą sprawdzić komendą ''status'' stan HLTV.
 
Powinien on powiadomić o delay (czyli opóźnieniu transmisji), liczbie widzów i wolnych slotach, numerze ip.
 
Powinien on powiadomić o delay (czyli opóźnieniu transmisji), liczbie widzów i wolnych slotach, numerze ip.
 +
HLTV umożliwia także włączenie dźwięku (w tym voice) w czasie, gdy ludzie są połączeni z serwerem w czasie rzeczywistym.
  
 
'''UWAGA!''' HLTV ma STEAM_ID równy '''HLTV''' tylko i wyłącznie!!! Wszystko inne to gracz/bot!!
 
'''UWAGA!''' HLTV ma STEAM_ID równy '''HLTV''' tylko i wyłącznie!!! Wszystko inne to gracz/bot!!
Linia 254: Linia 235:
  
 
Warto sprawdzić na HLSW status HLTV.
 
Warto sprawdzić na HLSW status HLTV.
 
  
 
=Większe przekazy=
 
=Większe przekazy=
Linia 260: Linia 240:
 
Ustawianie sieci HLTV mogącej przyjąć większą liczbę obserwatorów (pow 1000) jest zadaniem trudnym i czasochłonnym. Poniższa sekcja powinna pomóc w konfiguracji i uruchomieniu takiej sieci. Jedną z najważniejszych cech takiej sieci powinna być jakość a nie ilość – lepiej jest oferować mniejszą ilość dostępnych miejsc dla widzów niż operować na maksimum wydolności przepustowości łącz. Lepiej jest przecież mieć mniejszą ilość osób, ale zadowolonych z efektu, niż masę zalagowanych maruderów, którzy potem mogą nie byc przychylnie nastawieni do podobnych projektów.
 
Ustawianie sieci HLTV mogącej przyjąć większą liczbę obserwatorów (pow 1000) jest zadaniem trudnym i czasochłonnym. Poniższa sekcja powinna pomóc w konfiguracji i uruchomieniu takiej sieci. Jedną z najważniejszych cech takiej sieci powinna być jakość a nie ilość – lepiej jest oferować mniejszą ilość dostępnych miejsc dla widzów niż operować na maksimum wydolności przepustowości łącz. Lepiej jest przecież mieć mniejszą ilość osób, ale zadowolonych z efektu, niż masę zalagowanych maruderów, którzy potem mogą nie byc przychylnie nastawieni do podobnych projektów.
  
W rzeczywistości w dzisiejszej dobie portali częściej spotkamy się z ustawianiem małych sieci w celu nagrania dema, a potem umieszczenia spakowanych demek na serwerze www niż transmisje online.
+
W rzeczywistości w dzisiejszej dobie portali częściej spotkamy się z ustawianiem małych sieci w celu nagrania dema, a potem umieszczenia spakowanych demek na serwerze www niż transmisje online.
  
 
Ale przejdźmy do przekazów zaawansowanych.
 
Ale przejdźmy do przekazów zaawansowanych.
Linia 276: Linia 256:
 
Warto pamiętać, że maxrate kontroluje transfer do obserwatora, a nie do innych HLTV proxy.
 
Warto pamiętać, że maxrate kontroluje transfer do obserwatora, a nie do innych HLTV proxy.
  
Aby zmniejszyć ogólny ruch sieciowy można wyłączyć przekazywanie komunikatów testowych na HLTV. Służy do tego komenda ''chatmode 0''.  
+
Aby zmniejszyć ogólny ruch sieciowy można wyłączyć przekazywanie komunikatów testowych na HLTV. Służy do tego komenda ''chatmode 0''.
  
 
Dodatkowo można zmiejszyć ilość uaktualnień pozycji graczy itp. z domyślnej wartości 20 na 10, wystarczy wpisać ''updaterate 10''. Ogólnie zmiejszenie updaterate do 10 może zaoszczędzić do 25%łącza, gdyż obserwatorzy nie muszą tak często dostawać danych jak normalni gracze. Zwiększanie updaterate mija się z celem, szczególnie jak nagrywamy dema – dostaniemy wtedy olbrzymiej wielkości pliki – wtedy nawet zzipowane dema będą się długo ściągać ze stron www.
 
Dodatkowo można zmiejszyć ilość uaktualnień pozycji graczy itp. z domyślnej wartości 20 na 10, wystarczy wpisać ''updaterate 10''. Ogólnie zmiejszenie updaterate do 10 może zaoszczędzić do 25%łącza, gdyż obserwatorzy nie muszą tak często dostawać danych jak normalni gracze. Zwiększanie updaterate mija się z celem, szczególnie jak nagrywamy dema – dostaniemy wtedy olbrzymiej wielkości pliki – wtedy nawet zzipowane dema będą się długo ściągać ze stron www.
 
 
  
 
Bardzo częstym ustawieniem dla większych wydarzeń jest używanie dwóch dedykowanych serwerów HLTV w celu stworzenia segmentu z miejscami prywatymi i publicznymi. Prywaty segment jest wtedy na przykład dla amdinistratorów, organizatorów, a publiczny dla reszty widzów.
 
Bardzo częstym ustawieniem dla większych wydarzeń jest używanie dwóch dedykowanych serwerów HLTV w celu stworzenia segmentu z miejscami prywatymi i publicznymi. Prywaty segment jest wtedy na przykład dla amdinistratorów, organizatorów, a publiczny dla reszty widzów.
Linia 294: Linia 272:
  
 
Dzięki takiej konfiguracji mamy bezpieczną sieć bez zbytniego obciążenia ruchem, gdyż całkowite obciążenie sieci jest równomiernie rozłożone po wszystkich relay proxy.
 
Dzięki takiej konfiguracji mamy bezpieczną sieć bez zbytniego obciążenia ruchem, gdyż całkowite obciążenie sieci jest równomiernie rozłożone po wszystkich relay proxy.
 
  
 
Oczywiście pliki konfiguracyjne serwerów Master, Dispatcher i Relay są różne.
 
Oczywiście pliki konfiguracyjne serwerów Master, Dispatcher i Relay są różne.
Linia 300: Linia 277:
  
 
master.cfg:
 
master.cfg:
<pre>
+
 
nomaster 1 // nie rejestruj w serwerach WON
+
nomaster 1 // nie rejestruj w serwerach WON
proxypassword MyPWD // podłączenie do hltv tylko jak sie zna hasło
+
proxypassword MyPWD // podłączenie do hltv tylko jak sie zna hasło
publicgame 0 // nie podawaj ip serwera gry HLDS
+
publicgame 0 // nie podawaj ip serwera gry HLDS
dispatchmode 0 // nie przekierowuj obserwatorów
+
dispatchmode 0 // nie przekierowuj obserwatorów
</pre>
+
  
  
 
dispatcher.cfg:
 
dispatcher.cfg:
</pre>
+
 
forcemaster 1 // zarejestruj w WON, bo to jest publiczne HLTV dla wszystkich
+
forcemaster 1 // zarejestruj w WON, bo to jest publiczne HLTV dla wszystkich
publicgame 0 // nie podawaj numeru ip serwera gry
+
publicgame 0 // nie podawaj numeru ip serwera gry
dispatchmode 2 // przełączaj wszelkich obserwatorów do innych relay proxy
+
dispatchmode 2 // przełączaj wszelkich obserwatorów do innych relay proxy
hostname MyGame // Publiczna nazwa serwera
+
hostname MyGame // Publiczna nazwa serwera
<pre>
+
  
 
relay proxy
 
relay proxy
 
każdy ma własną konfigurację, zależną od jego właściciela.
 
każdy ma własną konfigurację, zależną od jego właściciela.
 
  
 
Jeśli używasz 3 lub więcej serwery HLTV dobrze jest używać kontroli poprzez rcon wykorzystując jedno narzędzie. Najczęściej będzie to HLSW, ale mogą być panele WWW czy bezpośrednie stukanie w konsoli jakiegoś hltv proxy – ale to dopiero będzie lagować nagrane demo i wszystkich obserwatorów więc odradzam.
 
Jeśli używasz 3 lub więcej serwery HLTV dobrze jest używać kontroli poprzez rcon wykorzystując jedno narzędzie. Najczęściej będzie to HLSW, ale mogą być panele WWW czy bezpośrednie stukanie w konsoli jakiegoś hltv proxy – ale to dopiero będzie lagować nagrane demo i wszystkich obserwatorów więc odradzam.
Linia 326: Linia 300:
  
 
Czasem chcemy aby do naszego serwera HLTV tylko wybrane serwery HLTV mogły się podłączyć – stosujemy więc ''proxypassword''. Dzięki temu będziemy mogli mieć master server czysty, albo ograniczyć dostęp do disptcher'a tylko do wybranych providerów czy obserwatorów.
 
Czasem chcemy aby do naszego serwera HLTV tylko wybrane serwery HLTV mogły się podłączyć – stosujemy więc ''proxypassword''. Dzięki temu będziemy mogli mieć master server czysty, albo ograniczyć dostęp do disptcher'a tylko do wybranych providerów czy obserwatorów.
"
 
  
 
Dla każdego 1000 obserwatorów potrzebujesz jakichs 2ghz procesora.
 
Dla każdego 1000 obserwatorów potrzebujesz jakichs 2ghz procesora.
Linia 333: Linia 306:
  
 
Maksimum połączeń na 1 serwer HLTV wynosi 255 użytkowników (jeśli na tyle pozwala łącze i sprzęt.
 
Maksimum połączeń na 1 serwer HLTV wynosi 255 użytkowników (jeśli na tyle pozwala łącze i sprzęt.
 
  
 
=Konfiguracja HLTV=
 
=Konfiguracja HLTV=
Linia 352: Linia 324:
 
*&lt;a|b|c&gt; - ustawienie opcji a albo b albo c, można wybrać tylko jedną.
 
*&lt;a|b|c&gt; - ustawienie opcji a albo b albo c, można wybrać tylko jedną.
  
Znaki &lt;,&gt;,&lt;,| nie są pełnym przedstawieniem komend,  
+
Znaki &lt;,&gt;,[,],| nie są pełnym przedstawieniem komend, i nie powinny byc dodawane.
 
Przykład:
 
Przykład:
 
Jeśli mamy komendę
 
Jeśli mamy komendę
Linia 363: Linia 335:
 
Jak wpisujecie poprzez HLSW czy zdalnie z konsoli w grze przez rcon, to musicie wpisywać całe komendy.
 
Jak wpisujecie poprzez HLSW czy zdalnie z konsoli w grze przez rcon, to musicie wpisywać całe komendy.
 
W plikach .cfg trzeba wpisywać pełne komendy.
 
W plikach .cfg trzeba wpisywać pełne komendy.
 
+
{{Nota|Inne Komendy|
 
+
Reszta komend znajduję w artykule [[HLTV:Komendy|Komendy w HLTV]].
==cmdlist===
+
Zostało to specjalnie rodzielone aby skrócić artykuł.
lista dostępnych komend w hltv, twoje źródło wiedzy :D, radze mieć długą konsolę
+
}}
===help===
+
podobnie jak cmdlist, bardzo przydatne
+
 
+
 
+
 
+
===connect &lt;IP:Port&gt;===
+
*podłącza HLTV proxy do numeru ip:portu, jeśli nie ma portu domyślnie 27015
+
*zamiast numeru ip można stosować nazwy hostów, np some.domain:27020
+
*nazwa localhost czyli 127.0.0.1 jest przeważnie rozpoznawana (zależy od systemu) (do lokalnego komputera na którym działa hltv)
+
 
+
===disconnect===
+
*odłącza od serwera gry ale nie rozłącza rozpowszechniania
+
*wszyscy widzowie pozostają podłączeni (tak samo inne relay proxy)
+
 
+
===stop===
+
odłącza od serwera gry i zrywa połączenia z widzami i innymi proxy,
+
(kończy demo jeśli nagrywane)
+
 
+
===quit===
+
wychodzi z aplikacji (''wcześniej wykonuje automatycznie komendę 'stop' '')
+
 
+
===retry===
+
ponawia próbę podłączenia do ostatnio wybranego numeru ip:portu
+
 
+
===autoretry &lt;0|1&gt;===
+
jeśli równe 1, to przy zerwaniu połączenia (albo np zostanie HLTV kicknięty) probuje ponownie się podłączyć do danego numeru ip:portu w nieskończoność.
+
 
+
===name &lt;text&gt;===
+
*ustawia nazwę HLTV proxy, jaka będzie widoczna na scoreboardzie - czyli przyjazna nazwa na liście graczy
+
*domyślnie "HLTV Proxy"
+
 
+
===hostname &lt;text&gt;===
+
*ustawia nazwę HLTV proxy, jaka będzie widoczna na liście serwerów chodzi tu o nazwę w przeglądarce typu GameSpy czy w oknie Find Servers
+
*jeśli nie ustawimy tej nawzy, to HLTV automatycznie przyjmie nazwę serwera gry i doda na końcu po dwukropku numer HLTV jaki uzyskało (zaczynając od 0 w zwyż) – pomaga to rozpoznać który jest nasz numer hltv w całej topologii
+
 
+
===serverpassword &lt;text&gt;===
+
*musi być zgodne z sv_password na HLDS
+
*ustawia hasło aby HLTV mógł wejść na serwer gry, albo zgodne z proxypassword na HLTV proxy do którego się podłączamy naszym proxy
+
 
+
===adminpassword &lt;text&gt;===
+
*ustawia hasło do kontroli zdalnej HLTV poprzez rcon i komentatora
+
*działa analogicznie jak rcon_password na HLDS
+
 
+
===proxypassword &lt;text&gt;===
+
ustawia hasło dostępu dla innych hltv proxy które się podłączają do naszego serwera proxy
+
 
+
===spectatorpassword &lt;text&gt;===
+
*ustawia hasło dostępu dla podłączających się widzów
+
*jednocześnie wyklucza dany serwer hltv z globalnego systemu load balancin'gu, czyli inni gracze nie będą przekierowywani na nasz serwer
+
*jeśli jest wymagane hasło, obserwatorzy będą się musieli sami podłączyć ręcznie podając najpierw u siebie w konsoli hasło dostępu poprzez komendę password &lt;text&gt; a następnie podłączyć się komendą connect &lt;ip_hltv&gt;
+
*komenda używana w celach administracyjnych – dla adminów większych sieci, albo prywatnych serwerów HLTV (np. Do nagrywania dema i administracji meczem).
+
 
+
===clients===
+
pokazuje listę podłączonych klientów, czyli obserwatorów
+
 
+
===proxies===
+
pokazuje listę podłączonych relay proxy, czyli innych hltv
+
 
+
===players===
+
pokazuje listę graczy grających na serwerze gry
+
 
+
===kick &lt;ID&gt;===
+
wykopuje widza/inne hltv z naszego serwera hltv
+
 
+
===bann &lt;IP&gt;===
+
*banuje widza na numer ip - kompletnie ignoruje przyszłe prośby podłączenia)
+
*banuje jedynie na HLTV a nie na serwer gry.
+
 
+
===clearbanns===
+
usuwa wszystkie bany na HLTV
+
 
+
===say &lt;text&gt;===
+
wysyła komunikat tekstowy do serwera gry - rozmowa z graczami, widzowie tez widzą ten komunikat, dobre do komunikowania się np z graczami i administratorami aby np uzyskać pozwolenie na boradcast, na nagranie demek albo przekazanie ważnych informacji.
+
 
+
===msg &lt;text&gt; [&lt;duration&gt; &lt;pos x&gt; &lt;pos y&gt; &lt;color hex rgba&gt;]===
+
*wysyła kolorowy komunikat do wszystkich widzów na wszystkich proxy (ale nie do graczy), radzę nie stosować polskich znaków
+
*text - "Ogladacie HLTV PROXY!!!"
+
*duration - czas w sekundach trwania napisu na ekranie
+
*pos x - pozycja x, wartości: ''-1'', przedział od ''0.0'' do ''1.0'' - podaje pozycje napisu na ekranie w poziomie, ''-1'' to wyśrodkowanie napisu na ekranie, najczęściej stosowane wartości ''-1'', ''0.3'' (30% od lewej krawędzi ekranu)
+
*pos y - podobnie jak x tylko że w pionie, najczęściej stosowana wartość ''0.2''
+
*color hex rgba - kolor heksagonalny, pierwsze dwie litery/cyfry to kolor czerwony, drugie to zielony, trzecie to niebieski, ostatnie to alpha czyli przezroczystość FF to nieprzezroczyste
+
**FF0000FF czerwony
+
**00FF00FF zielony
+
**0000FFFF niebieski
+
radzę pobawić się byle edytorem kolorów do HTML (ale one nie mają ostatnich dwóch liter/cyfr, związanych z alpha)
+
domyślnie alpha jest FF, jeśli ominięte
+
 
+
===localmsg &lt;text&gt; [&lt;duration&gt; &lt;pos x&gt; &lt;pos y&gt; &lt;color hex rgba&gt;]===
+
podobnie jak msg ale widoczna tylko przez lokalnych widzów podłączonych tylko do danego proxy
+
 
+
===servercmd &lt;string&gt;===
+
przesyła komendę konsoli do serwera gry, &lt;string&gt; oznacza komendę
+
 
+
===clientcmd &lt;group&gt; &lt;string&gt;===
+
*przesyła komendę konsoli do wszystkich klientów
+
*grupy:
+
**1 - widzowie
+
**2 - inne hltv proxy
+
**3 - wszyscy (czyli 1 i 2 razem)
+
*&lt;string&gt; oznacza komendę
+
 
+
===loopcmd &lt;id&gt; &lt;n&gt; &lt;string&gt;===
+
*wykonuje w pętli daną komendę
+
*id - numer rozpoznawczy (aby łatwo usuwać) miedzy 1 a 64
+
*&lt;n&gt; - co ile sekund wykonywać komendę
+
*&lt;string&gt; właściwa komenda
+
*aby usunąć daną komendę z danym id wpisz
+
loopcmd &lt;id&gt; 0
+
*aby zobaczyć listę działających komend w zapętleniu wpisz samo ''loopcmd'' bez żadnych parametrów, da ci info ile jest komend (na windows dziala dziwnie)
+
Przykład
+
loopcmd 1 60 localmsg "You're watching HLTV. Visit www.valvesoftware.com" 5 -1 0.85 FFA000FF
+
oznacza, że dodajemy komendę nr 1, co 60 sekund i będzie ona wykonywać komendę
+
''localmsg "You're watching HLTV. Visit www.valvesoftware.com" 5 -1 0.85 FFA000FF''
+
 
+
===signoncommands &lt;string&gt;===
+
*komendy konsoli wykonywane na lokalnych widzach podłączających się do hltv, komendy mogą być rozdzielanie średnikami, najczęściej do ustawiania komunikacji głosowej i głośności, czasem ustawień sieciowych
+
*warto jest użyć poniższego przykładu aby lepiej słychać głos komentatora
+
''signoncommands "voice_overdrive 32;voice_scale 2"''
+
 
+
===maxclients &lt;n&gt;===
+
ustawia maksymalną liczbę widzów na dany hltv proxy (domyślnie 128)
+
 
+
===maxloss &lt;f&gt;===
+
ustawia maksymalna liczbę traconych pakietów powyżej której nie będzie przyjmowanych więcej graczy (domyślnie 0.05 czyli 5%), zakres wartości 0.0 – 1.0, ustawienie 1.0 oznacza, że hltv będzie przyjmować wszelkich klientów popimo, iż będą oni mieli koszmarne warunki oglądalności
+
 
+
===delay &lt;n&gt;===
+
*wprowadza opóźnienie w sekundach na Master Proxy
+
*wartość domyślna 30 sekund ,
+
*aby director module działał poprawnie trzeba dać minimum 10 sekund, teoretycznie jest to wartość float (czyli zmiennoprzecinkowa) ale jak się wpisze 30 to on to przerobi na 30.0 i nie powinno być problemu
+
 
+
*'''UWAGA''', jak wpiszemy jakaś komendę np say do konsoli hltv
+
to w rzeczywistości delay spowoduje ze będzie ona opóźniona !!!
+
 
+
na przykład jak masz 30 sec delay i chcesz nagrać mecz to wpisz komendę record i zacznij mecz 30 sekund po wpisaniu komendy record.
+
*jak wpisujesz stoprecording to lepiej 30 sekund po faktycznym zakończeniu meczu.
+
 
+
===rate &lt;n&gt;===
+
przepustowość jaką daje serwer gry do hltv proxy
+
 
+
===updaterate &lt;n&gt;===
+
updaterate od serwera do hltv proxy, domyslnie 20, lepiej nie zmieniać!
+
 
+
===maxrate &lt;n&gt;===
+
maksymalna prędkość łącza na 1 widza, nie kontorluje ruzchu do innego HLTV (więc takie HLTV podłączone go drugiego miże mieć większy teansfer)
+
 
+
===maxqueries &lt;n&gt;===
+
maksymalna ilość zapytań o status gry od przeglądarek, domyślnie 100 na sekundę
+
 
+
===dispatchmode &lt;0|1|2&gt;===
+
*przekierowanie
+
*domyślnie 1 = auto
+
**0 - brak przekierowania - wszyscy są przyjmowani (albo odrzucani jak limit)
+
**1 - przekierowanie podłączających się widzów do innych proxy w podłączonej sieci aby rozłożyć równomiernie obciążenie, przyjmuje także do siebie obserwatorów
+
*2 - always - zawsze przekierowuje widzów do innych proxy, dobre jak chcesz mieć hltv master nieobciążony albo żeby tylko inne hltv proxy się podłączały
+
 
+
===publicgame &lt;0|1&gt;===
+
*jeśli ustawione na 1 to ip serwera gry będzie widoczny dla widzów wtedy będą mogli oni się podłączyć do gry
+
*nie zalecane jak są mecze
+
 
+
===offlinetext &lt;string&gt;===
+
*tekst jaki się pokazuje gdy hltv nie rozpowszechnia żadnej gry/dema. np "Mecz przesuniety. Prosze zobaczyc www..."
+
 
+
===chatmode &lt;0|1|2&gt;===
+
*rozmowy
+
**0 - widzowie nie mogą rozmawiać - obniża ruch w sieci, do nagrywania dem
+
**1 - tylko widzowie na danym hltv proxy mogą ze sobą rozmawiać
+
**2 - wszyscy widzowie na wszystkich hltv proxy będą ze sobą gadać, jak za dużo gadają to nie sposób czytać, w tym ustawieniu wszystkie serwery (master i relay proxy) muszą mieć także ustawione chatmode 2 aby odbierały komunikaty do innych, zwiększa ruch sieciony przy dużych sieciach.
+
 
+
===bannerfile &lt;file&gt;===
+
*definiuje jaki obrazek uznać za logo wyświetlane dla widzów i graczy
+
*domyślnie nie ma loga.
+
*logo musi być w tym samym katalogu co aplikacja hltv, aby poprawnie było wyświetlane musi być jako plik TGA w trybie RGBA (Red-Green-Blue-Alpha), należy także stworzyć katalog &lt;mod&gt;/gfx/temp/ (np cstrike/gfx/temp/), jak nie ma katalogu temp to stwórz
+
*więcej info o logo niżej
+
*zobacz także komenda resources
+
 
+
===ping &lt;host:port&gt;===
+
sprawdza ping - opóźnienie w sieci do danego numeru ip na danym porcie
+
 
+
===nomaster &lt;0|1&gt;===
+
*rejestracja w serwerach WON - dzięki temu widać nasz serwer jak damy refresh, inaczej trzeba ręcznie dodać
+
*0 wyłączone (domyślnie), czyli rejestruje w serwerach WON
+
*1 - wyłącza, szybciej ładuje hltv, użyteczne aby schować master proxy przed ogólnym dostępem
+
 
+
===forcemaster &lt;0|1&gt;===
+
jeśli włączone będzie się rejestrował w serwerach WON na siłę
+
np jeśli chcemy aby jakiś relay proxy tak czy siak był widoczny mimo ąe już na liście jest master proxy
+
 
+
===heartbeat===
+
ręcznie odświeża info o naszym serwerze w serwerach WON, ta komenda jest automatycznie wykonywana co 2 minuty
+
 
+
===rcon &lt;string&gt;===
+
wysyła komendę do konsoli do innych serwerów
+
 
+
===rconaddress &lt;IP:Port&gt;===
+
ustawia adres zdalnego adresu do którego chcemy się podłączyć
+
(aby administrować np meczem albo innym serwerem hltv)
+
 
+
===rconpassword &lt;string&gt;===
+
*ustawia hasło wymagane przez zdalny serwer do którego chcemy się podłączyć, musi być zgodny z adminpassword na innym HLTV albo z rcon_password na HLDS
+
*(jak rcon_password u graczy)
+
 
+
===cheeringthreshold &lt;f&gt;===
+
*poziom potrzeby aby odegrać dźwięk cheer (czyli takie hurra :P)
+
*domyślnie 0.25, jest klawisz do wciśnięcia aby był cheer po stronie gracza
+
 
+
===blockvoice &lt;0|1&gt;===
+
*ustawia kontrole transmisji głosu po sieci
+
*0 - domyślnie, glos jest przekierowywany
+
*1 - blokuje, przeważnie to się ustawia aby był mniejszy ruch w sieci
+
*używany aby przeforsować nadchodzące glosy komentatorów albo glosy graczy na serwerze. -aby nie zagłuszyć lokalnego komentatora.
+
 
+
===logfile &lt;0|1&gt;===
+
1 - włącza, 0 - wyłącza logowanie do pliku "logfile&lt;date&gt;.log"
+
 
+
===status===
+
podobnie do komendy w HLDS, podaje co się dzieje z serwerem hltv
+
 
+
===modules ===
+
podaje wszystkie załadowane moduły z wersjami , do hltv - np director itp
+
 
+
===exec &lt;filename&gt;===
+
wykonuje pik .cfg (tzn jak nie podamy .cfg to najpierw spróbuje dodać rozszerzenie)
+
 
+
===echo &lt;string&gt;===
+
wyświetla tekst w konsoli hltv, uzyteczne aby wiedzieć iż cos się wykonało (np. konfig)
+
 
+
===developer &lt;0|1&gt;===
+
developer jest użyteczny aby mieć więcej informacji w konsoli, jednakże czasem za dużo wyświetla, uzyteczny jak masz jakieś problemy w działaiu HLTV i chcesz wiedzieć co jest nie tak
+
 
+
===record &lt;filename&gt;===
+
*nagrywa demo , sam dodaje datę i mapę
+
*składnia "filename-&lt;data&gt;-&lt;mapa&gt;.dem"
+
*nagrywanie trwa dopóki nie wpiszemy stoprecording
+
*jak raz wpiszemy to hltv będzie tworzyło dema w katalogu &lt;mod&gt; (wiec lepiej mieć katalog moda np cstrike dla cs)
+
*będzie tworzone 1 demo na mapkę
+
*ustawienie
+
record nazwa
+
powinno ustawić hltv w stanie że będzie nagrywać dema automatycznie – przy każdej zmianie mapy będzie tworzone nowe demo.
+
 
+
 
+
===stoprecording===
+
zatrzymuje nagrywanie dema
+
 
+
===playdemo &lt;filename&gt;===
+
rozpoczyna rozpowszechnianie dema.
+
 
+
===region &lt;n&gt;===
+
definuje w jakim regionie świata znajduje się nasze HLTV
+
 
+
 
+
 
+
 
+
 
+
 
+
 
+
  
 
=Opcje przy starcie HLTV=
 
=Opcje przy starcie HLTV=
==Nota==
+
Istnieją parametry które można ustawić jedynie przy starcie aplikacji, a nie poprzez komendy i nie działają w żadnych plikach cfg. Poniżej znajduje sie lista, reszta komend znajduję w artykule [[HLTV:Komendy|Komendy w HLTV]].
Wszelkie komendy z poprzedniej sekcji artykułu można dodać do wiersza poleceń uruchamiającego aplikacje hltv, trzeba jedynie dodać znak "+" przed nimi, na przykład:
+
hltv +connect localhost:27015 +exec match.cfg
+
 
+
Istnieją parametry które mozna ustawić jedynie przy starcie aplikacji, a nie poprzez komendy i nie działają w żadnych plikach cfg. Poniżej znajduje sie lista.
+
 
+
==Lista==
+
  
 
===-port &lt;n&gt;===
 
===-port &lt;n&gt;===
*ustawia domyślny port dla naszego proxy
+
*ustawia domyślny port dla naszego proxy,
*np możemy dać 26016 jeśli nie jest używany
+
*np.: możemy dać 27016, jeśli nie jest używany,
*(domyślnie 27020)
+
*domyślnie 27020.
  
 
===-ip &lt;IP&gt;===
 
===-ip &lt;IP&gt;===
wymuszą używanie specyficznego ip jeśli nasz serwer ma kilka numerów
+
*wymuszą używanie specyficznego [[IP]], jeśli nasz serwer ma kilka numerów [[IP]].
  
 
===-comm &lt;filename&gt;===
 
===-comm &lt;filename&gt;===
ustawia inne informacje niż te które są w woncomm.lst zawierające info o master WON servers
+
*ustawia inne informacje, niż te które są w [[woncomm.lst]] zawierające informacje o serwerach master [[WON]].
  
 
===-nodns===
 
===-nodns===
bez DNS - nie rozwija nazw hostów na numery ip, szybsze, dobre na LAN
+
*bez DNS - nie rozwija nazw hostów na numery ip, szybsze, dobre na [[LAN]].
  
 
===-maxfps &lt;n&gt;===
 
===-maxfps &lt;n&gt;===
ustawia maksimum fps dla hltv (domyślnie 100), więcej znaczy mniejsze lagi ale jednocześnie zwiększa użycie cpu
+
*ustawia maksimum fps dla hltv (''domyślnie 100''), więcej znaczy mniejsze lagi, ale jednocześnie zwiększa użycie [[CPU]].
  
 
===-cachesize &lt;n&gt;===
 
===-cachesize &lt;n&gt;===
frame cache size (default 32 frames) (to chyba z siecią coś)
+
*frame cache size (''domyślnie 32 frames'').
  
 
===-highpriority===
 
===-highpriority===
uruchamia hltv z wyższym priorytetem (tylko Windows)
+
*uruchamia [[HLTV]] z wyższym priorytetem (''tylko Windows'').
  
 
===-steam===
 
===-steam===
proxy uruchamia specjalny support dla Steam
+
*proxy uruchamia specjalny support dla Steam.
  
 
===-dev===
 
===-dev===
developer mode, zaawansowane funkcje jak są problemy
+
*developer mode, zaawansowane funkcje jak są problemy.
  
 +
==Przykłady==
  
 +
===Odpalanie kilku komend jednocześnie===
  
==Przykłady
+
hltv -maxfps 50 -nodns -port 27018
===odpalanie kilku komend jednocześnie===
+
  
hltv -maxfps 50 -nodns -port 27018
+
===Start z konfigiem===
 
+
=Startu z konfigiem=
+
  
 
Przykład odpalania z mieszanymi komendami:
 
Przykład odpalania z mieszanymi komendami:
Linia 676: Linia 386:
 
A w pliku hltv1.cfg możemy wpisać interesujące nas komendy, np.
 
A w pliku hltv1.cfg możemy wpisać interesujące nas komendy, np.
 
<pre>
 
<pre>
logfile hltv1.log //loguj wszystko do pliku
+
logfile hltv1.log // loguj wszystko do pliku
nomaster 1 // nie rejestruj w master servers, szybciej startuje
+
nomaster 1 // nie rejestruj w master servers (szybciej startuje)
 
forcemaster 0 // nie ma co na necie rejestrowac
 
forcemaster 0 // nie ma co na necie rejestrowac
publicgame 0 // ta gra nie jest do wgladu , hltv ma tylko nagrywac dema
+
publicgame 0 // ta gra nie jest do wgladu, hltv ma tylko nagrywac dema
adminpassword "rcon_hltv_1" //haslo do kontroli hltv poprzez rcon z hlsw
+
adminpassword "rcon_hltv_1" // haslo do kontroli hltv poprzez rcon z hlsw
hostname "HLTV 1" //nazwa hltv
+
hostname "HLTV 1" // nazwa hltv
name "HLTV 1" // nazwa hltrv na scoreboardzie
+
name "HLTV 1" // nazwa hltv na scoreboardzie
  
//mala reklama :)
+
// mala reklama :)
// 5 sek, na srodku ekranu, na dole, pomaranczouwy tekst
+
// 5 sek, na dole, pomaranczowy tekst
loopcmd 1 60 localmsg "http://hlds.pl" 15 -1 0.85 00FFAAFF
+
loopcmd 1 60 localmsg "www.hlds.pl" 5 -1 0.85 00FFAAFF // nie mozna stosowac slashy
  
maxclients 0 //hlt ma tylko nagrywac, ustawiamy nr klientow na 0
+
maxclients 0 // hltv ma tylko nagrywac, ustawiamy liczbe klientow na 0
autoretry 1 //automatycznie ma sie podlaczac po odlaczeniu
+
autoretry 1 // automatycznie ma sie podlaczac po odlaczeniu
 
delay 90 // opoznienie w sekudnach
 
delay 90 // opoznienie w sekudnach
 
record hltv_1 // prefiks nazw dem z tego hltv, zacznij nagrywac
 
record hltv_1 // prefiks nazw dem z tego hltv, zacznij nagrywac
serverpassword "password1" //haslo na pierwszym serwerze meczowym, inaczej sie nie podlaczymy
+
serverpassword "password1" // haslo na pierwszym serwerze meczowym, inaczej sie nie podlaczymy
connect 192.168.1.1:27015 //podlacz do pierwszego serwera meczowego
+
connect 192.168.1.1:27015 // podlacz do pierwszego serwera meczowego
 
echo hltv1.cfg zaladowane
 
echo hltv1.cfg zaladowane
status //pokaz co sie dzieje
+
status // pokaz co sie dzieje
 
</pre>
 
</pre>
  
 
Z takim konfigiem hltv powinen sie podłączyc do zdefiniowanego serwera i nagrywać dema co zmianę mapy.
 
Z takim konfigiem hltv powinen sie podłączyc do zdefiniowanego serwera i nagrywać dema co zmianę mapy.
  
 
+
'''Opis wszystkich komend znajduję w artykule [[HLTV:Komendy|Komendy w HLTV]].'''
  
 
=Logo HLTV=
 
=Logo HLTV=
Linia 738: Linia 448:
 
Tak więc jak nagrałeś demo na hltv, to idź do katalogu ''&lt;mod&gt;/gfx/temp'', skopiuj tga i spakuj razem z demem zachowując strukturę katalogów
 
Tak więc jak nagrałeś demo na hltv, to idź do katalogu ''&lt;mod&gt;/gfx/temp'', skopiuj tga i spakuj razem z demem zachowując strukturę katalogów
 
zip:
 
zip:
+
 
 
  test-0405232144-de_aztec.dem
 
  test-0405232144-de_aztec.dem
 
  /gfx/temp/d5fb1c03ac7f9297cbdea9bedda09815.tga
 
  /gfx/temp/d5fb1c03ac7f9297cbdea9bedda09815.tga
 
 
  
 
=Konfiguracja HLDS=
 
=Konfiguracja HLDS=
Linia 750: Linia 458:
 
domyślnie ustawiane na 1 oznacza ze będzie jeden proxy, czyli jako master proxy, jeśli chcesz zakazać podłączania się hltv ustaw na zero.
 
domyślnie ustawiane na 1 oznacza ze będzie jeden proxy, czyli jako master proxy, jeśli chcesz zakazać podłączania się hltv ustaw na zero.
 
Inne wartości są eksperymentalne i nie powinno się wpuszczać więcej niż 2 proxy na serwer gry (czasem nawet nie więcej niż 1).
 
Inne wartości są eksperymentalne i nie powinno się wpuszczać więcej niż 2 proxy na serwer gry (czasem nawet nie więcej niż 1).
 
 
  
 
=Hasła dostępu i Rcon – kontrola zdalna=
 
=Hasła dostępu i Rcon – kontrola zdalna=
 
Warto abyś się zapoznał z artykułem [[rcon]]
 
Warto abyś się zapoznał z artykułem [[rcon]]
  
 +
==Odpowiedniki==
 
Widzieliście komendy serverpassword, adminpassword, proxypassword, ale możliwe że wolelibyście znać odpowiedniki tychże komend  w programach które lepiej znacie -  mam na mysli serwer HLDS oraz konsolę z gry podczas grania.
 
Widzieliście komendy serverpassword, adminpassword, proxypassword, ale możliwe że wolelibyście znać odpowiedniki tychże komend  w programach które lepiej znacie -  mam na mysli serwer HLDS oraz konsolę z gry podczas grania.
  
==HLDS – HLTV (odpowiednik)==
+
===HLDS – HLTV===
  
sv_password – proxypassword oraz spectatorpassword (w zależności czypodłącza się inne hltv czy obs)
+
*'''sv_password''' '''proxypassword''' oraz '''spectatorpassword''' (w zależności czy podłącza się inne hltv czy obs)
rcon_password – adminpassword
+
*'''rcon_password''' '''adminpassword'''
  
 +
===Gracz – HLTV===
 +
Komendy do kontrolowania innego serwera z konsoli gracza/hltv.
 +
*'''rcon_password''' - '''rconpassword'''
 +
*'''rcon_address''' – '''rconaddress'''
 +
*'''rcon_port''' – '''rconaddress''' (ma format ip:port)
 +
*'''rcon''' - '''rcon'''
  
'''Komendy do kontrolowania innego serwera z konsoli gracza/hltv.'''
+
===Przykład:===
 
+
==Gracz – HLTV==
+
 
+
rcon_password - rconpassword
+
rcon_address – rconaddress
+
rcon_port – rconaddress (ma format ip:port)
+
rcon - rcon
+
 
+
 
+
==Przykład:==
+
  
 
Mamy serwer HLDS a na nim takie parametry
 
Mamy serwer HLDS a na nim takie parametry
 
  ip:port 192.168.1.1:27015
 
  ip:port 192.168.1.1:27015
+
 
 
  sv_password "mecz"
 
  sv_password "mecz"
 
  rcon_password "haslo_rcon_hlds"
 
  rcon_password "haslo_rcon_hlds"
 
  
 
Na serwerze HLTV mamy takie parametry
 
Na serwerze HLTV mamy takie parametry
 
  ip:port 192.168.1.1:27020
 
  ip:port 192.168.1.1:27020
+
 
 
  adminpassword "haslo_rcon_hltv
 
  adminpassword "haslo_rcon_hltv
 
  spectatorpassword "spect"
 
  spectatorpassword "spect"
 
  serverpassword "mecz"
 
  serverpassword "mecz"
 
 
  
 
Z takimi parametrami HLTV wejdzie na serwer HLDS bo zgadzają się hasła ("mecz")
 
Z takimi parametrami HLTV wejdzie na serwer HLDS bo zgadzają się hasła ("mecz")
 
  
 
==Kontrola serwera HLDS poprzez rcon z HLTV==
 
==Kontrola serwera HLDS poprzez rcon z HLTV==
Linia 809: Linia 508:
 
==Kontrola serwera HLDS poprzez rcon z konsoli gracza==
 
==Kontrola serwera HLDS poprzez rcon z konsoli gracza==
 
Teraz zobaczmy jak z konsoli klienta, czyli gracza (albo poprzez HLSW) możemy kontrolować serwer HLDS. Pamiętajmy na jakim porcie stoi serwer HLDS, szczególnie jeśli hostuje on kilka serwerów!
 
Teraz zobaczmy jak z konsoli klienta, czyli gracza (albo poprzez HLSW) możemy kontrolować serwer HLDS. Pamiętajmy na jakim porcie stoi serwer HLDS, szczególnie jeśli hostuje on kilka serwerów!
 
  
 
  rcon_password "haslo_rcon_hlds"
 
  rcon_password "haslo_rcon_hlds"
Linia 815: Linia 513:
 
  rcon_port 27015
 
  rcon_port 27015
 
  rcon status
 
  rcon status
Widać, że podobnie jak w konsoli HLTV, różnica jest tylko w komendach.
 
  
 +
Widać, że podobnie jak w konsoli HLTV, różnica jest tylko w komendach.
 
Możemy także kontrolować HLTV poprzez rcon, z poziomu gracza:
 
Możemy także kontrolować HLTV poprzez rcon, z poziomu gracza:
 
  rcon_password "haslo_rcon_hlds"
 
  rcon_password "haslo_rcon_hlds"
Linia 827: Linia 525:
  
 
Filmiki z  opisanych operacji są załączone do artykułu, różnić się mogą jedynie nuemrami ip, portami i hasłami.
 
Filmiki z  opisanych operacji są załączone do artykułu, różnić się mogą jedynie nuemrami ip, portami i hasłami.
 
  
 
=FAQ=
 
=FAQ=
  
==Nie mam pliku hltv.cfg=
+
== Nie mam pliku hltv.cfg ==
'''A:''' stwórz go np notepad'em (upewnij się ze nie ma rozszerzenia .txt tylko .cfg)
+
Windows: stwórz go np.: notepad'em (''upewnij się, że nie ma rozszerzenia .txt tylko .cfg'')
albo w Linuksie komendą konsolową touch hltv.cfg
+
Linuks: stwórz go komendą w konsoli: touch hltv.cfg i edytuj ulubionym edytorem (vi, vim, pico, mcedit)
i edytuj ulubionym edytorem (vi, vim, pico, mcedit)
+
  
 +
== Jak sterować zdalnie HLTV ? ==
 +
Naucz się sterować HLDS poprzez [[RCON]], następnie ustawiasz hasło na serwerze HLTV (''patrz wyżej w ustawieniach''), a w kliencie - albo poprzez [[HLSW]], albo bezpośrednio z gry:
  
 
==Jak sterować zdalnie HLTV==
 
'''A:''' naucz się sterować HLDS poprzez rcon
 
następnie ustawiasz hasło na serwerze hltv (patrz wyżej w ustawieniach)
 
a w kliencie - albo poprzez hlsw
 
albo z gry bezpośrednio ustawiasz
 
 
 
  rcon_port &lt;port na którym działa hltv&gt;
 
  rcon_port &lt;port na którym działa hltv&gt;
 
  rcon_address &lt;adres ip na którym działa serwer hltv&gt;
 
  rcon_address &lt;adres ip na którym działa serwer hltv&gt;
 
  rcon_password &lt;hasło na zdalny dostęp do hltv&gt;
 
  rcon_password &lt;hasło na zdalny dostęp do hltv&gt;
 
następnie wpisujesz komendy hltv poprzedzając je dopiskiem rcon
 
  
np
+
Następnie wpisujesz komendy HLTV poprzedzając je dopiskiem rcon
+
 
 +
Przykład:
 +
 
 
  rcon say Test rozmowy HLTV!
 
  rcon say Test rozmowy HLTV!
 
  rcon record nazwadema
 
  rcon record nazwadema
 
  rcon stoprecording
 
  rcon stoprecording
 
  
HLTV nie musi być aktualnie na serwerze na którym grasz :D
+
HLTV nie musi być aktualnie na serwerze na którym grasz, więc możesz je zaprosić:
więc możesz ze zaprosić
+
 
+
 
  rcon serverpassword "clanwar"
 
  rcon serverpassword "clanwar"
 
  rcon connect _clanwar_ip_:port
 
  rcon connect _clanwar_ip_:port
 
  
i po chwili powinien być.
+
i po chwili (''zależy od parametru delay'') powinien być.
  
 +
== Ściągnąłem demo z internetu, jak je obejrzeć ? ==
 +
# wrzuć demo do katalogu mod'u, może to być cos takiego jak
 +
''c:/program files/steam/steamapps/twoj@mail/cstrike''
 +
# uruchom grę tak, aby była dostępna konsola, otwórz konsole
 +
# w konsoli wpisz: viewdemo nazwa_dema.dem
 +
# jeśli to laguje to spróbuj playdemo nazwa_dema.dem
  
 +
== Linux/Windows - mam problem z otwarciem jakiegoś pliku ==
 +
Console initialized.
 +
FileSystem initialized.
 +
Error:libSteamValidateUserIDTickets_i386.so: cannot open shared object file:
 +
No such file or directory
 +
***** FATAL ERROR *****
 +
Proxy::Init: couldn't load network module.
 +
*** STOPPING SYSTEM ***
 +
ERROR! System::AddModule: couldn't initialize module (null).
 +
Type 'help' for a list of commands.
  
==Ściągnąłem demo z internetu, jak je obejrzeć==
+
Notka - zobacz też następne pytanie w FAQ
'''A:'''
+
dodaj przed komendą uruchamiania hltv taką oto linię:
1) - wrzuć demo do katalogu mod'u, może to być cos takiego jak
+
''c:program filessteamsteamappsyour@mailcstrike''
+
2) - uruchom grę tak aby była dostępna konsola, otwórz konsole
+
3) - w konsoli wpisz: viewdemo nazwa_dema.dem
+
4) - jeśli to laguje to spróbuj playdemo nazwa_dema.dem
+
  
 
 
==Linux/Windows - mam problem z otwarciem pliku==
 
<pre>
 
Console initialized.
 
FileSystem initialized.
 
Error:libSteamValidateUserIDTickets_i386.so: cannot open shared object file:
 
No such file or directory
 
***** FATAL ERROR *****
 
Proxy::Init: couldn't load network module.
 
*** STOPPING SYSTEM ***
 
ERROR! System::AddModule: couldn't initialize module (null).
 
Type 'help' for a list of commands.
 
</pre>
 
'''A:''' Notka - zobacz też następne pytanie w FAQ
 
dodaj przed komendą uruchamiania hltv taką oto linię:
 
 
 
  export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH";
 
  export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH";
 
  
 
Linux/Windows - upewnij się ze uruchamiasz hltv z katalogu gdzie biblioteki
 
Linux/Windows - upewnij się ze uruchamiasz hltv z katalogu gdzie biblioteki
 
sa dostępne - (ew dodaj dany katalog do ścieżki lub wrzuć liby do ścieżek)  
 
sa dostępne - (ew dodaj dany katalog do ścieżki lub wrzuć liby do ścieżek)  
 
ewentualnie zmień w skrócie working dir na cos podobnego do  
 
ewentualnie zmień w skrócie working dir na cos podobnego do  
''c:program filessteamsteamappsmy@emaildedicated server''
+
''c:/program files/steam/steamapps/twoj@mail/dedicated server''
albo w Linuksie dodaj linie aby zmienił ścieżkę (zwykle ''cd path/to/hlds/'' )
+
albo w Linuksie dodaj linie aby zmienił ścieżkę (zwykle ''cd path/to/hlds/'')
  
 +
== Linux - Jak uruchamiać HLTV na screenie ? ==
 +
Tutaj prosty skrypt, oczywiście zedytuj go, aby bardziej ci pasowało :D
  
 +
#!/bin/bash
 +
export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH";
 +
screen -A -m -d -S hltv ./hltv +exec hltv.cfg
  
 +
Zobacz też: [[screen]].
  
==Linux - jak uruchamiać hltv na screen'ie==
+
== Czy można scalić dema, złączyć je razem ? ==
'''A:'''tutaj prosty skrypt, oczywiście zedytuj aby bardziej ci pasowało :D
+
Nie wiem, może jakimś programem do edycji demek.
Zobacz też [[screen]]
+
<pre>
+
#!/bin/bash
+
export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH";
+
screen -A -m -d -S hltv ./hltv +exec hltv.cfg
+
</pre>
+
 
+
==Czy można scalić dema, złączyć je razem==
+
'''A:''' nie wiem, może jakimś programem do edycji demek.
+
 
Komenda appenddemo podłącza do dema ścieżke cd audio :(
 
Komenda appenddemo podłącza do dema ścieżke cd audio :(
  
==Przy podłączeniu mam problem z jakimś numerem protokołu==
+
== Przy podłączeniu mam problem z jakimś numerem protokołu ==
'''A:''' pewnie chcesz hltv ze starego cs podłączyć pod nowego CS (czyli 1.5 na 1.6 )
+
Pewnie chcesz hltv ze starego cs podłączyć pod nowego CS (czyli 1.5 na 1.6)
niestety to nie pójdzie, musisz zrobić upgrade hltv - najlepiej do najnowszej  
+
niestety to nie pójdzie, musisz zrobić upgrade hltv - najlepiej do najnowszej wersji (starczy jak ściągniesz dedicated server 'valve')
wersji (starczy jak ściągniesz dedicated server 'valve')
+
  
==HLTV na LAN bez internetu, włącza się długo==
+
== HLTV na LAN bez internetu, włącza się długo ==
'''A:''' oczywiście, służą do tego komendy do przyśpieszenia startu HLTV
+
Oczywiście, służą do tego komendy do przyśpieszenia startu HLTV:
+
nomaster 1
+
forcemaster 0
+
+
jeśli jest opcja -steam to wyłącz, a reszta w konfigach bez zmian
+
  
 +
nomaster 1
 +
forcemaster 0
  
==Nie chcę slomotion, czyli efektu zwolnienia dema podczas meczu==
+
Jeśli jest opcja -steam to wyłącz, a reszta w konfiguracji pozostaje bez zmian.
'''A:''' slowmotion 0 0, w 1.6 trzeba poczekać na update :P ew nie ładować biblioteki autodirector
+
starczy zmienić ''director...so/.dll'' na inną nazwę i wtedy załadować hltv
+
  
 +
== ERROR! Network::CreateSocket: WSAEADDRNOTAVAIL ==
 +
Zmień numer ip/port, bo pewnie są już w użyciu przez inne aplikacje (''może już inny serwer gry/hltv'')
  
 +
== WARNING! DemoFile::StartRecording: coudn't open demo file demoname.dem ==
 +
Stwórz podkatalog &lt;mod&gt;, np.: ''cstrike'' w tym samym, w którym odpalasz HLTV, to najczęściej zdarza się pod Windows. Jak odpalasz HLTV z katalogu:
 +
C:\Program Files\Steam\SteamApps\twoj@mail\dedicated server
 +
To stwórz podkatalog:
 +
C:\Program Files\Steam\SteamApps\twoj@mail\dedicated server\cstrike
  
==ERROR! Network::CreateSocket: WSAEADDRNOTAVAIL==
+
== HLTV nie pozwala wejść graczowi na serwer, bo zabiera jego steam_id/slot ==
'''A:''' zmień numer ip/port, bo pewnie są juz w użyciu przez inne aplikacje (może już inny serwer gry/hltv
+
* Ustaw sv_proxies na 0 i wykop HLTV
 +
* Wykop HLTV tuż przed podłączeniem się gracza
 +
* Zbanuj na serwerze numer IP HLTV na kilka minut, podłącz się do gry, niech gracze wejdą i dopiero odbanuj ip HLTV
  
==WARNING! DemoFile::StartRecording: coudn't open demo file demoname.dem==
+
Więcej o banowaniu w poradniku na temat [[rcon]].
'''A''': stwórz podkatalog &lt;mod&gt;, np ''cstrike'' w tym samym w którym odpalasz hltv, to najczęściej zdarza się pod Windows. Jak odpalasz HLTV z katalogu ''C:Program FilesSteamSteamAppstwoj@maildedicated server''
+
to stwórz podkatalog ''C:Program FilesSteamSteamAppstwoj@maildedicated servercstrike''
+
  
 +
== Jak oglądam demo z opcja PIP mam poszarpany obraz z czarnymi kreskami ==
 +
''gl_ztrick 0'' w konsoli gracza
  
 
+
== Jak wyłączyć SlowMotion ? ==
==HLTV nie pozwala wejść graczowi na serwer, bo zabiera jego steam_id/slot==
+
Wpisujemy w hltv.cfg:
'''A:''' wykop HLTV tuż przed podłączeniem się gracza lub zbanuj na serwerze nr ip HLTV na kilka minut
+
slowmotion 1.0
podłącz się do gry, niech gracze wejdą
+
odbanuj ip HLSW
+
więcej o banowaniu w poradniku na temat rcon
+
 
+
 
+
==Jak oglądam demo z opcja PIP mam poszarpany obraz z czarnymi kreskami==
+
'''A:''' ''gl_ztrick 0'' w konsoli gracza
+
 
+
 
+
 
+
==Jak wyłączyc SlowMotion==
+
'''A:''' wpisujemy w hltv.cfg  
+
  slowmotion 1.0
+
 
albo
 
albo
  unload director001
+
unload director001
  
to drugie dziala jak nagrywamy demo (jest ladowane jak znowu zaczniemy nagrywac, mozna pobawic sie z loopcmd alby wykonywal co minute komende na unload modulu albo wykonywal konfig ktory bedzie zawieral rozne komedy a w nich wyladowanie modulu
+
To drugie działa jak nagrywamy demo (jest ładowane jak znowu zaczniemy nagrywać, można pobawić się z loopcmd aby wykonywał co minute komende na unload modułu albo wykonywał konfig, który będzie zawierał różne komedy, a w nich wyładowanie modułu, jednak polecamy:
 +
slowmotion 1.0
  
ja jednak polecam slowmotion 1.0
+
Można także użyć:
 +
slowmotion 0 0
 +
W serwerach np.: CS 1.6 trzeba stworzyć plik '''director.cfg''' w tym samym katalogu, gdzie znajduje się hltv.cfg i dodać w nim linijke
 +
slowmotion 1.0
 +
ewentualnie nie ładować biblioteki autodirector (''wystarczy zmienić ''director.dll/director_i386.so'' na inną nazwę i wtedy załadować hltv'')
  
==WARNING: UDP_Opensocket: setsockopt ID_multicast_loop: WSAENOPROTOOPT ==
+
== WARNING: UDP_Opensocket: setsockopt ID_multicast_loop: WSAENOPROTOOPT ==
'''A:''' Zignoruj ten komunikat. powodowany przez non-winnt klientów,
+
Zignoruj ten komunikat. powodowany przez non-winnt klientów, to tylko komunikat z funkcji deweloper i nic nie robi i nie szkodzi.
to tylko komunikat z funkcji deweloper i nic nie robi i nie szkodzi. Zdarza się jak twoja sieciówka nie obsługuje pakietów typu multicast (tzn ze masz denną sieciówkę)
+
Zdarza się jak twoja sieciówka nie obsługuje pakietów typu multicast.
  
 +
== Zamiast mapki mam zielona kratkę ==
 +
Nie masz pliku overview mapy, więcej w poradniku o overview w katalogu &lt;mod&gt;/overviews powinny się znajdować pliki:
  
 
== Zamiast mapki mam zielona kratkę==
 
'''A:''' Nie masz pliku overview mapy, więcej w poradniku o overview
 
w katalogu &lt;mod&gt;/overviews powinny się znajdować pliki
 
 
 
  &lt;mod&gt;/overviews/&lt;nazwa_mapy&gt;.bmp
 
  &lt;mod&gt;/overviews/&lt;nazwa_mapy&gt;.bmp
 
  &lt;mod&gt;/overviews/&lt;nazwa_mapy&gt;.txt
 
  &lt;mod&gt;/overviews/&lt;nazwa_mapy&gt;.txt
 
  &lt;mod&gt;/overviews/&lt;nazwa_mapy&gt;.tga
 
  &lt;mod&gt;/overviews/&lt;nazwa_mapy&gt;.tga
 
czasem może być tylko bmp albo tylko tga albo oba na raz
 
zainstaluj i powinno działać
 
administratorzy serwera hlds powinni zainteresować się ta funkcja i dodać pliki
 
do .res ręcznie lub przy użyciu aplikacji o nazwie resgen
 
oczywiście jeśli posiadają te pliki.
 
  
 +
Czasem może być tylko *.bmp albo tylko *.tga, albo oba na raz zainstaluj i powinno działać.
 +
Administratorzy serwera HLDS powinni zainteresować się ta funkcja i dodać pliki do *.res ręcznie lub przy użyciu aplikacji o nazwie [[resgen]], oczywiście jeśli posiadają te pliki.
  
 +
== Komentator gada, ale w ogóle go nie rozumiem ==
 +
'Czasem dźwięki w grze są zbyt głośne i trzeba komentatora z lekka doprawić, a więc wpisz w konsoli gracza:
  
==Komentator gada ale wogóle go nie rozumiem==
 
'''A:''' czasem dźwięki w grze są zbyt glosie i trzeba komentatora z lekka doprawić
 
wpisz w konsoli gracza
 
 
 
  voice_overdrive 32
 
  voice_overdrive 32
 
  voice_scale 2
 
  voice_scale 2
 
możesz dodać też je do signoncommands na hltv – wtedy będzie wykonywana na graczach podłączających się na hltv
 
 
signoncommands "voice_overdrive 32;voice_scale 2"
 
 
  
 +
możesz dodać też je do signoncommands na hltv – wtedy będzie wykonywana na graczach podłączających się na hltv:
  
 +
signoncommands "voice_overdrive 32;voice_scale 2"
  
==Nie mogę się podłączyć do lokalnego proxy==
+
== Nie mogę się podłączyć do lokalnego proxy ==
'''A:''' uruchom hltv z parametrem -ip i ustaw odpowiedni adres ip
+
Uruchom hltv z parametrem -ip i ustaw odpowiedni adres ip.
to się zdarza jak masz wiele ip na serwerze a łączysz się na nazwę hosta która zwraca inny numer ip niż powinno.
+
To się zdarza jak masz wiele ip na serwerze, a łączysz się na nazwę hosta, która zwraca inny numer ip niż powinno.
  
 
+
== Bandwidth capacity exceeded ==
 
+
Widzowie czasem nie mogą się poprawnie podłączyć do proxy mimo wolnych miejsc HLTV mierzy sobie sieć i oblicza packet loss (''stratę pakietów'') i odrzuca nowe połączenia jeśli loss do graczy przekracza 25%. Ustawione specjalnie, aby nie było przeciążeń. Dodatkowo oznacza, że twoje łącze jest mocno obciążone i że wartość maxclients czy maxclientrate powinna być zmniejszona na serwerze HLTV
==Bandwidth capacity exceeded ==
+
Możesz sforsować HLTV, aby ignorowało to poprzez ustawienie (100%) (''nie rekomendowane''):
'''A:''' Widzowie czasem nie mogą się poprawnie podłączyć do proxy mimo wolnych miejsc
+
HLTV mierzy sobie sieć i oblicza packet loss (stratę pakietów) i odrzuca nowe
+
połączenia jeśli loss do graczy przekracza 25%. Ustawione specjalnie aby nie było przeciążeń. Dodatkowo oznacza, że twoje łącze jest mocno obciążone i że wartość maxclients czy maxclientrate powinna być zmniejszona na serwerze HLTV  
+
Możesz sforsować HLTV aby ignorowało to poprzez ustawienie (100%)  
+
(nie rekomendowane)
+
+
 
  maxloss 1.0
 
  maxloss 1.0
 
 
 
 
  
 
=Linki=
 
=Linki=
 +
*[http://www.slipgate.de/hltv/hltv.html Strona twórcy HLTV]
 +
*http://www.valvesoftware.com
 +
*http://hltv.org
  
http://www.slipgate.dehltvhltv.html - strona twórcy HLTV
+
[[Kategoria:HLTV|!]]
http://www.valvesoftware.com
+
[[Kategoria:HLDS]]
http://hltv.org
+
[[Kategoria:Gry]]
http://hlds.pl
+
 
+
=Uwagi=
+
Copyright (2003 Valve LLC.)
+
 
+
*translation by _KaszpiR_ nvt_kaszpir@go2.pl at 2004-06-1
+
*edited by PawelS at 2005-04-15
+
*edited by _KaszpiR_ at 2005-10-25
+
*edited by _KaszpiR_ at 2005-12-16
+
 
+
[[kategoria:HLDS]]
+
[[kategoria:gry]]
+

Aktualna wersja na dzień 11:40, 24 cze 2009

Spis treści

Opis

Half-Life TeleVision (HLTV) to system do nagrywania i rozprowszechniania obserwacji z gry Half-Life i jest automatycznie instalowana z HLDS. Potrafi nagrywać dema oraz odtwarzać je potem w internecie, potrafi przekazywać dane z serwera gry aby gracze mogli obserwować grę bez przeszkadzania graczom.

Pod serwery Source zobacz SRCTV

Half-Life TV, w skrócie nazywane HLTV, daje możliwość posiadania nielimitowanej liczby graczy oglądających gry, rozgrywających się w czasie rzeczywistym, oraz nagranych z nich dem. Oglądający mają możliwość przyglądania się grze w sposób zbliżony jaki daje funkcja Spectator w normalnym serwerze gry. Oczywiście ich pełne możliwości mogą być kontrolowane aby uniknąć pewnego rodzaju nieporozumień mogących występować po meczu.

Każdy widz może wybrać dowolny punkt obserwacyjny, albo wybrać dowolnego gracza, aby przyjrzeć mu się dokładniej itp. Istnieje możliwość uruchomienia funkcji Auto-Director, która zwiększa wrażenia z gry. Powoduje to, że kamera zmienia się automatycznie, przedstawiając najciekawsze fragmenty gry z danego punktu obserwacyjnego. Dzięki temu widz może siedzieć wygodnie i przygadać się akcji bez zbędnego szukania ciekawych momentów, poprzez ciągłą zmianę widoku. W miedzy czasie widzowie mogą się komunikować miedzy sobą używając standardowego systemu komunikacji tekstowej w HL.

Większość (jeśli nie wszystkie) modów ma dostęp do używania HLTV w grze, np. Counter-Strike (CS), Team Fortress Classic (TFC), Day of Defeat (DOD) i inne.

Osoby udostępniające serwer HLTV maja pełną kontrole nad systemem HLTV:

  • mogą zmieniać liczbę slotów (czyli ilu widzów może oglądać mecz będąc podłączonym do właśnie danego serwera HLTV)
  • można wysyłać kolorowe napisy na ekrany widzów
  • można kontrolować zdalnie HLTV jak i serwer gry
  • można ustawić logo
  • można ustawić opóźnienie aby uniemożliwić podpowiadanie w grze innym graczom (domyślnie juz jest na 30 sekund)

Postawienie prostego serwera HLTV nie jest zadaniem trudnym - właściwie starczy wpisać 3 komendy i leci. Jednakże więcej można wycisnąć i ustawić jeśli trzeba. Natomiast ustawianie większej sieci HLTV na np tysiące widzów wymaga większego nakładu pracy oraz koordynacji oraz znajomości nie tylko prostych funkcji HLTV ale także znajomości sprzętu komputerowego i łączy internetowych.

Oglądanie gier

Poniższy opis może być dobry dla gier przed era Steam, w Steam może to wyglądać inaczej ale pewnie jest podobnie.

Aby oglądać grę poprzez HLTV, uruchom Half-Life, wybierz opcje Mulitplayer i wybierz 'Find Servers'. Aby znaleźć aktualnie nadawane gry wybierz 'Spectate' i naciśnij 'Refresh All'. Po zaktualizowaniu listy dwukrotnie kliknij na serwerze który chcesz oglądać jak wszystko będzie ok to się podłączysz.

Rozgrywki ligowe często są nadawane poprzez HLTV, podaje się wtedy numer IP:Port serwera HLTV jaki będzie w użyciu - może być to wiele adresów z powodu wielu proxy wykorzystywanych do nadawania, jeśli istnieje duże zainteresowanie. Zamiast szukać serwerów można wtedy użyć opcji 'Favorites' i dodać tam numer ip do listy.

Można się także podłączyć wpisując komendę z konsoli (jeśli aktywna), wpisując podobnie jak poniżej

connect ip:port 

Przykład:

connect 123.34.56.7:27020 

Domyślnym portem jest port 27020, ale może być on zmieniony. Aby się podłączyć do HLTV trzeba podawać numer portu gdyż domyślnie gra dodałaby sama z siebie port 27015 (jako domyślny).

Grę można oglądać z rożnych perspektyw:

  • Chase Cam - kamera podąża za graczem.
  • First Person - widzimy obraz bezpośrednio z oczu gracza.
  • Free Look - możemy sami dowolnie przemieszczać się po mapie i obserwować.
  • Map Overview - ogólny rzut a mapę z góry
  • Map Chase - rzut na mapę z góry ale mapa przesuwa się utrzymując wybranego gracza w centrum widoku.(czasem jak nie ma *grafiki to zamiast widoku mapki mamy zieloną kratkę, krótkie info na końcu w FAQ)

Najprostszą metodą zmiany widoku jest naciskanie klawisza odpowiadającego za funkcję JUMP (najczęściej prawy klawisz myszy albo SPACJA). Można także użyć menu naciskając klawisz DUCK (domyślnie CTRL),a tam możesz zmodyfikować aktualne ustawienia widoku. Naciskając klawisz USE (domyślnie E) możesz zmieniać ustawienia widoku - tzw PIP,rozwinięcie skrótu oznacza Picture-In-Picture (widok w widoku).

Poniższe komendy w konsoli gry gracza Half-Life są dostępne aby zmienić ustawienia:

  • spec_autodirector <0|1> - Auto Director działa/nie działa
  • spec_drawcone <0|1> - pokazuje stożek wizji na mapie
  • spec_drawnames <0|1> - pokazuje imiona graczy pod ich pozycjami
  • spec_drawstatus <0|1> - pokazuje informacje o grze
  • spec_pip <0|1> - Picture-In-Picture działa/nie działa (PIP)
  • spec_menu - otwiera menu widza/obserwatora
  • spec_help - pokazuje ekran pomocy
  • spec_decal - komentator HLTV sprejuje proxy custom decal - logo
  • spec_mode <1-6> [<0-4>] - ustawia główny widok, drugi parametr kontroluje PIP, nie wszystkie kombinacje działają

Główne:

  • 1 : Zablokowany Pościg
  • 2 : Swobodny Pościg
  • 3 : Swobodny Widok
  • 4 : First Person (z oczu)
  • 5 : Widok Mapy 6 : Widok Mapy z Pościgiem

PIP:

  • 0 : PIP wyłączone
  • 1 : Swobodny Pościg
  • 2 : First Person (z oczu)
  • 3 : Widok Mapy
  • 4 : Widok Mapy z Pościgiem

Podstawy HLTV

Hltv.graph1.gif

Podstawą HLTV jest system rozpowszechniania - czyli serwer HLTV jako aplikacja, powszechnie zwany także HLTV proxy. Serwer HLTV jest aplikacją konsolową która w działaniu przypomina trochę serwer dedykowany HLDS. Aby nadawać grę do oglądania, HLTV proxy musi się podłączyć do serwera gry tak jak normalny gracz, jednakże przechodzi on od razu do grupy Spectators. Widzowie natomiast podłączają się do HLTV proxy i oglądają grę. W ostateczności to wygląda mniej więcej tak:

HL Game Server -> HLTV Proxy => Spectator Clients czyli Gra -> HLTV -> Widzowie

Ilość widzów jaka jest obsługiwana przez dany HLTV Proxy zależy od wydajności sprzętu oraz od łącza sieciowego. Teoretycznie jeden proxy może maksymalnie mieć 255 widzów. Jednakże w rzeczywistości proxy ma mniej graczy gdyż 100 widzów wymaga wykorzystania w pełni w obu kierunkach 2MBit'owego łącza. Im więcej widzów tym większe łącze, więcej ramu, i większe użycie procesora. Oczywiście jak nie da się wszystkich upchnąć na 1 proxy to się tworzy kilka.

Wtedy układ wygląda inaczej. Pierwszy HLTV proxy podłącza się do gry i jest wtedy nazywany Master proxy. Wysyła on wtedy info do innych HLTV proxy, które z kolei się podłączają nie do serwera gry, ale właśnie do Master proxy - wtedy nazywają się one Relay proxy. Można w ten sposób tworzyć łańcuchy albo drzewa proxy - jedynym limitem jest przepustowość sieci oraz wydolność sprzętu. Należy tworzyć je tak aby nie następowało zbytnie przeciążenie, szczególnie sieci, gdyż przeważnie występują braki zasobów sieciowych (zbyt mały transfer łącza w stosunku do wymagań, lagi itp.).

Relay proxy przesyła więc dane do graczy lub innych HLTV proxy. Master Proxy przeważnie przesyła dane do Relay proxy ale może tez wysyłać do innych obserwatorów, często administratorów całości.

Przykład:

                                  -> HLTV Relay Proxy 1 => Spectator Clients
HL Game Server -> HLTV Master     -> HLTV Relay Proxy 2 => Spectator Clients
                                  -> HLTV Relay Proxy 3 => Spectator Clients

Przykład 2:

                                                                      => Spectator
                      -> Relay Proxy Level A 1 => Relay Proxy Level B => Spectator
Game Server->Master   -> Relay Proxy Level A 2 => Spectator (oper)
                      -> Relay Proxy Level A 3 => Spectator
                      -> Spectator Clients (admin)

Rozpowszechnianie HLTV

Prześledźmy najprostszą konfigurację HLTV na LAN, albo do nagrania meczu. Jest to chyba najczęściej spotykane rozwiązanie na turniejach, dlatego domyślne ustawienia nie muszą być zmieniane.

Wybierz maszynę na której będzie działał serwer HLTV (może to być tez ten sam serwer co serwer HLDS) Jeśli trzeba zainstaluj HLDS oraz grę rozgrywaną na serwerze, np. Mod Counter-Strike (zawiera on wszystko czego wymaga HLTV do działania) Uruchom aplikację HLTV - pojawi się konsola z informacjami o inicjalizacji, jeśli trwa to za długo uruchom HLTV z parametrem -nodns (wtedy nie czeka się na rozszyfrowanie nazw domen, dobre na LAN bez internetu)

Po chwili konsola powinna być gotowa do przyjmowania poleceń,pojawi się znaczek '>'

Wpisz unikalną nazwę dla aplikacji, będzie ona pokazywana na scoreboardzie

name "HLTV Proxy Patrzy" 

Załóżmy ze HLTV Proxy jest na numerze ip 192.168.1.2, natomiast serwer gry HLDS jest na numerze 192.168.1.3:27015 i działa.

Aby podłączyć nasze HLTV do serwera gry, wpisujemy:

connect 192.168.1.3:27015 

i po chwili HLTV powinno się podłączyć do gry i być gotowe na przyjęcie widzów. Aby się upewnić wpisz

status 

powinno się pojawić cos mniej więcej takiego:

--- HLTV Status ---
Local IP 192.168.1.2:27020, FPS 72.8, Network In 0.8 Out 0.9
Local Slots 128, Spectators 0, Proxies 0
Source: Server "Half-Life" (192.168.1.3:27015)
Total Slots 128, Spectators 0, Proxies 1
Time 01:02, Game "valve", Map "maps/frenzy.bsp", Players 1

Komenda status pokazuje: IP serwera HLTV, port serwera HLTV (domyślnie 27020), liczbę Klatek, ruch sieci w kB/s ilość miejsc dla widzów lokalnych, aktualna liczbę oglądających, liczbę dostępnych proxy Źródło przekazu (serwer gry, inny proxy czy tez demo nadawane, adres:port ip) sumy całkowite (totals) to suma wolnych slotów i widzów na wszystkich proxy nadających grę. Czas gry, rodzaj modu (tutaj valve, może być cstrike, dod, tfc...), mapę, graczy na serwerze. Info o nagrywanym demie (jesli nagrywane).

Oglądanie dem z HLTV

Dema z HLTV są takie same jak dema w normalnej grze, ale dodatkowo posiadają opcję wybrania dowolnego punktu widoku gry. Oznacza to że mozesz oglądać grę z dowolnego miejsca na mapie, widzieć kazdego gracza z róznych widoków (z oczu z tyłu, z boku).

Aby odtwarzać demo nagrane poprzez HLTV nie musisz posiadać serwera HLTV. Wystarczy, że po odpalisz grę i w konsoli wpiszesz

playdemo <nazwa_dema> 

albo

viewdemo <nazwa_dema> 

a obejrzysz dane demo. Róznica pomiędzy playdemo a veiwdemo jest znacząca - ta druga opcja daje mozliwość przwijania dema, pauzowania, czy tryb spowolnienia ruchu.

Nagrywanie dem poprzez HLTV

Aby nagrać demo musisz wykonać kilka operacji:

  • trzeba mieć uruchomione HLTV proxy (czyli serwer hltv)
  • należy podłączyć HLTV proxy do serwera gry na którym grają gracze i rozgrywają mecz
  • należy uruchomic komendę nagrywania.

Powiedzmy,że już masz uruchomione HLTv i że jest podłączone do serwera gry (opisane jes to pare punktów wyżej) Tera należny wpisac komendę do nagrywania

record nazwa_dema 

Wszelkie gry będa nagrywane po wykonaniu tej komendy. Wszelkie dema sa zapisywane w katalogu aktualnego mod'a, czyli na przykład dla Counter-Strike 1.6 w podkatalogu cstrike. Uwaga! Pod Windows należy stworzyć ten katalog w podkatalogu z którego uruchamiamy hltv (dedicated server) - inaczej dema nie będą zapisane.

Wszelkie dema mają specjalnie oznakowane nazwy

<nazwa_dema>-<YYMMDDhhmm>-<map>.dem

Pierwszy człon nazwy to wiadomo - nasza nazwa dema. Na przykład nazwa jakie graja klany. Dalej jest format daty, każde 2 liczny reprezentuja odpowiednio:

  • rok w formacie ostatnich 2 cyfr
  • miesiąc
  • dzień
  • godzine (24h)
  • minuty

Dalej jest nazwa mapy, oraz rozszerzenie, czyli .dem

Dema zapisuja dokładnie te same dane które otrzymują gracze podczas rozgrywki i będący obserwatorami. To zonacza, że HLTV nagrywa z tym samym opóznieniem danych jakie jest przesyłane do tych obserwatorów.

Aby sprawdzic czy demo sie nagrywa starczy wpisać w konsoli HLTV

status

Aby zatrzymać nagrywanie dem wpisz

stoprecording

Mecze i nagrywanie dem

Czasem nie chcemy aby ktokolwiek podczas nagrywania dema miał możliwośc wejścia na HLTV. Stosujemy tę opcje aby zmiejszyć obciążenie serwera, albo aby HLTV tylko i wyłącznie nagrało demka, które potem opublikujemy na sieci.

Wtedy warto uzyć poniższych ustawień, aby uzyskac optymalne parametry przy nagrywaniu

maxclients 0 // nie pozwalaj na obserwatorów
delay 10       // ustaw niskie opóżnienie, zmniejsza obciążenie HLTV, sczególnie jeśli na serwerze gry
rate 10000    // zmaksymalizuj przepustowość
updaterate 20 // ustaw standardowe update dla hltv
nomaster 1     // nie rejestruj w serwerach globalnych sieci WON/Steam

Często na oficjalnych meczach przeciwne drużyny nie ufają sobie nawzajem i nie pozwalają drugiemu zespołowi na ustawienie HLTV aby nagrać demo, bo obawiają się, że będzie używane do cheat'owania - podpowiadane np. O pozycji graczy i ich ruchach. Aby tego uniknąć gracze mogą sprawdzić komendą status stan HLTV. Powinien on powiadomić o delay (czyli opóźnieniu transmisji), liczbie widzów i wolnych slotach, numerze ip. HLTV umożliwia także włączenie dźwięku (w tym voice) w czasie, gdy ludzie są połączeni z serwerem w czasie rzeczywistym.

UWAGA! HLTV ma STEAM_ID równy HLTV tylko i wyłącznie!!! Wszystko inne to gracz/bot!!

Raz słyszałem o aferze gdy jedna z drużyn miała gracza, który miał imię HLTV ale w konsoli gracza jak się wstukało 'status' albo 'users' to pokazywało jego normalny SteamID.

Aby nie było żadnych nieporozumień i HLTV używane było TYLKO do nagrania dema, używamy poniższej komendy (oczywiście dodaj odpowiednie parametry jeśli wymagane):

hltv +maxclients 0 +record mecz +connect ip:port 

Jeśli tak wystartujemy HLTV to nie będzie tam hasła rcon (chyba, że jest w pliku hltv.cfg) - więc zdalna kontrola hltv będzie niemożliwa.Dodatkowo dopóki maxclients nie jest zmienione, to próba podłączenia do hltv proxy po prostu nie powiedzie się.

Ewentualnie dostęp do hltv poprzez rcon powinien być w rękach administratora lub match referee, albo kapitanów obu drużyn.

Warto sprawdzić na HLSW status HLTV.

Większe przekazy

Ustawianie sieci HLTV mogącej przyjąć większą liczbę obserwatorów (pow 1000) jest zadaniem trudnym i czasochłonnym. Poniższa sekcja powinna pomóc w konfiguracji i uruchomieniu takiej sieci. Jedną z najważniejszych cech takiej sieci powinna być jakość a nie ilość – lepiej jest oferować mniejszą ilość dostępnych miejsc dla widzów niż operować na maksimum wydolności przepustowości łącz. Lepiej jest przecież mieć mniejszą ilość osób, ale zadowolonych z efektu, niż masę zalagowanych maruderów, którzy potem mogą nie byc przychylnie nastawieni do podobnych projektów.

W rzeczywistości w dzisiejszej dobie portali częściej spotkamy się z ustawianiem małych sieci w celu nagrania dema, a potem umieszczenia spakowanych demek na serwerze www niż transmisje online.

Ale przejdźmy do przekazów zaawansowanych. Przede wszstkim trzeba dobrze obliczyć wydajność łącz dla serwera HLTV. Trzeba zakładać, że na jednego obserwatora przypada jakieś 3KB/s ruchu sieciowego. Jednak ta wartość może się zmieniać w zależności od modu gry, mapy, ilości graczy. Aktualnie Użucie CPU i pamięci RAM nie powinno stanowić problemów (HLTV nie jest tak zasobożerne jak serwer).

Poniższa lista daje ogólne pojęcie na ile mniej więcej powinieneś liczyć od serwera HLTV w zależności od posiadanego łącza:

  • ISDN 64 Kbps : 2 obserwatorów (nadaje się więc raczej do nagrania dema tylko i wyłącznie)
  • DSL 128 Kbps (upload) : 5 obserwatorów, typowa Neostrada
  • T1 1.5 Mbps : 75 obserwatorów
  • LAN 10 Mbps : 500 obserwatorów
  • T3 75 Mbps : 4000 obserwatorów

Aby kontrolować limit obserwatorów na HLTV uzyj zmiennej maxclients.

Dodatkowo upewnij się, że zmienna maxrate jest ustawiona na racjonalnym poziomie, powiedzmy 3500 kB/s (czyli maxrate 3500). Mniejsze wartości są dozwolone, ale może to spowodować, że obserwatorzy będą mieli zbyt duże choke. Choke oznacza, że serwer HLTV powstrzymuje się przed przesłaniem obserwatorowi zbyt dużej ilości danych w jednostce czasu przy zadanym rate (HLTV stara się nie floodować danymi do obserwatora). Tak najczęściej dzieje się przy bardzo dużym ruchu na serwerze gry (ostro sie strzelają). Warto pamiętać, że maxrate kontroluje transfer do obserwatora, a nie do innych HLTV proxy.

Aby zmniejszyć ogólny ruch sieciowy można wyłączyć przekazywanie komunikatów testowych na HLTV. Służy do tego komenda chatmode 0.

Dodatkowo można zmiejszyć ilość uaktualnień pozycji graczy itp. z domyślnej wartości 20 na 10, wystarczy wpisać updaterate 10. Ogólnie zmiejszenie updaterate do 10 może zaoszczędzić do 25%łącza, gdyż obserwatorzy nie muszą tak często dostawać danych jak normalni gracze. Zwiększanie updaterate mija się z celem, szczególnie jak nagrywamy dema – dostaniemy wtedy olbrzymiej wielkości pliki – wtedy nawet zzipowane dema będą się długo ściągać ze stron www.

Bardzo częstym ustawieniem dla większych wydarzeń jest używanie dwóch dedykowanych serwerów HLTV w celu stworzenia segmentu z miejscami prywatymi i publicznymi. Prywaty segment jest wtedy na przykład dla amdinistratorów, organizatorów, a publiczny dla reszty widzów.

Załóżmy, że przekaz będzie transmitowany z rozgrywek meczowych z imprezy LAN. Serwer gry, na odbywa się mecz jest zamknięty dla publiczności, i nie jest dostępny z zewnątrz. Zapewnia to maksimum bezpieczeństwa przed atakami (typu DOS itp.) z zewnątrz, oraz zwiększa komfort gry grających.

W takim układzie dopuszcza się jeden serwer HLTV dpo podłączenia – nazywa się on HLTV Master, i będzie on umiejscowiony w sieci LAN, jego nr ip powinien być utajniony. Na nim powinno sie nagrywać dema, prowadzić projekcję na rzutniki i zapraszać wybranych gości do oglądania meczu.

Teraz konfigurujemy drugi serwer HLTV. Podłączony będzie do serwera HLTV Master, czyli pierwszego HLTV. Ten właśnie serwer HLTV z zewnętrznym IP będzie on pełnił rolę tzw dispatcher'a, czyli jego adres będzie podawany do wiadomości publicznej. Wszelkie relay proxy powinny się podłączać właśnie do niego, podobnie inni obserwatorzy powinni być kierowani na ten adres – HLTV dispatcher przydzieli im wtedy odpowiedni serwer relay proxy.

Dzięki takiej konfiguracji mamy bezpieczną sieć bez zbytniego obciążenia ruchem, gdyż całkowite obciążenie sieci jest równomiernie rozłożone po wszystkich relay proxy.

Oczywiście pliki konfiguracyjne serwerów Master, Dispatcher i Relay są różne. Przykłady:

master.cfg:

nomaster 1 // nie rejestruj w serwerach WON
proxypassword MyPWD // podłączenie do hltv tylko jak sie zna hasło
publicgame 0 // nie podawaj ip serwera gry HLDS
dispatchmode 0 // nie przekierowuj obserwatorów


dispatcher.cfg:

forcemaster 1 // zarejestruj w WON, bo to jest publiczne HLTV dla wszystkich
publicgame 0 // nie podawaj numeru ip serwera gry
dispatchmode 2 // przełączaj wszelkich obserwatorów do innych relay proxy
hostname MyGame // Publiczna nazwa serwera

relay proxy każdy ma własną konfigurację, zależną od jego właściciela.

Jeśli używasz 3 lub więcej serwery HLTV dobrze jest używać kontroli poprzez rcon wykorzystując jedno narzędzie. Najczęściej będzie to HLSW, ale mogą być panele WWW czy bezpośrednie stukanie w konsoli jakiegoś hltv proxy – ale to dopiero będzie lagować nagrane demo i wszystkich obserwatorów więc odradzam.

Aby kontrola poprzez rcon działała na każdym serwerze HLTV musi być ustawione adminpassword, np.

adminpassword "haslo"

Czasem chcemy aby do naszego serwera HLTV tylko wybrane serwery HLTV mogły się podłączyć – stosujemy więc proxypassword. Dzięki temu będziemy mogli mieć master server czysty, albo ograniczyć dostęp do disptcher'a tylko do wybranych providerów czy obserwatorów.

Dla każdego 1000 obserwatorów potrzebujesz jakichs 2ghz procesora. 1000 obserwatorów pobiera w sumie jakieś 3000kb/s, to jest jakieś 30mbit/s Tak czy siak trudno jest taką ilość ludzi upchnąć na jendym łączu – dlatego albo nagrywa sie dema i je publikuje na www, albo tworzy się sieć HLTV.

Maksimum połączeń na 1 serwer HLTV wynosi 255 użytkowników (jeśli na tyle pozwala łącze i sprzęt.

Konfiguracja HLTV

Wszelkie komendy są dostępne poprzez bezpośrednie wstukanie w konsoli HLTV (nie zalecane, przycina widzom grę i demo), przez plik .cfg, przez zdalny dostęp przez rcon.

Jak korzystać z komend

komenda <parametr_wymagany> [<parametr>] 
 - opis

Komendy mogą mieć zero, jeden lub więcej parametrów, parametry w nawiasach kwadratowych są opcjonalne. Rodzaj parametrów

  • <string> - tekst, ciąg znaków, np "Ala ma kota"
  • <n> - liczba całkowita np 1337 hehheh
  • <f> - liczba zmiennoprzecinkowa 1.337
  • <IP:Port> - adres ip:port np 123.45.67.8:27020
  • <a|b|c> - ustawienie opcji a albo b albo c, można wybrać tylko jedną.

Znaki <,>,[,],| nie są pełnym przedstawieniem komend, i nie powinny byc dodawane. Przykład: Jeśli mamy komendę

 name <tekst>

oznacza to, że pod <tekst> wstawiamy dowolny ciąg znaków używając znaków cudzysłowu, np.:

name "Ala ma kota"

W starej wersji HLTV jak się wpisze początek komendy i wciśnie tab to powinno dopełnić komendę, ale istnieją wyjątki z powodu ciągłego rozwoju hltv (i trzeba się męczyć.

Jak wpisujecie poprzez HLSW czy zdalnie z konsoli w grze przez rcon, to musicie wpisywać całe komendy. W plikach .cfg trzeba wpisywać pełne komendy.

Nota: Inne Komendy

Reszta komend znajduję w artykule Komendy w HLTV. Zostało to specjalnie rodzielone aby skrócić artykuł.


Opcje przy starcie HLTV

Istnieją parametry które można ustawić jedynie przy starcie aplikacji, a nie poprzez komendy i nie działają w żadnych plikach cfg. Poniżej znajduje sie lista, reszta komend znajduję w artykule Komendy w HLTV.

-port <n>

  • ustawia domyślny port dla naszego proxy,
  • np.: możemy dać 27016, jeśli nie jest używany,
  • domyślnie 27020.

-ip <IP>

  • wymuszą używanie specyficznego IP, jeśli nasz serwer ma kilka numerów IP.

-comm <filename>

  • ustawia inne informacje, niż te które są w woncomm.lst zawierające informacje o serwerach master WON.

-nodns

  • bez DNS - nie rozwija nazw hostów na numery ip, szybsze, dobre na LAN.

-maxfps <n>

  • ustawia maksimum fps dla hltv (domyślnie 100), więcej znaczy mniejsze lagi, ale jednocześnie zwiększa użycie CPU.

-cachesize <n>

  • frame cache size (domyślnie 32 frames).

-highpriority

  • uruchamia HLTV z wyższym priorytetem (tylko Windows).

-steam

  • proxy uruchamia specjalny support dla Steam.

-dev

  • developer mode, zaawansowane funkcje jak są problemy.

Przykłady

Odpalanie kilku komend jednocześnie

hltv -maxfps 50 -nodns -port 27018

Start z konfigiem

Przykład odpalania z mieszanymi komendami:

hltv -nodns -port 27021 +exec hltv1.cfg 

A w pliku hltv1.cfg możemy wpisać interesujące nas komendy, np.

logfile hltv1.log // loguj wszystko do pliku
nomaster 1 // nie rejestruj w master servers (szybciej startuje)
forcemaster 0 // nie ma co na necie rejestrowac
publicgame 0 // ta gra nie jest do wgladu, hltv ma tylko nagrywac dema
adminpassword "rcon_hltv_1" // haslo do kontroli hltv poprzez rcon z hlsw
hostname "HLTV 1" // nazwa hltv
name "HLTV 1" // nazwa hltv na scoreboardzie

// mala reklama :)
// 5 sek, na dole, pomaranczowy tekst
loopcmd 1 60 localmsg "www.hlds.pl" 5 -1 0.85 00FFAAFF // nie mozna stosowac slashy

maxclients 0 // hltv ma tylko nagrywac, ustawiamy liczbe klientow na 0
autoretry 1 // automatycznie ma sie podlaczac po odlaczeniu
delay 90 // opoznienie w sekudnach
record hltv_1 // prefiks nazw dem z tego hltv, zacznij nagrywac
serverpassword "password1" // haslo na pierwszym serwerze meczowym, inaczej sie nie podlaczymy
connect 192.168.1.1:27015 // podlacz do pierwszego serwera meczowego
echo hltv1.cfg zaladowane
status // pokaz co sie dzieje

Z takim konfigiem hltv powinen sie podłączyc do zdefiniowanego serwera i nagrywać dema co zmianę mapy.

Opis wszystkich komend znajduję w artykule Komendy w HLTV.

Logo HLTV

Logo w lewym górnym ekranie podczas oglądania gry z HLTV. Widoczne jest także dla graczy na serwerze jeśli jest poprawnie ustawione.

Plik o formacie TGA musi być albo 24bit RGB albo 32bit RGBA (8 bit na kolor). A oznacza Alpha Channel i daje możliwość kontroli przezroczystości fragmentów loga. Logo bez kanału Alpha nie posiada przezroczystości.

Jeśli Alpha Channel nie jest poprawnie ustawiony to nie zobaczysz logo. Mały banner hltv.tga może być użyty do eksperymentów. http://www.slipgate.de/download/hltv.tga

Użyj swojego ulubionego programu do edycji grafiki.

Po tym jak logo jest poprawne należy je dodać do hltv. Używamy komendy:

bannerfile <plik>

w konsoli albo w pliku cfg

Przykład: - Wrzucamy plik moje_logo.tga do tego samego katalog gdzie jest aplikacja hltv, dodajemy do hltv.cfg: bannerfile moje_logo.tga

- Startujemy hltv, albo jeśli juz działa, dodajemy ręcznie do konsoli hltv (ta sama komenda co w poprzedniej linii)

- Aby się upewnić że logo zostało dodane , wpisujemy komendę: resources pojawi się cos w rodzaju:

File: "gfx/temp/6aa9c6cbdcd4f6961b95ab35edf97b95.tga", Size: 34039 bytes. 

Ta dziwna nazwa oznacza że zostało wygenerowane unikalne logo (dla danego serwera hltv). Jeśli chcesz aby rozpowszechnić zip'a z demem wraz z logiem musisz, jak sama nazwa wskazuje, dołączyć plik tga do zipa Normalnie jak gracz ogląda hltv to ściąga logo do katalogu <mod>/gfx/temp/i tam siedzi sobie .tga takie jak podaje komenda resources. To logo jest czasem wymagane do poprawnego odtworzenia dema (kiedyś był z tym problem na ClanBase)

Tak więc jak nagrałeś demo na hltv, to idź do katalogu <mod>/gfx/temp, skopiuj tga i spakuj razem z demem zachowując strukturę katalogów zip:

test-0405232144-de_aztec.dem
/gfx/temp/d5fb1c03ac7f9297cbdea9bedda09815.tga

Konfiguracja HLDS

Serwery Half-Life mają opcję kontroli nad hltv sv_proxies <n> - definiuje ile hltv proxy może się podłączyć do danego serwera domyślnie ustawiane na 1 oznacza ze będzie jeden proxy, czyli jako master proxy, jeśli chcesz zakazać podłączania się hltv ustaw na zero. Inne wartości są eksperymentalne i nie powinno się wpuszczać więcej niż 2 proxy na serwer gry (czasem nawet nie więcej niż 1).

Hasła dostępu i Rcon – kontrola zdalna

Warto abyś się zapoznał z artykułem rcon

Odpowiedniki

Widzieliście komendy serverpassword, adminpassword, proxypassword, ale możliwe że wolelibyście znać odpowiedniki tychże komend w programach które lepiej znacie - mam na mysli serwer HLDS oraz konsolę z gry podczas grania.

HLDS – HLTV

  • sv_passwordproxypassword oraz spectatorpassword (w zależności czy podłącza się inne hltv czy obs)
  • rcon_passwordadminpassword

Gracz – HLTV

Komendy do kontrolowania innego serwera z konsoli gracza/hltv.

  • rcon_password - rconpassword
  • rcon_addressrconaddress
  • rcon_portrconaddress (ma format ip:port)
  • rcon - rcon

Przykład:

Mamy serwer HLDS a na nim takie parametry

ip:port 192.168.1.1:27015
sv_password "mecz"
rcon_password "haslo_rcon_hlds"

Na serwerze HLTV mamy takie parametry

ip:port 192.168.1.1:27020
adminpassword "haslo_rcon_hltv
spectatorpassword "spect"
serverpassword "mecz"

Z takimi parametrami HLTV wejdzie na serwer HLDS bo zgadzają się hasła ("mecz")

Kontrola serwera HLDS poprzez rcon z HLTV

Pamiętajcie, stukanie bezpośrednio w konsoli HLTV będzie powodować lagi w demie i u obserwatorów. W konsoli HLTV wpisumeny:

rconpassword "haslo_rcon_hlds" 
rconaddress 192.168.1.1:27015 
rcon status 

Powinen się pojawić tekst o statusie serwera, jeśli nie ma to znaczy że coś jest nie tak (nie ma co wpisywać bo dostaniecie bana na ip na maszynie do której się próbujecie dostać. Jak wszystko ok, to możemy wpisywać takie komendy jak choćby

rcon say "Admin proszony na irca!"

i podobne.

Kontrola serwera HLDS poprzez rcon z konsoli gracza

Teraz zobaczmy jak z konsoli klienta, czyli gracza (albo poprzez HLSW) możemy kontrolować serwer HLDS. Pamiętajmy na jakim porcie stoi serwer HLDS, szczególnie jeśli hostuje on kilka serwerów!

rcon_password "haslo_rcon_hlds"
rcon_address 192.168.1.1
rcon_port 27015
rcon status

Widać, że podobnie jak w konsoli HLTV, różnica jest tylko w komendach. Możemy także kontrolować HLTV poprzez rcon, z poziomu gracza:

rcon_password "haslo_rcon_hlds"
rcon_address 192.168.1.1
rcon_port 27020
rcon status

Różnica jest w porcie oraz użytym haśle dostępu.

Oczywiście w powyższych przykładach parametry będą się różnić w zależności od prawdzwych serwerów. Warto także pamiętać na jakim serwerze się jest – czy na HLTV czy serwerze HLDS. Zasada kontroli może być poszerzona także o serwery HLTV typu relay – wtedy z master proxy albo dowolnego innego komputera można sterować innymi maszynami. Dlatego jeśli nie ma się konfigów albo robi się to na żywca bez przygotowania będzie to zajęcie czasochłonne.

Filmiki z opisanych operacji są załączone do artykułu, różnić się mogą jedynie nuemrami ip, portami i hasłami.

FAQ

Nie mam pliku hltv.cfg

Windows: stwórz go np.: notepad'em (upewnij się, że nie ma rozszerzenia .txt tylko .cfg) Linuks: stwórz go komendą w konsoli: touch hltv.cfg i edytuj ulubionym edytorem (vi, vim, pico, mcedit)

Jak sterować zdalnie HLTV ?

Naucz się sterować HLDS poprzez RCON, następnie ustawiasz hasło na serwerze HLTV (patrz wyżej w ustawieniach), a w kliencie - albo poprzez HLSW, albo bezpośrednio z gry:

rcon_port <port na którym działa hltv>
rcon_address <adres ip na którym działa serwer hltv>
rcon_password <hasło na zdalny dostęp do hltv>

Następnie wpisujesz komendy HLTV poprzedzając je dopiskiem rcon

Przykład:

rcon say Test rozmowy HLTV!
rcon record nazwadema
rcon stoprecording

HLTV nie musi być aktualnie na serwerze na którym grasz, więc możesz je zaprosić:

rcon serverpassword "clanwar"
rcon connect _clanwar_ip_:port

i po chwili (zależy od parametru delay) powinien być.

Ściągnąłem demo z internetu, jak je obejrzeć ?

  1. wrzuć demo do katalogu mod'u, może to być cos takiego jak
c:/program files/steam/steamapps/twoj@mail/cstrike
  1. uruchom grę tak, aby była dostępna konsola, otwórz konsole
  2. w konsoli wpisz: viewdemo nazwa_dema.dem
  3. jeśli to laguje to spróbuj playdemo nazwa_dema.dem

Linux/Windows - mam problem z otwarciem jakiegoś pliku

Console initialized. 
FileSystem initialized. 
Error:libSteamValidateUserIDTickets_i386.so: cannot open shared object file: 
No such file or directory 
***** FATAL ERROR ***** 
Proxy::Init: couldn't load network module. 
*** STOPPING SYSTEM *** 
ERROR! System::AddModule: couldn't initialize module (null). 
Type 'help' for a list of commands. 

Notka - zobacz też następne pytanie w FAQ dodaj przed komendą uruchamiania hltv taką oto linię:

export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH";

Linux/Windows - upewnij się ze uruchamiasz hltv z katalogu gdzie biblioteki sa dostępne - (ew dodaj dany katalog do ścieżki lub wrzuć liby do ścieżek) ewentualnie zmień w skrócie working dir na cos podobnego do

c:/program files/steam/steamapps/twoj@mail/dedicated server

albo w Linuksie dodaj linie aby zmienił ścieżkę (zwykle cd path/to/hlds/)

Linux - Jak uruchamiać HLTV na screenie ?

Tutaj prosty skrypt, oczywiście zedytuj go, aby bardziej ci pasowało :D

#!/bin/bash
export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH";
screen -A -m -d -S hltv ./hltv +exec hltv.cfg 

Zobacz też: screen.

Czy można scalić dema, złączyć je razem ?

Nie wiem, może jakimś programem do edycji demek. Komenda appenddemo podłącza do dema ścieżke cd audio :(

Przy podłączeniu mam problem z jakimś numerem protokołu

Pewnie chcesz hltv ze starego cs podłączyć pod nowego CS (czyli 1.5 na 1.6) niestety to nie pójdzie, musisz zrobić upgrade hltv - najlepiej do najnowszej wersji (starczy jak ściągniesz dedicated server 'valve')

HLTV na LAN bez internetu, włącza się długo

Oczywiście, służą do tego komendy do przyśpieszenia startu HLTV:

nomaster 1
forcemaster 0

Jeśli jest opcja -steam to wyłącz, a reszta w konfiguracji pozostaje bez zmian.

ERROR! Network::CreateSocket: WSAEADDRNOTAVAIL

Zmień numer ip/port, bo pewnie są już w użyciu przez inne aplikacje (może już inny serwer gry/hltv)

WARNING! DemoFile::StartRecording: coudn't open demo file demoname.dem

Stwórz podkatalog <mod>, np.: cstrike w tym samym, w którym odpalasz HLTV, to najczęściej zdarza się pod Windows. Jak odpalasz HLTV z katalogu:

C:\Program Files\Steam\SteamApps\twoj@mail\dedicated server

To stwórz podkatalog:

C:\Program Files\Steam\SteamApps\twoj@mail\dedicated server\cstrike

HLTV nie pozwala wejść graczowi na serwer, bo zabiera jego steam_id/slot

  • Ustaw sv_proxies na 0 i wykop HLTV
  • Wykop HLTV tuż przed podłączeniem się gracza
  • Zbanuj na serwerze numer IP HLTV na kilka minut, podłącz się do gry, niech gracze wejdą i dopiero odbanuj ip HLTV

Więcej o banowaniu w poradniku na temat rcon.

Jak oglądam demo z opcja PIP mam poszarpany obraz z czarnymi kreskami

gl_ztrick 0 w konsoli gracza

Jak wyłączyć SlowMotion ?

Wpisujemy w hltv.cfg:

slowmotion 1.0

albo

unload director001

To drugie działa jak nagrywamy demo (jest ładowane jak znowu zaczniemy nagrywać, można pobawić się z loopcmd aby wykonywał co minute komende na unload modułu albo wykonywał konfig, który będzie zawierał różne komedy, a w nich wyładowanie modułu, jednak polecamy:

slowmotion 1.0

Można także użyć:

slowmotion 0 0

W serwerach np.: CS 1.6 trzeba stworzyć plik director.cfg w tym samym katalogu, gdzie znajduje się hltv.cfg i dodać w nim linijke

slowmotion 1.0

ewentualnie nie ładować biblioteki autodirector (wystarczy zmienić director.dll/director_i386.so na inną nazwę i wtedy załadować hltv)

WARNING: UDP_Opensocket: setsockopt ID_multicast_loop: WSAENOPROTOOPT

Zignoruj ten komunikat. powodowany przez non-winnt klientów, to tylko komunikat z funkcji deweloper i nic nie robi i nie szkodzi. Zdarza się jak twoja sieciówka nie obsługuje pakietów typu multicast.

Zamiast mapki mam zielona kratkę

Nie masz pliku overview mapy, więcej w poradniku o overview w katalogu <mod>/overviews powinny się znajdować pliki:

<mod>/overviews/<nazwa_mapy>.bmp
<mod>/overviews/<nazwa_mapy>.txt
<mod>/overviews/<nazwa_mapy>.tga

Czasem może być tylko *.bmp albo tylko *.tga, albo oba na raz zainstaluj i powinno działać. Administratorzy serwera HLDS powinni zainteresować się ta funkcja i dodać pliki do *.res ręcznie lub przy użyciu aplikacji o nazwie resgen, oczywiście jeśli posiadają te pliki.

Komentator gada, ale w ogóle go nie rozumiem

'Czasem dźwięki w grze są zbyt głośne i trzeba komentatora z lekka doprawić, a więc wpisz w konsoli gracza:

voice_overdrive 32
voice_scale 2

możesz dodać też je do signoncommands na hltv – wtedy będzie wykonywana na graczach podłączających się na hltv:

signoncommands "voice_overdrive 32;voice_scale 2"

Nie mogę się podłączyć do lokalnego proxy

Uruchom hltv z parametrem -ip i ustaw odpowiedni adres ip. To się zdarza jak masz wiele ip na serwerze, a łączysz się na nazwę hosta, która zwraca inny numer ip niż powinno.

Bandwidth capacity exceeded

Widzowie czasem nie mogą się poprawnie podłączyć do proxy mimo wolnych miejsc HLTV mierzy sobie sieć i oblicza packet loss (stratę pakietów) i odrzuca nowe połączenia jeśli loss do graczy przekracza 25%. Ustawione specjalnie, aby nie było przeciążeń. Dodatkowo oznacza, że twoje łącze jest mocno obciążone i że wartość maxclients czy maxclientrate powinna być zmniejszona na serwerze HLTV Możesz sforsować HLTV, aby ignorowało to poprzez ustawienie (100%) (nie rekomendowane):

maxloss 1.0

Linki

Osobiste
Przestrzenie nazw
Warianty
Działania
HLDS.pl - Menu:
Inne
IRC
Inne sekcje:
Znajomi:
Narzędzia