Prevent 1.8 clients from joining? - Printable Version +- Cuberite Forum (https://forum.cuberite.org) +-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html) +--- Forum: Discussion (https://forum.cuberite.org/forum-5.html) +--- Thread: Prevent 1.8 clients from joining? (/thread-1612.html) |
RE: Prevent 1.8 clients to join? - Seadragon91 - 10-06-2014 (10-06-2014, 04:07 AM)STR_Warrior Wrote: https://forum.cuberite.org/showthread.php?tid=1333&pid=11875#pid11875 ? Okay this is better then a plugin that disables use of items. RE: Prevent 1.8 clients to join? - Mathias - 10-06-2014 (10-06-2014, 04:07 AM)STR_Warrior Wrote: https://forum.cuberite.org/showthread.php?tid=1333&pid=11875#pid11875 ?I've tried this plugin, but I don't know how to allow only 1.7 clients to join. It does prevent older clients than 1.7 from joining, but not 1.8 clients. RE: Prevent 1.8 clients to join? - NiLSPACE - 10-06-2014 If you set AllowedProtocols to "4,5" it should only allow 1.7 clients. RE: Prevent 1.8 clients to join? - Mathias - 10-06-2014 (10-06-2014, 04:59 AM)STR_Warrior Wrote: If you set AllowedProtocols to "4,5" it should only allow 1.7 clients.Thanks for your help! Sadly that doesn't work. RE: Prevent 1.8 clients from joining? - NiLSPACE - 10-06-2014 That's weird. It should work with every protocol, since I coded it so that it's dynamic. Do you get an error? RE: Prevent 1.8 clients from joining? - Mathias - 10-06-2014 (10-06-2014, 05:15 AM)STR_Warrior Wrote: That's weird. It should work with every protocol, since I coded it so that it's dynamic. Do you get an error?No, I don't get any errors. I can join with both 1.7 and 1.8 clients. RE: Prevent 1.8 clients from joining? - NiLSPACE - 10-06-2014 And 1.6? Did it even load correctly? Do you see "Initialized ProtLimit" in the console? RE: Prevent 1.8 clients from joining? - Mathias - 10-06-2014 (10-06-2014, 05:34 AM)STR_Warrior Wrote: And 1.6? Did it even load correctly? Do you see "Initialized ProtLimit" in the console?1.6 gives an "Unsupported protocol version" message, and the "Join server" button is grayed out. ProtLimit is running. RE: Prevent 1.8 clients from joining? - tigerw - 10-06-2014 <1.7 support in the server was removed recently. RE: Prevent 1.8 clients from joining? - NiLSPACE - 10-06-2014 Oh right. I forgot that Thanks. So then does anyone see a problem here (Exept the style problems): PLUGIN = nil AllowedProtocols = {} KickMessage = "" function Initialize(Plugin) PLUGIN = Plugin Plugin:SetName("ProtLimit") Plugin:SetVersion(1) cPluginManager.AddHook(cPluginManager.HOOK_LOGIN, OnLogin) if not LoadSettings() then LOGERROR("ProtLimit: Could not load " .. PLUGIN:GetLocalFolder() .. "/Config.ini") return false end LOG("Initialized ProtLimit") return true end function OnLogin(Client, ProtocolVersion, UserName) for Idx, Prot in ipairs(AllowedProtocols) do if Prot == ProtocolVersion then return false end end cRoot:Get():GetDefaultWorld():ScheduleTask(1, function() cRoot:Get():FindAndDoWithPlayer(UserName, function(Player) if Player:GetName() ~= UserName then return false end Player:GetClientHandle():Kick(KickMessage) end) end) return false end function LoadSettings() local SettingsIni = cIniFile() SettingsIni:ReadFile(PLUGIN:GetLocalFolder() .. "/Config.ini") local AllowedProtString = SettingsIni:GetValueSet("General", "AllowedProtocols", 4) local RawAllowedProtocols = StringSplitAndTrim(AllowedProtString, ",") for Idx, Value in ipairs(RawAllowedProtocols) do if tonumber(Value) ~= nil then table.insert(AllowedProtocols, tonumber(Value)) else LOGERROR("Protocol version \"" .. Value .. "\" isn't valid. Ignoring") end end KickMessage = SettingsIni:GetValueSet("General", "KickMessage", "You do not have the right client version.") SettingsIni:WriteFile(PLUGIN:GetLocalFolder() .. "/Config.ini") return true end |