hex code guide by drakaer

25
Hex Code Guide V1.0 By Drakaer Special Thanks to R3DSKULL for his help =) This Guide was produced by Drakaer with help from R3DSKULL. I wrote this guide from my own experiences, notes from R3DSKULL and with the XML Creator from Romulans Tool Pack. Some parts of the guide are incomplete as knowledge of that section was missing when this guide was made. If you have anything to add to the guide or know what the missing sections are please let me know. You can find me at http://drakaer.co.cc/forums Contents Introduction to Hex code Breaking Up Hex code Level and Class Requirement Stat Requirements Durability Weapon grade/level Weapon Damage Frequency/Attack Rate Attack Range Dist Frag Sockets Socking items Refining Gear Adding Stats

Upload: undeadz-nx

Post on 01-Apr-2015

718 views

Category:

Documents


17 download

TRANSCRIPT

Page 1: Hex Code Guide By Drakaer

Hex Code Guide V1.0 By Drakaer

Special Thanks to R3DSKULL for his help =)

This Guide was produced by Drakaer with help from R3DSKULL. I wrote this guide from my own experiences, notes from R3DSKULL and with the XML Creator from Romulans Tool Pack. Some parts of the guide are incomplete as knowledge of that section was missing when this guide was made. If you have anything to add to the guide or know what the missing sections are please let me know. You can find me at http://drakaer.co.cc/forums

Contents

Introduction to Hex code

Breaking Up Hex code

Level and Class Requirement

Stat Requirements

Durability

Weapon grade/level

Weapon Damage

Frequency/Attack Rate

Attack Range

Dist Frag

Sockets

Socking items

Refining Gear

Adding Stats

Remaining parts of the code

Other hex code

Flying mounts

Pets

Page 2: Hex Code Guide By Drakaer

Introduction to Hex code

Many of the items in Perfect World are made up of a thing called hex code or hexdata. This hex code is a string of hex that says how the item is made up, what it does, who can use it, and other variables like that. This guide will hopefully teach you how to read portions of that hex code and make changes to it in pwAdmin or some other Perfect World item editing software.

What you will need:

You will need some program that will allow you to see and edit the hex code of items on your character. Eg pwAdmin by Ronny1982 can be found here http://pwadmin.codeplex.com/

Xml editor eng – this is an item xml generator translated by Talolan. Although not necessary this is very helpful for producing hex code for items or certain parts of hex code that you may want. This tool can be found in Romulan’s tool pack under XML Tools which is mirrored here http://www.filefront.com/16349429/TOOL-PACK-ROMULAN.7z/

You may also need a decimal to hex or hex to decimal converter depending on what part of the code you work with. PWGen1 is a good tool for this. Just click on the conversion tools and either input your hex(octet), float or dword and convert it. This tool can also be found in Romulan’s tool pack in the previous example under XML Tools.

Example of hex code

The following is the hex code of the level 27 Gold Plated Axes of PWI

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

Page 3: Hex Code Guide By Drakaer

Breaking Up Hex code

Hex code is usually in blocks of 8 or more and can be broken up into sections to make it easier to understand. This way you can also look for similar patterns in other hex codes to easily find the sections you want to change.

1b00ff005300000012000000e81c0000e81c00002c000000000000000900000004000000000000007d00000022010000000000000000000018000000000060400000000003000000350e0000350e000000000000050000009c25000011000000c14100002d03000001000000b34600002b000000040000002ca200000c0000002ca200000c000000

1: Level and class required

2: Stat requirements, Strength, Vitality, Dexterity, Magic

3: Durability current durability/max durability

4: Weapon grade/level

5: Weapon damage Physical (minimum/maximum) then Magical (minimum/maximum)

6: Frequency/Attack Rate

7: Attack range

8: Dist Frag???

9: Sockets and imbued items. The first section is sockets, the second is the effects of imbuing

10: Number of bonus stats

11: These are the bonus stats on gear

These are all the different areas I know of currently. The black sections of the code are unknown sections.

Once you have decided on which section you want to change you can then break the code up into sections of 4, 8 or 16 characters so you can easily find and change the correct values eg the first part of the code 1b00ff00. It can be broken up into level 1b00 and class ff00.

Page 4: Hex Code Guide By Drakaer

Level and Class Requirement

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

The level requirements can be changed by changing 1b00. Simply convert your level requirement to hex and change the code.

The class requirement can be changed by changing ff00 to something else. ff00 is all class and 0100 is Blademaster. The level requirement goes up by single class then double class then triple class and so on.

Stat Requirements

The items stat requirements can be modified by changing 5300000012000000.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

This can be broken into strength 5300, vitality 0000, dexterity 1200, and magic 0000. Convert your required values to hex and paste over the old one in the hex code to change.

Durability

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

The durability can be broken into minimum durability e81c0000 and maximum durability e81c0000. These are just ordinary hex values so changing them should be easily. Just covert your values and replace the original.

Weapon grade/level

The weapon grade or level can be modified by changing the highlighted code. This doesn’t need to be broken down further as the whole thing is one octet. Just covert the code and replace with another code of your choice.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

