EAthena (software)
Encyclopedia
eAthena, short for English Athena, is a cross-platform
Cross-platform
In computing, cross-platform, or multi-platform, is an attribute conferred to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

, open-source game server
Game server
A game server is a remotely or locally run server used by game clients to play multiplayer video games. Most video games played over the Internet operate via a connection to a game server...

 software for the popular MMORPG
Massively multiplayer online role-playing game
Massively multiplayer online role-playing game is a genre of role-playing video games in which a very large number of players interact with one another within a virtual game world....

 Ragnarok Online
Ragnarok Online
Ragnarok Online , often referred to as RO, is a massively multiplayer online role-playing game or MMORPG created by GRAVITY Co., Ltd. based on the manhwa Ragnarok by Lee Myung-jin. It was first released in South Korea on 31 August 2002 for Microsoft Windows and has since been released in many other...

. It is an emulation
Server emulator
Server emulator, a term that is widely used to describe reimplementation of MMORPG game servers, typically clones proprietary commercial software by a third party. The term "private server" is also used while it may not be accurate as often the legitimate server is also privately owned...

 of the Aegis
AEGIS (Ragnarok Online)
AEGIS is Windows Server software used along with Microsoft SQL Server by Gravity Corporation to run the official Ragnarok Online game servers. It was originally developed for exclusive use within Gravity and Gravity subsidiaries, but has been leaked within its lifetime, purportedly by several teams...

 software created by Gravity Co., Ltd. that powers the official Ragnarok Online servers, and is used to run private server
Private server
Private server is a server machine that is privately owned by individual. As servers need adequate internet connection, power and are also noisy, they are often allocated in the colocation centre. Some centers also offer rack space for the single machine for $99 per month or about...

s. This is accomplished through modifying the game client
Game client
A game client is a piece of software that connects to a game server. The server provides the connection and sends packets of information back to the game client. Many clients can be connected to the server at the same time, which will keep an overall view of the game world. Each game-client has...

 provided by Gravity to connect to private, instead of official servers.

History

Athena (commonly called jAthena, short for Japanese Athena, by non-Japanese speakers) was a Ragnarok Online game server emulation project that was started in late 2002. It was created because around this time, the official free-to-play
Free-to-play
Free-to-play refers to any video game that has the option of allowing its players to play without paying. The model was first popularly used in early massively multiplayer online games targeted towards casual gamers, before finding wider adoption among games released by major video game...

 Ragnarok Online servers exited the open-beta phase and became pay-to-play, and many players either did not want to or could not pay to play game.

eAthena was initially born as AppleMod in late 2003, an English translation of Athena by a developer that went by the handle AppleGirl. AppleMod eventually forked from Athena and was renamed to eAthena in early 2004. It has been under active development ever since.

Specifications

eAthena is coded in the C programming language and makes use of the zlib
Zlib
zlib is a software library used for data compression. zlib was written by Jean-Loup Gailly and Mark Adler and is an abstraction of the DEFLATE compression algorithm used in their gzip file compression program. Zlib is also a crucial component of many software platforms including Linux, Mac OS X,...

 and MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

 libraries. The actual application is split into three servers - login, char, and map, each of which serve a different purpose. Support for multiple map servers is also possible. Thus, while the individual eAthena servers are single-threaded, they do essentially have support for running on multiple processes, and even on multiple computers.

For storage of dynamic game data, eAthena can be compiled to use one of two different modes of database operation: TXT or SQL. TXT is short for plain-text whereas SQL is MySQL. SQL is the standard way of running the eAthena servers. TXT is generally used merely only for testing and development purposes as a quick and convenient way to get eAthena up and running without having to deal with any 3rd-party software, and is not recommended for live, production servers.

eAthena uses plain-text databases for configuration of static game data such as item, monster, and skill information, although some of these can optionally be configured to use MySQL instead. Additionally, eAthena features a fully custom, C-like scripting engine
Scripting language
A scripting language, script language, or extension language is a programming language that allows control of one or more applications. "Scripts" are distinct from the core code of the application, as they are usually written in a different language and are often created or at least modified by the...

 for configuration of NPC
Non-player character
A non-player character , sometimes known as a non-person character or non-playable character, in a game is any fictional character not controlled by a player. In electronic games, this usually means a character controlled by the computer through artificial intelligence...

