From d96a87aafc651ab69bd6dc7751e5bef2d2515d39 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Tue, 10 Mar 2026 11:24:15 -0700 Subject: [PATCH] net: dispatch MSG_MOVE_SET_WALK_MODE and MSG_MOVE_SET_RUN_MODE through handleOtherPlayerMovement These two opcodes were defined in the opcode table but never routed to handleOtherPlayerMovement. The server sends them when another player explicitly toggles walk/run mode. Without dispatch, the WALKING flag from these packets was never processed, so other players appeared to always run even after switching to walk mode (until the next heartbeat). --- src/game/game_handler.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/game/game_handler.cpp b/src/game/game_handler.cpp index 7bb5ec6a..bd94fc0f 100644 --- a/src/game/game_handler.cpp +++ b/src/game/game_handler.cpp @@ -4473,6 +4473,8 @@ void GameHandler::handlePacket(network::Packet& packet) { case Opcode::MSG_MOVE_HEARTBEAT: case Opcode::MSG_MOVE_START_SWIM: case Opcode::MSG_MOVE_STOP_SWIM: + case Opcode::MSG_MOVE_SET_WALK_MODE: + case Opcode::MSG_MOVE_SET_RUN_MODE: if (state == WorldState::IN_WORLD) { handleOtherPlayerMovement(packet); }