Неофициальный F.A.Q PvPGN

Неофициальный F.A.Q PvPGN
Создан Stkcode
Переведен Tordosss для www.dedicated-server.ru
Версия 1.2c - Октябрь 6, 2002
 Отмазка
Это информация предоставляется только для ознакомления. Для другой информации, обратитесь к сайту PvPGN's. Не вся информация в этом F.A.Q может быть на 100% верна, хотя я пытаюсь сделать ее как можно более точной. Если вы найдете какие-нибудь ошибки, пожалуйста напишите мне на e-mail или сообщите через IRC, чтобы мы вместе смогли их исправить. Большая часть информации была взята с канала IRC channel и форума PvPGN forum и не является истиной в последней инстанции. Мнения и какие-либо выражения в этом F.A.Q могут не совпадать с оными команды The UnDying SouLZz, которая никак не связана с Bnetd, Warforge, или Blizzard Entertainment. PvPGN – это не пиратское программное обеспечение и призывает своих пользователей приобретать только лицензионные копии любых игр, в которые в играете на ней..
 Что нового?
1. Добавлена дополнительная информация по добавлению привилегий админов в в разделе Общие Вопросы, номер 9. Установки должны быть в начале файла с учетной записью пользователя (Проверено, спасибо gr11x).
2. Добавлены инструкции по соединению для Warcraft III, хотя уже существует несколько страниц касательно этого вопроса, нововведения добавлены просто для пущего удобства.
3. Добавлена кое-какая информация по настройке D2CS/D2DBS под Windows, потому как Windows версия (D2Closed 1.0) была недавно выпущена. Настройка Cygwin будет, возможно, разделена на подсекции и кое-где подрезана.
4. Возможно добавим инструкции для запуска D2GS под *nix с использованием wine. Так ли это необходимо? Ведь большинство людей использует Windows и компьютер, на котором установлен wine должен быть весьма быстрым и иметь хороший запас ресурсов. D2GS ест ресурсы как бешеная СВИНЬЯ.
 Содержание
Вступление
1. Что такое PvPGN?
2. PvPGN залицензированна под GPL, что бы это могло значить?
3. Где мне достать свежайшую версию PvPGN?
 Вопросы по установке/настройке
4. Как установить сервер PvPGN под Windows?
5. Как установить сервер PvPGN на системах на основе *nix?
6. Как настроить поддержку MySQL для PvPGN в Windows?
7. Как настроить поддержку MySQL для PvPGN на системах на основе *nix?
8. Как настроить PvPGN в качестве сервиса в Windows?
9. Как установить D2CS и D2DBS под Windows?
10. Как установить D2CS и D2DBS на системах на основе *nix?
11. Как установить D2GS, для чего он служит и где мне его достать?
12. Как настроить tracking и для чего он служит?
13. Как настроить bntrackd и для чего он служит?
 Общие вопросы
14. Что такое Открытый Сервер для Diablo II и Закрытый Сервер для Diablo II?
15. Какие порты мне надо открыть для запуска PvPGN сервера?
16. Где находятся мои файлы логов?
17. Как мне раздавать административные привилегии и что это вообще значит?
18. Что означают все эти сокращения в этом F.A.Q?
19. Какая разница между Standard (стандартной) и Elite (элитной) версиями PvPGN?
20. Могу я использовать Microsoft SQL с PvPGN вместо MySQL?
21. Как мне создать собственные записи в файле versioncheck (проверки версии)?
22. Как мне соединиться к PvPGN с Warcraft III?
 Проблемы и их разрешение
23. Когда я заглядываю в свой файл логов после запуска PvPGN, он пишет мне "main: failed to initialize network (exiting) (ошибка в обнаружении сети (закрываюсь))".
24. Я проверил свой файл bnetd log и там ничего нет, хотя PvPGN запущен.
25. Когда я подключаюсь Diablo II, я получаю сообщение: "No realms are available right now. Please try again later (Ни один мир пока не доступен. Пожалуйста, вопробуйте позже)".
26. В Red Hat Linux 7.x, когда я пытаюсь компилировать с поддержкой MySQL происходит ошибка.
27. Когда я пытаюсь скомпилировать PvPGN, я получаю сообщение с ошибкой "/bin/sh: autoheader: command not found (команда не найдена)".
28. У меня проблемы с соединением к моему серверу PvPGN.
29. Я изменил файл баннера .pcx, и все равно в Warcraft III баннер не изменился.
30. В PHP статистике, я получаю сообщение "Warning: Invalid content of \{\} in /libs/build_page.php on line 17".
31. В PHP статистике я получаю сообщение"Call to undefined function: mysql_connect() in /pvpgn-stats/mysql_handler.php line 7".
32. При запуске PvPGN 1.1.6x, я получаю сообщение "server_set_name: could not get hostname: No error".
Вступление
Что такое PvPGN?
PvPGN – сокращенное от Player -vs- Player Gaming Network (Игровая Сеть Сражений Между Игроками). Больее подробная информация по этой теме будет добавлена в ближайшем будущем.
 PvPGN залицензированна под GPL, что бы это могло значить?
PvPGN, Bnetd и аналоги залицензированны по условиям GNU's General Public License (Общей Публичной Лицензии). Вкратце, это означает что вы можете свободно использовать это программное обеспечение и модифицировать его по своему желанию, но не имеете права продавать его, брать деньги за его использование или убирать имена авторов этой программы. Это также означает, что вы не платите за нее, что подразумевает ОТСУТСВИЕ ПОДДЕРЖКИ для нее. Так что не стоит жаловаться или ругаться на PvPGN или Bnetd, если вы не можете заставить ее работать. Так как программа бесплатна, не существет никаких обязательств в содействии вам. Так что вы сами по себе.
Где мне достать свежайшую версию PvPGN?
Скачайте последнюю копию PvPGN на сайтах:
· Warcraft 3 Toolz
· War 3 Forever
· AmAdEo's B@ttle.Net
· Trendecide
 За D2Closed и другой информацией, вам прямая дорога сюда:
· Warcraft III & PvPGN Stuff
 Для инструкций по игре в Warcraft III идите сюда:
· Warcraft 3 and PvPGN Stuff
 За Вэб Статистикой Jfro's PHP Web Stats загляните сюда:
· PvPGN Web Stats
 Для списка серверов PvPGN Server List обратитесь к этому сайту:
· PvPGN Server List
 Форум PvPGN находится здесь:
· PvPGN Forum
 IRC Канал (канал #pvpgn) расположен тут:
· Primary Server
· Secondary Server
 Вопросы по установке/настройке
Как установить сервер PvPGN под Windows?
Cкачайте последнюю версию PvPGN отсюда. Процесс установки, описанный ниже, позволит вам играть в Warcraft II Battle Net Edition, Warcraft III Reign of Chaos, Starcraft, Starcraft Brood War и Diablo. Вы не сможете играть в Diablo II или Diablo II Lord of Destruction, так как им требуется d2cs, d2dbs и /или d2gs которые мы в этой секции обсуждать не будем.
Я предлагаю вам сначала заставить работать ваш сервер PvPGN, перед тем, как подключать программы d2*, так как вы их все равно не сможете использовать, пока PvPGN не настроен и не работает правильно. Также, убедитесь что в Варкрафт 3 вы используете загрузчик для игры на неофициальных серверах Battle.net, вроде вашего PvPGN сервера.
1. Для установки PvPGN:
 · Просто запустите файл exe дважды (или единожды, в зависимости от вашей системы) кликнув на нем.
 · Следуйте инструкциям в программе-установщике и кликните на кнопке finish когда установка завершится.
 Если вы используете Windows XP, 2000, ME, или NT, возможно, вам стоит установить PvPGN как сервис, хотя это необязательно.
Для установки PvPGN как сервиса, запустите программу-установщик с параметром "-s install". Пример:
 · c:\pvpgn1.1.6rc2.exe -s install
Сетап скажет, что он "Installing as a Service (Устанавливает как сервис)".
Для старта сервиса PvPGN кликайте сюда:
 · Start (Пуск)
· Settings (Настройки)
· Control Panel (Панель управления)
· Administrative Tools (Инструменты администрирования)
· Services (Сервисы)
· Выберите сервис PvPGN и кликните на кнопке, похожей на кнпку plzy для старта сервиса
Если вы сталкиваетесь с проблемами, файл exe, который вы хотите использовать, возможно, стоит переименовать в PvPGNEliteService.exe .
 Если вы хотите удалить сервис PvPGN, запустите программу установки опять с параметром "-s uninstall”. Пример:
· c:\pvpgn1.1.6rc2.exe -s uninstall
 2. Теперь PvPGN установлен. Вам нужно правильно сконфигурировать PvPGN перед тем как вы сможете им пользоваться. Перейдите в директорию, куда вы установили PvPGN. Все файлы конфигурации, вроде bnetd.conf и файлы логов расположены в субдиректориях.
По умолчанию установка производится сюда:
 · c:\program files\the player -vs- player gaming network\pvpgn
 Просто на случай если вы не знаете или забыли куда вы установили PvPGN.
 3. Идите в c:\program files\the player -vs- player gaming network\pvpgn\etc и отредактируйте файл bnetd.conf текстовым редактором, вроде Блокнота или Wordpad.
На самом деле, вам необходимо изменить только три вещи в файле bnetd.conf чтобы заставить PvPGN работать. Пока оставьте все остальные настройки в покое, PvPGN будет прекрасно работать и без этого. Измените только то, что предлагается ниже:
В файле bnetd.conf найдите раздел"Message Logs". Измените loglevel на следующее:
 · loglevels = fatal,error,warn,info,trace,debug
 Это заставит PvPGN заносить в логи все возможные ошибки, включая ошибки инициализации, MySQL и соединения.
 После этого найдите раздел "Server Network Info". Измените servaddrs на:
 · servaddrs = "0.0.0.0:6112"
 Это заставит PvPGN прослушивать порт 6112 на предмет протоколов TCP и UDP для всех IP адресов на вашем компьютере.
 И наконец, чтобы произвести последние изменения в файле bnetd.conf просто перейдите на несколько строк вниз. Измените w3routeaddr , который также находится в разделе "Server Network Info" на следующее:
 · w3routeaddr = "X.X.X.X:6200"
 Замените X.X.X.X на ваш IP адрес. Это должен быть определенный IP адрес или доменное имя, вроде www.pvpgn.org, 0.0.0.0:6200 работать не будет. Это скажет роутеру PvPGN Warcraft III прослушивать порт 6200 на предмет протокола TCP. Это направит информацию Warcraft III к PvPGN.
 Идите ниже, пока не наткнетесь на строку w3routeshow. В PvPGN версии 1.1.6х и выше, опция w3routeshow доступна. Включите и измените ее только если вы используете NAT, находитесь за рутером, gateway, и т.д. Если вы не уверены, просто оставьте все как есть..
Попробуйте сначала использовать w3routeaddr, если у вас проблемы при соединении с Warcraft III, после чего включайте w3routeshow.
 · W3routeshow по умолчанию отключен и не стоит его включать если у вас нет никаких проблем.
 · #w3routeshow = "127.0.0.1:6200"
 Это заставит PvPGN прослушивать порт 6200 на предмет протокола TCP на localhost (127.0.0.1) вашего копьютера. Если вы включите это, измените на это ваш IP адрес или доменное имя.
 Сохранитесь и закройте текстовый редактор.
4. Теперь откройте порты 6112 и 6200 если вы используете фаерволл. Если вы находитесь за роутером, форвардните порты 6112 и 6200 на свой компьютер или зарегистрируйте свой компьютер в роутере как DMZ. Если вы используете Windows XP, у него есть фаерволл установленный по умолчанию. Убедитесь в том, что вы открыли полный доступ для входящей и исходящей информации по портам 6112 и 6200 если фаерволл у вас включен, иначе вы не сможете соединиться к вашему серверу PvPGN.
5. Теперь вы готовы к запуску PvPGN.
На панели управления выберите:
· Start (Пуск)
· Programs (Программы)
· Player -vs- Player Gaming Network
· PvPGN
 После запуска PvPGN загляните в ваш файл логов bnetd. Лог bnetd должен выглядеть так:
Выдержка из лога bnetd
 Sep 11 19:56:46 main: PvPGN version 1.1.6 RC3 process 1000
 Sep 11 19:56:46 main: logging event levels: fatal,error,warn,info,debug,trace
 Sep 11 19:56:46 list_get_length: got NULL list
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(2)PlunderIsle.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Frostsabre.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Legends.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)TranquilPaths.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Moonglade.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Duskwood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)HarvestMoon.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DarkForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DragonFire.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)TimbermawHold.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)Battleground.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BlastedLands.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BloodvenomFalls.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GardenOfWar.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PetrifiedForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)HarvestMoon.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)MysticIsles.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)Battleground.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Duskwood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)HarvestMoon.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DarkForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DragonFire.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)TimbermawHold.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)Battleground.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BlastedLands.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BloodvenomFalls.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GardenOfWar.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PetrifiedForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 server_set_name: set servername to "localhost"
 Sep 11 19:56:47 accountlist_create: started creating accountlist
 Sep 11 19:56:47 accountlist_create: loaded 0 user accounts in 0 seconds
 Sep 11 19:56:47 ladderlist_create: created 10 local ladders
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "STAR":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "STAR":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "SEXP":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "SEXP":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "W2BN":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "W2BN":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "W2BN":3
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "W2BN":3
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "WAR3":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "WAR3":1
 Sep 11 19:56:48 realm_create: created realm "D2CS"
 Sep 11 19:56:48 tracker_set_servers: tracking packets will be sent to 64.234.45.320:6114
 Sep 11 19:56:48 server_process: listening for bnet connections on 0.0.0.0:6112 TCP
 Sep 11 19:56:48 server_process: listening for w3route connections on 26.135.61.243:6200 TCP
Все готово, наслаждайтесь!!!
 Как установить сервер PvPGN на системах на основе *nix?
Прежде всего, скачайте source. Последнюю версию можно скачать здесь. После этого переходите к установке PvPGN.
1. Установка PvPGN на системах на основе *nix имеет большое количество преимуществ над Windows-версией. Внимательно прочитайте этот раздел перед тем, как что-либо делать, потому как вам, возможно, понадобится использовать разные опции, основанные на ваших потребностях или настройках системы. Прежде всего, должен быть декомпрессирован tar файл. Залогиньтесь как root, перейдите к директории, куда вы скачали PvPGN и наберите что-нибудь вроде этого:
 · tar xvzf pvpgn.tar.gz
 Это прикажет tar создать директорию, использующую имя tar файла и декомпрессировать файлы, содержащиеся в нем, в эту директорию. Не забудьте сменить pvpgn.tar.gz на имя tar файла, который вы собираетесь декомпрессировать.
 · cd pvpgn/src
 Эта команда перенесет нас в директорию, куда вы декомпрессировали tar файл, а там в свою очередь откроет директорию src, где лежит source PvPGN.
Теперь нам необходимо сконфигурировать программу-установщик перед тем, как мы сможем ее скомпилировать. Есть несколько разных свитчей для этих целей, все зависит от того, хотите ли вы проинсталлировать PvPGN c поддержкой MySQL, сменить путь инсталляции по умолчанию и т.д. Только наиболеее широкоиспользуемые свитчи перечислены ниже, хотя их гораздо больше.
 · ./configure
 Эта команда сконфигурирует установку PvPGN в директорию по умолчанию без MySQL. Учетный записи пользователей будут храниться в flat файлах.
 · ./configure --with-mysql
 Использование свитча --with-mysql сконфигурирует PvPGN на использования базы данных MySQL для хранения учетных записей пользователей и статистики. Хороший вариант если вы планируете поддерживать большое количество учетных записей пользователей.
· ./configure --prefix="/home/www/bnetd"
 По умолчанию PvPGN будет установлен в /usr/local. Если вы хотите сменить путь инсталляции, изменить путь --prefix на тот, который нужен вам. В данном примере PvPGN будет установлен в /home/www/bnetd.
 · ./configure --with-mysql --prefix="/home/www/bnetd"
 Помимо всего прочего, вы можете использовать свитчи вместе. Выше приведенная команда сконфигурирует PvPGN на установку поддержки MySQL и инсталляцию PvPGN в директорию /home/www/bnetd.
Итак, программа-установщик PvPGN настроена. Теперь мы можем скомпилировать ее, используя стандартные команды *nix. Введите это в bash строке:
 · make
 Эта команда скомпилирует PvPGN на основе настроек из скрипта конфигурации.
 · make install
 Команда делает установочные копии всех соответствующих файлах в их местах назначения. Если вы этого не сделаете, вам придется вручную копировать скомпилированные файлы в их места назначения или просто запускать PvPGN из того места, где вы ее компилировали.
 2. Теперь PvPGN установлен. Вам нужно сконфигурировать PvPGN правильным образом перед тем, как вы сможете использовать его. Перейдите к директории, в которую вы установили PvPGN. Все файлы конфигурации, вроде bnetd.conf и файлы логов располагаются здесь в субдиректориях.
По умолчанию путь, по которому устанавливаются файлы в системах на основе *nix таков:
 · /usr/local
 Перейдите к субдиректории etc и отредактируйте файл bnetd.conf текстовым редактором, вроде emacs, xemacs, pico, vi, и т.д.
На самом деле, вам необходимо изменить только три вещи в файле bnetd.conf чтобы заставить PvPGN работать. Пока оставьте все остальные настройки в покое, PvPGN будет прекрасно работать и без этого. Измените только то, что предлагается ниже:
В файле bnetd.conf найдите раздел"Message Logs". Измените loglevel на следующее:
 · loglevels = fatal,error,warn,info,trace,debug
 Это заставит PvPGN заносить в логи все возможные ошибки, включая ошибки инициализации, MySQL и соединения.
 После этого найдите раздел "Server Network Info". Измените servaddrs на:
 · servaddrs = "0.0.0.0:6112"
 Это заставит PvPGN прослушивать порт 6112 на предмет протоколов TCP и UDP для всех IP адресов на вашем компьютере.
 И наконец, чтобы произвести последние изменения в файле bnetd.conf просто перейдите на несколько строк вниз. Измените w3routeaddr , который также находится в разделе "Server Network Info" на следующее:
 · w3routeaddr = "X.X.X.X:6200"
 Замените X.X.X.X на ваш IP адрес. Это должен быть определенный IP адрес или доменное имя, вроде www.pvpgn.org, 0.0.0.0:6200 работать не будет. Это скажет роутеру PvPGN Warcraft III прослушивать порт 6200 на предмет протокола TCP. Это направит информацию Warcraft III к PvPGN.
 Идите ниже, пока не наткнетесь на строку w3routeshow. В PvPGN версии 1.1.6х и выше, опция w3routeshow доступна. Включите и измените ее только если вы используете NAT, находитесь за рутером, gateway, и т.д. Если вы не уверены, просто оставьте все как есть..
Попробуйте сначала использовать w3routeaddr, если у вас проблемы при соединении с Warcraft III, после чего включайте w3routeshow.
 · W3routeshow по умолчанию отключен и не стоит его включать если у вас нет никаких проблем.
 · #w3routeshow = "127.0.0.1:6200"
 Это заставит PvPGN прослушивать порт 6200 на предмет протокола TCP на localhost (127.0.0.1) вашего копьютера. Если вы включите это, измените на это ваш IP адрес или доменное имя.
 Сохранитесь и закройте текстовый редактор.
3. Теперь откройте порты 6112 и 6200 если вы используете фаерволл. Если вы находитесь за роутером, форвардните порты 6112 и 6200 на свой компьютер или зарегистрируйте свой компьютер в роутере как DMZ..
4. Итак, теперь вы готовы к запуску PvPGN.
Для систем на основе *nix наберите:
· /usr/local/sbin/bnetd
 Если вы установили PvPGN в другую директорию, соответственно измените команду..
 После запуска PvPGN заглянить в ваш файл логов. Он должен выглядеть так:
Выдержка из лога bnetd
 Sep 11 19:56:46 main: PvPGN version 1.1.6 RC3 process 1000
 Sep 11 19:56:46 main: logging event levels: fatal,error,warn,info,debug,trace
 Sep 11 19:56:46 list_get_length: got NULL list
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(2)PlunderIsle.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Frostsabre.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Legends.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)TranquilPaths.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Moonglade.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Duskwood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)HarvestMoon.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DarkForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DragonFire.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)TimbermawHold.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)Battleground.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BlastedLands.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BloodvenomFalls.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GardenOfWar.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PetrifiedForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)HarvestMoon.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)MysticIsles.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)Battleground.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)Duskwood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)HarvestMoon.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(4)LostTemple.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)GnollWood.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)ScorchedBasin.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DarkForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)DragonFire.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)Stromguarde.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)SwampOfSorrows.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(6)TimbermawHold.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)Battleground.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BlastedLands.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)BloodvenomFalls.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GardenOfWar.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)GolemsInTheMist.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PetrifiedForest.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)PlainsOfSnow.w3m
 Sep 11 19:56:46 anongame_matchmaking_process_map: Adding map: Maps\(8)TheCrucible.w3m
 Sep 11 19:56:46 server_set_name: set servername to "localhost"
 Sep 11 19:56:47 accountlist_create: started creating accountlist
 Sep 11 19:56:47 accountlist_create: loaded 0 user accounts in 0 seconds
 Sep 11 19:56:47 ladderlist_create: created 10 local ladders
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "STAR":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "STAR":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "SEXP":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "SEXP":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "W2BN":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "W2BN":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "W2BN":3
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "W2BN":3
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to current ladder "WAR3":1
 Sep 11 19:56:48 ladderlist_create: added 0 accounts to active ladder "WAR3":1
 Sep 11 19:56:48 realm_create: created realm "D2CS"
 Sep 11 19:56:48 tracker_set_servers: tracking packets will be sent to 64.234.45.320:6114
 Sep 11 19:56:48 server_process: listening for bnet connections on 0.0.0.0:6112 TCP
 Sep 11 19:56:48 server_process: listening for w3route connections on 26.135.61.243:6200 TCP
Готово, наслаждайтесь!!!
 Как настроить поддержку MySQL для PvPGN в Windows?
Прежде всего, убедитесь что у вас установлены MySQL и «элитная» версия PvPGN,. Закройте PvPGN если он у вас запущен, после чего:
1. Убедитесь в том, что используете «элитную» версию PvPGN, в которую встроена поддержка MySQL. Поддержка MySQL отсутствует в стандартной версии PvPGN, которая использует flat файлы для настроек и статистики пользователей.
2. Отредактируйте файл bnetd.conf, по умолчанию расположенный в директории c:\program files\the player -vs- player gaming network\pvpgn\etc. Сделайте все необходимые вам изменения, после чего перейдите в самый низ файла, в секцию "db configuration". В большинстве случаев вам будет лучше оставить все так, как оно есть. Все, что, возможно, вам придется сменить (зависит от ОС, которую вы используете) - это путь для mysql_sock.
 · mysql_host = "localhost"
 Здесь вы устанавливаете компьютер, на котором установлен MySQL и где будет храниться база данных для PvPGN. В 90% случаев localhost – самое хорошее значение этой переменной, не приводящее к сбоям. Переменная подсказывает PvPGN соединяться с тем же компьютером, на котором он работает для поиска базы данных SQL. Если вы запускаете MySQL не с того компьютера, на котором работает PvPGN, вы можете сменить значение этой переменной на IP адрес того компьютера, на котором установлен MySQL, но здесь мы это рассматривать не будем.
 · mysql_account = "pvpgn"
 In most cases, just leave this alone. This is the user name that the PvPGN will use to log into the database with.
 · mysql_password = "bnetd"
 В большинстве случаев вам стоит оставить эту переменную в покое. Это пароль, который PvPGN будет использовать для входа в базу данных.
 · mysql_sock = "/var/lib/mysql/mysql.sock"
 Это sock локация MySQL. Весьма важная переменная, так как без нее PvPGN не сможет соединяться с базой данных. Возможно, вам надо будет сменить путь в зависимости от вашей ОС. Чтобы найти sock файл, просто проведите "Поиск" *.sock в меню Пуск.
 · mysql_dbname = "PVPGN"
 В большинстве случаев вам стоит оставить эту переменную в покое. Это имя базы данных, которе PvPGN будет использовать для входа.
 Сохранитесь и закройте текстовы редактор, после этого запускайте PvPGN.
 Как настроить поддержку MySQL для PvPGN на системах на основе *nix?
Для начала убедитесь в том, что MySQL правильноустановлен и сконфигурирован. Если вы устанавливали rpm файлы, убедитесь в том, что установлены MySQL, MySQL-Client и MySQL-Shared.
1. Прежде всего, скомпилируйте PvPGN с поддержкой MySQL, например:
 · ./configure --with-mysql
· make
· make install
 3. Отредактируйте bnetd.conf, по умолчанию расположенный в директории /usr/local/etc. Сделайте все необходимые вам изменения, после чего перейдите в самый низ файла, в секцию "db configuration". В большинстве случаев вам будет лучше оставить все так, как оно есть. Все, что, возможно, вам придется сменить (зависит от ОС, которую вы используете) - это путь для mysql_sock.
 · mysql_host = "localhost"
 Здесь вы устанавливаете компьютер, на котором установлен MySQL и где будет храниться база данных для PvPGN. В 90% случаев localhost – самое хорошее значение этой переменной, не приводящее к сбоям. Переменная подсказывает PvPGN соединяться с тем же компьютером, на котором он работает для поиска базы данных SQL. Если вы запускаете MySQL не с того компьютера, на котором работает PvPGN, вы можете сменить значение этой переменной на IP адрес того компьютера, на котором установлен MySQL, но здесь мы это рассматривать не будем.
 · mysql_account = "pvpgn"
 In most cases, just leave this alone. This is the user name that the PvPGN will use to log into the database with.
 · mysql_password = "bnetd"
 В большинстве случаев вам стоит оставить эту переменную в покое. Это пароль, который PvPGN будет использовать для входа в базу данных.
 · mysql_sock = "/var/lib/mysql/mysql.sock"
 Это sock локация MySQL. Весьма важная переменная, так как без нее PvPGN не сможет соединяться с базой данных. Возможно, вам надо будет сменить путь в зависимости от вашей ОС. Чтобы найти sock файл, поищите стандартными командами *nix.
 · mysql_dbname = "PVPGN"
 В большинстве случаев вам стоит оставить эту переменную в покое. Это имя базы данных, которе PvPGN будет использовать для входа.
 2. Теперь, когда информация базы данных удобно расположилась в файле bnetd.conf, базу данных слудет создать. В PvPGN 1.1.5х и выше PvPGN автоматически создаст базу данных при старте, используя "db configuration", располагающиейся в файле bnetd.conf.
 · Чтобы автоматически создать базу данных, просто запустите PvPGN, он должен сам создать имя базы данных, имя пользователя и пароль, определенные в "db configuration" в файле bnetd.conf.
 Если хотите создать базу данных вручную, перейдите к директории, в которую вы декомпрессировали сорс. В командной строке наберите:
 · mysqladmin -u root -p create PVPGN
 Создает базу данных PVPGN.
 · mysql -u root -p PVPGN < dbdump.txt
 Нам нужно запихнуть что-нибудь в базу данных PvPGN, этим мы создаем таблицы и индексы.
3. Теперь, когда вы создали базу данных, вам нужно будет создать пользователя и пароль. Войдите в базу данных PvPGN и добавьте пользователя pvpgn и пароль, используя GRANT privileges, как описано ниже (набирайте все жирным текстом, как вы увидите ниже, включая текст, написанный большими буквам и все остальные знаки):
 · mysql -u root -p PVPGN
 Войти в базу данных PVPGN как root.
 · mysql> GRANT ALL PRIVILEGES ON *.* TO pvpgn@localhost
 -> IDENTIFIED BY 'bnetd' WITH GRANT OPTION;
 Создать пользователя pvpgn с паролем bnetd.
 · mysql> \q
 Выйти из промпта MySQL
 4. А теперь в качестве последнего шага, давайте проверим и убедимся в том, что мы не допустили ошибок. В командной строке набреите:
 · mysql -u pvpgn -pbnetd PVPGN
 Вход в базу данных PVPGN в качестве пользователя pvpgn с паролем bnetd
 Если все прошло успешно, вы должны находиться в промпте MySQL, наберите \q чтобы выйти и вернуться к командной строке. Если это у вас не получилось, снова войдите в базу данных PvPGN как root и используйте команду FLUSH PRIVILEGES; в промпте MySQL, чтобы удалить всех пользователей. После этого вернитесь назад к шагу №3. Убедитесь, что вы добавляете ";" в конце строк там, где это необходимо, иначе ничего нормально работать не будет.
 Как настроить PvPGN в качестве сервиса в Windows?
Запуск PvPGN в качестве сервера работает только в Windows NT, Me, 2000 и XP!
1. Запустите программу-установщик с параметром "-s install". Например:
 · c:\pvpgn1.1.6rc2.exe -s install
Установщик выдаст сообщение "Installing as a Service (Устанавливаю в качестве сервиса)".
Для запуска PvPGN просто перейдите на контрольную панель, инструменты администрирования, сервисы, после этого выберите сервис PvPGN.
Если вы испытываете какие-либо проблемы, вам, возможно, стоит переименовать файл exe, который вы хотите использовать в качестве сервиса на PvPGNEliteService.exe .
 2. Чтобы деинсталлировать сервис PvPGN, запустите программу-установщик с параметром "-s uninstall". Например:
 · c:\pvpgn1.1.6rc2.exe -s uninstall
 Как установить D2CS и D2DBS в Windows?
До недавнего времени реальной версии D2CS и D2DBS не существовало. D2Closed (Win32 моды, сделанные TheCorsair и собранные Creeplord) вышла только недавно и является Windows версией D2CS и D2DBS. Это, вероятно, лучшее, что можно предложить пользователям Windows.
Просто следуйте инструкциям ниже, но установите D2Closed и сразу перейдите к шагу 9. Шаг с 1 по 8 рассматривают скачивание и установку Cygwin. Файлы d2cs.conf и d2dbs.conf в сущности, одинаковы, и зависят только от того, какую версию (Win или *nix) вы устанавливаете с помощью Cygwin. Две эти секции, возможно, будут разделены в будущем, для тех кто захочет запускать Windows версию, и для тех, кому ближе *nix версия в Windows посредством Cygwin. Секция Cygwin, возможно, станет ненужной в ближайшем будущем, так как теперь существует Windows версия.
Также, вы можете скомпилировать *nix версию так, чтобы она шла под Windows, используя Cygwin. В оригинале это был единственный способ запустить D2CS и D2DBS под Windows, до того, как windows версия увидела свет. У firstof9 есть прекрасная статья, которая объяснит вам как это делать. Я использовал ее части в этой секции. Если хотите увидеть оригинал под авторством firstof9, кликните сюда.
Перед тем как делать что-либо, убедитесь, что PvPGN нормально работает сам по себе. D2CS попытается соединиться и создать канал между ним и PvPGN. Также, она попытается соединиться с D2BS в поисках информации о ладдере. Вот почему важно иметь работающий PvPGN перед тем, как пытаться загрузить D2CS или D2DBS.
D2CS и D2DBS должны быть установлены и запущены вместе, чтобы вы смогли захостить Откытый Сервер Diablo II. Что такое Открытый Сервер? Узнаете здесь.
Итак, приступим к процессу установки:
1. Скачайте и установите Cygwin. Cygwin позволит вам запускать программы на основе*nix из-под Windows, путем эмулирования командной строки *nix.
2. Запустите Cygwin и наберите то, что приводится ниже, чтобы скачать *nix дистрибутив PvPGN (он включает в себя и сорс D2CS и D2DBS).
 · wget http://pvpgn.home.ro/pvpgn-1.1.6rc3.tar.gz
 Скачивает *nix сорс в виде скомпрессированного tar файла. Смените вэб адрес и имя tar файла, если необходимо.
 3. Декомпрессируйте файл, набрав:
 · tar -zxvf pvpgn-1.1.6rc3.tar.gz
 Создает директорию с названием pvpgn-1.1.6rc3 и декомпрессирует туда файлы.
 4. Теперь, перейдите в директорию с tar файлами, набрав:
 · cd pvpgn-1.1.6rc3\src
 Переходит в директорию с декомпрессированными файлами, а там в субдиректорию source. Запомните, *nix учитывает регистр, так что наберите все в нижнем регистре, чтобы облегчить себе жизнь.
 5. Сконфигурируйте программу-установщик тем же способом, каким вы бы делали это под *nix, набрав:
 · ./configure
 «Хватает» перменные вашей системы. Такие, например, как сведения о процессоре, установленные программы и т.д.
 6. Пришло время компилировать, наберите:
 · make
 Компилирует PvPGN.
 7. Теперь, по завершению компиляции, файлы нужно скопировать из временной директории в постоянную локацию, наберите:
 · make install
 Комприует все необходимые файлы в диреторию /usr/local.
 8. Сверните программу Cygwin и откройте следующее:
 · Откройте Explorer
· Откройте путь c:\cygwin\usr\local\etc
Здесь будут файлы конфигурации d2cs.conf для D2CS и d2dbs.conf для D2DBS.
Теперь вы готовы к настройке D2CS и D2DBS.
 9. Для начала, рассмотрим настройку D2CS. D2CS – это сервер в основе которого лежат «миры». Перейдите в директорию, куда вы установили PvPGN, а там субдиректорию etc и отредактируйте файл d2cs.conf.
 · В файле d2cs.conf найдите секцию "Server Major Settings". Там прейдите к строке realmname, она должна выглядеть вот так:
 · realmname = D2CS
 Эти имя «мира», которое D2CS будет пытаться использовать при соединении пользователя. Пока оставьте все так, как оно есть.
 Теперича идите к строке servaddrs и сделайте так, чтобы она выглядела следующим образом:
· servaddrs = 0.0.0.0:6113
 Указывает D2CS слушать порт 6113 с использованием TCP протокола на предмет всех IP адресов.
 Перейдите к gameservlist. Это строка должна быть по умолчанию быть комментарием (ей должен предшествовать знак #, указывающий D2CS игнорировать такую строку). Если вы не планируете использовать D2GS, который в данной секции обсуждаться не будет, оставьте все как есть.
 · #gameservlist = your.gameserver
 Если вы не планируете запускать Закрытый Сервер Diablo II, оставьте все как есть. Но если вы запускаете помимо D2CS еще и D2GS, вам стоит «включить» эту строке и подставить в нее IP адрес вашего D2GS cервера, что здесь мы обсуждать, опять-таки, не будем.
 Пиршло время последней настройки перед тем, как мы наконец-то сможем запустить D2CS. Перейдите кbnetdaddr. Это строка содержит в себе IP адрес по которому запускается PvPGN. D2CS пытается соединиться с PvPGN и установить с ним связь. Так что если кто-то соединяется с помощью Diablo II, PvPGN направит его к D2CS daemon. Обычно, это тот же адрес и порт, что располагается в servaddrs файла bnetd.conf. Пока настройте его таким образом:
 · bnetdaddr = 0.0.0.0:6112
 Указывает D2CS соединяться с любым IP адресом на вашей системе, который проходит по TCP протоколу по 6112 порту. Обычно это и есть PvPGN, если вы настраивали его по вышепреведенным инструкциям.
 И наконец, последнее изменение, которое надо внести в файл d2cs.conf – это строка loglevels, расположившаяся в секции "Message Logs". Перейдите к ней и измените loglevels на:
 · loglevels = fatal,error,warn,info,trace,debug
 Тем самым вы указываете D2CS записывать все возможные ошибки и прослеживать информацию, для того, чтобы мы могли видеть кто соединяется с D2CS.
 Сохраняйте изменения и закрывайте текстовый редактор. Остальные настройки в d2cs.conf оставьте в покое. D2CS должен запускать файл без каких-либо иных изменений.
10. Теперь, когда, по крайне мере, часть D2CS сконфигурирована, есть еще один файл, который нужен изменить перед тем, как перейти к настройке D2DBS. Список «миров» нужно настроить таким образом, чтобы D2CS знал по какому IP адресу находится «мир» D2CS. Отредактируйте файл realm.list, также расположенный в субдиректории etc.
· Для начала, убедитесь что мир D2CS не закомментирован (перед нм не стоит знак #). Ниже приведен пример ПРАВИЛЬНОЙ настройки.
 # ------realm name------
 --------------description--------------
 ----ip:port---- #
#
#
"D2CS"
 "Divine Knights"
 26.135.61.243:6113
#
#
Еще ниже следует пример НЕПРАВИЛЬНОЙ настройки. Обратите внимание на # перед строкой D2CS.
# ------realm name------
 --------------description--------------
 ----ip:port---- #
#
#
#"D2CS"
 "Divine Knights"
 26.135.61.243:6113
#
#
 В разделе ----ip:port----, укажите точный IP адрес компьютера, на котором запускается D2CS, как указано ниже.
 · X.X.X.X:6113
 Замените X.X.X.X на IP адрес компьютера, на котором запускается D2CS. Он должен быть четко определенным, 0.0.0.0:6113 не подойдет.
 Сохраните изменения и закройте тесктовый редактор. Теперь, после настройки D2CS… нет, не спешите расслабляться – впереди настройка D2DBS. Вы увидите, что настройка D2DBS очень похожа на оную для D2CS, с некоторыми отличиями, вроде порта, который использует D2DBS.
Для настройки D2DBS, отредактируйте файл d2dbs.conf, расположенный в субдиректории etc. Перейдите вниз к разделу "Server Major Settings" sи измените servaddrs на:
 · servaddrs = 0.0.0.0:6114
 Указывает D2DBS прослушивать порт 6114 с использованием протокола TCP, на предмет всех IP адресов.
Перейдите к gameservlist. Это строка должна быть по умолчанию быть комментарием (ей должен предшествовать знак #, указывающий D2DBS игнорировать такую строку). Если вы не планируете использовать D2GS, который в данной секции обсуждаться не будет, оставьте все как есть.
 · #gameservlist = your.gameserver
 Если вы не планируете запускать Закрытый Сервер Diablo II, оставьте все как есть. Но если вы запускаете помимо D2DBS еще и D2GS, вам стоит «включить» эту строке и подставить в нее IP адрес вашего D2GS cервера, что здесь мы обсуждать, опять-таки, не будем.
 И наконец, последнее изменение, которое надо внести в файл d2bs.conf – это строка loglevels, расположившаяся в секции "Message Logs". Перейдите к ней и измените loglevels на:
 · loglevels = fatal,error,warn,info,trace,debug
 Тем самым вы указываете D2CS записывать все возможные ошибки и прослеживать информацию, для того, чтобы мы могли видеть кто соединяется с D2CS.
 Сохраните изменения и закройте редактор. Остальные настройки в d2dbs.conf оставьте в покое. D2DBS должен запускаться без каких-либо дополнительных изменений.
 Теперь убедитесь, что порт 6113 открыт «всему миру» для TCP протокола. Открытие 6114 порта необязательно. D2CS и D2DBS используют эти порты для соединения с PvPGN и друг-другом во время инициализации. Просто убедитесь в том, что порт 6112 открыт как для TCP, так и для UDP протоколов и что порт 6113 открыт для TCP протокола.
 Итак, вы готовы к запуску D2CS и D2DBS. Убедитесь, что у вас запущен PvPGN, иначе D2CS просто откажется работать.
 Для запуска D2CS & D2DBS, нажмите alt+tab и выберитеCygwin. Вы должны вернуться в строку Cygwin, в которой напишите следующее:
· /usr/local/sbin/d2cs
 и
· /usr/local/sbin/d2dbs
 Если вы установили D2CS oили D2DBS в другую директорию, измените соответственно путь.
 Чтобы убедиться в том, что все прошло нормально:
· Нажмите Ctrl+Alt+Del
· Выберите Task Manager (Мастре обслуживания)
· Вы должны увидеть, что D2CS и D2DBS работают
 Проверьте логи bnetd, d2cs и d2dbs. Каждый лог должен содержать что-то вроде этого:
Выдержка из лога bnetd, обратите внимание на выделенные жирным шрифтом строки
 Aug 26 23:26:04 main: PvPGN version 1.1.5 process 27534
 Aug 26 23:26:04 main: logging event levels: fatal,error,warn,info,trace,debug
 Aug 26 23:26:04 server_set_name: set servername to "localhost"
 Aug 26 23:26:05 accountlist_create: loaded 0 user accounts
 Aug 26 23:26:05 ladderlist_create: created 10 local ladders
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "STAR":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "STAR":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "SEXP":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "SEXP":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "W2BN":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "W2BN":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "W2BN":3
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "W2BN":3
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "WAR3":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "WAR3":1
 Aug 26 23:26:05 realm_create: created realm "D2CS"
 Aug 26 23:26:05 tracker_set_servers: tracking packets will be sent to pvpgnservers.ath.cx
 Aug 26 23:26:05 server_process: listening for bnet connections on 0.0.0.0:6112 TCP
 Aug 26 23:26:05 server_process: listening for w3route connections on 26.135.61.243:6200 TCP
 Aug 26 23:26:05 sd_accept: [7] accepted connection from 26.135.61.243:1213 on 26.135.61.243:6112
 Aug 26 23:26:05 conn_create: [7][5] sessionkey=0x56f1c44e sessionnum=0x00000000
 Aug 26 23:26:05 handle_init_packet: [7] client initiated d2cs_bnetd connection
 Aug 26 23:26:05 handle_d2cs_init: sent init packet to d2cs (sessionnum=0)
 Aug 26 23:26:05 on_d2cs_authreply: d2cs 26.135.61.243 authed
 Aug 26 23:26:05 realm_active: realm D2CS actived
Выдержка из лога d2cs
 Aug 17 22:53:59 main: D2CS Version 0.1.0b4 Built Aug 17 2002
 Aug 17 22:53:59 d2gs_create: added game server 192.168.0.1 (id: 1) to list
 Aug 17 22:53:59 d2ladder_readladder: ladder file loaded successfully (28 types 35 maxtype)
 Aug 17 22:53:59 d2ladder_init: ladder data initialized
 Aug 17 22:53:59 main: server initialized
 Aug 17 22:53:59 server_process: network initialized
 Aug 17 22:53:59 s2s_create: try make s2s connection to 0.0.0.0:6112
 Aug 17 22:53:59 s2s_create: connection to s2s server 0.0.0.0:6112 is in progress
 Aug 17 22:53:59 conn_create: created session=1 socket=1 (1 current connections)
 Aug 17 22:53:59 server_listen: listen on 0.0.0.0:6113
 Aug 17 22:53:59 server_process: entering server loop
 Aug 17 22:53:59 conn_handle_connecting: connected to 0.0.0.0:6112
 Aug 17 22:53:59 handle_bnetd_init: sent init class packet to bnetd
 Aug 17 22:53:59 on_bnetd_authreq: received bnetd sessionnum 1
 Aug 17 22:53:59 on_bnetd_authreply: authed by bnetd
Выдержка из лога d2dbs
 Aug 27 12:48:20 main: D2DBS Version 0.1.0b4 Built Aug 17 2002
 Aug 27 12:48:20 main: server initialized
 Aug 27 12:48:20 dbs_server_main: establishing the listener...
 Aug 27 12:48:20 d2ladder_checksum_check: ladder file check pass (checksum=0xDB72C052)
 Aug 27 12:48:21 d2ladder_saveladder: backup ladder file
 Aug 27 12:48:21 d2ladder_saveladder: ladder file saved (0 changes)
 Aug 27 12:48:21 dbs_server_main: waiting for connections...
Готово, наслаждайтесь!!!
 Как настроить D2CS и D2DBS на сестемах на основе *nix?
11. Перед тем как делать что-либо, убедитесь, что PvPGN нормально работает сам по себе. D2CS попытается соединиться и создать канал между ним и PvPGN. Также, она попытается соединиться с D2BS в поисках информации о ладдере. Вот почему важно иметь работающий PvPGN перед тем, как пытаться загрузить D2CS или D2DBS.
D2CS и D2DBS должны быть установлены и запущены вместе, чтобы вы смогли захостить Откытый Сервер Diablo II. Что такое Открытый Сервер? Узнаете здесь.
Для начала, рассмотрим настройку D2CS. D2CS – это сервер в основе которого лежат «миры». Перейдите в директорию, куда вы установили PvPGN, а там субдиректорию etc и отредактируйте файл d2cs.conf.
 · В файле d2cs.conf найдите секцию "Server Major Settings". Там прейдите к строке realmname, она должна выглядеть вот так:
 · realmname = D2CS
 Эти имя «мира», которое D2CS будет пытаться использовать при соединении пользователя. Пока оставьте все так, как оно есть.
 Теперича идите к строке servaddrs и сделайте так, чтобы она выглядела следующим образом:
· servaddrs = 0.0.0.0:6113
 Указывает D2CS слушать порт 6113 с использованием TCP протокола на предмет всех IP адресов.
 Перейдите к gameservlist. Это строка должна быть по умолчанию быть комментарием (ей должен предшествовать знак #, указывающий D2CS игнорировать такую строку). Если вы не планируете использовать D2GS, который в данной секции обсуждаться не будет, оставьте все как есть.
 · #gameservlist = your.gameserver
 Если вы не планируете запускать Закрытый Сервер Diablo II, оставьте все как есть. Но если вы запускаете помимо D2CS еще и D2GS, вам стоит «включить» эту строке и подставить в нее IP адрес вашего D2GS cервера, что здесь мы обсуждать, опять-таки, не будем.
 Пиршло время последней настройки перед тем, как мы наконец-то сможем запустить D2CS. Перейдите кbnetdaddr. Это строка содержит в себе IP адрес по которому запускается PvPGN. D2CS пытается соединиться с PvPGN и установить с ним связь. Так что если кто-то соединяется с помощью Diablo II, PvPGN направит его к D2CS daemon. Обычно, это тот же адрес и порт, что располагается в servaddrs файла bnetd.conf. Пока настройте его таким образом:
 · bnetdaddr = 0.0.0.0:6112
 Указывает D2CS соединяться с любым IP адресом на вашей системе, который проходит по TCP протоколу по 6112 порту. Обычно это и есть PvPGN, если вы настраивали его по вышепреведенным инструкциям.
 И наконец, последнее изменение, которое надо внести в файл d2cs.conf – это строка loglevels, расположившаяся в секции "Message Logs". Перейдите к ней и измените loglevels на:
 · loglevels = fatal,error,warn,info,trace,debug
 Тем самым вы указываете D2CS записывать все возможные ошибки и прослеживать информацию, для того, чтобы мы могли видеть кто соединяется с D2CS.
 Сохраняйте изменения и закрывайте текстовый редактор. Остальные настройки в d2cs.conf оставьте в покое. D2CS должен запускать файл без каких-либо иных изменений.
12. Теперь, когда, по крайне мере, часть D2CS сконфигурирована, есть еще один файл, который нужен изменить перед тем, как перейти к настройке D2DBS. Список «миров» нужно настроить таким образом, чтобы D2CS знал по какому IP адресу находится «мир» D2CS. Отредактируйте файл realm.list, также расположенный в субдиректории etc.
· Для начала, убедитесь что мир D2CS не закомментирован (перед нм не стоит знак #). Ниже приведен пример ПРАВИЛЬНОЙ настройки.
 # ------realm name------
 --------------description--------------
 ----ip:port---- #
#
#
"D2CS"
 "Divine Knights"
 26.135.61.243:6113
#
#
Еще ниже следует пример НЕПРАВИЛЬНОЙ настройки. Обратите внимание на # перед строкой D2CS.
# ------realm name------
 --------------description--------------
 ----ip:port---- #
#
#
#"D2CS"
 "Divine Knights"
 26.135.61.243:6113
#
#
 В разделе ----ip:port----, укажите точный IP адрес компьютера, на котором запускается D2CS, как указано ниже.
 · X.X.X.X:6113
 Замените X.X.X.X на IP адрес компьютера, на котором запускается D2CS. Он должен быть четко определенным, 0.0.0.0:6113 не подойдет.
 Сохраните изменения и закройте тесктовый редактор. Теперь, после настройки D2CS… нет, не спешите расслабляться – впереди настройка D2DBS. Вы увидите, что настройка D2DBS очень похожа на оную для D2CS, с некоторыми отличиями, вроде порта, который использует D2DBS.
Для настройки D2DBS, отредактируйте файл d2dbs.conf, расположенный в субдиректории etc. Перейдите вниз к разделу "Server Major Settings" sи измените servaddrs на:
 · servaddrs = 0.0.0.0:6114
 Указывает D2DBS прослушивать порт 6114 с использованием протокола TCP, на предмет всех IP адресов.
Перейдите к gameservlist. Это строка должна быть по умолчанию быть комментарием (ей должен предшествовать знак #, указывающий D2DBS игнорировать такую строку). Если вы не планируете использовать D2GS, который в данной секции обсуждаться не будет, оставьте все как есть.
 · #gameservlist = your.gameserver
 Если вы не планируете запускать Закрытый Сервер Diablo II, оставьте все как есть. Но если вы запускаете помимо D2DBS еще и D2GS, вам стоит «включить» эту строке и подставить в нее IP адрес вашего D2GS cервера, что здесь мы обсуждать, опять-таки, не будем.
 И наконец, последнее изменение, которое надо внести в файл d2bs.conf – это строка loglevels, расположившаяся в секции "Message Logs". Перейдите к ней и измените loglevels на:
 · loglevels = fatal,error,warn,info,trace,debug
 Тем самым вы указываете D2CS записывать все возможные ошибки и прослеживать информацию, для того, чтобы мы могли видеть кто соединяется с D2CS.
 Сохраните изменения и закройте редактор. Остальные настройки в d2dbs.conf оставьте в покое. D2DBS должен запускаться без каких-либо дополнительных изменений.
 Теперь убедитесь, что порт 6113 открыт «всему миру» для TCP протокола. Открытие 6114 порта необязательно. D2CS и D2DBS используют эти порты для соединения с PvPGN и друг-другом во время инициализации. Просто убедитесь в том, что порт 6112 открыт как для TCP, так и для UDP протоколов и что порт 6113 открыт для TCP протокола.
 Итак, вы готовы к запуску D2CS и D2DBS. Убедитесь, что у вас запущен PvPGN, иначе D2CS просто откажется работать.
Для систем на основе *nix наберите:
· /usr/local/sbin/d2cs
 и
· /usr/local/sbin/d2dbs
 Если вы установили D2CS oили D2DBS в другую директорию, измените соответственно путь.
 Проверьте логи bnetd, d2cs и d2dbs. Каждый лог должен содержать что-то вроде этого:
Выдержка из лога
 Aug 26 23:26:04 main: PvPGN version 1.1.5 process 27534
 Aug 26 23:26:04 main: logging event levels: fatal,error,warn,info,trace,debug
 Aug 26 23:26:04 server_set_name: set servername to "localhost"
 Aug 26 23:26:05 accountlist_create: loaded 0 user accounts
 Aug 26 23:26:05 ladderlist_create: created 10 local ladders
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "STAR":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "STAR":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "SEXP":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "SEXP":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "W2BN":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "W2BN":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "W2BN":3
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "W2BN":3
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to current ladder "WAR3":1
 Aug 26 23:26:05 ladderlist_create: added 0 accounts to active ladder "WAR3":1
 Aug 26 23:26:05 realm_create: created realm "D2CS"
 Aug 26 23:26:05 tracker_set_servers: tracking packets will be sent to pvpgnservers.ath.cx
 Aug 26 23:26:05 server_process: listening for bnet connections on 0.0.0.0:6112 TCP
 Aug 26 23:26:05 server_process: listening for w3route connections on 26.135.61.243:6200 TCP
 Aug 26 23:26:05 sd_accept: [7] accepted connection from 26.135.61.243:1213 on 26.135.61.243:6112
 Aug 26 23:26:05 conn_create: [7][5] sessionkey=0x56f1c44e sessionnum=0x00000000
 Aug 26 23:26:05 handle_init_packet: [7] client initiated d2cs_bnetd connection
 Aug 26 23:26:05 handle_d2cs_init: sent init packet to d2cs (sessionnum=0)
 Aug 26 23:26:05 on_d2cs_authreply: d2cs 26.135.61.243 authed
 Aug 26 23:26:05 realm_active: realm D2CS actived
Выдежка из лога d2cs
 Aug 17 22:53:59 main: D2CS Version 0.1.0b4 Built Aug 17 2002
 Aug 17 22:53:59 d2gs_create: added game server 192.168.0.1 (id: 1) to list
 Aug 17 22:53:59 d2ladder_readladder: ladder file loaded successfully (28 types 35 maxtype)
 Aug 17 22:53:59 d2ladder_init: ladder data initialized
 Aug 17 22:53:59 main: server initialized
 Aug 17 22:53:59 server_process: network initialized
 Aug 17 22:53:59 s2s_create: try make s2s connection to 0.0.0.0:6112
 Aug 17 22:53:59 s2s_create: connection to s2s server 0.0.0.0:6112 is in progress
 Aug 17 22:53:59 conn_create: created session=1 socket=1 (1 current connections)
 Aug 17 22:53:59 server_listen: listen on 0.0.0.0:6113
 Aug 17 22:53:59 server_process: entering server loop
 Aug 17 22:53:59 conn_handle_connecting: connected to 0.0.0.0:6112
 Aug 17 22:53:59 handle_bnetd_init: sent init class packet to bnetd
 Aug 17 22:53:59 on_bnetd_authreq: received bnetd sessionnum 1
 Aug 17 22:53:59 on_bnetd_authreply: authed by bnetd
Выдержка из лога d2dbs
 Aug 27 12:48:20 main: D2DBS Version 0.1.0b4 Built Aug 17 2002
 Aug 27 12:48:20 main: server initialized
 Aug 27 12:48:20 dbs_server_main: establishing the listener...
 Aug 27 12:48:20 d2ladder_checksum_check: ladder file check pass (checksum=0xDB72C052)
 Aug 27 12:48:21 d2ladder_saveladder: backup ladder file
 Aug 27 12:48:21 d2ladder_saveladder: ladder file saved (0 changes)
 Aug 27 12:48:21 dbs_server_main: waiting for connections...
Готово, наслаждайтесь!!!
 Как установить D2GS, для чего он служит и где его достать?
D2GS – это хост для Закрытого Сервера Diablo II. D2GS работает с D2CS и D2DBS. В то время, как D2CS и D2DBS служат для хоста Открытого сервера, D2GS – это игровой сервер, служащий для инициализации закрытой игры. Вы, возможно, заметили, что если вы содиняетесь к PvPGN посредством Diablo II, используя кнопку Battle.net и при этом запущены D2CS и D2DBS, все проходит нормально, кроме того, что когда вы создаете игру, вам говорится, что вы первый в очереди и игра не начинается. Вот где в дело входит D2.
D2GS в данный момент – бинарик для Windows и версии под *nix не существует. Если вы хотите запустить D2GS из-под *nix, используйте wine. В *nix, убедитесь, что ваша машина достаточна быстра (что-нибудь вроде Р4 с хорошим количеством памяти), иначе D2GS будет запускаться вечность и еще немного.
Однако, учтите, что если вы запускаете D2GS под Windows или *nix, он будет жрать огромное количество памяти. D2GS сам по себе занимает 45mb оперативной памяти, а если к нему еще и пользователи присоединятся, памяти он потреблять будет еще больше. Лучше всего запускать D2GS на машине с большим количеством памяти.
D2GS можно скачать из следующих мест (последняя версяя – beta 7):
· Index of /pub/linux/games/bnetd
· Index of /
 1. Убедитесь, что D2CS и D2DBS не запущены. Если запущены, закройте обе программы. Для настройки D2GS сначала отредактируйте файл d2cs.conf. Перейдите к строке gameservlist и удалите # перед ней. После этого, приведите строку к следующему виду:
 · gameservlist = X.X.X.X
 Замените X.X.X.X на IP адрес компьютера, на котором будет запускаться D2GS. Адрес должен быть определен, 0.0.0.0. не подойдет.
 Сохранитесь и закройте текстовый редактор.
2. Теперь отредактируйте файл d2dbs.conf. В приниципе, процесс изменений не особо отличается от того, что вы делали раньше с этим файлом. Перейдите к строке gameservlist и удалите # перед ней. После этого измените ее следующим образом:
 · gameservlist = X.X.X.X
 Замените X.X.X.X на IP адрес компьютера на котором будет запущен D2GS. Адрес должен быть определен, 0.0.0.0. не подойдет.
 Сохранитесь и закройте текстовый редактор.
3. Наконец, вы можете перейти к настройке D2GS:
 · Скачайте d2gs-109d-beta7.zip
 · Разархивируйте все его содержимое в директорию, в которой вы планируете постоянно хранить D2GS, например в директорию PvPGN, в директорию D2GS.
 4. Вставьте диск(и) Diablo II в CD-ROM и скопируйте все .DLL и .MPQ файлы Diablo II в директорию, где находится D2GS. Если вы планируете поддерживать expansion, Diablo II LOD, скопируйте и с его диска .DLL & .MPQ файлы.
5. Если у вас уже установлен Diablo II или Diablo II LOD на компьютере, на котором будет запускаться D2GS, копировать DLL и MPQ файлы с компакт дисков необязательно. Просто переместите программу D2GS и соответствующие файлы в директорию Diablo II, оттуда и запускайте программу.i
6. Отредактируйте d2gs.reg текстовым редактором, вроде Wordpad или Notepad. Чтобы отредактировать d2gs.reg без импортирования в реестр, просто проделайте следующие операции:
 · «Подсветите» файл d2gs.reg кликнув один раз по нему мышью.
· Кликните по нему правой клавишей мыши.
· Выберите пункт редактировать.
· Файл должен открыться с помощью Wordpad или Notepad
· Сделайте описанные ниже изменения
 7. Прейдите к строке D2CSIP. Измените ее следующим образом:line.
· "D2CSIP"="X.X.X.X"
 Смените X.X.X.X на IP адрес компьютера на котором запускается D2CS, то есть на тот, который вы указали в троке servaddrs, в файле d2cs.conf.
 8. Теперь, перейдите к строке D2DBSIP. Проведите следующие изменения:
 · "D2DBSIP"="X.X.X.X"
 Смените X.X.X.X на IP адрес компьютера на котором запускается D2CS, то есть на тот, который вы указали в троке servaddrs, в файле d2dbs.conf.
 Все остальные настройки оставьте как есть. Сохраните и закройте тесктовый редактор.
9. Теперь информацию о настройках из d2gs.reg необходимо импортировать в реестр. Запустите файл d2gs.reg. Когда вас спросят, хотите ли вы импортировать эту информацию в реестр Windows, нажмите Yes.
10. В XP, 2000, Me и NT, вы, возможно, захотите установить D2GS как сервис. Для этого просто запустите:
 · install.bat
 Потом, чтобы запустить сервис D2GS, наберите net start d2gs в командной строке или из строки “запуск”. Для пользователей Windows 9x следует просто запустить d2gs.exe.
11. Запускайте D2CS, D2DBS и, наконец, D2GS. Для запуска D2GS, просто запустите файл d2gs.exe. Если в Windows ME и выше вы установили D2GS в качестве сервиса, просто наберите net start d2gs в командной строке или из строки “запуск”.
12. Последнее, что вам стоит проверить, так это статус D2GS с посмощью Telnet. Чтобы сделать это, убедитесь что D2СS, D2DBS и D2GS работают. Затем:
· Идите в командную строку DOS.
 · Наберите telnet X.X.X.X 8888
ЗАменив X.X.X.X на IP адрес компьютера, на котором работает D2GS. По умолчанию D2GS будет автоматически прослушивать 8888 порт. Вам, возможно, придется временно его открыть на компьютере, на котором запускается D2GS, если вы находитесь за фаерволлом.
 · Когда потребуется, используйте пароль abc123.
 · Находясь в строке telnet после соединения, вам, возможно, захочется сменить пароль на какой-то иной. Для этого наберите passwd в командной строке telnet, после чего смените пароль на что-нибудь, что вы не забудете.
 · Чтобы проверить статус D2GS, просто наберите status. Это покажет вам различную информацию, вроде того, соединен ли D2GS с D2CS и D2DBS, eи т.д.
 · Чтобы узнать больше информации, наберите help в строке telnet.
Готово, наслаждайтесь!!!
 Как настроить tracking и для чего он служит?
На самом деле все просто. Tracking шлет информацию вашего сервера, вроде его места расположения, IP адрес и т.д. которую вы определяете в файле bnetd.conf, на определенный хост. По умолчанию эта информация будет отсылаться на PvPGN Server List (Список серверов PvPGN), который является собранием разных игровых серверов (по преимущество на основе PvPGN, вроде вашего) со всего мира. Ваш сервер будет добавлен в список, для того, чтобы о нем знали другие игроки. Это функция опционально и может быть отключена, хотя по умолчанию она включена.
Чтобы установить tracking сервера, отредактируйте файл bnetd.conf и перейдите к секции "Tracking Server Info":
1. Установка track определяет как часто PvPGN будет слать информацию о вашем сервере в PvPGN Server List.
 · track = 60
 Шлет информацию каждые 60 секунд.
 · track = 0
 Отменяет tracking.
 2. Строка trackaddrs определяет куда вы будете слать информацию о вашем сервере. По умолчанию она установлена на pvpgnservers.ath.cx, однако вы можете сменить ее по своему усмотрению (можно вводить даже несколько серверов). Если вы решили использовать не pvpgnservers.ath.cx для отображения tracking информации, а какой-то другой источник, вы должны запустить там bntrackd и включить прием входящих UDP пакетов по порту 6114. В большинстве случаев, просто оставьте строку в покое.
 · trackaddrs = "pvpgnservers.ath.cx"
 Шлет пакеты на pvpgnservers.ath.cx.
 · trackaddrs = "pvpgnservers.ath.cx, localhost"
 Шлет информацию на pvpgnservers.ath.cx и на localhost (вам самим). На localhost надо будет запустить Bntrackd.
 · trackaddrs = "X.X.X.X:6114"
 Шлет Tracking информацию по тому IP адресу, который определите вы по порту 6114 (смените Х.Х.Х.Х. на ваш IP адрес в интернете или на тот IP адрес, куда вы хотите слать tracking информацию). Также это может быть использовано для для отыслки tracking информации на свой компьютер, если вы не хотите использовать localhost. Необходимо будет запустить Bntrackd на X.X.X.X.
 3. Следующая строка говорит сама за себя. Это информация, которую будет отсылать ваш сервер. Смените соответствующие строки, чтобы они соответствовалиь вашему месту располажению и т.д.
 · location = "Digi_Gyrl's World"
 Место расположение вашего сервера.
 · description = "Digi_Gyrl's Game Server"
 Название вашего PvPGN сервера.
 · url = "None"
 Если у вас есть адрес в интернет, поместите его сюда.
 · contact_name = "Digi_Gyrl"
 Ваш контакт для сервера PvPGN.
 · contact_email = "noway@yahoo.com"
 Email адрес контакта.
 Как настроить bntrackd и для чего но служит?
Программа Bntrackd получает статистическую информацию от серверов на основе bnetd, анализируцет информацию и помещает ее в текстовый файл. Оттуда скрипт process.pl, расположенный в сорсу в директории scripts, конвертирует текст в html страницу. Подобная странице находится по адресу pvpgnservers.ath.cx. Таким образом получается страница статистики как для одного, так и для нескольких серверов со всего мира. Также там отображается полезная информация, вроде времени обновления сервера, количество подключенных пользователей, теущие игры и т.д.
Если хотите слать tracking информацию с bnetd самому себе, вам понадобится использовать bnetd и открыть UDP порт 6114.
1. Для систем на основе *nix перейдите туда, куда вы установили PvPGN и перейдите в директорию sbin. Запустите:
 · bntrackd -o /usr/local/bin/bntrackd.txt -l /var/log/bnetd/bntrackd.log
 -o (output) заставит bntrackd записывать входящую информацию в /usr/local/bin/bntrackd.txt, а -l ( log) записывает все ошибки в /var/log/bnetd/bntrackd.log
2. Убедитесь в том, что trackaddrs в файле bnetd.conf установлен либо на localhost, либо на ваш IP адес в интернете, либо на ваш внутренний IP адрес. После этого, скопируйте process.pl из директории source/scripts в желаемую директорию, сделайте его запускаемым и убедитесь, что путь shebang (например: #!/usr/bin/perl) является правильным для той системы, на которой вы работаете. Отредактируйте файл process.pl, изменив 3 строки:
· $infile = "/usr/local/bin/bntrackd.txt";
 Путь, по которому bntrackd будет записывать информацию.
 · $outfile = "/var/www/html/bnetdlist.html";
 Путь и имя, по которому вы хотите создать html файл. Если хотите сделать его доступным для других, его надо поместить в директорию, доступную из интернета.
 · $tmpfile = "/tmp/bntrackd.tmp";
 Путь, по которому process.pl будет помещать свой временный файл при запуске .
 · наберите perl process.pl
Если все прошло нормально, вы должны увидеть страницу bnetdlist.html в /var/www/html. После этого настройте cron скрипт для запуска process.pl каждые несколько минут, либо можете изменить perl скрипт, чтобы он был доступен прямо из интернета и записывал свой информацию прямо на экран вместо html файла. Также, возможно, хорошей идеей может быть добавление шага №1 в ваш файл rc.local, так, чтобы bntrackd запускался автоматически при загрузке системы.
Общие вопросы
Что такое Открытый Сервер Diablo II и Закрытый Сервер Diablo II?
Ответ на этот вопрос довольно просто.
1. Открытый Сервер Diablo II значит, что ваш персонаж НЕ хранится в PvPGN, как на настоящем Battle.net. Когда вы играете на Battle.net, ваш игрок хранится на их сервере. В открытом виде игры Battle.net ваш персонаж хранится на вашем же компьютере. Такой сервер требует запуска D2CS и D2DBS в дополнение к PvPGN на стороне сервера. В этом есть несколько преимуществ и недостатков.
Преимущества:
· Игроки из сингла могут использоваться при игре на Battle.net.
· Можно делать резервные копии вашего персонажа, на случай, если файл вашего персонажа испортится или потеряется.
 Недостатки:
· Читерство превращается в легкую забаву для игрково.
· Во время игры могут незаметно использоваться трейнеры.
· У админа почти нет контроля над персонажами игроков.
· Игроки могут делать свое снаряжение чрезвычайно могужественным с помощью взломов.
 Чтобы играть на Открытом сервере Battle.net, просто:
· Запустите Diablo II или Diablo II LOD.
· Выберите Gateway машины, к которой вы хотите соединиться.
· Нажмите клавишу Other Multiplayer.
· Нажмите клавишу Open Battle.net.
 2. Закрытый Сервер Diablo II значит, что ваш персонаж ХРАНИТСЯ в PvPGN, как в настоящем Battle.net. Требуются запущенные D2CS, D2DBS и D2GS, в дополнение к PvPGN со стороны сервера. В этом есть также определенный преимущества и недостатки::
Преимущества:
· Хаки и тренеры гораздо проще обнаружить.
· Игрока гораздо сложнее использовать читы.
· У админа больше власти над персонажами игроков.
 Недостатки:
· Нельзя использовать персонажи из сингла.
· Игроки не могут делать резервные копии персонажей.
· Медленный сервер и/или медленный канал могут привести к лагам или дольшемы времени ожидания.
· Если админ захочет удалить персонаж его игрока, тот ничего не сможет делать.
· Если вы нечасто заходите на сервер, ва персонаж и учетная запись могут быть удалены.
 Для игры на Закрытом Сервере Battle.net, просто:
· Запустите Diablo II или Diablo II LOD.
· Выберите Gateway машины, к которой вы хотите соединиться.
· Нажмите кнопку Battle.net.
 3. Вы можете одновременно запустить и закрытый и открытый сервер. Игрок в такой ситуации сможет выбирать на кокм сервере ему играть.
Какие порты мне надо открыть для запуска PvPGN сервера?
Чтобы соединяться с вашим сервером PvPGN, вам нужно будет открыть хотя бы один, если не несколько портов. Те порты, который вам надо будет открыть, зависит от того, какие игры вы хотите поддерживать/к каким хотите присоединиться. Порт 6112 должен быть открыт и для TCP и для UDP протоколов. Здесь никаких исключению быть не может. 6112 должен всегда быть открыт для соединения с PvPGN.
Ниже приведена табличка какие порты следует открыть с серверной стороны:
Порт
 Протокол
 Имя программы
 Описание программы
23
 TCP
 bnetd
 Поддержка Telnet соединения
4000
 TCP
 d2gs
 Закрытый Игровой Сервер Diablo II
6112
 TCP/UDP
 bnetd
 Базовый чат Battle.net и инициализация игры
6113
 TCP
 d2cs
 Сервер Diablo II Realm («миров»)
6114
 TCP
 d2dbs
 Сервер базы данных Diablo II
6114
 UDP
 bntrackd
 Tracking Daemon для составления статистики
6200
 TCP
 bnetd
 Warcraft III Роутер
6667
 TCP
 bnetd
 Поддержка IRC соединения
 Ниже приведен список игр и портов, которые должен открыть клиент для игры:
Название игры
 Номер(а) портов
Warcraft II Battle.net Edition (BNE)
 6112
Warcraft III Reign of Chaos
 6112, 6200
Starcraft
 6112
Starcraft Brood War
 6112
Diablo
 6112
Diablo II Open Battle.net
 6112
Diablo II Closed Battle.net
 6112, 4000
 Где находятся мои файлы логов?
Файлы логов находятся там, куда вы установили PvPGN.
1. Для windows путь по умолчанию таков:
 · c:\program files\the player -vs- player gaming network\pvpgn\var
 2. А это путь по умолчанию для систем на основе *nix:
 · /usr/local/var
 Как мне раздавать административные привелегии и что это вообще значит?
В кратце, это значит, что пользователь с административными привелегиями может банить других игроков или удалаять их учетные записи, исользуя консоль Battle.net. Пользователи с административными привилегиями отображаются отдельно в зависимости от того, в какую игру вы играете. Например, в Старкрафте около их имени будет маленькое лого Blizzard. В Diablo II цвет их тексто обычно синий, при том что у всех остальных он белый и игрок скажет "Blizzard Rep", если на него поместить курсор.
Следующую опреацию нужно проделать только с первым пользователем-админом. Как только этому пользователю выделены административные привелегии, он может раздавать другим игрокам такие же привилегии по своему желанию через консоль Battle.net. Если у вас уже есть пользователь с административными привилегиями и хотите дать еще какому-нибудь игроку те же привилегии, переходите прямо к шагу №3. Если вы установили PvPGN без поддержки MySQL, это значит, что вы используете flat файлы для хранения учетных записей игроков и статистики. Учетный записи игроков обычно называются никами самих пользователей. База данных PvPGN расположена не здесь.
1. Если вы установили PvPGN без поддержки MySQL:
 · Закройте PvPGN.
 · Найдите имя игрока, которому вы хотите дать административные привелегии по пути, в который вы установили PvPGN, в субдиректории var/users.
 · Отредактируйте файл текстовым редактором и добавьте следующие строчки в начала файла учетной записи игрока. Убедитесь, что строчки стоят на первом месте в файле учетной записи, иначе ничего не будет работать.
· "BNET\\auth\\admin"="true"
 · "BNET\\auth\\operator"="true"
· Сохраните и закройте тесктовый редактор.
 · Запускайте PvPGN.
 2. Если вы установили PvPGN с поддержкой MySQL:
 · Закройте PvPGN.
 · Отредактируйте базу данных PVPGN.
 · Перейдите к таблице BNET в базе данных.
 · Найдите учетную запись игрока, которомы вы хотите выдать административные привелегии.
 · Смените колонку auth с false на true.
 · Сохраните изменения.
 · Запускайте PvPGN.
 3. Теперь, когда у вас есть по крайней мере один пользователь с админстративными привелегиями, залогиньтесь в качестве этого пользователя и наберите нижеследующее, чтобы дать административные привелегии другому пользователю. Давайте привелегии только тем пользователям, которым вы доверяете. По умолчанию НИ ОДНОМУ пользователю не выданы административные привелегии:
 · /makeadmin jack
 В этом примере вы сделали jack админом.
или
· /set jack BNET\\auth\\admin true
 Старая команда с тем же результатом.
 Что означают все эти сокращения в этом F.A.Q?
Вот некоторые сокращение, используемые в этом F.A.Q:
 1. Сокращения Warcraft III:
· AT = Arranged Team (Собранная команда)
 · PG = Play Game (Играть)
 · XP = Experience Points (not to be confused with Windows XP) (Очки опыта, не Windows XP)
 · FFA = Free For All (Каждый сам за себя)
 · AMM = Anonymous Match Making (Анонимное создание матча)
 2. Обычные сокращения в IRC Chat:
· AFK = Away From Keyboard (Ушел от клавиатуры)
 · BRB = Be Right Back (Ушел, ща вернусь)
 · BTW = By The Way (Кстати)
 · FYI = For Your Information (Чтобы вы знали)
 · GTG = Got To Go (Надо идти)
 · IC = I See (exactly as it sounds) (Я вижу)
 · J\K = Just Kidding (Просто шучу)
 · LOL = Laughing Out Loud (Хохочу во все горло)
 · PPL = People (Лююди!)
 · THX = Thanks (Спасибо)
 3. Разные компьютерные сокращения:
· DMZ = De-Militarized Zone (Демилитаризированная зона)
 · NAT = Network Address Translation (Трансляция сетвевого адреса)
 · TCP = Transport Control Protocol (Протокол контроля транспортировки)
 · UDP = User Datagram Protocol (often misnamed as Unreliable Datagram Protocol) (Протоколо пользовательской информации)
 · BITS = BNETD Interserver Transport System (Межсерверная система транспортировки ВNETD)
 Какая разница между Standart (Стандартной) и Elite (элитной) версиями PvPGN?
Разделение на "standard" и "elite" версии существует только для Windows. Для *nix надо просто соответствующим образом настроить PvPGN перед компилированием.
1. Standard версия:
 · Учетные записи пользователей хранятся в flat файлах в директории var\users.
· Поддержка MySQL в этой версии недоступна.
· Не поддерживаются профили, статистика, раздача рангов.
· PvPGN может медленно запускаться/перезапускаться, если существует много учетных записей пользователей.
 2. Elite версия:
 · Учетные записи пользователей хранятся в базе данных MySQL.
· Поддерживаются профили, статистика, раздача рангов.
· PvPGN может быть запущен как сервис, а не приложение.
· Запуск/перезапуск с большим количество пользователей происходит быстрее.
· Легче вносить изменения в учетные записи.
· Если что-либо случается с базой данных все учетный записи теряются, если они не были предварительно резервно скопированы.
 Могу я использовать Microsoft SQL с PvPGN вместо MySQL?
Нет, PvPGN не будет работать с программами баз данных Microsoft SQL, которые используют другие опознователи вызовов. Программы Майкрософт не располагают открытым сорсом и обладают жесткими ограничениями на изменеия. У MySQL же сорсы открыты и, надеюсь, таковыми и останутся, благодаря чему многие программы с открытыми сорсами используют MySQL. Скачайте и установите MySQL...она бесплатна и прекрасно работает как под Windows, так и на системах на основе *nix.
 Как мне создать собственные записи в файле versioncheck (проверки версии)?
Эта информация предоставлена пользователем, пожелавшим остаться неизвестным. Эта информация была изменена по сравнению с оригиналом. Оригинал увидеть можно здесь. Запомните, PvPGN НЕ ПОДДЕРЖИВАЕТ ВАРЕЗ и эта информация представлена только для легальных целей.
Так как у PvPGN есть собственный встроенный дебаггер, внесение изменений в versioncheck не составляет особого труда. Веред тем, как что-либо делать, сделайте резервную копии вашего оригинального файла versioncheck перед тем, как его изменять. Если у вас вознкнут проблемы, вы сможете просто заменить переделанный versioncheck оригинальной версией файла.
1. Отредактируйте файл bnetd.conf и смените настройку loglevel на:
 · loglevels = info,fatal
 Сохраните, закройте редактор, запустите PvPGN.
2. Соединитесь с PvPGN игрой, для которой вы хотите написать versioncheck, например, Warcraft III.
3. Проверьте лог bnetd и ищите две записи, которые начинаются на:
 · versioncheck_validate
 и
· CLIENT_AUTHREQ
 Выдержка из лога bnetd:
 Aug 01 11:57:49 handle_bnet_packet: [516] CLIENT_AUTHREQ_109 ticks=0x515ad5fb, verstr=1.0.1.1 exeinfo="war3.exe 07/10/02 18:59:10 713495" versionid=0x00000001 gameversion=0x01000101 checksum=0x062ef7dc
 Aug 01 11:57:49 versioncheck_validate: got a matching entry: WAR3
4. Отредактируйте файл versioncheck т перейдите к самому низу файла. Там вашему взору должны предстать несколько записей versioncheck, вроде приведенных ниже. Создайте копию одной из записей. Это и будет запись, в которую вы будете вносить изменения. С форматом все нормально, не беспокойтесь.
Эта запись versioncheck для Warcraft III. Если хотите создать запись для, например, Старкрафта, просто скопируйте уже существующую запись Старкрафта и изменяйте ее.
 · # Warcraft III Retail 1.01
 "A=3845581634 B=880823580 C=1363937103 4 A=A-S B=B-C C=C-A A=A-B" \
 IX86ver1.mpq \
 IX86 \
 WAR3 \
 "war3.exe 06/28/02 18:41:18 713495" \
 0x00000001 \
 1.0.1.0 \
 0x62c2e1a2 \
 WAR3
 5. Пришло время изменять sudo template. Идите в файл логов bnetd и используйте информацию из строк versioncheck_validate и CLIENT_AUTHREQ которые описаны в шаге 3. Чтобы упростить процесс, мы разбили его на фазы для каждой строки.
 · # Warcraft III Retail 1.01b
 Смените на описание записи по своему выбору. В данном примере мы соединяемся Warcraft III, версия 1.01b.
 · "A=3845581634 B=880823580 C=1363937103 4 A=A-S B=B-C C=C-A A=A-B" \
 Это оставьте в покое. Работать будет независимо от изменений версии.
 · IX86ver1.mpq \
 Это оставьте в покое. Работать будет независимо от изменений версии.
 · IX86 \
 Это оставьте в покое. Работать будет независимо от изменений версии.
 · WAR3 \
 Смените на versioncheck_validate в логе bnetd. В нашем логе было versioncheck_validate: got a matching entry: WAR3, это мы и поместили в эту запись.
 · "war3.exe 07/10/02 18:59:10 713495" \
 Смените на exeinfo из CLIENT_AUTHREQ в логе bnetd. В нашем было exeinfo="war3.exe 07/10/02 18:59:10 713495", это мы и поместили в эту запись.
 · 0x00000001 \
 Смените на versionid из CLIENT_AUTHREQ в логе bnetd. В нашем логе было versionid=0x00000001, это мы и поместили в эту запись.
 · 1.0.1.1 \
 Смените на verstr из CLIENT_AUTHREQ в логе bnetd. В нашем логе было verstr=1.0.1.1, это мы и поместили в эту запись.
 · 0x062ef7dc \
 Смените на checksum из CLIENT_AUTHREQ в логе bnetd. В нашем логе было checksum=0x062ef7dc, это мы и поместили в эту запись.
 · WAR3
 Это оставьте в покое. Работать будет независимо от изменений версии.
Сохраните и закройте редактор. Смените loglevels в состояние, в котором он был до наших манипцляций и перезагрузите PvPGN.
 6. Вот как должна выглядеть запись после шага 5:
 · # Warcraft III Retail v1.01b
 "A=3845581634 B=880823580 C=1363937103 4 A=A-S B=B-C C=C-A A=A-B" \
 IX86ver1.mpq \
 IX86 \
 WAR3 \
 "war3.exe 07/10/02 18:59:10 713495" \
 0x00000001 \
 1.0.1.1 \
 0x062ef7dc \
 WAR3
 7. Для каждой игры вы можете создавать столько записей, сколько заблагорассудится. Например, запись для Warcraft III Retail версии 1.01, 1.01b, и т.д.
 Наслаждайтесь!!!
 Как мне соединиться к PvPGN с Warcraft III?
Warcraft III несколько отличается от предыдущих игр Blizzard, так как они добавили некоторые дополнительные проверки для того, чтобы люди не играли на неофициальных серверах. Поэтому Warcraft III треубется загрузчик.
1. Обновите Warcraft III до последней версии.
 2. Перейдите в директорию, куда установлен Warcraft III и переименуйте blizzard.ax на blizzards.ax
 3. Скачайте и разархивируйте Adaptive AX загрузчик в директорию, куда установлен Warcraft III.
 4. Создайте ярлык на Warcraft III.exe
 5. Нажмите правой клавишей мыши на ярлык и выберите Properties (Свойства)
 6. Добавьте -pvpgn в Target (объект). Теперь Target должен выглядеть примерно так:
 · Target: "c:\games\warcraft III\Warcraft III.exe" -pvpgn
7. Скачайте и разархивируйте BNet Gateway Editor. Добавьте игровой сервер, с которым вы хотите соединяться. Для списка PvPGN cерверов обратитесь на страницу PvPGN Server List.
 8. Для игры на официальных серверах просто запускайте оригинальный exe Warcraft III.
Проблемы и их разрешение.
Когда я заглядываю в свой файл логов после запуска PvPGN, он пишет мне "main: failed to initialize network (exiting) (ошибка в обнаружении сети (закрываюсь))".
Убедитесь в том, что отредактировали файл bnetd.conf правильно. Есть две возможные причины вашей проблемы:
1. servaddrs в bnetd.conf кстановлен неверно, убедитесь, что servaddrs выглядит так:
 · servaddrs = "0.0.0.0:6112"
 Указывает PvPGN прослушивать все IP адреса по 6112 порту.
 Либо, если вы хотите, чтобы PvPGN прослушивал только определенные IP aдреса, приведите servaddrs к такому виду:
 · servaddrs = "X.X.X.X:6112"
 Замените X.X.X.X своим IP aдерсом.
 Если вы находитесь за рутером, смените X.X.X.X на свой внутренний IP адрес.
 2. w3routeaddr в bnetd.conf установлен неправильно, приведите w3routeaddr к такому виду:
 · w3routeaddr = "X.X.X.X:6200"
Замените X.X.X.X своим IP адресом в интернете.
 Если вы находитесь за рутером, смените X.X.X.X на свой внутренний IP адрес.
Приер из файла bnetd.conf:
 #############################################################################
 #
# Server network info
 #
#-----------------------------------------------------------------------------------------------------
 #
# Set this option to true to allow TCP to detect and close stale
 #
# connections.
 #
use_keepalive = false
#
 #
# This is a comma delimited list of hostnames that the server should
 #
# listen on. It might be useful to make an internal-only server on a
 #
# gateway machine for example. If the list is not set or if it has a
 #
# entry with no host component, the server will bind to that port on all
 #
# interfaces.
 #
servaddrs = "26.135.61.243:6112"
#
 #
# Don't change these unless you really need to! You will need to run a proxy
 #
# or modify the clients. Also note that these will not change when simply
 #
# sending a HUP signal to the server; they are only read on startup.
 #
#
 #
# This is the port the server send the UDP test packets to by default.
 #
# Setting it to zero makes the server use the same port as the TCP connection
 #
# comes from. Newer clients can override this setting on a per connection
 #
# basis.
 #
#udptest_port = 6112
#
 #
# added by zap-zero:
 #
# W3 Play Game router address. Just put your server address in here.
 #
# It's needed to tell clients where to connect to init anonymous games.
 #
# Change it, or clients will get "Error handling the request"!
 #
w3routeaddr = "26.135.61.243:6200"
#
 #
#############################################################################
 #
Я проверил свой файл bnetd log и там ничего нет, хотя PvPGN запущен.
Убедитесь в том, что отредактировали файл bnetd.conf правильно. Если в файле логов ничего нет, ваш loglevels не установлена на отображение какой-либо информации.
1. Измените loglevels в bnetd.conf таким образом:
 · loglevels = fatal,error,warn,info,trace,debug
Перезагрузите PvPGN и снова загляните в файл логов.
 Приер из файла bnetd.conf:
 #############################################################################
 #
# Message logs
 #
#-----------------------------------------------------------------------------------------------------
 #
# Multiple log levels can be defined by connecting them with a comma (,)
 #
# Available loglevels are:
 #
# none
 #
# trace
 #
# debug
 #
# info
 #
# warn
 #
# error
 #
# fatal
 #
loglevels = fatal,error,warn,info,trace,debug
#
 #
#############################################################################
 #
Когда я подключаюсь Diablo II, я получаю сообщение: "No realms are available right now. Please try again later (Ни один мир пока не доступен. Пожалуйста, вопробуйте позже)".
Обычно это вызвано тем, что IP адрес в файле realm.list установлен неправильно.
1. Отредактируйте файл realm.list и смените IP адрес мира D2CS на IP адрес компьютера, на котором запущена D2CS:
 · X.X.X.X:6113
 Замените X.X.X.X на IP адрес компьютера, на котором запущена D2CS. Он должен быть определенным, 0.0.0.0:6113 не пойдет.
 После этого перезагрузите PvPGN и проверьте свои файлы логов. Если все прошло удачно, они должны выглядеть таким образом:
Пример из лога bnetd:
 Aug 22 19:22:00 realm_create: created realm "D2CS"
 Aug 22 19:22:00 server_process: listening for bnet connections on 26.135.61.243:6112 TCP
 Aug 22 19:22:00 server_process: listening for w3route connections on 26.135.61.243:6200 TCP
 Aug 22 19:22:01 sd_accept: [7] accepted connection from 26.135.61.243:1025 on 26.135.61.243:6112
 Aug 22 19:22:01 conn_create: [7][5] sessionkey=0x56eef14e sessionnum=0x00000000
 Aug 22 19:22:01 handle_init_packet: [7] client initiated d2cs_bnetd connection
 Aug 22 19:22:01 handle_d2cs_init: sent init packet to d2cs (sessionnum=0)
 Aug 22 19:22:01 on_d2cs_authreply: d2cs 26.135.61.243 authed
 Aug 22 19:22:01 realm_active: realm D2CS actived
 Пример из файла realm.list:
 #############################################################################
 #
# realm.list - List of Diablo II Realms
 #
#-----------------------------------------------------------------------------------------------------
 #
#
 #
# Realms are areas that hold closed characters and games. Users are given
 #
# this list of realms to choose from when creating a new character. Next
 #
# time the character is used, they will automatically join the same realm.
 #
#
 #
# The realm server runs on port 6113 by default. If you do not specify a
 #
# port number it will use this by default. You must enter an IP Address
 #
# There is no default
 #
#
 #
# ------realm name------ --------------description-------------- ----ip:port----
 #
#
 #
"D2CS" "Divine Knights" 26.135.61.243:6113
#
 #
#############################################################################
 #
В Red Hat Linux 7.x, когда я пытаюсь компилировать с поддержкой MySQL происходит ошибка.
Существую два возможных решения:
1. Попробуйте сконфигурировать PvPGN, используя свитч --with-libraries, после чего запустите make и осуществите установку:
 · ./configure --with-libraries="/usr/lib/mysql" --with-mysql
 2. Если вы установили MySQL через rpm файлы, убедитесь, что вы установили следующие rpm’ы:
 · MySQL, MySQL-Client, MySQL-Shared
Без установленного rpm’а MySQL-Shared вы будете получать сообщения об ошибках и PvPGN откажется компилироваться.
Когда я пытаюсь скомпилировать PvPGN, я получаю сообщение с ошибкой "/bin/sh: autoheader: command not found (команда не найдена)".
Возможно, у вас не установлен "autoheader". Убедитесь в том, что он есть у вас есть. Если нет, попробуйте скачать новую версию с rpmfind.net.
 У меня проблемы с соединением к моему серверу PvPGN.
Скорее всего, дело в неправильной настройке фаерволла или рутера:
1. Убедитесь, что хотя бы 6112 порт открыт для протоколов TCP и UDP как со стороны сервера, так и со стороны клиента, если вы находитесь за фаерволлом.
 2. Если вы находитесь за рутером, убедитесь, что он настрен на форвард определенных портов к вашему серверу, либо зарегистрируйте его в вашем роутере как DMZ. Учтите, что если вы зарегистрируете свой компьютер как DMZ в рутере, он будет полностью открыт для интернета, как будто рутера у вас и не существовало никогда В таком случае у вас не убдет никакой защиты от взломщиков и мы рекомендуем установить что-нибудь вроде фаерволла.
Хорошие ссылки по настройке рутера:
· Linksys Router Setup for Warcraft 3
· Battle.net Router/Firewall Configuration
3. Если вы соединяетесь с помощью Warcraft III, убедитесь, что вы используете бнарный (exe) загрузчик или загрузчик AX loader. Также убедитесь, что вы используете правильную версию загрузчика для той версии игры, которой вы пытаетесь соединиться. Приме – загрузчик для Warcraft III версии 1.01 не подойдет для Warcraft III версии 1.02.
 4. Если вы пытаетесь соединиться, используя тот же компьютер, на котором вы запускаете сервер, вы, скорее всего, будете получать сообщения об ошибках при соединении. На самом деле, это зависитот от вашей ОС. В Windows XP и, возможно, 2000, вы можете соединяться клиентом с сервером на одной и той же машине без проблем, однако вы не сможете создавать игры, только присоединяться к ним и PG/AT тоже не будут работать. Возможно, это не будет работать и на Windows 98 и ранее.
 5. Если ничего не помогает, загляните в файлы логов. В большинстве случаев что-то не так настроено в одном из файлов конфигурации. Если вы все еще не можете соединиться с сервером PvPGN, попробуйте зайти на IRC irc.pvpgn.org, #pvpgn канал. Там вам, возможно, смогут помочь.
 Я изменил файл баннера .pcx, и все равно в Warcraft III баннер не изменился.
Графический файл .pcx, находящийся в директории var/files появляется только в Starcraft и Starcraft Brood War. Он не будет появляться в Warcraft III, если находится в формате .pcx. Конвертируйте .pcx файл в онимированный файл .mng, только после этого он будет показываться в Warcraft III. Не забудьте внести соответствующие изменения в файле ad.list в директории /etc. Я не уверен в том, нужен ли вам будет .pcx файл, но не думаю, что вам необходимы оба, только файл .mng. Попробуйте использовать оба файла и посмотрите что получится.
В PHP статистике, я получаю сообщение "Warning: Invalid content of \{\} in /libs/build_page.php on line 17".
Обычно эта проблема происходит с версиями PHP 4.1.x. "\" следует добавить впереди и позади содержания. В новейших версиях PHP, вроде бы, таких проблем не возникает.
1. Отредактируйте файл build_page.php и измените 17 строку с:
 · $main = ereg_replace("%{content}%",$temp_content,$main);
 на
· $main = ereg_replace("%\{content\}%",$temp_content,$main);
В PHP статистике я получаю сообщение"Call to undefined function: mysql_connect() in /pvpgn-stats/mysql_handler.php line 7".
Ошибка происходит когда PHP не компилируется с поддержкой MySQL. Скомпилируйте PHP, используя свитч --with-mysql или уустановите файл php-mysql*.rpm если ваша система использует файлы rpm.
При запуске PvPGN 1.1.6x, я получаю сообщение "server_set_name: could not get hostname: No error".
Есть у нас один непроверенный способ исправления этой ошибки, предложенный Gybrush. Не знаю, работает ли это или нет, но попробовать стоит.
1. Отредактируйте файл bnetd.conf и перейдите к разделу "Server Network Info". Добавьте нижеследующее в w3routeaddr:
 · servername = "localhost"
 Смените запись servername на имя вашего вашего компьютера. Localhost – вполне хороший вариант, он же и используется в вышеприведенном примере.

Добавить комментарий