--open source for all❤️ --subscribe print("subscribe to openscripts") local plrs=game:GetService("Players") local rs=game:GetService("RunService") local ts=game:GetService("TweenService") local plr=plrs.LocalPlayer local gui=plr:WaitForChild("PlayerGui") local function getRoot(char) if not char then return nil end local root=char:FindFirstChild("HumanoidRootPart") if root then return root end return char:FindFirstChild("Torso") end local function disCol(char,state) if not char then return end for _,p in pairs(char:GetChildren())do if p:IsA("BasePart")then p.CanCollide=state end end end local function getCharType(char) if not char then return"Unknown"end if char:FindFirstChild("HumanoidRootPart")and char:FindFirstChild("UpperTorso")then return"R15" elseif char:FindFirstChild("Torso")then return"R6" end return"Unknown" end local function setupUI() if gui:FindFirstChild("flingGui")then gui.flingGui:Destroy() end local sc=Instance.new("ScreenGui") sc.Name="flingGui" sc.ResetOnSpawn=false sc.Parent=gui local fr=Instance.new("Frame") fr.Name="MainFrame" fr.BackgroundColor3=Color3.fromRGB(5,10,5) fr.BorderSizePixel=0 fr.Size=UDim2.new(0,190,0,195) fr.Position=UDim2.new(0,20,0,20) fr.Active=true fr.Draggable=true fr.Parent=sc local frStr=Instance.new("UIStroke") frStr.Color=Color3.fromRGB(0,255,70) frStr.Thickness=1.5 frStr.Parent=fr local tBtn=Instance.new("TextButton") tBtn.Name="MainButton" tBtn.Size=UDim2.new(1,-10,0,30) tBtn.Position=UDim2.new(0,5,0,5) tBtn.BorderSizePixel=0 tBtn.Font=Enum.Font.Code tBtn.TextSize=13 tBtn.TextColor3=Color3.fromRGB(0,255,70) tBtn.AutoButtonColor=false tBtn.Parent=fr local fBox=Instance.new("TextBox") fBox.Name="FlingPower" fBox.Size=UDim2.new(1,-10,0,30) fBox.Position=UDim2.new(0,5,0,45) fBox.BackgroundColor3=Color3.fromRGB(10,20,10) fBox.BorderSizePixel=0 fBox.Font=Enum.Font.Code fBox.TextSize=13 fBox.TextColor3=Color3.fromRGB(0,255,70) fBox.Text="1000000" fBox.PlaceholderText="Fling Power" fBox.ClearTextOnFocus=false fBox.Parent=fr local bStr=Instance.new("UIStroke") bStr.Color=Color3.fromRGB(0,255,70) bStr.Thickness=1 bStr.Parent=fBox local function crAx(name,xOff,pl) local bx=Instance.new("TextBox") bx.Name=name bx.Size=UDim2.new(0,56,0,25) bx.Position=UDim2.new(0,xOff,0,80) bx.BackgroundColor3=Color3.fromRGB(10,20,10) bx.BorderSizePixel=0 bx.Font=Enum.Font.Code bx.TextSize=12 bx.TextColor3=Color3.fromRGB(0,255,70) bx.Text=pl=="Y"and"1"or"0" bx.PlaceholderText=pl bx.ClearTextOnFocus=false bx.Parent=fr local st=Instance.new("UIStroke") st.Color=Color3.fromRGB(0,255,70) st.Thickness=1 st.Parent=bx return bx end local xBox=crAx("AxisX",5,"X") local yBox=crAx("AxisY",67,"Y") local zBox=crAx("AxisZ",129,"Z") local pBtn=Instance.new("TextButton") pBtn.Name="PunchButton" pBtn.Size=UDim2.new(1,-10,0,25) pBtn.Position=UDim2.new(0,5,0,115) pBtn.BorderSizePixel=0 pBtn.Font=Enum.Font.Code pBtn.TextSize=12 pBtn.TextColor3=Color3.fromRGB(0,255,70) pBtn.AutoButtonColor=false pBtn.BackgroundColor3=Color3.fromRGB(10,20,10) pBtn.Parent=fr local pStr=Instance.new("UIStroke") pStr.Color=Color3.fromRGB(0,255,70) pStr.Thickness=1 pStr.Parent=pBtn local nBtn=Instance.new("TextButton") nBtn.Name="NoclipButton" nBtn.Size=UDim2.new(1,-10,0,25) nBtn.Position=UDim2.new(0,5,0,145) nBtn.BorderSizePixel=0 nBtn.Font=Enum.Font.Code nBtn.TextSize=12 nBtn.TextColor3=Color3.fromRGB(0,255,70) nBtn.AutoButtonColor=false nBtn.BackgroundColor3=Color3.fromRGB(10,20,10) nBtn.Parent=fr local nStr=Instance.new("UIStroke") nStr.Color=Color3.fromRGB(0,255,70) nStr.Thickness=1 nStr.Parent=nBtn local wf=false local wfCon=nil local vis=nil local curTrk=nil local pMod=false local nMod=false local anms={ R6="rbxassetid://204062532", R15=94235564114426 } local cOn=Color3.fromRGB(0,40,10) local cOff=Color3.fromRGB(15,5,5) local tOn=Color3.fromRGB(50,255,100) local tOff=Color3.fromRGB(255,50,50) local function getPow() local p=tonumber(fBox.Text) if not p or p<1 then return 1 else return p end end local function getVel() local p=getPow() local x=tonumber(xBox.Text)or 0 local y=tonumber(yBox.Text)or 0 local z=tonumber(zBox.Text)or 0 local dir=Vector3.new(x,y,z) if dir.Magnitude>0 then dir=dir.Unit end return dir*p end local function twProp(inst,prop,targ,dur) ts:Create(inst,TweenInfo.new(dur or 0.2,Enum.EasingStyle.Linear,Enum.EasingDirection.Out),{[prop]=targ}):Play() end local function updVis(state) if state then local char=plr.Character local root=getRoot(char) if root and not char:FindFirstChild("MatrixHitboxVisual")then vis=Instance.new("SelectionBox") vis.Name="MatrixHitboxVisual" vis.Adornee=root vis.Color3=Color3.fromRGB(0,255,70) vis.LineThickness=0.05 vis.SurfaceColor3=Color3.fromRGB(0,255,70) vis.SurfaceTransparency=0.85 vis.Parent=char end else if vis then vis:Destroy()vis=nil end local char=plr.Character if char then local old=char:FindFirstChild("MatrixHitboxVisual") if old then old:Destroy()end end end end local function updBtnVis() if wf then tBtn.Text="[ SYSTEM: ACTIVE ]" twProp(tBtn,"BackgroundColor3",cOn) twProp(tBtn,"TextColor3",tOn) frStr.Color=Color3.fromRGB(0,255,70) updVis(true) else tBtn.Text="[ SYSTEM: OFFLINE ]" twProp(tBtn,"BackgroundColor3",cOff) twProp(tBtn,"TextColor3",tOff) frStr.Color=Color3.fromRGB(120,0,0) updVis(false) end end local function updPunch() if pMod then pBtn.Text="[ PUNCH MODE: ON ]" pBtn.TextColor3=Color3.fromRGB(50,255,100) pBtn.BackgroundColor3=Color3.fromRGB(0,40,10) pStr.Color=Color3.fromRGB(0,255,70) else pBtn.Text="[ PUNCH MODE: OFF ]" pBtn.TextColor3=Color3.fromRGB(255,50,50) pBtn.BackgroundColor3=Color3.fromRGB(15,5,5) pStr.Color=Color3.fromRGB(120,0,0) end end local function updNoclip() if nMod then nBtn.Text="[ NOCLIP MODE: ON ]" nBtn.TextColor3=Color3.fromRGB(50,255,100) nBtn.BackgroundColor3=Color3.fromRGB(0,40,10) nStr.Color=Color3.fromRGB(0,255,70) else nBtn.Text="[ NOCLIP MODE: OFF ]" nBtn.TextColor3=Color3.fromRGB(255,50,50) nBtn.BackgroundColor3=Color3.fromRGB(15,5,5) nStr.Color=Color3.fromRGB(120,0,0) end end tBtn.MouseEnter:Connect(function() if wf then twProp(tBtn,"BackgroundColor3",Color3.fromRGB(0,70,15)) twProp(tBtn,"TextColor3",Color3.fromRGB(150,255,180)) else twProp(tBtn,"BackgroundColor3",Color3.fromRGB(30,10,10)) twProp(tBtn,"TextColor3",Color3.fromRGB(255,120,120)) end end) tBtn.MouseLeave:Connect(function()updBtnVis()end) pBtn.MouseEnter:Connect(function() if pMod then pBtn.BackgroundColor3=Color3.fromRGB(0,70,15) pBtn.TextColor3=Color3.fromRGB(150,255,180) else pBtn.BackgroundColor3=Color3.fromRGB(30,10,10) pBtn.TextColor3=Color3.fromRGB(255,120,120) end end) pBtn.MouseLeave:Connect(function()updPunch()end) nBtn.MouseEnter:Connect(function() if nMod then nBtn.BackgroundColor3=Color3.fromRGB(0,70,15) nBtn.TextColor3=Color3.fromRGB(150,255,180) else nBtn.BackgroundColor3=Color3.fromRGB(30,10,10) nBtn.TextColor3=Color3.fromRGB(255,120,120) end end) nBtn.MouseLeave:Connect(function()updNoclip()end) local function playAnm() local char=plr.Character if not char then return end local hum=char:FindFirstChildOfClass("Humanoid") if not hum then return end local cType=getCharType(char) local aID=anms[cType]or anms.R6 local anim=hum:FindFirstChildOfClass("Animator")or Instance.new("Animator",hum) if curTrk then curTrk:Stop() curTrk:Destroy() curTrk=nil end if cType=="R15"then local ok,res=pcall(function()return game:GetObjects("rbxassetid://"..tostring(aID))end) if ok and res and #res>0 then local a=res[1] curTrk=anim:LoadAnimation(a:IsA("Animation")and a or Instance.new("Animation",{AnimationId="rbxassetid://"..tostring(aID)})) else local a=Instance.new("Animation") a.AnimationId="rbxassetid://"..tostring(aID) curTrk=anim:LoadAnimation(a) end else local a=Instance.new("Animation") a.AnimationId=aID curTrk=anim:LoadAnimation(a) end if curTrk then curTrk.Looped=true curTrk:Play() end end local function stopAnm() if curTrk then curTrk:Stop() curTrk:Destroy() curTrk=nil end end local function startWF() if wfCon then return end wf=true if pMod then playAnm()end local ml=0.1 wfCon=rs.Heartbeat:Connect(function() local char=plr.Character local root=getRoot(char) if not(char and char.Parent and root and root.Parent)then return end if not char:FindFirstChild("MatrixHitboxVisual")and wf then updVis(true) end local lv=root.AssemblyLinearVelocity local fv=getVel() root.AssemblyLinearVelocity=fv rs.RenderStepped:Wait() if char and char.Parent and root and root.Parent then root.AssemblyLinearVelocity=lv end rs.Stepped:Wait() if char and char.Parent and root and root.Parent then root.AssemblyLinearVelocity=lv+Vector3.new(0,ml,0) ml=ml*-1 end end) updBtnVis() end local function stopWF() if wfCon then wfCon:Disconnect() wfCon=nil end wf=false stopAnm() updBtnVis() end local function toggleWF() if wf then stopWF()else startWF()end end local function togglePunch() pMod=not pMod updPunch() if wf then stopWF()startWF()end end local function toggleNoclip() nMod=not nMod updNoclip() local char=plr.Character if char and not nMod then disCol(char,true) end end rs.Stepped:Connect(function() if nMod and plr.Character then disCol(plr.Character,false) end end) local function onBoxLost(box) local val=tonumber(box.Text) if not val then box.Text=box==fBox and"1"or"0"end if wf then stopWF()startWF()end end fBox.FocusLost:Connect(function()onBoxLost(fBox)end) xBox.FocusLost:Connect(function()onBoxLost(xBox)end) yBox.FocusLost:Connect(function()onBoxLost(yBox)end) zBox.FocusLost:Connect(function()onBoxLost(zBox)end) plr.CharacterAdded:Connect(function(char) stopWF() if nMod then toggleNoclip()end end) updBtnVis() updPunch() updNoclip() tBtn.MouseButton1Click:Connect(toggleWF) pBtn.MouseButton1Click:Connect(togglePunch) nBtn.MouseButton1Click:Connect(toggleNoclip) end setupUI()