Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local Humanoid = Instance.new'Humanoid';
- local BasePart = Instance.new'Part';
- local RemoteEvent = Instance.new'RemoteEvent';
- local RemoteFunction = Instance.new'RemoteFunction';
- local Frame = Instance.new'Frame';
- --[[Change this to whatever]]--
- getgenv = getgenv or getfenv or function() game:GetService'Players'.LocalPlayer:Kick("Your exploit does not support the functions needed.") end;
- getrawmetatable = getrawmetatable or debug.getmetatable or getmetatable or function() game:GetService'Players'.LocalPlayer:Kick("Your exploit does not support the functions needed.") end;
- toPrint = print;
- local isLuaFunction = islclosure;
- if isLuaFunction == nil then
- isLuaFunction = function(Function)
- local worked, Err = pcall(coroutine.wrap, Function);
- return worked;
- end;
- end;
- local globals = {
- [assert] = "assert";
- [collectgarbage] = "collectgarbage";
- [error] = "error";
- [getfenv] = "getfenv";
- [RemoteEvent.FireServer] = "FireServer";
- [RemoteEvent.OnClientEvent] = "OnClientEvent";
- [RemoteFunction.InvokeServer] = "InvokeServer";
- [getmetatable] = "getmetatable";
- [ipairs] = "ipairs";
- [loadstring] = "loadstring";
- [newproxy] = "newproxy";
- [next] = "next";
- [pairs] = "pairs";
- [pcall] = "pcall";
- [print] = "print";
- [game.FindFirstChild] = "FindFirstChild";
- [game.FindFirstChildOfClass] = "FindFirstChildOfClass";
- [game.WaitForChild] = "WaitForChild";
- [game.FindFirstChildWhichIsA] = "FindFirstChildWhichIsA";
- [game.IsA] = "IsA";
- [game.ClearAllChildren] = "ClearAllChildren";
- [game.Clone] = "Clone";
- [game.FindFirstAncestor] = "FindFirstAncestor";
- [game.FindFirstAncestorOfClass] = "FindFirstAncestorOfClass";
- [game.FindFirstAncestorWhichIsA] = "FindFirstAncestorWhichIsA";
- [game.GetChildren] = "GetChildren";
- [game.GetDebugId] = "GetDebugId";
- [game.GetDescendants] = "GetDescendants";
- [game.GetFullName] = "GetFullName";
- [game.GetPropertyChangedSignal] = "GetPropertyChangedSignal";
- [game.IsAncestorOf] = "IsAncestorOf";
- [game.IsDescendantOf] = "IsDescendantOf";
- [game.AncestryChanged] = "AncestryChanged";
- [game.Changed] = "Changed";
- [game.ChildAdded] = "ChildAdded";
- [game.ChildRemoved] = "ChildRemoved";
- [game.DescendantAdded] = "DescendantAdded";
- [game.DescendantRemoving] = "DescendantRemoving";
- [game.Destroy] = "Destroy";
- [Frame.TweenPosition] = "TweenPosition";
- [Frame.TweenSize] = "TweenSize";
- [Frame.TweenSizeAndPosition] = "TweenSizeAndPosition";
- [Frame.InputBegan] = "InputBegan";
- [Frame.InputChanged] = "InputChanged";
- [Frame.InputEnded] = "InputEnded";
- [Frame.MouseEnter] = "MouseEnter";
- [Frame.MouseLeave] = "MouseLeave";
- [Frame.MouseMoved] = "MouseMoved";
- [Frame.MouseWheelBackward] = "MouseWheelBackward";
- [Frame.MouseWheelForward] = "MouseWheelForward";
- [Frame.SelectionGained] = "SelectionGained";
- [Frame.SelectionLost] = "SelectionLost";
- [Frame.TouchLongPress] = "TouchLongPress";
- [Frame.TouchPan] = "TouchPan";
- [Frame.TouchPinch] = "TouchPinch";
- [Frame.TouchRotate] = "TouchRotate";
- [Frame.TouchSwipe] = "TouchSwipe";
- [Frame.TouchTap] = "TouchTap";
- [Humanoid.AddAccessory] = "AddAccessory";
- [Humanoid.ApplyDescription] = "ApplyDescription";
- [Humanoid.BuildRigFromAttachments] = "BuildRigFromAttachments";
- [Humanoid.ChangeState] = "ChangeState";
- [Humanoid.EquipTool] = "EquipTool";
- [Humanoid.GetAccessories] = "GetAccessories";
- [Humanoid.GetAppliedDescription] = "GetAppliedDescription";
- [Humanoid.GetBodyPartR15] = "GetBodyPartR15";
- [Humanoid.GetLimb] = "GetLimb";
- [Humanoid.GetPlayingAnimationTracks] = "GetPlayingAnimationTracks";
- [Humanoid.GetState] = "GetState";
- [Humanoid.GetStateEnabled] = "GetStateEnabled";
- [Humanoid.LoadAnimation] = "LoadAnimation";
- [Humanoid.Move] = "Move";
- [Humanoid.MoveTo] = "MoveTo";
- [Humanoid.PlayEmote] = "PlayEmote";
- [Humanoid.RemoveAccessories] = "RemoveAccessories";
- [Humanoid.ReplaceBodyPartR15] = "ReplaceBodyPartR15";
- [Humanoid.SetStateEnabled] = "SetStateEnabled";
- [Humanoid.TakeDamage] = "TakeDamage";
- [Humanoid.UnequipTools] = "UnequipTools";
- [Humanoid.AnimationPlayed] = "AnimationPlayed";
- [Humanoid.Climbing] = "Climbing";
- [Humanoid.Died] = "Died";
- [Humanoid.FallingDown] = "FallingDown";
- [Humanoid.FreeFalling] = "FreeFalling";
- [Humanoid.GettingUp] = "GettingUp";
- [Humanoid.HealthChanged] = "HealthChanged";
- [Humanoid.Jumping] = "Jumping";
- [Humanoid.MoveToFinished] = "MoveToFinished";
- [Humanoid.PlatformStanding] = "PlatformStanding";
- [Humanoid.Ragdoll] = "Ragdoll";
- [Humanoid.Running] = "Running";
- [Humanoid.Seated] = "Seated";
- [Humanoid.StateChanged] = "StateChanged";
- [Humanoid.StateEnabledChanged] = "StateEnabledChanged";
- [Humanoid.Strafing] = "Strafing";
- [Humanoid.Swimming] = "Swimming";
- [Humanoid.Touched] = "Touched";
- [BasePart.BreakJoints] = "BreakJoints";
- [BasePart.CanCollideWith] = "CanCollideWith";
- [BasePart.CanSetNetworkOwnership] = "CanSetNetworkOwnership";
- [BasePart.GetConnectedParts] = "GetConnectedParts";
- [BasePart.GetJoints] = "GetJoints";
- [BasePart.GetMass] = "GetMass";
- [BasePart.GetNetworkOwner] = "GetNetworkOwner";
- [BasePart.GetNetworkOwnershipAuto] = "GetNetworkOwnershipAuto";
- [BasePart.GetRootPart] = "GetRootPart";
- [BasePart.GetTouchingParts] = "GetTouchingParts";
- [BasePart.IsGrounded] = "IsGrounded";
- [BasePart.MakeJoints] = "MakeJoints";
- [BasePart.Resize] = "Resize";
- [BasePart.SetNetworkOwner] = "SetNetworkOwner";
- [BasePart.SetNetworkOwnershipAuto] = "SetNetworkOwnershipAuto";
- [BasePart.SubtractAsync] = "SubtractAsync";
- [BasePart.UnionAsync] = "UnionAsync";
- [BasePart.TouchEnded] = "TouchEnded";
- [BasePart.Touched] = "Touched";
- [rawequal] = "rawequal";
- [rawget] = "rawget";
- [rawset] = "rawset";
- [select] = "select";
- [setfenv] = "setfenv";
- [setmetatable] = "setmetatable";
- [tonumber] = "tonumber";
- [tostring] = "tostring";
- [type] = "type";
- [unpack] = "unpack";
- [xpcall] = "xpcall";
- [_G] = "_G";
- [_VERSION] = "_VERSION";
- [delay] = "delay";
- [elapsedTime] = "elapsedTime";
- [LoadLibrary] = "LoadLibrary";
- [printidentity] = "printidentity";
- [require] = "require";
- [settings] = "settings";
- [spawn] = "spawn";
- [stats] = "stats";
- [tick] = "tick";
- [time] = "time";
- [typeof] = "typeof";
- [UserSettings] = "UserSettings";
- [_VERSION] = "_VERSION";
- [wait] = "wait";
- [warn] = "warn";
- [Enum] = "Enum";
- [game] = "game";
- [shared] = "shared";
- [workspace] = "workspace";
- [type] = "type";
- [math.log] = "math.log";
- [math.ldexp] = "math.ldexp";
- [math.rad] = "math.rad";
- [math.cosh] = "math.cosh";
- [math.random] = "math.random";
- [math.frexp] = "math.frexp";
- [math.tanh] = "math.tanh";
- [math.floor] = "math.floor";
- [math.max] = "math.max";
- [math.sqrt] = "math.sqrt";
- [math.modf] = "math.modf";
- [math.pow] = "math.pow";
- [math.atan] = "math.atan";
- [math.tan] = "math.tan";
- [math.cos] = "math.cos";
- [math.sign] = "math.sign";
- [math.clamp] = "math.clamp";
- [math.log10] = "math.log10";
- [math.noise] = "math.noise";
- [math.acos] = "math.acos";
- [math.abs] = "math.abs";
- [math.sinh] = "math.sinh";
- [math.asin] = "math.asin";
- [math.min] = "math.min";
- [math.deg] = "math.deg";
- [math.fmod] = "math.fmod";
- [math.randomseed] = "math.randomseed";
- [math.atan2] = "math.atan2";
- [math.ceil] = "math.ceil";
- [math.sin] = "math.sin";
- [math.exp] = "math.exp";
- [CFrame.fromMatrix] = "CFrame.fromMatrix";
- [CFrame.fromAxisAngle] = "CFrame.fromAxisAngle";
- [CFrame.fromOrientation] = "CFrame.fromOrientation";
- [CFrame.fromEulerAnglesXYZ] = "CFrame.fromEulerAnglesXYZ";
- [CFrame.Angles] = "CFrame.Angles";
- [CFrame.fromEulerAnglesYXZ] = "CFrame.fromEulerAnglesYXZ";
- [CFrame.new] = "CFrame.new";
- [Vector3.FromNormalId] = "Vector3.FromNormalId";
- [Vector3.FromAxis] = "Vector3.FromAxis";
- [Vector3.new] = "Vector3.new";
- [string.sub] = "string.sub";
- [string.len] = "string.len";
- [string.upper] = "string.upper";
- [string.split] = "string.split";
- [string.rep] = "string.rep";
- [string.find] = "string.find";
- [string.match] = "string.match";
- [string.char] = "string.char";
- [string.gmatch] = "string.gmatch";
- [string.reverse] = "string.reverse";
- [string.byte] = "string.byte";
- [string.format] = "string.format";
- [string.gsub] = "string.gsub";
- [string.lower] = "string.lower";
- [PathWaypoint.new] = "PathWaypoint.new";
- [Color3.fromHSV] = "Color3.fromHSV";
- [Color3.toHSV] = "Color3.toHSV";
- [Color3.fromRGB] = "Color3.fromRGB";
- [Color3.new] = "Color3.new";
- [Vector2.new] = "Vector2.new";
- [UDim2.fromOffset] = "UDim2.fromOffset";
- [UDim2.fromScale] = "UDim2.fromScale";
- [UDim2.new] = "UDim2.new";
- [UDim.new] = "UDim.new";
- [Faces.new] = "Faces.new";
- [TweenInfo.new] = "TweenInfo.new";
- [table.pack] = "table.pack";
- [table.insert] = "table.insert";
- [table.getn] = "table.getn";
- [table.foreachi] = "table.foreachi";
- [table.maxn] = "table.maxn";
- [table.foreach] = "table.foreach";
- [table.concat] = "table.concat";
- [table.unpack] = "table.unpack";
- [table.sort] = "table.sort";
- [table.remove] = "table.remove";
- [PluginDrag.new] = "PluginDrag.new";
- [debug.traceback] = "debug.traceback";
- [debug.profileend] = "debug.profileend";
- [debug.profilebegin] = "debug.profilebegin";
- [os.difftime] = "os.difftime";
- [os.time] = "os.time";
- [os.date] = "os.date";
- [DockWidgetPluginGuiInfo.new] = "DockWidgetPluginGuiInfo.new";
- [Region3.new] = "Region3.new";
- [Vector2int16.new] = "Vector2int16.new";
- [Vector3int16.new] = "Vector3int16.new";
- [bit32.band] = "bit32.band";
- [bit32.extract] = "bit32.extract";
- [bit32.bor] = "bit32.bor";
- [bit32.bnot] = "bit32.bnot";
- [bit32.arshift] = "bit32.arshift";
- [bit32.rshift] = "bit32.rshift";
- [bit32.rrotate] = "bit32.rrotate";
- [bit32.replace] = "bit32.replace";
- [bit32.lshift] = "bit32.lshift";
- [bit32.lrotate] = "bit32.lrotate";
- [bit32.btest] = "bit32.btest";
- [bit32.bxor] = "bit32.bxor";
- [Region3int16.new] = "Region3int16.new";
- [coroutine.resume] = "coroutine.resume";
- [coroutine.yield] = "coroutine.yield";
- [coroutine.status] = "coroutine.status";
- [coroutine.wrap] = "coroutine.wrap";
- [coroutine.create] = "coroutine.create";
- [coroutine.running] = "coroutine.running";
- [utf8.offset] = "utf8.offset";
- [utf8.codepoint] = "utf8.codepoint";
- [utf8.nfdnormalize] = "utf8.nfdnormalize";
- [utf8.char] = "utf8.char";
- [utf8.codes] = "utf8.codes";
- [utf8.len] = "utf8.len";
- [utf8.nfcnormalize] = "utf8.nfcnormalize";
- [utf8.graphemes] = "utf8.graphemes";
- [ColorSequence.new] = "ColorSequence.new";
- [PathWaypoint.new] = "PathWaypoint.new";
- };
- setmetatable(globals, {
- __index = function(self, key)
- if typeof(key) == "Instance" then return key:GetFullName(); end;
- return tostring(key);
- end;
- });
- local function findString(ToFind, Partly)
- for i,v in next, debug.getregistry() do
- if type(v) == "function" and islclosure(v) and not is_synapse_function(v) then
- for g,b in next, debug.getconstants(v) do
- if type(b) == "string" and (Partly and (b:lower():match(ToFind:lower())) or b == ToFind) then
- return v;
- end;
- end;
- end;
- end;
- end;
- local function findStrings(ToFind, Partly)
- local Found = {};
- for i,v in next, debug.getregistry() do
- if type(v) == "function" and islclosure(v) and not is_synapse_function(v) then
- for g,b in next, debug.getconstants(v) do
- if type(b) == "string" and (Partly and (b:lower():match(ToFind:lower())) or b == ToFind) then
- Found[#Found + 1] = {Function = v, Value = b};
- end;
- end;
- end;
- end;
- return Found;
- end;
- local function changeConstant(Function, IndicePosition, ChangeTo)
- if type(Function) == "function" and ToChange ~= nil and typeof(IndicePosition) == "number" then
- debug.setconstant(Function, IndicePosition, ChangeTo);
- end;
- end;
- local function changeUpvalue(Function, IndicePosition, ChangeTo)
- if type(Function) == "function" and ToChange ~= nil and typeof(IndicePosition) == "number" then
- debug.setupvalue(Function, IndicePosition, ChangeTo);
- end;
- end;
- getgenv(2).changeconstant = changeConstant;
- getgenv(2).ChangeConstant = changeConstant;
- getgenv(2).changeupvalue = ChangeUpvalue;
- getgenv(2).ChangeUpvalue = changeUpvalue;
- local function findUpvalue(ToFind)
- for i,v in next, debug.getregistry() do
- if type(v) == "function" and not is_synapse_function(v) then
- for g,b in next, debug.getupvalues(v) do
- if b == ToFind then
- return v;
- end;
- end;
- end;
- end;
- end;
- local function hasUpvalue(Func, Str)
- for i,v in next, debug.getupvalues(Func) do
- if v == Str or tostring(v) == tostring(Str) then
- return true, v;
- end;
- end;
- return false;
- end;
- local function findTable(...)
- for i,v in next, debug.getregistry() do
- if type(v) == "function" and not is_synapse_function(v) then
- for g,b in next, debug.getupvalues(v) do
- if type(b) == "table" then
- local HasAll = true;
- for _, Val in next, {...} do
- if not rawget(b, Val) then
- HasAll = false;
- end;
- end;
- if HasAll then return b; end;
- end;
- end;
- end;
- end;
- end;
- local function findUpvalues(ToFind)
- local Found = {};
- for i,v in next, debug.getregistry() do
- if type(v) == "function" and not is_synapse_function(v) then
- for g,b in next, debug.getupvalues(v) do
- if b == ToFind then
- Found[#Found + 1] = {Key = g, Value = b};
- end;
- end;
- end;
- end;
- return Found;
- end;
- local function hasUpvalue(Function, ToCheck)
- if type(Function) ~= "function" then return false; end;
- for i,v in next, debug.getupvalues(Function) do
- if v == ToCheck then
- return true;
- end;
- end;
- return false;
- end;
- local function hasConstant(Function, ToCheck)
- if type(Function) ~= "function" then return false; end;
- if not islclosure(Function) then return false; end;
- for i,v in next, debug.getconstants(Function) do
- if v == ToCheck then
- return true;
- end;
- end;
- return false;
- end;
- local function hasString(Function, ToCheck, Partly)
- if type(Function) ~= "function" then return false; end;
- if not islclosure(Function) then return false; end;
- if type(ToCheck) ~= "string" then return false; end;
- for i,v in next, debug.getconstants(Function) do
- if (not Partly and v == ToCheck or Partly and v:lower():match(Partly:lower())) then
- return true;
- end;
- end;
- return false;
- end;
- getgenv(2).findupvalue = findUpvalue;
- getgenv(2).FindUpvalue = findUpvalue;
- local function forEach(Table, Callback)
- for Key, Value in next, Table do
- Callback(Key, Value);
- end;
- end;
- getgenv(2).foreach = forEach;
- getgenv(2).ForEach = forEach;
- local function countLen(Table)
- local Count = 0;
- forEach(Table, function(Key, Value) Count = Count + 1; end);
- return Count;
- end;
- getgenv(2).countlen = countLen;
- getgenv(2).CountLen = countLen;
- local function isArray(Table)
- return not (#Table == 0 and (countLen(Table) > 0));
- end;
- getgenv(2).isarray = isArray;
- getgenv(2).IsArray = isArray;
- local function tableToString(Table)
- if countLen(Table) == 0 then return "{}"; end;
- local Result = "{"
- local isArray = isArray(Table);
- for i,v in next, Table, nil do
- local BackupMT = {};
- local BackupMT2 = {};
- if type(v) == "table" then
- local MT = getrawmetatable(v);
- if MT then
- for g,b in next, MT do
- rawset(BackupMT, g, b);
- rawset(MT, g, nil);
- end;
- end;
- end;
- if type(i) == "table" then
- local MT = getrawmetatable(i);
- if MT then
- for g,b in next, MT do
- rawset(BackupMT2, g, b);
- rawset(MT, g, nil);
- end;
- end;
- end;
- Result = Result .. "\n [" .. (type(i) == "number" and tostring(i) or type(i) == "table" and tableToString(i) or ('"' .. tostring(i) .. '"')) .. "] = " .. globals[v] .. " (type: " .. (typeof(v) == "Instance" and v.ClassName or typeof(v)) .. (typeof(v) == "function" and ", is lua closure: " .. tostring(isLuaFunction(v)) or "") .. ")";
- if type(v) == "table" then
- local MT = getrawmetatable(v);
- if MT then
- for g,b in next, BackupMT do
- rawset(MT, g, b);
- end;
- end;
- end;
- if type(i) == "table" then
- local MT = getrawmetatable(i);
- if MT then
- for g,b in next, BackupMT2 do
- rawset(MT, g, b);
- end;
- end;
- end;
- end;
- Result = Result .. "\n}";
- return Result;
- end;
- local hookf = hookfunction or replaceclosure or function(f, f2) local oldf = f; f = f2; return oldf; end;
- local cwrap = newcclosure or (coroutine and coroutine.wrap or function(f) return f() end);
- if not getgenv().hooked then
- getgenv().hooked = true;
- local OldTT;
- OldTT = hookf(tostring, cwrap(function(toSet)
- if rawequal(typeof(toSet), "table") then
- return tableToString(toSet);
- end;
- return OldTT(toSet);
- end));
- end;
- getgenv(2).tabletostring = tableToString;
- getgenv(2).tstring = tableToString;
- getgenv(2).tabstring = tabelToString;
- local function dumpFunction(Function)
- if type(Function) ~= "function" then return; end;
- local Upvalues = debug.getupvalues(Function);
- toPrint("Function found!\nUpvalues: " .. tableToString(Upvalues));
- if isLuaFunction(Function) then
- local Constants = debug.getconstants(Function);
- toPrint("Constants: " .. tableToString(Constants))
- end;
- end;
- local function dumpTable(Table)
- if type(Table) ~= "table" then return; end;
- toPrint("Table found!\nContents: " .. tableToString(Table));
- end;
- getgenv(2).dumpFunction = dumpFunction;
- getgenv(2).dumpTable = dumpTable;
- getgenv(2).tableToString = tableToString;
- getgenv(2).findString = findString;
- getgenv(2).countLen = countLen;
- getgenv(2).isArray = isArray;
- getgenv(2).forEach = forEach;
- getgenv(2).findUpvalue = findUpvalue;
- getgenv(2).findStrings = findStrings;
- getgenv(2).findUpvalues = findUpvalues;
- getgenv(2).findTable = findTable;
- getgenv(2).hasUpvalue=hasUpvalue;
Advertisement
Add Comment
Please, Sign In to add comment