MaNGOS SetUP Manual [MaNGOS Исчерпывающее описание установки] - Документации - Мануалы - Настройка и установка серверов Mangos
Пятница, 12.03.2010, 10:38
Установка и настройка серверов
Главная Регистрация Вход
Приветствую Вас, Посетитель · RSS
Меню сайта

Основные разделы

Форма входа
Логин:
Пароль:
Категории раздела
Сервера Mangos [22]
Установка и настройка серверов wow
Документации [23]
Документации к Mangos
WWW [10]
Web интерфейс для Mangos
Статьи [2]
Интересные статьи
Последние сообщ.
Локация для телепортации не найдена. 
последний ответил: smails


Проблемы со входом на серв 
последний ответил: Splish


Поднятие уровня персонажа 
последний ответил: Splish


Возвращение Ру-MaNGOS коммьюнити! 
последний ответил: kanzaki


Нужна помощ!!!!! 
последний ответил: smails


 Мануалы
Главная » Статьи » Документации

MaNGOS SetUP Manual [MaNGOS Исчерпывающее описание установки]

1. Общие сведение о MaNGOS server.
___1.1 Что такое MaNGOS(описание проекта)
___1.2 Качаем сервер
______1.2.1 Структура сервера
___1.3 Качаем БД
2. Настройка mangosd.
___2.1 Распаковка данных клиента World of Warcraft от компании Blizzard
___2.2 Конфигурирование mangos.conf
___2.3 Создание базы данных
3. Настройка realmd.
4. Создание простейшего Web интерфейса регистрации.
5. ОЧЕНЬ ЧАСТО задаваемые вопросы и проблемы.


1. Общие сведение о MaNGOS server.

1.1 Что такое MaNGOS.
MaNGOS - сервер с открытым исходным кодом и мощым коммьюнити, случайно позволяющий присоединяться к себе клиенту World of Warcraft от компании Blizzard.
Сервер состоит из двух частей - mangos deamon(оснновная часть) и realm deamon(побочная часть). Первый отвечает за большую часть информации, связанной с положением монстров, квестовыми связями и многим другим. Второй позволяет осуществлять подключение к mangosd и служит хранилищем для данных по Realm`ам игры.
Исполняемые файлы получают информацию из баз данных MySQL(свободная система управления базами данных (СУБД).
На данный момент сервер использует три базы данных - Characters(вся динамично меняющаяся информация относительно игроков), Mangos(статичные данные определяющие наполненность игрового мира обьектами, заклинаниями и прочим) и Realmd(Информация о реалмах и аккаунтах игроков).
Также в MaNGOS имеется поддержка технологии Line of Sight, сокращенно LOS(истинная линия зрения), которая определяет направление взгляда юнита. Внедрение этой технологии позволило исправить множество проблем, впрочем, вы можете оценить ее работу сами.
Хоть MaNGOS является сугубо образовательным проектом и его лицензия не разрешает публичное использование, развитие проекта идет полным ходом и возможности сервера растут поразительно быстро.

1.2 Качаем сервер
Я рассмотрю два самых сильных ресурса по MaNGOS.

1. http://mangosproject.org
2. http://mangos.ru

На обоих форумах вы можете скачать уже скомпилированные(преобразованные из исходного кода в готовые .exe файлы) mangosd и realmd, а также базовый пакет для распаковки ресурсов. В первом случае релизы доступны по адресу:
Forum -> Help & Support > Installation, Configuration & Upgrades > Compiled Mangos Win32 Binaries, Compiled sources only .
Во втором:
Форум -> > Рабочая Область > Файловый обменник (темы с названиями Compiled by).
Останавливаться именно в этой статье на SVN и компиляции не буду.

1.2.1 Структура сервера
Распаковав архив с сервером вы увидете(в большинстве случаев) лишь одну папку sql(SQL иньекции для синхронизации версий ядра и базы с порядковыми номерами, думаю, проблем возникнуть не должно). Также там будут лежать mangosd.exe, realmd.exe (соответственно и их конфигурационные файлы) и динамическая библиотека MaNGOSScript.dll, отвечающая за скрипты(программы, которые автоматизирует некоторую задачу, которую без сценария пользователь делал бы вручную, используя интерфейс программы).

1.3 Качаем БД
БД можно скачать оттсюда - https://unifieddb.svn.sourceforge.ne...ieddb/Full_DB/ . После распаковки архива вы увидете .sql файл. Это - основная БД сервера. Как правило называется mangos.sql . Сохранения баз данных realmd и characters лежат в папке sql базового пакета сервера. Более подробную информацию по формату SQL и администрированию СУБД вы можете найти тут - www.mysql.ru. Там же вы найдете информацию о том, как установить, настроить и запустить свой MySQL сервер.

2. Настройка mangosd.
Настройка mangos deamon состоит из трех этапов

* распаковка данных клиента World of Warcraft от компании Blizzard
* конфигурирование mangos.conf
* создание базы данных (далее просто БД)


2.1 Распаковка данных клиента World of Warcraft от компании Blizzard
Если в базовом пакете(пункт 1.2.1) вы не обнаружили Vmaps extracter, Map Extracter, DBC extracter - рекомендую скачать сборку, в которой упоминаются данные приложения, иначе вы не сможете запустить сервер. Я специально не буду рассматривать эту тему глубже, потому что каждое приложение содержит описание(Readme.txt), а английский язык хотя бы на уровне школы знают все. Если нет - советую воспользоваться словариком, которых в сети Интернет великое множество.

2.2 Конфигурирование mangos.conf
Файл конфигурации mangos.conf в своем базовом варианте имеет довольно простую структуру и также снабжен описанием каждой функции на английском языке.

2.3 Создание базы данных (далее просто БД)
После прочтения материалов, представленных в пункте 1.3 у Вас не должно возникнуть проблем с восстановлением БД из дампа. Остановлюсь лишь на конфигурировании БД realmd.
Главной в данной базе данных является таблица realmlist. В ней необходимо выставить ip, по которому будет осуществлять соединение игровой клиент(файл realmlist.wtf) а также название реалма.

3. Настройка realmd
Настройка realmd сводиться к грамотному прочтению файла конфигурации и повторной проверки таблицы realmlist БД realmd(2.3). Все переменный realmd.conf также имеют подробные описания.

4. Создание простейшего Web интерфейса регистрации


PHP код:
<?php

/*Конфигурация*/
$realmd = array(
'db_host'      => 'localhost',   // ип реалма
'db_username' => 'mangos',      // пользователь realm
'db_password' => '',              //пароль realm
'db_name'        => 'realmd',      //название БД realm
);


///////////////Начало Скрипта//////////////////

/*
Function name: CHECK FOR SYMBOLS
Description: return TRUE if matches. ( True = OK ) ( False = NOT OK  )
*/
function check_for_symbols($string){
$len=strlen($string);
$alowed_chars="abcdefghijklmnopqrstuvwxyzжшеABCDEFGHIJKLMNOPQRSTUVWXYZЖШЕ";
for(
$i=0;$i<$len;$i++)if(!strstr($alowed_chars,$string[$i]))return TRUE;
return 
FALSE;

}
/*
Function name: OUTPUT USERNAME:PASSWORD AS SHA1 crypt
Description: obious.
*/
function sha_password($user,$pass){
    
$user strtoupper($user);
    
$pass strtoupper($pass);
    
    return 
SHA1($user.':'.$pass);
}

if (
$_POST['registration']){
/*Connect and Select*/
$realmd_bc_new_connect mysql_connect($realmd[db_host],$realmd[db_username],$realmd[db_password]);
$selectdb mysql_select_db($realmd[db_name],$realmd_bc_new_connect);
if (!
$realmd_bc_new_connect || !$selectdb){
echo 
"Could <b>NOT</b> connect to db, please check the config part of the file!";
die;
}

/*Проверки*/
$username $_POST['username'];
$password sha_password($username,$_POST['password']);

$qry_check_username mysql_query("SELECT username FROM `account` WHERE username='$username'");

if (
check_for_symbols($_POST[password]) == TRUE || check_for_symbols($username) == TRUE || mysql_num_rows($qry_check_username) != 0){
    echo 
"Error with creating account, might already be in use or your username / password has invalid symbols in it.";
}else{
    
mysql_query("INSERT INTO account (username,I) VALUES ('$username','$password')");// Insert into database.
    
echo "Account created.";
}


}else{
///////////////Конец Скрипта, Начало HTML//////////////////
?>

<!--Начинайте ваш HTML код с этого места: ) -->
<form action="echo $_SERVER['PHP_SELF'?>" method="POST">
Username <input type="text" name="username"><br />
Password <input type="password" name="password"><br />
<input type="submit" name="registration">
</form>

<!--Остановите ваш HTML код здесь: ) -->
<?php
// Не удаляйте это место;)
}
?>
Более подробну информацию по языку php вы можете получить здесь http://php.rus-phpnuke.com.
Более подробную информацию по функциям сервера MaNGOS и работе с ним на уровне php вы можете получить здесь http://msdk2.elegos.altervista.org/msdklexicon2 .
Категория: Документации | Добавил: theolaw (06.01.2009)
Просмотров: 6444 | Рейтинг: 2.9/9 |
Copyright MangosOrg || Настройка и установка серверов Mangos © 2008 - 2010
Наш опрос
Будете ли вы ждать Cataclysm?
Всего ответов: 503
Статистика

Зарегестрировано:
Всего: 7461
Новых за месяц: 131
Новых за неделю: 30
Новых вчера: 3
Новых сегодня: 4
Из них:
Администраторов: 1
Модераторов: 4
Проверенных: 4
Забаненных: 55
Обычных юзеров: 7397
Онлайн всего: 1
Гостей: 1
Пользователей: 0

Поиск по сайту

MaNGOS - это объект-ориентированный Massively Multiplayer Online Role-Playing Game Server (MMORPGS).
MaNGOS проект с открытым исходным кодом, оригиналом которого является код проекта WoWD.
ManNGoS распространяется по GNU GENERAL PUBLIC LICENSE, по которой, распространение сервера и его исходников не нарушает авторские права Blizzard Entertainment.
World of Warcraft - торговая марка зарегистрированная Blizzard Entertainment. Copyright © Blizzard Entertainment.
Хостинг от uCoz
Проводим организация праздников. Услуги тамады, организация свадеб вечеринок, ведущие праздников.