local currentRsa function g_game.getRsa() return currentRsa end function g_game.chooseRsa(host) if currentRsa ~= CIPSOFT_RSA and currentRsa ~= OTSERV_RSA then return end if host:ends('.tibia.com') or host:ends('.cipsoft.com') then g_game.setRsa(CIPSOFT_RSA) if g_app.getOs() == 'windows' then g_game.setCustomOs(OsTypes.Windows) else g_game.setCustomOs(OsTypes.Linux) end else if currentRsa == CIPSOFT_RSA then g_game.setCustomOs(-1) end g_game.setRsa(OTSERV_RSA) end end function g_game.setRsa(rsa, e) e = e or '65537' g_crypt.rsaSetPublicKey(rsa, e) currentRsa = rsa end function g_game.isOfficialTibia() return currentRsa == CIPSOFT_RSA end function g_game.getSupportedProtocols() return { 810, 811, 840, 842, 850, 853, 854, 860, 861, 862, 870, 910, 940, 944, 953, 954, 960, 961, 963, 970, 971, 973, 974, 975, 976, 977, 978, 979, 980, 1010 } end function g_game.getSupportedClients(protocol) clients = { [971] = {980}, [973] = {981}, [974] = {982}, [975] = {983}, [976] = {984}, [977] = {985}, [978] = {986}, [979] = {1001}, [980] = {1002} } return clients[protocol] or {protocol} end g_game.setRsa(OTSERV_RSA)