Facebook
From Reliable Macaque, 4 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 219
  1. warn([[
  2. GameSense Free | December 8, 2018
  3. GameSense Premium, a private cheat, is now in the works.
  4.  
  5. Discord: Avexus#4561
  6. Don't contact me about this script, it's been abandoned.
  7. I will consider making a newer version if there's still a demand for cheats anymore.
  8. ]])
  9.  
  10. -- If you have any intentions of reading this code, I advise you don't... If you do, bring eye bleach, because I assure you it's the worst programming you'll ever see. Even Ubisoft can optimize better than this. I have improved *immensely* since I made this.
  11.  
  12. local UIS = game:GetService('UserInputService')
  13. local RS = game:GetService('RunService')
  14. local Players = game:GetService('Players')
  15. local StarterGui = game:GetService('StarterGui')
  16. local Player = Players.LocalPlayer
  17. local Studio = RS:IsStudio()
  18. local PlayerGui = RS:IsStudio() and Player:WaitForChild('PlayerGui') or game.CoreGui
  19. local Mouse = Player:GetMouse()
  20. local old_icon = Mouse.Icon
  21. local Camera = workspace.CurrentCamera
  22. targetpart = 'Head' -- Don't change this.
  23. -- It can be changed with the targetpart_change hotkey ingame.
  24. local target
  25. local target_old
  26. local alert = false
  27. local lockedon = false
  28. local settingkey = false
  29. local upvals = nil
  30. local val = 1
  31. local windows = {}
  32. local function hb() RS.Heartbeat:wait() end
  33.  
  34. local version = 1.25
  35. local Spawn = nil or game.PlaceId == 292439477 and workspace:WaitForChild('Lobby',2):WaitForChild('Spawn1',2)
  36. local spawned = false
  37.  
  38. script.Name = 'GameSense!'
  39. Mouse.TargetFilter = Camera
  40.  
  41. -- hotkey
  42. toggle_aim = Enum.UserInputType.MouseButton2
  43. toggle_aimbot = Enum.KeyCode.LeftAlt
  44. toggle_trigger = Enum.KeyCode.RightAlt
  45. toggle_esp = Enum.KeyCode.End
  46. toggle_gui = Enum.KeyCode.F6
  47. toggle_bottompos = Enum.KeyCode.F7
  48. toggle_performance = Enum.KeyCode.F8
  49. toggle_bones = Enum.KeyCode.Delete
  50. toggle_chams = Enum.KeyCode.F3
  51. toggle_tracers = Enum.KeyCode.F2
  52. toggle_boxes = Enum.KeyCode.F4
  53. toggle_font = Enum.KeyCode.F1
  54. ffatoggle = Enum.KeyCode.Home
  55. targetpart_change = Enum.KeyCode.BackSlash
  56. priority_toggle = Enum.KeyCode.Insert
  57. sethotkey = Enum.KeyCode.RightControl
  58. -- aim fov
  59. fov_increase = Enum.KeyCode.KeypadPlus
  60. fov_decrease = Enum.KeyCode.KeypadMinus
  61. -- aim sens (how smooth your crosshair will move)
  62. sens_increase = Enum.KeyCode.RightBracket
  63. sens_decrease = Enum.KeyCode.LeftBracket
  64.  
  65. -- parts
  66. parts = {
  67.         'Head';
  68.         'Torso'
  69. }
  70.  
  71. fonts = {
  72.         Enum.Font.SourceSansBold,
  73.         Enum.Font.Cartoon,
  74.         Enum.Font.Arcade,
  75.         Enum.Font.SciFi,
  76.         Enum.Font.Fantasy,
  77.         Enum.Font.Code,
  78.         Enum.Font.Highway,
  79.         Enum.Font.Bodoni
  80. }
  81.  
  82. textSet = false
  83.  
  84. currentfont = 1
  85. ffa = false
  86. hidden = false
  87. performancemode = false
  88. -- aim
  89. fov = 5
  90. sens = .25
  91. drop = .45
  92. aim_toggled = false
  93. bottompos = true
  94. aim_priority = 2
  95. -- [2] FOV or [1] Distance
  96. aimingcolor = Color3.fromRGB(0,165,255)
  97. aimbot_toggled = true
  98. aim_line = true
  99. locksoundid = 538769304
  100. mouseiconid =  18671553
  101.  
  102. -- trigger
  103. trigger_toggled = false
  104. trigger_delay = 1/20
  105.  
  106. -- esp
  107. esp_toggled = true
  108. esp_bones = false
  109. esp_chams = true
  110. esp_tracers = true
  111. -- item_esp (coming soon)
  112. linesize = 1
  113. showdists = true
  114. textsize = 14
  115. textoffset = 20
  116. visiblecolor = Color3.fromRGB(38,255,99)
  117. hiddencolor = Color3.fromRGB(255,37,40)
  118. headboxsize = 4
  119. headboxaimsize = 6
  120. headboxshape = 'diamond'
  121. -- rectangle or diamond
  122.  
  123. -- box esp
  124. bounding_box = true
  125. -- box_pointsize = 0 [UNUSED]
  126. box_line_size = 1
  127. -- box_line_size_visible = 2 [UNUSED]
  128.  
  129. local GUI = Instance.new('ScreenGui',PlayerGui)
  130. GUI.Name = 'GameSense '..version
  131. GUI.ResetOnSpawn = false
  132.  
  133. ESP = Instance.new('Folder',GUI)
  134. ESP.Name = 'ESP'
  135. local Bottom = Instance.new('Frame',ESP)
  136. Bottom.Name = 'Bottom'
  137. Bottom.BackgroundTransparency = 1
  138. Bottom.Size = UDim2.new(0,1,0,1)
  139. Bottom.Position = UDim2.new(.5,0,1,1)
  140.  
  141. local Status = Instance.new('TextLabel',GUI)
  142. Status.Name = 'Status'
  143. Status.BackgroundTransparency = 1
  144. Status.Size = UDim2.new(0,500,0,50)
  145. Status.Position = UDim2.new(.5,-250,.85,0)
  146. Status.TextSize = 24
  147. Status.Font = Enum.Font.SourceSansBold
  148. Status.TextColor3 = Color3.new(1,1,1)
  149. Status.TextStrokeColor3 = Color3.new(0,0,0)
  150. Status.TextStrokeTransparency = .6
  151. Status.Text = 'On Standby'
  152. Status.ZIndex = 50
  153.  
  154. local Credits = Status:Clone()
  155. Credits.Name = 'Credits'
  156. Credits.Parent = GUI
  157. Credits.Position = UDim2.new(.5,-250,.85,-20)
  158. Credits.TextSize = 16
  159. Credits.Text = 'GameSense '..version..' by Avexus!'
  160.  
  161. local FovGui = Instance.new('ImageLabel',GUI)
  162. FovGui.Name = 'FovGui'
  163. FovGui.Image = 'rbxassetid://324848180'
  164. FovGui.Size = UDim2.new(0,(Camera.ViewportSize.X/(90/fov))*2,0,(Camera.ViewportSize.X/(90/fov))*2)
  165. FovGui.Position = UDim2.new(0.5,-FovGui.AbsoluteSize.X/2,0.5,-FovGui.AbsoluteSize.Y/2)
  166. FovGui.BackgroundTransparency = 1
  167. FovGui.ImageTransparency = .9
  168. FovGui.ImageColor3 = Color3.new(1,0,0)
  169.  
  170. local Indicator = Instance.new('TextLabel',GUI)
  171. Indicator.Name = 'Indicator'
  172. Indicator.Font = Enum.Font.SourceSans
  173. Indicator.TextSize = 14
  174. Indicator.TextXAlignment = Enum.TextXAlignment.Center
  175. Indicator.TextYAlignment = Enum.TextYAlignment.Center
  176. Indicator.TextStrokeTransparency = .75
  177. Indicator.Text = aim_priority>1 and 'FOV: '..fov or 'Distance'
  178.  
  179. local SensAdjust = Instance.new('TextBox',GUI)
  180. SensAdjust.Name = 'SensAdjust'
  181. SensAdjust.Font = Enum.Font.SourceSans
  182. SensAdjust.BackgroundTransparency = .75
  183. SensAdjust.BackgroundColor3 = Color3.new(0,0,0)
  184. SensAdjust.BorderColor3 = Color3.new(1,1,1)
  185. SensAdjust.Size = UDim2.new(0,50,0,20)
  186. SensAdjust.TextStrokeTransparency = .6
  187. SensAdjust.TextColor3 = Color3.new(1,1,1)
  188. SensAdjust.TextSize = 14
  189. SensAdjust.PlaceholderText = 'Sens'
  190. SensAdjust.Text = tonumber(sens)
  191. SensAdjust.Position = Credits.Position + UDim2.new(0,250,0,75)
  192.  
  193. local SensLabel = Instance.new('TextLabel',SensAdjust)
  194. SensLabel.Name = 'SensLabel'
  195. SensLabel.Font = Enum.Font.SourceSans
  196. SensLabel.Size = UDim2.new(1,0,1,0)
  197. SensLabel.BackgroundTransparency = 1
  198. SensLabel.TextSize = 14
  199. SensLabel.TextColor3 = Color3.new(1,1,1)
  200. SensLabel.TextStrokeColor3 = Color3.new(0,0,0)
  201. SensLabel.TextStrokeTransparency = .6
  202. SensLabel.Text = 'Sens:'
  203. SensLabel.Position = UDim2.new(-1,0,0,0)
  204. SensLabel.TextXAlignment = Enum.TextXAlignment.Left
  205.  
  206. local FovAdjust = SensAdjust:Clone()
  207. FovAdjust.Parent = GUI
  208. FovAdjust.PlaceholderText = 'FOV'
  209. FovAdjust.Name = 'FovAdjust'
  210. FovAdjust.Text = tonumber(fov)
  211. FovAdjust.Position = SensAdjust.Position + UDim2.new(0,0,0,20)
  212. FovAdjust.SensLabel.Name = 'FovLabel'
  213. FovAdjust.FovLabel.Text = 'Fov:'
  214.  
  215. local DropAdjust = SensAdjust:Clone()
  216. DropAdjust.Parent = GUI
  217. DropAdjust.PlaceholderText = 'Drop'
  218. DropAdjust.Name = 'DropAdjust'
  219. DropAdjust.Text = tonumber(drop)
  220. DropAdjust.Position = SensAdjust.Position + UDim2.new(0,0,0,40)
  221. DropAdjust.SensLabel.Name = 'DropLabel'
  222. DropAdjust.DropLabel.Text = 'Drop:'
  223.  
  224. local KeysList = Instance.new('TextLabel',GUI)
  225. KeysList.Name = 'KeysList'
  226. KeysList.Font = Enum.Font.SourceSans
  227. KeysList.TextStrokeTransparency = .6
  228. KeysList.TextSize = 14
  229. KeysList.TextColor3 = Color3.new(1,1,1)
  230. KeysList.Size = UDim2.new(0,0,1,0)
  231. KeysList.Position = UDim2.new(0,5,0,-280)
  232. KeysList.BackgroundTransparency = 1
  233. KeysList.Active = false
  234. KeysList.TextXAlignment = Enum.TextXAlignment.Left
  235. KeysList.TextYAlignment = Enum.TextYAlignment.Bottom
  236. KeysList.Text = 'AimBot Toggle: '..toggle_aimbot.Name..'\nAim Toggle: '..toggle_aim.Name..'\nAim Part Toggle: '..targetpart_change.Name..'\nPriority Toggle: '..priority_toggle.Name
  237. ..'\nESP Toggle: '..toggle_esp.Name..'\nBones Toggle: '..toggle_bones.Name..'\nChams Toggle: '..toggle_chams.Name..'\nBoxes Toggle: '..toggle_boxes.Name..'\nFOV Increase: '..fov_increase.Name..'\nFOV Decrease: '..fov_decrease.Name..'\nSens Increase: '
  238. ..sens_increase.Name..'\nSens Decrease: '..sens_decrease.Name..'\nTrigger Toggle: '..toggle_trigger.Name..'\nFFA Toggle: '..ffatoggle.Name..'\nHide Cheats: '..toggle_gui.Name
  239. ..'\nChange ESP Origin: '..toggle_bottompos.Name..'\nPerformance Mode: '..toggle_performance.Name..'\nChange Font: '..toggle_font.Name
  240.  
  241. local n = 0
  242.  
  243. spawn(function()
  244.         while Status do
  245.                 Indicator.TextColor3 = Color3.fromHSV(n,.5,1)
  246.                 FovGui.ImageColor3 = Indicator.TextColor3
  247.                 if not textSet then
  248.                 if aim_toggled and target then
  249.                         Status.TextColor3 = aimingcolor
  250.                         Status.Text = ('Aiming at '..target.Name)
  251.                 else
  252.                         Status.TextColor3 = Color3.fromHSV(n,.5,1)
  253.                         Status.Text = 'On Standby'
  254.                 end
  255.                 end
  256.                 n = (n+.005)%1
  257.                 hb()
  258.         end
  259. end)
  260.  
  261. SensAdjust.InputEnded:Connect(function() if SensAdjust.Text~='' then sens = tonumber(SensAdjust.Text)>0 and tonumber(SensAdjust.Text) or sens end end)
  262. FovAdjust.InputEnded:Connect(function() if FovAdjust.Text~='' then fov = tonumber(FovAdjust.Text)>0 and tonumber(FovAdjust.Text) or fov
  263. FovGui:TweenSize(UDim2.new(0,(Camera.ViewportSize.X/(90/fov))*2,0,(Camera.ViewportSize.X/(90/fov))*2),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,.1,true) end end)
  264. DropAdjust.InputEnded:Connect(function() if DropAdjust.Text~='' then drop = tonumber(DropAdjust.Text)>=0 and tonumber(DropAdjust.Text) or drop end end)
  265.  
  266. local function distfromspawn(x)
  267.         if Spawn then
  268.                 return x:DistanceFromCharacter(Spawn.Position)
  269.         else
  270.                 return 201
  271.         end
  272. end
  273.  
  274. local function setText(text)
  275.         spawn(function()
  276.         textSet = true
  277.         Status.Text = text
  278.         Status.TextColor3 = Color3.new(1,1,1)
  279.         wait(#text/4)
  280.         textSet = false
  281.         end)
  282. end
  283.  
  284. local function playsound(id)
  285.         local sound = Instance.new('Sound',Camera)
  286.         sound.SoundId = 'rbxassetid://'..id
  287.         sound.Volume = 3
  288.         sound:Play()
  289.         game:GetService('Debris'):AddItem(sound,5)
  290. end
  291.  
  292. playsound(1168009121)
  293. Mouse.Icon = 'rbxassetid://'..mouseiconid
  294.  
  295. local function Notification(...)
  296.         playsound(140910211)
  297.         StarterGui:SetCore('SendNotification',...)
  298. end
  299.  
  300. local function DrawLine(Folder,P1,P2,Thickness,Color,LineTransparency,BorderThickness,BorderColor)
  301.         -- Declare variables
  302.         local Point1,Point2 = P1.Position,P2.Position
  303.         if Point1 and Point2 then
  304.         local X,Y = Camera.ViewportSize.X, Camera.ViewportSize.Y
  305.         local X1,X2 = (X * Point1.X.Scale + Point1.X.Offset + P1.Size.X.Offset/2), (X * Point2.X.Scale + Point2.X.Offset + P2.Size.X.Offset/2)
  306.         local Y1,Y2 = (Y * Point1.Y.Scale + Point1.Y.Offset + P1.Size.Y.Offset/2), (Y * Point2.Y.Scale + Point2.Y.Offset + P2.Size.Y.Offset/2)
  307.         local MidX,MidY = (X1+X2)/2, (Y1+Y2)/2
  308.         -- Set defaults to prevent errors
  309.         Thickness = Thickness or 1
  310.         Color = Color or Color3.new(1,1,1)
  311.         LineTransparency =  LineTransparency or 0
  312.         BorderThickness = BorderThickness or 0
  313.         BorderColor = BorderColor or Color3.new(0,0,0)
  314.         -- Draw the line
  315.         local Line = Folder:FindFirstChild(P1.Name..'-'..P2.Name) or Instance.new('Frame',Folder)
  316.         Line.Visible = false
  317.         Line.BackgroundTransparency = LineTransparency
  318.         Line.BorderSizePixel = BorderThickness
  319.         Line.BorderColor3 = BorderColor
  320.         Line.Size = UDim2.new(0,(Vector2.new(X1,Y1) - Vector2.new(X2,Y2)).magnitude-1,0,Thickness)
  321.         Line.Position = UDim2.new(0,MidX-Line.AbsoluteSize.X/2,0,MidY-Line.AbsoluteSize.Y)
  322.         Line.BackgroundColor3 = Color
  323.         Line.Rotation = math.deg(math.atan2((Y2-Y1),(X2-X1)))
  324.         Line.Name = P1.Name..'-'..P2.Name
  325.         Line.Visible = true
  326.         return Line
  327.         else
  328.                 return nil
  329.         end
  330. end
  331.  
  332. local function GetNearest(Mode)
  333.         local lowest,nearest,gui = math.huge,nil,nil
  334.         if Mode==1 then
  335.         for _,plr in next,Players:GetPlayers() do
  336.                 if plr.Name~=Player.Name and plr.Character~=nil and plr.Character:FindFirstChild(targetpart) then
  337.                         local dist = Player:DistanceFromCharacter(plr.Character[targetpart].Position)
  338.                         local ray = Ray.new(Player.Character.Head.Position,(plr.Character[targetpart].Position-Player.Character.Head.Position).unit*5000)
  339.                         local part,point = workspace:FindPartOnRayWithIgnoreList(ray,{Camera,Player.Character,unpack(windows)})
  340.                         local Z = Camera:WorldToScreenPoint(plr.Character[targetpart].Position).Z
  341.                         if part and part:IsDescendantOf(plr.Character) and Z>0 and dist < lowest and (ffa or plr.TeamColor~=Player.TeamColor) then lowest = dist nearest = plr.Character end
  342.                 end
  343.         end
  344.         elseif Mode==2 then
  345.                 for _,plr in next,Players:GetPlayers() do
  346.                         if plr.Name~=Player.Name and plr.Character~=nil and plr.Character:FindFirstChild(targetpart) then
  347.                                 local pos = Camera:WorldToScreenPoint(plr.Character[targetpart].Position)
  348.                                 local ray = Ray.new(Player.Character[targetpart].Position,(plr.Character[targetpart].Position-Player.Character[targetpart].Position).unit*2048)
  349.                                 local part,point = workspace:FindPartOnRayWithIgnoreList(ray,{Camera,Player.Character,unpack(windows)})
  350.                                 local dist = (Vector2.new(Mouse.X,Mouse.Y)-Vector2.new(pos.X,pos.Y)).magnitude
  351.                                 if part and part:IsDescendantOf(plr.Character) and pos.Z>0 and dist <= Camera.ViewportSize.X/(90/fov) and dist < lowest and (ffa or plr.TeamColor~=Player.TeamColor) then lowest = dist nearest = plr.Character end
  352.                         end
  353.                 end
  354.         end
  355.         return nearest
  356. end
  357.        
  358. Mouse.Move:Connect(function()
  359.         cursor = ESP:FindFirstChild('Cursor') or Instance.new('Frame',ESP)
  360.         cursor.Name = 'Cursor'
  361.         cursor.BackgroundTransparency = 1
  362.         cursor.Size = UDim2.new(0,1,0,1)
  363.         cursor.Position = UDim2.new(0,Mouse.X,0,Mouse.Y)
  364. end)
  365.  
  366. UIS.InputBegan:Connect(function(Input)
  367.         if Input.KeyCode == toggle_aim or Input.UserInputType == toggle_aim then
  368.                 aim_toggled = true
  369.                 warn('GS: aim toggled',aim_toggled and 'on' or 'off')
  370.                 alert = true
  371.                 while aim_toggled and aimbot_toggled do
  372.                         target = GetNearest(aim_priority)
  373.                         if target then
  374.                                 local dist = Player:DistanceFromCharacter(target[targetpart].Position)
  375.                                 local headpos = Camera:WorldToScreenPoint(target[targetpart].Position+Vector3.new(0,dist/(100/drop),0))
  376.                                 local moveto = Vector2.new((headpos.X-Mouse.X)*sens,(headpos.Y-Mouse.Y)*sens)
  377.                                 aimpos = GUI:FindFirstChild('AimPos') or Instance.new('Frame',GUI)
  378.                                 if not GUI:FindFirstChild('AimPos') then
  379.                                 aimpos.Name = 'AimPos'
  380.                                 aimpos.BorderSizePixel = 1
  381.                                 aimpos.BorderColor3 = Color3.new(0,0,0)
  382.                                 aimpos.BackgroundTransparency = 0
  383.                                 aimpos.BackgroundColor3 = Color3.new(1,1,1)
  384.                                 aimpos.Rotation = 45
  385.                                 aimpos.ZIndex = 4
  386.                                 aimpos.Size = UDim2.new(0,3,0,3)
  387.                                 end
  388.                                 aimpos.Position = UDim2.new(0,headpos.X-aimpos.AbsoluteSize.X/2,0,headpos.Y-aimpos.AbsoluteSize.Y/2)
  389.                                 aimpos.Visible = true
  390.                                 mousemoverel(moveto.X,moveto.Y)
  391.                                 if alert or target~=target_old then
  392.                                         playsound(locksoundid)
  393.                                         print('GS: locked onto',target.Name)
  394.                                         lockedon = true
  395.                                         alert = false
  396.                                 end
  397.                         end
  398.                         RS.Heartbeat:wait()
  399.                         target_old = target
  400.                         if aimpos then
  401.                                 aimpos.Visible = false
  402.                         end
  403.                 end
  404.                 lockedon = false
  405.         elseif Input.KeyCode == toggle_trigger then
  406.                 trigger_toggled = not trigger_toggled
  407.                 setText('Toggled TriggerBot '..(trigger_toggled and 'On' or 'Off'))
  408.                 Notification({Title='TriggerBot';Text='TriggerBot was toggled '..(trigger_toggled and 'On' or 'Off');Duration=2;})
  409.                 warn('trigger toggled',trigger_toggled and 'on' or 'off')
  410.                 local Box = Instance.new('SelectionBox',PlayerGui)
  411.                 Box.Color3 = Color3.new(1,0,0)
  412.                 Box.LineThickness = .05
  413.                 Box.Adornee = nil
  414.                 if trigger_delay>0 then wait(trigger_delay) end
  415.                 while trigger_toggled do
  416.                 local Target = Mouse.Target
  417.                 local plr = Players:FindFirstChild(Target.Parent.Name)
  418.                 if Target and Target.Parent and plr~=nil and plr~=Player and ffa or plr~=nil and plr.TeamColor~=Player.TeamColor then
  419.                         Box.Adornee = Mouse.Target
  420.                         mouse1press()
  421.                         wait()
  422.                         mouse1release()
  423.                 end
  424.                 RS.Heartbeat:wait()
  425.                 end
  426.                 Box:Destroy()
  427.         elseif Input.KeyCode == toggle_esp then
  428.                 esp_toggled = not esp_toggled
  429.                 Notification({Title='ESP';Text='ESP was toggled '..(esp_toggled and 'On' or 'Off');Duration=2;})
  430.                 setText('Toggled ESP '..(esp_toggled and 'On' or 'Off'))
  431.         elseif Input.KeyCode == toggle_aimbot then
  432.                 aimbot_toggled = not aimbot_toggled    
  433.                 Notification({Title='AimBot';Text='AimBot was toggled '..(aimbot_toggled and 'On' or 'Off');Duration=2;})
  434.                 setText('Toggled AimBot '..(aimbot_toggled and 'On' or 'Off'))
  435.         elseif Input.KeyCode == fov_increase then
  436.                 fov = fov + .5
  437.                 FovAdjust.Text = tonumber(fov)
  438.                 if FovGui.Visible then
  439.                         FovGui:TweenSize(UDim2.new(0,(Camera.ViewportSize.X/(90/fov))*2,0,(Camera.ViewportSize.X/(90/fov))*2),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,.1,true)
  440.                 end
  441.                 setText('Aim FOV: '..fov)
  442.         elseif Input.KeyCode == fov_decrease and fov>0 then
  443.                 fov = fov - .5
  444.                 FovAdjust.Text = tonumber(fov)
  445.                 if FovGui.Visible then
  446.                         FovGui:TweenSize(UDim2.new(0,(Camera.ViewportSize.X/(90/fov))*2,0,(Camera.ViewportSize.X/(90/fov))*2),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,.1,true)
  447.                 end
  448.                 setText('Aim FOV: '..fov)
  449.         elseif Input.KeyCode == sens_increase then
  450.                 sens = sens + .05
  451.                 SensAdjust.Text = tonumber(sens)
  452.                 setText('Sens: '..sens)
  453.         elseif Input.KeyCode == sens_decrease then
  454.                 sens = sens - .05
  455.                 SensAdjust.Text = tonumber(sens)
  456.                 setText('Sens: '..sens)
  457.         elseif Input.KeyCode == targetpart_change then
  458.                 val = val+1
  459.                 targetpart = val<=#parts and parts[val] or parts[1]
  460.                 if parts[1]==targetpart then val = 1 end
  461.                 Notification({Title='Target Part';Text='Target part set to '..targetpart;Duration=2;})
  462.                 setText('Target Part: '..targetpart)
  463.         elseif Input.KeyCode == ffatoggle then
  464.                 ffa = not ffa
  465.                 Notification({Title='FFA Mode';Text='FFA Mode is '..(ffa and 'Enabled' or 'Disabled');Duration=2;})
  466.                 setText('FFA Mode: '..(ffa and 'Enabled' or 'Disabled'))
  467.         elseif Input.KeyCode == priority_toggle then
  468.                 aim_priority = aim_priority+1>2 and 0 or 1
  469.                 aim_priority = aim_priority+1
  470.                 FovGui.Visible = aim_priority>1
  471.                 Notification({Title='Aim Priority';Text='Aim Priority: '..(aim_priority==1 and 'Distance' or 'FOV');Duration=2;})
  472.                 setText('Aim Priority: '..(aim_priority==1 and 'Distance' or 'FOV'))
  473.         elseif Input.KeyCode == toggle_bones then
  474.                 esp_bones = not esp_bones
  475.                 if not esp_bones then
  476.                 for _,v in next,ESP:GetDescendants() do
  477.                         if v:IsA('Frame') and v.Name:match('-') then
  478.                                 v:Destroy()
  479.                         end
  480.                 end
  481.                 end
  482.                 Notification({Title='ESP';Text='ESP Bones: '..(esp_bones and 'Enabled' or 'Disabled');Duration=2;})
  483.                 setText('Toggled ESP Bones '..(esp_bones and 'Enabled' or 'Disabled'))
  484.         elseif Input.KeyCode == toggle_gui then
  485.                 hidden = not hidden
  486.                 for _,gui in next,GUI:GetDescendants() do
  487.                         if gui:IsA('GuiObject') and not hidden and not gui.Visible then
  488.                                 gui.Visible = true
  489.                                 Mouse.Icon = 'rbxassetid://'..mouseiconid
  490.                         elseif gui:IsA('GuiObject') and gui.Visible then
  491.                                 gui.Visible = false
  492.                                 esp_toggled = false
  493.                                 Mouse.Icon = old_icon
  494.                         end
  495.                         end
  496.                 elseif Input.KeyCode == toggle_bottompos then
  497.                         bottompos = not bottompos
  498.                         if bottompos then
  499.                                 Bottom.Position = UDim2.new(.5,0,1,1)
  500.                         end
  501.                 elseif Input.KeyCode == toggle_performance then
  502.                         performancemode = not performancemode
  503.                         setText('Performance Mode '..(performancemode and 'Enabled' or 'Disabled'))
  504.                 elseif Input.KeyCode == toggle_chams then
  505.                         esp_chams = not esp_chams
  506.                         setText('Chams '..(esp_chams and 'Enabled' or 'Disabled'))
  507.                         Notification({Title='ESP';Text='Chams: '..(esp_chams and 'Enabled' or 'Disabled');Duration=2;})
  508.                 elseif Input.KeyCode == toggle_tracers then
  509.                         esp_tracers = not esp_tracers
  510.                         setText('Tracers '..(esp_chams and 'Enabled' or 'Disabled'))
  511.                         Notification({Title='ESP';Text='Tracers: '..(esp_tracers and 'Enabled' or 'Disabled');Duration=2;})
  512.                 elseif Input.KeyCode == toggle_boxes then
  513.                         bounding_box = not bounding_box
  514.                         setText('Bounding Boxes '..(bounding_box and 'Enabled' or 'Disabled'))
  515.                         Notification({Title='ESP';Text='Bounding Boxes: '..(bounding_box and 'Enabled' or 'Disabled');Duration=2;})
  516.                 elseif Input.KeyCode == toggle_font then
  517.                                 currentfont = (currentfont+1)>#fonts and 1 or currentfont+1
  518.                                 for _,v in next,GUI:GetDescendants() do
  519.                                         if v.Name~='KeysList' then
  520.                                         if v:IsA('TextLabel') or v:IsA('TextButton') then
  521.                                                 v.Font = fonts[currentfont]
  522.                                         end
  523.                                         end
  524.                                 end
  525.                 end
  526. end)
  527.  
  528. UIS.InputEnded:Connect(function(Input)
  529.         if Input.KeyCode == toggle_aim or Input.UserInputType == toggle_aim then
  530.                 aim_toggled = false
  531.         end
  532. end)
  533.  
  534. local function checkifspawned(x)
  535.         spawned = false
  536.         while not spawned and game.PlaceId==292439477 do
  537.                 spawned = distfromspawn(x)>200 and true or false
  538.                 wait(1/5)
  539.         end
  540.         spawned = true
  541. end
  542.  
  543. checkifspawned(Player)
  544. Player.CharacterAdded:Connect(function(c)
  545.         checkifspawned(Player)
  546.        
  547.         for _,v in next,ESP:GetDescendants() do
  548.                 if v:IsA('Frame') and v.Name:match('-') then
  549.                         v:Destroy()
  550.                 end
  551.         end
  552. end)
  553.  
  554. Notification({Title='GameSense '..version;Text='Cheat loaded successfully.';Icon='rbxassetid://2572157833';Duration=10;})
  555. wait(.5)
  556. Notification({Title='Main Coder';Text='AvexusDev';Duration=4;Icon='https://www.roblox.com/Thumbs/Avatar.ashx?x=100&y=100&username=AvexusDev'})
  557. wait(.5)
  558. Notification({Title='Thank you!';Text='If you like this script, please leave a vouch on my thread!';Duration=4;})
  559.  
  560. RS.RenderStepped:Connect(function()
  561.         if cursor then
  562.                 FovGui.Position = cursor.Position-UDim2.new(0,FovGui.AbsoluteSize.X/2,0,FovGui.AbsoluteSize.Y/2)
  563.                 Indicator.Position = cursor.Position+UDim2.new(0,0,0,40)
  564.         end
  565. end)
  566.  
  567. Mouse.Button1Down:Connect(function()
  568.         spawn(function()
  569.                 if FovGui.Visible then
  570.                         FovGui:TweenSize(UDim2.new(0,Camera.ViewportSize.X/(90/fov)*2.35,0,Camera.ViewportSize.X/(90/fov)*2.35),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,.1,true)
  571.                         wait(.1)
  572.                         FovGui:TweenSize(UDim2.new(0,Camera.ViewportSize.X/(90/fov)*2,0,Camera.ViewportSize.X/(90/fov)*2),Enum.EasingDirection.InOut,Enum.EasingStyle.Quad,.1,true)
  573.                 end
  574.         end)
  575. end)
  576.  
  577. while true do
  578.         Indicator.Text = (aim_priority>1 and 'FOV: '..fov or 'Distance') ..'\nSens: '..sens..(aim_toggled and '\nAiming' or '')
  579.         if not bottompos then Bottom.Position = cursor.Position end
  580.         if esp_toggled then
  581.         for _,v in next,ESP:children() do
  582.                 if v~=Bottom and not Players:FindFirstChild(v.Name) then
  583.                         v:Destroy()
  584.                 end
  585.         end
  586.         for _,v in next,Players:GetPlayers() do
  587.                 local Char = v.Character
  588.                 if Char and spawned and v~=Player and Char:FindFirstChild(targetpart) and distfromspawn(v)>100 then
  589.                         if ffa or v.TeamColor~=Player.TeamColor then
  590.                         local X = Camera:GetPartsObscuringTarget({Camera.CFrame.p,Char[targetpart].CFrame.p},{v.Character,Char,Camera,unpack(windows)})
  591.                         local Dist = Player:DistanceFromCharacter(Char:FindFirstChild(targetpart).Position)
  592.                         local Color = hiddencolor
  593.                         local Folder = ESP:FindFirstChild(v.Name) or Instance.new('Folder',ESP)
  594.                         Folder.Name = v.Name
  595.                         -- ESP
  596.                         local Head = Folder:FindFirstChild('Head') or Instance.new('Frame',Folder)
  597.                         if not Folder:FindFirstChild('Head') then
  598.                         Head.Name = 'Head'
  599.                         Head.BorderSizePixel = 1
  600.                         Head.BorderColor3 = Color3.new(0,0,0)
  601.                         Head.BackgroundTransparency = 0
  602.                         end
  603.                         Head.BackgroundColor3 = #X>0 and hiddencolor or #X==0 and visiblecolor
  604.                         Head.Rotation = headboxshape=='diamond' and 45 or 0
  605.                         Head.ZIndex = 3
  606.                         local HP = Folder:FindFirstChild('HP') or Instance.new('TextLabel',Folder)
  607.                         if not Folder:FindFirstChild('HP') then
  608.                         HP.Name = 'HP'
  609.                         HP.TextTransparency = Head.BackgroundTransparency-.4
  610.                         HP.Font = fonts[currentfont]
  611.                         HP.TextStrokeTransparency = .6
  612.                         HP.BackgroundTransparency = 1
  613.                         HP.TextSize = 14
  614.                         end
  615.                         HP.Text = showdists and Char.Name..'\n'..math.floor(Dist+.5) or Char.Name
  616.                         if aim_toggled and target==Char then
  617.                                 Head.Size = UDim2.new(0,headboxaimsize,0,headboxaimsize)
  618.                                 Head.BackgroundColor3 = aimingcolor
  619.                                 HP.Text = showdists and '['..Char.Name..']'..'\n'..math.floor(Dist+.5) or '['..Char.Name..']'
  620.                                 HP.TextSize = 16
  621.                         else
  622.                                 Head.Size = UDim2.new(0,headboxsize,0,headboxsize)
  623.                         end
  624.                         HP.TextColor3 = Head.BackgroundColor3
  625.                         local toScreen = Camera:WorldToScreenPoint(Char[targetpart].CFrame.p)
  626.                         if #X==0 then Color = visiblecolor end
  627.                         Head.Position = UDim2.new(0,toScreen.X-Head.Size.X.Offset/2,0,toScreen.Y-Head.Size.Y.Offset/2)
  628.                         HP.Position = Head.Position-UDim2.new(0,0,0,textoffset)
  629.                         if esp_tracers then
  630.                         local Line = DrawLine(Folder,ESP.Bottom,Head,linesize,Head.BackgroundColor3,.75,1,Color3.new(0,0,0))
  631.                                 Line.Visible = Head.Visible
  632.                         else
  633.                                 local imtired = Folder:FindFirstChild(ESP.Bottom.Name..'-'..Head.Name)
  634.                                 if imtired then
  635.                                         imtired:Destroy()
  636.                                 end
  637.                         end
  638.                         if toScreen.Z<=0 then Head.Visible = false else Head.Visible = true end
  639.                         HP.Visible = Head.Visible
  640.                         if Char:FindFirstChild('Humanoid') and Char.Humanoid.RigType==Enum.HumanoidRigType.R6 then
  641.                         local Neck = Folder:FindFirstChild('Neck') or Instance.new('Frame',Folder)
  642.                         Neck.Name = 'Neck'
  643.                         Neck.ZIndex = 2
  644.                         if Char['Torso']~=nil then
  645.                         local Pos = (Char.Torso.CFrame*CFrame.new(0,.8,0)).p
  646.                         local X,Y,Z = Camera:WorldToScreenPoint(Pos).X,Camera:WorldToScreenPoint(Pos).Y,Camera:WorldToScreenPoint(Pos).Z
  647.                         Neck.Position = UDim2.new(0,X,0,Y)
  648.                         Neck.BorderSizePixel = 0
  649.                         if Z<=0 then Neck.Visible = false else Neck.Visible = true end
  650.                         else
  651.                                 Neck.Visible = false
  652.                         end
  653.                         --
  654.                         local Pelvis = Folder:FindFirstChild('Pelvis') or Instance.new('Frame',Folder)
  655.                         Pelvis.Name = 'Pelvis'
  656.                         Pelvis.ZIndex = 2
  657.                         Pelvis.BorderSizePixel = 0
  658.                         if Char['Torso']~=nil then
  659.                         local Pos = (Char.Torso.CFrame*CFrame.new(0,-1,0)).p
  660.                         local X,Y,Z = Camera:WorldToScreenPoint(Pos).X,Camera:WorldToScreenPoint(Pos).Y,Camera:WorldToScreenPoint(Pos).Z
  661.                         Pelvis.Position = UDim2.new(0,X,0,Y)
  662.                         if Z<=0 then Pelvis.Visible = false else Pelvis.Visible = true end
  663.                         else
  664.                                 Pelvis.Visible = false
  665.                         end
  666.                         --
  667.                         local RightFoot = Folder:FindFirstChild('Right Foot') or Instance.new('Frame',Folder)
  668.                         RightFoot.Name = 'Right Foot'
  669.                         RightFoot.ZIndex = 2
  670.                         RightFoot.BorderSizePixel = 0
  671.                         if Char['Right Leg']~=nil then
  672.                         local Pos = (Char['Right Leg'].CFrame*CFrame.new(0,-1,0)).p
  673.                         local X,Y,Z = Camera:WorldToScreenPoint(Pos).X,Camera:WorldToScreenPoint(Pos).Y,Camera:WorldToScreenPoint(Pos).Z
  674.                         RightFoot.Position = UDim2.new(0,X,0,Y)
  675.                         if Z<=0 then RightFoot.Visible = false else RightFoot.Visible = true end
  676.                         else
  677.                                 RightFoot.Visible = false
  678.                         end
  679.                         --
  680.                         local LeftFoot = Folder:FindFirstChild('Left Foot') or Instance.new('Frame',Folder)
  681.                         LeftFoot.Name = 'Left Foot'
  682.                         if Char['Left Leg']~=nil then
  683.                         local Pos = (Char['Left Leg'].CFrame*CFrame.new(0,-1,0)).p
  684.                         local X,Y,Z = Camera:WorldToScreenPoint(Pos).X,Camera:WorldToScreenPoint(Pos).Y,Camera:WorldToScreenPoint(Pos).Z
  685.                         LeftFoot.Position = UDim2.new(0,X,0,Y)
  686.                         LeftFoot.BorderSizePixel = 0
  687.                         if Z<=0 then LeftFoot.Visible = false else LeftFoot.Visible = true end
  688.                         else
  689.                                 LeftFoot.Visible = false
  690.                         end
  691.                         --
  692.                         local RightHand = Folder:FindFirstChild('Right Hand') or Instance.new('Frame',Folder)
  693.                         RightHand.Name = 'Right Hand'
  694.                         RightHand.ZIndex = 2
  695.                         RightHand.BorderSizePixel = 0
  696.                         if Char['Right Arm']~=nil then
  697.                         local Pos = (Char['Right Arm'].CFrame*CFrame.new(0,-1,0)).p
  698.                         local X,Y,Z = Camera:WorldToScreenPoint(Pos).X,Camera:WorldToScreenPoint(Pos).Y,Camera:WorldToScreenPoint(Pos).Z
  699.                         RightHand.Position = UDim2.new(0,X,0,Y)
  700.                         if Z<=0 then RightHand.Visible = false else RightHand.Visible = true end
  701.                         else
  702.                                 RightHand.Visible = false
  703.                         end
  704.                         --
  705.                         local LeftHand = Folder:FindFirstChild('Left Hand') or Instance.new('Frame',Folder)
  706.                         LeftHand.Name = 'Left Hand'
  707.                         LeftHand.ZIndex = 2
  708.                         LeftHand.BorderSizePixel = 0
  709.                         if Char['Left Arm']~=nil then
  710.                         local Pos = (Char['Left Arm'].CFrame*CFrame.new(0,-1,0)).p
  711.                         local X,Y,Z = Camera:WorldToScreenPoint(Pos).X,Camera:WorldToScreenPoint(Pos).Y,Camera:WorldToScreenPoint(Pos).Z
  712.                         LeftHand.Position = UDim2.new(0,X,0,Y)
  713.                         if Z<=0 then LeftHand.Visible = false else LeftHand.Visible = true end
  714.                         else
  715.                                 LeftHand.Visible = false
  716.                         end
  717.                         -- draw joints
  718.                         if esp_bones then
  719.                         if Head.Visible then DrawLine(Folder,Head,Neck,1,Color3.new(1,1,1),Head.BackgroundTransparency) end
  720.                         if Neck.Visible then DrawLine(Folder,Neck,Pelvis,1,Color3.new(1,1,1),Head.BackgroundTransparency) end
  721.                         if Neck.Visible then DrawLine(Folder,Neck,RightHand,1,Color3.new(1,1,1),Head.BackgroundTransparency) end
  722.                         if Neck.Visible then DrawLine(Folder,Neck,LeftHand,1,Color3.new(1,1,1),Head.BackgroundTransparency) end
  723.                         if Pelvis.Visible then DrawLine(Folder,Pelvis,RightFoot,1,Color3.new(1,1,1),Head.BackgroundTransparency) end
  724.                         if Pelvis.Visible then DrawLine(Folder,Pelvis,LeftFoot,1,Color3.new(1,1,1),Head.BackgroundTransparency) end
  725.                         end
  726.                         end
  727.                        
  728.                         if esp_chams then
  729.                                 for _,Part in next,Char:children() do
  730.                                         if Part:IsA('BasePart') and Part.Name~='HumanoidRootPart' then
  731.                                                 local Adornment = Folder:FindFirstChild(Part.Name..'_Cham') or Instance.new('BoxHandleAdornment',Folder)
  732.                                                 if not Folder:FindFirstChild(Part.Name..'_Cham') then
  733.                                                 Adornment.Name = Part.Name..'_Cham'
  734.                                                 Adornment.Adornee = Part
  735.                                                 Adornment.AlwaysOnTop = true
  736.                                                 Adornment.Size = Part.Name=='Head' and Vector3.new(1,1,1) or Part.Size
  737.                                                 Adornment.ZIndex = 1
  738.                                                 end
  739.                                                 Adornment.Color3 = Head.BackgroundColor3
  740.                                         end
  741.                                 end
  742.                         else
  743.                                 for _,v in next,Folder:GetDescendants() do
  744.                                         if v.Name:match('Cham') then
  745.                                                 v:Destroy()
  746.                                         end
  747.                                 end
  748.                         end
  749.                        
  750.                         if bounding_box and Char:FindFirstChild('HumanoidRootPart') then
  751.                                 local Box = Char:FindFirstChild('Box') or Instance.new('BillboardGui',Char)
  752.                                 if not Char:FindFirstChild('Box') then
  753.                                 Box.Name = 'Box'
  754.                                 Box.Adornee = Char:FindFirstChild('HumanoidRootPart')
  755.                                 Box.AlwaysOnTop = true
  756.                                 Box.LightInfluence = 0
  757.                                 Box.StudsOffset = Vector3.new(0,-Box.Adornee.Size.Y/4,0)
  758.                                 Box.Size = UDim2.new(4,1,5,1)
  759.                                 local Top = Instance.new('Frame',Box)
  760.                                 Top.Size = UDim2.new(1,0,0,box_line_size)
  761.                                 Top.BorderSizePixel = 0
  762.                                 local Bot = Top:Clone()
  763.                                 Bot.Position = UDim2.new(0,0,1,-box_line_size)
  764.                                 Bot.Parent = Box
  765.                                 local Left = Top:Clone()
  766.                                 Left.Size = UDim2.new(0,1,1,0)
  767.                                 Left.Parent = Box
  768.                                 local Right = Left:Clone()
  769.                                 Right.Position = UDim2.new(1,-box_line_size,0,0)
  770.                                 Right.Parent = Box
  771.                                 end
  772.                                 for _,v in next,Box:children() do
  773.                                         if v:IsA('Frame') then
  774.                                                 v.BackgroundColor3 = Head.BackgroundColor3
  775.                                         end
  776.                                 end
  777.                         else
  778.                                 local Box = Char:FindFirstChild('Box')
  779.                                 if Box then
  780.                                         Box:Destroy()
  781.                                 end
  782.                         end
  783.                        
  784.                         if lockedon and target and aim_line and ESP:FindFirstChild(target.Name) then
  785.                                 DrawLine(ESP,cursor,ESP:FindFirstChild(target.Name).Head,1,Head.BackgroundColor3,.5)
  786.                         end
  787.                        
  788.                 else
  789.                         if ESP:FindFirstChild(v.Name) then
  790.                                 ESP:FindFirstChild(v.Name):Destroy()
  791.                         end
  792.                         end
  793.                 else
  794.                         if ESP:FindFirstChild(v.Name) then
  795.                                 ESP:FindFirstChild(v.Name):Destroy()
  796.                         end
  797.                 end
  798.                 end
  799.         else
  800.                 for _,v in next,ESP:children() do
  801.                         if v:IsA('Folder') then
  802.                                 v:Destroy()
  803.                         end
  804.                 end
  805.         end
  806.         if performancemode then
  807.                 wait(1/(workspace:GetRealPhysicsFPS()*.75))
  808.         else
  809.                 RS.Stepped:wait()
  810.         end
  811. end