Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct AgentStruct = {
- void* vtable; //pointer: 4 bytes
- byte unknown1[24];
- byte unknown2[4]; //This actually points to the agent before but with a small offset
- AgentStruct* NextAgent; //pointer: 4 bytes. Pointer to the next agent (by id)
- byte unknown3[8];
- double Id; //AgentId
- float Z; //Z coord in float
- byte unknown4[8];
- float BoxHoverWidth; //Width of the model's box
- float BoxHoverHeight; //Height of the model's box
- byte unknown5[8];
- float Rotation; //Rotation in radians from East (-pi to pi)
- byte unknown6[8];
- double NameProperties; //Bitmap basically telling what the agent is
- byte unknown7[24];
- float X; //X coord in float
- float Y; //Y coord in float
- byte unknown8[8];
- float NameTagX; //Exactly the same as X above
- float NameTagY; //Exactly the same aswell
- float NameTagZ; //Z coord in float (actually negated)
- byte unknown9[12];
- double Type; //0xDB = players, npc's, monsters etc. 0x200 = signpost/chest/object (unclickable). 0x400 = item to pick up
- float MoveX; //If moving, how much on the X axis per second
- float MoveY; //If moving, how much on the Y axis per second
- byte unknown10[40];
- double ExtraType;
- byte unknown11[24];
- float WeaponAttackSpeed; //The base attack speed in float of last attacks weapon. 1.33 = axe, sword, daggers etc.
- float AttackSpeedModifier; //Attack speed modifier of the last attack. 0.67 = 33% increase (1-.33)
- word PlayerNumber; //Selfexplanatory. All non-players have identifiers for their type. Two of the same mob = same number
- byte unknown12[6];
- void* Equip; // "Equipment** Equip;" <- second lvl pointer?
- byte unknown13[10];
- byte Primary; //Primary profession 0-10 (None,W,R,Mo,N,Me,E,A,Rt,P,D)
- byte Secondary; //Secondary profession 0-10 (None,W,R,Mo,N,Me,E,A,Rt,P,D)
- byte Level; //Duh!
- byte TeamId; //0=None, 1=Blue, 2=Red, 3=Yellow
- byte unknown14[14];
- float Energy; //Only works for yourself
- double MaxEnergy; //Only works for yourself
- byte unknown15[4];
- float HPPips; // Regen/degen as float. Is not actually pips but the proportion of total health increase per second = (regenpips*2)/maxhealth
- byte unknown16[4]; //Offset +0x130
- float HP; //Health in interval [0,1] where 1 = fullhealth, 0 = no health
- double MaxHP; //Only works for yourself or heroes, or another agent to which you have dealt damage
- double Effects; //Bitmap for effects to display when targetted. DOES include hexes
- byte unknown17[4];
- byte Hex; //Bitmap for the hex effect when targetted (apparently obsolete!)
- byte unknown18[18];
- double ModelState; //Different values for different states of the model.
- double TypeMap; //Odd variable! 0x08 = dead, 0xC00 = boss, 0x40000 = spirit, 0x400000 = player
- byte unknown19[16];
- double InSpiritRange; //Tells if agent is within spirit range of you. Doesn't work anymore?
- byte unknown20[16];
- double LoginNumber; //Unique number in instance that only works for players
- float ModelMode; //Float for the current mode the agent is in. Varies a lot
- byte unknown21[4]; // also seems to be related to model animations
- double ModelAnimation; //Id of the current animation
- byte unknown22[32];
- byte LastCombo; //Last successfully used Assassin Combo Type: 0x0 = no attack, 0x1 = Lead, 0x2 = Off-Hand, 0x3 = Dual
- byte Allegiance; //0x1 = ally/non-attackable, 0x3 = enemy, 0x4 = spirit/pet, 0x5 = minion, 0x6 = npc/minipet
- word WeaponType; //1=bow, 2=axe, 3=hammer, 4=daggers, 5=scythe, 6=spear, 7=sword, 8=chaos staff/wand, 9=cold, 10=dark, 11=earth, 12=lightning, 13=fire, 14=holy. Other values appear such as commonly 512, meaning of this is unknown
- word Skill; //0 = not using a skill. Anything else is the Id of that skill
- byte unknown23[4];
- word WeaponItemId;
- word OffhandItemId;
- } ;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement