Установка сервера на eAthena SQL - Інструкція з встановлення
Розархівуйте eAthena SQL в директорію, яка вам до вподоби. Я б радив не парити собі мізки і встановити на C:athanesql
MySQLДумаю, встановлювати програми вміють усі. Хочу лише попередити, що рекомендується не змінювати шлях встановлення. Інакше доведеться шукати в системі my.ini і там змінювати директорій. А потім, ще фіг знає, скільки проблем через це може виникнути. Після установки запустіть mysqladmin.exe (у папці bin) де, у вікні, вкажіть ім'я і пароль доступу до бази. Спочатку треба: "ragnarok" "ragnarok". Після чого, натисніть OK, програма запуститься і автоматично згорнеться.
MyODBC. Тут все на автоматі.
MySQL Control Center Після встановлення запустіть. У лівому вікні, заголовок якого несе собою MySql Servers, натисніть правою клавішею мишки -> New.
Name: localhost Host Name: localhost User Name: root Password:
Пароль вводити не треба. Після чого в нижньому правому кутку натисніть "Add".
Створиться база з ім'ям "localhost". Натисніть на неї двічі, після чого вона має знайти на собі зелену стрілочку, а під нею має з'явитися татко з ім'ям "Databases".
Правий клік на татці -> New Database.
Enter the new database name: ragnarok
Після створення у піддиректорії цієї папочки має з'явитися база з ім'ям "ragnarok". Натисніть на неї двічі, вона повинна спалахнути зеленим кольором. А в ній має відкритися піддиректорія з ім'ям "Tables".
Тепер приступимо до встановлення таблиць, що використовуються емулятором. Виберіть базу з ім'ям "ragnarok" та натисніть на синій знак "SQL".
Відкриється вікно. Потім завантажте файл із директорії встановленого вами емулятора "athenasqlsql-files" - "main.sql". Скрипт мови SQL повинен завантажитись. Післячого натисніть на знак вигуку.
Скрипт повинен запуститися і зробити свою справу. Після того, як він установить, відкрийте наступний файл. і так все крім тих, що з префіксом update.
Після чого закрийте це вікно, і переконнектіть базу даних ("переконнектить" - натиснути на базу ("ragnarok") після чого натиснути на знак, показаний на картинці. Після того, як іконка бази перестане бути зеленою, натиснути на знак ще раз).
У піддиректорії бази "ragnarok" з ім'ям "Tables" має з'явитись плюсик.
Відкрийте цю піддиректорію. Якщо там з'явилося багато різних табличок - значить установка зроблена успішно.
Після чого, знову натисніть на символ SQL, але цього разу, замість того, щоб завантажувати файли, ми напишемо дещо самі.
Введіть туди ось таке поєднання символів:
INSERT INTO login VALUES
І запустіть. (Не знайдіть дивитися на рядок стану, що знаходиться знизу. Вона може нам багато про що сказати, особливо, обілюючи червоними значками - це означає, що щось виконано неправильно)
Якщо все пройшло добре, можна розпочати налаштування емулятора. Тільки перед цим нам треба створити "користувача" для бази даних, щоб емулятор мав до неї доступ.
Виходимо до поля, де ми створювали бази. Знаходимо знизу розділ під назвою "User Administration", натискаємо правою кнопкою мишки -> New User
Username: ragnarok Host: localhost Password: ragnarok
Privileges: All Privileges
Allow access to: ragnarok (це праворуч)
Після того, як ви переконаєтеся в тому, що зробили все з перерахованого вище, натисніть Add.
Тепер ми створили користувача, через якого емулятор (eAthenaSQL) буде зв'язуватися з базою даних.
Якщо у вас до цього була версія TxT eAthena, то не проблемаперенести все до SQL. Просто запустіть у кореневому каталозі емулятора файли: char-converter.exe, login-converter.exe. Вони повинні працювати, якщо ім'я користувача, створеного для бази даних = "ragnarok", пароль = "ragnarok". Похвально, воно у нас так і є. Якщо після налаштування ви захочете його поміняти (що, в принципі, обов'язково зробити, я потім все поясню).
Відкриваємо conf/char_athena.conf (у текстовику)
// Server name, use alternative character such as ASCII 160 for spaces. server_name:
// Wisp name for server: використаний для wisp від server to players (between 4 to 23 characters) wisp_server_name:
// Login Server IP login_ip: // Login Server Port login_port: 6900 (так і залишити)
// Character Server IP char_ip: // Character Server Port char_port: 6121 (так і залишити)
закриваємо файл – зберігаємо.
Відкриваємо conf/map-athena.conf (у тому ж текстовику)
// Character Server IP char_ip: // Character Server Port char_port: 6121 (так і залишити)
// Map Server IP map_ip: // Map Server Port map_port: 5121 (так і залишити)
закриваємо файл – зберігаємо.
// MySQL Login SQL Server login_server_ip: 127.0.0.1 (так і залишити) login_server_port: 3306 (так і залишити) login_server_id: ragnarok (наше ім'я в базі - є) login_server_pw: rag (Наш пароль в базі - якщо поміняти в базі на інший, то поміняти і тут)
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 (ім'я бази)
// MySQLMap SQL Server map_server_ip: 127.0.0.1 (так і залишити) map_server_port: 3306 (так і залишити) map_server_id: ragnarok (ім'я .) map_server_pw: ragnarok ( . ) _map : ragnarok ( . )
Ось. Сподіваюся, тут все зрозуміло.
Відкриваємо conf/grf-files.txt Вказуємо повні шляхи наших grf файлів клієнта. Закриваємо, зберігаємо.
Відкриваємо conf/motd.txt Пишемо привітання при задоді в гру.
Ще півгодини лазимо по conf/battle_athena.conf і налаштовуємо сервак. Повний переклад усьому, що там є, я не наважусь, але думаю, що це може зробити (або вже зробив!) хтось інший.
DNS – це ім'я, яке прив'язується до вашого IP. Отримати його можна на http://no-ip.com Зареєструйтесь, отримайте ім'я, скачайте програму, яка стоятиме у вас на комп'ютері, відстежуватиме зміну вашого IP і відправлятиме його серверу (no-ip.com) щоб він приліплював DNS (наприклад, yourname.no-ip.com) з кожною зміною вашого IP.
Це дуже зручно, якщо ви збираєтеся ставити сервер на комп'ютері, у якого IP, що динамічно змінюється. Тоді ви замість IP в настройках емулятора напишіть свій день:
// Login Server IP login_ip: servername.no-ip.com // Login Server Port login_port: 6900
Що таке MD5? Це система кодування. Вона кодує так, що розкодувати неможливо. Саме таким чином шифхують паролі користувачів у базах. Мається на увазі, що навіть якщо зловмисник дістанеться бази, він отримає замість пароля приблизно таке: 38d7355701b6f3760ee49852904319c1
Як це діє? З цієї карляки вже не дістанеш нічого. Можна її лише порівняти з іншою корлякою, на яку скрипт перетворює пароль, введений при логіні користувача. І якщо вони збігаються - значить користувач увів правильнийпароль.
Ось приклад: "athena"-md5> "0454aa97682235df3ed1a3456bc86e62"
Якщо ви не полінуєтеся, раджу зробити такий захист для паролів на своєму сервері.
//Passwords in Login DB are MD5 - cannot b used on client with this on use_MD5_passwords: yes (поставте yes)
По-друге, відкрийте знову базу. Натисніть знову на символ SQL (це той, за допомогою якого ми запускали скрипти і встановлювали дані). І у вікні наберіть таке:
UPDATE `login` SET `user_pass` = MD5 (`user_pass`);
Після цього запустіть.
Все наш сервер тепер більш захищений, ніж раніше.
Не забудьте змінити пароль у базі даних: User Administration -> ragnarok@localhost -> Password = Apply, Close.
login_server_pw: char_server_pw: map_server_pw: