Packet packet = new Packet(); packet.WriteByte(2); packet.WriteUInt32((uint)(mClients.Count * 0x8c) + 8); packet.WriteUInt32(0x8c); packet.WriteUInt32((uint)mClients.Count); foreach (UInt32 sess in mClients) { Client client = Server.GetClient(sess); Console.WriteLine("Stage:{0} UserSession:{1}", mID, client.mSessionID); packet.WriteUInt32(0); packet.WriteUInt32(0); packet.WriteUInt32(client.mSessionID); packet.WritePaddedString(client.mName, 32); packet.WritePaddedString(client.mClanName, 16); packet.WriteByte(client.mLevel); packet.WriteByte(0); packet.WriteByte(2); packet.WriteByte(0); packet.WriteUInt32(client.mAccess); packet.WriteUInt32(0); packet.WriteUInt16(2); // unknown packet.WriteUInt16(0); // unknown packet.WriteUInt32(0); // ClanID packet.WriteUInt32(1); // unknown only seen 1/0 packet.WriteUInt32(client.mGender); packet.WriteByte(client.mHair); packet.WriteByte(client.mFace); packet.WriteUInt16(0); packet.WriteUInt32(client.mHeadItemID); packet.WriteUInt32(client.mChestItemID); packet.WriteUInt32(client.mHandsItemID); packet.WriteUInt32(client.mLegsItemID); packet.WriteUInt32(client.mFeetItemID); packet.WriteUInt32(client.mLeftFingerItemID); packet.WriteUInt32(client.mRightFingerItemID); packet.WriteUInt32(client.mMeleeItemID); packet.WriteUInt32(client.mPrimaryItemID); packet.WriteUInt32(client.mSecondaryItemID); packet.WriteUInt32(client.mCustom1ItemID); packet.WriteUInt32(client.mCustom2ItemID); } cli.SendPacket(0x0065, 1101, packet);