Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Creating a ragnarok eathena server

Joined
Jul 8, 2005
Messages
3,167
Reaction score
515
This guides target users:
eAthena: svn 48xx and up

What this guide will include:

A: Pre-installation things to do and other info
1. Differences between a SQL Server and a TXT Server
2. Download eAthena
3. Download MySQL
4. Download MySQL Admin
5. Download MySQL Query Browser
6. Getting all the information you will need
B: Setting up eAthena
1. What files you will need to locate for editing
2. Editing char_athena
3. Editing login_athena
4. Editing map_athena
5. Editing lan_support
6. Editing Sclientinfo.xml
C: Installing and Setting up MySQL
D: Installing MySQL Administrator & MySQL Query Browser
E: Setting up MySQL Admin
F: Setting up MySQL Query Browser
G: Post-setup things to do
1. Setting up No-ip (optional)
2. Diffing a Client
3. Getting GRF Factory
4. Getting a Data Folder
H: MySql server modifications and customisations
1. Enabling Mob Databases, Item Databases, and Mail Database
2. Changing the Ragnarok Database to another name
3. Make fields accept larger numbers
I: Trouble Shooting
J: Guide Version

A. Pre-installation things to do

1. The Differences between a SQL Server and a TXT Server:

I decided to add this since i have been getting lots of pms about simple things that are different in SQL then in TXT lol. So here we go.

So, you wanna know what the difference is? Well there really isnt too much different from a txt server and a SQL server. The main difference is that SQL makes it easier to edit. Sql also only uses only the account and guild aspects, in other words, it only deals with guilds, login names and passwords, characters, and ip bans. This also means that you will make your GM's through MySQL Query Browser. See the level coloum in there, well you put your gm's level in there. Also, but im not sure how to make eathna do it, your athena server can read the mob and item data base from SQL, please dont send me any pms asking how to, cuz i really dont know lol. And thats where the differences stop im afraid, except for the ease of backing up your databases. (see Section I for more SQL customisations).

2. Download eAthena

Where to download eAthena SQL:
You may locate the newest versions of eAthena in here:

You will also need to download the .dll files (can be located on the same page as the svn download).

3. Download MySQL
4. Download MySQL Administrator
5. Download MySQL Query Browser

Now, in these next screen shots, anywhere that is circled is where you can click to take you to the next area which is displayed in the next screen shot.

first go to mysql.com then follow these:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

http://i15.photobucket.com/albums/a367/Geowil/mysql005.jpg[.IMG]
See the other stuff I have circled? Well you will need to download those also
[IMG]http://i15.photobucket.com/albums/a367/Geowil/mysql06.jpg

Ok, make sure that you download these 3 programs into a folder for easy finding (the MySQL setup is called Setup...pretty vague huh?)

now, go back a few pages to where i had the query browser, and admin circled and download those.


6. Getting all the information that you will need

Now, open your web browser of choice (fire fox for me lol) and type whatsmyip.net in the address bar. You should get a page that looks like this:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

now, where ever I have circled lists your Wan IP, write that down somewhere, you will need it later.

Ok, now open your start menu and click on run and type in cmd (type in command if your using windows 98) and the command line interface (CLI) should come up. If it doesn’t, see Section H for troubleshooting. Now, in the CLI type ipconfig/all. something looking like this should appear:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


again, in the places I have circled, write down those address' and be sure to lable what they all are.


B. Setting up eAthena

1. What files you will need to locate for editing

Now, once you have eAthena on your computer, and all the proper information you will need to go into the folder named conf and locate and open these txt files:
char_athena
login_athena (optional) (if your using version 48xx (i think) or higher then you wont need to open this)
map_athena
lan_support

change anything thats in bold

2. Editing char_athena

Ok, now bring char_athena to the front.
before we continue, please make these corrections in your own txt file, do not copy paste.

// Athena Character configuration file.

// Server Communication username and password.
userid: s1 change this to ragnarok
passwd: p1 change this to ragnarok

// Server name, use alternative character such as ASCII 160 for spaces.
server_name: eAthena change to your server name

// Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)
wisp_server_name: Server

// Login Server IP
// The character server connects to the login server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
login_ip: Lan IP

// The character server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Login Server Port
login_port: 6900

// Character Server IP
// The character server exports this IP address to the entire world.
// NOTE: You should only need to set this if you are running behind a
// firewall or are on a machine with multiple interfaces.
char_ip: Wan IP or No-ip (see end of guide for information on getting a no-ip account)

// Character Server Port
char_port: 6121

and save then close

3. Editing login_athena

Bring your login_athena to the front now:
// Athena Login Server configuration file.
// Translated by Peter Kieser <pfak@telus.net>

login_ip: Wan IP or No-ip

// The login server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Login Server Port
login_port: 6900

again, save and close

4. Editing map_athena

Bring map_athena to the front:
//--------------------------------------------------------------
// Configuration Info
//--------------------------------------------------------------
// Interserver communication passwords, set in account.txt (or equiv.)
userid: s1 change to ragnarok
passwd: p1 change to ragnarok

// Character Server IP
// The map server connects to the character server using this IP address.
// NOTE: This is useful when you are running behind a firewall or are on
// a machine with multiple interfaces.
char_ip: Lan IP

// The map server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1

// Character Server Port
char_port: 6121

// Map Server IP
// The map server exports this IP address to the entire world.
// NOTE: You should only need to set this if you are running behind a
// firewall or are on a machine with multiple interfaces.
map_ip: Wan IP or No-ip

// Map Server Port
map_port: 5121

save and close

5. Editing Subnet_Athena

Now, last is Subnet_Athena:
// Subnet support file
// Format is:
// subnet: subnet-subnet mask:char_ip:map_ip
// you can add more than one that line

subnet: put the address you have written down as your Default Gateway: here-put what you have written down as your Subnet Mask: here:Lan IP:Lan IP

save and close

6. Editing the Sclientinfo.xml

Now, download this (it goes into your grf or data folder)

once you have it downloaded refer to this to set it up:

right click on it and select edit from that menu then again change anything that’s in bold

<?xml version="1.0" encoding="euc-kr" ?>

<clientinfo>

<desc>Ragnarok Client Information - Taiwan Version</desc>

<servicetype>korea</servicetype>
<servertype>sakray</servertype>

<connection>
<display>put the name of your server here</display>
<desc></desc>
<address>*~!~see note 1~!~*</address>
<port>6900</port>
<version>20</version>
<langtype>07</langtype>
<registrationweb>Athena</registrationweb>
<aid>
<admin>you can put the account Id's of your GMs here<admin>
</aid>
</connection>
</clientinfo>

Note 1: In the one that you are using put your Lan IP but in the one you give to your other players put your Wan IP or No-ip here.

whew, that’s a lot of typing lol, and were only half done!!!!!!
alright, take a break or a breather then we will go into the next stage...installing My
SQL and its assistant programs.

This is the end of part one.
 
Last edited:
Joined
Jul 8, 2005
Messages
3,167
Reaction score
515
Well, welcome to part 2 outa i unno XD i hope only 2 but....lol.

aight, so we had just finished up getting the conf files set up and are now moving on to setting up Mysql and its assistant progs.

C: Setting up MySQL

Alright so here we are finally lol, again, I will be using screens to help you along. also I will be adding text under some, of them to better help you understand lol. Again, if you encounter an error go to Section H of this guide.

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

click next

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

select your preferred installation (i usually use complete)

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

click install

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

click to skip the sign-up and make sure the checkbox on the next page is checked and click finish.

now, you'll get another section of windows to come up, so you know what that means, yep, more screens

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

choose Standard Configuration and then click next
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

Note 2: You can use the default or click the drop down menu and use one of those.
Note 3: Make sure this box is unchecked!!!
If you get an error here please see the bottom of the guide.

D: Installing MySQL Administrator & MySQL Query Browser

Fairly easy step here. Just run the install programs for these 2, click to accept the License Agreement and click next then click install.

E: Setting up MySQL Administrator

Now this is a little more complicated. Once you install MySQL Admin run it, when the screen pops up in the Server Host box put localhost, in the user name box put root, then hit enter.
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


click on User Administration
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


then on root. (note 4) Now, put ragnarok in those circled boxes and click on apply changes , then click on new user and type ragnarok in all three boxes and then apply changes.
and your done for this moment with MySQL Admin.
 
Joined
Jul 8, 2005
Messages
3,167
Reaction score
515
blah, well, were gonna have 4 parts then LOL. So lets continue

<span style='font-size:14pt;line-height:100%'>F: Setting up MySQL Query Browser</span>

This is slightly harder. Just so you know, if you receive any errors ignore them; they are to be expected lol. So now, run Query browser and this time in the password field you will need to put ragnarok. Hit enter then follow these:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


right click in the upper right section and select create new schema from that list
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


then repeat steps 1-2 but call this second one "log"
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


now, make sure you have "ragnarok" selected, then click on file, open script, then browse to your sql-files folder. In there you will see a bunch of files. For now, just open main. now, again, make sure that ragnarok is selected, then press the green execute button at the top right hand side of your screen.

Now that you have done this open the ragnarok schema and locate the login table. double click this to open it. So we now only have one account in the login table which we need to now edit. What you see in this next screen should be what you have in that first account:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


This will allow an account for your servers to connect to. Now click on the apply changes button and exit Query Browser.

We have one more thing to do before we move on to the next section though. Reopen MySQL Admin and put in ragnarok for the password. Now, again click on user administration, and then on ragnarok. Now, follow these screens:

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums

Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


Now, click on ragnarok, and then see the << button? Click that, then do the same for log and then press apply changes, close MySQL Admin and you are done. You server is almost ready for use.
 
Joined
Jul 8, 2005
Messages
3,167
Reaction score
515
LOL, sorry for the length of this guide, but for some reason you can only post 8 images in one post XD. So, arrived at part 4 , we have.

G: Post-Setup things to do

1. No-ip Account
This allows you to be able to update your Wan IP if it changes.

open your browser and go to

then follow these screens, again, circles indicate options you should pick or links you should click.
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


click on here to signup (its free), then fill out the info that it wants, go to your email and click the activation link
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


then once your logged in, click this link in the left hand menu
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


fill out the info on this page, but make sure you click the DNS Host (A), and keep no-ip.info in that drop down menu.
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums


once you finish you need to download their program, so click on that link, then on the windows button and follow the next screen:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums



install it and you are done.

2. Diffing a Client

You can find the latest diff here:


Once you download what you need, run Diff.exe. When the window opens, in the top box, you will put the file with the .diff extention, and in the second will go the Sakexe. then click the next (or diff button) and you will see a list. Sould be selfexplanitory from there, you can ctrl + click on any options that you want then add then using the > arrow, also, if your are running an online server, you will need to use the option 'DNS Support'. Once you are done selecting options, click 'make patch' and your done. make sure you give this to all of your places as well.

3. Getting GRF Factory

You may download GRF factory from here:

4. Getting a Data Folder

This part is kinda easy. If you have Kro and Sakrasy installed (which you will need to) open Grf Factory, click on open and browse to your RO folder, find your sdata.grf and open it. Once its done loading into GRF Factory do the same for the data.grf, now once thats done loading click on extract all. This will make you a data folder. Now, once its done, You can either edit the sclient info thats in there, or you can just replace it with the one you already set up. Next, install the Translation pack (this can be found here ) then google for gryff_s, download the full program, and run it, select to add a folder, browse to the data folder you created and click on save to turn it into a grf. You will have to make 2 one, for you and any players on you LAN, and one for your WAN players.


H: MySQL Customizations and Modifications

So, I decided to add this in for a little more infomation about MySql and how you can customize it.

1: Enabling Mob Databases, Item Databases, and Mail Database

All of these can be set in Inter_Athena.conf


//Use SQL item_db and mob_db for the map server
use_sql_db: no

