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