Couple comments/questions for the gallery:
1. I really want to think that the value at offset 0x0e0 is a pointer to a structure that we may or may not have defined as yet. Being new, I may just have stumbled onto something else that I don't know about ..hehe. But, it's it intriguing that if you go to the location in memory pointed to by the value at 0x0e0, you'll find that (from that point) at offset 0x14 is a value that is sometimes equal to Unknown0x138 from this structure (spawninfo), and also you'll find the Char Name[64] value from this structure at 0x70 at that location.
2. Gender is strange....it seems to be fine, until you go into wolf form ..hehe
3. Can anyone confirm that Deity is correct as is now?
Code: Select all
// 5-14-2003 eqmule
typedef struct _SPAWNINFO {
/*0x000*/ BYTE Unknown0x000;
/*0x001*/ CHAR Name[64];
/*0x041*/ BYTE Unknown0x041[7];
/*0x048*/ FLOAT SpeedZ;
/*0x04c*/ FLOAT Heading;
/*0x050*/ FLOAT X;
/*0x054*/ FLOAT SpeedX; //Unsure about this one, it's definately a directional speed.
/*0x058*/ FLOAT Y;
/*0x05c*/ FLOAT Z;
/*0x060*/ FLOAT Unknown0x060;
/*0x064*/ FLOAT SpeedRun; // Confirmed
/*0x068*/ FLOAT SpeedY;
/*0x06c*/ BYTE Unknown0x06c[4];
/*0x070*/ FLOAT SpeedHeading;
/*0x074*/ FLOAT CameraAngle; //128=up, -128=down
/*0x078*/ BYTE Unknown0x078[12];
/*0x084*/ PACTORINFO pActorInfo;
/*0x088*/ BYTE Unknown0x088[5];
/*0x08d*/ BYTE Linkdead;
/*0x08e*/ BYTE Unknown0x08e;
/*0x08f*/ BYTE LFG;
/*0x090*/ BYTE Unknown0x090[76];
/*0x0dc*/ DWORD Zone;
/*0x0e0*/ DWORD Unknown0x0e0; // Pointer of some sort?
/*0x0e4*/ struct _SPAWNINFO *pNext;
/*0x0e8*/ PCHARINFO pCharInfo;
/*0x0ec*/ BYTE Unknown0x0ec[4];
/*0x0f0*/ struct _SPAWNINFO *pPrev;
/*0x0f4*/ DWORD Unknown0x0f4;
/*0x0f8*/ CHAR Lastname[32];
/*0x118*/ BYTE Unknown0x118[8];
/*0x120*/ FLOAT Unknownf0x120;
/*0x124*/ FLOAT Unknownf0x124; // Possible ModelHeightOffset
/*0x128*/ FLOAT Unknownf0x128; // Possible CameraHeightOffset
/*0x12c*/ FLOAT Unknownf0x12c;
/*0x130*/ FLOAT Unknownf0x130;
/*0x134*/ BYTE Type; // 0-player, 1-npc, 2-corpse, 3-any, 4-pet
/*0x135*/ BYTE Light;
/*0x136*/ BYTE Unknown0x136[2];
/*0x138*/ DWORD Unknown0x138; // **
/*0x13c*/ BYTE Level;
/*0x13d*/ BYTE Unknown0x13d;
/*0x13e*/ BYTE Gender; // ??
/*0x13f*/ BYTE Unknown0x13f;
/*0x140*/ BYTE HideMode; //1=hidden 2=invis? 3=invis versus undead 4=invis v animals
/*0x141*/ BYTE StandState;
/*0x142*/ BYTE Class;
/*0x143*/ BYTE Unknown0x143;
/*0x144*/ BYTE Unknown0x144;
/*0x145*/ BYTE Unknown0x145;
/*0x146*/ BYTE GM;
/*0x147*/ BYTE Unknown0x147; //Fluxuates
/*0x148*/ DWORD SpawnID;
/*0x14c*/ DWORD MasterID;
/*0x150*/ DWORD Race;
/*0x154*/ DWORD Anon;
/*0x158*/ DWORD AARank;
/*0x15c*/ DWORD AFK;
/*0x160*/ DWORD VisType;
/*0x164*/ DWORD HPCurrent;
/*0x168*/ BYTE Unknown0x168[8];
/*0x170*/ DWORD Deity; // ?
/*0x174*/ DWORD HPMax;
/*0x178*/ DWORD GuildID;
/*0x17c*/ BYTE Unknown0x17c[20];
} SPAWNINFO, *PSPAWNINFO; EDIT: Modified as per eqmule's suggestion
EDIT: Modified as per source's suggestion on thread http://macroquest2.com/phpBB2/viewtopic.php?t=2250 ....tested, and works great as far as I can tell.

