HLStatsX

(Różnice między wersjami)
Skocz do: nawigacji, wyszukiwania
(błąd ortograficzny: http://so.pwn.pl/zasady.php?id=629620)
(aktualizacja)
Linia 6: Linia 6:
 
=Wymagania=
 
=Wymagania=
 
* [http://hlstatsx.com/download HLStatsX]
 
* [http://hlstatsx.com/download HLStatsX]
* [[PERL]] lub nowszy
+
* [[PERL]] 5 lub nowszy z zainstalowanym modułem DBI.
* [[PHP]] 4.3 lub nowszy
+
* [[PHP]] 4.3 lub nowszy.
* [[MySQL]] 3.23 lub nowszy
+
* [[MySQL]] 3.23 lub nowszy.
* [[Rcon]] do serwera [[Source]]
+
* [[Rcon]] do serwera [[Source]].
* Konto shell'owe
+
* Konto shell'owe.
  
 
=Zalecenia=
 
=Zalecenia=
Linia 23: Linia 23:
  
 
==Tworzenie bazy danych dla HLStatsX==
 
==Tworzenie bazy danych dla HLStatsX==
 +
===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
Linia 34: Linia 34:
 
  shell> mysql --user=root mysql
 
  shell> mysql --user=root mysql
 
  mysql> GRANT ALL ON hlstats.* TO hlstats IDENTIFIED BY 'jakieshaslo';
 
  mysql> GRANT ALL ON hlstats.* TO hlstats IDENTIFIED BY 'jakieshaslo';
 
+
===Przez MyPhpAdmina===
* 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
+
* [http://www.phpmyadmin.net/ MyPhpAdmin].
  
 
=Konfiguracja HLStatsX=
 
=Konfiguracja HLStatsX=
Linia 57: Linia 57:
  
 
* Teraz aby nasz serwer był obsługiwany przez HLStatsX trzeba go dopisać
 
* Teraz aby nasz serwer był obsługiwany przez HLStatsX trzeba go dopisać
              Servers[0] = ("AddressPort"                    => "xxx.xxx.xxx.xxx:xxxxx",  
+
Servers[0] = ("AddressPort"                    => "xxx.xxx.xxx.xxx:xxxxx",  
 
               "MinPlayers"                    => "6",               
 
               "MinPlayers"                    => "6",               
 
               "AdminContact"                  => "Tobi@hlstatsx.com",  
 
               "AdminContact"                  => "Tobi@hlstatsx.com",  
               "HLStatsURL"                    => "http://www.nazwa_servera.com/hlstatsx/",
+
               "HLStatsURL"                    => "http://www.hlstatsx.com",
              "RawSocketSupport"              => "0",
+
              "RawSocketHelpNotice"            => "0",
+
 
               "DisplayResultsInBrowser"        => "0",
 
               "DisplayResultsInBrowser"        => "0",
 
               "MasterServerData"              => "7",
 
               "MasterServerData"              => "7",
               "MasterServerInterval"          => "100",
+
               "MasterServerInterval"          => "200",
              "MasterServerTopPlayers"        => "200",        
+
 
               "BroadCastEvents"                => "0",
 
               "BroadCastEvents"                => "0",
 
               "BroadCastPlayerActions"        => "0",
 
               "BroadCastPlayerActions"        => "0",
Linia 88: Linia 85:
 
               "IgnoreBots"                    => "1",
 
               "IgnoreBots"                    => "1",
 
               "SkillMode"                      => "0",
 
               "SkillMode"                      => "0",
 +
              "GameType"                      => "0",
 +
              "EnablePublicCommands"          => "1", 
 
               "Mod"                            => "")
 
               "Mod"                            => "")
 +
  
 
**Objaśnienia (tylko te najważniejsze):
 
**Objaśnienia (tylko te najważniejsze):
Linia 100: Linia 100:
 
*** SwitchAdmins - Admini maja być przerzucani w ramach AutoTeamBalance 1- tak; 0- nie
 
*** SwitchAdmins - Admini maja być przerzucani w ramach AutoTeamBalance 1- tak; 0- nie
 
*** IgnoreBots - 0- Wlicza boty do rankingu; 1- Ignoruje boty.
 
*** 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.
+
*** Mod - Typ moda jakiego używa się do zarządzania graczami na serwerze. "BEETLE" dla Beetlesmod'a, "MANI" dla [[Mani Admin Plugin]]a oraz ''SOURCEMO'' dla [[SourceMod]]a.
  
  

Wersja z 16:47, 23 maj 2007

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. Różnią się natomiast od HLStats tym że są tylko i wyłącznie do gier na silniku Source czyli CS:Source, DOD:S itp.

Wymagania

Zalecenia

Instalacja HLStatsX [Linux]

Instalacja

  • Rozpakuj gdzieś plik z HlstatsX
  • Przenieś katalogi hitbox, hlstatsinc oraz zawartość katalogu web w miejsce gdzie mają być statystyki.

Tworzenie bazy danych dla HLStatsX

Przez Shella

  • Stwórz bazę danych w SQL-u
shell> mysqladmin create hlstatsx
  • Stwórz tabele potrzebne do pracy HLStats
shell> mysql hlstats < hlstats.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
shell> mysql --user=root mysql
mysql> GRANT ALL ON hlstats.* TO hlstats IDENTIFIED BY 'jakieshaslo';

Przez MyPhpAdmina

Konfiguracja HLStatsX

  • Edytuj plik hlstats.conf (jest w podkatalogu perl tam gdzie został rozpakowany HLStatsX) - w tym pliku trzeba wpisać dane bazy SQL i kilka innych rzeczy.
    • 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 
    • E-Mail na który będą wysyłane logi w przypadku wystąpienia jakichś błędów bazy danych.
MailTo "Tobi@hlstatsx.com" 


  • Teraz aby nasz serwer był obsługiwany przez HLStatsX trzeba go dopisać
Servers[0] = ("AddressPort"                    => "xxx.xxx.xxx.xxx:xxxxx", 
             "MinPlayers"                     => "6",              
             "AdminContact"                   => "Tobi@hlstatsx.com", 
             "HLStatsURL"                     => "http://www.hlstatsx.com",
             "DisplayResultsInBrowser"        => "0",
             "MasterServerData"               => "7",
             "MasterServerInterval"           => "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",
             "GameType"                       => "0",
             "EnablePublicCommands"           => "1",  
             "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, "MANI" dla Mani Admin Plugina oraz SOURCEMO dla SourceModa.


  • Edytuj plik config.php - plik odpowiedzialny za wyświetlanie statystyk...
    • Nazwa bazy danych, z której HLStats 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");
    • Ś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);
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", "");


  • 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

  • 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.

  • Dodaj w server.cfg już w SRCDS 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 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 crontab'a coś takiego:
30 00 * * * cd /droga/gdzie/zdepakowales/hlstats; ./hlstats-awards.pl

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.
Osobiste
Przestrzenie nazw
Warianty
Działania
HLDS.pl - Menu:
Inne
IRC
Inne sekcje:
Znajomi:
Narzędzia