Page 5: Hex Code Guide By Drakaer

Weapon Damage Code

The damage on the weapon can be found and easily modified with hex code. The hex code for each type of weapon is different however and must be considered when changing damage hex code. The three different types of weapons are melee, ranged and magic.

Melee Weapon Damage

This is the easiest type of damage to change as there is only a minimum and maximum physical damage code on the weapon.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

The section in blue is the minimum damage on the weapon. The red is the maximum damage on the weapon. Use PWGen1 or some other program to convert between hex and dword so you can change the damage. The minimum damage on this weapon is 125 and the maximum damage is 290.

I want to change the damage of the weapon to 500 minimum and 1000 maximum. So I begin by converting 500 and 1000 to hex. 500 in hex is f4010000 and 1000 in hex is e8030000.

Now I have the hex values for the damage I just need to copy and paste them over the old hex damage values. This gives me the following code.

1b00ff005300000012000000e81c0000e81c00002c00030000000000090000000400000000000000f4010000e803000000000000000000001800000000006040000000000000000000000000

Overwriting the old hex code of the weapon will produce this in game.

Before After

Page 6: Hex Code Guide By Drakaer

Ranged Weapon Damage

Ranges weapons differ slightly from melee weapons as they have a lot of extra variables like range. Below is the lightning bow.

2000ff001400000062000000a8160000a81600002c000300010000000d0000000500000062210000bf0000006201000000000000000000001e0000000000a0410000a0400000000000000000

The blue is the minimum damage and the red is the maximum damage. I am going to change the minimum to 500 and the maximum to 1000 like in the above example.

2000ff001400000062000000a8160000a81600002c000300010000000d0000000500000062210000f4010000e803000000000000000000001e0000000000a0410000a0400000000000000000

Result of Ranged Result of Magic

Magic Weapon Damage

Magic weapons have both physical and magic damage so you have 4 variables to change. Below is the Wooden Wand.

0100ff00050000000000030078050000780500002c00030000000000240100000100000000000000030000000300000005000000050000001000000000004040000000000000000000000000

The light blue is the minimum physical damage and the dark blue is the maximum physical damage. The orange is minimum magic damage and the red is maximum magic damage. In the following example I will make the physical damage 500-1000 and magic damage 600-1100.

0100ff00050000000000030078050000780500002c00030000000000240100000100000000000000f4010000e8030000580200004c0400001000000000004040000000000000000000000000

Result is shown above

Page 7: Hex Code Guide By Drakaer

Frequency/ Attack Rate

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

This is a ratio. To change the attack rate divide 20 by the choose rate. An attack rate of 2 would be 20/2 = 10 so the value you convert to hex is 10. 0a000000 is the value of 10 in hex so you would replace the original with this.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000000a00000000006040000000000000000000000000

Attack Range

This is the range at which you attack. This can be changed by converting the new rate from a Float to an octet.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

00006040 is 3.5 as a float. So if I wanted a range of 6 it would be 0000c040.

Dist frag

Not quite sure what this does but it is just another octet that you convert. I will update this when I find out what is is.

Page 8: Hex Code Guide By Drakaer

Socket Code

Socket codes (The following codes are codes for empty sockets)

00000000 0 sockets

0100000000000000 1 socket code

020000000000000000000000 2 socket code

03000000000000000000000000000000 3 socket code

0400000000000000000000000000000000000000 4 socket code

The socket code can be broken down into sections like shown

02000000/00000000/00000000

The first section is the number of sockets the item has. The code 02000000 has two sockets on the item. The second section and all sections after are what is socketed in the sockets on the item. The 00000000 means the socket is empty. If it is not 00000000 the item has a gem in the socket.

The following is the hex code of an item. I have color coded various parts of the code to show significant sections.

5f00ff009200000000000000cc740000b88800002400040a54006900740061006e00000000000000000000000000ef010000000000000000000000000000000000000000000004000f005f3100005f3100005f3100005f31000008000000bd2500000a00000045250000b4000000ae2500000a000000fa460000340800000c000000eba5000014000000eba5000014000000eba5000014000000eba5000014000000

The Red section of the code is the number of skills. The purple f I’m not quite sure what it is atm but I’ll look into it. It also appears that other characters in that section of code also vary.

The Orange sections are the item socketed in the first socket. The first orange section is the words that will appear on the item eg Stone of the Brute Vit +20. The second orange section is the effect of the socketed item eg Vit +20. Without the second part the socketed item will do nothing.

The third green part is the same as the as the orange part of the code but for the second socket.

The blue part is also the same as the first and is the third socket.

Lastly the dark blue section is the forth socket and is made up like the first.

How to add socket code

Page 9: Hex Code Guide By Drakaer

So now you know what how the socket code is displayed but how to add it? The following shows the code of the Golden Plated Axes and the red highlighted section is the number of sockets. The olive green highlighted section is the number of skills/bonus and things the item has. You can find more on this in the ________ section.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

I want to add 3 sockets so I will add the code for 3 sockets. So the code would look like this.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000300000000000000000000000000000000000000

The Result is this

Page 10: Hex Code Guide By Drakaer

Socketing an Item

Socketing an item requires you to modify two parts of the code. The section of the code that displays the text and the section that has the ability must both be modified.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000300000000000000000000000000000000000000

This is the code from above that I made 3 sockets on. I am now going to imbue a shabby garnet shard into one of those sockets.

1b00ff005300000012000000e81c0000e81c00002c000000000000000900000004000000000000007d00000022010000000000000000000018000000000060400000000003000000320e000000000000000000000100000029a2000003000000

As you can see in the code the first set of orange hex code was changed from 00000000 to 320e0000. This new code is what makes the weapon say shabby garnet phys atk + 3. The second set of the orange hex code is the ability that the shard applies to the weapon. This is the physical attack +3. We just tack this second part on the end somewhere after the number of skills (01000000). Take note that the olive green hex code has also changed from 00000000 to 01000000. This is because a new ability has been added to the weapon so we must increment this hex code by 1.

This image shows the effects of the first section of orange code.

The second part of the orange code will increase the damage you see on you character sheet when you equip the weapon.

Once you have your desired hex code overwrite the original and you are done. You should have successfully socketed an item in your gear.

Page 11: Hex Code Guide By Drakaer

Refining a Weapon

The refine of a weapon is tacked on the end as an ability. The following code is the Gold Plated Axes with no refine.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

I wish to refine these axes to +15 with bonus refine damage of 1000. The following the hex code for this.

1b00ff005300000012000000e81c0000e81c00002c000000000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000001000000b3460000e80300000f000000

The olive green is the number of abilities which you should know by now. This has to be incremented by 1 as the refine level is classed as an ability. The red code is something Im not sure about but seems to be related to the type of damage. The orange code is the bonus refine damage you want your weapon to have, in this case 1000. The blue code is the refine level of your weapon, in this case +15.

Before After

Research notes

The xml creator gave refine code of 0b470000504000001000000. I found that it did not change the damage of the weapon. The actual refine gave code of ingame isb34600000a00000001000000. I decided to change the non working code from the xml creator to 0b460000 and was rather surprised when I got 1000 metal resistance instead of physical damage. The resistance however was just words and had no effect on my character. I’m hoping that this can help me discover what the red code actually does in this situation. Both b3460000 and aa460000 refine the weapon correctly. I test b0460000 and it worked successfully. I tested 00460000 and as I thought it gave me the metal resistance again. Hmm I tested fe460000 and it failed. I tested b3470000 and the item disappeared.

Page 12: Hex Code Guide By Drakaer

Adding Stats

Adding stats to an item is very simple. Just find the code the code that tells you how many bonus stats you have, increment it, and put the new stat code after it.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d0000002201000000000000000000001800000000006040000000000000000000000000

I want to add dexterity +17. The code goes as follows.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d00000022010000000000000000000018000000000060400000000000000000010000009c25000011000000

The green section is the number of abilities the item has and the red code is the code for dexterity + 17.

There is however special stats you can add to your gear. These special stats have a longer hex code than normal. I want to add soul shatter so I create the following hex code.

1b00ff005300000012000000e81c0000e81c00002c000300000000000900000004000000000000007d00000022010000000000000000000018000000000060400000000000000000020000009c25000011000000c14100002d03000001000000

The blue code is the soul shatter. Notice how this code is longer than normal.

Page 13: Hex Code Guide By Drakaer

Other Hex codes

Flying mounts

I don’t have much to offer here as I didn’t really look at the hex code much but after some research here is what I found. The following is the hex code for the flame drill.

c2010000840300000a000100030000000f000000cdcc4c406666c64003008c44

The red code is the normal speed of the mount which is 3.2. The blue code is the fast speed of 6.2. The orange is what classes can use it. The green is the remaining durability and the dark blue is the maximum durability. I didn’t change the durability as I thought of this after. The 0a is the level required to use the flier.

I want to make the Flame Drill allcass with speeds of 7 and 10. To do this I convert them using PWGen1 but this time I used the float to hex converter.

c2010000840300000a000100ff0000000f0000000000e0400000204103008c44

The finished Product

Page 14: Hex Code Guide By Drakaer

Pets

Making an all-class attacking pet

This example will show how to modify any battle pet hex code to make it all-class. The following is the hex code of the Baby Hercules Pet egg.

0100000008000000fa000000eb46000000000000fc460000010000000100000000000000000000000000040000000000000000000000000000000000f902000002000000240300000500000023030000050000002103000005000000

I still haven’t examined all the hex code yet so don’t know how to change the pet stats or skills. The red and blue highlighted sections are what you will need to change. You will need to change the red 08 to ff and change the blue fa to 00.

01000000ff00000000000000eb46000000000000fc460000010000002900000001000000000000000000040000000000000000000000000000000000f902000002000000240300000500000023030000050000002103000005000000

Now overwrite your Hercules hex code with this and you will be able to hatch your new pet at the pet manager.

Even though the pet egg still says requisite Venomancer you will be able to hatch your pet.