Гайд создания сервера Ragnarok Online

Автор PXproject, 2011 Окт. 15, 18:29

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ключевые слова [SEO] настройкаустановкасоздание сервера ragnarok online

PXproject

Гайд по установке и настройке сервера Ragnarok Online.

на эмуляторе eAthena SQL

Version 1.6



============================================================================
История исправления:
=============================================
Version 1.1
-------------------------------------------------------------------
1.Поправил ошибку Rag и Sak.
2.Поправил ссылки на скачивание клиентов. (Клиенты проверить нет возможности ибо дорого мне выйдет)
3. Убрал названия других серверов,(по крайней мере постарался убрать)
Спасибо Filrenу.
=============================================
=============================================
Version 1.2
-------------------------------------------------------------------
1.Начал разработку второй части.
=============================================
=============================================
Version 1.3
-------------------------------------------------------------------
1.Поработал над грамматикой.
=============================================
=============================================
Version 1.4
-------------------------------------------------------------------
1. Добавил "Запуск вертриго и сервера".
=============================================
=============================================
Version 1.5
-------------------------------------------------------------------
1. Заменил не правельный пароль и  зделал
уточнение по поводу название БД.
Спасибо Liiloo.
=============================================
=============================================
Version 1.6
-------------------------------------------------------------------
1. Вразумляю о ссылке https://localhost/phpmyadmin.
=============================================


============================================================================

Часть 1
Предисловие.
Вот и я собрался написать гайд по установке и настройке сервера eAthena SQL по причине того, что все гайды старые, а некоторые кому то  непонятные.
Я здесь описываю как я настраивал свой сервер Ragnarok, многие с этим могут не согласиться. Пожалуйста оставляйте свои высказывания по этому поваду, так как я только учусь, и мне будет интересно узнать мнение держателей серверов со стажем.
Так же приветствуются замечания по поводу гайда. (я учусь)

Начинаю.
1.Что потребуется.
Итак нам нужна eAthena, внешняя БД (База данных), клиент Ro.
eAthenу вы можете скачать отсюда - https://santuary.org/ .
Качайте c раздела eAthena SVN Release [stable] в нашем случае нужна eAthena SVN SQL  ревизию естественно самую новую (Revision).
Под фразой  внешняя БД, я подразумевал полный комплект инструментария, коими являются в нашем случае MySQL (БД), Apatch (Веб сервер), phpmyadmin (ПУ- Панель управления ), PHP (язык) вроде всё.
Но я не качал это всё по отдельносьти, я скачал Vertrigoserv который требуется просто установить в любую папку и все (рекомендую в дирректорию C:/Server/WebServer/    Вместо "С" можете использовать любой вам душе угодно логический или физический диск.
Vertrigoserv содержит:
Apache, PHP, MySQL, SQLite, PhpMyAdmin, ZendOptimizer, SQLiteManager.
Vertrigo вы можете скачать вот отсюда-  https://vertrigo.sourceforge.net/
На время написания гайда была последняя версия Vertrigo 2.15 в его состав входили:
Apache 2.0.59
PHP 5.2.1
MySQL 5.0.27
SQLite 3.3.12
PhpMyAdmin 2.9.2
ZendOptimizer 3.2.2
SQLiteManager 1.2.0
Как и говорилось ранее, его просто нужно установить. Да, я рекомендую создать папку C:/Server в которую вы будите все устанавливать (вместо C ваш логфизич диск). Вот у меня к примеру C:ServerWebserver, C:ServerRoServer, C:ServerFTPserver. Хотя это на ваше усмотрение.
Теперь нужны клиент Ro, от куда вы будите их брать, это без разницы. Советую взять последний  Rag и Sak. Почему вместе? Да потому, что то,  что есть у Rag возможно нету у Sak ( и наоборот). Rag- Это просто клиент без сервера, а Sak- это тестовый клиент Ragnarok.
Откуда скачать?  Вот отсюда- Ragnarok Online (чистый клиент KRo RAG + KRo Renewall) . Потом в data.ini прописываем все grfы
data.grf - Rag  sdata.grf-Sak.  Возникает  проблема с языком, не все знают Корейский, качам Ингласификатор и Русификатор.
Файлы на английском (перевод) можно скачать от сюда- Englasificator. Кому нужен Русификатор, то отсюда- Russificator
Как русифицировать и ингласифицировать будет объяснено в разделе "Установка".
2.Установка
Итак приступим у установке. Vertrigo мы установили для его установки большого ума не надо.
[Добавлено]
ВНИМАНИЕ!!!  ПЕРЕД КАЖДЫМ ЗАПУСКОМ СЕРВЕРА НЕОБХОДИМО ЗАПУСТИТЬ ВЕРТРИГО. Запущенн или нет как выявить?
А вот так. Смотриш  на панель меню пуск с права где часы, там должен быть такой типо кубик с
зелёны плюсом.
[Добавлено]
Так устанавливаем eAthenу. Разархивировали архив на жёсткий диск, у меня C:ServerRoserver
Потом вытаскиваем с клиентов grfы и кидаем  куда-нибудь  туда же (у меня C:ServerRoserverGRF)
Если вы в будущем создадите свой grf или обновите старые, то обязательно добавьте  замените их в папке в сервера. Потом пропишите в сервере в файле ...ROserverconfgrf-files.txt
//-----------------------------------------
// GRF List
//-----------------------------------------

grf: c:ServerROserverGRFdata.grf
grf: c:ServerROserverGRFsdata.grf
grf: c:ServerROserverGRFadata.grf

// You may add more in this format
// grf: <data file path>

//------ Others ---------------------------

//Path to directory that contains the data dir
//NOTE: Path must include trailing backslash, only one data_dir entry is supported.
//data_dir: C:Program FilesGravityRO
Так теперь нужно установить, клиент через который можно было бы играть на сервере (СЕРВЕР ЕЩЁ НЕ НАСТРОЕН).
Создайте какую-нибудь папку в которую можно будет поместить клиент для вашего сервера.
например NewRo (взяли условно).
В него помещайте файлы с ваших предварительно добытых клиентов (Я говорю про Sak и Rag у вас могут быть другие, или только один). Итак, помещаем в папку NewRo:data.grf, sdata.grf, какой-нибудь exe
(rag  запрашивает вроде clientinfo.xml, sak запрашивает sclientinfo.xml (это к сведенью, с ними будем разбираться потом)( Если exe работать не будет, то советую брать ломаные с других серверов, или читать гайд по дифпатчу)),binkw32.dll, cps.dll,DATA.ini,dbghelp.dll, granny2.dll, ijl15.dll, Mss32.dll, msvcp60.dll,msvcp60.dll, NPCHK.dll, NPCIPHER.dll, npkcrypt.dll, npkpdb.dll, NPX.dll, psapi.dll,  rus.reg, Setup.exe, + папки: _tmpEmblem, BGM, data (если нет, то создай), Emblem, GameGuard, ScreenShot, skin.  (Не знаю как у вас но у меня так)
Теперь в папку data разместим sclientinfo.xml или clientinfo.xml (у меня sclientinfo)
в нём нужно будет прописать ваш IP, если вы создаёте этот сервер для людей который будут играть по внешке (не по внутренней сети вашего интернет провайдера) то ставьте внешний  ip, если по внутреннему, то внутренний ваш ip.
Как узнать ваш внутренний и внешний ip?
А вот так. Заходите Пуск => Выполнить. Там набираете cmd. Вылетит командное окно, в нём напишите ipconfig и вам выдастся полная информация, самый большой ip по идеи и будет внешним, да забыл упомянуть, интернет должен быть подключен.
Так, теперь кинем sclientinfo в  паку data, потом там произведите сопутствующие изменения.
Сейчас всё буде.
Если у вас нету ни sclieninfo ни clientinfo, то просто создайте его, вот шаблон.
СМ НИЖЕ ШАБЛОН.
<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>
<desc>Mego Ragnarok Client Information verdion 1.0 By Deven</desc>

<servicetype>japan</servicetype>
<servertype>primary</servertype>
<extendedslot></extendedslot>

<connection>
<display>Название сервера</display>
<desc>None</desc>
<address>Ваш IP</address>
<port>Порт установленный для eAthenы</port>
<langtype>14</langtype>
<version>10</version>
<registrationweb>Страница регестрации</registrationweb>
<aid><admin>ид админа</admin></aid>
<loading>
<image>Картинка промежуточных загрузок .jpg</image>
</loading>
</connection>
<langtype>14</langtype> Установка языка в ро, стоит Русский.

Так, как вы уже поняли ранее, что его нужно сохранить в папке data.
Теперь редактируем data.ini, если нет создайте.
ПРИМЕР DATA.ini
[Data]
0=data
1=data.grf
2=sdata.grf
Думаю всё понятно (порядок загрузки + то что загружать).
Так, теперь нужно Ингласифицировать сервера, для этого нам потребуется ранее скаченный Ингласификатор  (в нём 4архива, каждый меняет своё нам потребуются только три верхних).
Просто распаковываем архивы v420-Text.rar и v7-Texture.rar в папку дата.
ВНИМАНИЕ!!!
В архиве уже создана папка дата, дак что вы следите что бы лишних директорий в папке data не было. Пример. "data/data/..." Такого быть не должно, должно быть "data/...."
тхтшки которые лежат перед папкой дата в архиве v7-Texture.rar ни куда копировать не надо.
Если у вас по директории data/texture/ Находится папка "A_AгAIПIТДAIлз" или "АЇАъАОЕНЖдАМЅє"
то переименуйте её в АЇАъАОЕНЖдАМЅє.
Так теперь дополнительные скины, которые находятся в архиве v2-BMPs.rar. Просто копируйте от туда папку skin в ваш клиент, папка PatchClient в архиве вам пока не нужна.
Теперь если вы хотите русифицировать ваш клиент, то скачайте grf tool можете отсюда- GRF Tool 1.2. Теперь извлеките интересующие вас файлы русифицирования с grf которые были скачены.
olart_rus.grf- содержит русифицированные текстовые файлы.
Файлы нужно извлечь в вашу папку дата, grf tool он автоматически заменит.
Как работать в �grf tolle� думаю все поняли, но всё же объясню вкратце.
Open- открыть grf фаел, Extract извлечь из grf архива в папку которую вы укажите.
ПРИМЕЧАНИЕ.
Можно извлекать файлы как все так и по одиночке, они там выделяются. Если вам нужно распаковать полностью архив, то вам достаточно открыть фаел и сразу же нажать extract и он будет извлекать всё.

3.Наконецто настройка.
Сперва сделаем необходимые изменения в MySQL (Для безопасности).
Лезем по ссылке https://localhost/phpmyadmin.
[Добавлено]
Было много притензий по поваду выше указанной ссылки "Она не пашет". Дак решил я всётаки вразумить не понимающих.
ССЫЛКА ЯВЛЯЕТСЯ ОКНОМ НА ВАШ ВЕБ СЕРВЕР, И ОНА НЕ БУДЕТ ПАХАТЬ, ЕСЛИ ВЫ ЕГО НЕ ВКЛЮЧИЛИ, ИЛИ НЕУСТАНОВИЛИ. ВЕБ СЕРВЕР В НАШЕМ СЛУЧАЕ VERTRIGO.
[/Добавлено]
Вас запросят Login и Password (или тому подобное). Вводите Login - root  Password - vertrigo
Теперь вы попали в ПУ,  в которой вам необходима изменить вашу регистрационную учётную запись доступа к базе MySQL. Это делается так. Как вы только вошли, там сразу же выдастся небольшой список в котором будет строчка привилегии (не смотрите с лева, смотрите прямо) Войдите в этот раздел.
В нём будет такой пользователь как root, дек вот редактируйте его. Для редактирования напротив с права,  c самого края есть такой небольшой рисуночек- "человек с карандашом", нажмите на него, появиться окно редактирования. Там будет такая часть раздела как "Изменить пароль" и даны два поля. Дек вот в этих полях пропишите ваш пароль который вы бы хотели использовать при входе в БД.
Когда напишите, нажмите кнопку "Пошёл" это что то типа применить. Думаю там всё будет понятно, так как там всё на Русском языке.
Теперь импортируем БД eAthenы.
С верху в ПУ, будет такое меню разделов,  в нём выберете закладку "Базы Данных".
Появиться другое окно, в котором будет можно создать новую БД.
В окне "Новая база данных" напишите то название БД в которой и будут храниться вся БД Ро, потом нажмите "создать". У вас выскочит новое окно, в этом окне сверху выбирете "Импорт", вам выскачет окно которое позволяет добавлять готовые БД (в нашем случае БД eAthenы). Файлы для импорта находятся в  С:ServerRoServersql-files (В нашем случае).
Импортируем по порядочку:
1.db_tables.sql
2.logs.sql
3.mail.sql
4.main.sql
5.mob_db.sql
6.item_db.sql
Вроде всё.
Теперь в появившихся таблицах с лева ищем таблицу "login", жмём на неё, потом с верху выбираем "обзор". Вы увидите таблицу в которой будут находиться регистрационная информация о тех людях которые зарегистрировались в Ро. Вы увидите там в столце "account_id" пользователя под номером "1" это пользователь eAthena, нужно у нёё изменить userid и user_pass на любой который вы захотите ( как изменять вы уже знаете, да там ещё плюс ко всему всё по Русски написано, только не забывайте после изменений нажимать Пошёл). Там же в этой таблице меняется ГМ уровень который находится в столбце "level". Вот таблица статусов:
0  - Обычный игрок
1  - Премиум (игрок с привилегиями)
10 - Супер премиум (игрок с привилегиями больше чем просто у премиума)
20 - Модератор
40 - Суб-ГМ
50 - Суб-ГМ+
60 - ГМ
80 - ГМ управляющий.
99 - Администратор.
Итак, вроде всё что нужно изменили всё что нужно впихнули в БД, наконец-то дошли до самого эмулятора eAthena.
Настроим eAtheny так, что бы к вам могли конектится с вашего клиента. (мини клиент - папка "data", data.ini, ....exe).
Лезем в папку conf в eAthene.
Что делаем?
1. Редактируем фаел "map_athena.conf" через блокнот.
в нём меняем: СМ НИЖЕ.
1.
userid: в БД который поменяли (поменянный)
passwd: в БД который поменяли (поменянный)
2.
char_ip: Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.
bind_ip: Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.
map_ip: Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.
Редактируем "login_athena.conf"
//bind_ip: Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.
login_port: Порт который и в sclientinfo.xml
Редактируем ladmin_athena.conf
// Login Server IP
login_ip: IP login сервера.
// Login Server Port
login_port: Порт который и в sclientinfo.xml
Редактируем "char_athena.conf"
1.
userid: в БД который поменяли (поменянный)
passwd: в БД который поменяли (поменянный)
2.
server_name: Название сервера.
wisp_server_name: Название сервера.
3.
//login_ip: Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.
//bind_ip: Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.
login_port: Порт который и в sclientinfo.xml
// char_ip:Ваш IP (внутренний или внешний ) смотря с каким охватом играть собрались.

Редактируем "inter_athena.conf"
// MySQL Login SQL Server
login_server_ip: 127.0.0.1
login_server_port: 3306
login_server_id: Логин пользователя который имеет доступ без ограничения к БД.
login_server_pw: Пароль этого пользователя.
login_server_db: "НАЗВАНИЕ"  БД в которую вы импортировали файлы.

// MySQL Character SQL server
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: Логин пользователя который имеет доступ без ограничения к БД.
char_server_pw: Пароль этого пользователя.
char_server_db: "НАЗВАНИЕ" БД в которую вы импортировали файлы.

// MySQL Map SQL Server
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: Логин пользователя который имеет доступ без ограничения к БД.
map_server_pw: Пароль этого пользователя.
map_server_db: "НАЗВАНИЕ" БД в которую вы импортировали файлы.
[Добавлено]
"НАЗВАНИЕ" БД в которую вы импортировали файлы.Тоесть нужно вбить сюда только название созданой БД в phpmyadmin для Ragnarka , но не физический путь к ней.
[/Добавлено]

Так впринцепи всё.
Настройка скорости кача, частота выпадения лута, и т.п. редактируется в папке conf/battle/
[Добавлено]
Для щапуска сервера, необходимо запустить вертриго (стандартный запуск приложений) и eAtheny,
для запуска eAthen вам необходимо залесть в главную диррикторию с сервером, и найти там "runserver-sql"
формат объекта "bat".
[/Добавлено]
P.S. Извиняюсь если что не так, писал за один присест.  Потом буду редактировать и добавлять по тихоньку.
Итак продолжение следует.

Часть 2

Настройка уровня получения опыта, шанс выпадения , макс статы, и т.п.
1.Настройка максимального уровня.
Итак, приступим к настройке уровня получения опыта, шанс выпадения уровня, макс статов, и т.п.
Если вас не устраивает на сервере максимальный лвл то вам необходимо произвести некоторые изменения  в папке  battle, там находим "client.conf" и редактируем его. Находим в нём
max_lv: 99 Меняем на столько сколько вы бы хотели иметь уровней на вашем сервера.
Но это ещё не всё, теперь лезем в папку db и ищем там exp2.txt. в Нём изменяем первое значения на то которое у вас стоит в максимальном лвл.
Пример.
//Base - Normal Jobs  (Обычные профессии, как на прмер: Hunter, Wizard, Knight.)
99,0:1....
Первое значение 99 его меняем на ваш максимальный лвл на второй професси, например Hunter может иметь макс лвл 99
//Base - Adv Jobs  (Третьи профессии, как на пример: Sniper, Hight Wizard, Lord Knight.)
99,400:......
Первое значение для Адвансисов которые начали качаться на третью профессию, меняем его на то которое бы вы ставили в лалах. И.Т.Д
Думаю теперь понятно. После всех редактировок переименовываем exp.txt в tempexp.txt, а редактированный exp2.txt в exp.txt.
2.Настройка скорости кача.
Лезем в conf/dattle там редактируем фаел и редактируем там фаел exp.conf. В нем нужно изменить значение нескольких строчек. СМ НИЖЕ.
// Уровень получения опыта.
//100=1x рейт базовый
base_exp_rate: 100
Отвечает за получения базового опыта (ЛВЛ который)
// Уровень получения джоб лвла.
//100=1x
job_exp_rate: 100
Отвечает за получения джоб опыта (Job который)
//Сколько опыта давать за Heal.
//100= Сколько похилил столько и опыта получишь.
heal_exp: 100
Тут думаю всё понятно.
//Сколько опыта будет получать продавец.
//100= Сколько денег выручил столько и получиш. (врое так)
shop_exp: 10
Тоже думаю в объяснении не нуждается.
//Давать ли опыт игрокам на ПВП арене.
//yes- Да, no-нет.
pvp_exp: yes
Тоже думаю понятно.
ПРИМЕЧАНИЕ.
//После двойного слеша пишутся комментарии, которые сервер не читает. У вас комментарии после слешов могут быть на английском, по идеи они и должны быть на английском, это я здесь писал на  русском, для наглядности.

3.Настройка выпадения вещей (drop).
Для изменения шанса дропа нужно редактировать фаел "drops.conf", находящийся в той же папке "battle".
// Установка уровня дропа на обычных вещах.
item_rate_common: 100
item_rate_common_boss: 10
item_drop_common_min: 1
item_drop_common_max: 10000

// Шанс выпадения всяких сила восстанавливающих средств (HP, SP)
item_rate_heal: 100
item_rate_heal_boss: 100
item_drop_heal_min: 1
item_drop_heal_max: 10000

// Шан выпадения выпадения вещей пригодных к употреблению для получения каких либо временных возможностей.
item_rate_use: 100
item_rate_use_boss: 100
item_drop_use_min: 1
item_drop_use_max: 10000

// Шанс выпадения воуружения.
item_rate_equip: 100
item_rate_equip_boss: 100
item_drop_equip_min: 1
item_drop_equip_max: 10000

// Шанс выпадения карт.
item_rate_card: 100
item_rate_card_boss: 100
item_drop_card_min: 1
item_drop_card_max: 10000

// Шанс выпадения вещей с MVP.(сокращённо)
item_rate_mvp: 100
item_drop_mvp_min: 1
item_drop_mvp_max: 10000

// Шанс выпадения ХОРОШИХ карт.
item_rate_adddrop: 100
item_drop_add_min: 1
item_drop_add_max: 10000

//Шанс выпадения вещей из Боксов (настройка охватывает все классы вещей) (Как то так вроде, если нет то поправьте).
item_rate_treasure: 100
item_drop_treasure_min: 1
item_drop_treasure_max: 10000
Думаю здесь итак всё объяснено.

3.Настройка максимальных статов.
Что бы выставить максимальное количество статов, необходимо редактировать "player.conf" в папке "battle".
Ищим и редактируем.
// Максимальное значения прокачки статов. (str, agi, и т.п.)
max_parameter: 99

// Максимальное значения прокачки статов. (str, agi, и т.п.) для беби класс.
max_baby_parameter: 80

Похожие темы (5)