[step-by-step] HLstatsX: Community Edition

Здесь хранится вся документация по созданию выделенных серверов
Сообщение
Автор
Аватара пользователя
U#0
Майор
Майор
Сообщения: 529
Зарегистрирован: 25.10.2007
Поблагодарили: 1 раз
Контактная информация:

#1 Сообщение 04.10.2009, 19:04

Внимание!
  • [frame]
  • Данная статья является интеллектуальной собственностью сайта CSMania.RU.
    • Копирование и распространение допускается только со ссылкой на первоисточник!
      Не указывая ссылку на первоисточник, Вы препятствуете информационному развитию сообщества!
  • В этой теме обсуждается исключительно содержание статьи.
    • Статья не идеальна и нуждается в доработке, так что буду рад любой помощи.
      Остальные сообщения будут расценены как флуд, а авторы наказаны.
    [/frame]
  1. Скачать пакет со статистикой: "HLstatsX Community Edition"
  2. Установить и настроить HTTP сервер:
    *win WampServer
    1. Скачать и установить "WampServer" "WampServer".
      1. Указать браузер, используемый по умолчанию.
      2. Указать SMTP сервер и адрес электронной почты, для использования в соответствующих функциях.
    2. Запустить ярлык "start WampServer", появится иконка в системном трее.
    3. Кликнуть на иконке "WampServer" > "phpMyAdmin".
      1. В закладке "Priveleges", выбрать "Edit Priveleges" для одного из пользователей "root".
      2. Создать пароль в разделе "Change password".
      3. Повторить операцию для второго пользователя "root".
    4. Кликнуть на иконке "WampServer" > "Stop All Setvices".
    5. В директории с установленным "WampServer", открыть файл apps\phpmyadmin...\config.inc.php и заменить строку

      Код: Выделить всё

      $cfg['Servers'][$i]['password'] = '';
      на

      Код: Выделить всё

      $cfg['Servers'][$i]['password'] = 'установленный пароль';
    6. Кликнуть на иконке "WampServer" > "PHP" > "php.ini", отредактировать необходимые строки в соответствии с кодом приведенном в спойлере "php.ini" 4 пункта и настроить часовой согласно 5 пункту.
    7. Кликнуть на иконке "WampServer" > "Apache" > "httpd.conf" и отредактировать необходимые строки в соответствии с кодом приведенном в спойлере "httpd.conf" 4 пункта.
    8. Добавить расширение FreeType, согласно 3 пункту.
    9. Перезапустить "WampServer".
    10. Кликнуть на иконке "WampServer" > "Start All Services".
    11. Кликнуть на иконке "WampServer" > "Put Online".
    Примечания:
    • Рекомендуется добавить "WampServer" в автозапуск.
    • Я не стал лишний раз напоминать о необходимости сохранения внесённых изменений.
  3. Добавить расширение FreeType для PHP:
    *win WampServer
    1. Скачать архив с бинарниками (Binaries) с проекта "GnuWin32".
    2. Извлечь *.dll файл из папки "bin", скачанного архива.
      • Пример: freetype-2.3.5-1-bin.zip\bin\freetype6.dll
    3. Переименовать извлеченный файл в формат расширений "WampServer".
      • Пример: php_freetype.dll
    4. Скопировать переименованный файл в каталог "bin\php...\ext".
      • Пример: X:\WampServer\bin\php5.2.9-2\ext\php_freetype.dll
    5. Добавить в файл "php.ini", к остальным расширениям строку:

      Код: Выделить всё

      extension=php_freetype.dll
    Примечания:
    • Расширение "FreeType" понадобится для работы "HeatMaps", 15 пункт.
    • Перед внесением изменений в файл "php.ini", необходимо остановить все службы согласно пункту 2.4.
    • Доступ к файлу "php.ini", описан в пункте 2.6.
    • После внесения добавления расширения в файл "php.ini", рекомендуется перезапустить "WampServer".
  4. Привести конфигурационные файлы HTTP сервера к указанному виду:
    php.ini

    Код: Выделить всё

    allow_call_time_pass_reference = On
    error_reporting = 2039
    register_globals = On
    register_long_arrays = On
    register_argc_argv = On
    magic_quotes_gpc = On
    magic_quotes_runtime = Off
    file_uploads = On
    extension=php_gd2.dll
    extension=php_freetype.dll
    httpd.conf

    Код: Выделить всё

    LoadModule rewrite_module modules/mod_rewrite.so
  5. Настроить часовой пояс для PHP:
    *win / *nix
    1. Определить по списку "List of Supported Timezones" свой часовой пояс.
    2. Раскомментировать (убрать символ ";" в начале строки) в файле "php.ini" переменную "date.timezone" и указать свой часовой пояс.
      • Пример:

        Код: Выделить всё

        [Date]
        ; Defines the default timezone used by the date functions
        date.timezone = Europe/Moscow
  6. Установить и настроить Perl:
    *win ActivePerl
    1. Скачать и установить "ActivePerl".
      1. Отметить пункты "Add Perl to the PATH environment variable" и "Create Perl file extension association".
    2. Запустить ярлык "Perl Package Manager".
      1. В разделе "Installed Packages" найти пакеты, указанные в 7 пункте.
      2. Если этих компонентов нет, перейти в раздел "All Packages" и установить их.
    3. Так же не повредить обновление, уже установленных компонентов в разделе "Upgradable Packages".
  7. Добавить в Perl необходимые пакеты:
    *win / *nix
    1. DBD-mysql
    2. Geo-IP-PurePerl
  8. Создать и заполнить базу данных, создать нового пользователя и указать его привилегии, оптимизировать базу:
    phpMyAdmin
    1. Открыть "phpMyAdmin".
    2. Открыть закладку "Базы данных".
      1. Под заголовком "Новая база данных", указать название базы для статистики.
      2. "Сравнение", заменить на "utf8_general_ci".
      3. Нажать "Создать".
    3. Автоматически откроется окно с вновь созданной базой.
    4. Открыть закладку "Импорт".
      1. После поля "Выбор файла", нажать "Обзор..." и указать путь к файлу "sql\install.sql" из пакета со статистикой.
        В поле "Кодировка файла:" оставить "utf8"
      2. Нажать "ОК".
    5. Перейти на начальную страницу "phpMyAdmin".
    6. Открыть закладку "Привилегии" и выбрать "Добавить нового пользователя".
    7. В разделе "Информация учетной записи", заполнить поля:
      • Имя пользователя:
        Имя пользователя для доступа к базе данных.
      • Хост:
        Хост или IP адрес, сервера со статистикой.
      • Пароль:
        Пароль для доступа к базе данных.
      • Подтверждение:
        Подтверждение пароля для доступа к базе данных.
    8. Нажать "ОК".
    9. Автоматически откроется окно редактирования привилегий для вновь созданного пользователя.
      1. В разделе "Привилегии уровня базы данных", в поле "Добавить привилегии на следующую базу:" вместо "Использовать текстовое поле" выбрать созданную базу.
    10. Автоматически откроется окно редактирования привилегий для выбранной базы.
      1. В разделе "Привилегии уровня базы данных", нажать "Отметить все".
      2. Нажать "ОК".
      Выбрать в меню слева, созданную базу данных статистики.
    11. Открыть закладку "SQL".
      1. В поле "Выполнить SQL-запрос(ы) к базе данных <название_базы>:" ввести следующий запрос:

        Код: Выделить всё

        ALTER TABLE `hlstats_Actions` ENGINE = INNODB;
        ALTER TABLE `hlstats_Awards` ENGINE = INNODB;
        ALTER TABLE `hlstats_ClanTags` ENGINE = INNODB;
        ALTER TABLE `hlstats_Clans` ENGINE = INNODB;
        ALTER TABLE `hlstats_Countries` ENGINE = INNODB;
        ALTER TABLE `hlstats_Games` ENGINE = INNODB;
        ALTER TABLE `hlstats_Games_Defaults` ENGINE = INNODB;
        ALTER TABLE `hlstats_Games_Supported` ENGINE = INNODB;
        ALTER TABLE `hlstats_Heatmap_Config` ENGINE = INNODB;
        ALTER TABLE `hlstats_HostGroups` ENGINE = INNODB;
        ALTER TABLE `hlstats_Maps_Counts` ENGINE = INNODB;
        ALTER TABLE `hlstats_Mods_Defaults` ENGINE = INNODB;
        ALTER TABLE `hlstats_Mods_Supported` ENGINE = INNODB;
        ALTER TABLE `hlstats_Options` ENGINE = INNODB;
        ALTER TABLE `hlstats_Options_Choices` ENGINE = INNODB;
        ALTER TABLE `hlstats_PlayerNames` ENGINE = INNODB;
        ALTER TABLE `hlstats_PlayerUniqueIds` ENGINE = INNODB;
        ALTER TABLE `hlstats_Players` ENGINE = INNODB;
        ALTER TABLE `hlstats_Players_Awards` ENGINE = INNODB;
        ALTER TABLE `hlstats_Players_Ribbons` ENGINE = INNODB;
        ALTER TABLE `hlstats_Ranks` ENGINE = INNODB;
        ALTER TABLE `hlstats_Ribbons` ENGINE = INNODB;
        ALTER TABLE `hlstats_Roles` ENGINE = INNODB;
        ALTER TABLE `hlstats_Servers` ENGINE = INNODB;
        ALTER TABLE `hlstats_Servers_Config` ENGINE = INNODB;
        ALTER TABLE `hlstats_Servers_Config_Default` ENGINE = INNODB;
        ALTER TABLE `hlstats_Teams` ENGINE = INNODB;
        ALTER TABLE `hlstats_Weapons` ENGINE = INNODB;
        ALTER TABLE `hlstats_Players` ADD INDEX ( `game` );
        ALTER TABLE `hlstats_Players_Awards` ADD INDEX ( `playerid` );
        ALTER TABLE `hlstats_Actions` ADD INDEX ( `game` );
      2. Нажать "ОК".
    12. Закрыть "phpMyAdmin".
  9. Подготовить Perl модуль статистики для сбора информации с игрового сервера:
    *win / *nix
    1. Скопировать содержимое папки "perl" из пакета со статистикой в любое удобное место.
      • *win Пример: X:\HLStatsX\
        *nix Пример: /home/user/hlstatsx/
    2. Перейти в созданную директорию.
    3. Любым текстовым редактором файл внести необходимые изменения в файл "hlstats.conf":

      Код: Выделить всё

      ##
      ## Параметры базы данных
      ##
      
      # DBHost - Сервер базы данных "адрес" или "адрес:порт". В качестве адреса может быть указан
      #          IP адрес или хост. MySQL по умолчанию использует порт 3306 (TCP).
      DBHost ""
      
      # DBUsername - Имя пользователя для доступа к базе данных.
      DBUsername ""
      
      # DBPassword - Пароль для доступа к базе данных.
      DBPassword ""
      
      # DBName - Название базы данных со статистикой.
      DBName ""
      
      # DBLowPriority - Использование INSERT DELAYED и DELETE LOW_PRIORITY для некоторых запросов.
      #                 Этот параметр улучшает производительность, но статистика начинает собираться
      #                 не совсем в реальном времени. 1 = включить. 0 = выключить.
      DBLowPriority 1
      
      ##
      ## Параметры UDP Сокета (переменные игровых серверов: "logaddress" или "logaddress_add")
      ##
      
      # BindIP - Получение данных только с определенного IP адреса.
      #                 Оставьте пустым для получения данных с нескольких IP адресов.
      BindIP ""
      
      # Port - Прослушиваемый порт для сбора информации с игрового сервера. Так же учитывается в proxy-daemon.pl.
      Port 27500
      
      # DebugLevel - 1 выведет на экран отладочную информацию. Значение выше 1, позволит получить
      #              больше информации. 0 скроет всю отладочную информацию. При первом запуске
      #              рекомендуется устанавливать 1,для обнаружения возможных проблем.
      DebugLevel 1
    4. Под *win, любым текстовым редактором внести изменения во все "*.pl" файлы:
      1. В первой строке поставить пробел после символа "#".
        • Пример: # !/usr/bin/perl
      2. У переменной "$opt_configfile" указать абсолютный путь до файла "hlstats.conf".
        Внимание: Убедитесь, что используете слеш "/", а не бэкслеш "\"!
        • Пример: $opt_configfile = "X:/HLStatsX/Perl/hlstats.conf";
      3. У переменной "$opt_libdir" указать абсолютный путь до своей "perl" директории.
        Внимание: Убедитесь, что используете слеш "/", а не бэкслеш "\"!
        • Пример: $opt_libdir = "X:/HLStatsX/Perl/";
    5. Под *nix назначить исполняемыми, все необходимые файлы:

      Код: Выделить всё

      chmod 744 *.pl
      chmod 744 run_hlstats
      chmod 744 run_hlstats_autorestart
      chmod 744 run_hlstats_multi
      chmod 744 run_proxy
    6. Проверить работоспособность файлов "hlstats-awards.pl" и "hlstats.pl", поочередно запустив их.
    7. Если не возникло ошибок, установить в файле "hlstats.conf" значение переменной "DebugLevel" на "0".
  10. Подготовить игровой сервер для передачи информации на статистику:
    GoldSource
    1. Установить и настроить на сервере плагин "Metamod-P" или "Metamod".
    2. Установить и настроить на сервере плагин "AMX Mod X".
    3. Скопировать папку "amxmodx" из пакета со статистикой, в директорию "игра\addons" сервера.
    4. Добавить в файл "игра\addons\amxmodx\configs\plugins.ini" плагин статистики:

      Код: Выделить всё

      ; Custom - Add 3rd party plugins here
      hlstatsx_commands_игра.amxx	; HLstatsX CE Ingame Plugin
    5. Активировать (убрать символ ";" в начале строки) в файле "игра\addons\amxmodx\configs\modules.ini" необходимые модули.
    6. В файл "игра\server.cfg" добавить строки:

      Код: Выделить всё

      log on
      logaddress "ip порт"
    Примечания:
    • Вместо "ip" у переменной "logaddress", указывается IP адрес компьютера, на котором находится содержимое папки "perl" из пакета со статистикой.
    • Вместо "порт" у переменной "logaddress", указывается порт указанный у переменной "Port" в файле "hlstats.conf".
    Source
    1. Установить и настроить на сервере плагин "Metamod:Source".
    2. Установить и настроить на сервере плагин "SourceMod".
    3. Скопировать папку "sourcemod" из пакета со статистикой, в директорию "игра\addons\" сервера.
    4. В файл "игра\cfg\server.cfg" добавить строки:

      Код: Выделить всё

      log on
      logaddress_add "ip:порт"
    Примечания:
    • Вместо "ip" у переменной "logaddress_add", указывается IP адрес компьютера, на котором находится содержимое папки "perl" из пакета со статистикой.
    • Вместо "порт" у переменной "logaddress_add", указывается порт указанный у переменной "Port" в файле "hlstats.conf".
  11. Подготовить GeoLiteCity модуль статистики для обработки информации о местонахождении игроков:
    *win Посредством базы данных
    Использование данного метода, допускает внесение в базу данных, собственных диапазонов адресов. Может пригодится администраторам, работающим в объединённых локальных сетях.
    1. Скачать "HLX CE Maxmind GeoLiteCity DB Importer BETA3".
    2. Распаковать его содержимое в любое, удобное место.
    3. Запустить "HLXCEGeoLiteImporter.exe".
    4. По порядку указать:
      1. Хост или IP адрес сервера с базой данных.
      2. Порт для доступа к базе данных (по умолчанию 3306).
      3. Имя пользователя для доступа к базе данных.
      4. Пароль для доступа к базе данных.
      5. Название базы данных со статистикой.
    5. Скачаются необходимые данные и внесутся в базу данных.
    Примечания:
    • Данные "GeoLiteCity" обновляются ежемесячно.
    • Для данного метода, в разделе "GeoIP data & Google Map settings", секции "General Settings" > "HLstatsX:CE Settings" - необходимо указать параметр "GeoTP lookup via database" (описание в спойлере "GeoIP data & Google Map settings", 14 пункта).
    *nix Посредством базы данных
    Использование данного метода, допускает внесение в базу данных, собственных диапазонов адресов. Может пригодится администраторам, работающим в объединённых локальных сетях.
    1. Внести необходимые данные в файл "GeoLite_Import.sh" в папке "GeoLiteCity", своей "perl" директории.
      • Пример: /home/user/hlstatsx/GeoLiteCity/GeoLite_Import.sh
      1. DBHOST=""
        Указать в кавычках хост или IP адрес сервера с базой данных.
      2. DBNAME=""
        Указать в кавычках название базы данных со статистикой.
      3. DBUSER=""
        Указать в кавычках имя пользователя для доступа к базе данных.
      4. DBPASS=""
        Указать в кавычках пароль для доступа к базе данных.
    2. Назначить исполняемым файл "GeoLite_Import.sh":

      Код: Выделить всё

      chmod 744 GeoLite_Import.sh
    3. Запустить файл "GeoLite_Import.sh".
    4. Скачаются необходимые данные и внесутся в базу данных.
    Примечания:
    • Данные "GeoLiteCity" обновляются ежемесячно.
    • Для данного метода, в разделе "GeoIP data & Google Map settings", секции "General Settings" > "HLstatsX:CE Settings" - необходимо указать параметр "GeoTP lookup via database" (описание в спойлере "GeoIP data & Google Map settings", 14 пункта).
    Посредством бинарного файла
    Использование данного метода, снимает часть нагрузки с сера базы данных.
    1. Скачать файл "GeoLiteCity.dat.gz".
    2. Распаковать его содержимое в папку "GeoLiteCity", своей "perl" директории.
      • *win Пример: X:\HLStatsX\Perl\GeoLiteCity\
        *nix Пример: /home/user/hlstatsx/GeoLiteCity/
    Примечания:
    • Данные "GeoLiteCity" обновляются ежемесячно.
    • Для данного метода, в разделе "GeoIP data & Google Map settings", секции "General Settings" > "HLstatsX:CE Settings" - необходимо указать параметр "GeoTP lookup via binry file" (описание в спойлере "GeoIP data & Google Map settings", 14 пункта).
  12. Подготовить Web модуль статистики и создать учетную запись администратора:
    *win / *nix
    1. Скопировать содержимое папки "web" из пакета со статистикой в любое удобное место корневой web директории.
      • *win Пример: X:\Servers\www\stats\
        *nix Пример: /www/localhost/htdocs/stats/
    2. Перейти в созданную директорию.
    3. Установить возможность записи у директории "hlstatsimg/progress":

      Код: Выделить всё

      chmod 777 hlstatsimg/progress/
    4. Создать файл ".htaccess", содержащий:

      Код: Выделить всё

      Options -Indexes
      
      <Files config.php>
      	Order deny,allow
      	Deny from all
      	Allow from 127.0.0.1, localhost
      </Files>
      
      RewriteEngine On
      	RewriteRule sig-(.*)-(.*).png$ sig.php?player_id=$1&background=$2 [L]
    5. Любым текстовым редактором внести необходимые изменения в файл "config.php":

      Код: Выделить всё

      // DB_NAME - Имя базы со статистикой.
      define("DB_NAME", "");
      
      // DB_USER - Имя пользователя для доступа к базе данных.
      define("DB_USER", "");
      
      // DB_PASS - Пароль для доступа к базе данных.
      define("DB_PASS", "");
      
      // DB_ADDR - Сервер базы данных в формате "хост:порт".
      //           MySQL по умолчанию использует порт 3306 (TCP).
      define("DB_ADDR", "localhost");
      
      // DB_TYPE - Тип базы данных. Поддерживается только "mysql".
      define("DB_TYPE", "mysql");
      
      // DB_PCONNECT - 1 установит постоянное соединение с базой данных. Постоянное
      //               соединение увеличит производительность, но может перегрузить
      //               сервер с базой данных. 0 отключит постоянное соединение.
      define("DB_PCONNECT", 0);
      
      // INCLUDE_PATH - Путь до директории includes, относительно hlstats.php.
      //                Возможно указание относительного пути.
      //
      //                Под *win, убедитесь, что используете слеш "/", а не бэкслеш "\"
      //                и при возникновении проблем укажите абсолютный путь.
      define("INCLUDE_PATH", "./includes");
      
      // PAGE_PATH - Путь до директории pages, относительно hlstats.php.
      //                Возможно указание относительного пути.
      //
      //                Под *win, убедитесь, что используете слеш "/", а не бэкслеш "\"
      //                и при возникновении проблем укажите абсолютный путь.
      define("PAGE_PATH", "./pages");
      
      // IMAGE_PATH - Путь до директории hlstatsimg, относительно hlstats.php.
      //                Возможно указание относительного пути.
      //
      //                Под *win, убедитесь, что используете слеш "/", а не бэкслеш "\"
      //                и при возникновении проблем укажите абсолютный путь.
      //
      //                Внимание: для папки progress в директории hlstatsimg
      //                должна быть установлена возможность записи!!!
      define("IMAGE_PATH", "./hlstatsimg");
      
      // Как часто должны обновляться динамически генерируемые изображения (в секундах).
      define("IMAGE_UPDATE_INTERVAL", 300);
    6. Открыть в браузере адрес: https://адрес_статистики/hlstats.php?mode=admin
    7. Войти, используя стандартные учетные данные
      • Username: admin
      • Password: 123456
    8. Перейти в секцию: "General Settings" > "Admin Users"
      1. Создать нового пользователя с правами "Administrator".
      2. Удалить стандартного пользователя.
    Примечания:
    • Я не стал лишний раз напоминать о необходимости нажатия соответствующих кнопок, для активации изменений.
  13. Выбрать игру, добавить и настроить игровой сервер для сбора статистики:
    *win / *nix
    1. Открыть в браузере адрес: https://адрес_статистики/hlstats.php?mode=admin
    2. Войти, используя созданные учетные данные.
    3. Перейти в секцию: "General Settings" > "Games"
      1. Установить "Show" в колонке "Visibility" для строки с необходимой игрой.
      2. Установить "Hide" в колонке "Visibility" для строк с остальными играми.
    4. В секции: "Game Settings" > "Игра" открыть "Add Server" и ввести необходимые данные:
      • Server Address
        IP адрес игрового сервера, указанный у переменной "+ip" в ярлыке сервера или "hostip" в файле "server.cfg" игрового сервера.
      • Server Port
        Порт игрового сервера, указанный у переменной "-port" в ярлыке сервера или "hostport" в файле "server.cfg" игрового сервера.
      • Server Name
        Название игрового сервера, установленное у переменной "+hostname" в ярлыке сервера или "hostname" в файле "server.cfg" игрового сервера.
      • Rcon Password
        Пароль указанный у переменной "rcon_password" в файле "server.cfg" игрового сервера.
      • Public Address
        Адрес для подключения игроков к серверу в формате "адрес:порт", в качестве адреса может быть указан IP адрес или хост
      • Game Mod
        Административный плагин, установленный на игровом сервере.
    5. В секции: "Game Settings" > "Игра" > "Edit Servers" установить порядковый номер сервера (начиная с 0 для каждой игры) в колонке "Sort Order".
    6. Открыть "CONFIGURE" в строке сервера и ввести необходимые изменения:
      • Admins
        Идентификаторы администраторов сервера (SteamID, IP, Ник), разделенные запятыми.
      • AutoBanRetry
        Автоматический бан игрока на 5 минут после отключения от сервера. Препятствует переподключению игроков для выбора лучшей команды или потери меньшего количества очков. 1 = вкл. 0 (по умолчанию) = выкл.
      • AutoTeamBalance
        Если указан rсon пароль, анализирует команды и балансирует игроков, для уравновешивания уровня команд. Присваивает командам номера и при начале раунда размещает игроков по командам, основываясь на полученном ими опыте. 1 = вкл. 0 (по умолчанию) = выкл.
      • BonusRoundIgnore
        Игнорирование фрагов и действий после окончания раунда, в играх поддерживающих бонусные раунды. 1 = вкл. 0 (по умолчанию) = выкл.
      • BonusRoundTime
        Значение указанное у переменной "mp_bonusroundtime" в файле "server.cfg" игрового сервера (для предотвращения ошибочных записей при не обнаружении события "round_start").
      • BroadCastEvents
        Объявление во время игры информации практически обо всех событиях на сервере, через rcon. Вы сразу же увидите сколько очков получили за убийство, установку бомбы и т.д. 1 = вкл. 0 (по умолчанию) = выкл.
      • BroadCastEventsCommand
        Команда для объявления событий. По умолчанию 'say'-command.
      • BroadCastEventsCommandAnnounce
        Команда для анонсирования внутриигровой статистики, почты администратора и т.д. По умолчанию 'say'.
      • BroadCastPlayerActions
        Активация объявлений об игровых действиях игрока (например начал спасение заложника, выбросил бомбу). 1 = вкл. 0 (по умолчанию) = выкл.
      • ConnectAnnounce
        Активация отображения информации о каждом подключившемся игроке: очки, убийства, ранг, страна. 1 (по умолчанию) = вкл. 0 = выкл.
      • DefaultDisplayEvents
        Активация объявлений об убийствах игрока. 1 (по умолчанию) = вкл. 0 = выкл.
      • DisplayResultsInBrowser
        При активации, запросы игроков будут отображаться в игровом браузере, в качестве небольших *.html файлов. Поддерживается не всеми играми и административными плагинами. 1 = вкл. 0 (по умолчанию) = выкл.
      • EnablePublicCommands
        При активации игроки смогут выставить свою статистику на всеобщее обозрение через чат. 1 = вкл. 0 (по умолчанию) = выкл.
      • GameEngine
        Движок игрового сервера. 1 = GoldSource. 2 = Source. 3 (по умолчанию) = Orange Box.
      • GameType
        Режим игры. 1 (по умолчанию) = Нормальный. 2 = Deathmatch (необходим только если игроки не разбиты на команды, как например в CSS Deathmatch)
      • HLStatsURL
        Адрес статистики (без указания файла, режима и завершающего слеша). Будет отправлен на мастер сервер и отображен в игре.
      • IgnoreBots
        При активации, не будут отслеживаться действия ботов. 1 (по умолчанию) = вкл. 0 = выкл.
      • MinimumPlayersRank
        Максимальный ранг игрока, необходимый для его отображения на суммарной статистике серверов (например на Top-500 Servers).
      • MinPlayers
        Минимальное количество игроков на сервере, при котором начинают учитываться их большинство их действий (выполнение миссии, убийство и т.д.). Предотвращает накручивание игроками опыта на пустом сервере, без противников (например за захват флага).
      • Mod
        Указывает административный плагин, установленный на сервере. Может принимать значения: SOURCEMOD, MINISTATS, BEETLE, MANI и AMXX.
      • PlayerEvents
        Разрешает игрокам вызов отображения внутриигровой информации (например /skill). 1 (по умолчанию) = вкл. 0 = выкл.
      • PlayerEventsAdminCommand
        Команда для отображения администратору некоторых сообщений (например балансера команд). По умолчанию ''.
      • PlayerEventsCommand
        Команда для отображения событий игрока. По умолчанию 'say'-command.
      • PlayerEventsCommandHint
        Команда для отображения действий балансера команд в стиле 'hint'. По умолчанию ''.
      • PlayerEventsCommandOSD
        Команда для отображения меню в стиле amx на запросы '/rank', '/session', '/kpd'. По умолчанию ''.
      • ShowStats
        Активирует периодическое отображение внутриигровой статистики совместно с broadkast командами. 1 (по умолчанию) = вкл. 0 = выкл.
      • SkillMode
        Режим изменения опыта, в зависимости от фрагов. 0 (по умолчанию) = Жертва теряет все очки полученные убийцей. 1 = Жертва теряет 3/4 очков полученных убийцей. 2 = Жертва теряет 1/2 очков полученных убийцей. 3 = Жертва теряет 1/4 очков полученных убийцей. 4 = Жертва не теряет очки. 5 = Только для ZPS, жертва из выживших теряет 1/2, а из инфицированных 1/4 очков полученных убийцей.
      • SuicidePenalty
        Наказание за самоубийство. По умолчанию: 5 очков.
      • SwitchAdmins
        Разрешает перемещение администраторов при балансировке команд. 1 = вкл. 0 (по умолчанию) = выкл.
      • TKPenalty
        Наказание за убийство соратников. По умолчанию: 50 очков.
      • TrackServerLoad
        Каждые 5 минут сохраняет количество игроков, присутствующих на сервере. 1 (по умолчанию) = вкл. 0 = выкл.
      • UpdateHostname
        Автоматическое обновление названия сервера в соответствии с переменной "hostname" в файле "server.cfg" игрового сервера.
    Внимание:
    • Для вступления в силу внесенных изменений, необходимо перезапустить процесс "hlstats.pl"!
    Примечания:
    • Использование Rcon пароля описано в спойлере "Daemon Settings", 14 пункта.
    • Порядковые номера имеет смысл указовать, только при обработки информации с нескольких серверов для одной игры.
    • Способы идентификации пользователей описаны в спойлере "Daemon Settings", 14 пункта.
    • Значения практически всех переменных - устанавливаются автоматически, в зависимости от выбранной игры и при выборе "Game Mod" во время добавления сервера.
  14. Настроить раздел "General Settings" > "HLstatsX:CE Settings" статистики:
    Site Settings
    • Название сайта, на котором установлена статистика:
      • Пусто (по умолчанию).
    • Адрес домашней страницы сайта, на котором установлена статистика:
      • Пусто (по умолчанию).
    • Адрес электронной почты администратора статистики:
      • Пусто (по умолчанию).
    • Отображение баннера:
      • Не отображать (по умолчанию);
      • Отображать на каждой странице;
      • Отображать только на странице выбора игры.
    • Полное (с расширением) имя файла баннера, находящегося в директории "hlstatsimg":
      • hlxbanner3.png (по умолчанию).
    • Использование закладок для отображения/скрытия части информации на некоторых страницах или отображение всей информации на одной странице:
      • Новый стиль (разбиение на закладки) (по умолчанию);
      • Старый стиль (отображение в одном окне).
    • Использование AJAX раскрывающегося списка серверов на главной странице каждой игры (результат будет виден только у игр с несколькими серверами):
      • Включено (по умолчанию);
      • Отключено.
    • Отображение в меню ссылки на лог чата:
      • Показать (по умолчанию);
      • Скрыть.
    • Отображение в меню ссылки на список забаненных игроков:
      • Скрыть (по умолчанию);
      • Показать.
    • Отображение Hitbox на flash, вместо стандартной html таблицы меткости (css, dods, & cstrike):
      • Flash Hitbox (по умолчанию);
      • HTML таблица.
    • Отображение графика суммарной загруженности всех прослушиваемых серверов:
      • Скрыть;
      • Показать (по умолчанию).
    • Отображение внизу страницы фразы "Executed X queries, generated this page in Y Seconds.":
      • Нет (по умолчанию);
      • Да.
    • Фоновое изображение у подписи для форумов используемое по умолчанию (числа от 1 до 10 или random):
      Фоновые изображения подписей находятся в директории "sig".
      • random (по умолчанию).
    • Использование модуля rewrite позволяет генерировать подписи в виде изображений, делая их совместимыми с большинством форумов.
      Для реализации этой функции на сервере должен быть активирован rewrite_module и фале ".htaccess", находящимся рядом с "hlstats.php" должны быть строки:[frame]RewriteEngine On
      RewriteRule sig-(.*)-(.*).png$ sig.php?player_id=$1&background=$2 [L][/frame]
      • Отключено (по умолчанию);
      • Включено.
    Примечания:
    • Активация модуля rewrite описана в спойлере "httpd.conf", 4 пункта.
    • Создание файла ".htaccess" описано в пункте 12.4.
    GeoIP data & Google Map settings
    • Отображение информации, требующей данные GeoIP:
      • Показать (по умолчанию);
      • Скрыть.
    • Отображение карты мира Google:
      • Показать (по умолчанию);
      • Скрыть.
    • Ключ API, для карты Google:
      1. Открыть "API Карт Google".
      2. Войти, используя свой аккаунт Google (если такового не имеется, зарегистрироваться).
      3. Подтвердить ознакомление и согласие с условиями и положениями.
      4. В поле "URL-адрес моего веб-сайта:", указать адрес статистики без указания "hlstats.php".
      5. Нажать "Сгенерировать ключ API".
      6. Взять ключ из поля "Your key is:".
    • Регион карты Google:
      • Для правильного отображения карт в разделе "Countries", рекомендуется выбирать World.
    • Тип карты Google:
      • Карта со спутника с наложением политической карты (по умолчанию);
      • Политическая карта;
      • Физическая карта;
      • Карта со спутника.
    • * Способ обработки данных "GeoLiteCity":
      Для обработки посредством бинарного файла необходимо наличие файла "GeoLiteCity.dat" в папке "GeoLiteCity", "perl" директории и установленого модуль "Geo::IP::PurePerl".
      • Посредством базы данных (по умолчанию);
      • Посредством бинарного файла.
    Внимание:
    • Для вступления в силу внесенных изменений у пунктов отмеченных знаком "*", необходимо перезапустить процесс "hlstats.pl"!
    Примечания:
    • Способы обработки данных GeoLiteCity, описаны в 11 пункте.
    Awards settings
    • Отображение списка обладателей ежедневных наград на главной странице каждой игры:
      • Скрыть (по умолчанию);
      • Показать.
    • Количество колонок на странице "Awards" > "Daily Awards":
      • 4 (по умолчанию).
    • Количество колонок на странице "Awards" > "Global Awards":
      • 5 (по умолчанию).
    • Количество колонок на странице "Awards" > "Ranks":
      • 5 (по умолчанию).
    • Количество колонок на странице "Awards" > "Ribbons":
      • 5 (по умолчанию).
    Hit counter settings
    • Время ожидания cookie посетителя, в минутах:
      • 5 (по умолчанию).
    • Текущее количество посещений:
      • Заполняется автоматически.
    • Текущее количество переходов:
      • Заполняется автоматически.
    Примечания:
    • Для сброса счетчиков, необходимо установить "0" у двух последних переменных.
    Paths
    • Отображение ссылки для скачивания карты под ее изображением (%MAP% = имя файла карты, %GAME% = код игры):
      Оставьте пустым, для скрытия ссылки.
    Примечания:
    • Тег "%GAME%" можно узнать в колонке "Game Code", секции "General Settings" > "Games".
    • После тега "%MAP%" указывается расширение файла карты.
    Visual style settings
    • Полное (с расширением) имя файла с фоновым изображением графика "Player Trend" на странице игрока, находящегося в директории "hlstatsimg\graph":
      Оставьте пустым, для использования белого фона.
      • trendgraph1.png (по умолчанию).
    • Цвет фона у графика загруженности серверов на главной странице каждой игры, в шестнадцатеричном формате (RRGGBB):
      • 000000 (по умолчанию).
    • Цвет шрифта на графике загруженности серверов на главной странице каждой игры, в шестнадцатеричном формате (RRGGBB):
      • 0066CC (по умолчанию).
    • Цвет фона у графика "Player Trend" на странице игрока, в шестнадцатеричном формате (RRGGBB):
      • 000000 (по умолчанию).
    • Цвет шрифта на графике "Player Trend" на странице игрока, в шестнадцатеричном формате (RRGGBB):
      • 0066CC (по умолчанию).
    • Название листа стилей для использования:
      • Classic (по умолчанию).
    Ranking settings
    • * Способ присвоения ранга:
      • По опыту (по умолчанию);
      • По количеству убийств.
    • * Количество дней, по истечение которых статистика спрячет игроков не заходящих на сервер (по умолчанию 28 дней):
      • 28 (по умолчанию).
    Внимание:
    • Для вступления в силу внесенных изменений у пунктов отмеченных знаком "*", необходимо перезапустить процесс "hlstats.pl"!
    Daemon Settings
    • * Способ идентификации игроков:
      Steam ID - Рекомендуемое значение для публичных серверов, доступных через интернет;
      Имя игрока - Указывается при использовании компьютеров сети несколькими игроками, например для компьютерных клубов;
      IP адрес - Указывается для локальных сетей со статическими IP адресами и не обладающих доступом в интернет для присвоения игрокам уникальных Steam ID.
      • Steam ID (рекомендуемое, по умолчанию);
      • Имя игрока;
      • IP адрес.
    • * Обработка информации только с серверов, указанных в разделе "Game Settings":
      Остальные серверы, отсылающие информацию на статистику, не будут автоматически добавлены в список и обрабатываться.
      Эта переменная очень важна для обеспечения безопасности.
      • Да (рекомендуемое, по умолчанию);
      • Нет.
    • * Автоматическое удаление событий происходивших позднее указанного количества дней из таблицы с историей событий, базы данных:
      Эта переменная очень важна для улучшения производительности.
      Уменьшите значение при обработке большого количества игровых серверов или при сильной загруженности MySQL сервера.
      • 28 (по умолчанию).
    • * Преобразование IP адресов игроков в хосты:
      Необходим работающий DNS.
      • Да (по умолчанию);
      • Нет.
    • * Время ожидания обработки DNS запросов, в секундах:
      Увеличьте значение при медленном соединении или при большом количестве не преобразованных IP.
      Во время ожидания преобразования IP адресов "hlstats.pl" не обрабатывает статистику с игровых серверов.
      • 3 (по умолчанию).
    • * Адрес электронной почты для отправки информации об ошибках базы данных:
      • Пусто (по умолчанию).
    • * Путь до почтовой программы:
      Обычно на хостингах, располагается в директории "/usr/sbin/sendmail".
      • /usr/sbin/sendmail (по умолчанию).
    • * Отсылка Rcon команд на игровые сервера:
      • Да (по умолчанию);
      • Нет.
    • * Игнорирование (исключение из логирования) Rcon команд отсылаемых с IP адреса статистики (полезно при запуске скриптов мониторинга, отсылающих на игровой сервер запросы с использование Rcon пароля):
      • Да (по умолчанию);
      • Нет.
    • * Запись Rcon команд в таблицу истории событий администратора:
      Может быть полезно для наблюдения за действиями администраторов сервера, но использование программ наподобие "PB" засорит таблицу бесполезным мусором.
      • Нет (по умолчанию);
      • Да.
    • * Использование времени из лога игрового сервера для записи событий в базу данных:
      Полезно при внесении в базу данных информации из старых лог-файлов игрового сервера или при отличии временной зоны хоста от игрового сервера.
      • Нет (по умолчанию);
      • Да.
    • * Сохранение и отображение на графике ежедневной информации о количестве игроков, убийств и т.д.:
      • Да (по умолчанию);
      • Нет.
    • * Объединение информации о банах для всех игровых серверов:
      Навечно забаненные игроки, будут автоматически скрыты из статистики всех серверов.
      • Нет (по умолчанию);
      • Да.
    • * Запись в базу данных чата игроков:
      • Да (по умолчанию);
      • Нет.
    • * Запись в базу данных чата администраторов:
      • Нет (по умолчанию);
      • Да.
    • * Отображение во время игры, чата игроков с других серверов:
      • Никому (по умолчанию);
      • Всем;
      • Администраторам.
    Внимание:
    • Для вступления в силу внесенных изменений у пунктов отмеченных знаком "*", необходимо перезапустить процесс "hlstats.pl"!
    Примечания:
    • Добавление Rcon пароля, описано в пункте 13.4.
    • Добавление администраторов, описано в пункте 13.6.
    • Изменение часового пояса, описано в 5 пункте.
    Point calculation settings
    • * Максимальное количество очков опыта, получаемое игроком за фраг:
      • 25 (по умолчанию).
    • * Минимальное количество очков опыта, получаемое игроком за фраг:
      • 2 (по умолчанию).
    • * Количество убийств, необходимое игроку для получения нормального количества очков опыта:
      До достижения этого порога убийца получает, а его жертва теряет минимальное количество очков опыта.
      • 50 (по умолчанию).
    • * Начисления опыта лучшим убийцам по методу "*XYZ*SaYnt":
      Разработан таким образом, чтобы лучшие игроки получали опыт в соотношение 2:1 против нубов для удержания своего ранга.
      • Нет (по умолчанию);
      • Да.
    Внимание:
    • Для вступления в силу внесенных изменений у пунктов отмеченных знаком "*", необходимо перезапустить процесс "hlstats.pl"!
    Proxy Settings
    • * Ключ использующийся при передаче удаленных команд процессу:
      Оставьте пустым, для отключения.
      • Пусто (по умолчанию).
    • * Дополнительные процессы в формате "ip:порт" с которых обрабатывается информация, разделенные запятыми:
      • Пусто (по умолчанию).
    Внимание:
    • Для вступления в силу внесенных изменений у пунктов отмеченных знаком "*", необходимо перезапустить процесс "hlstats.pl"!
    Примечания:
    • В этом разделе можно указывать для обработки дополнительные адреса компьютеров, на которых запущен процесс "hlstats.pl".
  15. Подключить HeatMaps:
    *win / *nix
    1. Скопировать папку "heatmaps" из каталога "extras", пакета со статистикой в свою "perl" директорию.
      • *win Пример: X:\HLStatsX\
        *nix Пример: /home/user/hlstatsx/
    2. Скачать архивы:
    3. Извлечь содержимое архивов в свою "perl" директорию.
      • *win Пример: X:\HLStatsX\
        *nix Пример: /home/user/hlstatsx/
    4. Перейти в директорию "heatmaps".
      • *win Пример: X:\HLStatsX\heatmaps\
        *nix Пример: /home/user/hlstatsx/heatmaps/
    5. Любым текстовым редактором файл внести необходимые изменения в файл "generate.php":

      Код: Выделить всё

      // Сервер базы данных "адрес" или "адрес:порт". В качестве адреса может быть указан IP адрес или хост. MySQL по умолчанию использует порт 3306 (TCP).
      define('DB_HOST',	'localhost');
      // Имя пользователя для доступа к базе данных.
      define('DB_USER',	'ИЗМЕНИТЬ');
      // Пароль для доступа к базе данных.
      define('DB_PASS',	'ИЗМЕНИТЬ');
      // Название базы данных со статистикой.
      define('DB_NAME',	'ИЗМЕНИТЬ');
      // Абсолютный путь до "web" директории статистики, остальные пути пропишутся автоматически.
      define('HLXCE_WEB',	'/path/to/where/you/have/your/hlstats/web');
      // Адрес, отображаемый на интерфейсе HeatMap.
      define('HUD_URL',	'https://www.hlxcommunity.com');
      // Размер карты: small = 800x600, medium = 1024x768, large = 1280x1024.
      define('OUTPUT_SIZE',	'medium');
      
      // Максимальное количество убийств для обработки.
      define('KILL_LIMIT',	10000);
    6. Под *nix назначить файл "generate.php" исполняемым:

      Код: Выделить всё

      chmod 744 generate.php
    7. Запустить файл "generate.php" указав необходимые параметры:
      • --game=<game>
        Обрабатывать только указунную игру.
        --map=<map>
        Обрабатывать только указанную карту, необходимо наличие параметра --game.
        --disable-cache
        Игнорировать и очищать содержимое кеш директории, рекомендуется использовать при первой обработке.
        --ignore-infected
        Не учитывать убийства обычными инфицированными в Left 4 Dead.

        Пример:

        Код: Выделить всё

        ./generate.php (Обработать все игры из базы данных)
        ./generate.php --game=css (Обработать только "Counter-Strike: Source")
        ./generate.php --game=css --map=de_dust2 (Обработать только карту "de_dust2" из "Counter-Strike: Source")
        ./generate.php --disable-cache (Обработать все игры из базы данных в первый раз, не используя файлы из директории "./cache")
        ./generate.php --game=l4d --ignore-infected (Не использовать убийства обычными инфицированными в Left 4 Dead)
    Внимание:
    • Для работы "HeatMaps" необходимы "FreeType" и "Gd" расширения для PHP!
    • Обработка 300000 убийств на одной карте, занимает приблизительно 10 минут на процессоре с 2.4 ГГц!
    Примечания:
    • Принцип добавления расширений, описан 3 пункте.
    • Активация модуля расширений описана в спойлере "php.ini", 4 пункта.
  16. Запустить обработку статистической информации:
    *win FireDaemon (содержит изображения)
    1. Обзовестись "FireDaemon".
    2. Запустить "FireDaemon" и .
    3. Нажать "Create a new service definition" и заполнить закладки для каждой службы, опираясь на изображения:
      1. Program Различные для всех трех процессов:
        | Awards | HeatMaps | Statistics |
      2. Settings Одинаковые для ежедневных наград и heatmaps:
        | Awards + HeatMaps | Statistics |
      3. Advanced Одинаковые для всех трех процессов:
        | Awards + HeatMaps + Statistics |
      4. Dependencies Одинаковые для всех трех процессов:
        | Awards + HeatMaps + Statistics |
      5. Environment Одинаковые для всех трех процессов:
        | Awards + HeatMaps + Statistics |
      6. Pre / Post-Service Одинаковые для всех трех процессов:
        | Awards + HeatMaps + Statistics |
      7. Scheduling Различные для всех трех процессов:
        | Awards | HeatMaps | Statistics |
      8. Dialogs Одинаковые для всех трех процессов:
        | Awards + HeatMaps + Statistics |
      9. Recovery Одинаковые для всех трех процессов:
        | Awards + HeatMaps + Statistics |
    4. Запустить службы, нажав "Start the selected sevice" на каждой.
    Примечания:
    • Взломщик для "FireDaemon", ищите сами.
    *nix crontab
    1. В файле "run_hlstats", у переменной "perldir" указать абсолютный путь до своей "perl" директории.
    2. Запустить обработчик статистики, командой:
    3. Выполнить команду:
    4. Добавить строки основываясь на примере:
      • Код: Выделить всё

        */1 * * * * cd /home/user/hlstatsx && ./run_hlstats start
        00 00 * * * cd /home/user/hlstatsx && ./hlstats-awards.pl
        00 00 * * * cd /home/uno/Half-Life/stats/hlstatsx/heatmaps && ./generate.php
        Первая строка - каждую минуту прверяет работоспособность обработчика статистики и перезапускает его, в случае падения;
        Вторая строка - в 00:00 запускает обработку наград;
        Третья строка - в 00:00 запускает обработку HeatMaps.
    Примечания:
    • В третью строку можно добавить необходимые параметры из пункта 15.6.
  17. Перезапустить игровые серверы (запустить, если еще не запущены) или изменить на них карты.

evgen-ap
Сержант
Сержант
Сообщения: 46
Зарегистрирован: 05.11.2007
Контактная информация:

#2 Сообщение 04.10.2009, 20:16

a freetype зачем нужен? точнее что именно он делает? и напиши тогда, что этот пункт *опционально*
Последний раз редактировалось U#0 04.10.2009, 20:22, всего редактировалось 1 раз.
Причина: Добавил пояснение.

Аватара пользователя
Dark4eg
Капитан
Капитан
Сообщения: 316
Зарегистрирован: 23.02.2007
Откуда: Kolomna City
Поблагодарили: 7 раз
Контактная информация:

#3 Сообщение 04.10.2009, 22:27

U#0
Отличный мануал, браво!
По ходу чтения нужных мне пунктов, заметил небольшие опечатки:

1) Пункт 16

*win FireDaemon (содержит изображения)
Подпункт 3, ошибочка:

Program РазДичные для всех трех процессов

Подпункт 6, тоже самое:

Scheduling РазДичные для всех трех процессов:

2) Пункт 16

Запустить обработку статистической информации:
*nix crontab

Примечания:

* В тРетью строку можно добавить необходимые параметры из пункта 15.6.

Пропущена буковка "р".
Последний раз редактировалось U#0 04.10.2009, 22:27, всего редактировалось 5 раз.
Причина: Спасибо, поправил.
Изображение

Аватара пользователя
Dark4eg
Капитан
Капитан
Сообщения: 316
Зарегистрирован: 23.02.2007
Откуда: Kolomna City
Поблагодарили: 7 раз
Контактная информация:

#4 Сообщение 05.10.2009, 14:23

U#0
Ой, в самом верху ошибочка...
"Данная статья является интеллектуальной собственностью сайта CSManua.RU"
Последний раз редактировалось U#0 05.10.2009, 14:23, всего редактировалось 2 раза.
Причина: Досадная опечатка, исправил.
Изображение

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#5 Сообщение 07.10.2009, 12:55

где то установленный есть что бы посмотреть на него....если не трудно ссылочку ;)
Последний раз редактировалось U#0 08.10.2009, 13:07, всего редактировалось 1 раз.
Причина: http://fps.psychoid.ru
Изображение

VidocQ
Нович0к
Нович0к
Сообщения: 15
Зарегистрирован: 23.07.2006
Откуда: Нижневартовск
Контактная информация:

#6 Сообщение 07.10.2009, 15:38

Добавте инфу как heatmap включить?
Последний раз редактировалось U#0 08.10.2009, 13:13, всего редактировалось 2 раза.
Причина: Читай вниматнльно!

Аватара пользователя
Pr0Ger
Модератор
Модератор
Сообщения: 1829
Зарегистрирован: 16.01.2009
Благодарил (а): 17 раз
Поблагодарили: 214 раз
Контактная информация:

#7 Сообщение 09.10.2009, 11:44

пункт 10, оба спойлера
В файл "игра\cfg\srever.cfg" добавить строки:
или это так задумано?
Последний раз редактировалось U#0 09.10.2009, 11:44, всего редактировалось 2 раза.
Причина: Ога. Исправил.

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#8 Сообщение 11.10.2009, 20:33

по поводу хитмапс...есть уточнение, правда не касательно этого топика, рискую получить еще 1 предупреждение, но попробую, думаю нужная вещь. При запуске генератора точек убийств, вываливается куча ошибок, это вызвано отсутствием в инсталляторе 1.6.1 двух файлов brush_small.png и brush_large.png которые должны лежать в папке heatmaps/src/, это правда касательно инсталлятора для линуха, но похоже и для винды тоже нету. Эти файлы есть в предыдущем релизе 1.6.0 . Сам полдня тыкался не мог понять в чем прикол. Сейчас все работает как часы.
Последний раз редактировалось U#0 12.10.2009, 17:49, всего редактировалось 1 раз.
Причина: 10x за пояснение.
Изображение

Аватара пользователя
warloock
Лейтенант
Лейтенант
Сообщения: 226
Зарегистрирован: 28.11.2008
Откуда: Украина. г.Харьков
Благодарил (а): 9 раз
Поблагодарили: 3 раза
Контактная информация:

#9 Сообщение 13.10.2009, 20:30

Heatmaps для Team Fortress 2 с цветными изображениями и координатами.
phpMyAdmin
  • 1.Выбераем hlstatsx базу данных
    2.Выбераем Таблицу : hlstats_heatmap_config и удаляем её.
    3.Импортируем hlstats_heatmap_config1.sql.zip
Web
  • 1.Копируем картинки из scr.7z в ...\hlstatx\heatmaps\src\
Список карт
  • dm_duel_v1
    dm_duel3_r3020
    cp_labor
    ctf_2bridges_f2
    duel_duel2
    dm_mini_gravelpit_v2
    ctf_mach4
    koth_lighthouse_rc5
    dm_iceworld_b4
    pl_goldrush
    ctf_turbine
    cp_granary
    pl_badwater
    koth_nucleus
    cp_dustbowl
    cp_badlands
    koth_viaduct
    cp_lazytown
    ctf_convoy_v2
    ctf_casbah3_b4
    koth_garbage_day
    cp_redfort_b3
    cp_junction_final
    cp_orange_x3
    koth_sawmill
    ctf_snofort_final
    cp_yukon_final
    ctf_well
    fy_iceworld
    cp_gravelpit
    cp_fastlane
    koth_waste
    ctf_2fort
    pl_swiftwater
    pl_sawmill_s1a1
    plr_pipeline
    pl_hoodoo_final
    koth_autumn_twilight_b1a
    ctf_floodzone2_v1
    koth_harvest
    ctf_stronghold_b5
    pl_borax_rc
    cp_steel
    koth_oilfield
    ctf_aerospace_b4
    cp_well 538
    cp_egypt_final
    pl_cashworks_rc
    ctf_crossunder
Нужные архивы:
Последний раз редактировалось warloock 13.10.2009, 21:16, всего редактировалось 1 раз.
Изображение

xaider
Сержант
Сержант
Сообщения: 54
Зарегистрирован: 23.12.2008
Контактная информация:

#10 Сообщение 15.10.2009, 17:36

Добавь в шапку что для работы heatmaps ОБЯЗАТЕЛЬНО надо ставить еще и плагин SuperLogs из папки extra (соответствующий вашей игре). Иначе убийства логируются с NULL-координатами и генерация heatmap-ов будет вам говорить что никого на этой карте не убивали. И также когда компилите PHP с поддержкой GD УБЕДИТЕСЬ, что она подцепила libjpeg (смотрите лог от configure). Порядок прост: ставите libjpeg, ставите libfreetype, ставите gd, ставите апач, ставите php.
Те, кто не знают куда идти, никогда не будут у цели.

Аватара пользователя
U#0
Майор
Майор
Сообщения: 529
Зарегистрирован: 25.10.2007
Поблагодарили: 1 раз
Контактная информация:

#11 Сообщение 15.10.2009, 20:49

Спасибо за информацию, но...
Для записи координат в "Team Fortress 2" и "Left 4 Dead", хватило плагина hlstatsx.smx из 10 пункта.
Поддержку же jpg и png (необходим графикам и подписям для форумов) форматов - как раз обеспечивает gd.

Поэтому хочу уточнить:
  • Был ли установлен плагин hlstatsx.smx из 10 пункта во время проблем с записью координат?

bir3yk
Полковник
Полковник
Сообщения: 1346
Зарегистрирован: 07.09.2009
Поблагодарили: 26 раз

#12 Сообщение 15.10.2009, 21:14

у меня из без этого плагина(hlstatsx.smx) нормально рисовало хитмапсы :) в консоли у меня при убийстве и так были эти точки.

и про 10 пункт соурса, напиши что плагин надо скомпилить, а то толку от того что перенес папку скрипта ни кокого :) ( поправлюсь это касается линухового инсталлятора и TF2 на другие сервера пока не ставил)

CSS не пробовал...так у меня стоит просто CS, вот с ним что то сразу не заладилось и я его бросил пока.
Последний раз редактировалось bir3yk 16.10.2009, 01:42, всего редактировалось 4 раза.
Изображение

xaider
Сержант
Сержант
Сообщения: 54
Зарегистрирован: 23.12.2008
Контактная информация:

#13 Сообщение 15.10.2009, 23:48

U#0 писал(а):Спасибо за информацию, но...
Для записи координат в "Team Fortress 2" и "Left 4 Dead", хватило плагина hlstatsx.smx из 10 пункта.
Поддержку же jpg и png (необходим графикам и подписям для форумов) форматов - как раз обеспечивает gd.

