View Single Post
  #25  
Old 05-18-2009, 06:22 PM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

I will probably try to get the Titanium fields identified myself later, since it shouldn't take much time at all. Here is the structure with offsets numbered properly for Titanium_structs.h:

Code:
struct Illusion_Struct {
/*000*/	uint32	spawnid;
/*004*/	char	charname[64];
/*068*/	uint16	race;
/*070*/	char	unknown070[2];
/*072*/	uint8	gender;
/*073*/	uint8	texture;	
/*074*/	uint8	helmtexture;
/*075*/	uint8	unknown075;
/*076*/	uint32	face;
/*080*/	char	unknown080[88];
/*168*/
};
And here is the encode that I will be using in Titanium.cpp for testing:

Code:
ENCODE(OP_Illusion) {
        ENCODE_LENGTH_EXACT(Illusion_Struct);
        SETUP_DIRECT_ENCODE(Illusion_Struct, structs::Illusion_Struct);
        OUT(spawnid);
        OUT_str(charname);
        if(emu->race > 473){
                eq->race = 1;
        }
        else {
                OUT(race);
        }
        OUT(gender);
        OUT(texture);
        OUT(helmtexture);
        OUT(face);

	uint8 ofs;
	uint8 val;
	ofs = emu->texture;
	val = emu->face;

	((uint8*)eq)[ofs % 168] = val;

        FINISH_ENCODE();
}
I figured I would post this here for reference later when working on it, or for anyone who might want to find the fields before I can get time to do it.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!

Last edited by trevius; 05-19-2009 at 02:24 AM..
Reply With Quote