Battle.Net в сети на Linux
установка battle.net сервера для игры в warcraft3, diablo, diablo2, starcraft
На даный момент последняя версия PVPGN сервера: 1.8.5: pvpgn-1.8.5.tar.gz
Так же нам понадобится файл pvpgn-support: pvpgn-support-1.2.tar.gz

Скачиваем это всё, распаковываем куда-нибудь, типа: /installs
cp pvpgn-1.8.5.tar.gz /installs/
cp pvpgn-support-1.2.tar.gz /installs/
cd /installs
tar -zxvf pvpgn-1.8.5.tar.gz
tar -zxvf pvpgn-support-1.2.tar.gz

cd /installs/pvpgn-1.8.5/src
устанавливаем в /opt/pvpgn с поддержкой MySQL (для этого понадобятся исходники MySQL в системе, что-то вроде пакета MySQL-devel)
./configure --with-mysql --prefix=/opt/pvpgn
make
make install

Если всё прошло без ошибок, то получаем в /opt/pvpgn что хотели.
Далее следует скопировать содержимое файла pvpgn-support:
mkdir /opt/pvpgn/var/files/
cp /installs/pvpgn-support-1.2/* /opt/pvpgn/var/files/

Если используем MySQL, то создаем базу:
mysqladmin -u root create pvpgn -p

входим:
mysql -u root -p

даем доступ для пользователя pvpgn к созданой базе:
grant all privileges on pvpgn.* to pvpgn@localhost identified by '123456';


Далее идем в /opt/pvpgn/etc/ и смотрим главный файл конфигурации: bnetd.conf
Ищем строку storage_path и выставляем наши параметры:
storage_path = sql:mode=mysql;host=127.0.0.1;name=pvpgn;user=pvpgn;pass=123456;default=0;prefix=pvpgn_

allowed_clients по умолчанию стоит: all
Это означает, что мы принимаем всех игровых клиентов

Если не хотим проверять версию игр, то стоит выставить:
skip_versioncheck = true
allow_bad_version = true

Я бы хотел видеть все игры, поэтому исправляю:
report_all_games = true
hide_pass_games = true
hide_started_games = false
hide_temp_channels = false

Для информативности лучше так же заменить:
location = "somewhere"
description = "something"
url = "http://site.battle.com"
contact_name = "user"
contact_email = "user@mail.ru"


При первом запуске:
/opt/pvpgn/bnetd
если всё верно для MySQL, то в указаной базе создадутся необходимые таблицы
Подробный log можно просмотреть в /opt/pvpgn/var/bnetd.log


Любителями побегать в этих играх был написан веб интерфейс для регистрации, а заодно и статистика: webregister.0.4.tar.gz
Распаковываем куда-нибудь, к примеру: /var/www/bnet
tar -zxvf /installs/webregister.tar.gz /var/www/
Создаем виртуальный хост в вебсервере, к примеру в Апаче:
[root@beta etc]# cat /etc/httpd/vhosts/bnet

ServerName bnet
SuexecUserGroup pvpgn pvpgn

AllowOverride all

DocumentRoot /var/www/bnet
ErrorLog /var/log/httpd/bnet/error.log
CustomLog /var/log/httpd/bnet/access.log common


Редактируем файл /var/www/bnet/register/config.php и /var/www/bnet/config.inc.php
Устанавливаем логин, пароль и хост для подключения кMySQL.
Так же импортируем дополнительные таблицы:
mysql -u pvpgn pvpgn < /var/www/bnet/STATS.sql -p
mysql -u pvpgn pvpgn < /var/www/bnet/d2ladder_new.sql -p

получаем странички:
http://bnet/
http://bnet/register/

Вспомогательная информация:
Main developers site: http://pvpgn.berlios.de/
PVPGN stats: http://pvpgn.spfree.net/
WebRegister: http://pelish.spfree.net/index.php?topic=877.0
Статистика: http://harpywar.com/?a=projects&b=6&lang=ru
Ви маєте увійти під своїм обліковим записом

loading