HINO03
From SWGANH Wiki
Revision as of 12:53, 25 November 2009 by Schmunzel (Talk | contribs) (→sample code remove me once struct is documented)
Baseline - HINO03
SWGANH Wiki is a repository of Star Wars Galaxies Developer information. This site is only meant to be used by SWGANH Developer team.
|
Baseline Struct
Deltas Struct |
Variable Descriptions
Tags
|
Sample Packet
05 00 0C 5F A7 68 // BaselineMessage 36 21 FF FB 1A 00 00 00 // object ID 4F 4E 49 48 03 // ONIH 3 56 00 00 00 0E 00 00 00 80 3F 0E 00 // string count 69 6E 73 74 61 6C 6C // instal 61 74 69 6F 6E 5F 6E // lation_n 00 00 00 00 0E 00 77 69 6E 64 5F 67 65 6E 65 72 61 74 6F 72 // wind_generator 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 E8 03 00 00 01 00 00 00 00 00 00 00 00 00 25
sample code remove me once struct is documented
ByteBuffer ZoneClient::ONIH_3(uint64 id, char *installation){ ByteBuffer packet; uint32 len; packet << (uint16) 0x0005; packet.opcode2(SMSG_OBJ_UPDATE);//0c5fa768 packet << (uint64) id;//itemid packet << (uint32) 0x48494e4f; //0x494e534f; //OSNI Packet packet << (uint8) 0x03; // char* dir = "installation_n"; char* kind = "fusion_generator"; uint32 oncr3size = strlen(kind)+strlen(dir); packet << (uint32) (oncr3size+58);//61 //bytecount rest Packet size packet << (uint16) 0x000e; //object operands 13 ??? //57 packet << (float) 0;//0x3f800000; // float 1 len = strlen(dir); packet << (uint16) len; for (int i=0;i<len;i++){ packet << (char)dir[i]; } packet << (uint32) 0; len = strlen(kind); packet << (uint16) len; for (int i=0;i<len;i++){ packet << (char)kind[i]; } packet << (uint32) 0; //string packet << (uint32) 1;//1H inv load packet << (uint32) 0;//string packet << (uint32) 0; packet << (uint32) 0x00000000; packet << (uint32) 0; packet << (uint16) 0; packet << (uint16) 900;//thats the damage the structure //has taken that gets deducted from its health packet << (uint16) 0; packet << (uint16) 1000;//Condi2 (right of the c1 / c2) packet << (uint16) 0;//(evtl 32bitCondi2 (right of the c1 / c2)) packet << (uint8) 0; / packet << (uint8) 0; / packet << (uint32) 0; //amount packet << (uint32) 0; //amount return packet;