Назад

[Гайд] Установка SQL eathena + настройка.

Автор: ????: Дата: 01.29.2011

И так, начнём.

I. Скачивание
1.

2.

3.

II. Установка

1. Установка Vertigo Server: единственное правило устанавливать в стандартную папку, если плюс зелёный, то радуемся, если жёлтый или синий, то устанавливаем программу порты и смотрим каким процессом они заняты.

2. Установка Tortoisesvn: Тут всё просто и понятно.

III. Настройка
1. Для начала настроим коннект к базе. Идём в папку eAthena/conf Там открываем блокнотом файл inter_athena

// MySQL Login SQL Server
login_server_ip: 127.0.0.1 // Если у вас база находится на этой машине, то оставляем такой ip. Если нет, то указываем ip базы.
login_server_port: 3306 // порт лучше оставить стандартный.
login_server_id: ragnarok // по стандрарту пишем root.
login_server_pw: ragnarok // тут vertrigo.
login_server_db: ragnarok // Название вашей базы.

// MySQL Character SQL server
char_server_ip: 127.0.0.1 // абсолютно также
char_server_port: 3306
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok

// MySQL Map SQL Server
map_server_ip: 127.0.0.1 // также
map_server_port: 3306
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok

// MySQL Log SQL Database
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: ragnarok
log_db_pw: ragnarok
log_db: log // По вашему желанию, если хотите логи в той же базе, что и остальные таблицы, пишите название базы.


3. Настраиваем базу.
1) Нажимаем на вертиго правой кнопкой, выбираем tools, phpmyadmin.
2) У вас запросят имя и пароль! Имя: root Пароль: Vertrigo
3) Создаём новую базу с названием какое у вас было в inter_athena.
7) Нажимаем на нашу базу, например ro (вместо ro ваше имя).
8) Нажимаем импорт.
9) Импортируем по очереди:
item_db //Вы можете не импортировать item_db, item_db2,mob_db,mob_db2, если хотите, что бы они хранились в папке, а не в базе.
item_db2
mob_db
mob_db2
main
log


III. Компилирование сервера



IV. Тонкая настройка.

1. Идём в ea/conf/battle файл client.conf

// Set here which client version do you accept. Add all values of clients:
// Clients older than accepted versions, and versions not set to 'accepted'
// here will be rejected when logging in
// 0x0001: Clients older than 2004-09-06aSakray (packet versions 5-9)
// 0x0002: 2004-09-06aSakexe (version 10)
// 0x0004: 2004-09-20aSakexe (version 11)
// 0x0008: 2004-10-05aSakexe (version 12)
// 0x0010: 2004-10-25aSakexe (version 13)
// 0x0020: 2004-11-29aSakexe (version 14)
// 0x0040: 2005-01-10bSakexe (version 15)
// 0x0080: 2005-05-09aSakexe (version 16)
// 0x0100: 2005-06-28aSakexe (version 17)
// 0x0200: 2005-07-18aSakexe (version 18)
// 0x0400: 2005-07-19bSakexe (version 19)
// 0x0800: 2006-03-27aSakexe (version 20)
// 0x1000: 2007-01-08aSakexe (version 21)
// 0x2000: 2007-02-12aSakexe (version 22)
// default value: 0xFFFF (all clients)
packet_ver_flag: 0xFFFF // версия клиента поддерживаемая сервером 0xFFFF - все версии

// Minimum delay between whisper/global/party/guild messages (in ms)
// Messages that break this threshold are silently omitted.
min_chat_delay: 0 // задержка на чат

// valid range of dye's and styles on the client // Настройка цвета и стиля.
min_hair_style: 0
max_hair_style: 25
min_hair_color: 0
max_hair_color: 8
min_cloth_color: 0
max_cloth_color: 4

// When set to yes, the damage field in packets sent from woe maps will be set
// to -1, making it impossible for GMs, Bots and Hexed clients to know the
// actual damage caused by attacks. (Note 1)
hide_woe_damage: no // скрывать ли дамаг на ГВ

// "hair style" number that identifies pet. // Цвета пета
// NOTE: The client uses the "hair style" field in the mob packet to tell them apart from mobs.
// This value is always higher than the max hair-style available in said client.
// Known values to work (all 2005 clients):
// older sakexes: 20
// sakexe 0614: 24
// sakexe 0628 (and later): 100
pet_hair_style: 100

// Maximum allowed 'level' value that can be sent in unit packets.
// Use together with the aura_lv setting to tell when exactly to show the aura.
// NOTE: You also need to adjust the client if you want this to work.
// NOTE: Default is 99. Values above 127 will probably behave incorrectly.
// NOTE: If you don't know what this does, don't change it!!!
max_lv: 255 //максимальный уровень.

// Level required to display an aura.
// NOTE: This assumes that sending max_lv to the client will display the aura.
// NOTE: aura_lv must not be less than max_lv.
// Example: If max_lv is 99 and aura_lv is 150, characters with level 99~149
//**********will be sent as being all level 98, and only characters with level
//**********150 or more will be reported as having level 99 and show an aura.
aura_lv: 255 // Лвл при котором будет светиться аура


2. Далее идём в drops

// Item drop rates (Note 2)
// The rate the common items are dropped (Items that are in the ETC tab, besides card) // Шанс выпадения лута 100=0.01%.
item_rate_common: 1000 // Шанс выпадания с обычных мобов.
item_rate_common_boss: 1000 // Шанс выпадания с МВП.
item_drop_common_min: 1 // Минимальный шанс выпадания 1=0.01%.
item_drop_common_max: 10000 // Максимальный шанс выпадания 10000=100%.

// The rate healing items are dropped (items that restore HP or SP) // Шанс выпадения потов.
item_rate_heal: 1000
item_rate_heal_boss: 1000
item_drop_heal_min: 1
item_drop_heal_max: 10000

// The rate at which usable items (in the item tab) other then healing items are dropped. // Шанс выпадения еды и т.п.
item_rate_use: 1000
item_rate_use_boss: 1000
item_drop_use_min: 1
item_drop_use_max: 10000

// The rate at which equipent is dropped. // Шанс выпадения шмота.
item_rate_equip: 300
item_rate_equip_boss: 300
item_drop_equip_min: 1
item_drop_equip_max: 10000

// The rate at which cards are dropped // Шанс выпадения обычных карт.
item_rate_card: 100
item_rate_card_boss: 100
item_drop_card_min: 1
item_drop_card_max: 10000

// The rate adjustment for the MVP items that the MVP gets directly in their inventory // Шанс выпадения бонусов с МВП.
item_rate_mvp: 300
item_drop_mvp_min: 1
item_drop_mvp_max: 10000

// The rate adjustment for card-granted item drops. // Шанс выпадения хороших карт.
item_rate_adddrop: 100
item_drop_add_min: 1
item_drop_add_max: 10000

// Rate adjustment for Treasure Box drops (these override all other modifiers) // Шанс выпадениия с тризур в замке.
item_rate_treasure: 100
item_drop_treasure_min: 1
item_drop_treasure_max: 10000


3. Идём в exp

// Rate at which exp. is given. (Note 2)
base_exp_rate: 100 // Рейты на лвл 100=1х

// Rate at which job exp. is given. (Note 2)
job_exp_rate: 100 // Рейты на джоб

// Turn this on to allow a player to level up more than once from a kill. (Note 1)
multi_level_up: yes // Мультилвл


4. Далее идём в player

// Players' maximum HP rate? (Default is 100)
hp_rate: 100 // Хп рейты, 100 по станадрту

// Players' maximum SP rate? (Default is 100)
sp_rate: 100 // сп рейты
// Max limit of char stats. (agi, str, etc.)
max_parameter: 99 // Максимальные статы

// Same as max_parameter, but for baby classes.
max_baby_parameter: 99 // Максимальные статы бэбика

// Max armor def/mdef
// NOTE: does not affects skills and status effects like Mental Strength
// If weapon_defense_type is non-zero, it won't apply to max def.
// If magic_defense_type is non-zero, it won't apply to max mdef.
max_def: 99 // Максимальный деф


5. Далее идём в skill
// The rate of time it takes to cast a spell (Note 2, 0 = No casting time)
casting_rate: 100 // Чем меньше значение тем меньше будет каст.

// Delay time after casting (Note 2)
delay_rate: 100 // Чем меньше значение тем меньше будет задержка.

// Does the delay time depend on the caster's DEX and/or AGI? (Note 1)
// Note: On Official servers, neither Dex nor Agi affect delay time
delay_dependon_dex: yes // Зависит ли задержка от декс/аги.
delay_dependon_agi: yes
// At what dex does the cast time become zero (instacast)?
castrate_dex_scale: 150 // При скольки декс инкаст.


6. Выставляем максимальный уровень. Идём в db/exp и переименовываем его в showexp далее идём в exp2 и переименовываем его в exp и там меняем. Если у вас так до сех пор не поменялось, то воспользуйтесь этим

7. Настройка прав.
1) Идём в базу.
2) Находим таблицу login, нажимаем обзор.
3) Ищем свой аккаунт и нажимаем на карандаш (редактировать).
4) Ищем level, ставим 99.

8. Настройка команд.

Идём в conf/atcommand_athena, допустим вы хотите, что бы @go была доступна всем.
Ищем строку:
// Warps you to predefined locations in major cities.
go: 10,10


Вместо 10 первой пишем 0, т.е. так go: 0,10. Для чего нужна вторая 10 вы спросите? У всех у кого права 10 и выше могут использовать такую команду #go Имячара 0. И Имячара варпанёт в пронту. Так что ни в коем случае ни ставьте 0,0. Я так на автобае кучу деняг сделал :)

V. Запуск сервера.
Просто заходим в eA и нажимаем на runserver-sql

Будут ерроры или вопросы, пишите) Если я вам помог ставьте
by Мяфк

Автор: Мяфк: Дата: 01.29.2011

Да не за что, куда я денусь =)

Автор: DIMAN08: Дата: 02.07.2011

в чём такая крутость и преимущество SQL сервера?
везде пишут что TXT фуфло,на нём никто не сидит(

объясните в чём разница

Автор: Jarek: Дата: 02.07.2011

http://www.eathena.ws/board/index.php?showtopic=98177

Автор: DIMAN08: Дата: 02.07.2011

насколько я понял SQL надёжнее и стабильнее,и в большинстве случаев юзается для публичных серверов.

а если я хочу чисто с друзьями погонять,человек так 10-20,TXT будет лучше для меня?

Автор: Renegade: Дата: 02.07.2011

TXT - дилетантское немасштабируемое решение.

Автор: ifry: Дата: 02.09.2011

помогите, когда пытаюсь импортировать файлы выбивает такую ошибку

Автор: Мяфк: Дата: 02.09.2011

По-моему ты не то льёшь. Надо sql-files/item_db.sql

Автор: ifry: Дата: 02.10.2011

Теперь другая проблема у меня перепутались все кнопки жму альт+2 используется аль+3 и т.д. в настройках клиента вроде всё нормально

Автор: Renegade: Дата: 02.10.2011

alt+L

Автор: ifry: Дата: 02.10.2011

Цитата Renegade;33255:
alt+L

при чём тут альт+L? на альт 0-9 ставятся команды не только эмоции

Автор: Jarek: Дата: 02.10.2011

Надо поставить другую версию hotkey.lu*
Используйте поиск, было совсем недавно то ли тут, то ли на еа.вс

Автор: Renegade: Дата: 02.10.2011

Цитата ifry;33260:
при чём тут альт+L? на альт 0-9 ставятся команды не только эмоции


Эмоции ставятся по alt+M, команды по alt+L. Внезапно.

Автор: LucifeRUS: Дата: 02.11.2011


alt+m ставиться любой текст включая команды, alt+l список эмоций

Автор: Renegade: Дата: 02.11.2011

Ну наоборот, и что. Я тыщу лет уже клиент ро не запускал.

Автор: ifry: Дата: 02.16.2011

На ip 127.0.0.1 серв нормально грузился, поставил свой ип серв перестал загружаться и выдаёт ошибку

Автор: Renegade: Дата: 02.16.2011

вообще закаменти бинд айпи и не трогай.

Автоматика давно уже умнее среднестатистического юзера.


Темболее тебе ясно пишут что сервер не может заканектится к SQL. Проверь на каком интерфейсе SQL сервер слушает входящие соединения. Либо пароль неверен.

Автор: ifry: Дата: 02.16.2011

Цитата Renegade;33930:
вообще закаменти бинд айпи и не трогай.

Автоматика давно уже умнее среднестатистического юзера.

Либо пароль неверен.


бинд ip закоментен, пароль правильный

Проверь на каком интерфейсе SQL сервер слушает входящие соединения.

а вот на счёт этого можно поподробнее?

Автор: Renegade: Дата: 02.16.2011

что вообще за хост "mycomp"? О_о

Автор: ifry: Дата: 02.16.2011

Сервер стоит у меня на компе а не на хосте оО

Автор: DIMAN08: Дата: 02.20.2011

up
делал всё по гайду..почему-то не могу залогиниться...пишу логин пароль и на аккаунт просто не зайти..пишет ждите и в итоге пишет соеденение не возможно(

подскажите где я допустил ошибку?

Автор: Кеник: Дата: 02.20.2011

Если на локальной машинке под виндой - проверь порты в брэндмауере. Ну и в клиенте :D И IP проверь

Автор: IssID: Дата: 02.25.2011

наверное ненмого не в тему вопрос. но ненашел не чего подходящего..

как сделать что бы в информации предметов отображался их ID? в настройках сервера или в текстовике с описанием надо добовлять каждому предмету ID?

Автор: Мяфк: Дата: 02.25.2011

В текстовике с описанием.

Автор: Gremlin: Дата: 02.25.2011

интересная идея.

Автор: ST1mNN: Дата: 02.27.2011

После запуска сервера sql имею в чарсервере такие строки:

[Info]: Attempt to connect to login-server...
[Status]: Connecting to 192.168.1.3:6900
[Error]: Unknown packet 0x006a received from login-server, disconnecting.

А в логин-сервере:
[SQL]: DB error - Table 'ro1.loginlog' doesn't exist
[Debug]: at ..\src\login\loginlog_sql.c:75 - INSERT INTO `loginlog`(`time`,`ip`,
`user`,`rcode`,`log`) VALUES (NOW(), '192.168.1.3', 'unknown', '-3', 'ip banned'
)
[Info]: Closed connection from '192.168.1.3'.
[SQL]: DB error - Table 'ro1.ipbanlist' doesn't exist
[Debug]: at ..\src\login\ipban_sql.c:213 - SELECT count(*) FROM `ipbanlist` WHER
E `rtime` > NOW() AND (`list` = '192.*.*.*' OR `list` = '192.168.*.*' OR `list`
= '192.168.1.*' OR `list` = '192.168.1.3')
[Status]: Connection refused: IP isn't authorised (deny/allow, ip: 192.168.1.3).


И это дело повторяется. Я так понимаю дело в том, что чарсервер коннектится к логин-серверу не по локальному айпишнику 127.0.0.1, а по айпишнику домашней сетки 192.168.1.3? Где необходимо прописать этот айпишник, чтобы логин-сервер его не отвергал?...
Да и таблицы в базе не появляются... До сих пор пустая.

Автор: Мяфк: Дата: 02.27.2011

Логин коннектится к базе по айпи 192.168.1.3 и это нормально.
А ошибка в том что криво таблицы залиты. Да и почему то в таблице ipban твоё айпи в бане...

[Status]: Connection refused: IP isn't authorised (deny/allow, ip: 192.168.1.3)

В общем перезалей таблицы в базу.

Автор: ST1mNN: Дата: 02.27.2011

В гайде было сказано, что

Вы можете не импортировать item_db, item_db2,mob_db,mob_db2, если хотите, что бы они хранились в папке, а не в базе.

Тем не менее, после импорта сервер встал нормально (ну item_db с косяками импортнулось, но видимо на нулевой сборке так и должно быть). Спасибо.
Вопрос: остальные sql файлы нужно импортировать? Все?(Сейчас пробую ставить 3Ceam сборку)

Автор: Мяфк: Дата: 02.27.2011

Нужно только main. Остальное по желанию.

Автор: Renegade: Дата: 02.27.2011

хочешь чтоб работало нормально- качай с оф СВН и настраивай по гайдам.

Отжеш любители зверьсиди.

Автор: Gererro: Дата: 04.14.2011

[SQL]: DB error - Table 'ragnarok.auction' doesn't exist
[Debug]: at int_auction.c:192 - SELECT `auction_id`,`seller_id`,`seller_name`,`b
uyer_id`,`buyer_name`,`price`,`buynow`,`hours`,`timestamp`,`nameid`,`item_name`,
`type`,`refine`,`attribute`,`card0`,`card1`,`card2`,`card3` FROM `auction` ORDER
BY `auction_id` DESC


При запуске сервера чарсервер выдает такую ошибку, но сервер загружается. Что означает эта ошибка и как с ней боротбся?

Автор: Gremlin: Дата: 04.14.2011

Table 'ragnarok.auction' doesn't exist
Перевести, понять - не?

Автор: obliged.act: Дата: 04.14.2011

Залей в базу полностью.

Автор: Gererro: Дата: 04.14.2011

Установил тот main.sql и в итоге ошибок еще больше стало.


[SQL]: DB error - Table 'ragnarok.loginlog' doesn't exist
[Debug]: at login.c:1539 - INSERT DELAYED INTO `loginlog`(`time`,`ip`,`user`,`rc
ode`,`log`) VALUES (NOW(), '3232235879', 'd1@server','100', 'charse
rver - server@192.168.1.103:6121')
[SQL]: DB error - Unknown column 'connect_until' in 'field list'
[Debug]: at login.c:530 - SELECT `account_id`,`user_pass`,`lastlogin`,`sex`,`con
nect_until`,`ban_until`,`state`,`level` FROM `login` WHERE `userid`= BINARY 'd1'

Автор: Gererro: Дата: 04.14.2011

Спасибо, проблема решена добавлением таблицы которой нету в той, что мне скинули.

Автор: multy: Дата: 07.10.2011



Что не так?.

Автор: multy: Дата: 07.10.2011

Так. Разобрался. Следующий вопрос:
Дайте пожалуйста ссылку на статью о подключении к серверу. Ну там .exe делать надо, или ещё что то.

Автор: Less: Дата: 07.10.2011

http://rus-ea.ru/search.php
держи! научишься пользоваться, и будешь очень счастлив, поверь.

Автор: multy: Дата: 07.10.2011

ты клёвая

Автор: Kill Spirit: Дата: 07.10.2011