Сейчас 28.11.2024, 22:25



  • Страница 1 из 1
  • 1
Как ставить сервер под 2.4.2 + Как скомпилировать+Патчи
AndrqhaДата: Вторник, 26.07.2011, 08:54 | Сообщение # 1
Генерал-майор
Группа: Модераторы
Сообщений: 288
Награды: 2
Репутация: 1
Статус:
Здраствуйте, вы хотите поставить сервер? Надеюсь тут всё будет понятно.
Итак, что у нас есть? Думаю, что ничего, для работы сервера нужна программа "MySQL", проще говоря мускул, стянуть можно отсюда:
MySQL <http://dev.mysql.com/downloads/mysql/5.1.html>
Мотаем немного ниже, видем список: Windows, Windows x64, Linux и т.д. Это мускулы под разные операционные системы. Когда выбрали нужный мускул, надо нажать "Pick a mirror" далее "No thanks, just take me to the downloads!", жмем напротив Russian Federation на http или ftp, как нравится и качаем.
При установке мускула тупо тыкаем "Next", пока MySQL не спросит пароль и логин, если мне не изменяет память, логин стандартно стоит "root", а пароль надо ввести самому, пароль надо запомнить или записать, дальше он всегда будет нужен.
После установки мускула вам будет нужно средство для управления им, пускай это будет "Navicat"
Скачать его можно тут <https://opensvn.csie.org/IGMA/trunk/Progs/Navicat_7.0.8+crack.rar> , установить не сложно, после установки кидаем файл "patch.exr" в папку с установленным навикатом, запускаем, тыкаем "crack" , готово.

Теперь можно устанавливать сам сервер

Качаем тут. <https://opensvn.csie.org/IGMA/trunk/Progs/vmap_assembler.rar>

Разарихивировываем, кидаем vmap_assembler и splitconfig в папку с установленным вовом ( World of Warcraft ) и запускаем, для начала выбераем пункт 2- Extract DBC
Когда процесс завершится вы увидите надпись:
"Extract dbc complete
Work complete. No errors.
Press any key to exit"

Жмем любую кнопку, создаем где угодно папку, с любым именем, там будет лежать сервер, в созданную папку кидаем папку Dbc, которая появилась после работы vmap_assembler. Дальше опять запускаем vmap_assembler, выбераем пунк 1- Extract map, ждем, когда работа завершилась забираем папку "maps" и кидаем в папку сервера ( там, куда вы кидали Dbc ). Дальше опять запускаем vmap_assembler, выбераем пункт 3,4 или 5, я обычно выбераю 5. Этот процесс самый долгий, когда он завершится забираем папку vmaps и кидаем в папку с сервом ( там, где у вас dbc и maps ).

Теперь нам нужно ядро

Достать ядро можно двумя способами:
1. Скомпилировать самому, это значит собрать из кода, готовый к работе сервер, это лучше для вас тем, что вы сами можете выбрать какие модификации ( улучшения ) добавить в ваш сервер, а хуже это тем, что вам придется найти и скачать программу Microsoft Visual Studio 2003, 2005 или 2008, весит она несолько гигов.
Про компиляцию напишу ниже.
2. Выбрать уже скомпилированное ядро ( собранное ), лежат такие ядра тут <http://mangos.ru/forumdisplay.php?f=40>, в темах называющихся "Compiled by....", похоже самое распространенное это <http://mangos.ru/showthread.php?t=13074>

Итак, когда вы скачали ядро, разархивируйте его содержимое в папку с сервером, там где лежат Dbc, maps, vmaps, теперь вам нужна база, я знаю 3 хорошие:
UDB <http://udbforums.org/>
YTDB <http://ytdb.kanet.ru/>
PSDB <http://projectsilvermoon.net/>

Я пользуюсь UDB, поэтому мануал будет на её примере. Для нормального обновления базы и много другого лучше поставить программу TortoiseSVN
Скачать можно тут <http://tortoisesvn.net/downloads>

Когда скачали программу, создаем папку, в любом месте и даем ей любое имя. Жмем на неё правой кнопкой мыши, выбераем "SVN Checkout" и вводим туда адресс :
Код:
https://unifieddb.svn.sourceforge.net/svnroot/unifieddb/trunk/
P.S. Если вы хотите воспользоваться другой базой, то найдите на её форуме SVN адресс и используйте его в SVN Checkout.
Ждем пока скачается вся база. Когда засветилась кнопка "Ok" база скачалась. Заходим в папку, идем в Full_DB, там архив с базой и папка "ForCleanInstallOnly".

Теперь открываем навикат

Жмем "Connection", Connection Name трогать не обязательно;
в Host Name/IP Adress Ввдоим localhost или 127.0.0.1;
Port менять не обязательно, стандартно 3306;
В User Name вводим тот User Name, который у вас был при установке мускула;
В Password вводим пароль от мускула ( тот который нужно было запомнить или записать при установке мускула ).
Жмем Ok, слева появился прямоугольник с красной линией, это созданное соединение, если вы всё ввели правильно, то оно откроется. Жмем по нему правой кнопкой мыши и выбераем "New Database". Пишем ей любое имя. Так делаем 4 базы. Для начала советую назвать их mangos, characters, realmd и scriptdev2, что бы не терятся, объяснять буду на примере этих названий.

Когда создали базы, открываем для начала Characters, жмем на эту базу правой кнопкой мыши и выбераем "Execute Batch File", появляется окно, жмем в нем на кнопку с тремя точками, выбераем папку куда скачивали базу через TortoiseSVN, а в той папке ForCleanInstallOnly и в ней файл Characters.sql, жмем старт, или ок. Ждем когда это дело зальется. Далее идем в realmd, жмем на эту базу правой кнопкой мыши и выбераем "Execute Batch File", появляется окно, жмем в нем на кнопку с тремя точками, выбераем папку куда скачивали базу через TortoiseSVN, а в той папке ForCleanInstallOnly и в ней файл realmd.sql, жмем ок, или старт, ну в общем всё так же как и с characters.
Дальше открываем базу ещё раз. Заходим в accounts, там будет 4 аккаунта: administrator, gamemaster, moderator, player, вроде так, точно не помню. Для верности их лучше удалить.
Далее залазим в realmlist, там в поле name вписываем название вашего сервера, в realmlist ваш ип, потом игрокам в своем realmlist'e надо будет прописать тот ип, который вы только что вписали, что бы зайти к вам на сервер.
Дальше идем в базу scriptdev2, качаем это <https://opensvn.csie.org/IGMA/trunk/Progs/scriptdev2_structure.sql> и заливаем в базу ( Execute Batch File ).
Теперь лезем в папку с базой ( то, что качали прогой TortoiseSVN ), в ней в папку Full_DB, извлекаем содержимое архива, заливать это надо в базу "mangos" , но это очень долго, и если вы не хотите долго ждать, то можно открыть консоль мускула:
Пуск->Все программы->MuSQL->MySQL Command Line Client, вводим пароль от мускула, дальше /u mangos ( Если вы назвали базу по- другому, то пишем свое название ).
Дальше берем файл, который извлекали из архива, я для удобства переименовываю его в "1" и кадаю на диск C или
D, возвращаемся в MySQL Command Line Client, вводим там \.c:\update.sql c:\1.sql и жмем "enter" ждем пока процесс завершится ( Если кадали не на диск C, то вместо c:\1.sql пишем букву диска, на который кидали файл и его имя вместо 1, если вы назвали по- другому ).
Когда всё завершилось нужно обновить базу, это самый запутанный процесс.
Допустим вы скачали базу под ревизию 5949, это написанно в названии базы ( папка, в которую вы качали программой TortoiseSVN/Full_DB ): UDB_0.10.2_Core_5949_SD2_414.
Часто бывает, что ваше ядро более новой ревизии, чем база, допустим у вас ядро версии 6000, а база под 5949.
Заходим в навикат, выбераем базу mangos, жмем правой кнопкой мыши, выбераем Execute Batch File, там лезем в папку с сервером, в нем в папку Sql и там в папку updates, там много файлов, все начинаются с номера, имеют такой вид число_mangos_таблица, которую файл обновляет, так вот, вы помните, что ядро у вас ревизии 6000, а база под ревизию 5949, вам нужно заливать все файлы, номер которых больше 5949, бывает ещё число_characters_хххх, это значит, что файл надо заливать в базу characters, бывает Число_realmd_ххх, это значит, что файл надо заливать в базу realmd.
Когда залили все файлы, то база готова к использованию. Но ещё осталась нетронутой база scriptdev2, файлы для неё можно найти в архивах базы, например в UDB , если скачать её прогой TortoiseSVN по ссылке