Поэтому хочу уточнить:
  • Был ли установлен плагин hlstatsx.smx из 10 пункта во время проблем с записью координат?
Разумеется. С HLX уже довольно давно имею дело, и вообще этот мануал увидел не более недели назад, ставил сам. Статистика работала как часы, задача лишь была заставить работать heatmaps. Просмотрел исходники SuperLogs для всех версий. В версиях TF2 и L4D нет лога координат, видимо плагин компенсирует недостающие параметры логирования конкретного мода. Для всех остальных модов в соответствующих плагинах логирование координат присутствует.

Так же я заметил что в HLX новых версий вообще напроч изменили hlstatsx.smx так что он теперь ничего не логирует, кроме мелких событий связанных в основном с организационной работой плагина. Насчет GD - нифига, его когда компилируешь поддержку libjpeg/png/freetype руками включать надо. GD обеспечивает лишь организацию работы, поддержку формата обеспечивают либы, у меня например imagecreatefromjpeg() не находил во время генерации хитмапов, хотя при этом стоял GD, который прекрасно работал с PNG, GIF и графики в веб интерфейсе рисовал на ура.
Последний раз редактировалось U#0 15.10.2009, 23:48, всего редактировалось 3 раза.
Причина: Ну нехочу я писать ман по php, но что-нибудь придумать придётся...
Те, кто не знают куда идти, никогда не будут у цели.

SAS123
Лейтенант
Лейтенант
Сообщения: 143
Зарегистрирован: 02.01.2006
Благодарил (а): 3 раза
Поблагодарили: 4 раза
Контактная информация:

#14 Сообщение 04.01.2010, 11:57

Зачем в php.ini включать register_globals = On ?
добавлю здесь
Уже выяснил, что можно register_globals = Off.
Вот что пишут сами разработчики:
Nick (psychonic) писал(а):Register global was needed for very very old versions. That requirement was one of the first things we fixed after we took over the project.
Будет ли здесь польза от использования query_cache_size ?
Последний раз редактировалось SAS123 04.01.2010, 18:59, всего редактировалось 1 раз.

Аватара пользователя
Pr0Ger
Модератор
Модератор
Сообщения: 1829
Зарегистрирован: 16.01.2009
Благодарил (а): 17 раз
Поблагодарили: 214 раз
Контактная информация:

#15 Сообщение 04.01.2010, 12:20

SAS123
очевидно из-за того, что разработчики не могли писать $_GET['asd'], а писали $asd
и то, что пишут, что включение register_globals приводит к ухудшению безопасности вранье, ибо при грамотно написанном коде разницы нету

Ответить Вложения 4