diff --git a/src/server/network/protocol/protocolgame.cpp b/src/server/network/protocol/protocolgame.cpp index 2c44faba957..99952852222 100644 --- a/src/server/network/protocol/protocolgame.cpp +++ b/src/server/network/protocol/protocolgame.cpp @@ -5217,7 +5217,12 @@ void ProtocolGame::sendForgeResult(ForgeAction_t actionType, uint16_t leftItemId msg.addByte(static_cast(actionType)); msg.addByte(convergence); - msg.addByte(convergence ? true : success); + if (convergence && actionType == ForgeAction_t::FUSION) { + success = true; + std::swap(leftItemId, rightItemId); + } + + msg.addByte(success); msg.add(leftItemId); msg.addByte(leftTier);