-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] -- Services. local playersService = game:GetService("Players") local runService = game:GetService("RunService") local userInputService = game:GetService("UserInputService") ---@module Utility.Data2Code local Class = loadstring(game:HttpGet("https://raw.githubusercontent.com/Awakenchan/GcViewerV2/refs/heads/main/Utility/Data2Code%40Amity.lua"))() -- Config. local CONFIG = { learnShootKey = Enum.KeyCode.F1, learnPassKey = Enum.KeyCode.F2, passKey = Enum.KeyCode.Q, greenValue = 1, magRange = 12, reachRange = 18, ballPattern = "ball", } -- State. local localPlayer = playersService.LocalPlayer local learning = nil local shoot = { remote = nil, args = nil, numIndex = nil } local pass = { remote = nil, args = nil } local cachedBall = nil -- Find the ball by name, refreshed on a timer. local function findBall() for _, object in ipairs(workspace:GetDescendants()) do if object:IsA("BasePart") and object.Name:lower():find(CONFIG.ballPattern) then return object end end end -- Closest teammate (falls back to closest player if no teams). local function getClosestTeammate() local root = localPlayer.Character and localPlayer.Character:FindFirstChild("HumanoidRootPart") if not root then return end local closest, closestDist = nil, math.huge for _, player in ipairs(playersService:GetPlayers()) do if player == localPlayer then continue end if localPlayer.Team and player.Team ~= localPlayer.Team then continue end local targetRoot = player.Character and player.Character:FindFirstChild("HumanoidRootPart") if not targetRoot then continue end local dist = (targetRoot.Position - root.Position).Magnitude if dist < closestDist then closest, closestDist = player, dist end end return closest end -- Rebuild learned pass args so they point at the target. local function buildPassArgs(target) local root = target.Character.HumanoidRootPart local args = {} for index, value in ipairs(pass.args) do local valueType = typeof(value) if valueType == "Vector3" then args[index] = root.Position elseif valueType == "CFrame" then args[index] = root.CFrame elseif valueType == "Instance" and value:IsA("Player") then args[index] = target elseif valueType == "Instance" and value:IsA("BasePart") then args[index] = root elseif valueType == "Instance" and value:IsA("Model") then args[index] = target.Character else args[index] = value end end return args end -- Learn remotes from real game calls and force green on shots. local oldNamecall oldNamecall = hookmetamethod(game, "__namecall", newcclosure(function(self, ...) local method = getnamecallmethod() if (method ~= "FireServer" and method ~= "InvokeServer") or checkcaller() then return oldNamecall(self, ...) end if learning then local args = { ... } local target = learning == "shoot" and shoot or pass target.remote, target.args = self, args if learning == "shoot" then for index, value in ipairs(args) do if typeof(value) == "number" then shoot.numIndex = index break end end end print("[Byte] learned", learning, self:GetFullName()) print(Class.Convert(args, true)) learning = nil return oldNamecall(self, ...) end if self == shoot.remote and shoot.numIndex then local args = { ... } args[shoot.numIndex] = CONFIG.greenValue return oldNamecall(self, unpack(args)) end return oldNamecall(self, ...) end)) -- Mags and reach. runService.Heartbeat:Connect(function() local root = localPlayer.Character and localPlayer.Character:FindFirstChild("HumanoidRootPart") if not