From 7c5bec50ef9d5e7b1112da56fe521e700427b8b2 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Fri, 20 Mar 2026 17:49:49 -0700 Subject: [PATCH] fix: increase world packet size limit from 16KB to 32KB The 0x4000 (16384) limit was too conservative and could disconnect the client when the server sends large packets such as SMSG_GUILD_ROSTER with 500+ members (~30KB) or SMSG_AUCTION_LIST with many results. Increase to 0x8000 (32768) which covers all normal gameplay while still protecting against framing desync from encryption errors. --- src/network/world_socket.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/world_socket.cpp b/src/network/world_socket.cpp index 271fc0e9..7fe18709 100644 --- a/src/network/world_socket.cpp +++ b/src/network/world_socket.cpp @@ -668,7 +668,7 @@ void WorldSocket::tryParsePackets() { closeSocketNoJoin(); return; } - constexpr uint16_t kMaxWorldPacketSize = 0x4000; + constexpr uint16_t kMaxWorldPacketSize = 0x8000; // 32KB — allows large guild rosters, auction lists if (size > kMaxWorldPacketSize) { LOG_ERROR("World packet framing desync: oversized packet size=", size, " rawHdr=", std::hex,