I want to share my knowledge about RDB editing. Like my last post, I'm sharing this because I wish it was laid out as plainly in a post for me. Alas, it wasn't, and it took a whole lot of "ooh" "aah" to figure out what I was doing. I hope I'm not wasting my time and duplicating what somebody else has written in the past, but oh well, here if so, here it is again.
YOUR TOOLKIT (Required)
- RDB Editor
- I don't want to get involved in sticky drama, so I will NOT PROVIDE A LINK. Find one yourself. Ask around. Eternal gratitude to the wonderful developers (the actual developers - the people who put their time, energy, and knowledge to work) for their tools.
- SQL Management Studio
- US, FR, DE, MYSGPH, KR, etc. client. PLEASE open the launcher and FULLY UPDATE the client.
GUIDE
- Open the resource editor.
Remember, this is what you must find by searching, googling, or politely asking around.
- Fully update your unmodified retail client (US, FR, DE, MYSGPH, KR, any client works) through the launcher.
You can create a copy of your client to update, too. For example, in C:\gPotato\, right click on Rappelz and copy/paste. Rename the second folder to Updated Rappelz so you have "Rappelz" and "Updated Rappelz". Either way, whatever folder you pick I will refer to the target folder.
- Inside the resource editor of your choice, find the Data Dump section. Select your target folder as the directory, and choose an output folder that makes sense for you.
You will need to access the files, so pick an output folder like C:\Rappelz\rdbDump\.
- Click "Load" or an equivalent button if necessary.
Different resource editors may function differently. Please understand that this guide is meant to be general, not for a specific program.
- Filter by extension RDB by typing "rdb" (no quotes) inside the File Extension box or equivalent.
If you can't figure out how to filter the files, you CAN dump everything. This is a little bit more time-consuming, but when it's done, go into your output folder and find the /rdb/ child folder. The appropriate files will be inside there.
- In the RDB viewer section, select a column layout appropriate to the type of RDB you are going to view.
This step may vary depending on your resource editor.
If you want to view db_string(ascii).rdb, you need to select StringResource.
If you want to view db_item.rdb, you need to select ItemResource.
Experiment if necessary - it's pretty logical.
- Find the button or steps to save your loaded RDB to your SQL database.
In my client, this button is "Save To DB". If appropriate, update your database settings to reflect the name of your Arcadia database or login details. THIS WILL OVERWRITE THE ENTIRE APPROPRIATE TABLE, INCLUDING ANY CHANGES YOU MAY HAVE MADE. Back up accordingly if necessary.
- STOP. You're done! You just learned how to dump client resources and save them to the database. This can be used to update the StringResource, SummonResource, NpcResource, etc. in your database. You haven't really done anything special yet, but this is an important skill.
Next, you will learn how to make changes to the client.
EDITING THE CLIENT: STRINGS
I'm going to use strings as an example because they're simple and versatile.
This particular example REQUIRES the US string resource database. HOWEVER, pick any NPC (item, skill, pet, etc...) and follow along!
IMPORTANT: With any language/region, be sure to follow the above steps, especially importing the client's StringResource RDB into the database in full.
- Make changes in [dbo].[StringResource].
In the US client string database, Armor Trader Justice of Laksy has the following dialogue:
"How are you? I am Justice, an official armor trader of Laksy and a chief union member of Uranda. But my parents wanted me to be a lawyer."
What if her parents actually wanted her to be an astronaut?
Aha, look! One result! Lawyer is a pretty unique word, so that's not that unexpected. We could search any number of ways - LIKE '%Justice%' or LIKE '%Armor Trader%'. I just chose lawyer because it stood out. All you have to do is be able to find the string in the database. How you find it doesn't matter.Code:USE Arcadia SELECT * FROM [dbo].[StringResource] WHERE value LIKE '%lawyer%'
Execute the query. You should see "(1 row(s) affected)" in the result box.Code:USE Arcadia -- Make sure you change "code" to the UNIQUE code of whatever row you want to change. Whenever you see an empty string in the game, the number after it is the code. You can simply make a new row in the table and add a value. UPDATE [dbo].[StringResource] SET value='How are you? I am Justice, an official Armor Trader of Laksy and a chief union member of Uranda. But my parents wanted me to be a astronaut.<BR>Do you need anything? Please have a look.' WHERE code='90100202'
- Open your resource editor and select the RDB editor. Select the StringResource column format.
- Click "Load DB" or equivalent.
- Click "Save to RDB" and save as the original file name. In our case, that's db_string(ascii).rdb.
You may want to have a separate folder for this, such as C:\Rappelz\customRdbs\.
- Find the hash tool in your resource editor and encrypt the file/folder.
The hash for db_string(ascii).rdb is !PWS)3rDAd3O'`dU+O}deN
Save your file as the hash if you can't figure out how to hash the folder.
- Drag the hashed file into your usable (normal) PS client's /Resource/ folder
You have to fully restart the client after any changes. You do not need to restart the game server.
I'll probably come back and edit this for clarity a little bit later. You can always post here or message me if you have questions or need help.







