Когда то давно меня регулярно мучили вопросом какие карты стоят у меня на сервере, первое время отвечал, затем стало надоедать и в конце концов стало совсем лень отвечать на подобные вопросы. Но так же было понимание о необходимости, данной информации. Так же было интересна не субъективная оценка популярности карт, а реальные данные , вследствие чего и был написан плагин Map Stats для серверов Counter Strike 1.6
Принцип работы плагина прост. В самой начале работы плагин проверяет есть ли в базе данных так карта которая в настоящий момент на сервере, и если она там есть плюсует ей одну игру, если же нет , то записывает как новую. Одновременно помечая дату последней игры. Далее в процессе игры запоминаются победы террористов и контр-террористов. При этом не учитываются раунды когда на сервере менее 2`х человек. Надеюсь, зачем это было сделано, не требует пояснений.
Требования:
Хостинг с поддержкой
SQL
PHP
Установка скрипта :
В существующей базе данных (или создайте новую). Выполните SQL запрос любым удобным для вас методом.
Создайте таблицу:
<?php
CREATE TABLE `Имя вашей таблицы` (
`id` int(11) NOT NULL auto_increment,
`map` varchar(32) NOT NULL,
`ct_win` int(11) NOT NULL default '0',
`t_win` int(11) NOT NULL default '0',
`games` int(11) NOT NULL default '1',
`timestamp` int(12) default '0',
`time` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`dead` int(11) NOT NULL default '0',
`dead_count` int(10) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `map` (`map`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=39;
?>
CREATE TABLE `Имя вашей таблицы` (
`id` int(11) NOT NULL auto_increment,
`map` varchar(32) NOT NULL,
`ct_win` int(11) NOT NULL default '0',
`t_win` int(11) NOT NULL default '0',
`games` int(11) NOT NULL default '1',
`timestamp` int(12) default '0',
`time` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
`dead` int(11) NOT NULL default '0',
`dead_count` int(10) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `map` (`map`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=39;
?>
Имя вашей таблицы - замените на латинское название вашей будущей таблицы.
Пример:
База данных map_stats
Таблица public
Имя не присвоено намеренно, что бы была возможность сделать для каждого из ваших серверов (если у вас он не один) отдельную статистику. Но можно указать одну и ту же таблицу на разных серверах, тогда статистика будет одна для всех карт, без разделения на сервера. В веб топе автоматически не отображаются карты на которых не играли более 7 дней (настраивается).
Сам плагин копируем в папку:
\addons\amxmodx\plugins\
Исходник:
\addons\amxmodx\scripting\
Содержимое папки WEB скопируйте к себе на сайт.
Настройка плагина cvars:
map_stats_host localhost // Хост базы данных
map_stats_db map_stats // База данных
map_stats_user login // Логин к базе данных
map_stats_password pass // Пароль к базе данных
map_stats_table public // Таблица
Настройка web части:
$server = 'localhost'; // Адрес базы данных
$user = 'login'; // Логин
$pass = 'pass'; // Пароль
$db = 'map_stats'; // База даных
$table = 'public'; // Таблица
$chislo = 10; // Число карт на страницу
$max_inactivity = 7; // Количество дней, после которых карта не выводится в статистике ( но остается в базе данных)
В папке img – миниатюры скриншотов к картам.
Если у вас установлен мониторинг серверов lgsl – можно указать путь к файлам данного мониторинга.
В самом низу статистики присутствует крохотная ссылка на сайт автора, просьба не удалять ее.