Alright so Hyperion got released to UWP client’s by upgrading them to 64-bit however there is a way in which you can gain access to the 32-bit Microsoft store version. So I thought I would explain how you can stop that
Here is how:
Make a local script in StarterPlayer → StarterPlayerScripts
Detection
So right now we need to actually check if they are 32-bit.
For this, I found a very well made post about how to do it here: https://devforum.roblox.com/t/byfron-required-place/2544853/31
But if your not interested in that, then the code would be:
function determineBitArchitecture(): number
local tableAddress = tonumber(string.sub(tostring{}, 8))
if #tostring(tableAddress) <= 10 then
return 32
else
return 64
end
end
So now that we have check if they are using a 32-bit client then we have to make sure we kick/ban the right person
Kicking the right person
What we don’t want to do is accidentally kick some mobile player who can only run 32-bit software.
Meaning we would have to check if they are using mobile. To do this let’s just use UserInputService
local UIS = game:GetService('UserInputService')
local IsPhone = UIS.TouchEnabled and UIS.KeyboardEnabled
And after some intense coding and thinking there is the check.
Now let’s kick them
Actually Kicking the person
Now here you can do what you want. e.g add them to a flag based anti-cheat, kick them or just ban them outright.
Kicking is pretty simple it’s just :Kick()
but if you don’t know how to do that then here’s the code I would use:
local UIS = game:GetService('UserInputService')
local IsPhone = UIS.TouchEnabled and UIS.KeyboardEnabled
function determineBitArchitecture(): number
local tableAddress = tonumber(string.sub(tostring{}, 8))
if #tostring(tableAddress) <= 10 then
return 32
else
return 64
end
end
if IsPhone == false then
local Client = determineBitArchitecture()
if Client == 32 then
game.Players.LocalPlayer:Kick("Strange how you managed to download a 32-bit client when the new version is 64 isn't it?")
end
end
(Before hyperion roll out)
Let’s test it out:
64-bit:
32-bit:
So now to recap, the code checks if they are using a 32-bit client and on phone then if they are using a 32-bit client and not on phone it kicks them
You may want to add a way where this can’t be bypassed by using actors or something like that but anyways.
Thanks for reading and I hope this helps