// Use SQL Mail Server
mail_server_enable: no


these options are set to no by default. Just change them to yes then restart your map server. You will need to update the mob and item db tables as needed for new items and monsters.

2: Changing the Ragnarok Database to another name

Look into your inter_athena.conf once again and find this section:

// 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

// 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: ragnarok

// MySQL Mail SQL Server
mail_server_ip: 127.0.0.1
mail_server_port: 3306
mail_server_id: ragnarok
mail_server_pw: ragnarok
mail_server_db: ragnarok

All you need to do is change the last lines (lines colored blue) in all of these to a new name. Make sure that your database in MySql is named exactly the same, or it wont read it.

Also, if your MySql databases are on a different computer then your server, you can change *****_server_ip: xxx.xxx.xxx.xxx (colored green) to the server computer's address (Wan Address if it isnt on your Local Area Network; Lan address if it is.)

3: Making fields accept larger numbers

So, you want to have a monster be level 200 but MySQL wont let you use that number. This is because who ever made the Sql tables for Eathena thought that 200 was over-sufficiant. So, I will tell you how to rectify this error. Go to the table you want to change something in, right click it, then click on edit table and you should see a window like this:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums



now, the circled coloum here is for your Coloum names:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums



this one determines how large a number or what type of data can be placed in the cells corrisponding with the coloum:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums



so now, we want to increase the largeness(?) of the number for the level coloum in Mob_db. So right click it and click on edit table. Find this row:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums



and change it to this then click accept changes:
Kurt - Creating a ragnarok eathena server - RaGEZONE Forums



now you should be able to place the number 200 into the level cells.


I: Troubleshooting

So, you have a problem do you, well refer to this section for help:

Q: My command line interface wont open when i type cmd/command into the run box, what do I do?

A: Reinstall, or repair, your copy of windows. Your missing some .dll files and system files also probably.

Q: When I go to configure the MySQL service it gives me an error when I click on execute. In the explanation it says error: 0. What’s up with this?

A: This means that you have a service (remember that drop down menu?) already running by that name. There are 2 ways to fix this.

1. Click back, and select a new service name from the drop down list

OR

2. Press start, click run, type cmd in, then type this:

sc delete MySQL (or type any of these after the MySQL part: 4, 41,5,501,51)

Now rerun the MySQL Instance Config Wizard and try again.

Q: When I got to configure the MySQL service it gives me an error when I click on execute. In the explanation it says a error number other then 0. What’s up with this?

A: This means that you need to uninstall MySQL 5 (also uninstall any older versions of MYSQL (including non-install version)), restart your computer then reinstall MySQL 5 and it should work.

Q: When I go to access MySQL Admin I get an error that’s has the number 2003 in the error explanation. How do I fix this?

A: This means that MySQL Admin can not access your MySQL service, which means you will either have to reinstall or make sure that MySQL its running. (To find out, press ctrl + alt + delete to open the windows task manager, click the possesses tab and look for mysqld-nt. If it’s not listed then right click on start, then click on explore. Browse to your mysql folder, open the MySQL 5 folder, then open the bin folder and find mysqld-nt and run it then try to access MySQL admin again).

Also, make sure that if you have a firewall on your comp, on or not, to make the mysqld-nt, char server, login server, map-server, and run-server sql are all allowed programs.

Q: I am getting a message in red in my Char Server that says that the inter-server passwords arent working, what do I do?

A: This means that you either didnt set the password in char_athena and map_athena, didnt do it corecctly, or have not set up an account for yoour server.

Q: I am getting a message in purple in my Map Server that says that the Sql Database could not be connected to.

A: This also means that you do not have an account setup for your Server in your MySql Query Browser login Table.

If you get any other errors then these, please Pm me or contact me on my msn or through my email

Also, if you are getting a "Can not connect to Localhost" message, and you have Zonealarm installed, turn on zonealarm and click on approve to let the progs be used.

Email: geowil11@gmail.com



J: Guide Version:

This guides version is: 2.6
Changes made thus far:

V1.1:
Corrected some typos

V1.2:
Reworded a few areas

V1.3:
Added in 2 sections; 1 for Diff, 1 for a full data folder.

V1.4:
fixed some more typos, added in more info for fixing an error.

V1.5:
added more troubleshooting info.

V1.6:
fixed the loging into MySql Administrator part, did not realize that it didnt put the server host and user name on a new install XD, so thats fixed now.

V1.7:
redid a section, updated links to fit with the new board... lol and added a lil bit more to the troubleshooting section.

V1.8:
fixed a few more links.

V1.9:
added new section into the first post.

V2.0:
Made the Troubleshooting section a little more readably by bolding the Q's and A's, fixed a typo in the 'getting a data folder' section.

V2.1:
Re-did a screen shot in the mysql section. [credit to Shuyinalarcenciel]

V2.2:
Updated to accomadate for Lan_Support replacement file Subnet_Athena.

V2.3:
Fixed a broken link to the Sclientinfo file. [credit to Zaraith]

V2.4:
Updated to new Subnet_Athena format once again. ( all that changed was / to - between the subnet and subnet Mask).

V2.5:
Big update this time. Added in a new section for MySQL modifications and customizations, corrrected some typos, and changed some info.

V2.6:
Changed the download link in the First section for 'Downloading Eathena', since Seventh hansnt made any new versions since 5xxx X.X I instead made a link to the sub forums for the Compilation releases.

Well that’s it, this monster is done. I hope that all you people out there benefit from this guide

All credits to Geowil, And if you get an error in the eathena you may have to register.

source:
 
Newbie Spellweaver
Joined
Jul 21, 2011
Messages
7
Reaction score
0
Quote:
// 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

// 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: ragnarok

// MySQL Mail SQL Server
mail_server_ip: 127.0.0.1
mail_server_port: 3306
mail_server_id: ragnarok
mail_server_pw: ragnarok
mail_server_db: ragnarok

----------------------------------------

i have a question..
if my lan ip is 192.168.X.X..

Will this work if I replace the "127.0.0.1" to my lan ip or wan ip?
thnx for answer.. anyway.. Good job.. very nice tutorial.. :)
 
Last edited:
Newbie Spellweaver
Joined
Sep 21, 2008
Messages
5
Reaction score
0
how will other players register to this server? I think you've missed the part for the CP?
 
Newbie Spellweaver
Joined
Mar 1, 2011
Messages
94
Reaction score
25
Setting up a control panel is a different part, this is how to create a ragnarok server. You can allow players to use username_M/_F for registration in-game.
 
Initiate Mage
Joined
Mar 27, 2013
Messages
1
Reaction score
0
Ok, I'm kinda noob at all this... I just need help connecting to my server, I've got it fully functional, it just can't seem to connect to it for the life of me... No one really explains how to do so, maybe its cuz its easy as hell and I'm just stupid... I've edited my sclientinfo, I've clicked on everything I could think to try... can someone please help
 
Initiate Mage
Joined
Apr 1, 2013
Messages
1
Reaction score
0
Bro in the PART of
[h=2]Re: Creating a ragnarok eathena server[/h]you did not make the > log < Scheam can you fix the guide cos i'm stuck Thanks
 
Initiate Mage
Joined
Apr 17, 2013
Messages
1
Reaction score
0
Bro in the PART of
Re: Creating a ragnarok eathena server

you did not make the > log < Scheam can you fix the guide cos i'm stuck Thanks


bro. all you have to do is to create a new schema name log. then open the log.sql. its in the same folder with the main.sql

Dude. wheres your hexed client?
 
Custom Title Activated
Loyal Member
Joined
Mar 24, 2011
Messages
1,632
Reaction score
145
this is good guide and complete
 
Newbie Spellweaver
Joined
Nov 24, 2013
Messages
47
Reaction score
3
Well no more eAthena Nowadays only
 
Newbie Spellweaver
Joined
Feb 8, 2014
Messages
51
Reaction score
0
other download links are dead like diff patcher
 
Back
Top