the total length of the data that composes this packet in bits, excluding the opcode and end padding
the code for the type of object being constructed
the GUID this object will be assigned
if defined, the relationship between this object and another object (its parent)
the data used to construct this type of object;
on decoding, set to None
if the process failed
the data used to construct this type of object;
on decoding, set to None
if the process failed
the GUID this object will be assigned
the code for the type of object being constructed
if defined, the relationship between this object and another object (its parent)
the total length of the data that composes this packet in bits, excluding the opcode and end padding
Communicate with the client that a certain object with certain properties is to be created. In general,
ObjectCreateMessage
and its counterpartObjectCreateDetailedMessage
should look similar.In normal packet data order, the parent object is specified before the actual object is specified. This is most likely a method of early correction. "Does this parent object exist?" "Is this new object something that can be attached to this parent?" "Does the parent have the appropriate attachment slot?" There is no fail-safe method for any of these circumstances being false, however, and the object will simply not be created. In instance where the parent data does not exist, the object-specific data is immediately encountered.
The object's GUID is assigned by the server. The clients are required to adhere to this new GUID referring to the object. There is no fail-safe for a conflict between what the server thinks is a new GUID and what any client thinks is an already-assigned GUID. Likewise, there is no fail-safe between a client failing or refusing to create an object and the server thinking an object has been created. (The GM-level command
/sync
tests for objects that "do not match" between the server and the client. It's implementation and scope are undefined.)Knowing the object's type is essential for parsing the specific information passed by the
data
parameter. If the object does not have encoding information or is unknown, it will not translate between byte data and a game object.the total length of the data that composes this packet in bits, excluding the opcode and end padding
the code for the type of object being constructed
the GUID this object will be assigned
if defined, the relationship between this object and another object (its parent)
the data used to construct this type of object; on decoding, set to
None
if the process failed