Код:
https://unifieddb.svn.sourceforge.net/svnroot/unifieddb/trunk/
Файлы для Scritptdev2 называются EAI_xxx.

Когда ваша база готова настраиваем ядро:
Идем в папку с сервером ( там, где dbc, maps, vmaps ), открываем файл realmd.conf блокнотом, для этого файла лучше оставить блокнот программой по умолчанию.
Там ищем строку

Код:
LoginDatabaseInfo = "127.0.0.1;3306;ххх;ххх;ххх"
Начало обязательно должно быть LoginDatabaseInfo = "127.0.0.1;3306;
Меняем последние 3 значения:
Код:
LoginDatabaseInfo = "127.0.0.1;3306;логин для мускула;пароль для мускула;имя базы realmd"
Сохраняем, закрываем.
Открываем scriptdev2.conf
в нем ищем

Код:
ScriptDev2DatabaseInfo = "127.0.0.1;3306;xxx;xxx;xxx"
и меняем

Код:
ScriptDev2DatabaseInfo = "127.0.0.1;3306;логин для мускула;пароль для мускула;имя базы scriptdev2"
Дальше открываем mangos.conf
В этом файле все настройки вашего сервера, сначала ищем

Код:
# DataDir
# Data directory setting.
# Important: DataDir needs to be quoted, as it is a string which may contain space characters.
# Example: "@prefix@/share/mangos"
Ставим так:
Код:
# Example: "./"
Дальше ищем

Код:
LoginDatabaseInfo = "127.0.0.1;3306;xxx;xxx;xxx"
WorldDatabaseInfo = "127.0.0.1;3306;xxx;xxx;xxx"
CharacterDatabaseInfo = "127.0.0.1;3306;xxx;xxx;xxx"
Ставим так:
Код:
LoginDatabaseInfo = "127.0.0.1;3306;логин для мускула;пароль для мускула;имя базы realmd"
WorldDatabaseInfo = "127.0.0.1;3306;логин для мускула;пароль для мускула;имя базы mangos""
CharacterDatabaseInfo = "127.0.0.1;3306;логин для мускула;пароль для мускула;имя базы characters""
Дальше ищем

Код:
PlayerLimit = 100 - максимальное кол- во игроков на вашем сервере
vmap.enableLOS = 0 - если поставить 1, то вы включите использование vmaps, но из- за этого сервер будет жрать больше ресурсов компьютера
Дальше ищем

Код:
Motd = "Welcome to the Massive Network что- то там Server."
Текст после Motd=" отображается в чате когда игрок входит на сервер.
Код:
MaxPrimaryTradeSkill = 2
это кол- во профессий, которые игрок может изучить

Код:
Event.Announce = 0
Если поставить на 1, то в чате будет писаться, о начале эвентов
Дальше ищем

Код:
AllowTwoSide.Accounts = 0
AllowTwoSide.Interaction.Chat = 0
AllowTwoSide.Interaction.Channel = 0
AllowTwoSide.Interaction.Group = 0
AllowTwoSide.Interaction.Guild = 0
AllowTwoSide.Interaction.Trade = 0
AllowTwoSide.Interaction.Mail = 0
AllowTwoSide.WhoList = 0
AllowTwoSide.AddFriend = 0
TalentsInspecting = 1
Код:
AllowTwoSide.Accounts = 0 - если поставить на 1, то на одном аккаунте можно будет создать чара орды и альянса
AllowTwoSide.Interaction.Chat = 0 -если поставить на 1, то орда и альянс будут понимать друг друга
AllowTwoSide.Interaction.Channel = 0 -если поставить на 1, то орда и альянс смогу переписываться в каналах
AllowTwoSide.Interaction.Group = 0 -если поставить на 1, то орда и альянс смогу давать друг другу пати
AllowTwoSide.Interaction.Guild = 0 -если поставить на 1, то орда и альянс смогут делать совместные гильдии
AllowTwoSide.Interaction.Trade = 0 -если поставить на 1, то орда и альянс смогут передавать друг другу предметы
AllowTwoSide.Interaction.Mail = 0 -если поставить на 1, то орда и альянс смогут писать друг другу письма
AllowTwoSide.WhoList = 0 если поставить на 1, то в списке игроков будет отображаться и альянс и орда
AllowTwoSide.AddFriend = 0 -если поставить на 1, то орда и альянс смогут добавлять друг друга в друзья
Дальше ищем

Код:
Rate.Health = 1
Код:
Rate.Health = 1 -рейт на кол- во хп у игроков
Rate.Mana = 1 -рейт на кол- во маны у игроков
Rate.Rage.Income = 1 -рейта на получаемую ярость
Rate.Rage.Loss = 1 -рейт на трату ярости
Rate.Drop.Items = 1 -рейт на дроп шмоток
Rate.Drop.Money = 1 -рейт на дроп денег
Rate.XP.Kill = 1 -рейт на хр за убийство мобов
Rate.XP.Quest = 1 -рейт на хр за выполнение квестов
Rate.XP.Explore = 1 -рейт на хр за открытие карты
Rate.Rest.InGame = 1 -рейт на скорость отдыха
Rate.Rest.Offline.InTavernOrCity = 1 -рейт на скорость отдыха в тавернах и городах
Rate.Damage.Fall = 1 -рейт на дамаг от падений
Rate.Honor = 1 -рейт на хонор
Rate.Reputation.Gain = 1 -рейт на репутацию
Это самые основные настройки, их намного больше, для более тонкой настройки сами внимательно посмотрите конф файл.

Если вы всё настроили правильно, то сервер запустится, для этого надо запустить realmd.exe и mangos.exe

Поздравляю, сервер готов.

Компиляция:

Что нужно для компиляции?
Цитата:
-Руки
-Micrisioft Visual Studio 2003/2005 ДОБАВИЛ ССЫЛКИ
выбирайте сами что качать
VISUAL STUDIO 2003 <http://thepiratebay.org/search/visual%20studio%202003/0/3/100,200,300,400,600>
VISUAL STUDIO 2005 <http://thepiratebay.org/search/visual%20studio%202005/0/3/100,200,300,400,600>
Microsoft Visual Studio 2008 <http://thepiratebay.org/search/visual%20studio%202008/0/99/0>
-Tortoise SVN, она же черепаха

