ItemInfoPacket Patch 5508

07/13/2011 03:34 Mr_PoP#1
Packet Offests
Code:
Length -> 0
Type  -> 2
UInt32 itemId -> 4
UInt32 itemTypeId -> 8
UInt16 CurrentDura -> 12
UInt16 MaxDura -> 14
UInt16 Mode -> 16
byte Location -> 18
UInt16 SpecialType -> 22
byte FirstSocket -> 24
byte SecondSocket -> 25
byte Composition -> 28
byte Bless -> 29
byte isFree -> 30 
byte Enchant -> 31
byte isLocked -> 38
byte Colour -> 40 
UInt32 CompositionProgress -> 44
using the packet
Code:
                            ItemInfoPacket i = new ItemInfoPacket();
                            i.Type=1008;
                            i.Length=48;
                            i.itemId = 1;
                            i.itemTypeId = 480329;
                            i.CurrentDura = 7000;
                            i.MaxDura = 7000;
                            i.Mode = 2;
                            i.Location = 4;
                            i.SpecialType = 0;
                            i.FirstSocket = 255;
                            i.SecondSocket = 255;
                            i.Composition = 12;
                            i.Bless = 7;
                            i.isFree = 0;
                            i.Enchant = 0;
                            i.isLocked = 0;
                            i.Colour = 2;
                            i.CompositionProgress = 0;
i dont know if this packet right like this, becuase the item doesnot appear when i login!!

so my question whats wrong lol?
07/13/2011 04:25 -Shunsui-#2
Well offset 4 = Unique item id, and i dont think it starts at 1,
and offset 8 = ItemID i don think theres any item with ItemID 480329

#Edit try starting at 9999999 + for Unique id
and also Mode 2 is for Trade, try 1 or 3

Your packet is also way off,

Code:
 public UInt32 Identifier
        {
            get { return BitConverter.ToUInt32(mData, 4); }
            set { PBuilder.Write(value, 4, mData); PBuilder.Write(value, 8, mDragonSoul); }
        }

        public UInt32 ItemID
        {
            get { return BitConverter.ToUInt32(mData, 8); }
            set { PBuilder.Write(value, 8, mData); }
        }

        public UInt16 CurrentDura
        {
            get { return BitConverter.ToUInt16(mData, 12); }
            set { PBuilder.Write(value, 12, mData); }
        }

        public UInt16 MaxDura
        {
            get { return BitConverter.ToUInt16(mData, 14); }
            set { PBuilder.Write(value, 14, mData); }
        }

        public CreateTypes CreationType
        {
            get { return (CreateTypes)BitConverter.ToUInt16(mData, 16); }
            set { PBuilder.Write((UInt16)value, 16, mData); }
        }

        public Positions Position
        {
            get { return (Positions)mData[18]; }
            set { mData[18] = (Byte)value; }
        }
        public UInt32 SocketProgress
        {
            get { return BitConverter.ToUInt32(mData, 20); }
            set { PBuilder.Write(value, 20, mData); }
        }

        public Byte Socket1
        {
            get { return mData[24]; }
            set { mData[24] = value; }
        }

        public Byte Socket2
        {
            get { return mData[25]; }
            set { mData[25] = value; }
        }

        public ItemEffect Effect
        {
            get { return (ItemEffect)BitConverter.ToUInt16(mData, 28); }
            set { PBuilder.Write((UInt16)value, 28, mData); }
        }

        public Byte Plus
        {
            get { return mData[33]; }
            set { mData[33] = value; }
        }

        public Byte Bless
        {
            get { return mData[34]; }
            set { mData[34] = value; }
        }

        public Boolean Bound
        {
            get { return Convert.ToBoolean(mData[35]); }
            set { mData[35] = Convert.ToByte(value); }
        }

        public Byte Enchant
        {
            get { return mData[36]; }
            set { mData[36] = value; }
        }
        public Boolean Suspicious
        {
            get { return Convert.ToBoolean(mData[44]); }
            set { mData[44] = Convert.ToByte(value); }
        }
        public Boolean Locked
        {
            get { return Convert.ToBoolean(mData[46]); }
            set { mData[46] = Convert.ToByte(value); }
        }
        public Colors Color
        {
            get { return (Colors)mData[48]; }
            set { mData[48] = (Byte)value; }
        }

        public UInt32 ComposistionProgress
        {
            get { return BitConverter.ToUInt16(mData, 52); }
            set { PBuilder.Write(value, 52, mData); }
        }

        public Boolean Inscribed
        {
            get { return Convert.ToBoolean(mData[56]); }
            set { mData[56] = Convert.ToByte(value); }
        }
        public UInt32 InscribeTime
        {
            get { return BitConverter.ToUInt32(mData, 60); }
            set { PBuilder.Write(value, 60, mData); }
        }

        public UInt16 Amount
        {
            get { return BitConverter.ToUInt16(mData, 64); }
            set { PBuilder.Write(value, 64, mData); }
        }
07/13/2011 07:06 Mr_PoP#3
Quote:
Well offset 4 = Unique item id, and i dont think it starts at 1
1 for id is not a prob

Quote:
and offset 8 = ItemID i don think there's any item with ItemID 480329
it's ClubOfDestroy level 129

Quote:
Your packet is also way off
yeah i believe so..

but thanks it's working now , but if i may, i have some questions! because it's my first time with one of the latest clients, i was working with 4721 so..

1- what's Effect,Enchant,Inscribed,InscribeTime and Amount for?
2-[Only registered and activated users can see links. Click Here To Register...]
shouldn't the attacks appears in my hands?
3-why don't i jump like a Monk while am equipping it's weapons?

thanks i appreciate your help :)
07/13/2011 07:44 -Shunsui-#4
Well for offset8 u dont do it like that ;o, its just the itemid
and Effect = Poison Blade/Mana Backsword The Yellow text at the end,
Enchant = Enchanted HP, if you dont know what it is check on CO Site, Its a number that gives u health lol,
Inscribed/InscribedTime check it on co site as well, its wen Guild Arsenals Came out, will Display if Your item is inscribbed or not , its like a red Tag on the item,
Ammount is Stack Ammount once again check on co, i forgot wat patch it came out but you are able to stack some items, like health Potions can stack 5Times in your Inventory,
07/13/2011 08:00 Mr_PoP#5
Quote:
Originally Posted by -Shunsui- View Post
Well for offset8 u dont do it like that ;o, its just the itemid
and Effect = Poison Blade/Mana Backsword The Yellow text at the end,
Enchant = Enchanted HP, if you dont know what it is check on CO Site, Its a number that gives u health lol,
Inscribed/InscribedTime check it on co site as well, its wen Guild Arsenals Came out, will Display if Your item is inscribbed or not , its like a red Tag on the item,
Ammount is Stack Ammount once again check on co, i forgot wat patch it came out but you are able to stack some items, like health Potions can stack 5Times in your Inventory,
oh got it your using diff names than the one i knw, anways thanks but what about the 2 other questions!

2-shouldn't the attacks appears in my hands?
3-why don't i jump like a Monk while am equipping it's weapons? :D
07/13/2011 14:45 pro4never#6
You have to send a 1009 subtype with the item uid for equipped items for them to display on your character.

That changed way back in I think pre 5250...


There's a 1009 subtype that allows you to put the uid of items for each slot. That's the only way to display the item on your own character.
07/13/2011 18:26 -Shunsui-#7
Yea, as pro4never said you have to spawn the items to your self.
07/21/2011 17:17 ahmedtitoman#8
man plz up load file idont copy and where copy in sourse
07/21/2011 19:01 Lateralus#9
[Only registered and activated users can see links. Click Here To Register...]

Check out my post on that topic by the way, to get the correct offsets in your packet filled in.