RO-ARSE-KIT(6) Games Manual RO-ARSE-KIT(6)

NAME

Ragnarok Online ArseKit — A signature-based binary patcher for the Ragnarok Online Beta client, featuring connection stability and multi-client support.

METADATA

Platform: Ragnarok Online
Release: 2002-02-09
Status: Archived — binary/source preserved

SYNOPSIS

ArseKit.exe

DESCRIPTION

Arse Kit was a specialized patching utility for the Ragnarok Online Beta client.

Unlike many contemporary tools that relied on fixed memory addresses, Arse Kit 2.0 used a robust signature scanning algorithm to locate the correct file offsets for each patch. This approach allowed the tool to remain functional across multiple Beta patches, as it sought specific byte sequences rather than relying on hardcoded locations.

The tool was designed to be executed from the same directory as Ragexe.exe, where it would directly modify the binary to enable several gameplay and connectivity enhancements.

While the original executable for this version has been lost, the comprehensive library of version-independent “crack data” has been preserved.

The archive includes the following functional components:

  • crackdatas.h — A collection of version-independent memory offsets and file patch data.

KEY FEATURES

  • Never Disconnect — Prevents the “You are disconnected from server” message that occurs when the client and server lose synchronization. This was particularly useful for players using speed hacks or debugging tools like SoftICE, which often tripped the client’s internal desync checks.
  • Bypass Patch Client — Allows the user to skip the mandatory patch download process. This enables logging into the game with older Beta versions and significantly speeds up the initial game load by bypassing the version check.
  • Multiple RO Instances — Removes the restriction on running only one instance of the game. This allowed players to have multiple game windows open simultaneously, facilitating self-trades and item transfers between accounts.

NOTES

It was probably my first popular hack for RO. There was a small community of players who appreciated it.

I made a few versions of this tool over time, because each new beta minor update would break the signature-based patching. Eventually, I got tired and decided to use a dynamic patching approach instead.

ATTACHMENTS (Browsing /usr/games/hacks/)

Path: /usr/games/hacks/ragnarok_online/Arse Kit/readme.txt3535 bytes
Arse Kit v2.0

What's new in version 2.0
-------------------------
- Works on EVERY Beta patch. 
  Slightly modified the searched datas and it has greatly improved the chances to find the file
  offset of each crack (The position where to make the patch). Tested and works on every single
  patch that came out for the english beta so far. Shall work on futur patches for a long time.

What's new in version 1.3
-------------------------
- Updated Never Disconnect to work on patch 64.

What's new in version 1.2
-------------------------
- Updated Multiple RO Instance to work on patch 57.

What's new in version 1.1
-------------------------
- Updated Never Disconnect to work on patch 56.
					
This program writes patches into Ragexe.exe. It must be in the same folder than Ragexe.exe.
Obviously, I suggest you make a back up of that file somewhere.

What the hacks do:

- Never Disconnect:
   Prevents disconnections occuring when the connection between the RO client and game server is
   not synchronized. A message shows up telling "You are disconnected from server" when it
   happens. This hack prevents this from happening. This can be really handy for any person that
   was being disconnected all the time. Yet, the common uses of this would be to not getting
   disconnected either when using speed hack programs, or, for any real RO hackers, when stepping
   into SoftIce for some times ;)
   
   However, take in consideration that it's still possible that you get disconnected, either if
   the game server drops or shuts down, or if you loose your connection with your ISP.

- Bypass Patch Client:
   Bypasses the patches download when loading RO. Therefore, this hack allows you to log on with
   older RO Beta patches. Also, this can be used to load the game faster, since you don't have
   to wait until it detects if there aren't any new versions out. You need to run Ragexe.exe for
   this to work, running ragnarok.exe will bring up the Patch Client as usual.

- Multiple RO Instances:
   This crack allows you to run more than once Ragnarok Online. Thus, you can have multiple
   games running in background at the same time. The advantage of this is pretty obvious; you
   can transfer items from an account to another by yourself :)
   
   Though, double logins on the same account is not possible.


Why this program is good:

This program uses a special algorithm that makes it able to patch Ragexe.exe by seeking certain
bytes for the right file offset location. Thus, these hacks work for older Beta patches, and
will work for futur patches. Yes, I do think ahead ;)

The only time these hacks won't work anymore is if futur versions have different coding. In that
case, this program will need to be updated. I might update the program as well if I come up with
other hacks which a file patch would be required, or would be more convenient for that matter.

Check out my error.txt file to know what the errors mean if you ever encounter some.

This being said, have fun :)


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

~ Arsenic  a.k.a  Artemis`Entreri

Don't waste time e-mailing me, if you have questions or want to contact me just drop by the
dedicated Ragnarok Online hacking forum on Cheatlist at:

http://forums.cheatlist.com/phpBB2/forumdisplay.php?s=&forumid=30

You need to register to see or post messages. Everyone is welcome to join.
        
Web page : http://onesided.cjb.net 
           www.onesided.da.ru  (Mirror)
Path: /usr/games/hacks/ragnarok_online/Arse Kit/crackdatas.h1254 bytes
//Bypass patch client
char fileName[] = "ragexe.exe";
BYTE oldData1[] = {0x83,0xc4,0x08,0x85,0xc0,0x74,0x1d};
int oldData1Len = sizeof(oldData1);
BYTE newData1[] = {0x83,0xc4,0x08,0x85,0xc0,0x74,0x00};
int newData1Len = sizeof(newData1);

//Anti disconnect - Beta 103 = 4BABE3
//Part 1 
BYTE oldAnti1[] = {0x81,0xC1,0xE0,0x2E,0x00,0x00,0x3b,0xc1};
BYTE oriAnti1[] = {0x12};
int oldAnti1Len = sizeof(oldAnti1);
int oriAnti1Len = sizeof(oriAnti1);
BYTE newAnti1[] = {0x00};
#define ANTI1OFFSET	9 //Negatif

//Part 2 from same file pointer
BYTE oriAnti2[] = {0x76};
int oriAnti2Len = sizeof(oriAnti2);
BYTE newAnti2[] = {0xeb};
#define ANTI2OFFSET	8

//Run multiple RO instances - Beta 103 = 51E171
//Part 1
BYTE oldMulti1[] = {0x03,0xc1,0x03,0xc2,0x3d,0xc9,0x02,0x00,0x00,0x0f,0x85};
BYTE oriMulti1[] = {0x0f,0x85};
int oldMulti1Len = sizeof(oldMulti1);
int oriMulti1Len = sizeof(oriMulti1);
BYTE newMulti1[] = {0xeb,0x04};
#define MULTI1OFFSET 	63 //Negatif

//part 2
BYTE oldMulti2[] = {0x33,0xdb,0x6a,0x72,0x56,0x89,0x5c,0x24,0x34,0xc7,0x44,0x24,0x38};
BYTE oriMulti2[] = {0x74};
int oldMulti2Len = sizeof(oldMulti2);
int oriMulti2Len = sizeof(oriMulti2);
BYTE newMulti2[] = {0xeb};
#define MULTI2OFFSET	11 //Negatif

TECHNOLOGIES

  • C++
  • Memory Patching
  • Reverse Engineering
int03h.com circa 2002 RO-ARSE-KIT(6)