Fix movement/warden packet noise and party kill opcode mapping

This commit is contained in:
Kelsi 2026-02-20 02:19:17 -08:00
parent 71a31753c4
commit 82d104b9ec
9 changed files with 54 additions and 17 deletions

View file

@ -20,6 +20,7 @@
#include <map>
#include <optional>
#include <algorithm>
#include <chrono>
namespace wowee::game {
class TransportManager;
@ -1237,6 +1238,8 @@ private:
// Movement
MovementInfo movementInfo; // Current player movement state
uint32_t movementTime = 0; // Movement timestamp counter
std::chrono::steady_clock::time_point movementClockStart_ = std::chrono::steady_clock::now();
uint32_t lastMovementTimestampMs_ = 0;
bool serverMovementAllowed_ = true;
// Inventory
@ -1518,6 +1521,7 @@ private:
std::unordered_map<uint32_t, uint32_t> taxiCostMap_; // destNodeId -> total cost in copper
void buildTaxiCostMap();
void applyTaxiMountForCurrentNode();
uint32_t nextMovementTimestampMs();
void sanitizeMovementForTaxi();
void startClientTaxiPath(const std::vector<uint32_t>& pathNodes);
void updateClientTaxi(float deltaTime);

View file

@ -65,7 +65,6 @@ enum class LogicalOpcode : uint16_t {
// ---- Entity/Object updates ----
SMSG_UPDATE_OBJECT,
SMSG_COMPRESSED_UPDATE_OBJECT,
SMSG_UNKNOWN_1F5,
SMSG_MONSTER_MOVE_TRANSPORT,
SMSG_SPLINE_MOVE_SET_WALK_MODE,
SMSG_SPLINE_MOVE_SET_RUN_MODE,
@ -226,6 +225,7 @@ enum class LogicalOpcode : uint16_t {
CMSG_GROUP_DISBAND,
SMSG_GROUP_LIST,
SMSG_PARTY_COMMAND_RESULT,
SMSG_PARTYKILLLOG,
MSG_RAID_TARGET_UPDATE,
CMSG_REQUEST_RAID_INFO,
SMSG_RAID_INSTANCE_INFO,