s, quest
Quest (gaming)
A quest in role-playing video games — including massively multiplayer online role-playing games and their predecessors, MUDs — is a task that a player-controlled character or group of characters may complete in order to gain a reward...

s, warp portals, and monster spawns, among other interactive in-game systems.

There have been talks of and attempts at improving the eAthena code base for years, including full-scale conversion to C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

 (called eAPP), replacement of the TXT system with SQLite
SQLite
SQLite is an ACID-compliant embedded relational database management system contained in a relatively small C programming library. The source code for SQLite is in the public domain and implements most of the SQL standard...

, and replacement of the script engine with Lua, but none of these ideas have ever been completed.

Comparison with Aegis

eAthena has proven to be a solid, up-to-date, and very close emulation of Gravity's own Aegis software. This has been accomplished by analysis of both Gravity's Ragnarok Online client software and from Aegis itself, which has been leaked numerous times. Most of eAthena's databases and scripts have in fact been converted directly from leaked Aegis packages. eAthena's progress usually lags behind Aegis' an episode or so, as updated leaks are required to obtain new data.

eAthena is efficient, stable, and secure. Both Aegis and eAthena can handle thousands of players at once without issues, and security exploits that are discovered are quickly patched. However, eAthena interestingly has a number of notable advantages over Aegis, of which include the following:
  • eAthena is cross-platform and can run on both Microsoft Windows
    Microsoft Windows
    Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

     and Unix-like
    Unix-like
    A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

     platforms (such as Linux
    Linux
    Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

     and Mac OS X
    Mac OS X
    Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

    ), while Aegis is Windows-only.
  • It supports the free MySQL database software as well as plain-text databases while Aegis requires the proprietary Microsoft SQL Server
    Microsoft SQL Server
    Microsoft SQL Server is a relational database server, developed by Microsoft: It is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network...

     software.
  • It is fully open-source thus allowing trivial custom modification, whereas only Aegis binaries
    Executable
    In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

     and not source code
    Source code
    In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

    have been leaked, making modifications limited and very difficult.
  • eAthena is much easier to configure and setup than Aegis. Arguably, eAthena's databases and script engine are also easier to work with, more well-formatted, and better featured than those of Aegis.
  • eAthena has many more features than Aegis and offers much greater customization. Examples include eAthena's far more robust in-game @command system versus Aegis' /command system and eAthena's powerful configuration system which allows alteration of many game functionalities without having to touch the source code, of which Aegis is nearly completely lacking, among others.
  • eAthena requires far fewer resources than Aegis, namely in the area of memory. Aegis requires over 2 gb of RAM just to launch while eAthena can run on only several hundred megabytes, or even less than 100 mb using optional dynamic data allocation.
  • The number of 3rd-party softwares available for eAthena far exceeds those of Aegis.


On the other hand, on account of Aegis being a professionally developed software, it is likely to have greater stability and security than eAthena. Additionally, Aegis is Ragnarok Online exactly how it is and was intended to be, and while eAthena strives to be as close to accurate an emulation as possible, it is not perfect, and the game mechanics are slightly different in many areas.

As of 2010, there are approximately 500 private servers running eAthena, while there are around 30 official servers running Aegis. Despite Aegis being frequently leaked and available for use, it is rarely used to run private servers, primarily due to the various advantages of eAthena over it listed above.

Legality

The legality of eAthena is disputable and is considered to be in the grey area. This is because it allows individuals to set up illegal Ragnarok Online private servers. However, it has been argued that running eAthena is perfectly legal, and that only hacking of the Ragnarok Online client to connect to an eAthena server is illegal. While this still makes eAthena private servers illegal, it spares the development team from any breaking of the law and potential prosecution.

When Ragnarok Online emulators and private servers first appeared in 2003, Gravity took action. A prominent example of this is when they threatened the YARE (Yet Another Ragnarok Emulator) project, at that time the emulator with the largest user base, with a lawsuit if they did not shutdown by the end of the year. However, as soon as they did, other emulator projects such as eAthena immediately took its place. Since then, for reasons that are not entirely clear, Gravity has done virtually nothing about the emulator and private server communities.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK