[HOW-TO]Resourcing For Dummies.

01/24/2013 17:36 ismokedrow#1
Contents:
  • What is Resourcing? [EXPL]
  • What will I need? [REQ]
  • Editing RDB/NUI [EDIT]
  • Adding Modified File to Client [SAVE]
  • About Empty-Strings [EMPTY]

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

What is Resourcing? [EXPL]

"Resourcing" -- the act of using a client's built-in /Resource/ folder to force modifications into the client. Such modifications can include minor text changes up to much more difficult client edits.

Warning!

While exchanging imagery between clients is easy due to the fact the clients are all programmed to read images in the same way, things like nui (window structure file) and rdb (internal database file) require more attention to detail.

Example (NUI):
If you were to resource a 7.3 window_main_player_info.nui into a 7.1 client, the client would crash on load because it does not understand the nui (as new tags, images and structures were added to this nui in 7.3)


Example (RDB):
If you were to resource a 8.1 db_pet.rdb into a 7.4 client the looters will now malfunction as the 7.4 client is not engineered to read the 8.1 format (As the structure of the file has changed)


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

What will I need? [REQ]

The tools you will require are directly reliant on the task you are attempting to complete and the Client Epic you are working with.

6.1/6.2 - Arabic Resource Editor
7.4 - Game-Portal Resource Editor
7.4 - Raskim SQL to RDB Editor
7.4 - Xijezu 7.4 SQL to RDB Editor

Notice: If you can not find these tools, it's not my fault. Create your own!

For actual file extraction you will need:
- NCarbon Full Dumper/Normal Dumper
or
- Advanced Client Dumper


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

Editing RDB/NUI [EDIT]

Editing an RDB is as easy as creating a program that converts HEX into Binary (or human-readable) at first this may seem a daunting task. But I assure you with the information below you will find it much easier:

RDB Structure:
- First 128-Bytes = File Date
- First 4-Bytes after File Date = Row Count
- First 4-Bytes after Row Count = Beginning of First Row

after the first section is figured out, the rest just depends on what fields are contained in that rdb (normally stick very close to the database structure, but won't be EXACTLY the same structure) then after you find the last field of the row, the very next 4-byte will be the beginning of the next row and so on all the way down the rest of the rdb.

NUI Structure:
The only truly important thing's to be told about an NUI is that it is a text-file and can be viewed with notepad++ the other thing being that rect: x,x,x,x is the position of the current window segment.

First X = Horizontal (+ = Right / - = Left)
Second X = Vertical (+ = Down / - = Up)
Third X = Horizontal (+ = Right / - = Left)
Fourth X = Vertical (+ = Down / - = Up)

Note, Second and Fourth X are boundary limiters, meaning if you are changing the rect on a text and you increase the first x to move it to the right, if you do not increase the third x by the same amount the text will like wrap down to the next line or be cut-off/vanish entirely.

Another minor thing to note about the NUI Files, is they directly link to an SPR! So be mindful of this, some changes will not take effect without proper updates to the connected .spr


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

Adding Modified File to Client [SAVE]

Once you have modified the resource, whatever it is. You must simply rename the file from it's real_name (db_string(ascii).rdb) to it's hash_name ( !PWS)3rDAd3O'`dU+O}deN ) and simply place it into your client's /resource/ folder.


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

About Empty Strings [EMPTY]

It is important that anyone attempting to resource realize that by adding content that did not natively exist in your client while cause said content to display empty strings. ALLLLL! And I mean ALLLLLLLLL empty strings originate from one central cause (missing entry in dbo.StringResource / db_string.rdb)

How to Read Empty String:

For example say you have an NPC who's name is Empty String: 10004049, the empty string itself says the code of the string. So in order to correct this you would either locate a db_string.rdb that had the npc string in it (OR) you load up dbo.StringResource create an entry ("Test TEXT") for code 10004094, load to rdb and add to the client, now your NPC is not Empty String: 10004094 but "Test TEXT"


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

If you feel like you need even more help than this, leave a post and if it is not totally idiotic I may help you.
01/24/2013 18:02 eziorav#2
Quote:
Originally Posted by ismokedrow View Post
Contents:
6.1/6.2 - Arabic Resource Editor
7.4 - Game-Portal Resource Editor
7.4 - Raskim SQL to RDB Editor
7.4 - Xijezu 7.4 SQL to RDB Editor

Notice: If you can not find these tools, it's not my fault. Create your own!
[/B]
I know you are sometimes rude with newbies like me
but it is not my fault that im new in programming and trying to create thing but i can't
01/24/2013 22:35 Strange2010#3
not expected from u drow , but good job
01/24/2013 23:07 TheChinStrap#4
Quote:
Originally Posted by eziorav View Post
I know you are sometimes rude with newbies like me
but it is not my fault that im new in programming and trying to create thing but i can't
Who's fault is it exactly? Drow, Looks like it's your fault, mate.
It's exactly your fault and no one else's. If you spent half the time studying and working on your skills as you did asking for hand outs and complaining you'd be a a master. (This goes out to the entire epvp rappelz-pserver section, not directly at you.)

Most of us learned from trial and error, code samples, tutorials, and/or classes. There is no shortcut to learning programming and epvp is not a learning resource. Spend a week working seriously on a project and then tell me you don't understand why it's frustrating when people want, nay, demand it be handed to them.

[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]

I learned from code samples from websites like these and tutorials. There's no better school than the university of Google and YouTube.
01/26/2013 01:59 ismokedrow#5
I will consider refining this thread if it get's a sticky ^^
01/26/2013 02:18 marekrndr#6
Quote:
Originally Posted by TheChinStrap View Post
Who's fault is it exactly? Drow, Looks like it's your fault, mate.
I will also blame Drow on my erection problems when I'm near age 70.
02/09/2014 18:48 hassuny#7
thanks Ismokedrow all your posts are useful ^^
02/09/2014 19:28 eziorav#8
Quote:
Originally Posted by hassuny View Post
thanks Ismokedrow all your posts are useful ^^
are kidding it has been a year since the last post can't you see it ?
02/09/2014 20:15 ismokedrow#9
I believe he was referring to the thread itself mate, by the way -- thanks for bumping this back to the top because I need to correct some misinformation about NUI rect.