|
|
 |
 |
 |
 |
|
 |
 |
|
 |
 |
|
 |
|
Archive::Development Archive area for Development's posts that were moved here after an inactivity period of 90 days. |

03-16-2003, 12:29 PM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
Item_Struct changes ?
Hey guys,
did the item structure changed since 4.1 ? i'm asking because i've found few ithings that aren't where i expected them to be, specifically the skillModPercent and skillModId are shifted by 4 bytes i think.
I've created test item with the admin tool (v4.2), in items -> stats2 tab i have set the values from top to bottom to be consecutive from 24 to 35, so the skillModPercent should be 24 and skillModId should be 25.
Instead it is 26 and 27 which should be bane race and bane race modifier.
Anybody go any insight into this ?
Thanks Dingo :juggle:
|

03-16-2003, 02:25 PM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
I've also noticed that defined ITEM_STRUCT_SIZE is 360 but sizeof(Item_Struct) in gdb returns 364
atm i'm working on syncing the Item_Struct with the one used in the admin tool v4.2 i'm not sure if that is a good thing or not, but since i don't run a server and i have no other way to get Item_Struct with known data and there is a 4 byte difference .. well you get the idea  ..
I will post the differences here once i'm done so you can see them ...
Dingo :juggle:
|
 |
|
 |

03-16-2003, 03:26 PM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
Here are the promised changes:
the original piece of the structure:
Code:
/*0279*/ sint8 effecttype; // 0=combat, 1=click anywhere w/o class check, 2=latent/worn, 3=click anywhere EXPENDABLE, 4=click worn, 5=click anywhere w/ class check, -1=no effect
/*0280*/ uint16 spellId; // spellId of special effect
/*0282*/ uint8 unknown0282[10]; // ***Placeholder 0288
/*0292*/ uint32 casttime; // Cast time of clicky item in miliseconds
/*0296*/ uint8 unknown0296[16]; // ***Placeholder
/*0312*/ uint16 skillModPercent; // Skill mod value in % (Sept 25, 2002)
/*0314*/ sint16 skillModId; // Skill mod index (Sept 25, 2002)
/*0316*/ sint16 BaneDMGRace;
/*0318*/ sint16 BaneDMGBody;
/*0321*/ uint8 unknown0321[4]; // placeholder ?
/*0324*/ uint8 RecLevel; // max should be 65
/*0325*/ uint8 RecSkill; // Max should be 252
/*0326*/ uint8 unknown0325[2];
/*0328*/ uint8 ElemDmgType;
/*0329*/ uint8 ElemDmg;
/*0330*/ uint8 unknown0330[28]; // Bane and Elemental dmg struct (writing it now, hopefully will be up soon)
/*0358*/ int16 focusspellId;
And here is the modified code:
Code:
/*0279*/ sint8 effecttype; // 0=combat, 1=click anywhere w/o class check, 2=latent/worn, 3=click anywhere EXPENDABLE, 4=click worn, 5=click anywhere w/ class check, -1=no effect
/*0280*/ uint16 spellId; // spellId of special effect
/*0282*/ uint8 unknown0282[10]; // ***Placeholder 0288
/*0292*/ uint32 casttime; // Cast time of clicky item in miliseconds
/*0296*/ uint8 unknown0296[12]; // ***Placeholder
/*0308*/ sint16 skillModId; // Skill mod index (Sept 25, 2002)
/*0310*/ uint16 skillModPercent; // Skill mod value in % (Sept 25, 2002)
/*0312*/ sint16 BaneDMGRace; // Bane Damage Race
/*0314*/ sint16 BaneDMGMod; // Bane Damage Modifier
/*0316*/ sint16 BaneDMG; // Bane Damage
/*0318*/ uint8 unknown0322[2]; // placeholder ?
/*0320*/ uint8 RecLevel; // max should be 65
/*0321*/ uint8 RecSkill; // Max should be 252
/*0322*/ uint8 unknown0326[1]; // placeholder ?
/*0323*/ uint8 ResistDmgType; // Resist Damage Type
/*0324*/ sint16 ResistDmg; // Resist Damage
/*0326*/ uint8 unknown0325[2]; // placeholder ?
/*0328*/ uint8 ElemDmgType;
/*0329*/ uint8 ElemDmg;
/*0330*/ uint8 unknown0330[28]; // Bane and Elemental dmg struct (writing it now, hopefully will be up soon)
/*0358*/ int16 focusspellId;
the modified code works with admin tool v4.2, not sure if it would work with the client prog since i have no way to test it.
: *EDIT> - I just checked the changes against hack server and they appear to be correct, atleast the bane damage and skill mods for sure. <EDIT*
Dingo :juggle:
|
 |
|
 |

03-16-2003, 11:48 PM
|
Dragon
|
|
Join Date: Jun 2002
Posts: 776
|
|
I'm thinking either 318 or 322 are the required levels that are listed on a lot of PoP items.
|

03-17-2003, 01:47 AM
|
Demi-God
|
|
Join Date: Jan 2002
Location: Charlotte, NC
Posts: 2,614
|
|
I'll try using this struct when I get in this afternoon and see if it works clientside.
__________________
Quitters never win, and winners never quit, but those who never win and never quit are idiots.
|
 |
|
 |

03-17-2003, 02:01 AM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
give me couple of hours before you do, i think the modifers are only 8 bits instead 16 since some of the things that i compared didn't match up the way i expected them to, but i don't have any items that i would be 100% positive about that they were collected from live server ...
ID 28941 - 0x00710D
Name Great Sword of Slaughter
Size Medium - 0x000002
Type Normal - 0x000000
Weapon Skill 2 Hand Slash - 0x000001
Damage 10 - 0x00000A
Delay 40 - 0x000028
Bane Damage 15415% vs Werewolf - 0x3C37 - 0x000E
Weight 1.00 - 0x00000A
Price 1p - 0x0003E8
Flags Nodrop - [GM:0][LR:0][ND:0][NS:-1]
Mods AC: +50, Str: +30, Sta: +30, Agi: +30, Dex: +30, Hp: +125, Mana: +125, Magic Resist: +25, Fire Resist: +25, Cold Resist: +25, Poison Resist: +25, Disease Resist: +25
Classes Paladin, Ranger, Shadow Knight, Warrior - 0x00001D
Races Barbarian, Dark Elf, Dwarf, Erudite, Gnome, Half Elf, Halfling, High Elf, Human, Iksar, Ogre, Troll, Vah Shir, Wood Elf - 0x003FFF
Inventory Slots Primary - 0x002000
check out the bane damage percentage
Dingo :juggle:
|
 |
|
 |
 |
|
 |

03-17-2003, 04:07 AM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
hmm i need to get some sleep, so far it looks like this:
Code:
/*0279*/ sint8 effecttype; // 0=combat, 1=click anywhere w/o class check, 2=latent/worn, 3=click anywhere EXPENDABLE, 4=click worn, 5=click anywhere w/ class check, -1=no effect
/*0280*/ uint16 spellId; // spellId of special effect
/*0282*/ uint8 unknown0282[10]; // ***Placeholder 0288
/*0292*/ uint32 casttime; // Cast time of clicky item in miliseconds
/*0296*/ uint8 unknown0296[12]; // ***Placeholder
/*0308*/ sint16 skillModId; // Skill mod index (Sept 25, 2002)
/*0310*/ uint16 skillModPercent; // Skill mod value in % (Sept 25, 2002)
/*0312*/ sint16 BaneDMGRace; // Bane Damage Race
/*0313*/ uint8 BaneDMGMod; // Bane Damage Modifier
/*0314*/ uint8 unknown0314;
/*0316*/ sint16 BaneDMG; // Bane Damage
/*0318*/ uint8 unknown0318[2];
/*0320*/ uint8 RecLevel; // max should be 65
/*0321*/ uint8 RecSkill; // Max should be 252
/*0322*/ uint8 unknown0322; // placeholder ?
/*0323*/ uint8 ResistDmgType; // Resist Damage Type
/*0324*/ sint16 ResistDmg; // Resist Damage
/*0326*/ uint8 unknown0326[2];
/*0328*/ uint8 ElemDmgType;
/*0329*/ uint8 ElemDmg;
/*0330*/ uint8 unknown0330[28]; // Bane and Elemental dmg struct (writing it now, hopefully will be up soon)
/*0358*/ int16 focusspellId;
snip from p/d item.common:
Quote:
effecttype = 125,
spellId = 65535,
unknown0282 = {0, 0, 0, 0, 0, 0, 160, 65, 0, 0},
casttime = 0,
unknown0296 = {0 <repeats 12 times>},
skillModId = 0,
skillModPercent = 0,
BaneDMGRace = 3,
BaneDMGMod = 10,
unknown0314 = 0,
BaneDMG = 0,
unknown0318 = {0, 0},
RecLevel = 69,
RecSkill = 1,
unknown0322 = 0,
ResistDmgType = 0,
ResistDmg = 0,
unknown0326 = {0, 0},
ElemDmgType = 0,
ElemDmg = 0,
unknown0330 = {0 <repeats 28 times>},
focusspellId = 0
|
it seems that some of the variables are also used for different purpose, i've found out that current client doesn't show bane damage (?) but i compared item 15996 - Hammer of divination with my database, allakhazam data on the item, admin tool and client item stats on hack server.
allthough it doesn't show in the client, allakhazam shows +10 vs undead, the admin tool shows the same, and with the struct snip above i got the same from my database which is v4.2.
i'm not sure about the RecLevel and RecSkill, it lines up with admin tool v4.2 but it doesn't show in the client and atleast the RecLevel should.
Dingo :juggle:
|
 |
|
 |

03-17-2003, 04:29 AM
|
Dragon
|
|
Join Date: Jun 2002
Posts: 776
|
|
Erm, it doesnt? RecLevel shows fine on my client...how old is the eq you're trying to view the item with?
|

03-17-2003, 10:35 AM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
its from the eqemu patch server last time patched umm 2-3 days ago
if i could find one item with bane damage that i was sure about that it was collected by packet sniffer instead of created from scratch, it would be much easier
what i ment was some items show rec levels so i can figure out where it is stored given some time, but the bane damage doesn't show ...
Dingo :juggle:
|

03-17-2003, 10:40 AM
|
Dragon
|
|
Join Date: Jun 2002
Posts: 776
|
|
Oh, try any vex thal items for recommended levels. A bane weapon off the top of my head would be The Sword of Ssraeshza.
|

03-17-2003, 10:47 AM
|
Fire Beetle
|
|
Join Date: Mar 2003
Location: Dallas, TX
Posts: 19
|
|
Thanks, the rec level items work but ssra sword shows magic dam: 2 instead of bane damage .. i think we both, the eqemu and the admin tool little offset on that data, i'm gonna try to see if i can find something on hack that shows bane ...
Dingo :juggle:
|

03-17-2003, 11:56 AM
|
Dragon
|
|
Join Date: Jun 2002
Posts: 776
|
|
Ah extra planar isnt "bane"? Because it has either 7 or 9 damage to extra planar on top of the 2 magic damage.
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -4. The time now is 09:41 PM.
|
|
 |
|
 |
|
|
|
 |
|
 |
|
 |