From a33119c070626aa95a0f57a6e56fc06746028712 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Tue, 10 Mar 2026 11:54:15 -0700 Subject: [PATCH] net: dispatch MSG_MOVE_ROOT and MSG_MOVE_UNROOT for other entities --- src/game/game_handler.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/game/game_handler.cpp b/src/game/game_handler.cpp index 6dbec7aa..96044e4a 100644 --- a/src/game/game_handler.cpp +++ b/src/game/game_handler.cpp @@ -4485,6 +4485,8 @@ void GameHandler::handlePacket(network::Packet& packet) { case Opcode::MSG_MOVE_GRAVITY_CHNG: case Opcode::MSG_MOVE_UPDATE_CAN_FLY: case Opcode::MSG_MOVE_UPDATE_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY: + case Opcode::MSG_MOVE_ROOT: + case Opcode::MSG_MOVE_UNROOT: if (state == WorldState::IN_WORLD) { handleOtherPlayerMovement(packet); } @@ -12328,7 +12330,7 @@ void GameHandler::handleCompressedMoves(network::Packet& packet) { // Player movement sub-opcodes (SMSG_MULTIPLE_MOVES carries MSG_MOVE_*) // Not static — wireOpcode() depends on runtime active opcode table. - const std::array kMoveOpcodes = { + const std::array kMoveOpcodes = { wireOpcode(Opcode::MSG_MOVE_START_FORWARD), wireOpcode(Opcode::MSG_MOVE_START_BACKWARD), wireOpcode(Opcode::MSG_MOVE_STOP), @@ -12356,6 +12358,8 @@ void GameHandler::handleCompressedMoves(network::Packet& packet) { wireOpcode(Opcode::MSG_MOVE_GRAVITY_CHNG), wireOpcode(Opcode::MSG_MOVE_UPDATE_CAN_FLY), wireOpcode(Opcode::MSG_MOVE_UPDATE_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY), + wireOpcode(Opcode::MSG_MOVE_ROOT), + wireOpcode(Opcode::MSG_MOVE_UNROOT), }; // Track unhandled sub-opcodes once per compressed packet (avoid log spam)