#ifndef PACKETVER
- #define PACKETVER 20110609
-
Edit this Part, put:
-#define PACKETVER YOURCLIENTDATE
+
+ #define PACKETVER YOURCLIENTDATE
So if my client was 2011-10-25aRagexeRE it would look like:
-#define PACKETVER 20111025
-[[Category:Configuration]]
+ #define PACKETVER 20111025
+
+[Category:Configuration](Category:Configuration "wikilink")
diff --git a/docs/setup/git-clone-unix.md b/docs/setup/git-clone-unix.md
index ec2df5e..94a3401 100644
--- a/docs/setup/git-clone-unix.md
+++ b/docs/setup/git-clone-unix.md
@@ -1,3 +1,5 @@
Type the following to create a Hercules working copy in your home (~) directory
- git clone https://github.com/HerculesWS/Hercules.git ~/Hercules
-[[Category:Installation]]
\ No newline at end of file
+
+` git clone `[`https://github.com/HerculesWS/Hercules.git`](https://github.com/HerculesWS/Hercules.git)` ~/Hercules`
+
+[Category:Installation](Category:Installation "wikilink")
diff --git a/docs/setup/git-clone.md b/docs/setup/git-clone.md
index 18a96c7..dab4a87 100644
--- a/docs/setup/git-clone.md
+++ b/docs/setup/git-clone.md
@@ -1,12 +1,18 @@
-To download Hercules, you need to perform a '''clone''' from [[wikipedia:Git|Git]] (Git) repository. Checking out from a repository creates a working copy of it on your local machine.
+To download Hercules, you need to perform a **clone** from [Git](wikipedia:Git "wikilink") (Git) repository. Checking
+out from a repository creates a working copy of it on your local machine.
A Git is required to perform a clone. Recommended applications are:
-* [http://git-scm.com/ git] for Unix systems
-* [http://code.google.com/p/msysgit/downloads/list?can=2 MSysGit] And [http://code.google.com/p/tortoisegit/wiki/Download?tm=2 TortoiseGit] for Windows systems (Both Required
-== Unix ==
-''For detailed instructions on how to install subversion, please refer to OS specific [[:Category:Installation Guides|installation guides]].''
-{{:Git Clone/Unix}}
+- [git](http://git-scm.com/) for Unix systems
+- [MSysGit](http://code.google.com/p/msysgit/downloads/list?can=2) And
+ [TortoiseGit](http://code.google.com/p/tortoisegit/wiki/Download?tm=2) for Windows systems (Both Required
-== Windows ==
-Check [https://herc.ws/board/topic/152-obtaining-hercules/?p=845#entry845 Obtaining Hercules] for info on how to clone in windows
\ No newline at end of file
+## Unix
+
+> *For detailed instructions on how to install subversion, please refer to OS specific [installation
+> guides](:Category:Installation_Guides "wikilink").*
+
+## Windows
+
+Check [Obtaining Hercules](https://herc.ws/board/topic/152-obtaining-hercules/?p=845#entry845) for info on how to clone
+in windows
diff --git a/docs/setup/import-folder.md b/docs/setup/import-folder.md
index 4c895b7..5c25802 100644
--- a/docs/setup/import-folder.md
+++ b/docs/setup/import-folder.md
@@ -1,82 +1,107 @@
-{{outdated}}
-
-=Import folder Introduction=
-The Import Folder is used to import virtually all of your configuration changes and settings into the core of the Hercules emulator without ever making changes to any .conf files after it is initially configured. This is very helpful when Creating a New Server Build, Compiling , or Updating to the Latest version this will allow retention of all the settings you previously configured without having to deal with possible overwrite conflicts from a git pull or change over to a New Server Build.
-
-=How it works=
-So, It works as such; Once you have configured all of the files you wish to configure within the Conf directory of your server side you will take those same settings and copy them to the corresponding import directory files. For Example: Lets say you make the following changes to;
-
-'''conf/battle/client.conf''' ---> Make your desired changes, in this case we are changing hair and dye settings.
- // Valid range of dyes and styles on the client.
- min_hair_style: 0
- max_hair_style: 27 ----> Changing to 40
- min_hair_color: 0
- max_hair_color: 8 ----> Changing to 200
- min_cloth_color: 0
- max_cloth_color: 4 ----> Changing to 100
-
-'''conf/battle/client.conf''' ---> We then simply copy only the changed setting lines into ---> conf/import/client_conf.txt
-
- max_hair_style: 40
- max_hair_color: 200
- max_cloth_color: 100
-
-Since these three settings were the only ones we changed in this example these are the only configuration lines to copy from the .conf file into the corresponding import.txt file. This will now allow the server to directly import these changed settings. This can be done with any of the configuration files. The server reads .confs files within the conf directory first, however any settings configured within the /import/ folder will be read second, thus overwriting default settings. Please note over time settings have changed, so please compare Import.txt Files to any New Server Configuration Settings.
-
-=Commonly Imported Settings=
-
-The most common use of these files is for the following parameters:
-'''/conf/login_athena.conf''' -> /conf/import/login_conf.txt
- login_port: 6900
- account.engine: auto
- account.sql.db_hostname: 127.0.0.1
- account.sql.db_port: 3306
- account.sql.db_username: ragnarok
- account.sql.db_password: ragnarok
- account.sql.db_database: ragnarok
-
-'''/conf/char_athena.conf''' -> /conf/import/char_conf.txt
- userid: s1
- passwd: p1
- server_name: Hercules
- login_port: 6900
- char_ip: 127.0.0.1
- char_port: 6121
- start_point: new_1-1,53,111
-
-'''/conf/map_athena.conf''' -> /conf/import/map_conf.txt
- userid: s1
- passwd: p1
- char_ip: 127.0.0.1
- char_port: 6121
- map_ip: 127.0.0.1
- map_port: 5121
-
-'''/conf/inter_athena.conf''' -> /conf/import/inter_conf.txt
- sql.db_hostname: 127.0.0.1
- sql.db_port: 3306
- sql.db_username: ragnarok
- sql.db_password: ragnarok
- sql.db_database: ragnarok
- char_server_ip: 127.0.0.1
- char_server_port: 3306
- char_server_id: ragnarok
- char_server_pw: ragnarok
- char_server_db: ragnarok
- map_server_ip: 127.0.0.1
- map_server_port: 3306
- map_server_id: ragnarok
- map_server_pw: ragnarok
- map_server_db: ragnarok
- log_db_ip: 127.0.0.1
- log_db_port: 3306
- log_db_id: ragnarok
- log_db_pw: ragnarok
- log_db_db: ragnarok
- log_login_db: loginlog
- use_sql_db: no
-
-=Conclusion=
-The Import Folder is a powerful tool and is often overlooked by amateur developers, but it saves a lot of time and effort it is highly recommended to use. The import.txt files can be saved and used in any new build, just ensure you double check the pathways and corresponding configuration settings. The import folder is often incomplete or blank when downloading latest revisions, you will have to add the necessary files or overwrite the blank template files.
-
-[[Category:Configuration]]
\ No newline at end of file
+!!! warning
+ This page may contain outdated information, incompatible with the current version of Hercules and its coding standards.
+
+
+# Import folder Introduction
+
+The Import Folder is used to import virtually all of your configuration changes and settings into the core of the
+Hercules emulator without ever making changes to any .conf files after it is initially configured. This is very helpful
+when Creating a New Server Build, Compiling , or Updating to the Latest version this will allow retention of all the
+settings you previously configured without having to deal with possible overwrite conflicts from a git pull or change
+over to a New Server Build.
+
+# How it works
+
+So, It works as such; Once you have configured all of the files you wish to configure within the Conf directory of your
+server side you will take those same settings and copy them to the corresponding import directory files. For Example:
+Lets say you make the following changes to;
+
+**conf/battle/client.conf** ---\> Make your desired changes, in this case we are changing hair and dye settings.
+
+`// Valid range of dyes and styles on the client.`
+`min_hair_style: 0`
+`max_hair_style: 27 ----> Changing to 40`
+`min_hair_color: 0`
+`max_hair_color: 8 ----> Changing to 200`
+`min_cloth_color: 0 `
+`max_cloth_color: 4 ----> Changing to 100`
+
+**conf/battle/client.conf** ---\> We then simply copy only the changed setting lines into ---\>
+conf/import/client_conf.txt
+
+`max_hair_style: 40`
+`max_hair_color: 200`
+`max_cloth_color: 100`
+
+Since these three settings were the only ones we changed in this example these are the only configuration lines to copy
+from the .conf file into the corresponding import.txt file. This will now allow the server to directly import these
+changed settings. This can be done with any of the configuration files. The server reads .confs files within the conf
+directory first, however any settings configured within the /import/ folder will be read second, thus overwriting
+default settings. Please note over time settings have changed, so please compare Import.txt Files to any New Server
+Configuration Settings.
+
+# Commonly Imported Settings
+
+The most common use of these files is for the following parameters:
+**/conf/login_athena.conf** -\> /conf/import/login_conf.txt
+
+`login_port: 6900`
+`account.engine: auto`
+`account.sql.db_hostname: 127.0.0.1`
+`account.sql.db_port: 3306`
+`account.sql.db_username: ragnarok`
+`account.sql.db_password: ragnarok`
+`account.sql.db_database: ragnarok`
+
+**/conf/char_athena.conf** -\> /conf/import/char_conf.txt
+
+`userid: s1`
+`passwd: p1`
+`server_name: Hercules`
+`login_port: 6900`
+`char_ip: 127.0.0.1`
+`char_port: 6121`
+`start_point: new_1-1,53,111`
+
+**/conf/map_athena.conf** -\> /conf/import/map_conf.txt
+
+`userid: s1`
+`passwd: p1`
+`char_ip: 127.0.0.1`
+`char_port: 6121`
+`map_ip: 127.0.0.1`
+`map_port: 5121`
+
+**/conf/inter_athena.conf** -\> /conf/import/inter_conf.txt
+
+`sql.db_hostname: 127.0.0.1`
+`sql.db_port: 3306`
+`sql.db_username: ragnarok`
+`sql.db_password: ragnarok`
+`sql.db_database: ragnarok`
+`char_server_ip: 127.0.0.1`
+`char_server_port: 3306`
+`char_server_id: ragnarok`
+`char_server_pw: ragnarok`
+`char_server_db: ragnarok`
+`map_server_ip: 127.0.0.1`
+`map_server_port: 3306`
+`map_server_id: ragnarok`
+`map_server_pw: ragnarok`
+`map_server_db: ragnarok`
+`log_db_ip: 127.0.0.1`
+`log_db_port: 3306`
+`log_db_id: ragnarok`
+`log_db_pw: ragnarok`
+`log_db_db: ragnarok`
+`log_login_db: loginlog`
+`use_sql_db: no`
+
+# Conclusion
+
+The Import Folder is a powerful tool and is often overlooked by amateur developers, but it saves a lot of time and
+effort it is highly recommended to use. The import.txt files can be saved and used in any new build, just ensure you
+double check the pathways and corresponding configuration settings. The import folder is often incomplete or blank when
+downloading latest revisions, you will have to add the necessary files or overwrite the blank template files.
+
+[Category:Configuration](Category:Configuration "wikilink")
diff --git a/docs/setup/index.md b/docs/setup/index.md
index 9e4b245..0d41dbc 100644
--- a/docs/setup/index.md
+++ b/docs/setup/index.md
@@ -1,8 +1,9 @@
# Setup guides
This category contains complete, detailed Hercules installation guides for various operating systems and software.
-[[Category:Installation]]
-Temporary:
-For instructions on how to install on Linux, please refer to the following forum post by Ind, https://herc.ws/board/topic/105-regarding-github/
+Temporary: For instructions on how to install on Linux, please refer to the following forum post by Ind,
+
- Please note, if your Linux does not have "apt-get", you may need to use "yum install" instead.
+`Please note, if your Linux does not have "apt-get", you may need to use "yum install" instead.`
+
+[Category:Installation](Category:Installation "wikilink")
diff --git a/docs/setup/installation-centos.md b/docs/setup/installation-centos.md
index ff79de9..a1f6cda 100644
--- a/docs/setup/installation-centos.md
+++ b/docs/setup/installation-centos.md
@@ -1,127 +1,196 @@
# Installation (CentOS)
-This guide covers how to install [[Hercules]] on [[wikipedia:CentOS|CentOS]] and other [[wikipedia:List_of_Linux_distributions#RPM-based|versions of Linux]] that use [[wikipedia:Yellowdog_Updater,_Modified|yum]].
-
-== Requirements ==
-* [[wikipedia:CentOS|CentOS]] or an [[wikipedia:List_of_Linux_distributions#RPM-based|RPM-based Linux]] that has the '''[[wikipedia:Yellowdog_Updater,_Modified|yum]]''' command
-* root access or access to an account that has [[wikipedia:Sudo|sudo privileges]]
-* an Internet connection to download install packages
-
-
-== Prerequisites ==
-All of these commands will be typed at the [[wikipedia:Command-line_interface|command-line interface]].
-=== Install Prerequisites ===
-# Login to your server via [[wikipedia:Secure_Shell|SSH]], or if you are already logged into a [[wikipedia:Graphical_user_interface|GUI]] press Ctrl+Alt+T to open a terminal window.
-# Type the following command (this will install GCC, Make, MySQL, MySQL header files, MySQL Server, PCRE header files, Git, and Zlib header files)
-#: yum install gcc make mysql mysql-devel mysql-server pcre-devel git zlib-devel
-# (Optional) type the following command to install some additional packages:
-#: yum -y install dos2unix gdb nano screen unzip wget zip
-
-=== Create a non-root Linux user ===
-By the [[wikipedia:Principle_of_least_privilege|principle of least privilege]], it is recommended you do '''NOT''' run Hercules as root.
-# Type the following command to create a non-root Linux account:
-#: useradd --create-home --shell /bin/bash hercules1234
-#: --create-home
= create the user's home directory
-#: --shell
= sets their login shell to [[wikipedia:Bash_(Unix_shell)|Bash]]
-#: '''hercules1234
''' = the login name of the new Linux account
-#: ''1234
'' = pick your own random numbers to make the username more unique
-# Set a password for the new user (run this command and follow the prompts):
-#: passwd hercules1234
-
-=== Configure MySQL ===
-
-==== Set a root password ====
-The default MySQL Server install creates a MySQL user 'root'@'localhost' with NO password. It is recommended you create a password for the root user.
-# Run this command and follow the prompts:
-#: First Start MySQL:
-#: /etc/init.d/mysqld start
-#: Then configure MySQL by:
-#: mysql_secure_installation
-# Login to your MySQL Server as root:
-#: ''When prompted, enter your root MySQL password.''
-#: mysql --user=root -p
-# Now your prompt should look like this (the MySQL command prompt):
-#: mysql>
-
-==== Create SQL database for Hercules ====
-# At the MySQL prompt, type this to [http://dev.mysql.com/doc/refman/5.5/en/create-database.html create a database] (replace hercules1234
with the Linux username you created earlier):
-#: mysql> CREATE DATABASE hercules1234_rag;
-# Create a separate database for logs:
-#: mysql> CREATE DATABASE hercules1234_log;
-
-==== Setup a MySQL user for Hercules ====
-# At the MySQL prompt, type something like this to create a new MySQL user:
-#: mysql> CREATE USER 'hercules1234'@'localhost' IDENTIFIED BY 'secretpassword';
-#: hercules1234
= the name of the MySQL user (we named it the same as the Linux user to make it easier to identify)
-#: localhost
= the hostname or IP it will connect from
-#: '''secretpassword
''' = the password for this MySQL user
-# [http://dev.mysql.com/doc/refman/5.5/en/grant.html Grant privileges] to the 'hercules' MySQL user:
-#: mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON `hercules1234\_rag`.* TO 'hercules1234'@'localhost';
-#: mysql> GRANT SELECT,INSERT ON `hercules1234\_log`.* TO 'hercules1234'@'localhost';
(note the [http://dev.mysql.com/doc/refman/5.5/en/string-literals.html#character-escape-sequences escaped underscore])
-
-== Install [[Hercules]] ==
-
-=== Login as your non-root Linux user ===
+This guide covers how to install [Hercules](Hercules "wikilink") on [CentOS](wikipedia:CentOS "wikilink") and other
+[versions of Linux](wikipedia:List_of_Linux_distributions#RPM-based "wikilink") that use
+[yum](wikipedia:Yellowdog_Updater,_Modified "wikilink").
+
+## Requirements
+
+- [CentOS](wikipedia:CentOS "wikilink") or an [RPM-based
+ Linux](wikipedia:List_of_Linux_distributions#RPM-based "wikilink") that has the
+ **[yum](wikipedia:Yellowdog_Updater,_Modified "wikilink")** command
+- root access or access to an account that has [sudo privileges](wikipedia:Sudo "wikilink")
+- an Internet connection to download install packages
+
+## Prerequisites
+
+All of these commands will be typed at the [command-line interface](wikipedia:Command-line_interface "wikilink").
+
+### Install Prerequisites
+
+1. Login to your server via [SSH](wikipedia:Secure_Shell "wikilink"), or if you are already logged into a
+ [GUI](wikipedia:Graphical_user_interface "wikilink") press Ctrl+Alt+T to open a terminal window.
+2. Type the following command (this will install GCC, Make, MySQL, MySQL header files, MySQL Server, PCRE header files,
+ Git, and Zlib header files)
+
+ yum install gcc make mysql mysql-devel mysql-server pcre-devel git zlib-devel
+3. (Optional) type the following command to install some additional packages:
+
+ yum -y install dos2unix gdb nano screen unzip wget zip
+
+### Create a non-root Linux user
+
+By the [principle of least privilege](wikipedia:Principle_of_least_privilege "wikilink"), it is recommended you do
+**NOT** run Hercules as root.
+
+1. Type the following command to create a non-root Linux account:
+
+ useradd --create-home --shell /bin/bash hercules1234
+
+ `--create-home` = create the user's home directory
+
+ `--shell` = sets their login shell to [Bash](wikipedia:Bash_(Unix_shell) "wikilink")
+
+ **`hercules1234`** = the login name of the new Linux account
+
+ *`1234`* = pick your own random numbers to make the username more unique
+2. Set a password for the new user (run this command and follow the prompts):
+
+ passwd hercules1234
+
+### Configure MySQL
+
+#### Set a root password
+
+The default MySQL Server install creates a MySQL user 'root'@'localhost' with NO password. It is recommended you create
+a password for the root user.
+
+1. Run this command and follow the prompts:
+
+ First Start MySQL:
+
+ /etc/init.d/mysqld start
+
+ Then configure MySQL by:
+
+ mysql_secure_installation
+2. Login to your MySQL Server as root:
+
+ *When prompted, enter your root MySQL password.*
+
+ mysql --user=root -p
+3. Now your prompt should look like this (the MySQL command prompt):
+
+ mysql>
+
+#### Create SQL database for Hercules
+
+1. At the MySQL prompt, type this to [create a database](http://dev.mysql.com/doc/refman/5.5/en/create-database.html)
+ (replace `hercules1234` with the Linux username you created earlier):
+
+ mysql> CREATE DATABASE hercules1234_rag;
+2. Create a separate database for logs:
+
+ mysql> CREATE DATABASE hercules1234_log;
+
+#### Setup a MySQL user for Hercules
+
+1. At the MySQL prompt, type something like this to create a new MySQL user:
+
+ mysql> CREATE USER 'hercules1234'@'localhost' IDENTIFIED BY 'secretpassword';
+
+ `hercules1234` = the name of the MySQL user (we named it the same as the Linux user to make it easier to identify)
+
+ `localhost` = the hostname or IP it will connect from
+
+ **`secretpassword`** = the password for this MySQL user
+2. [Grant privileges](http://dev.mysql.com/doc/refman/5.5/en/grant.html) to the 'hercules' MySQL user:
+
+ mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON `hercules1234\_rag`.* TO 'hercules1234'@'localhost';
+
+ mysql> GRANT SELECT,INSERT ON `hercules1234\_log`.* TO 'hercules1234'@'localhost';
+
+ (note the [escaped
+ underscore](http://dev.mysql.com/doc/refman/5.5/en/string-literals.html#character-escape-sequences))
+
+## Install [Hercules](Hercules "wikilink")
+
+### Login as your non-root Linux user
+
The rest of the setup is done as hercules1234 (the Linux user you created in step 2.2)
-# Logout from root SSH (or minimize the window).
-# Login to your server via SSH as the hercules1234 Linux user.
-
-=== Git Clone ===
-{{:Git Clone/Unix}}
-
-=== [http://dev.mysql.com/doc/refman/5.5/en/batch-commands.html Import] MySQL Tables ===
-# Change directory to the '''sql-files''' folder.
-#: cd sql-files/
-# Execute these commands:
-#: ''When prompted, enter your MySQL root password.''
-#: mysql -u root -prootpassword hercuser_rodb < main.sql
-#: mysql -u root -prootpassword hercuser_rodblog < logs.sql
-# If your Control Panel software or website requires it, you may also import the item, monster and monster skill databases (not necessary for the correct operation of Hercules)
-#: (pre-renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db.sql
-#: (renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db_re.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db_re.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db_re.sql
-#: (common to renewal and pre-renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db2.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db2.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db2.sql
+
+1. Logout from root SSH (or minimize the window).
+2. Login to your server via SSH as the hercules1234 Linux user.
+
+### Git Clone
+
+### [Import](http://dev.mysql.com/doc/refman/5.5/en/batch-commands.html) MySQL Tables
+
+1. Change directory to the **sql-files** folder.
+
+ cd sql-files/
+2. Execute these commands:
+
+ *When prompted, enter your MySQL root password.*
+
+ mysql -u root -prootpassword hercuser_rodb < main.sql
+
+ mysql -u root -prootpassword hercuser_rodblog < logs.sql
+3. If your Control Panel software or website requires it, you may also import the item, monster and monster skill
+ databases (not necessary for the correct operation of Hercules)
+
+ (pre-renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db.sql
+
+ (renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db_re.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db_re.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db_re.sql
+
+ (common to renewal and pre-renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db2.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db2.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db2.sql
NOTE: if you want to use different SQL DBs for login/char/map servers this is the list of databases each server use:
-#login-server: global_acc_reg_num_db, global_acc_reg_str_db, ipbanlist, login, loginlog
-#map-server: autotrade_data, autotrade_merchants, mapreg, npc_market_data
-#char-server: everything else
+
+1. login-server: global_acc_reg_num_db, global_acc_reg_str_db, ipbanlist, login, loginlog
+2. map-server: autotrade_data, autotrade_merchants, mapreg, npc_market_data
+3. char-server: everything else
+
Note that the sql_updates table is needed by all three servers.
-=== [[:Category:Configuration|Configure Hercules]]===
+### [Configure Hercules](:Category:Configuration "wikilink")
+
+### Compile Source Code
+
+`cd Hercules`
+`./configure`
+`make sql`
+
+##### How to Recompile
+
+In the future (after you update or edit any file in /src) to recompile, add *make clean* before make sql:
-=== Compile Source Code ===
- cd Hercules
- ./configure
- make sql
+`cd Hercules`
+`./configure`
+**`make clean`**
+`make sql`
-===== How to Recompile =====
-In the future (after you update or edit any file in /src) to recompile, add ''make clean'' before make sql:
- cd Hercules
- ./configure
- '''make clean'''
- make sql
+## Start your Hercules Server
-== Start your Hercules Server ==
- //change access mode of athena-start file so that you can execute it.
- //Use (dos2unix athena-start) if yo uare getting ^M errors ie. newline errors
- chmod a+x athena-start
+`//change access mode of athena-start file so that you can execute it.`
+`//Use (dos2unix athena-start) if yo uare getting ^M errors ie. newline errors `
+`chmod a+x athena-start`
- //To Start
- ./athena-start start
- //To Stop
- ./athena-start stop
- //To Restart
- ./athena-start restart
+`//To Start`
+`./athena-start start`
+`//To Stop`
+`./athena-start stop`
+`//To Restart`
+`./athena-start restart`
-== See Also ==
+## See Also
-[[Category:Installation Guides|CentOS]]
+[CentOS](Category:Installation_Guides "wikilink")
diff --git a/docs/setup/installation-debian.md b/docs/setup/installation-debian.md
index 764d0fd..463fb7c 100644
--- a/docs/setup/installation-debian.md
+++ b/docs/setup/installation-debian.md
@@ -1,101 +1,143 @@
# Installation (Debian)
-This guide covers how to install [[Hercules]] on [[wikipedia:Debian|Debian]] and other [[wikipedia:List_of_Linux_distributions#Debian-based|versions of Linux]] that use apt-get.
-
-== Requirements ==
-* [[wikipedia:Debian|Debian]] or an [[wikipedia:List_of_Linux_distributions##Debian-based]] that has the apt-get command
-* root access or access to an account that has [[wikipedia:Sudo|sudo privileges]]
-* an Internet connection to download install packages
-
-
-== Prerequisites ==
-All of these commands will be typed at the [[wikipedia:Command-line_interface|command-line interface]].
-=== Install Prerequisites ===
-# Login to your server via [[wikipedia:Secure_Shell|SSH]], or if you are already logged into a [[wikipedia:Graphical_user_interface|GUI]] press Ctrl+Alt+T to open a terminal window.
-apt-get update
-apt-get upgrade
-apt-get dist-update // To update to the latest version of Debian
-# Type the following command (this will install GCC, Make, MySQL Server, MySQL header files, PCRE header files, git, and Zlib header files)
-#: apt-get install git make gcc mysql-server libmysqlclient-dev zlib1g-dev libpcre3-dev screen
-
-=== Create a non-root Linux user ===
-By the [[wikipedia:Principle_of_least_privilege|principle of least privilege]], it is recommended you do '''NOT''' run Hercules as root.
-# Type the following command to create a non-root Linux account:
-#: useradd hercuser
-# Be sure not to forget setting new password for new user
-#: passwd hercuser
-
-== Install [[Hercules]] ==
-
-=== Login as your non-root Linux user ===
+This guide covers how to install [Hercules](Hercules "wikilink") on [Debian](wikipedia:Debian "wikilink") and other
+[versions of Linux](wikipedia:List_of_Linux_distributions#Debian-based "wikilink") that use apt-get.
+
+## Requirements
+
+- [Debian](wikipedia:Debian "wikilink") or an
+ [wikipedia:List_of_Linux_distributions##Debian-based](wikipedia:List_of_Linux_distributions##Debian-based "wikilink")
+ that has the apt-get command
+- root access or access to an account that has [sudo privileges](wikipedia:Sudo "wikilink")
+- an Internet connection to download install packages
+
+## Prerequisites
+
+All of these commands will be typed at the [command-line interface](wikipedia:Command-line_interface "wikilink").
+
+### Install Prerequisites
+
+1. Login to your server via [SSH](wikipedia:Secure_Shell "wikilink"), or if you are already logged into a
+ [GUI](wikipedia:Graphical_user_interface "wikilink") press Ctrl+Alt+T to open a terminal window.
+
+apt-get update apt-get upgrade apt-get dist-update // To update to the latest version of Debian
+
+1. Type the following command (this will install GCC, Make, MySQL Server, MySQL header files, PCRE header files, git,
+ and Zlib header files)
+
+ apt-get install git make gcc mysql-server libmysqlclient-dev zlib1g-dev libpcre3-dev screen
+
+### Create a non-root Linux user
+
+By the [principle of least privilege](wikipedia:Principle_of_least_privilege "wikilink"), it is recommended you do
+**NOT** run Hercules as root.
+
+1. Type the following command to create a non-root Linux account:
+
+ useradd hercuser
+2. Be sure not to forget setting new password for new user
+
+ passwd hercuser
+
+## Install [Hercules](Hercules "wikilink")
+
+### Login as your non-root Linux user
+
The rest of the setup is done as hercuser (the Linux user you created earlier)
-# Logout from root SSH (or minimize the window).
-# Login to your server via SSH as the hercuser Linux user.
-
-=== Git Clone ===
-git clone https://github.com/HerculesWS/Hercules.git ~/Hercules
-
-=== [http://dev.mysql.com/doc/refman/5.5/en/batch-commands.html Import] MySQL Tables ===
-# Change directory to the '''sql-files''' folder.
-#: cd sql-files/
-# Execute these commands:
-#: ''When prompted, enter your MySQL root password.''
-#: mysql -u root -prootpassword hercuser_rodb < main.sql
-#: mysql -u root -prootpassword hercuser_rodblog < logs.sql
-# If your Control Panel software or website requires it, you may also import the item, monster and monster skill databases (not necessary for the correct operation of Hercules)
-#: (pre-renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db.sql
-#: (renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db_re.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db_re.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db_re.sql
-#: (common to renewal and pre-renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db2.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db2.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db2.sql
+
+1. Logout from root SSH (or minimize the window).
+2. Login to your server via SSH as the hercuser Linux user.
+
+### Git Clone
+
+ git clone https://github.com/HerculesWS/Hercules.git ~/Hercules
+
+### [Import](http://dev.mysql.com/doc/refman/5.5/en/batch-commands.html) MySQL Tables
+
+1. Change directory to the **sql-files** folder.
+
+ cd sql-files/
+2. Execute these commands:
+
+ *When prompted, enter your MySQL root password.*
+
+ mysql -u root -prootpassword hercuser_rodb < main.sql
+
+ mysql -u root -prootpassword hercuser_rodblog < logs.sql
+3. If your Control Panel software or website requires it, you may also import the item, monster and monster skill
+ databases (not necessary for the correct operation of Hercules)
+
+ (pre-renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db.sql
+
+ (renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db_re.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db_re.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db_re.sql
+
+ (common to renewal and pre-renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db2.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db2.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db2.sql
NOTE: if you want to use different SQL DBs for login/char/map servers this is the list of databases each server use:
-#login-server: global_acc_reg_num_db, global_acc_reg_str_db, ipbanlist, login, loginlog
-#map-server: autotrade_data, autotrade_merchants, mapreg, npc_market_data
-#char-server: everything else
+
+1. login-server: global_acc_reg_num_db, global_acc_reg_str_db, ipbanlist, login, loginlog
+2. map-server: autotrade_data, autotrade_merchants, mapreg, npc_market_data
+3. char-server: everything else
+
Note that the sql_updates table is needed by all three servers.
-=== [[:Category:Configuration|Configure Hercules]]===
+### [Configure Hercules](:Category:Configuration "wikilink")
+
+### Compile Source Code
+
+`cd Hercules`
+`./configure`
+`make sql`
+
+**Note:** If during the configure step you run into the "MySQL not found or incompatible" error, you may be able to fix
+it by installing "libssl-dev" and/or "default-libmysqlclient-dev".
+
+- If you have added plugins for use with Hercules please use the below syntax instead of the above:
-=== Compile Source Code ===
- cd Hercules
- ./configure
- make sql
+`cd Hercules`
+`./configure`
+`make sql plugins`
-'''Note:''' If during the configure step you run into the "MySQL not found or incompatible" error, you may be able to fix it by installing "libssl-dev" and/or "default-libmysqlclient-dev".
+##### How to Recompile
-*If you have added plugins for use with Hercules please use the below syntax instead of the above:
- cd Hercules
- ./configure
- make sql plugins
+In the future (after you update or edit any file in /src) to recompile, add *make clean* before make sql:
+`cd Hercules`
+`./configure`
+**`make clean`**
+`make sql plugins`
-===== How to Recompile =====
-In the future (after you update or edit any file in /src) to recompile, add ''make clean'' before make sql:
- cd Hercules
- ./configure
- '''make clean'''
- make sql plugins
+## Start your Hercules Server
-== Start your Hercules Server ==
- //change access mode of athena-start file so that you can execute it.
- //Use (dos2unix athena-start) if you are getting ^M errors ie. newline errors
- chmod a+x athena-start
+`//change access mode of athena-start file so that you can execute it.`
+`//Use (dos2unix athena-start) if you are getting ^M errors ie. newline errors `
+`chmod a+x athena-start`
- //To Start
- ./athena-start start
- //To Stop
- ./athena-start stop
- //To Restart
- ./athena-start restart
+`//To Start`
+`./athena-start start`
+`//To Stop`
+`./athena-start stop`
+`//To Restart`
+`./athena-start restart`
-== See Also ==
+## See Also
-[[Category:Installation Guides|Debian Linux]]
+[Debian Linux](Category:Installation_Guides "wikilink")
diff --git a/docs/setup/installation-freebsd.md b/docs/setup/installation-freebsd.md
index 023b159..e80a333 100644
--- a/docs/setup/installation-freebsd.md
+++ b/docs/setup/installation-freebsd.md
@@ -1,126 +1,153 @@
# Installation (FreeBSD)
-This article is aimed at installing and getting [[Hercules]] to run successfully on a machine running [[wikipedia:FreeBSD|FreeBSD]] 9.1-RELEASE. It is assumed that FreeBSD was installed with the ports collection and enabled Linux Threading on install. This guide will NOT teach you how to network FreeBSD, install FreeBSD or configure any additional system settings (besides the ones needed to run Hercules and its dependencies).
-
-=Before we Start=
-We will primarily working from the /home/user directory. Your primary user will need to be in the 'wheel' group and be able to su into root. Remember that I will include either $ or #, depending on who you should be. $ indicates you should be your primary user, and # indicates you should be root.
-
-=Required software=
-We are going to use FreeBSD's ports collection to download, install and use most of these programs. It is assumed you already installed the ports collection, if you have not, I suggest you do that now.
-
-==Ports Collection==
-The Ports Collection is a set of files used to compile and install applications on FreeBSD. While this is not a guide for FreeBSD, its recommended to obtain the same as given below:
-
-# portsnap fetch
-Download a compressed snapshot of the Ports Collection into /var/db/portsnap.
-
-# portsnap extract
-When running Portsnap for the first time, extract the snapshot into /usr/ports
-
-
-
-==wget==
-wget is a download manager available on FreeBSD and can be your bread and butter while working on FreeBSD.
-# whereis wget
-wget: /usr/ports/www/wget
-# cd /usr/ports/www/wget && make && make install
-# make clean
-# rehash
-
-==gmake==
-gmake, or GNUMake, is the GCC compiler used for FreeBSD.
-
-# whereis gmake
-gmake: /usr/ports/devel/gmake
-# cd /usr/ports/devel/gmake && make && make install
-# make clean
-# rehash
-
-
-==unrar==
-unrar is a tool to unrar .rar's in BSD.
-
-# whereis unrar
-unrar: /usr/ports/archivers/unrar
-$ cd /usr/ports/archivers/unrar
-$ make clean
-$ make install
-$ rehash
-
-
-==GCC==
-GCC is the GNU Compiler Collection and front ends for C, C++ and other languages.
-This may not be available on the system but it can be obtained as below:
-# wget http://www.netgull.com/gnu/gcc/gcc-###.tar.gz (Where ## is the version number. visit the mirror to find out)
-# tar -xvf gcc-###.tar.gz
-# cd gcc*
-# make && make install
-# make clean
-# rehash
-
-==gdb==
-GDB is handy tool to have on a development machine, as it can take backtraces of crashes and help you find what went wrong.
-It is probable that this is already available on your FreeBSD, but if it's not, here's how you can install it:
-# wget http://ftp.gnu.org/gnu/gdb/gdb-###.tar.gz (again, where ### is the version number, check out the mirror)
-# tar -xvf gdb-###.tar.gz
-# cd gdb*
-# make && make install
-# make clean
-# rehash
-
-==git==
-[[Git]] is the versioning system used for Hercules and how we will get our copy of Hercules.
-# whereis git
-git: /usr/ports/devel/git
-# cd /usr/ports/devel/git && make && make install
-# make clean
-# rehash
-
-
-Now, let's go ahead and download Hercules. We'll use git for this.
-
-
-$ su root
-# adduser //create a Hercules user
-# exit
-$ su hercules
-$ cd /home/hercules
-$ git clone https://github.com/HerculesWS/Hercules.git Hercules
-$
-
-Now, we can populate the tables with the .sql files in Hercules. Navigate to your /sql-files/ folder in the Hercules files you just checked out.
-
-
-$ cd /home/hercules/trunk/sql-files
-$ mysql -uuser -ppassword myr-odb < main.sql
-$ mysql -uuser -ppassword myro-db < logs.sql
-
-
-Now, you'll want to follow the steps in the [[:Category:Configuration]] and [[Connecting]] pages to get your Hercules configured. Once you've made all your source changes, you can compile Hercules. While you're in the root of your Hercules folder, issue the following commands to compile your server:
-
-
-$ ./configure
-$ gmake clean
-$ gmake sql
-$ rehash
-
-
-'''Important Note:''' If you are using a 32 bit FreeBSD you have to use
-
-chmod 777 configure
-$ ./configure --disable-64bit
-
+This article is aimed at installing and getting [Hercules](Hercules "wikilink") to run successfully on a machine running
+[FreeBSD](wikipedia:FreeBSD "wikilink") 9.1-RELEASE. It is assumed that FreeBSD was installed with the ports collection
+and enabled Linux Threading on install. This guide will NOT teach you how to network FreeBSD, install FreeBSD or
+configure any additional system settings (besides the ones needed to run Hercules and its dependencies).
+
+# Before we Start
+
+We will primarily working from the /home/user directory. Your primary user will need to be in the 'wheel' group and be
+able to su into root. Remember that I will include either \$ or \#, depending on who you should be. \$ indicates you
+should be your primary user, and \# indicates you should be root.
+
+# Required software
+
+We are going to use FreeBSD's ports collection to download, install and use most of these programs. It is assumed you
+already installed the ports collection, if you have not, I suggest you do that now.
+
+## Ports Collection
+
+The Ports Collection is a set of files used to compile and install applications on FreeBSD. While this is not a guide
+for FreeBSD, its recommended to obtain the same as given below:
+
+ # portsnap fetch
+ Download a compressed snapshot of the Ports Collection into /var/db/portsnap.
+
+ # portsnap extract
+ When running Portsnap for the first time, extract the snapshot into /usr/ports
+
+
+
+## wget
+
+wget is a download manager available on FreeBSD and can be your bread and butter while working on FreeBSD.
+
+ # whereis wget
+ wget: /usr/ports/www/wget
+ # cd /usr/ports/www/wget && make && make install
+ # make clean
+ # rehash
+
+
+
+## gmake
+
+gmake, or GNUMake, is the GCC compiler used for FreeBSD.
+
+ # whereis gmake
+ gmake: /usr/ports/devel/gmake
+ # cd /usr/ports/devel/gmake && make && make install
+ # make clean
+ # rehash
+
+
+
+## unrar
+
+unrar is a tool to unrar .rar's in BSD.
+
+ # whereis unrar
+ unrar: /usr/ports/archivers/unrar
+ $ cd /usr/ports/archivers/unrar
+ $ make clean
+ $ make install
+ $ rehash
+
+
+
+## GCC
+
+GCC is the GNU Compiler Collection and front ends for C, C++ and other languages. This may not be available on the
+system but it can be obtained as below:
+
+ # wget http://www.netgull.com/gnu/gcc/gcc-###.tar.gz (Where ## is the version number. visit the mirror to find out)
+ # tar -xvf gcc-###.tar.gz
+ # cd gcc*
+ # make && make install
+ # make clean
+ # rehash
+
+
+
+## gdb
+
+GDB is handy tool to have on a development machine, as it can take backtraces of crashes and help you find what went
+wrong. It is probable that this is already available on your FreeBSD, but if it's not, here's how you can install it:
+
+
+ # wget http://ftp.gnu.org/gnu/gdb/gdb-###.tar.gz (again, where ### is the version number, check out the mirror)
+ # tar -xvf gdb-###.tar.gz
+ # cd gdb*
+ # make && make install
+ # make clean
+ # rehash
+
+
+
+## git
+
+[Git](Git "wikilink") is the versioning system used for Hercules and how we will get our copy of Hercules.
+
+ # whereis git
+ git: /usr/ports/devel/git
+ # cd /usr/ports/devel/git && make && make install
+ # make clean
+ # rehash
+
+
+
+Now, let's go ahead and download Hercules. We'll use git for this.
+
+ $ su root
+ # adduser //create a Hercules user
+ # exit
+ $ su hercules
+ $ cd /home/hercules
+ $ git clone https://github.com/HerculesWS/Hercules.git Hercules
+ $
+
+Now, we can populate the tables with the .sql files in Hercules. Navigate to your /sql-files/ folder in the Hercules
+files you just checked out.
+
+ $ cd /home/hercules/trunk/sql-files
+ $ mysql -uuser -ppassword myr-odb < main.sql
+ $ mysql -uuser -ppassword myro-db < logs.sql
+
+Now, you'll want to follow the steps in the [:Category:Configuration](:Category:Configuration "wikilink") and
+[Connecting](Connecting "wikilink") pages to get your Hercules configured. Once you've made all your source changes, you
+can compile Hercules. While you're in the root of your Hercules folder, issue the following commands to compile your
+server:
+
+ $ ./configure
+ $ gmake clean
+ $ gmake sql
+ $ rehash
+
+**Important Note:** If you are using a 32 bit FreeBSD you have to use
+
+ chmod 777 configure
+ $ ./configure --disable-64bit
+
instead
-''NOTE:'' You should '''NEVER''' run Hercules as the root user!. Always setup a new user and this cannot be stressed enough on!
-This will also prevent your from having difficulties with file permissions.
+*NOTE:* You should **NEVER** run Hercules as the root user!. Always setup a new user and this cannot be stressed enough
+on! This will also prevent your from having difficulties with file permissions.
And to start your servers, you can simply use the following command:
-
-$ ./athena-start (start | stop | restart | status)
-
+ $ ./athena-start (start | stop | restart | status)
And that's it! You now have Hercules running on your FreeBSD machine!
-[[Category:Installation Guides]]
+[Category:Installation Guides](Category:Installation_Guides "wikilink")
diff --git a/docs/setup/installation.md b/docs/setup/installation.md
index e755784..c05f665 100644
--- a/docs/setup/installation.md
+++ b/docs/setup/installation.md
@@ -1,52 +1,77 @@
-This article is aimed at downloading Hercules and any dependancies required to run it. In this article, you are expected to know basic file and program
-management of the OS you are attempting to run Hercules on. (Or use Google to search for the answers)
+This article is aimed at downloading Hercules and any dependancies required to run it. In this article, you are expected
+to know basic file and program management of the OS you are attempting to run Hercules on. (Or use Google to search for
+the answers)
-==System Requirements==
-{{EntirePage|System Requirements}}
-Hercules runs on variety of 32-bit and 64-bit (limited) operating systems, including Windows, Linux and Unix. Hardware requirements are ones of typical server environment, whether virtual or dedicated.
+## System Requirements
+
+Hercules runs on variety of 32-bit and 64-bit (limited) operating systems, including Windows, Linux and Unix. Hardware
+requirements are ones of typical server environment, whether virtual or dedicated.
+
+## Program Requirements
-==Program Requirements==
To run Hercules, the following programs must be installed on the machine that will run Hercules:
-===*nix based===
-For *nix, most of these programs will come as [[wikipedia:Software_package_%28installation%29|Packages]] with your OS, for example,
-the FreeBSD Ports collection, or Debians apt-get or aptitude. Please see your OS's help/support pages to find out how to utilize package installations. As a general rule, the following packages will be required to compile Hercules:
-[http://www.gnu.org/software/wget/ wget], [http://subversion.tigris.org/ subversion], [http://gcc.gnu.org/ GCC], [http://www.gnu.org/software/make/ make] (if running *BSD, gmake is needed instead of make.)
-====libmysqlclient15-dev====
-libmysqlclient15-dev is the library for MySQL and is '''required''' to compile an SQL version of Hercules. This will most likely need to be installed via packages.
-
-===Windows based===
-Depending on how you want to compile, one of two methods can be used. We '''highly recommend''' the use of [http://www.microsoft.com/Express/vc/ Visual C++].
-[http://www.cygwin.com/ Cygwin] can also be used. If cygwin is used, you have some configuration to do, please see below:
-Expand the development or devel branch in Cygwin and make sure GCC and Make are checked. These are the only 2 things you need,
-the others are up to you whether you want to download them or not. The downloading and installation of packages may take some time
-depending on your packages, their size, your network speed, and the remote server's network speed.
-This shouldn't take too long if it's just GCC and Make.
-You will also need [http://subversion.tigris.org/ subversion]
-
-==Installing software==
-===Linux OS's===
-A simple make and make install is all that is needed for most of the packages. You can find [[:Category:Installation|instructions]] and readmes in each of the downloads for your distro telling you how to install and compile each package. Once subversion is installed, you can download Hercules's latest source via [[GIT]].
-
-$ git clone git://github.com/HerculesWS/Hercules.git hercules
-for trunk
-
-===Windows OS's===
-{{outdated|type=section}}
-When using SVN in Windows, all your commands are in a right click menu integrated into the Windows Shell.
-[[Image:svnwindows.jpg]]
-Simply create a new folder, right click on it and select 'SVN Checkout...' and a dialog box will appear.
-[[Image:checkout.jpg]]
-Enter your URL (in the example above, simply add /trunk after the URL to checkout Trunk, or /branches/stable for stable) and TSVN will download
-a fresh copy of Hercule's SVN to that folder.
-
-==Compiling==
-Please see [[Compiling]] for more detailed instructions.
-
-For your OS, you will need to compile binaries if you had downloaded Hercules via the SVN. you can then move on to [[:Category:Configuration]] and then running Hercules.
-
-==See Also==
-* [[:Category:Installation|Installation per OS]]
-* [[GIT]]
-* [[Installing_SQL|Installing SQL for Hercules use]]
-
-[[Category:Basics]]
\ No newline at end of file
+
+### \*nix based
+
+For \*nix, most of these programs will come as [Packages](wikipedia:Software_package_%28installation%29 "wikilink") with
+your OS, for example, the FreeBSD Ports collection, or Debians apt-get or aptitude. Please see your OS's help/support
+pages to find out how to utilize package installations. As a general rule, the following packages will be required to
+compile Hercules:
+[wget](http://www.gnu.org/software/wget/), [subversion](http://subversion.tigris.org/), [GCC](http://gcc.gnu.org/),
+[make](http://www.gnu.org/software/make/) (if running \*BSD, gmake is needed instead of make.)
+
+#### libmysqlclient15-dev
+
+libmysqlclient15-dev is the library for MySQL and is **required** to compile an SQL version of Hercules. This will most
+likely need to be installed via packages.
+
+### Windows based
+
+Depending on how you want to compile, one of two methods can be used. We **highly recommend** the use of [Visual
+C++](http://www.microsoft.com/Express/vc/). [Cygwin](http://www.cygwin.com/) can also be used. If cygwin is used, you
+have some configuration to do, please see below:
+
+> Expand the development or devel branch in Cygwin and make sure GCC and Make are checked. These are the only 2 things
+> you need, the others are up to you whether you want to download them or not. The downloading and installation of
+> packages may take some time depending on your packages, their size, your network speed, and the remote server's
+> network speed. This shouldn't take too long if it's just GCC and Make.
+
+You will also need [subversion](http://subversion.tigris.org/)
+
+## Installing software
+
+### Linux OS's
+
+A simple make and make install is all that is needed for most of the packages. You can find
+[instructions](:Category:Installation "wikilink") and readmes in each of the downloads for your distro telling you how
+to install and compile each package. Once subversion is installed, you can download Hercules's latest source via
+[GIT](GIT "wikilink").
+
+
+ $ git clone git://github.com/HerculesWS/Hercules.git hercules
+
+
for trunk
+
+### Windows OS's
+
+When using SVN in Windows, all your commands are in a right click menu integrated into the Windows Shell.
+![](svnwindows.jpg "svnwindows.jpg")
+Simply create a new folder, right click on it and select 'SVN Checkout...' and a dialog box will appear.
+![](checkout.jpg "checkout.jpg")
+Enter your URL (in the example above, simply add /trunk after the URL to checkout Trunk, or /branches/stable for stable)
+and TSVN will download a fresh copy of Hercule's SVN to that folder.
+
+## Compiling
+
+Please see [Compiling](Compiling "wikilink") for more detailed instructions.
+
+For your OS, you will need to compile binaries if you had downloaded Hercules via the SVN. you can then move on to
+[:Category:Configuration](:Category:Configuration "wikilink") and then running Hercules.
+
+## See Also
+
+- [Installation per OS](:Category:Installation "wikilink")
+- [GIT](GIT "wikilink")
+- [Installing SQL for Hercules use](Installing_SQL "wikilink")
+
+[Category:Basics](Category:Basics "wikilink")
diff --git a/docs/setup/installing-sql.md b/docs/setup/installing-sql.md
index e9e2291..f9cd93a 100644
--- a/docs/setup/installing-sql.md
+++ b/docs/setup/installing-sql.md
@@ -1,171 +1,323 @@
-= Introduction =
-This article will guide you through the installation and configuration stages of MySQL for your particular Operating System. What is a MySQL database? [[wikipedia:MySQL|MySQL]] is a multi-user access database that stores a number of different kinds of information in scaleable tables. In layman's terms, it puts a bunch of stuff in charts for your server to read. Hercules no longer supports text based save files (for Accounts, Characters, etc.) and requires a MySQL database to create these save files.
-
-== Windows ==
-This guide will instruct you on installing MySQL on Windows Vista/7, although it should work relatively the same with Windows XP. This guide also assumes you have already [[Installation_on_Windows|installed your Hercules server]].
-
-'''Uninstallation Note'''
-Before continuing, it is important to note that if you make an error and decide to start again by uninstalling the MySQL database and software, that you make sure you do a ''thorough'' uninstallation, and then reboot Windows before trying again. A couple tips to make sure your uninstallation is thorough:
-* Uninstall Workbench first
-* Remove the MySQL database folders in your user folder. This is generally in:
- C:\Users\\AppData\Roaming\MySQL
-:Just delete the whole folder.
-* Run Administrative Tools -> Services and look to make sure nothing MySQL related is running or set to run (because it shouldn't exist anymore)
-* Go to the location on your hard drive you installed MySQL5 and Workbench and ensure everything is deleted.
-* Make sure you reboot.
-* There is a Oracle made guide [http://dev.mysql.com/doc/refman/5.1/en/windows-installer-uninstalling.html here], but it isn't necessarily thorough.
-* If you still have hanging and crashing during the configuration wizard, you may have to create your root account manually. Do an internet search for this, as it varies by system. And continue afterwards at the "MySQL Workbench" section.
-
-=== Download ===
-To install MySQL Server you will first need to download the package corresponding to your version of Windows. [http://dev.mysql.com/downloads/mysql/ MySQL Community Server] is available for free and is exactly what is needed. Version 5.5 currently works well with Hercules and is recommended. '''ENSURE''' that you download the appropriate bit version (32 or 64) for your system, if you do not, you will receive errors during the execution wizard. This software installs the server on your computer that stores the data files and tables. Although alone, without prior knowledge of MySQL it is very difficult to operate and configure your servers data. That is why you will need MySQL Workbench.
-
-[http://dev.mysql.com/downloads/workbench/5.2.html MySQL Workbench] is a tool for viewing your MySQL database in a GUI environment. As said, it is not required but very beneficial; in addition, it is required by this guide. To be able to install and run MySQL Workbench 5.2 your System also needs to have the libraries listed below installed. The listed items are provided as links to the corresponding download pages where you can fetch the necessary files.
-
-[http://www.microsoft.com/download/en/details.aspx?id=17113 Microsoft .NET Framework 4 Client Profile]
-[http://www.microsoft.com/download/en/details.aspx?id=5555 Microsoft Visual C++ 2010 Redistributable Package (x86)]
-
-=== Configure Hercules Files ===
-Before you begin with your MySQL installation, you need to setup your server conf files to be ready for the database you are about to install. I choose to do this in advance, because it allows you to have the usernames and passwords ready for use so you don't have to go back and set them, and you can just run your server afterwards with everything all ready.
-* Open "inter-server.conf", and change sql.db_password, char_server_pw, map_server_pw and log_db_pw to a password of your choice. For this guide we will use the password "Fish". Passwords are case sensitive. This is not a strong password, and you should use a better one, this is just an example. Also change log_db_db to "log". All other fields should be let alone, the default username and port functions fine. ([http://imageshack.us/a/img546/9444/interathena.jpg Image])
-* Open "map-server.conf" and "char-server.conf" and locate the server communication passwords:
- userid: s1
- passwd: p1
+# Installing SQL
+
+# Introduction
+
+This article will guide you through the installation and configuration stages of MySQL for your particular Operating
+System. What is a MySQL database? [MySQL](wikipedia:MySQL "wikilink") is a multi-user access database that stores a
+number of different kinds of information in scaleable tables. In layman's terms, it puts a bunch of stuff in charts for
+your server to read. Hercules no longer supports text based save files (for Accounts, Characters, etc.) and requires a
+MySQL database to create these save files.
+
+## Windows
+
+This guide will instruct you on installing MySQL on Windows Vista/7, although it should work relatively the same with
+Windows XP. This guide also assumes you have already [installed your Hercules
+server](Installation_on_Windows "wikilink").
+
+**Uninstallation Note**
+Before continuing, it is important to note that if you make an error and decide to start again by uninstalling the MySQL
+database and software, that you make sure you do a *thorough* uninstallation, and then reboot Windows before trying
+again. A couple tips to make sure your uninstallation is thorough:
+
+- Uninstall Workbench first
+- Remove the MySQL database folders in your user folder. This is generally in:
+
+`C:\Users\``\AppData\Roaming\MySQL `
+
+
+Just delete the whole folder.
+
+- Run Administrative Tools -\> Services and look to make sure nothing MySQL related is running or set to run (because it
+ shouldn't exist anymore)
+- Go to the location on your hard drive you installed MySQL5 and Workbench and ensure everything is deleted.
+- Make sure you reboot.
+- There is a Oracle made guide [here](http://dev.mysql.com/doc/refman/5.1/en/windows-installer-uninstalling.html), but
+ it isn't necessarily thorough.
+- If you still have hanging and crashing during the configuration wizard, you may have to create your root account
+ manually. Do an internet search for this, as it varies by system. And continue afterwards at the "MySQL Workbench"
+ section.
+
+### Download
+
+To install MySQL Server you will first need to download the package corresponding to your version of Windows. [MySQL
+Community Server](http://dev.mysql.com/downloads/mysql/) is available for free and is exactly what is needed. Version
+5.5 currently works well with Hercules and is recommended. **ENSURE** that you download the appropriate bit version (32
+or 64) for your system, if you do not, you will receive errors during the execution wizard. This software installs the
+server on your computer that stores the data files and tables. Although alone, without prior knowledge of MySQL it is
+very difficult to operate and configure your servers data. That is why you will need MySQL Workbench.
+
+[MySQL Workbench](http://dev.mysql.com/downloads/workbench/5.2.html) is a tool for viewing your MySQL database in a GUI
+environment. As said, it is not required but very beneficial; in addition, it is required by this guide. To be able to
+install and run MySQL Workbench 5.2 your System also needs to have the libraries listed below installed. The listed
+items are provided as links to the corresponding download pages where you can fetch the necessary files.
+
+[Microsoft .NET Framework 4 Client Profile](http://www.microsoft.com/download/en/details.aspx?id=17113)
+[Microsoft Visual C++ 2010 Redistributable Package (x86)](http://www.microsoft.com/download/en/details.aspx?id=5555)
+
+### Configure Hercules Files
+
+Before you begin with your MySQL installation, you need to setup your server conf files to be ready for the database you
+are about to install. I choose to do this in advance, because it allows you to have the usernames and passwords ready
+for use so you don't have to go back and set them, and you can just run your server afterwards with everything all
+ready.
+
+- Open "inter-server.conf", and change sql.db_password, char_server_pw, map_server_pw and log_db_pw to a password of
+ your choice. For this guide we will use the password "Fish". Passwords are case sensitive. This is not a strong
+ password, and you should use a better one, this is just an example. Also change log_db_db to "log". All other fields
+ should be let alone, the default username and port functions fine.
+ ([Image](http://imageshack.us/a/img546/9444/interathena.jpg))
+- Open "map-server.conf" and "char-server.conf" and locate the server communication passwords:
+
+`userid: s1`
+`passwd: p1`
+
Change these to whatever you want, but something secure. For this guide we will use "FishUser" and "FishPassword"
- userid: FishUser
- passwd: FishPassword
-
+
+`userid: FishUser`
+`passwd: FishPassword`
+
+
Make sure these are the same in both map-server and char-server otherwise you will have errors.
-* There are additional SQL configuration features in "login-server.conf" that you should take a look at now, to enable for use (such as IPban features).
-* Write all these passwords down or keep the files open for reference and continue to your MySQL installation!
-
-=== Install MySQL ===
-First, you will need to install the MySQL server where all the data will be stored. After downloading the [http://dev.mysql.com/downloads/mysql/ MySQL Community Server], run the installer and use the following steps (''for this installation version 5.5.28 was used'').
-# Click next and accept the license agreement.
-# Click "Typical" for Setup Type; then click "Install" (you may have to allow UAC control from windows).
-# Click "Next" when the MySQL Enterprise tool pops up, this is a simple advertisement.
-# After installation is finished the completion screen with a "Finish" button will show, make sure you have "Launch the MySQL Instance Configuration Wizard" '''CHECKED'''! The configuration wizard will allow you to setup the server to accept the kind of data you want and by setting it up now you will most likely never have to configure it again.
-# Click "Next" at the first screen, and then click "[http://imageshack.us/a/img90/1771/standardconfig.jpg Standard Configuration]" and hit "Next".
-# Check both "Install As Windows Service" and "Include Bin Directory in Windows PATH" for the Service Name, name it "''MySQL5''" and ensure "Launch the MySQL Server Automatically is '''CHECKED'''. ([http://imageshack.us/a/img685/3323/serverinstance.jpg Image])
-# On the next screen, you will need to select the root password. This password is very important as you will '''never be able to retrieve it''' so make sure you write it down somewhere safe. The "root" access to your MySQL database can pretty much do anything to your data, so make sure you keep this information safe. If you want to enable root access from a remote machine, check the included box. You probably won't need to enable that unless you know what you're doing. Keep the password you selected available for now.
-# On the next screen just click "Execute" to run the configuration unless you want to go back and change something.
-# Once it is finished, hit "Finish" to close the wizard. It will report if there are any errors (there shouldn't be).
-
-=== MySQL Workbench ===
-Next it is time to install the MySQL Workbench application. This application will allow you to edit your database and prepare it for Hercules, as well as perform maintenance in the future.
-# Run the MySQL Workbench installer and click "Next" on the first screen.
-# Choose your installation directory. The default directory should be fine. Click "Next" to proceed.
-# Select "Complete" and click "Next", and then install, granting permissions when prompted.
-# Once the wizard is completed, hit "Finish" and the default Workbench screen will come up.
-# This is called the Home Screen and should look like [http://imageshack.us/a/img571/3885/workbenchhome.jpg this].
-# You need to create a new server instance to host your files for Hercules to access. Select "New Server Instance" under the "Server Administration" section.
-# A window will pop up, select "localhost" and click "Next". This installs the instance on the localhost, which is your computer.
-# On the next screen, leave everything the default. Where it says "Username" leave that at root, so you have root access. Under that, click "[http://imageshack.us/a/img845/4056/storeinvault.jpg Store in Vault]" and enter the root password from earlier (it's alright to copy/paste the password if you put it in a text file).
-# After it has successfully tested the database connection, click "Next"
-# On the next screen, leave the configuration settings defaulted. It should point to the existing service (MySQL5 from earlier) and the default path is fine. ([http://imageshack.us/a/img600/1089/defaultwindowsconfig.jpg Image])
-# On the next screen hit "Next" and then "Continue" on the popup. Leave the Server Instance with the default name of
- mysqld@localhost
+
+- There are additional SQL configuration features in "login-server.conf" that you should take a look at now, to enable
+ for use (such as IPban features).
+- Write all these passwords down or keep the files open for reference and continue to your MySQL installation!
+
+### Install MySQL
+
+First, you will need to install the MySQL server where all the data will be stored. After downloading the [MySQL
+Community Server](http://dev.mysql.com/downloads/mysql/), run the installer and use the following steps (*for this
+installation version 5.5.28 was used*).
+
+1. Click next and accept the license agreement.
+2. Click "Typical" for Setup Type; then click "Install" (you may have to allow UAC control from windows).
+3. Click "Next" when the MySQL Enterprise tool pops up, this is a simple advertisement.
+4. After installation is finished the completion screen with a "Finish" button will show, make sure you have "Launch
+ the MySQL Instance Configuration Wizard" **CHECKED**! The configuration wizard will allow you to setup the server to
+ accept the kind of data you want and by setting it up now you will most likely never have to configure it again.
+5. Click "Next" at the first screen, and then click "[Standard
+ Configuration](http://imageshack.us/a/img90/1771/standardconfig.jpg)" and hit "Next".
+6. Check both "Install As Windows Service" and "Include Bin Directory in Windows PATH" for the Service Name, name it
+ "*MySQL5*" and ensure "Launch the MySQL Server Automatically is **CHECKED**.
+ ([Image](http://imageshack.us/a/img685/3323/serverinstance.jpg))
+7. On the next screen, you will need to select the root password. This password is very important as you will **never
+ be able to retrieve it** so make sure you write it down somewhere safe. The "root" access to your MySQL database can
+ pretty much do anything to your data, so make sure you keep this information safe. If you want to enable root access
+ from a remote machine, check the included box. You probably won't need to enable that unless you know what you're
+ doing. Keep the password you selected available for now.
+8. On the next screen just click "Execute" to run the configuration unless you want to go back and change something.
+9. Once it is finished, hit "Finish" to close the wizard. It will report if there are any errors (there shouldn't be).
+
+### MySQL Workbench
+
+Next it is time to install the MySQL Workbench application. This application will allow you to edit your database and
+prepare it for Hercules, as well as perform maintenance in the future.
+
+1. Run the MySQL Workbench installer and click "Next" on the first screen.
+2. Choose your installation directory. The default directory should be fine. Click "Next" to proceed.
+3. Select "Complete" and click "Next", and then install, granting permissions when prompted.
+4. Once the wizard is completed, hit "Finish" and the default Workbench screen will come up.
+5. This is called the Home Screen and should look like [this](http://imageshack.us/a/img571/3885/workbenchhome.jpg).
+6. You need to create a new server instance to host your files for Hercules to access. Select "New Server Instance"
+ under the "Server Administration" section.
+7. A window will pop up, select "localhost" and click "Next". This installs the instance on the localhost, which is
+ your computer.
+8. On the next screen, leave everything the default. Where it says "Username" leave that at root, so you have root
+ access. Under that, click "[Store in Vault](http://imageshack.us/a/img845/4056/storeinvault.jpg)" and enter the root
+ password from earlier (it's alright to copy/paste the password if you put it in a text file).
+9. After it has successfully tested the database connection, click "Next"
+10. On the next screen, leave the configuration settings defaulted. It should point to the existing service (MySQL5 from
+ earlier) and the default path is fine. ([Image](http://imageshack.us/a/img600/1089/defaultwindowsconfig.jpg))
+11. On the next screen hit "Next" and then "Continue" on the popup. Leave the Server Instance with the default name of
+
+`mysqld@localhost`
+
You are now ready to install your Hercules databases.
-=== Database Installation ===
-It is now time to install the pre-installed database files that will allow your Hercules server to connect to your MySQL database and properly store data, such as characters, items, and guilds. Open up MySQL Workbench to the home screen.
-# Double click "localhost" on the left under the "SQL Development" section. ([http://imageshack.us/a/img337/8550/localhostdoubleclick.jpg Image])
-# On the next screen (after a small loading bubble pops up), you will have access to the specific tables that were mentioned earlier. You will enter this screen in the future when you want to edit accounts and other things directly (not common).
-# We need to install a new "Schema", this is like a folder where all the database tables are stored. [http://imageshack.us/a/img194/2897/newschema.jpg Click the yellow cylinder looking thing in the upper left to create a new Schema]. Name it "ragnarok" - '''NOTE!''' Lower case is important here, make sure it is exactly "ragnarok". The server collation should be "Server Default".
-# Click "Apply" to create the Schema. A window will pop up with the actual commands that are going to take place; click "Apply" again to finalize your order.
-# Now right click 'ragnarok' under "Object Browser" and click "Set as default schema", a line will appear through it telling the browser that any commands you make now will be ordered to that Schema.
-# Next, [http://imageshack.us/a/img571/205/opensqlscript.png click the button directly to the left of the one you just did], it says "SQL" with a tiny folder. Navigate to your Hercules/sql-files/ folder, and open the sql script file "main.sql".
-# You'll see a bunch of code appear, these are commands that will tell the browser to create plain databases for your Hercules server. Click the yellow lightning bolt in the upper left hand corner to execute it and allow it to finish (ensure you click the first lightning bolt, the one without a cursor symbol or a magnifying glass over it).
-# After it finishes, a bunch of executed commands will appear on the bottom of the screen. You can now expand the ragnarok schema to see a bunch of tables. ([http://imageshack.us/a/img72/1450/ragnaroktables.jpg Image])
-# Now, do the same thing for a schema called "log", but open and execute logs.sql instead of main.sql. Ensure the tables are there as well.
-# Close the existing query tabs by hitting the "X" in the upper right of the tab. With the ragnarok tables still open, scroll down to the "login" table and '''RIGHT click''' it, then select "Edit Table Data".
-# Here you'll see existing account information that players can log in with to make characters. If you remember, the first account is the server communication account and it has the default password that you were asked to reset earlier. For our example we chose "FishUser" and "FishPassword". Enter these in the "username" and "password" field. And then create your first GM account by clicking where the word "null" is on the row with a ' * ' and enter "2000000" for the "account_id" field, with a username and password that you like. For this guide we chose a username of "HercGM" and a password of "12345" and a sex of "M". To enable full administrator GM, just set the "group_id" to "99". Zero out everything else. [http://imageshack.us/a/img411/5976/logintables.jpg When you are finished it should look like THIS].
-# Hit the "Apply" button in the corner and then again when the code prompt appears. This should modify your tables. After it is done, you may close the SQL Editor by clicking the "X" on the tab at upper left corner. Hitting the "X" in the upper right closes the whole workbench. If you accidentally close it, just open it again.
-# On the Workbench Home Screen, click "Manage Security" under Server Administration. Select "mysqld@localhost" and then click "OK".
-# The next screen is the security window. You want to add an account that your server can use to access the databases that is NOT the root account, for enhanced security. Click "Add Account" in the lower left of the default screen.
-# The login name needs to be "ragnarok", and the password we selected earlier for this guide is "Fish". The system will tell you how strong your password is... Fish is a very weak password. Leave the connectivity limit box defaulted and then hit "Apply" in the lower right. ([http://imageshack.us/a/img59/2025/newsecurityaccount.jpg Image])
-# You'll see the account show up in the left above root. Select it and then click the "Administrative Roles" tab.
-# Ensure that the "MonitorAdmin", "DBManager", "DBDesigner" and "BackupAdmin" are checked. Some of these will select themselves based on what you click. Then click "Apply". As a note, this step isn't entirely necessary but provides increased security. The simpler step is to just give the user all privileges by clicking the "DBA" option at the top. ([http://imageshack.us/a/img266/5876/useradministrativeroles.png Image])
-# Click the "Schema Privileges" tab.
-# In this tab, click "ragnarok" and then click the only available button, which is "Add Entry...".
-# Leave "Any Host" selected and change Schema to "Selected Schemas". Then select the "ragnarok" schema and hit OK.
-# At the bottom, hit "Select 'ALL'" to enable all database privileges for this Schema. This allows your ''ragnarok'' user to have access to all the tables in the schema of the same name. In other words, it allows your server to read/write the tables in the database you made. Make sure you click "Save Changes".
-# Do the same for the "log" schema you made. When you are [http://imageshack.us/a/img89/1509/userschemaprivileges.jpg done it should look like this].
-
-'''Congratulations!''' You have successful installed the MySQL database and are ready to run your server! See below for further adjustments.
-
-==== Additional Configurations ====
-===== Enabling Logging =====
+### Database Installation
+
+It is now time to install the pre-installed database files that will allow your Hercules server to connect to your MySQL
+database and properly store data, such as characters, items, and guilds. Open up MySQL Workbench to the home screen.
+
+1. Double click "localhost" on the left under the "SQL Development" section.
+ ([Image](http://imageshack.us/a/img337/8550/localhostdoubleclick.jpg))
+2. On the next screen (after a small loading bubble pops up), you will have access to the specific tables that were
+ mentioned earlier. You will enter this screen in the future when you want to edit accounts and other things directly
+ (not common).
+3. We need to install a new "Schema", this is like a folder where all the database tables are stored. [Click the yellow
+ cylinder looking thing in the upper left to create a new Schema](http://imageshack.us/a/img194/2897/newschema.jpg).
+ Name it "ragnarok" - **NOTE!** Lower case is important here, make sure it is exactly "ragnarok". The server
+ collation should be "Server Default".
+4. Click "Apply" to create the Schema. A window will pop up with the actual commands that are going to take place;
+ click "Apply" again to finalize your order.
+5. Now right click 'ragnarok' under "Object Browser" and click "Set as default schema", a line will appear through it
+ telling the browser that any commands you make now will be ordered to that Schema.
+6. Next, [click the button directly to the left of the one you just
+ did](http://imageshack.us/a/img571/205/opensqlscript.png), it says "SQL" with a tiny folder. Navigate to your
+ Hercules/sql-files/ folder, and open the sql script file "main.sql".
+7. You'll see a bunch of code appear, these are commands that will tell the browser to create plain databases for your
+ Hercules server. Click the yellow lightning bolt in the upper left hand corner to execute it and allow it to finish
+ (ensure you click the first lightning bolt, the one without a cursor symbol or a magnifying glass over it).
+8. After it finishes, a bunch of executed commands will appear on the bottom of the screen. You can now expand the
+ ragnarok schema to see a bunch of tables. ([Image](http://imageshack.us/a/img72/1450/ragnaroktables.jpg))
+9. Now, do the same thing for a schema called "log", but open and execute logs.sql instead of main.sql. Ensure the
+ tables are there as well.
+10. Close the existing query tabs by hitting the "X" in the upper right of the tab. With the ragnarok tables still open,
+ scroll down to the "login" table and **RIGHT click** it, then select "Edit Table Data".
+11. Here you'll see existing account information that players can log in with to make characters. If you remember, the
+ first account is the server communication account and it has the default password that you were asked to reset
+ earlier. For our example we chose "FishUser" and "FishPassword". Enter these in the "username" and "password" field.
+ And then create your first GM account by clicking where the word "null" is on the row with a ' \* ' and enter
+ "2000000" for the "account_id" field, with a username and password that you like. For this guide we chose a username
+ of "HercGM" and a password of "12345" and a sex of "M". To enable full administrator GM, just set the "group_id" to
+ "99". Zero out everything else. [When you are finished it should look like
+ THIS](http://imageshack.us/a/img411/5976/logintables.jpg).
+12. Hit the "Apply" button in the corner and then again when the code prompt appears. This should modify your tables.
+ After it is done, you may close the SQL Editor by clicking the "X" on the tab at upper left corner. Hitting the "X"
+ in the upper right closes the whole workbench. If you accidentally close it, just open it again.
+13. On the Workbench Home Screen, click "Manage Security" under Server Administration. Select "mysqld@localhost" and
+ then click "OK".
+14. The next screen is the security window. You want to add an account that your server can use to access the databases
+ that is NOT the root account, for enhanced security. Click "Add Account" in the lower left of the default screen.
+15. The login name needs to be "ragnarok", and the password we selected earlier for this guide is "Fish". The system
+ will tell you how strong your password is... Fish is a very weak password. Leave the connectivity limit box
+ defaulted and then hit "Apply" in the lower right.
+ ([Image](http://imageshack.us/a/img59/2025/newsecurityaccount.jpg))
+16. You'll see the account show up in the left above root. Select it and then click the "Administrative Roles" tab.
+17. Ensure that the "MonitorAdmin", "DBManager", "DBDesigner" and "BackupAdmin" are checked. Some of these will select
+ themselves based on what you click. Then click "Apply". As a note, this step isn't entirely necessary but provides
+ increased security. The simpler step is to just give the user all privileges by clicking the "DBA" option at the
+ top. ([Image](http://imageshack.us/a/img266/5876/useradministrativeroles.png))
+18. Click the "Schema Privileges" tab.
+19. In this tab, click "ragnarok" and then click the only available button, which is "Add Entry...".
+20. Leave "Any Host" selected and change Schema to "Selected Schemas". Then select the "ragnarok" schema and hit OK.
+21. At the bottom, hit "Select 'ALL'" to enable all database privileges for this Schema. This allows your *ragnarok*
+ user to have access to all the tables in the schema of the same name. In other words, it allows your server to
+ read/write the tables in the database you made. Make sure you click "Save Changes".
+22. Do the same for the "log" schema you made. When you are [done it should look like
+ this](http://imageshack.us/a/img89/1509/userschemaprivileges.jpg).
+
+
+**Congratulations!** You have successful installed the MySQL database and are ready to run your server! See below for
+further adjustments.
+
+#### Additional Configurations
+
+##### Enabling Logging
+
Simply open logs.conf in your conf folder, and look for:
- // Use MySQL Logs? (SQL Version Only)
- sql_logs: 0
-Change 0 to 1. You can also go through and change logging options. Your logs will be stored within your log schema. To view IPs in loginlog, you must click it, then right click it and choose alter table, then click on the columns tab. For the PK row, check all of the boxes, then apply it. Now you can double click on the loginlog and view the IPs, though after you are done alter the table again and uncheck all the boxes, this helps insure security. This should only be done for IP bans.
-===== Increasing Security =====
-'''Use MD5 to encrypt your password'''
-** '''WARNING:''' This will turn your passwords gibberish, just numbers and letters, making them unreadable so be sure to note down your password, either in a text file on your C drive, or on a piece of paper. In MySQL Workbench, click edit, then preferences, then click the SQL Queries tab. Uncheck "(Safe Updates) Forbid UPDATE and DELETE statements without a WHERE clause...", then click OK. Make ragnarok your default schema, by right clicking its name and clicking "Set as Default Schema", now click File, then Open SQL script, and open convert_passwords.sql. Then click the execute icon.
+`// Use MySQL Logs? (SQL Version Only)`
+`sql_logs: 0`
+
+Change 0 to 1. You can also go through and change logging options. Your logs will be stored within your log schema. To
+view IPs in loginlog, you must click it, then right click it and choose alter table, then click on the columns tab. For
+the PK row, check all of the boxes, then apply it. Now you can double click on the loginlog and view the IPs, though
+after you are done alter the table again and uncheck all the boxes, this helps insure security. This should only be done
+for IP bans.
+
+##### Increasing Security
+
+**Use MD5 to encrypt your password**
+\*\* **WARNING:** This will turn your passwords gibberish, just numbers and letters, making them unreadable so be sure
+to note down your password, either in a text file on your C drive, or on a piece of paper. In MySQL Workbench, click
+edit, then preferences, then click the SQL Queries tab. Uncheck "(Safe Updates) Forbid UPDATE and DELETE statements
+without a WHERE clause...", then click OK. Make ragnarok your default schema, by right clicking its name and clicking
+"Set as Default Schema", now click File, then Open SQL script, and open convert_passwords.sql. Then click the execute
+icon.
+
+## Linux
-== Linux ==
To Install the Mysql Server there is really only a few things that you have to do.
-=== Installing MySQL ===
+### Installing MySQL
+
From your terminal, type
- sudo yum install mysql-server*
-- OR -
- sudo apt-get install mysql-server
-After your Operating System downloaded and installed MySQL, you will see your terminal window changed and you will be prompted to provide the root password for the MySQL server
+`sudo yum install mysql-server*`
+
+\- OR -
+
+`sudo apt-get install mysql-server`
+
+After your Operating System downloaded and installed MySQL, you will see your terminal window changed and you will be
+prompted to provide the root password for the MySQL server
+
+### Setting up your own user
-=== Setting up your own user ===
Once the server has been installed you will need to call the server from terminal with this command.
- mysql -u root
+
+`mysql -u root`
+
or
- mysql -u root -p
+
+`mysql -u root -p`
+
then, type in your password.
-You are now logged into the MySQL server as root. The best way to use your own SQL server is to have a username of your own control with your own password. The next command will create your own user. The IDENTIFIED BY
clause defines the password.
- CREATE USER 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';
- GRANT ALL PRIVILEGES ON 'ragnarok'.* to 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';
- flush privileges;
-
-If that doesn't work it my be due to a version syntax error, try the following.
-
-
- CREATE USER 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';
- GRANT ALL PRIVILEGES ON ragnarok.* to 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';
-
-
-=== Installing the Tables ===
-
-
- cd /path/to/Hercules/
-
-
-Note: Afterwards issue this command lines, please have your password prepared since every after command lines issued you will be prompted for it.
-
-# Change directory to the '''sql-files''' folder.
-#: cd sql-files/
-# Execute these commands:
-#: ''When prompted, enter your MySQL root password.''
-#: mysql -u root -prootpassword hercuser_rodb < main.sql
-#: mysql -u root -prootpassword hercuser_rodblog < logs.sql
-# If your Control Panel software or website requires it, you may also import the item, monster and monster skill databases (not necessary for the correct operation of Hercules)
-#: (pre-renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db.sql
-#: (renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db_re.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db_re.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db_re.sql
-#: (common to renewal and pre-renewal)
-#: mysql -u root -prootpassword hercuser_rodb < item_db2.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_db2.sql
-#: mysql -u root -prootpassword hercuser_rodb < mob_skill_db2.sql
+You are now logged into the MySQL server as root. The best way to use your own SQL server is to have a username of your
+own control with your own password. The next command will create your own user. The `IDENTIFIED BY` clause defines the
+password.
+
+`CREATE USER 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';`
+`GRANT ALL PRIVILEGES ON 'ragnarok'.* to 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';`
+`flush privileges;`
+
+If that doesn't work it my be due to a version syntax error, try the following.
+
+ CREATE USER 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';
+ GRANT ALL PRIVILEGES ON ragnarok.* to 'ragnarok'@'%' IDENTIFIED BY 'ragnarok';
+
+### Installing the Tables
+
+ cd /path/to/Hercules/
+
+Note: Afterwards issue this command lines, please have your password prepared since every after command lines issued you
+will be prompted for it.
+
+1. Change directory to the **sql-files** folder.
+
+ cd sql-files/
+2. Execute these commands:
+
+ *When prompted, enter your MySQL root password.*
+
+ mysql -u root -prootpassword hercuser_rodb < main.sql
+
+ mysql -u root -prootpassword hercuser_rodblog < logs.sql
+3. If your Control Panel software or website requires it, you may also import the item, monster and monster skill
+ databases (not necessary for the correct operation of Hercules)
+
+ (pre-renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db.sql
+
+ (renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db_re.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db_re.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db_re.sql
+
+ (common to renewal and pre-renewal)
+
+ mysql -u root -prootpassword hercuser_rodb < item_db2.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_db2.sql
+
+ mysql -u root -prootpassword hercuser_rodb < mob_skill_db2.sql
NOTE: if you want to use different SQL DBs for login/char/map servers this is the list of databases each server use:
-#login-server: global_acc_reg_num_db, global_acc_reg_str_db, ipbanlist, login, loginlog
-#map-server: autotrade_data, autotrade_merchants, mapreg, npc_market_data
-#char-server: everything else
+
+1. login-server: global_acc_reg_num_db, global_acc_reg_str_db, ipbanlist, login, loginlog
+2. map-server: autotrade_data, autotrade_merchants, mapreg, npc_market_data
+3. char-server: everything else
+
Note that the sql_updates table is needed by all three servers.
-[[Category:Installation]]
\ No newline at end of file
+[Category:Installation](Category:Installation "wikilink")
diff --git a/docs/setup/mmo-h.md b/docs/setup/mmo-h.md
index 80ee186..0357ffb 100644
--- a/docs/setup/mmo-h.md
+++ b/docs/setup/mmo-h.md
@@ -1,37 +1,56 @@
# `mmo.h`
-[[Category:Incomplete]]
+!!! warning
+ This page may contain outdated information, incompatible with the current version of Hercules and its coding standards.
-[`src/common/mmo.h`](https://github.com/HerculesWS/Hercules/blob/stable/src/common/mmo.h) This source file holds global declarations and hard-coded settings, that are used by the login, char and map server. If you modify anything, you have to recompile all three servers, otherwise you may run into errors.
+\[\`src/common/mmo.h\`\](https://github.com/HerculesWS/Hercules/blob/stable/src/common/mmo.h) This source file holds
+global declarations and hard-coded settings, that are used by the login, char and map server. If you modify anything,
+you have to recompile all three servers, otherwise you may run into errors.
-=== PACKETVER ===
-Specifies the packet version to use for server-client communication. It must be set to date, your client has been released at, e. g. 20090922 for 2009-09-22aRagexeRE. Note: If you have a client, that is newer, than the latest packet version in the comment, some things might not work properly, if the client packets have changed since then.
+### PACKETVER
+
+Specifies the packet version to use for server-client communication. It must be set to date, your client has been
+released at, e. g. 20090922 for 2009-09-22aRagexeRE. Note: If you have a client, that is newer, than the latest packet
+version in the comment, some things might not work properly, if the client packets have changed since then.
+
+### ENABLE_SC_SAVING
-=== ENABLE_SC_SAVING ===
If you disable this define, all status changes get discarded upon logout.
-=== HOTKEY_SAVING ===
-When enabled, the server stores client hotkeys. While older clients save them locally in the registry, newer clients require this define to be enabled.
+### HOTKEY_SAVING
+
+When enabled, the server stores client hotkeys. While older clients save them locally in the registry, newer clients
+require this define to be enabled.
+
+### MAX_MAP_PER_SERVER
-=== MAX_MAP_PER_SERVER ===
Sets how many maps a single map server may manage. This also includes instanced maps.
-=== MAX_INVENTORY ===
-Sets maximum amount of item slots in the character item inventory. If you set this above 127, some scripts, that enumerate characters' inventory will break.
+### MAX_INVENTORY
+
+Sets maximum amount of item slots in the character item inventory. If you set this above 127, some scripts, that
+enumerate characters' inventory will break.
+
+### MAX_CHARS
+
+Max number of characters per account. Note, that changing this setting alone is not enough if the client is not hexed to
+support more characters as well.
+
+### GLOBAL_REG_NUM
+
+Max number of permanent [char variables](Variables#Player_Variables "wikilink").
+
+### ACCOUNT_REG_NUM
+
+Max number of permanent [account variables](Variables#Account_Variables "wikilink").
-=== MAX_CHARS ===
-Max number of characters per account. Note, that changing this setting alone is not enough if the client is not hexed to support more characters as well.
+### ACCOUNT_REG_NUM2
-=== GLOBAL_REG_NUM ===
-Max number of permanent [[Variables#Player_Variables|char variables]].
+Max number of permanent [global account variables](Variables#Global_Account_Variables "wikilink").
-=== ACCOUNT_REG_NUM ===
-Max number of permanent [[Variables#Account_Variables|account variables]].
+### MAX_QUEST_DB
-=== ACCOUNT_REG_NUM2 ===
-Max number of permanent [[Variables#Global_Account_Variables|global account variables]].
+Maximum number of Quest database to be loaded. File is located in db/questdb.txt note: if you have too many quests, your
+map server will show errors that there's too many quest db. remember to recompile your server if you do!
-=== MAX_QUEST_DB ===
-Maximum number of Quest database to be loaded. File is located in db/questdb.txt
-note: if you have too many quests, your map server will show errors that there's too many quest db. remember to recompile your server if you do!
-[[Category:Configuration]]
+[Category:Incomplete](Category:Incomplete "wikilink") [Category:Configuration](Category:Configuration "wikilink")
diff --git a/docs/setup/network-conf.md b/docs/setup/network-conf.md
index 9b8b13d..62a3192 100644
--- a/docs/setup/network-conf.md
+++ b/docs/setup/network-conf.md
@@ -2,17 +2,21 @@
Network.conf consists of three main sections:
-==lan_subnets==
+## lan_subnets
+
This section is where you put the subnets your server is on internally behind your router or other networking equipment.
-It is unclear if you should place your WAN IP in here somewhere in order to allow external connections or not. The old subnet system did require this, though it seems like it might not be required here.
+It is unclear if you should place your WAN IP in here somewhere in order to allow external connections or not. The old
+subnet system did require this, though it seems like it might not be required here.
-==allowed==
-This is a list of IPs your char-server and map-server are allowed to connect from. Default is 0.0.0.0:0.0.0.0 (any IP and any subnet), though it is recommended to change this to the specific IPs they will be connecting from. It is unclear if this needs to be your WAN or LAN address though.
+## allowed
-==trusted==
-Same as "allowed", except the IPs on this list are exempt from being banned for failed passwords and such.
+This is a list of IPs your char-server and map-server are allowed to connect from. Default is 0.0.0.0:0.0.0.0 (any IP
+and any subnet), though it is recommended to change this to the specific IPs they will be connecting from. It is unclear
+if this needs to be your WAN or LAN address though.
+## trusted
+Same as "allowed", except the IPs on this list are exempt from being banned for failed passwords and such.
This configuration file is in dire need of better documentation.
diff --git a/docs/setup/obtaining-hercules.md b/docs/setup/obtaining-hercules.md
index b4b4675..9d23cca 100644
--- a/docs/setup/obtaining-hercules.md
+++ b/docs/setup/obtaining-hercules.md
@@ -1,63 +1,75 @@
-Hercules is available through GitHub, a web-based hosting service for software development projects that use the GIT revision control system.
+Hercules is available through GitHub, a web-based hosting service for software development projects that use the GIT
+revision control system.
-=Obtaining Hercules on Windows=
+# Obtaining Hercules on Windows
+
+### Downloads
-===Downloads===
In order to get GIT on Windows properly, you need to download two things: MSysGit and TortoiseGIT.
- [http://code.google.com/p/msysgit/downloads/list?can=2 Download and Install MSysGit]
- [http://code.google.com/p/tortoisegit/wiki/Download?tm=2 Download the latest TortoiseGit]
+` `[`Download and Install MSysGit`](http://code.google.com/p/msysgit/downloads/list?can=2)
+` `[`Download the latest TortoiseGit`](http://code.google.com/p/tortoisegit/wiki/Download?tm=2)
-===Installation===
-Alright, first go through MSysGit installer and just set it up (its used as a base for TortoiseGit). then once you install MSysGit, launch the installer you just downloaded for TortoiseGit, you'll be prompted by a window similar to the following
+### Installation
-[[File:tgit-1.jpeg|framed|center]]
-[[File:tgit-2.jpeg|framed|center|The next window is "Choose SSH Client", select "TortoisePLink", hit Next.]]
-[[File:tgit-3.jpeg|framed|center|The next window is "Custom Setup", do not change anything unless you know what you're doing, hit Next.]]
-[[File:tgit-4.jpeg|framed|center|We're done with the installation, that was easy, wasn't it?]]
+Alright, first go through MSysGit installer and just set it up (its used as a base for TortoiseGit). then once you
+install MSysGit, launch the installer you just downloaded for TortoiseGit, you'll be prompted by a window similar to the
+following
+[framed\|center](File:tgit-1.jpeg "wikilink") [framed\|center\|The next window is "Choose SSH Client", select
+"TortoisePLink", hit Next.](File:tgit-2.jpeg "wikilink") [framed\|center\|The next window is "Custom Setup", do not
+change anything unless you know what you're doing, hit Next.](File:tgit-3.jpeg "wikilink") [framed\|center\|We're done
+with the installation, that was easy, wasn't it?](File:tgit-4.jpeg "wikilink")
+### Obtaining Hercules
-===Obtaining Hercules===
Go to the folder where you want Hercules to be placed, right click and select "Git Clone..."
-[[File:tgit-5.jpeg|framed|center]]
-in the URL field, type the following:
- https://github.com/HerculesWS/Hercules.git
-ensure the 'Directory' field is as desired, and hit 'OK'
-[[File:tgit-6.jpeg|framed|center]]
-[[File:tgit-7.jpeg|framed|center|Now Hercules is being downloaded]]
-Just wait for it to complete the download of your working copy and you'll be good to go.
+[framed\|center](File:tgit-5.jpeg "wikilink") in the URL field, type the following:
+
+` `[`https://github.com/HerculesWS/Hercules.git`](https://github.com/HerculesWS/Hercules.git)
+
+ensure the 'Directory' field is as desired, and hit 'OK' [framed\|center](File:tgit-6.jpeg "wikilink")
+[framed\|center\|Now Hercules is being downloaded](File:tgit-7.jpeg "wikilink") Just wait for it to complete the
+download of your working copy and you'll be good to go.
+
+### Updating Hercules
+
+Right-Click the folder where you downloaded your working copy and within the TortoiseGit menu, select "Pull..." as shown
+below [framed\|center](File:tgit-8.jpeg "wikilink") On the following window just hit 'OK', and your working copy will
+update. ![\|center\|framed](tgit-9.jpeg "|center|framed")
+
+# Obtaining Hercules on Linux
+### CentOS
-===Updating Hercules===
-Right-Click the folder where you downloaded your working copy and within the TortoiseGit menu, select "Pull..." as shown below
-[[File:tgit-8.jpeg|framed|center]]
-On the following window just hit 'OK', and your working copy will update.
-[[File:tgit-9.jpeg||center|framed]]
+- Step 1:
+` rpm -Uvhhttp://repo.webtatic.com/yum/centos/5/latest.rpm`
+- Step 2:
-=Obtaining Hercules on Linux=
-===CentOS===
-* Step 1:
- rpm -Uvhhttp://repo.webtatic.com/yum/centos/5/latest.rpm
-* Step 2:
- yum install --enablerepo=webtatic git-all
-* Step 3:
- yum install --enablerepo=webtatic --disableexcludes=main git-all
+` yum install --enablerepo=webtatic git-all`
+- Step 3:
-===Debian/Others===
-* Step 1:
- apt-get install git
+` yum install --enablerepo=webtatic --disableexcludes=main git-all`
+### Debian/Others
+
+- Step 1:
+
+` apt-get install git`
+
+### Obtaining a Working Copy
-===Obtaining a Working Copy===
Type the following to create a Hercules working copy in your home (~) directory:
- git clone https://github.com/HerculesWS/Hercules.git ~/Hercules
+` git clone `[`https://github.com/HerculesWS/Hercules.git`](https://github.com/HerculesWS/Hercules.git)` ~/Hercules`
+
+### Updating a Working Copy
-===Updating a Working Copy===
Type the following when inside your working copy:
- git pull
-[[Category:Installation]]
\ No newline at end of file
+
+` git pull`
+
+[Category:Installation](Category:Installation "wikilink")
diff --git a/docs/setup/src-config.md b/docs/setup/src-config.md
index e7f9733..72a8941 100644
--- a/docs/setup/src-config.md
+++ b/docs/setup/src-config.md
@@ -1,103 +1,165 @@
-This page provides information on the '''/src/config/''' folder and its settings. The '''/src/config/''' folder contains special server settings that allow you to further customize your server, the most popular of them being '''RENEWAL''', a switch to enable or disable Ragnarok Renewal mechanics
+This page provides information on the **/src/config/** folder and its settings. The **/src/config/** folder contains
+special server settings that allow you to further customize your server, the most popular of them being **RENEWAL**, a
+switch to enable or disable Ragnarok Renewal mechanics
+### /src/config/const.h
+
+------------------------------------------------------------------------------------------------------------------------
-=== /src/config/const.h ===
-----
This file does not posses any settings, it is used to store constants used by other settings.
-=== /src/config/core.h ===
-----
-The core configuration file (which is inherited by map.h) that inherits all other configuration files, at this point in time this file does not possess any settings
+### /src/config/core.h
+
+------------------------------------------------------------------------------------------------------------------------
+
+The core configuration file (which is inherited by map.h) that inherits all other configuration files, at this point in
+time this file does not possess any settings
+
+### /src/config/renewal.h
+
+------------------------------------------------------------------------------------------------------------------------
-=== /src/config/renewal.h ===
-----
This configuration files provides Ragnarok Renewal settings for you to further customize your server
-==== RENEWAL ====
-:This setting affects the following mechanics
-:* Renewal MATK
-:* Renewal MDEF
-:* Renewal DEF
-:* Renewal Status Points
-:* Renewal Heal Formula
-:* Renewal ASPD Shield Penalty
-:* Renewal Stat Bonuses (str,agi,vit,flee,hit,etc)
-:* Renewal Files
-:** ''item_db_re.txt'', ''statpoint_renewal.txt'', ''job_db_re.txt'', [[DB_Folder_Inheritance|and others]] are only loaded in this mode. [[DB_Folder_Inheritance|Check the DB Inheritance page for all]]
-:'''How to Disable'''
-:* Commenting it's #define RENEWAL line out makes it disable (add '''//''' before #define)
-
-==== RENEWAL_DROP ====
-:This setting enables or disables Ragnarok Renewal drop rate modifier, which is based on the level difference between a character and the monster it killed
-:The modifier depends on the following table
-:{|border="1" style="text-align:center;"
-|-
-| '''Difference in Base Level''' || '''Drop Rate'''
-|-
-| 30 levels above monster or more || 50%
-|-
-| + 15 ~ 29 || 60%
-|-
-| + 10 ~ 14 || 75%
-|-
-| + 6 ~ 9 || 90%
-|-
-| + 1 ~ 5 || 100%
-|-
-| Equal || 100%
-|-
-| - 1 ~ 10 || 100%
-|-
-| - 11 ~ 13 || 75%
-|-
-| 15 levels below monster or more || 50%
-|}
-:'''For Example''', if you are level 50, and you kill a monster level 10, which normally drops a item at 50%, for you it'd drop at 25% (because you're 30 levels or higher than it)
-:'''How to Disable'''
-:* Commenting it's #define RENEWAL_DROP line out makes it disable (add '''//''' before #define)
-
-==== RENEWAL_EXP ====
-:This setting enables or disables Ragnarok Renewal exp rate modifier, which is based on the level difference between a character and the monster it killed
-:'''How to Disable'''
-:* Commenting it's #define RENEWAL_DROP line out makes it disable (add '''//''' before #define)
-
-==== RENEWAL_CAST ====
-:This setting enables or disables '''Renewal Casting''' and in it, cast time is decreased by DEX*2+INT, 20% of the cast time is not reduced by stats, for example, on a skill whose cast time is 10s, only 8s may be reduced. other 2s are part of a "fixed cast time" that is only reduced by special items and skills (such as Arch Bishop's Sacrament skill). '''When disabled''' it uses the old cast time method, influenced by dex, items and skills
-:'''How to Disable'''
-:* Commenting it's #define RENEWAL_CAST line out makes it disable (add '''//''' before #define)
-==== RENEWAL_CAST_VMIN ====
-:* '''Note''': This setting only matters if '''RENEWAL_CAST''' is enabled
-:This setting allows you to specify how many points a user is required to have to reach instant cast
-:* '''VALUE''': The formula is (casterDex x 2) + (casterInt), '''default value''' is '''530'''
-==== RENEWAL_EDP ====
-:This setting enables or disables Ragnarok Renewal mechanics for '''Enchant Deadly Poison''' skill,
-:the changes compared to old mechanics are:
-:* EDP doesn't increases final damage by 400%, instead it increases your weapon atk and your stat atk
-:* EDP doesn't affect '''Grimtooth''' skill
-:'''How to Disable'''
-:* Commenting it's #define RENEWAL_EDP line out makes it disable (add '''//''' before #define)
-
-=== /src/config/secure.h ===
-----
+
+#### RENEWAL
+
+
+This setting affects the following mechanics
+
+- Renewal MATK
+- Renewal MDEF
+- Renewal DEF
+- Renewal Status Points
+- Renewal Heal Formula
+- Renewal ASPD Shield Penalty
+- Renewal Stat Bonuses (str,agi,vit,flee,hit,etc)
+- Renewal Files
+ - *item_db_re.txt*, *statpoint_renewal.txt*, *job_db_re.txt*, [and others](DB_Folder_Inheritance "wikilink") are only
+ loaded in this mode. [Check the DB Inheritance page for all](DB_Folder_Inheritance "wikilink")
+
+**How to Disable**
+
+- Commenting it's \#define RENEWAL line out makes it disable (add **//** before \#define)
+
+#### RENEWAL_DROP
+
+
+This setting enables or disables Ragnarok Renewal drop rate modifier, which is based on the level difference between a
+character and the monster it killed
+
+The modifier depends on the following table
+
+{\|border="1" style="text-align:center;"
+
+\|- \| **Difference in Base Level** \|\| **Drop Rate** \|- \| 30 levels above monster or more \|\|
+50% \|- \| + 15 ~ 29 \|\| 60% \|- \| + 10 ~ 14 \|\|
+75% \|- \| + 6 ~ 9 \|\| 90% \|- \| + 1 ~ 5 \|\| 100% \|- \| Equal \|\|
+100% \|- \| - 1 ~ 10 \|\| 100% \|- \| - 11 ~ 13 \|\| 75% \|- \| 15 levels below monster or more
+\|\| 50% \|}
+
+
+**For Example**, if you are level 50, and you kill a monster level 10, which normally drops a item at 50%, for you it'd
+drop at 25% (because you're 30 levels or higher than it)
+
+**How to Disable**
+
+- Commenting it's \#define RENEWAL_DROP line out makes it disable (add **//** before \#define)
+
+#### RENEWAL_EXP
+
+
+This setting enables or disables Ragnarok Renewal exp rate modifier, which is based on the level difference between a
+character and the monster it killed
+
+**How to Disable**
+
+- Commenting it's \#define RENEWAL_DROP line out makes it disable (add **//** before \#define)
+
+#### RENEWAL_CAST
+
+
+This setting enables or disables **Renewal Casting** and in it, cast time is decreased by DEX\*2+INT, 20% of the cast
+time is not reduced by stats, for example, on a skill whose cast time is 10s, only 8s may be reduced. other 2s are part
+of a "fixed cast time" that is only reduced by special items and skills (such as Arch Bishop's Sacrament skill). **When
+disabled** it uses the old cast time method, influenced by dex, items and skills
+
+**How to Disable**
+
+- Commenting it's \#define RENEWAL_CAST line out makes it disable (add **//** before \#define)
+
+#### RENEWAL_CAST_VMIN
+
+:\* **Note**: This setting only matters if **RENEWAL_CAST** is enabled
+
+
+This setting allows you to specify how many points a user is required to have to reach instant cast
+
+- **VALUE**: The formula is (casterDex x 2) + (casterInt), **default value** is **530**
+
+#### RENEWAL_EDP
+
+
+This setting enables or disables Ragnarok Renewal mechanics for **Enchant Deadly Poison** skill,
+
+the changes compared to old mechanics are:
+
+- EDP doesn't increases final damage by 400%, instead it increases your weapon atk and your stat atk
+- EDP doesn't affect **Grimtooth** skill
+
+**How to Disable**
+
+- Commenting it's \#define RENEWAL_EDP line out makes it disable (add **//** before \#define)
+
+### /src/config/secure.h
+
+------------------------------------------------------------------------------------------------------------------------
+
This configuration files provides additional security features to your server
-==== SECURE_NPCTIMEOUT ====
-:When enabled all npcs dialog will 'timeout' if user is on idle for longer than the amount of seconds allowed, on 'timeout' the npc dialog window changes it's next/menu to a 'close' button
-:* '''VALUE''' is the amount of '''seconds''' you want the server to wait prior to timeout an idle NPC dialog
-==== SECURE_NPCTIMEOUT_INTERVAL ====
-:* '''Note''': This setting only matters if '''SECURE_NPCTIMEOUT''' is enabled
-:This setting is the amount of '''seconds''' you want the server to wait prior to checking if an NPC dialog is idle
-
-=== /src/config/classes/general.h ===
+
+#### SECURE_NPCTIMEOUT
+
+
+When enabled all npcs dialog will 'timeout' if user is on idle for longer than the amount of seconds allowed, on
+'timeout' the npc dialog window changes it's next/menu to a 'close' button
+
+- **VALUE** is the amount of **seconds** you want the server to wait prior to timeout an idle NPC dialog
+
+#### SECURE_NPCTIMEOUT_INTERVAL
+
+:\* **Note**: This setting only matters if **SECURE_NPCTIMEOUT** is enabled
+
+
+This setting is the amount of **seconds** you want the server to wait prior to checking if an NPC dialog is idle
+
+### /src/config/classes/general.h
+
This configuration files provides settings for you to further customize your server skills
-==== RR_MAGIC_REFLECTION ====
-:* '''Note''': This setting exists because server owners were exposed to the unofficial magical reflection for several years, and expecting many to not want to change this setting was made.
-:When enabled the official magical reflection is used, official magical reflection damage is calculated against ''the caster'', while the unofficial magical reflection calculates the reflected damage against ''the target''.
-:'''How to Disable'''
-:* Commenting it's #define MAGIC_REFLECTION_TYPE line out makes it disable (add '''//''' before #define)
-
-=== /src/config/classes/swordsman.h ===
-----
+
+#### RR_MAGIC_REFLECTION
+
+:\* **Note**: This setting exists because server owners were exposed to the unofficial magical reflection for several
+years, and expecting many to not want to change this setting was made.
+
+
+When enabled the official magical reflection is used, official magical reflection damage is calculated against *the
+caster*, while the unofficial magical reflection calculates the reflected damage against *the target*.
+
+**How to Disable**
+
+- Commenting it's \#define MAGIC_REFLECTION_TYPE line out makes it disable (add **//** before \#define)
+
+### /src/config/classes/swordsman.h
+
+------------------------------------------------------------------------------------------------------------------------
+
This configuration files provides settings for you to further customize your server's swordsman skills
-==== MAX_RUNE ====
-:This setting allows you to specify how many rune knight's runes of the same type an character is able to hold in his inventory
-:'''Default''' value for this setting is 20
-[[Category:Source Snippets]]
\ No newline at end of file
+
+#### MAX_RUNE
+
+
+This setting allows you to specify how many rune knight's runes of the same type an character is able to hold in his
+inventory
+
+**Default** value for this setting is 20
+
+[Category:Source Snippets](Category:Source_Snippets "wikilink")