mirror of
https://github.com/edubart/otclient.git
synced 2025-10-15 20:14:54 +02:00
Progress updating to cv981/pv973:
* Implemented the new client AND protocol version methods. * Implemented the new speed laws added in cv980 (http://www.tibia.com/news/?subtopic=newsarchive&id=2251). * Added more missing bytea to login packets (client version/type and some unknown bytes). * Fixed the InputMessage::getDouble method. * Cleaned up some of the const values. * Started on the pending state features. TODO: * Pending game state feature. * Ensure version compatibility hasn't been compromised.
This commit is contained in:
@@ -50,8 +50,16 @@ function g_game.getSupportedProtocols()
|
||||
return {
|
||||
810, 853, 854, 860, 861, 862, 870,
|
||||
910, 940, 944, 953, 954, 960, 961,
|
||||
963, 970, 971, 980, 981
|
||||
963, 970, 971, 973
|
||||
}
|
||||
end
|
||||
|
||||
function g_game.getSupportedClients(protocol)
|
||||
clients = {
|
||||
[971] = {980},
|
||||
[973] = {981}
|
||||
}
|
||||
return clients[protocol] or {protocol}
|
||||
end
|
||||
|
||||
g_game.setRsa(OTSERV_RSA)
|
||||
|
@@ -28,7 +28,12 @@ function ProtocolLogin:sendLoginPacket()
|
||||
local msg = OutputMessage.create()
|
||||
msg:addU8(ClientOpcodes.ClientEnterAccount)
|
||||
msg:addU16(g_game.getOsType())
|
||||
msg:addU16(g_game.getClientVersion())
|
||||
msg:addU16(g_game.getProtocolVersion())
|
||||
|
||||
if g_game.getProtocolVersion() >= 971 then
|
||||
msg:addU32(g_game.getClientVersion())
|
||||
msg:addU8(182) -- clientType
|
||||
end
|
||||
|
||||
msg:addU32(g_things.getDatSignature())
|
||||
msg:addU32(g_sprites.getSprSignature())
|
||||
@@ -113,6 +118,11 @@ function ProtocolLogin:parseCharacterList(msg)
|
||||
character.worldIp = iptostring(msg:getU32())
|
||||
character.worldPort = msg:getU16()
|
||||
characters[i] = character
|
||||
|
||||
-- ??
|
||||
if g_game.getProtocolVersion() >= 971 then
|
||||
msg:getU8()
|
||||
end
|
||||
end
|
||||
|
||||
local account = {}
|
||||
|
Reference in New Issue
Block a user