using AcDream.Core.Net.Packets; namespace AcDream.Core.Net.Messages; /// /// Outbound reply to the server's DddInterrogation game message /// (0xF7E5). Sent during the post-EnterWorld handshake; without it the /// server keeps the client in a transitional state and other clients /// see the character as a stationary purple loading haze. /// /// /// Wire layout (see /// references/holtburger/crates/holtburger-protocol/src/messages/misc/types.rs::DddInterrogationResponseData): /// /// /// u32 game-message opcode = 0xF7E6 (DddInterrogationResponse) /// u32 language = 1 (English) /// u32 count = 0 (no tagged iteration lists; we acknowledge the /// interrogation without claiming any dat-list versions). The /// loop body is then empty. /// /// /// /// Total payload: 12 bytes. Should be sent automatically by /// WorldSession in response to receiving 0xF7E5. /// /// public static class DddInterrogationResponse { public const uint Opcode = 0xF7E6u; public const uint EnglishLanguage = 1u; public static byte[] Build() { var w = new PacketWriter(16); w.WriteUInt32(Opcode); w.WriteUInt32(EnglishLanguage); w.WriteUInt32(0u); // empty TaggedIterationList vec return w.ToArray(); } }