public IPacket GetSetFieldPacket() { var packet = new UnstructuredOutgoingPacket(PacketSendOperations.SetField); packet.WriteShort(0); // ClientOpt packet.WriteInt(GameStage.ChannelID); packet.WriteInt(GameStage.WorldID); packet.WriteBool(true); // sNotifierMessage._m_pStr packet.WriteBool(!IsInstantiated); packet.WriteShort(0); // nNotifierCheck, loops if (!IsInstantiated) { packet.WriteUInt(Damage.InitSeed1); packet.WriteUInt(Damage.InitSeed2); packet.WriteUInt(Damage.InitSeed3); packet.WriteCharacterData(Character); packet.WriteInt(0); for (var i = 0; i < 3; i++) { packet.WriteInt(0); } } else { packet.WriteByte(0); packet.WriteInt(Character.FieldID); packet.WriteByte(Character.FieldPortal); packet.WriteInt(Character.HP); packet.WriteBool(false); } packet.WriteDateTime(DateTime.Now); return(packet); }