#include "L2Ext.h" /* C4cdddddSdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddffffddddSdddddcccddhbcdcbhhdhddddccdcccdddd C5cdddddSddddfddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddffffddddSdddddcccddhbcdcbhhdhddddccdcccddddcdddddd */ void UserInfoFix(CSocket *pSocket, const char *format, ...) { va_list tag; va_start (tag, format); //start reading old packet data /*c*/ BYTE Header = va_arg(tag, BYTE); /*d*/ DWORD x = va_arg(tag, DWORD); /*d*/ DWORD y = va_arg(tag, DWORD); /*d*/ DWORD z = va_arg(tag, DWORD); /*d*/ DWORD Heading = va_arg(tag, DWORD); /*d*/ DWORD ObjectID = va_arg(tag, DWORD); /*S*/ wchar_t *wszName = va_arg(tag, wchar_t*); //not sure about that (it's wchar_t wszName[14]) /*d*/ DWORD Race = va_arg(tag, DWORD); /*d*/ DWORD Sex = va_arg(tag, DWORD); /*d*/ DWORD Class = va_arg(tag, DWORD); /*d*/ DWORD Level = va_arg(tag, DWORD); /*f*/ DWORD Exp = va_arg(tag, DWORD); //will be Q in c5 format in format dd /*d*/ DWORD STR = va_arg(tag, DWORD); /*d*/ DWORD DEX = va_arg(tag, DWORD); /*d*/ DWORD CON = va_arg(tag, DWORD); /*d*/ DWORD INT = va_arg(tag, DWORD); /*d*/ DWORD WIT = va_arg(tag, DWORD); /*d*/ DWORD MEN = va_arg(tag, DWORD); /*d*/ DWORD MaxHP = va_arg(tag, DWORD); /*d*/ DWORD CurrentHP = va_arg(tag, DWORD); /*d*/ DWORD MaxMP = va_arg(tag, DWORD); /*d*/ DWORD CurrentMP = va_arg(tag, DWORD); /*d*/ DWORD Sp = va_arg(tag, DWORD); /*d*/ DWORD CurrentLoad = va_arg(tag, DWORD); /*d*/ DWORD MaxLoad = va_arg(tag, DWORD); /*d*/ DWORD Unknown = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Under_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_REar_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LEar_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Neck_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_RFinger_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LFinger_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Head_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_RHand_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LHand_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Gloves_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Chest_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Legs_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Feet_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Back_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LRHand_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Hair_ObjID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Under_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_REar_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LEar_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Neck_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_RFinger_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LFinger_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Head_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_RHand_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LHand_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Gloves_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Chest_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Legs_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Feet_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Back_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_LRHand_ItemID = va_arg(tag, DWORD); /*d*/ DWORD Paperdoll_Hair_ItemID = va_arg(tag, DWORD); /*d*/ DWORD PAtk = va_arg(tag, DWORD); /*d*/ DWORD PAtkSpeed = va_arg(tag, DWORD); /*d*/ DWORD PDef = va_arg(tag, DWORD); /*d*/ DWORD Evasion = va_arg(tag, DWORD); /*d*/ DWORD Accuracy = va_arg(tag, DWORD); /*d*/ DWORD Critical = va_arg(tag, DWORD); /*d*/ DWORD MAtk = va_arg(tag, DWORD); /*d*/ DWORD MAtkSpeed = va_arg(tag, DWORD); /*d*/ DWORD PAtkSpeed2 = va_arg(tag, DWORD); /*d*/ DWORD MDef = va_arg(tag, DWORD); /*d*/ DWORD PvpFlag = va_arg(tag, DWORD); /*d*/ DWORD Karma = va_arg(tag, DWORD); /*d*/ DWORD RunSpeed = va_arg(tag, DWORD); /*d*/ DWORD WalkSpeed = va_arg(tag, DWORD); /*d*/ DWORD SwimRunSpeed = va_arg(tag, DWORD); /*d*/ DWORD SwimWalkSpeed = va_arg(tag, DWORD); /*d*/ DWORD FlRunSpeed = va_arg(tag, DWORD); /*d*/ DWORD FlWalkSpeed = va_arg(tag, DWORD); /*d*/ DWORD FlyRunSpeed = va_arg(tag, DWORD); /*d*/ DWORD FlyWalkSpeed = va_arg(tag, DWORD); /*f*/ double MovementSpeedMultipler = va_arg(tag, double); /*f*/ double AttackSpeedMultipler = va_arg(tag, double); /*f*/ double CollisionRadius = va_arg(tag, double); /*f*/ double CollisionHeight = va_arg(tag, double); /*d*/ DWORD HairStyle = va_arg(tag, DWORD); /*d*/ DWORD HairColor = va_arg(tag, DWORD); /*d*/ DWORD Face = va_arg(tag, DWORD); /*d*/ DWORD AccessLevel = va_arg(tag, DWORD); /*S*/ wchar_t *wszTitle = va_arg(tag, wchar_t*); /*d*/ DWORD ClanID = va_arg(tag, DWORD); /*d*/ DWORD ClanCrestID = va_arg(tag, DWORD); /*d*/ DWORD AllyID = va_arg(tag, DWORD); /*d*/ DWORD AllyCrestID = va_arg(tag, DWORD); /*d*/ DWORD isClanLeader = va_arg(tag, DWORD); /*c*/ BYTE MountType = va_arg(tag, BYTE); /*c*/ BYTE PrivateStoreType = va_arg(tag, BYTE); /*c*/ BYTE DwarvenCraft = va_arg(tag, BYTE); /*d*/ DWORD PkStats = va_arg(tag, DWORD); /*d*/ DWORD PvpStats = va_arg(tag, DWORD); /*h*/ WORD CubicAmount = va_arg(tag, WORD); /*b*/ char *CubicBuff = va_arg(tag, char*);//it can be 3x word /*c*/ BYTE lfPtMembers = va_arg(tag, BYTE); /*d*/ DWORD AbnormalEffect = va_arg(tag, DWORD); /*c*/ BYTE Unknown2 = va_arg(tag, DWORD); /*b*/ char *ClanPrivilages = va_arg(tag, char*); //ClanPrivileges - 32 BYTES /*h*/ WORD RecRemaining = va_arg(tag, WORD); /*h*/ WORD RecReceived = va_arg(tag, WORD); /*d*/ DWORD Unknown3 = va_arg(tag, DWORD); /*h*/ WORD InventoryLimit = va_arg(tag, WORD); /*d*/ DWORD ClassID = va_arg(tag, DWORD); /*d*/ DWORD CircleAround = va_arg(tag, DWORD); /*d*/ DWORD MaxCP = va_arg(tag, DWORD); /*d*/ DWORD CurrentCP = va_arg(tag, DWORD); /*c*/ BYTE EnchantEffect = va_arg(tag, BYTE); /*c*/ BYTE TeamCircle = va_arg(tag, BYTE); //1blue 2 red /*d*/ DWORD ClanCrestLargeID = va_arg(tag, DWORD); /*c*/ BYTE NoblessStatus = va_arg(tag, BYTE); /*c*/ BYTE HeroAura = va_arg(tag, BYTE); /*c*/ BYTE FishingMode = va_arg(tag, BYTE); /*d*/ DWORD FishingX = va_arg(tag, DWORD); /*d*/ DWORD FishingY = va_arg(tag, DWORD); /*d*/ DWORD FishingZ = va_arg(tag, DWORD); /*d*/ DWORD NameColor = va_arg(tag, DWORD); va_end(tag); //NewC5Things cdddddd const char *C5format = "cdddddSddddfddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddffffddddSdddddcccddhbcdcbhhdhddddccdcccdddd";//cdddddd new c5 addons - for test trying without double fExp = (double)Exp; BYTE isRunning = pSocket->GetUser()->GetSharedData()->nMoveType; DWORD Paperdoll_Face_ObjID = 0x0; //FaceObjID DWORD Paperdoll_Face_ItemID = 0x0; //FaceItemID DWORD PlayerStatus = 0x00; // Text above cp DWORD TitleColor = 0x0ECF9A2; DWORD CursedWeaponLevel = 0x01; //Level of CursedWeapon //SendNewInfo pSocket->Send(C5format ,Header , x , y , z , Heading , ObjectID , wszName , Race , Sex , Class , Level , fExp , STR , DEX , CON , INT , WIT , MEN , MaxHP , CurrentHP , MaxMP , CurrentMP , Sp , CurrentLoad , MaxLoad , Unknown , Paperdoll_Under_ObjID , Paperdoll_REar_ObjID , Paperdoll_LEar_ObjID , Paperdoll_Neck_ObjID , Paperdoll_RFinger_ObjID , Paperdoll_LFinger_ObjID , Paperdoll_Head_ObjID , Paperdoll_RHand_ObjID , Paperdoll_LHand_ObjID , Paperdoll_Gloves_ObjID , Paperdoll_Chest_ObjID , Paperdoll_Legs_ObjID , Paperdoll_Feet_ObjID , Paperdoll_Back_ObjID , Paperdoll_LRHand_ObjID , Paperdoll_Hair_ObjID , Paperdoll_Under_ItemID , Paperdoll_REar_ItemID , Paperdoll_LEar_ItemID , Paperdoll_Neck_ItemID , Paperdoll_RFinger_ItemID , Paperdoll_LFinger_ItemID , Paperdoll_Head_ItemID , Paperdoll_RHand_ItemID , Paperdoll_LHand_ItemID , Paperdoll_Gloves_ItemID , Paperdoll_Chest_ItemID , Paperdoll_Legs_ItemID , Paperdoll_Feet_ItemID , Paperdoll_Back_ItemID , Paperdoll_LRHand_ItemID , Paperdoll_Hair_ItemID , PAtk , PAtkSpeed , PDef , Evasion , Accuracy , Critical , MAtk , MAtkSpeed , PAtkSpeed2 , MDef , PvpFlag , Karma , RunSpeed , WalkSpeed , SwimRunSpeed , SwimWalkSpeed , FlRunSpeed , FlWalkSpeed , FlyRunSpeed , FlyWalkSpeed , MovementSpeedMultipler , AttackSpeedMultipler , CollisionRadius , CollisionHeight , HairStyle , HairColor , Face , AccessLevel , wszTitle , ClanID , ClanCrestID , AllyID , AllyCrestID , isClanLeader , MountType , PrivateStoreType , DwarvenCraft , PkStats , PvpStats , CubicAmount , CubicBuff , lfPtMembers , AbnormalEffect , Unknown2 , ClanPrivilages , RecRemaining , RecReceived , Unknown3 , InventoryLimit , ClassID , CircleAround , MaxCP , CurrentCP , EnchantEffect , TeamCircle , ClanCrestLargeID , NoblessStatus , HeroAura , FishingMode , FishingX , FishingY , FishingZ , NameColor); }