Процесс:
Цитата:
Создаем папку, где угодно и называем как угодно.
Далее тыкаем на неё правой кнопкой мышки и выбираем "SVN Chekout..."
Появляется окошко, в строку URL of repository ссылку
https://mangos.svn.sourceforge.net/s.../mangos/trunk/ <https://mangos.svn.sourceforge.net/svnroot/mangos/trunk/> ССЫЛКА ОБНОВЛЕНА, ТЕПЕРЬ ПРАВИЛЬНАЯ
Жмем Accept Pernament чёт там
Ждем когда всё закачается.
Теперь когда всё скачалось залазим в папку на которую вы тыкали, в неё ещё всё закалось, там видем папку win.
Там находятся файлы mangosdVC71 и mangosdVC80, если у вас стоит Microsoft Visual studio 2003 то запускаем mangosdVC71, если у вас Microsoft VS 2005 запускаем mangosdVC80, если у вас VS2008, то запускаем mangosdVC90
Открывается окно компилятора.
Ждем пока всё отлагается
Смотрите вверх, видите там надпись Build?, жмите на неё, появляется меню, выбираем Batch Build.
Появляется окно, в нем строки и напротив галки. Ставим галки напротив каждой строки где есть слово Release|Win32, но не отмечаем scripts и тыкаем на Build.
ЖДЕМ
P.S. внизу вы увидите надпись типа
------ Build started: Project: xxx, Configuration: Release Win32 ------
это лог компиляции, когда увидите надпись наподобие такой
========== Build: xx succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
значит серв скомпилировался.
Теперь лезим в папку, которую нажимали SVN Chekout...
В ней залазим в папку bin, потом Win32_Release.
В Win32_Release забираем файлы : dbghelp.dll, libeay32.dll, libmySQL.dll, mangosd.exe, realmd.exe.
Достаем конфигурационные файлы
Лезем в папку src, в ней лезем сначала в Mangosd, там есть файл mangosd.conf.in, удаляем на конце .in, получаем mangosd.conf, потом лезем в папку realmd там файл realmd.conf.in, так же удаляем в конце .in
Далее лезем в папку с исходниками мангоса ( куда вы выкачивали через SVN Checkout ), там в папку src, дальше в bindings и создаем там папку ScriptDev2,
делаем на ей SVN Checkout и вставляем адресс

Код:
http://scriptdev2.svn.sourceforge.net/svnroot/scriptdev2/
Когда всё скачалось, заходим в папку ScriptDev2 и запускаем scriptVC71, если у вас VS2003, scriptVC80, если у вас VS2005 и scriptVC90, если у вас VS2008, дальше открывается программа, думаю понятно что делать дальше, когда это скомпилировалось, лезем в папку с исходниками мангоса, там в папку bin/Win32_Release и забираем файл MaNGOSScript.dll , и кидаем его к остальным файлам сервера, не забудьте прихватить ScriptDev2.conf из папки Scriptdev2
Готово
УСТАНОВКА ПАТЧЕЙ

Как устанавливать патчи:
Цитата:
Все патчи в основном лежат в разделе Ядро->Патчи.
Выбрали патч, обычно он в виде текста, что нам с этим делать?
Копируем текст, вставляем в блокнот, вверху жмем на Файл->Сохранить как...
В появившемся меню пишем имя файла и на конце приписываем .patch....
В нижней строке жмем на "Текстовые документы (*.txt ) и меняем на ВСЕ ФАЙЛЫ, жмем сохранить
появился патч ххх.patch
Жмем на него правой кнопкой мыши, выбераем Tortoise SVN->Apply Patch
Выбераем папку с исходниками, жмем ок
Появляются 2 окна
Нам нужно левое окно, в нем список файлов...
В левом окне жмем правой кнопкой мыши и выбераем Patch All...ждем завершения процесса, вырубаем это дело и компилируем сервер...
Это самая полная установка сервера, думаю самая подробная, всем спасибо за прочтение...
З.Ы. Что бы создать гм акк, заходим в базу Realmd=>Account, ищем там акк, который будет гмским и в поле gmlevel ставим от 1 до 3.
З.Ы. Часто ругаются, что экстрактор карт не подходит, поэтому теперь прикрепил к посту ad.exe, кидаем его в папку с игрой, создаем в ней папку maps и запускаем ad.exe
З.З.ы. Не пишите мне в аську со своими проблемами по серву, не собираюсь сидеть как в диспечерской и сутками всем разъяснять установку серва


 
  • Страница 1 из 1
  • 1
Поиск:

Unread posts Есть новые сообщения    No unread posts Нету новых сообщений    No unread posts [ Locked ] Закрытый форум