Автор: Sonic: Дата: 10.21.2008
Что нужно:
MySQL.
MySQL Control Center.
ищите в google.
Установка:
Разархивируйте 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
('0','s1','p1','0000-00-00 00:00:00','S','0','','0','0','0','0','0','0','0')
И запустите. (не знабывайте смотреть на строку состояния, находящуюся снизу. Она может нам о многом сказать, особенно, обилуя красными значками - это значит, что что-то выполнено неправильно)
Если все прошло хорошо, можно приступить к настройке эмулятора. Только перед этим нам надо создать "пользователя" для базы данных, чтобы эмулятор имел к ней доступ.
Выходим к полю, где мы создавали базы. Находим снизу раздел под названием "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: used to send wisp from 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 (так и оставить)
закрываем файл - сохраняем.
Открываем conf/inter_athena.conf
// MySQL Login SQL Server
login_server_ip: 127.0.0.1 (так и оставить)
login_server_port: 3306 (так и оставить)
login_server_id: ragnarok (наше имя в базе - есть)
login_server_pw: ragnarok (наш пароль в базе - если поменять в базе на другой, то поменять и здесь)
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 ( ... )
Вот. Надеюсь, тут понятно все.
Открываем conf/grf-files.txt
Указываем там полные пути наших grf файлов клиента.
Закрываем, сохраняем.
Открываем conf/motd.txt
Пишем приветствие при задоде в игру.
Еще полчасика лазим по conf/battle_athena.conf и настраиваем сервак. Полный перевод всему, что там есть я не осмелюсь, но думаю, что это может сделать (или уже сделал!) кто-то другой.
DNS
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 Security
Что такое MD5 ? Это система кодирования. Она кодирует так, что раскодировать уже невозможно. Именно таким образом шыфхуют пароли пользователей в базах. Имеется в виду, что даже если злоумышленник доберется до базы, он получит вместо пароля примерно такое: 38d7355701b6f3760ee49852904319c1
Как это действует.
Из этой карляки уже не достанешь ничего. Можно ее только сравнить с другой корлякой, в которую скрипт превращает пароль, введеный при логине пользователя. И если они совпадают - значит пользователь ввел правильный пароль.
Вот пример: "athena" -md5> "0454aa97682235df3ed1a3456bc86e62"
Если вы не поленитесь, советую сделать такую защиту для паролей на своем сервере.
Как это сделать...
Во первых, запустите в текстовом редакторе файл conf/login_athena.conf и найдите строчку:
//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.
conf/inter_athena.conf :
login_server_pw:
char_server_pw:
map_server_pw:
Автор: : Дата: 01.01.1970