Developer knowledge network · moderated exchange

UnreliableCode コミュニティ

開発者リサーチ、リバース エンジニアリング、コーディング コミュニティ

Tutorial

Hooking __index metamethod to spoof client-side WalkSpeed properties

luau_hacker
Luau Expert
MEMBER
担当者: 159
参加日: Aug 2020
投稿: 17
ありがとう: 26
1 か月前 · Jul 7, 2026 8:01 AM
#1

When client-side anti-cheat scripts query Humanoid.WalkSpeed to check for speed hacks:

LUA
local oldIndex
oldIndex = hookmetamethod(game, '__index', function(self, key)
    -- If a game script checks our WalkSpeed, return the default 16
    if not checkcaller() and self:IsA('Humanoid') and key == 'WalkSpeed' then
        return 16
    end
    return oldIndex(self, key)
end)

Now your actual speed can be 100, but local sanity checks always read 16!

luau_reverser
Bytecode Analyst
MEMBER
担当者: 115
参加日: Jul 2019
投稿: 10
ありがとう: 45
1 か月前 · Jul 7, 2026 9:01 AM
#2

checkcaller() check is crucial so your own executor scripts can read the real WalkSpeed value.

segfault_sam
Member
MEMBER
担当者: 68
参加日: Mar 2019
投稿: 22
ありがとう: 57
1 か月前 · Jul 8, 2026 12:03 AM
#3

Works on 90% of popular Roblox games. Bypasses client-side speed checks completely.