From da003f08612697b6cd1ad145fab7c5abe04fcca9 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Fri, 15 Apr 2016 21:52:18 +0300 Subject: Change packet version to 6 (tmwa) Add hack to send version 5 to old tmwa, because for version 6 some servers can be broken. --- src/net/tmwa/loginhandler.cpp | 14 ++++++++++++-- src/net/tmwa/network.h | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/net/tmwa/loginhandler.cpp b/src/net/tmwa/loginhandler.cpp index c2e6d462c..2f006c639 100644 --- a/src/net/tmwa/loginhandler.cpp +++ b/src/net/tmwa/loginhandler.cpp @@ -33,6 +33,7 @@ #include "debug.h" extern Net::LoginHandler *loginHandler; +extern unsigned int tmwServerVersion; namespace TmwAthena { @@ -91,8 +92,17 @@ void LoginHandler::sendLoginRegister(const std::string &restrict username, A_UNUSED) const { createOutPacket(CMSG_LOGIN_REGISTER); - outMsg.writeInt32(CLIENT_PROTOCOL_VERSION, - "client protocol version"); + if (tmwServerVersion < 0x100408) + { + // hack to avoid bug in tmwa... + outMsg.writeInt32(5, + "client protocol version"); + } + else + { + outMsg.writeInt32(CLIENT_PROTOCOL_VERSION, + "client protocol version"); + } outMsg.writeString(username, 24, "login"); outMsg.writeStringNoLog(password, 24, "password"); diff --git a/src/net/tmwa/network.h b/src/net/tmwa/network.h index 11980d95c..d75d9774b 100644 --- a/src/net/tmwa/network.h +++ b/src/net/tmwa/network.h @@ -29,7 +29,7 @@ * Protocol version, reported to the tmwa char and mapserver who can adjust * the protocol accordingly. */ -#define CLIENT_PROTOCOL_VERSION 5 +#define CLIENT_PROTOCOL_VERSION 6 namespace TmwAthena { -- cgit v1.2.3-60-g2f50