Показать сообщение отдельно
Непрочитано 07.08.2009, 18:05   #1
Аватар для PuShKinG

Автор темы (Топик Стартер) Подробный мануал по установке сервера MaNGOS

Процесс будет описан на примере сборок от команды ZG-TeaM.

Хочу сразу напомнить: MaNGOS Запрещает создание публичных серверов.

Что нам понадобится:
1 – Мозг
2 – Желание «поднять» сервер
3 – Сам сервер
4 - Net Framework 3.5 (полная версия ~200 мб, у кого есть версия 3.0 - скачайте обновление до 3.5 ~2мб)
5 – Navicat или SQLyog
6 – Клиент WoWotLK 3.2.2a

Если всё это имеется, то приступим.

Скачали сервер, распаковали в любую директорию, вместе с сервером в папке «Экстрактор», имеется файл ad.exe, он нам понадобится для «вытягивания» карт из клиента.
Для того чтобы извлечь карты нужно скопировать файл ad.exe в папку с клиентом. ОБРАТИТЕ ВНИМАНИИ НА ТО, ЧТО СЕРВЕР И КЛИЕНТ ДОЛЖНЫ БЫТЬ ДЛЯ ОДИНАКОВЫХ ВЕРСИЙ. Запустите ad.exe, после окончания процесса у нас в папке с клиентом появятся две папки dbc и maps, это и есть наши карты, после создаём папку с любым именем (к примеру «Maps») и переносим туда папки dbc и maps. Карты готовы.

Правим конфиги.

Основными файлами конфигурация являются файл mangosd.conf & realmd.conf

Mangosd.conf – открываем любым текстовым редактором, начнём со строки:
Код:
 DataDir = "."
Вместо "." вписываем адрес папки «Maps», типа:
Код:
 DataDir = " C:\WoW Server\Maps"
(на винде этот пункт можно пропустить если DBC и Maps находится в директории с ядром)

Привязка IP (Необязательно). Если Вы хотите просто дома поиграть то по дефолту стоит 127.0.0.1, если же через LAN или Internet то: если у Вас динамический IP, то можете пропустить этот шаг, ну а если же статический то ищем строку:
Код:
 BindIP = "0.0.0.0"
И вместо 0.0.0.0 ставим свой IP
На этом базовая настройка сервера завершена.

Коннект к базам данных, с помощью Navicat.

Запускаем Run.exe из папки denwer, после запускаем Navicat, вверху слева видим надпись "Connection" жмём, открывается окно, и заполняем, как указано ниже:
Код:
Connection Name: WoW
Hostname/IP address: localhost
Port: 3306
User name: root
Password: mangos

Нажимаем "OK"
Теперь видим в столбике слева, появилась табличка с названием "WoW"
Нажимаем на неё и видим базы данных сервера.
Если Вы решили сменить IP адрес сервера, то это делается в базе realmd, таблица realmlist, столбец address.

Создание аккаунта.

Есть несколько способов создать аккаунт:

1. Через WWW Оболочку.
2. С помощью запроса
Код:
 INSERT INTO `account(`username`,`sha_pass_hash`) VALUES('ИМЯ_АККАУНТА', SHA1(CONCAT(UPPER('ИМЯ_АККАУНТА'),':',UPPER('ПАРОЛЬ')))"
Чтобы включить дополнения нужно:
открыть базу данных realmd и найти таблицу account, далее выбираете нужную учетную запись и в поле expansion указываете одно из следующих данных:
Код:
0 - Активирует классический World of Warcraft
1 - Активирует дополнение Burning Crusade
2 - Активируете дополнение Wrath of the Lich King

Для автоматизации этого процесса, например при большом количестве учетных записей, используйте SQL запрос:
Код:
 UPDATE `realmd`.`account` SET `expansion`='2' WHERE `id`<'2';
Настройка «Аукцион Бота»

Для настройки аукцион бота необходимо, создать аккаунт, на этом аккаунте перса (любого, но желательно с именем Bot). После чего лезим в Navicat открываем базу characters - characters, после находим в таблице своего перса и ЗАПОМИНАЕМ ЕГО GUID & ID(account).
Для примера возьмём GUID - 1, ID - 1. После лезим в папку с сервером, там открываем файл mangosd.conf, в этом файле находим строку "AuctionHouseBot.EnableSeller = 0"
И настраиваем по этому примеру:

Код:
AuctionHouseBot.EnableSeller = 0 - Вкл.1, Выкл - 0
AuctionHouseBot.EnableBuyer = 0
AuctionHouseBot.Account = 0 - ID который Вы запомнили (1)
AuctionHouseBot.GUID = 0 - GUID который Вы запомнили (1)
AuctionHouseBot.VendorItems = 0 
AuctionHouseBot.LootItems = 1
AuctionHouseBot.OtherItems = 0
AuctionHouseBot.No_Bind = 1
AuctionHouseBot.Bind_When_Picked_Up = 0
AuctionHouseBot.Bind_When_Equipped = 1
AuctionHouseBot.Bind_When_Use = 1
AuctionHouseBot.Bind_Quest_Item = 0
AuctionHouseBot.ItemsPerCycle = 200
AuctionHouseBot.UseBuyPriceForSeller = 0
AuctionHouseBot.UseBuyPriceForBuyer = 0
Запуск сервера.
Если Вы прошли все предыдущие шаги, то и пора наконец-то поиграть
Для запуска сервера открываем папку denwer, запускаем run.exe, после заходим в папку MaNGOS и запускаем, сначала - realmd.exe, после mangosd.exe, когда сервер запустится вы услышите «beep»
Теперь заходим в папку с клиентом, отрываем папку Data – ruRU, и с помощью любого текстового редактора открываем файл – realmlist.wtf, и правим IP адрес на свой.
После чистим кэш и наслаждаемся игрой



Продолжение...↓↓↓↓↓↓↓

Типа F.A.Q.

Во избежание проблемы подобной этой:
Код:
2009-08-08 00:26:05 Using configuration file mangosd.conf.
2009-08-08 00:26:05 World Database: 127.0.0.1;3306;root;mangos;mangos
2009-08-08 00:26:06 ERROR:Could not connect to MySQL database at 127.0.0.1: Can't connect to MySQL server on '127.0.0.1' (10061)

2009-08-08 00:26:06 ERROR:Cannot connect to world database 127.0.0.1;3306;mangos;mangos;mangos
Удостоверитесь, что запущен Run.exe


Во избежание проблемы подобной этой:
Код:
2009-08-08 00:17:57 WORLD: VMap support included. LineOfSight:0, getHeight:0
2009-08-08 00:17:57 WORLD: VMap data directory is: ./vmaps
2009-08-08 00:17:57 WORLD: VMap config keys are: vmap.enableLOS, vmap.enableHeight, vmap.ignoreMapIds, vmap.ignoreSpellIds
2009-08-08 00:17:57 ERROR:Check existing of map file './maps/0004331.map': not exist!
2009-08-08 00:17:57 ERROR:Correct *.map files not found in path './maps' or *.vmap/*vmdir files in './vmaps'. Please place *.map/*.vmap/*.vmdir files in appropriate directories or correct the DataDir value in the mangosd.conf file.
Удостоверитесь, что Вы извлекли ВСЕ карты, чтобы сверить размер и количество карт, вот их свойства:
Папка dbc:

Папка maps:

Если же не сходится, значит "криво" извлекли.


Во избежание проблемы подобной этой:



"Вижу сервер но немогу зайти "

Удостоверитесь, в том что ВСЕ IP адреса проставленные в ходе установки сервера идентичны, а если быть точнее,то это файл mangosd.conf, строка BindIP=0.0.0.0, база - realmd - realmlist - address и конечно же realmlist самого клиента.


Установка веб обвязки.

Вот решил написать гайдик по установке или смене Web оболочки.
Для этого нет необходимости знать PHP, достаточно иметь мозг.
Итак, в сборках команды ZG-TeaM уже добавлена веб нашаобвязка. Но если по каким-то причинам Вы решили её сменить, то у портала Zone-Game есть неплохой ассортимент веб обвязок.
При написании гайда буду опираться на установку обвязки WEB rospora.
Итак, скачиваем "WEB rospora"
Пароль: www.zone-game.info. После чего лезим в папку с сервером, там имеется папка home, а в ней по дефолту есть папка 127.0.0.1, ну а в ней папка www, ТАМ и хранится Ваш сайт. Eсли нужно заменить старый сайт, то удаляем всё содержимое папки www, и вставляем туда скаченный нами сайт. Должно выследить примерно так:



После чего Вы можете вписать в браузере 127.0.0.1 и попадётся на Ваш сайтег. Если будет необходимость править конфиги, то они находятся в файле configuration.php.

С уважением, PuShKinG.



Для администратирования сервера, советую MDBT
*MaNGOS Data Base Terminal*.


У терминала простейший интерфейс, терминал также поддерживает аргументы командной строки, а также имеется Система логирования ошибок. Я им пользуюсь для:
Бекапа в один файл
Бекап по расписанию (через планировщик заданий)
Установка sql-обновлений для ядра (с сортировкой по базам)
Удаление чаров ниже n левела
и т.п.

СКАЧАТЬ

Терминал уже настроен под сервер by kiberk.

С уважением, PuShKinG



Установка сервера на динамический IP адрес.

Для чего это нужно: для того если Вы решили с другом поиграть через интернет, а у Вас IP адрес каждый раз после перезагрузки меняется и чтобы Вам не менять его каждый раз используйем No-IP.

Для это нам потребуется:

Зарегистрироваться ЗДЕСЬ.
СКАЧАТЬ саму программу.
После Устанавливаем, Запускаем
Вписываем Логин и Пароль:

После чего видим:

И видим:


После чего нужно везде выписать свой DNS адрес вместо своего xxx.xxx.xxx.xxx, а точнее это делается в базе realmd, таблица realmlist, столбец address, файл mangosd.conf - строка BindIP = xxx.xxx.xxx.xxx, файл realmlist.wtf, а также необходимо переименовать папку 127.0.0.1 в папке home, но свой DNS, хочу напомнить что DNS - это буквенный адрес.

Не забываем чистить кэш.

С уважением, PuShKinG



VMAPS, ЧТО ЭТО И ЗАЧЕМ ?
Что это: vmaps это карты, которые также извлекаются из клиента, сервер может прожить и без них, но в скором времени Вы заметите что много NPC бегают и стреляют через стены, по моему это не так уж удобно...

Для того чтобы решить эту проблему необходимо извлечь эти самые VMAPS'ы.

Для этого нам потребуется сам Экстрактор - СКАЧАТЬ
После этого, распакуйте архив, он содержит 7 файлов.
Для извлечения нам понадобится лишь ОДИН - make vmaps.bat
Но для того чтобы начать извлекать необходимо скопировать ВСЁ содержимое архива в папку с клиентом, и запустить make vmaps.bat

Процесс извлечения может занять время от 10 минут до 6 часов, в зависимости от железа вашей машины.

После извлечения у Вас появятся две папки - buildings и vmaps, папку buildings можете удалить. Для того чтобы сверить количество иразмер карт вот свойства папки vmaps:



Если всё сходится, то копируйте эту папку в папку с вашими картами.

Но это ещё не всё.

Для того чтобы карты начали свою работу необходимо их включить, это делается в файле mangosd.conf строки:
Код:
vmap.enableLOS = 0
vmap.enableHeight = 0
изменить НА:
Код:
vmap.enableLOS = 1
vmap.enableHeight = 1
Возможно, сервер будет грузиться немного дольше, но результат должен оправдать потери.


Информация была предоставлена из двух ресурсов, портал Zone-Game и мой мозг

Мануал буду по возможности дописывать, читайте, пишите замечания.
Буду ждать, с уважением PuShKinG.

Последний раз редактировалось Perfecto; 10.05.2010 в 14:47. Причина: Немного изменил
PuShKinG вне форума Отправить сообщение для PuShKinG с помощью ICQ Ответить с цитированием
Сказали спасибо: