HLStatsX

Od HLDS.pl
(Różnice między wersjami)
Skocz do: nawigacji, wyszukiwania
(błąd ortograficzny: http://so.pwn.pl/zasady.php?id=629620)
(Opis)
 
(Nie pokazano 10 wersji utworzonych przez jednego użytkownika)
Linia 2: Linia 2:
 
{{stub}}
 
{{stub}}
  
'''HLStatsX''' są to statystyki bazujące na [[HLStats]]. HLStatsX jak swój pierwowzór są generowane w czasie rzeczywistym na podstawie przesłanych logów. Różnią się natomiast od [[HLStats]] tym że są tylko i '''wyłącznie''' do gier na silniku '''[[Source]]''' czyli CS:Source, DOD:S itp.
+
'''HLStatsX''' są to statystyki bazujące na [[HLStats]]. HLStatsX jak swój pierwowzór są generowane w czasie rzeczywistym na podstawie przesłanych logów. W tej chwili HLStatsX są oficjalnie dostępne tylko w wersji Premium (płatnej), ale istnieją trzy projekty które kontynuują rozwój darmowej wersji.
 +
 
 +
* <del>[http://lart2150.com/forum/ Lart's Edition] - Zawiera głównie wsparcie dla [[Team Fortress 2]] oraz kilka funkcji z płatnej wersji Premium.</del> - Projekt upadł
 +
* <del>[http://forum.elstatsneo.de ElstatsNEO] - w zasadzie to co wyżej plus jeszcze więcej bajerów wzorowanych na wersji Premium.</del> - Projekt upadł
 +
* [http://www.hlxcommunity.com HLstatsX Community Edition] - to samo co wyżej, tyle że o wiele bardziej odpicowane. Największym atutem tej wersji jest wsparcie dla gier na silniku [[Half-Life]] oraz aktualizacje.
 +
 
 +
Poniżej instrukcja instalacji dla wersji '''HLstatsX Community Edition'''
  
 
=Wymagania=
 
=Wymagania=
* [http://hlstatsx.com/download HLStatsX]
+
* [[PERL]] 5 lub nowszy z zainstalowanym modułem DBI.
* [[PERL]] lub nowszy
+
* [[PHP]] 5 lub nowszy.
* [[PHP]] 4.3 lub nowszy
+
* [[MySQL]] 4 lub nowszy.
* [[MySQL]] 3.23 lub nowszy
+
* [[Rcon]] do serwera [[Source]].
* [[Rcon]] do serwera [[Source]]
+
* Konto shell'owe.
* Konto shell'owe
+
 
 +
=Download=
 +
 
 +
* HLstatsX Community Edition: Do zassania z: http://www.hlxcommunity.com/
  
=Zalecenia=
+
=Obsługiwane gry=
* [http://www.beetlesmod.com/ Beetlesmod]
+
* Age of Chivalry
* [http://www.mani-admin-plugin.com/ Mani Admin Plugin]
+
* Battle Grounds 2
 +
* [[Counter-Strike: Source]]
 +
* [[Counter-Strike]]
 +
* [[Day of Defeat: Source]]
 +
* [[Day of Defeat]]
 +
* Dystopia
 +
* Fistful of Frags
 +
* Fortress Forever
 +
* GoldenEye: Source
 +
* Half-Life 2 Capture the flag
 +
* Half-Life 2 Multiplayer
 +
* [[Insurgency|Insurgency: Modern Infantry Combat]]
 +
* [[Left 4 Dead]]
 +
* Natural Selection
 +
* Stargate: The Last Stand
 +
* [[Team Fortress 2]]
 +
* Team Fortress Classic
 +
* The Hidden: Source
 +
* Zombie Panic! Source
  
=Instalacja HLStatsX [Linux]=
+
=Instalacja HLstatsX Community Edition [Linux]=
  
 
==Instalacja==
 
==Instalacja==
* Rozpakuj gdzieś plik z HlstatsX
+
* Rozpakuj gdzieś plik z odpowiednią wersją HlstatsX CE.
* Przenieś katalogi ''hitbox'', ''hlstatsinc'' oraz <u>zawartość</u> katalogu ''web'' w miejsce gdzie mają być statystyki.
+
* Przenieś <u>zawartość</u> katalogu ''web'' w miejsce gdzie mają być statystyki.
  
==Tworzenie bazy danych dla HLStatsX==
+
==Tworzenie bazy danych dla HLStatsX CE==
 +
===Przez Shella===
 
* Stwórz bazę danych w SQL-u
 
* Stwórz bazę danych w SQL-u
przez shella
 
 
  shell> mysqladmin create hlstatsx
 
  shell> mysqladmin create hlstatsx
 
* Stwórz tabele potrzebne do pracy HLStats
 
* Stwórz tabele potrzebne do pracy HLStats
  shell> mysql hlstats < hlstats.sql
+
  shell> mysql hlstats < install.sql
shell> mysql hlstats < game_<mod>.sql
+
za "< mod >" wstaw skrót gry dla której będą naliczane statsy.
+
  
 
* Stwórz użytkownika i hasło, dla HLStats
 
* Stwórz użytkownika i hasło, dla HLStats
Linia 35: Linia 60:
 
  mysql> GRANT ALL ON hlstats.* TO hlstats IDENTIFIED BY 'jakieshaslo';
 
  mysql> GRANT ALL ON hlstats.* TO hlstats IDENTIFIED BY 'jakieshaslo';
  
* Jeżeli nie masz praw, aby tworzyć nowe bazy i musisz użyć istniejącej dodaj odpowiednie tabele przez np. [http://www.phpmyadmin.net/ myphpadmin]'a
+
===Przez MyPhpAdmina===
 +
* [http://www.phpmyadmin.net/ MyPhpAdmin].
  
=Konfiguracja HLStatsX=
+
=Konfiguracja HLStatsX CE=
  
* Edytuj plik <u>hlstats.conf</u> (jest w podkatalogu ''perl'' tam gdzie został rozpakowany HLStatsX) - w tym pliku trzeba wpisać dane bazy SQL i kilka innych rzeczy.
+
==hlstats.conf==
 +
* Edytuj plik <u>hlstats.conf</u> (jest w podkatalogu ''perl'' tam gdzie został rozpakowany HLStatsX CE).
 
** Adres bazy SQL.
 
** Adres bazy SQL.
 
  DBHost "localhost"
 
  DBHost "localhost"
Linia 52: Linia 79:
 
** Nr. portu na którym HLStatsX będzie nasłuchiwał.
 
** Nr. portu na którym HLStatsX będzie nasłuchiwał.
 
  Port 27500  
 
  Port 27500  
** E-Mail na który będą wysyłane logi w przypadku wystąpienia jakichś błędów bazy danych.
 
MailTo "Tobi@hlstatsx.com"
 
  
 
+
==config.php==
* Teraz aby nasz serwer był obsługiwany przez HLStatsX trzeba go dopisać
+
* Edytuj plik <u>config.php</u> (ten co był w katalogu ''web'').
              Servers[0] = ("AddressPort"                    => "xxx.xxx.xxx.xxx:xxxxx",
+
** Nazwa bazy danych, z której HLStatsX CE ma korzystać
              "MinPlayers"                    => "6",             
+
              "AdminContact"                  => "Tobi@hlstatsx.com",
+
              "HLStatsURL"                    => "http://www.nazwa_servera.com/hlstatsx/",
+
              "RawSocketSupport"              => "0",
+
              "RawSocketHelpNotice"            => "0",
+
              "DisplayResultsInBrowser"        => "0",
+
              "MasterServerData"              => "7",
+
              "MasterServerInterval"          => "100",
+
              "MasterServerTopPlayers"        => "200",       
+
              "BroadCastEvents"                => "0",
+
              "BroadCastPlayerActions"        => "0",
+
              "BroadCastEventsCommand"        => "say",
+
              "BroadCastEventsCommandSteamid"  => "0",
+
              "BroadCastEventsCommandAnnounce" => "say",
+
              "PlayerEvents"                  => "1",
+
              "PlayerEventsCommand"            => "say",
+
              "PlayerEventsCommandSteamid"    => "0",
+
              "PlayerEventsCommandOSD"        => "",
+
              "PlayerEventsAdminCommand"      => "",
+
              "ShowStats"                      => "1",
+
              "TKPenalty"                      => "50",
+
              "SuicidePenalty"                => "5",
+
              "AutoTeamBalance"                => "0",
+
              "AutoBanRetry"                  => "0",
+
              "TrackServerLoad"                => "1",
+
              "MinimumPlayersRank"            => "0",
+
              "Admins"                        => "",
+
              "SwitchAdmins"                  => "0",
+
              "IgnoreBots"                    => "1",
+
              "SkillMode"                      => "0",
+
              "Mod"                            => "")
+
 
+
**Objaśnienia (tylko te najważniejsze):
+
*** AddressPort - Adres i port na którym działa nasz serwer (chodzi o grę) np. 123.123.123.321:27015
+
*** MinPlayers - Minimalna liczba graczy która musi być na serwerze aby statystyki były liczone.
+
*** AdminContact - Kontakt do H@ serwera.
+
*** HLStatsURL - Link do strony ze statystykami.
+
*** AutoTeamBalance - Jak sama nazwa wskazuje...
+
*** MinimumPlayersRank - Minimalna pozycja w rankingu aby być w statystykach.
+
*** Admins - SteamID adminów oddzielone przecinakami np. "STEAM_0:1:XXX,STEAM_0:0:XXX,STEAM_0:1:XXX"
+
*** SwitchAdmins - Admini maja być przerzucani w ramach AutoTeamBalance 1- tak; 0- nie
+
*** IgnoreBots - 0- Wlicza boty do rankingu; 1- Ignoruje boty.
+
*** Mod - Typ moda jakiego używa się do zarządzania graczami na serwerze. "BEETLE" dla Beetlesmod'a lub "MANI" dla mani_admin_plugin.
+
 
+
 
+
* Edytuj plik <u>config.php</u> - plik odpowiedzialny za wyświetlanie statystyk...
+
** Nazwa bazy danych, z której HLStats ma korzystać
+
 
  define("DB_NAME", "hlstats");
 
  define("DB_NAME", "hlstats");
 
** Jak sama nazwa wskazuje
 
** Jak sama nazwa wskazuje
Linia 112: Linia 90:
 
** Adres bazy SQL
 
** Adres bazy SQL
 
  define("DB_ADDR", "localhost");
 
  define("DB_ADDR", "localhost");
** Ścieżka do katalogu "hlstatsinc" np. ''/home/tobi/HLstatsX/hlstatsinc''
 
define("INCLUDE_PATH", "");
 
** W statystykach ma być pokazywana GoogleMap z miejscami skąd łączą się gracze.
 
define("SHOW_GOOGLE_MAP", 1);
 
** Klucz potrzebny do wyświetlania GoogleMap na Twojej stronie. Można go zdobyć tu: http://www.google.com/apis/maps/signup.html
 
define("GOOGLE_MAP_KEY", "");
 
** Strefa na którą ma być standardowo widok GoogleMap.
 
define("GOOGLE_MAP_REGION", "EUROPE");
 
** Typ mapy. SATELLITE lub HYBRID
 
define ("GOOGLE_MAP_TYPE" , "SATELLITE");
 
** Sposób naliczania statystyk. LAN - dla śledzenia graczy po IP, NameTrack - dla śledzenia po nickach oraz Normal - dla śledzenia po SteamID.
 
define("MODE", "Normal");
 
** Ścieżka do plików graficznych. Np. ''/var/www/mywebspace.com/web/hlstatsimg/progress''
 
define("IMAGE_PATH", "");
 
 
  
 
* Wejdź w http://www.nazwa_servera.com/hlstatsx/hlstats.php?mode=admin zaloguj się jako admin.
 
* Wejdź w http://www.nazwa_servera.com/hlstatsx/hlstats.php?mode=admin zaloguj się jako admin.
 
** Login: Admin
 
** Login: Admin
 
** Hasło: 123456
 
** Hasło: 123456
*** '''PAMIETAJ, ABY ZMIENIĆ HASŁO i UŻYTKOWNIKA NA WŁASNE!!!'''
+
*** '''PAMIĘTAJ, ABY ZMIENIĆ HASŁO i UŻYTKOWNIKA NA WŁASNE!!!'''
 
+
* Na stronie skonfiguruj, co trzeba w General Settings, Game Settings i Tools. Pamiętaj, aby skonfigurować HLStats aby "łapał" logi z twojego serwera cs'a! HLStats ignoruje dane, które pochodzą z serwera, który nie jest "zapisany" w opcjach.
+
  
=Uruchamianie HLStatsX=
+
* Na stronie skonfiguruj, co trzeba w opcjach ''Games'', ''General Settings'' oraz ''Game Settings''. Pamiętaj, aby poprawnie dodać serwery, bez tego HLStatsX:CE nie będzie działał poprawnie.
  
 +
=Uruchamianie HLStatsX CE=
 
* Nadaj prawa do wykonywania następującym plikom: ''run_hlstats'', ''hlstats.pl'', ''hlstats-awards.pl'' oraz ''hlstats-resolve.pl''
 
* Nadaj prawa do wykonywania następującym plikom: ''run_hlstats'', ''hlstats.pl'', ''hlstats-awards.pl'' oraz ''hlstats-resolve.pl''
 
  chmod +x nazwa_pliku
 
  chmod +x nazwa_pliku
Linia 145: Linia 107:
 
aby uruchomić naliczanie statystyk.
 
aby uruchomić naliczanie statystyk.
  
* Dodaj w ''server.cfg'' już w SRCDS następujące komendy:
+
* Jeśli chcesz dzienne nagrody to dodaj do [[cron|crontab'a]] coś takiego:
 +
30 00 * * * cd /sciezka/gdzie/zdepakowales/hlstats/scripts; ./hlstats-awards.pl
 +
 
 +
==Serwer HLDS==
 +
* Dodaj w ''autoexec.cfg'' serwera gry następujące komendy:
 
  log 1  
 
  log 1  
 
  logaddress_delall
 
  logaddress_delall
 
  logaddress_add 1.2.3.4 27500
 
  logaddress_add 1.2.3.4 27500
** ''1.2.3.4'' to adres (IP/host) gdzie pracuje ''hstats.pl'' a 27500 to port, na który mają być wysyłane logi (Pamiętaj że ten adres musi być identyczny, co w ''hlstats.conf'' (sekcja PORT)).
 
  
* Jeśli chcesz dzienne nagrody to dodaj do [[cron|crontab'a]] coś takiego:
+
** ''1.2.3.4'' to adres (IP/host) gdzie pracuje ''hlstats.pl'' a 27500 to port, na który mają być wysyłane logi (Pamiętaj że ten adres musi być identyczny, co w ''hlstats.conf'' (sekcja PORT)).
  30 00 * * * cd /droga/gdzie/zdepakowales/hlstats; ./hlstats-awards.pl
+
 
 +
* Aby statystyki wyświetlały się w grze trzeba zainstalować plugin do [[AMX Mod X]], który znajduje się w folderze ''amxmodx''.
 +
==Serwer SRCDS==
 +
* Dodaj w ''autoexec.cfg'' serwera gry następujące komendy:
 +
  log 1
 +
logaddress_delall
 +
logaddress_add 1.2.3.4:27500
 +
 
 +
** ''1.2.3.4'' to adres (IP/host) gdzie pracuje ''hlstats.pl'' a 27500 to port, na który mają być wysyłane logi.
 +
 
 +
* Aby statystyki wyświetlały się w grze trzeba zainstalować plugin do [[SourceMod]]a, który znajduje się w folderze ''sourcemod''.
  
 
=Uwagi=
 
=Uwagi=
  
* W każdym pliku który trzeba edytować są  bardzo dokładne objaśnienia (po angielsku oczywiście) odnośnie zmiennych także słownik w łape  i do przodu.
+
* W każdym pliku który trzeba edytować są  bardzo dokładne objaśnienia (po angielsku oczywiście) odnośnie zmiennych także słownik w łapę i do przodu.
 +
 
 +
* Na jeden deamon HLX:CE nie powinno przypadać więcej niż trzy serwery.
  
* Tutorial za http://hlstatsx.com/installation
+
* Aby zachować wysoką wydajność powinno się raz na jakiś czas zrestartować deamona, służy do tego poniższy wpis w [[cron]]ie:
 +
54 */5 * * * cd /sciezka/gdzie/zdepakowales/hlstats/scripts; ./run_hlstats restart 1>/dev/null 2>&1
  
 +
* Można ustawić sprawdzanie czy deamon się nie wywalił, jeśli tak się stało skrypt go podniesie. Znów wpis w [[cron]]ie:
 +
*/10 * * * * cd /sciezka/gdzie/zdepakowales/hlstats/scripts; ./run_hlstats start 1>/dev/null 2>&1
  
 
[[kategoria:SRCDS]]
 
[[kategoria:SRCDS]]
 +
[[kategoria:HLDS]]
 
[[kategoria:Statystyki]]
 
[[kategoria:Statystyki]]
 
[[kategoria:SQL]]
 
[[kategoria:SQL]]
 
[[kategoria:PHP]]
 
[[kategoria:PHP]]

Aktualna wersja na dzień 18:41, 2 lip 2010

Spis treści

Opis

Ten artykuł jest niepełny i wymaga uzupełnienia. Jeżeli jesteś w stanie - postaraj się go uzupełnić.. Pamiętaj, że nawet najmniejsza zmiana jest cenna i pomocna :)


HLStatsX są to statystyki bazujące na HLStats. HLStatsX jak swój pierwowzór są generowane w czasie rzeczywistym na podstawie przesłanych logów. W tej chwili HLStatsX są oficjalnie dostępne tylko w wersji Premium (płatnej), ale istnieją trzy projekty które kontynuują rozwój darmowej wersji.

  • Lart's Edition - Zawiera głównie wsparcie dla Team Fortress 2 oraz kilka funkcji z płatnej wersji Premium. - Projekt upadł
  • ElstatsNEO - w zasadzie to co wyżej plus jeszcze więcej bajerów wzorowanych na wersji Premium. - Projekt upadł
  • HLstatsX Community Edition - to samo co wyżej, tyle że o wiele bardziej odpicowane. Największym atutem tej wersji jest wsparcie dla gier na silniku Half-Life oraz aktualizacje.

Poniżej instrukcja instalacji dla wersji HLstatsX Community Edition

Wymagania

  • PERL 5 lub nowszy z zainstalowanym modułem DBI.
  • PHP 5 lub nowszy.
  • MySQL 4 lub nowszy.
  • Rcon do serwera Source.
  • Konto shell'owe.

Download

Obsługiwane gry

Instalacja HLstatsX Community Edition [Linux]

Instalacja

  • Rozpakuj gdzieś plik z odpowiednią wersją HlstatsX CE.
  • Przenieś zawartość katalogu web w miejsce gdzie mają być statystyki.

Tworzenie bazy danych dla HLStatsX CE

Przez Shella

  • Stwórz bazę danych w SQL-u
shell> mysqladmin create hlstatsx
  • Stwórz tabele potrzebne do pracy HLStats
shell> mysql hlstats < install.sql
  • Stwórz użytkownika i hasło, dla HLStats
shell> mysql --user=root mysql
mysql> GRANT ALL ON hlstats.* TO hlstats IDENTIFIED BY 'jakieshaslo';

Przez MyPhpAdmina

Konfiguracja HLStatsX CE

hlstats.conf

  • Edytuj plik hlstats.conf (jest w podkatalogu perl tam gdzie został rozpakowany HLStatsX CE).
    • Adres bazy SQL.
DBHost "localhost"
    • Jak sama nazwa wskazuje...
DBUsername "użytkownik bazy danych"
    • Hasło do bazy danych.
DBPassword "hasło" 
    • Nazwa bazy danych, z której HLStatsX ma korzystać.
DBName "hlstats" 
    • Adres IP na którym HLStatsX będzie nasłuchiwał. Najlepiej zostawić puste, wtedy będzie nasłuch na wszystkich interfejsach.
BindIP "" 
    • Nr. portu na którym HLStatsX będzie nasłuchiwał.
Port 27500 

config.php

  • Edytuj plik config.php (ten co był w katalogu web).
    • Nazwa bazy danych, z której HLStatsX CE ma korzystać
define("DB_NAME", "hlstats");
    • Jak sama nazwa wskazuje
define("DB_USER", "użytkownik bazy danych");
    • Hasło do bazy danych
define("DB_PASS", "hasło");
    • Adres bazy SQL
define("DB_ADDR", "localhost");
  • Na stronie skonfiguruj, co trzeba w opcjach Games, General Settings oraz Game Settings. Pamiętaj, aby poprawnie dodać serwery, bez tego HLStatsX:CE nie będzie działał poprawnie.

Uruchamianie HLStatsX CE

  • Nadaj prawa do wykonywania następującym plikom: run_hlstats, hlstats.pl, hlstats-awards.pl oraz hlstats-resolve.pl
chmod +x nazwa_pliku
  • Odpal plik run_hlstats z parametrem start
./run_hlstats start

aby uruchomić naliczanie statystyk.

  • Jeśli chcesz dzienne nagrody to dodaj do crontab'a coś takiego:
30 00 * * * cd /sciezka/gdzie/zdepakowales/hlstats/scripts; ./hlstats-awards.pl

Serwer HLDS

  • Dodaj w autoexec.cfg serwera gry następujące komendy:
log 1 
logaddress_delall
logaddress_add 1.2.3.4 27500
    • 1.2.3.4 to adres (IP/host) gdzie pracuje hlstats.pl a 27500 to port, na który mają być wysyłane logi (Pamiętaj że ten adres musi być identyczny, co w hlstats.conf (sekcja PORT)).
  • Aby statystyki wyświetlały się w grze trzeba zainstalować plugin do AMX Mod X, który znajduje się w folderze amxmodx.

Serwer SRCDS

  • Dodaj w autoexec.cfg serwera gry następujące komendy:
log 1 
logaddress_delall
logaddress_add 1.2.3.4:27500
    • 1.2.3.4 to adres (IP/host) gdzie pracuje hlstats.pl a 27500 to port, na który mają być wysyłane logi.
  • Aby statystyki wyświetlały się w grze trzeba zainstalować plugin do SourceModa, który znajduje się w folderze sourcemod.

Uwagi

  • W każdym pliku który trzeba edytować są bardzo dokładne objaśnienia (po angielsku oczywiście) odnośnie zmiennych także słownik w łapę i do przodu.
  • Na jeden deamon HLX:CE nie powinno przypadać więcej niż trzy serwery.
  • Aby zachować wysoką wydajność powinno się raz na jakiś czas zrestartować deamona, służy do tego poniższy wpis w cronie:
54 */5 * * * cd /sciezka/gdzie/zdepakowales/hlstats/scripts; ./run_hlstats restart 1>/dev/null 2>&1
  • Można ustawić sprawdzanie czy deamon się nie wywalił, jeśli tak się stało skrypt go podniesie. Znów wpis w cronie:
*/10 * * * * cd /sciezka/gdzie/zdepakowales/hlstats/scripts; ./run_hlstats start 1>/dev/null 2>&1
Osobiste
Przestrzenie nazw
Warianty
Działania
HLDS.pl - Menu:
Inne
IRC
Inne sekcje:
Znajomi:
Narzędzia