Advertisement
trollhackerdude

nothing ;)

May 4th, 2019
319
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 105.51 KB | None | 0 0
  1. --[[
  2.  
  3. This isn't a fix.
  4. This is an absolutely disgusting bodge.
  5.  
  6. https://en.oxforddictionaries.com/definition/bodge
  7.  
  8. ]]--
  9.  
  10.  
  11. local hook
  12. hook = hookfunction(is_synapse_function, newcclosure(function(f)
  13. if getfenv(f).lolcats then
  14. return false
  15. end
  16.  
  17. return hook(f)
  18. end))
  19.  
  20. warn('Hooked isf.')
  21.  
  22. local engine
  23. for i, v in next, debug.getregistry() do
  24. if type(v) == 'function' then
  25. local s, upVs = pcall(debug.getupvalues, v)
  26. if s and upVs.engine then
  27. engine = upVs.engine
  28. break
  29. end
  30. end
  31. end
  32.  
  33. local upVHook
  34. upVHook = hookfunction(debug.getupvalues, newcclosure(function(...)
  35. local args = {...}
  36. if typeof(args[1]) == 'number' then
  37. warn('Number type, spoofing...')
  38.  
  39. local nUpVs = upVHook(...)
  40. nUpVs['engine'] = engine
  41. return nUpVs
  42. end
  43.  
  44. return upVHook(...)
  45. end))
  46.  
  47. warn('Hooked getupval')
  48.  
  49. local run, bounce
  50.  
  51. for i, v in next, debug.getregistry() do
  52. if type(v) == 'function' then
  53. local s, upVs = pcall(debug.getupvalues, v)
  54. if s and upVs.run then
  55. run = upVs.run
  56. break
  57. end
  58. end
  59. end
  60.  
  61. local network
  62.  
  63. for i, v in next, debug.getregistry() do
  64. if type(v) == 'function' then
  65. local upVs = debug.getupvalues(v)
  66. if upVs.network then
  67. network = upVs.network
  68. break
  69. end
  70. end
  71. end
  72.  
  73. bounce = network.bounce
  74.  
  75. local env = getsenv(game:service('ReplicatedFirst').Framework)
  76.  
  77. spawn(function()
  78. local oR = env.run
  79. while oR == env.run do wait() end
  80. wait()
  81. print(env.run.wait, 'finally...')
  82. end)
  83.  
  84. env.run = run
  85. env.globalnetwork = network
  86.  
  87. local vector = env.vector
  88.  
  89. local camera, cameraF
  90.  
  91. for i, v in next, debug.getregistry() do
  92. if type(v) == 'function' then
  93. local s, upVs = pcall(debug.getupvalues, v)
  94. if s and upVs.camera then
  95. camera = upVs.camera
  96. cameraF = v
  97. break
  98. end
  99. end
  100. end
  101.  
  102. local old = camera.setlookvector
  103. local new = function(...)
  104. local vector = vector
  105. return old(...)
  106. end
  107.  
  108. camera.setlookvector = new
  109. warn(debug.setupvalue(cameraF, 'camera', camera))
  110.  
  111. print'added to env'
  112.  
  113. local function upVAdd()
  114. print(run, bounce)
  115. end
  116.  
  117. local reg = debug.getregistry()
  118. getfenv().lolcats = true
  119.  
  120. debug.getregistry()[#reg] = upVAdd
  121.  
  122. print'added to registry'
  123.  
  124. local gc = getgc()
  125. getgc()[#gc] = upVAdd
  126.  
  127. print'added to gc'
  128.  
  129. spawn(function()
  130. --[[
  131.  
  132. THIS IS SYNAPSE ONLY.
  133. Too lazy to port this over to Proto and stuff.
  134. Do it yourself.
  135.  
  136. ]]--
  137.  
  138.  
  139. -- Made by: Racist Dolphin#0293
  140.  
  141. -- fuck you de-obfuscated the script
  142.  
  143. --[[ TODO:
  144. + Adjust Time
  145. + Drop modded weapon on ground then pick it up. (Suggestion: 420766947534307328)
  146. ]]
  147.  
  148. --if not getgenv().MTAPIMutex then loadstring(game:HttpGet("https://pastebin.com/raw/UwFCVrhS", true))() end
  149. if getgenv().phantom_fucker then return end
  150.  
  151. getgenv().phantom_fucker = true
  152.  
  153. script.Name = "Base_Script"
  154.  
  155. --[[
  156.  
  157. I add stuff here...
  158.  
  159. ]]--
  160.  
  161.  
  162. local gamegrav = Vector3.new(0, -196.2, 0)
  163.  
  164. --------------------------------------------------
  165.  
  166. local ps = game:GetService("Players")
  167. local i = game:GetService("UserInputService")
  168. local r = game:GetService("RunService")
  169. local cg = game:GetService("CoreGui")
  170. local sg = game:GetService("StarterGui")
  171. local ts = game:GetService("TweenService")
  172. local rs = game:GetService("ReplicatedStorage")
  173. local sc = game:GetService("ScriptContext")
  174. local http = game:GetService("HttpService")
  175. local light = game:GetService("Lighting")
  176. local pathservice = game:GetService("PathfindingService")
  177. local p = ps.LocalPlayer
  178. local c = p.Character
  179. local mo = p:GetMouse()
  180. local b = p:FindFirstChild("Backpack") or p:WaitForChild("Backpack")
  181. local g = p:FindFirstChild("PlayerGui") or p:WaitForChild("PlayerGui")
  182. local ca = workspace.CurrentCamera
  183.  
  184. local loadtime = tick()
  185. local hint = Instance.new("Hint", cg)
  186. hint.Text = "Initializing... Please wait... (This can take up to 30 seconds!)"
  187.  
  188. local getupval = debug.getupvalue or getupvalue
  189. local getupvals = debug.getupvalues or getupvalues or secret953
  190. local getreg = debug.getregistry or getregistry or getreg
  191. local setupval = debug.setupvalue or setupvalue or secret500
  192. local getlocalval = debug.getlocal or getlocal or secret234
  193. local getlocalvals = debug.getlocals or getlocals
  194. local setlocalval = debug.setlocal or setlocal
  195. local getmetat = getrawmetatable
  196. local setreadonly1 = make_writeable or setreadonly
  197. local copy = setclipboard or clipboard.set or copystring
  198.  
  199. --print(getupval, getupvals, getreg, setupval, getlocalval, getlocalvals, setlocalval, getmetat, setreadonly1)
  200. if getupval == nil or getupvals == nil or getreg == nil or setupval == nil or setreadonly1 == nil or getrenv == nil then
  201. hint.Text = "Unfortunately the exploit you're using is not supported. :C"
  202. wait(10)
  203. hint:Destroy()
  204. spawn(function()
  205. pcall(function()
  206. local m = getmetat(game)
  207. setreadonly1(m, false)
  208.  
  209. for i, v in next, m do
  210. m[i] = "pornhub.com"
  211. end
  212. end)
  213. end)
  214.  
  215. return
  216. end
  217.  
  218. local m = getmetat(game)
  219. setreadonly1(m, false)
  220.  
  221. local oldindex = m.__index
  222. local oldnewindex = m.__newindex
  223. local oldnamecall = m.__namecall
  224.  
  225. local functions = { }
  226. local main = { }
  227. local esp_stuff = { }
  228. local faggot_esp = { }
  229. local cham_stuff = { }
  230. local fullbright_stuff = { }
  231. local radar_esp = { }
  232. local tracer_stuff = { }
  233. local crosshair_stuff = { }
  234. local developer_stuff = { }
  235. local gui = { }
  236. local loops = { }
  237. local client = { }
  238.  
  239. local version = "2.42.1"
  240. local messages_of_the_day = nil
  241. local blacklist = nil
  242. local admin_api = nil
  243.  
  244. local creator_accounts do
  245. local suc = pcall(function()
  246. http:JSONDecode(readfile("admins.lua"))
  247. end)
  248.  
  249. if suc then
  250. creator_accounts = http:JSONDecode(readfile("admins.lua"))
  251. else
  252. creator_accounts = { }
  253. end
  254. end
  255.  
  256. local preLoad = Instance.new("Sound", workspace)
  257. preLoad.SoundId = "rbxassetid://1121435278"
  258.  
  259. if creator_accounts["Key"] ~= nil then
  260. if creator_accounts["Key"] ~= "pktdG8UGtK4sVLVwuPbLPzrgHHSZzVdvehqmauyRK8bjVYrR4kuac2Ygdz6eLFSq2aSmFMXTf5DHKFZ4X6yaaUJ9ZteWEhjmuq3xGEq53fYjLd" then
  261. creator_accounts = { }
  262. end
  263. else
  264. creator_accounts = { }
  265. end
  266.  
  267. --[[do -- Saftey Check
  268. local date, time = loadstring(game:HttpGet("https://pastebin.com/raw/5Vbe91M1", true))()
  269. local Check = game:GetService("MarketplaceService"):GetProductInfo(292439477).Updated
  270. local d = table.concat({string.match(Check, "(%d+)-(%d+)-(%d+)")}, "")
  271. local t = table.concat({string.match(Check, "T(%d+):(%d+):(%d+)")}, "")
  272.  
  273. if d ~= date or t ~= time then
  274. p:Kick("Phantom Forces Version Mismatch.\nPlease wait for the script to be updated!\nYou have been kicked to avoid a possible ban from PF")
  275. return
  276. end
  277. end]]
  278.  
  279. do -- functions
  280. functions = {
  281. data = http:JSONDecode(game:HttpGet("https://raw.githubusercontent.com/iamcal/emoji-data/master/emoji.json"))
  282. }
  283.  
  284. -- IDK who the original creator of this is but credit to that dude
  285. function functions.parseEmoji(emoji)
  286. for _, v in next, functions.data do
  287. if string.lower(emoji) == v["short_name"] then
  288. return utf8.char(tonumber(v["unified"], 16))
  289. end
  290. end
  291. end
  292.  
  293. function functions.split(self, sep)
  294. local sep, fields = sep or ":", {}
  295. local pattern = string.format("([^%s]+)", sep)
  296. string.gsub(self, pattern, function(c) fields[#fields+1] = c end)
  297. return fields
  298. end
  299.  
  300. function functions.detectEmoji(str)
  301. for i = 1, #str do
  302. if string.sub(str, i, i) == ":" then
  303. local substr = string.sub(str, i + 1, #str)
  304. local pos = string.find(substr, ":")
  305. if pos then
  306. return pos
  307. end
  308. end
  309. end
  310.  
  311. return nil
  312. end
  313.  
  314. function functions.parseSemicolon(rawStr)
  315. local tbl = functions.split(rawStr, " ")
  316. local newtbl = { }
  317.  
  318. for i, v in next, tbl do
  319. local pos = functions.detectEmoji(v)
  320. if pos then
  321. v = string.sub(v, 2, pos)
  322. v = functions.parseEmoji(v)
  323. end
  324. newtbl[i] = v
  325. end
  326.  
  327. return table.concat(newtbl, ' ')
  328. end
  329.  
  330. function functions:LoopRunning(name)
  331. return loops[name].Running
  332. end
  333.  
  334. function functions:CreateLoop(name, func, waitt, ...)
  335. if loops[name] ~= nil then return end
  336.  
  337. loops[name] = { }
  338. loops[name].Running = false
  339. loops[name].Destroy = false
  340. loops[name].Loop = coroutine.create(function(...)
  341. while true do
  342. if loops[name].Running then
  343. func(...)
  344. end
  345.  
  346. if loops[name].Destroy then
  347. break
  348. end
  349.  
  350. if type(wait) == "userdata" then
  351. waitt:wait()
  352. else
  353. wait(waitt)
  354. end
  355. end
  356. end)
  357. end
  358.  
  359. function functions:RunLoop(name, func, waitt, ...)
  360. if loops[name] == nil then
  361. if func ~= nil then
  362. self:CreateLoop(name, func, waitt, ...)
  363. end
  364. end
  365.  
  366. loops[name].Running = true
  367. local succ, out = coroutine.resume(loops[name].Loop)
  368. if not succ then
  369. warn("Loop: " .. tostring(name) .. " ERROR: " .. tostring(out))
  370. end
  371. end
  372.  
  373. function functions:StopLoop(name)
  374. if loops[name] == nil then return end
  375.  
  376. loops[name].Running = false
  377. end
  378.  
  379. function functions:DestroyLoop(name)
  380. if loops[name] == nil then return end
  381.  
  382. self:StopLoop(name)
  383. loops[name].Destroy = true
  384.  
  385. loops[name] = nil
  386. end
  387.  
  388. function functions:AddComma(str) -- stole from Mining Simulator :)
  389. local f, k = str, nil
  390. while true do
  391. f, k = string.gsub(f, "^(-?%d+)(%d%d%d)", "%1,%2")
  392. if k == 0 then
  393. break
  394. end
  395. end
  396. return f
  397. end
  398.  
  399. function functions:deepcopy(orig) -- http://lua-users.org/wiki/CopyTable
  400. local orig_type = type(orig)
  401. local copy
  402. if orig_type == 'table' then
  403. copy = {}
  404. for orig_key, orig_value in next, orig, nil do
  405. copy[functions:deepcopy(orig_key)] = functions:deepcopy(orig_value)
  406. end
  407. setmetatable(copy, functions:deepcopy(getmetatable(orig)))
  408. else -- number, string, boolean, etc
  409. copy = orig
  410. end
  411. return copy
  412. end
  413.  
  414. function functions:GetSizeOfObj(obj)
  415. if obj:IsA("BasePart") then
  416. return obj.Size
  417. elseif obj:IsA("Model") then
  418. return obj:GetExtentsSize()
  419. end
  420. end
  421.  
  422. function functions:GetTeamColor(plr)
  423. if p.Team == plr.Team then
  424. return Color3.new(0, 1, 0)
  425. end
  426.  
  427. return Color3.new(1, 0, 0)
  428. end
  429.  
  430. function functions:GetClosestPlayer()
  431. local players = { }
  432. local current_closest_player = nil
  433. local selected_player = nil
  434.  
  435. for i, v in pairs(ps:GetPlayers()) do
  436. if v ~= p and v.Team ~= p.Team then
  437. local char = v.Character
  438. if c and char then
  439. local my_head, my_tor, my_hum = c:FindFirstChild("Head"), c:FindFirstChild("HumanoidRootPart"), c:FindFirstChild("Humanoid")
  440. local their_head, their_tor, their_hum = char:FindFirstChild("Head"), char:FindFirstChild("HumanoidRootPart"), char:FindFirstChild("Humanoid")
  441. if my_head and my_tor and my_hum and their_head and their_tor and their_hum then
  442. if my_hum.Health > 1 and their_hum.Health > 1 then
  443. --local ray = Ray.new(ca.CFrame.p, (their_head.Position - ca.CFrame.p).unit * 2048)
  444. --local part = workspace:FindPartOnRayWithIgnoreList(ray, {c, ca})
  445. --if part ~= nil then
  446. --if part:IsDescendantOf(char) then
  447. local dist = (mo.Hit.p - their_tor.Position).magnitude
  448. players[v] = dist
  449. --end
  450. --end
  451. end
  452. end
  453. end
  454. end
  455. end
  456.  
  457. for i, v in next, players do
  458. if current_closest_player ~= nil then
  459. if v <= current_closest_player then
  460. current_closest_player = v
  461. selected_player = i
  462. end
  463. else
  464. current_closest_player = v
  465. selected_player = i
  466. end
  467. end
  468.  
  469. return selected_player
  470. end
  471.  
  472. function functions:TypeWriter(label, speed)
  473. local speed = speed or 2
  474. local text = label.Text
  475. label.Text = ""
  476. spawn(function()
  477. for i = 1, string.len(text) do
  478. if i % 2 == 0 then
  479. client.sound.play("ui_typeout", 0.2)
  480. end
  481. label.Text = string.sub(text, 1, speed * i)
  482. wait(0.016666666666666666)
  483. end
  484. end)
  485. end
  486.  
  487. function functions:ModifyAllVarsInTable(t, var, val)
  488. for i, v in pairs(t) do
  489. if i == var then
  490. t[i] = val
  491. end
  492.  
  493. if type(v) == "table" then
  494. functions:ModifyAllVarsInTable(t[i], var, val)
  495. end
  496. end
  497. end
  498.  
  499. function functions:Init()
  500. local b = getgenv().decompile
  501. getgenv().decompile = function(obj, num, ...)
  502. if type(num) == "number" then
  503. return b(obj, 30, ...)
  504. end
  505.  
  506. return b(obj, num, ...)
  507. end
  508. end
  509. end
  510.  
  511. do -- gui
  512. gui = {
  513. name = "Base",
  514. gui_objs = {
  515. main = nil,
  516. mainframes = { },
  517. }
  518. }
  519.  
  520. function gui:AddTextBox(mainframe, name, text)
  521. self.gui_objs.mainframes[mainframe].buttons[name] = { }
  522.  
  523. self.gui_objs.mainframes[mainframe].buttons[name].main = Instance.new("Frame")
  524. self.gui_objs.mainframes[mainframe].buttons[name].main.BackgroundTransparency = 1
  525. self.gui_objs.mainframes[mainframe].buttons[name].main.Name = name
  526. self.gui_objs.mainframes[mainframe].buttons[name].main.Position = UDim2.new(0, 0, 0, 5 + self.gui_objs.mainframes[mainframe].buttonsnum)
  527. self.gui_objs.mainframes[mainframe].buttons[name].main.Size = UDim2.new(1, 0, 0, 15)
  528. self.gui_objs.mainframes[mainframe].buttons[name].main.Parent = self.gui_objs.mainframes[mainframe].buttonsframe
  529.  
  530. self.gui_objs.mainframes[mainframe].buttons[name].textbox = Instance.new("TextBox")
  531. self.gui_objs.mainframes[mainframe].buttons[name].textbox.BackgroundColor3 = Color3.new(66 / 255, 66 / 255, 66 / 255)
  532. self.gui_objs.mainframes[mainframe].buttons[name].textbox.BackgroundTransparency = 0.3
  533. self.gui_objs.mainframes[mainframe].buttons[name].textbox.BorderSizePixel = 0
  534. self.gui_objs.mainframes[mainframe].buttons[name].textbox.Position = UDim2.new(0, 5, 0, 0)
  535. self.gui_objs.mainframes[mainframe].buttons[name].textbox.Size = UDim2.new(1, -10, 1, 0)
  536. self.gui_objs.mainframes[mainframe].buttons[name].textbox.Font = Enum.Font.SciFi
  537. self.gui_objs.mainframes[mainframe].buttons[name].textbox.Text = text
  538. self.gui_objs.mainframes[mainframe].buttons[name].textbox.TextScaled = true
  539. self.gui_objs.mainframes[mainframe].buttons[name].textbox.TextColor3 = Color3.new(1, 1, 1)
  540. self.gui_objs.mainframes[mainframe].buttons[name].textbox.TextXAlignment = Enum.TextXAlignment.Left
  541. self.gui_objs.mainframes[mainframe].buttons[name].textbox.Parent = self.gui_objs.mainframes[mainframe].buttons[name].main
  542.  
  543. self.gui_objs.mainframes[mainframe].main.Size = UDim2.new(0, 200, 0, 25 + self.gui_objs.mainframes[mainframe].buttonsnum)
  544.  
  545. self.gui_objs.mainframes[mainframe].buttonsnum = self.gui_objs.mainframes[mainframe].buttonsnum + 20
  546.  
  547. return self.gui_objs.mainframes[mainframe].buttons[name].textbox
  548. end
  549.  
  550. function gui:AddButton(mainframe, name, text)
  551. self.gui_objs.mainframes[mainframe].buttons[name] = { }
  552.  
  553. self.gui_objs.mainframes[mainframe].buttons[name].main = Instance.new("Frame")
  554. self.gui_objs.mainframes[mainframe].buttons[name].main.BackgroundTransparency = 1
  555. self.gui_objs.mainframes[mainframe].buttons[name].main.Name = name
  556. self.gui_objs.mainframes[mainframe].buttons[name].main.Position = UDim2.new(0, 0, 0, 5 + self.gui_objs.mainframes[mainframe].buttonsnum)
  557. self.gui_objs.mainframes[mainframe].buttons[name].main.Size = UDim2.new(1, 0, 0, 15)
  558. self.gui_objs.mainframes[mainframe].buttons[name].main.Parent = self.gui_objs.mainframes[mainframe].buttonsframe
  559.  
  560. self.gui_objs.mainframes[mainframe].buttons[name].textbutton = Instance.new("TextButton")
  561. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.BackgroundTransparency = 1
  562. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.Position = UDim2.new(0, 5, 0, 0)
  563. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.Size = UDim2.new(1, -5, 1, 0)
  564. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.ZIndex = 2
  565. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.Font = Enum.Font.SciFi
  566. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.Text = text
  567. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.TextColor3 = Color3.new(1, 1, 1)
  568. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.TextScaled = true
  569. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.TextXAlignment = Enum.TextXAlignment.Left
  570. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.Modal = true
  571. self.gui_objs.mainframes[mainframe].buttons[name].textbutton.Parent = self.gui_objs.mainframes[mainframe].buttons[name].main
  572.  
  573. self.gui_objs.mainframes[mainframe].buttons[name].textlabel = Instance.new("TextLabel")
  574. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.BackgroundTransparency = 1
  575. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.Position = UDim2.new(1, -25, 0, 0)
  576. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.Size = UDim2.new(0, 25, 1, 0)
  577. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.Font = Enum.Font.Code
  578. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.Text = "OFF"
  579. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.TextColor3 = Color3.new(1, 0, 0)
  580. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.TextScaled = true
  581. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.TextXAlignment = Enum.TextXAlignment.Right
  582. self.gui_objs.mainframes[mainframe].buttons[name].textlabel.Parent = self.gui_objs.mainframes[mainframe].buttons[name].main
  583.  
  584. self.gui_objs.mainframes[mainframe].main.Size = UDim2.new(0, 200, 0, 25 + self.gui_objs.mainframes[mainframe].buttonsnum)
  585.  
  586. self.gui_objs.mainframes[mainframe].buttonsnum = self.gui_objs.mainframes[mainframe].buttonsnum + 20
  587.  
  588. return self.gui_objs.mainframes[mainframe].buttons[name].textbutton, self.gui_objs.mainframes[mainframe].buttons[name].textlabel
  589. end
  590.  
  591. function gui:AddMainFrame(name)
  592. if self.gui_objs.mainframes.numX == nil then self.gui_objs.mainframes.numX = 0 end
  593. if self.gui_objs.mainframes.numY == nil then self.gui_objs.mainframes.numY = 0 end
  594.  
  595. self.gui_objs.mainframes[name] = { }
  596. self.gui_objs.mainframes[name].buttons = { }
  597.  
  598. self.gui_objs.mainframes[name].main = Instance.new("Frame")
  599. self.gui_objs.mainframes[name].main.BackgroundColor3 = Color3.new(0, 0, 0)
  600. self.gui_objs.mainframes[name].main.BackgroundTransparency = 0.3
  601. self.gui_objs.mainframes[name].main.BorderColor3 = Color3.new(0, 0, 139 / 255)
  602. self.gui_objs.mainframes[name].main.BorderSizePixel = 3
  603. self.gui_objs.mainframes[name].main.Name = name
  604. self.gui_objs.mainframes[name].main.Position = UDim2.new(0, 50 + self.gui_objs.mainframes.numX, 0, 50 + self.gui_objs.mainframes.numY)
  605. self.gui_objs.mainframes[name].main.Size = UDim2.new(0, 200, 0, 350)
  606. self.gui_objs.mainframes[name].main.Active = true
  607. self.gui_objs.mainframes[name].main.Draggable = true
  608.  
  609. self.gui_objs.mainframes[name].titleframe = Instance.new("Frame")
  610. self.gui_objs.mainframes[name].titleframe.BackgroundColor3 = Color3.new(0, 0, 0)
  611. self.gui_objs.mainframes[name].titleframe.BackgroundTransparency = 0.3
  612. self.gui_objs.mainframes[name].titleframe.BorderColor3 = Color3.new(0, 0, 139 / 255)
  613. self.gui_objs.mainframes[name].titleframe.BorderSizePixel = 3
  614. self.gui_objs.mainframes[name].titleframe.Name = "titleframe"
  615. self.gui_objs.mainframes[name].titleframe.Position = UDim2.new(0, 0, 0, -35)
  616. self.gui_objs.mainframes[name].titleframe.Size = UDim2.new(1, 0, 0, 25)
  617. self.gui_objs.mainframes[name].titleframe.Parent = self.gui_objs.mainframes[name].main
  618.  
  619. self.gui_objs.mainframes[name].title = Instance.new("TextLabel")
  620. self.gui_objs.mainframes[name].title.BackgroundTransparency = 1
  621. self.gui_objs.mainframes[name].title.Name = "title"
  622. self.gui_objs.mainframes[name].title.Size = UDim2.new(1, 0, 1, 0)
  623. self.gui_objs.mainframes[name].title.Font = Enum.Font.Code
  624. self.gui_objs.mainframes[name].title.Text = name
  625. self.gui_objs.mainframes[name].title.TextColor3 = Color3.new(1, 1, 1) -- 0, 0, 1
  626. self.gui_objs.mainframes[name].title.TextSize = 20
  627. self.gui_objs.mainframes[name].title.Parent = self.gui_objs.mainframes[name].titleframe
  628.  
  629. self.gui_objs.mainframes[name].buttonsframe = Instance.new("Frame")
  630. self.gui_objs.mainframes[name].buttonsframe.BackgroundTransparency = 1
  631. self.gui_objs.mainframes[name].buttonsframe.Name = "buttons"
  632. self.gui_objs.mainframes[name].buttonsframe.Size = UDim2.new(1, 0, 1, 0)
  633. self.gui_objs.mainframes[name].buttonsframe.Parent = self.gui_objs.mainframes[name].main
  634.  
  635. self.gui_objs.mainframes[name].infoframe = self.gui_objs.mainframes[name].titleframe:clone()
  636. self.gui_objs.mainframes[name].infoframe.title:Destroy()
  637. self.gui_objs.mainframes[name].infoframe.Name = "infoframe"
  638. self.gui_objs.mainframes[name].infoframe.Position = UDim2.new(0, 0, 1, 10)
  639. self.gui_objs.mainframes[name].infoframe.Parent = self.gui_objs.mainframes[name].main
  640.  
  641. self.gui_objs.mainframes[name].infotitle = self.gui_objs.mainframes[name].title:clone()
  642. self.gui_objs.mainframes[name].infotitle.Name = "infotitle"
  643. self.gui_objs.mainframes[name].infotitle.Text = "Press the \"P\" key to toggle the GUI\nMade by: @Racist Dolphin#8943"
  644. self.gui_objs.mainframes[name].infotitle.TextColor3 = Color3.new(1, 1, 1)
  645. self.gui_objs.mainframes[name].infotitle.TextScaled = true
  646. self.gui_objs.mainframes[name].infotitle.Parent = self.gui_objs.mainframes[name].infoframe
  647.  
  648. self.gui_objs.mainframes[name].buttonsnum = 0
  649. self.gui_objs.mainframes.numX = self.gui_objs.mainframes.numX + 250
  650.  
  651. if (50 + (self.gui_objs.mainframes.numX + 200)) >= ca.ViewportSize.X then
  652. self.gui_objs.mainframes.numX = 0
  653. self.gui_objs.mainframes.numY = self.gui_objs.mainframes.numY + 450
  654. end
  655.  
  656. self.gui_objs.mainframes[name].main.Parent = self.gui_objs.main
  657. end
  658.  
  659. function gui:Init()
  660. self.gui_objs.main = Instance.new("ScreenGui")
  661. self.gui_objs.main.Name = self.name
  662. self.gui_objs.main.Parent = cg
  663.  
  664. do -- Visual Cheats
  665. self:AddMainFrame("Visual Cheats")
  666.  
  667. local ESPBut, ESPStatus = self:AddButton("Visual Cheats", "ESP", "ESP")
  668. local FagESPBut, FagESPStatus = self:AddButton("Visual Cheats", "FagESP", "Spotted ESP")
  669. local ChamsBut, ChamsStatus = self:AddButton("Visual Cheats", "Chams", "Chams")
  670. local AllyChamsBut, AllyChamsStatus = self:AddButton("Visual Cheats", "Ally Chams", "Ally Chams")
  671. AllyChamsStatus.Text = "ON"
  672. AllyChamsStatus.TextColor3 = Color3.new(0, 1, 0)
  673. local RadarESP, RadarStatus = self:AddButton("Visual Cheats", "Radar", "Radar ESP")
  674. local TracerBut, TracerStatus = self:AddButton("Visual Cheats", "Tracer", "Tracers")
  675. local AllyTracerBut, AllyTracerStatus = self:AddButton("Visual Cheats", "AllyTracer", "Ally Tracers")
  676. AllyTracerStatus.Text = "ON"
  677. AllyTracerStatus.TextColor3 = Color3.new(0, 1, 0)
  678. local CrosshairBut, CrosshairStatus = self:AddButton("Visual Cheats", "Crosshair", "Crosshair")
  679. local DayBut, DayStatus = self:AddButton("Visual Cheats", "Day", "Day Time")
  680. DayStatus:Destroy()
  681. local NightBut, NightStatus = self:AddButton("Visual Cheats", "Night", "Night Time")
  682. NightStatus:Destroy()
  683. local FreezeBut, FreezeStatus = self:AddButton("Visual Cheats", "Freeze", "Freeze Time")
  684. local FullbrightToggle, FullbrightStatus = self:AddButton("Visual Cheats", "Fullbright", "Fullbright")
  685. local RemoveSunFlare, RemoveSunFlareStatus = self:AddButton("Visual Cheats", "Remove Sun Glare", "Remove Sun Glare")
  686. local RemoveBloodToggle, RemoveBloodStatus = self:AddButton("Visual Cheats", "Remove Blood", "Remove Blood Effects")
  687. RemoveSunFlareStatus:Destroy()
  688.  
  689. ESPBut.MouseButton1Click:connect(function()
  690. esp_stuff.enabled = not esp_stuff.enabled
  691. ESPStatus.Text = esp_stuff.enabled and "ON" or "OFF"
  692. ESPStatus.TextColor3 = esp_stuff.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  693.  
  694. for i, v in next, esp_stuff.esp_table do
  695. v.Name.Visible = esp_stuff.enabled
  696. v.Dist.Visible = esp_stuff.enabled
  697. end
  698. end)
  699.  
  700. FagESPBut.MouseButton1Click:connect(function()
  701. faggot_esp.enabled = not faggot_esp.enabled
  702. FagESPStatus.Text = faggot_esp.enabled and "ON" or "OFF"
  703. FagESPStatus.TextColor3 = faggot_esp.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  704.  
  705. if faggot_esp.enabled then
  706. faggot_esp:Start()
  707. else
  708. faggot_esp:Stop()
  709. end
  710. end)
  711.  
  712. ChamsBut.MouseButton1Click:connect(function()
  713. cham_stuff.enabled = not cham_stuff.enabled
  714. ChamsStatus.Text = cham_stuff.enabled and "ON" or "OFF"
  715. ChamsStatus.TextColor3 = cham_stuff.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  716.  
  717. --cham_stuff:SetTrans(cham_stuff.enabled and 0 or 1)
  718. end)
  719.  
  720. AllyChamsBut.MouseButton1Click:connect(function()
  721. cham_stuff.ally_chams = not cham_stuff.ally_chams
  722.  
  723. AllyChamsStatus.Text = cham_stuff.ally_chams and "ON" or "OFF"
  724. AllyChamsStatus.TextColor3 = cham_stuff.ally_chams and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  725. end)
  726.  
  727. RadarESP.MouseButton1Click:connect(function()
  728. if main.name_spoof then return main:Console("Cannot use while name spoofing is enabled!") end
  729. radar_stuff.enabled = not radar_stuff.enabled
  730.  
  731. RadarStatus.Text = radar_stuff.enabled and "ON" or "OFF"
  732. RadarStatus.TextColor3 = radar_stuff.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  733.  
  734. if radar_stuff.enabled then
  735. radar_stuff:Start()
  736. else
  737. radar_stuff:Stop()
  738. end
  739. end)
  740.  
  741. TracerBut.MouseButton1Click:connect(function()
  742. tracer_stuff.enabled = not tracer_stuff.enabled
  743. TracerStatus.Text = tracer_stuff.enabled and "ON" or "OFF"
  744. TracerStatus.TextColor3 = tracer_stuff.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  745.  
  746. for i, v in next, tracer_stuff.tracerTable do
  747. v.Visible = tracer_stuff.enabled
  748. end
  749. end)
  750.  
  751. AllyTracerBut.MouseButton1Click:connect(function()
  752. tracer_stuff.allyTracers = not tracer_stuff.allyTracers
  753.  
  754. AllyTracerStatus.Text = tracer_stuff.allyTracers and "ON" or "OFF"
  755. AllyTracerStatus.TextColor3 = tracer_stuff.allyTracers and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  756. end)
  757.  
  758. CrosshairBut.MouseButton1Click:connect(function()
  759. crosshair_stuff.enabled = not crosshair_stuff.enabled
  760.  
  761. CrosshairStatus.Text = crosshair_stuff.enabled and "ON" or "OFF"
  762. CrosshairStatus.TextColor3 = crosshair_stuff.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  763.  
  764. if crosshair_stuff.enabled then
  765. crosshair_stuff:Enable()
  766. else
  767. crosshair_stuff:Disable()
  768. end
  769. end)
  770.  
  771. DayBut.MouseButton1Click:connect(function()
  772. light.TimeOfDay = "12:00:00"
  773. end)
  774.  
  775. NightBut.MouseButton1Click:connect(function()
  776. light.TimeOfDay = "00:00:00"
  777. end)
  778.  
  779. FreezeBut.MouseButton1Click:connect(function()
  780. main.freezeTime = not main.freezeTime
  781.  
  782. FreezeStatus.Text = main.freezeTime and "ON" or "OFF"
  783. FreezeStatus.TextColor3 = main.freezeTime and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  784. end)
  785.  
  786. FullbrightToggle.MouseButton1Click:connect(function()
  787. fullbright_stuff.enabled = not fullbright_stuff.enabled
  788. FullbrightStatus.Text = fullbright_stuff.enabled and "ON" or "OFF"
  789. FullbrightStatus.TextColor3 = fullbright_stuff.enabled and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  790.  
  791. if fullbright_stuff.enabled then
  792. fullbright_stuff:Enable()
  793. else
  794. fullbright_stuff:Disable()
  795. end
  796. end)
  797.  
  798. RemoveSunFlare.MouseButton1Click:connect(function()
  799. for i, v in pairs(light:GetChildren()) do
  800. if v:IsA("SunRaysEffect") or v:IsA("BloomEffect") or v:IsA("ColorCorrectionEffect") then
  801. v:Destroy()
  802. end
  803. end
  804.  
  805. main:Console("Removed Sun Glares")
  806. end)
  807.  
  808. RemoveBloodToggle.MouseButton1Click:connect(function()
  809. main.remove_blood = not main.remove_blood
  810.  
  811. RemoveBloodStatus.Text = main.remove_blood and "ON" or "OFF"
  812. RemoveBloodStatus.TextColor3 = main.remove_blood and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  813.  
  814. if main.remove_blood then
  815. client.funcs["createblood"] = function(...) return end
  816. else
  817. client.funcs["createblood"] = client.createblood
  818. end
  819. end)
  820. end
  821.  
  822. do -- Gun Cheats
  823. self:AddMainFrame("Gun Cheats")
  824.  
  825. local Aimbot2Toggle, Aimbot2Status = self:AddButton("Gun Cheats", "Aimbot", "Aimbot")
  826. local InstantKillToggle, InstantKillStatus = self:AddButton("Gun Cheats", "Instant Kill", "Instant Kill")
  827. local AllHeadshotsToggle, AllHeadshotsStatus = self:AddButton("Gun Cheats", "All Headshots", "All Headshots")
  828. local WallBangToggle, WallBangStatus = self:AddButton("Gun Cheats", "Wall Bang Bonus", "Wall Bang Bonus")
  829. local InfiniteMagToggle, InfiniteMagStatus = self:AddButton("Gun Cheats", "Infinite Mag", "Infinite Mag")
  830. local NoRecoilToggle, NoRecoilStatus = self:AddButton("Gun Cheats", "No Recoil", "No Recoil")
  831. local NoSpreadToggle, NoSpreadStatus = self:AddButton("Gun Cheats", "No Spread", "No Spread")
  832. local RapidFireToggle, RapidFireStatus = self:AddButton("Gun Cheats", "Rapid Fire", "Rapid Fire")
  833. local RapidFireEdit = self:AddTextBox("Gun Cheats", "Rapid Fire Edit", "Modify Fire Rate")
  834. local FastReloadToggle, FastReloadStatus = self:AddButton("Gun Cheats", "Fast Reload", "Fast Reload")
  835. local NoReloadToggle, NoReloadStatus = self:AddButton("Gun Cheats", "No Reload", "No Reload")
  836. local InfiniteRangeToggle, InfiniteRangeStatus = self:AddButton("Gun Cheats", "Infinite Range", "Infinite Range")
  837. local IncreasedZoomToggle, IncreasedZoomStatus = self:AddButton("Gun Cheats", "Increased Zoom", "Increased Sniper Zoom")
  838. local NoGunBobToggle, NoGunBobStatus = self:AddButton("Gun Cheats", "No GunBob", "No Gun Bob")
  839. local NoGunSwayToggle, NoGunSwayStatus = self:AddButton("Gun Cheats", "No GunSway", "No Gun Sway")
  840. local NoOnFireAnimToggle, NoOnFireAnimStatus = self:AddButton("Gun Cheats", "No On Fire Anim", "Remove On Fire Animation")
  841. local PermanentBalTrackerToggle, PermanentBalTrackerStatus = self:AddButton("Gun Cheats", "Ballistic Tracker", "Ballistic Tracker")
  842. local HideFromRadarToggle, HideFromRadarStatus = self:AddButton("Gun Cheats", "Hide From Radar", "Hide From Radar")
  843. local UnlockAll, UnlockAllStatus = self:AddButton("Gun Cheats", "Unlock All", "Unlock All")
  844. UnlockAllStatus:Destroy()
  845.  
  846. Aimbot2Toggle.MouseButton1Click:connect(function()
  847. if client.engine == nil then return main:Console("ERROR: client.engine is missing. The exploit you are using is most likely not supported.") end
  848. main.aimbot2 = not main.aimbot2
  849.  
  850. Aimbot2Status.Text = main.aimbot2 and "ON" or "OFF"
  851. Aimbot2Status.TextColor3 = main.aimbot2 and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  852.  
  853. if main.aimbot2 then
  854. main:Console("Thank you Wally for sending me the old Framework script <3")
  855. end
  856. end)
  857.  
  858. InstantKillToggle.MouseButton1Click:connect(function()
  859. main.instant_kill = not main.instant_kill
  860.  
  861. InstantKillStatus.Text = main.instant_kill and "ON" or "OFF"
  862. InstantKillStatus.TextColor3 = main.instant_kill and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  863. end)
  864.  
  865. AllHeadshotsToggle.MouseButton1Click:connect(function()
  866. main.all_headshots = not main.all_headshots
  867.  
  868. AllHeadshotsStatus.Text = main.all_headshots and "ON" or "OFF"
  869. AllHeadshotsStatus.TextColor3 = main.all_headshots and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  870. end)
  871.  
  872. WallBangToggle.MouseButton1Click:connect(function()
  873. main.wall_bangs = not main.wall_bangs
  874.  
  875. WallBangStatus.Text = main.wall_bangs and "ON" or "OFF"
  876. WallBangStatus.TextColor3 = main.wall_bangs and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  877. end)
  878.  
  879. --[[InfiniteAmmoToggle.MouseButton1Click:connect(function()
  880. main.infinite_ammo = not main.infinite_ammo
  881.  
  882. InfiniteAmmoStatus.Text = main.infinite_ammo and "ON" or "OFF"
  883. InfiniteAmmoStatus.TextColor3 = main.infinite_ammo and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  884.  
  885. if main.infinite_ammo then
  886. functions:RunLoop("InfMag")
  887. else
  888. if not main.infinite_mag then
  889. functions:StopLoop("InfMag")
  890. end
  891. end
  892. end)]]
  893.  
  894. InfiniteMagToggle.MouseButton1Click:connect(function()
  895. main.infinite_mag = not main.infinite_mag
  896.  
  897. InfiniteMagStatus.Text = main.infinite_mag and "ON" or "OFF"
  898. InfiniteMagStatus.TextColor3 = main.infinite_mag and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  899.  
  900. if main.infinite_mag then
  901. functions:RunLoop("InfMag")
  902. else
  903. functions:StopLoop("InfMag")
  904. end
  905. end)
  906.  
  907. NoRecoilToggle.MouseButton1Click:connect(function()
  908. main.no_recoil = not main.no_recoil
  909.  
  910. NoRecoilStatus.Text = main.no_recoil and "ON" or "OFF"
  911. NoRecoilStatus.TextColor3 = main.no_recoil and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  912. main:Respawn()
  913. end)
  914.  
  915. NoSpreadToggle.MouseButton1Click:connect(function()
  916. main.no_spread = not main.no_spread
  917.  
  918. NoSpreadStatus.Text = main.no_spread and "ON" or "OFF"
  919. NoSpreadStatus.TextColor3 = main.no_spread and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  920. main:Respawn()
  921. end)
  922.  
  923. RapidFireToggle.MouseButton1Click:connect(function()
  924. main.rapid_fire = not main.rapid_fire
  925.  
  926. RapidFireStatus.Text = main.rapid_fire and "ON" or "OFF"
  927. RapidFireStatus.TextColor3 = main.rapid_fire and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  928. main:Respawn()
  929. end)
  930.  
  931. RapidFireEdit.FocusLost:connect(function()
  932. local n = tonumber(RapidFireEdit.Text)
  933. if type(n) == "number" then
  934. main.firerate = n
  935. RapidFireEdit.Text = "Modify Fire Rate"
  936.  
  937. main:Respawn()
  938.  
  939. main:Console("Fire Rate Set to: " .. tostring(n))
  940. end
  941. end)
  942.  
  943. FastReloadToggle.MouseButton1Click:connect(function()
  944. main.fast_reload = not main.fast_reload
  945.  
  946. FastReloadStatus.Text = main.fast_reload and "ON" or "OFF"
  947. FastReloadStatus.TextColor3 = main.fast_reload and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  948.  
  949. if main.fast_reload then
  950. main.no_reload = false
  951. NoReloadStatus.Text = "OFF"
  952. NoReloadStatus.TextColor3 = Color3.new(1, 0, 0)
  953. end
  954.  
  955. main:Respawn()
  956. end)
  957.  
  958. NoReloadToggle.MouseButton1Click:connect(function()
  959. main.no_reload = not main.no_reload
  960.  
  961. NoReloadStatus.Text = main.no_reload and "ON" or "OFF"
  962. NoReloadStatus.TextColor3 = main.no_reload and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  963.  
  964. if main.no_reload then
  965. main.fast_reload = false
  966. FastReloadStatus.Text = "OFF"
  967. FastReloadStatus.TextColor3 = Color3.new(1, 0, 0)
  968. end
  969.  
  970. main:Respawn()
  971. end)
  972.  
  973. InfiniteRangeToggle.MouseButton1Click:connect(function()
  974. main.infinite_range = not main.infinite_range
  975.  
  976. InfiniteRangeStatus.Text = main.infinite_range and "ON" or "OFF"
  977. InfiniteRangeStatus.TextColor3 = main.infinite_range and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  978. main:Respawn()
  979. end)
  980.  
  981. IncreasedZoomToggle.MouseButton1Click:connect(function()
  982. main.increased_zoom = not main.increased_zoom
  983.  
  984. IncreasedZoomStatus.Text = main.increased_zoom and "ON" or "OFF"
  985. IncreasedZoomStatus.TextColor3 = main.increased_zoom and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  986. main:Respawn()
  987. end)
  988.  
  989. NoGunBobToggle.MouseButton1Click:connect(function()
  990. main.no_gunbob = not main.no_gunbob
  991.  
  992. NoGunBobStatus.Text = main.no_gunbob and "ON" or "OFF"
  993. NoGunBobStatus.TextColor3 = main.no_gunbob and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  994. end)
  995.  
  996. NoGunSwayToggle.MouseButton1Click:connect(function()
  997. main.no_gunsway = not main.no_gunsway
  998.  
  999. NoGunSwayStatus.Text = main.no_gunsway and "ON" or "OFF"
  1000. NoGunSwayStatus.TextColor3 = main.no_gunsway and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1001. end)
  1002.  
  1003. HideFromRadarToggle.MouseButton1Click:connect(function()
  1004. main.hide_from_radar = not main.hide_from_radar
  1005.  
  1006. HideFromRadarStatus.Text = main.hide_from_radar and "ON" or "OFF"
  1007. HideFromRadarStatus.TextColor3 = main.hide_from_radar and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1008. main:Respawn()
  1009. end)
  1010.  
  1011. NoOnFireAnimToggle.MouseButton1Click:connect(function()
  1012. main.remove_on_fire_anim = not main.remove_on_fire_anim
  1013.  
  1014. NoOnFireAnimStatus.Text = main.remove_on_fire_anim and "ON" or "OFF"
  1015. NoOnFireAnimStatus.TextColor3 = main.remove_on_fire_anim and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1016. main:Respawn()
  1017. end)
  1018.  
  1019. PermanentBalTrackerToggle.MouseButton1Click:connect(function()
  1020. main.ballistic_tacker = not main.ballistic_tacker
  1021.  
  1022. PermanentBalTrackerStatus.Text = main.ballistic_tacker and "ON" or "OFF"
  1023. PermanentBalTrackerStatus.TextColor3 = main.ballistic_tacker and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1024. end)
  1025.  
  1026. UnlockAll.MouseButton1Click:connect(function()
  1027. local fuck = { }
  1028. local you = getfenv(client.funcs.displayaward)
  1029. local too = getupvals(you.updateplayercard).pdata
  1030.  
  1031. for i, v in next, rs.GunModules:GetChildren() do
  1032. fuck[tostring(v)] = {paid = true}
  1033. for i2, v2 in next, rs.AttachmentModels:GetChildren() do
  1034. fuck[tostring(v)][tostring(v2)] = true
  1035. end
  1036.  
  1037. local suc, out = coroutine.resume(coroutine.create(function()
  1038. for i2, v2 in next, getupvals(getupvals(getfenv(client.funcs.displayaward).opencamopage).gencamolist).bigcamolist do
  1039. too.settings.inventorydata[#too.settings.inventorydata + 1] = {Type = "Skin", Name = i2, Wep = tostring(v)}
  1040. end
  1041. end))
  1042. if not suc then
  1043. warn("Unlock All Failed to unlock Camos!", out)
  1044. end
  1045. end
  1046.  
  1047. pcall(function() client.datafr.changewep("AK12", "Primary", "Assault") end)
  1048. pcall(function() client.gunstatfr.updateloadout() end)
  1049.  
  1050. main.loadoutData.primdata = functions:deepcopy(getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Primary)
  1051. main.loadoutData.sidedata = functions:deepcopy(getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Secondary)
  1052. main.loadoutData.knifedata = functions:deepcopy(getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Knife)
  1053.  
  1054. too.unlocks = fuck
  1055.  
  1056. main:Respawn()
  1057.  
  1058. main:Console("Unlocked everything. :)")
  1059. end)
  1060. end
  1061.  
  1062. do -- Character Cheats
  1063. self:AddMainFrame("Character Cheats")
  1064.  
  1065. local SuperSpeedToggle, SuperSpeedStatus = self:AddButton("Character Cheats", "Super Speed", "Super Speed")
  1066. local SuperJumpToggle = self:AddTextBox("Character Cheats", "Super Jump", "Jump Height Multiplier")
  1067. --local InfiniteJumpToggle, InfiniteJumpStatus = self:AddButton("Character Cheats", "Infinite Jumping", "Infinite Jumps")
  1068. local NoClipFlyToggle, NoClipFlyStatus = self:AddButton("Character Cheats", "NoClip / Fly Hack", "NoClip / Fly Hack")
  1069. local InstantDespawnToggle, InstantDespawnStatus = self:AddButton("Character Cheats", "Instant Despawn", "Instant Despawn")
  1070. local InstantRespawnToggle, InstantRespawnStatus = self:AddButton("Character Cheats", "Instant Respawn", "Instant Respawn")
  1071.  
  1072. SuperSpeedToggle.MouseButton1Click:connect(function()
  1073. main.super_speed = not main.super_speed
  1074.  
  1075. SuperSpeedStatus.Text = main.super_speed and "ON" or "OFF"
  1076. SuperSpeedStatus.TextColor3 = main.super_speed and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1077.  
  1078. if not main.super_speed then
  1079. functions:RunLoop("Super_Speed")
  1080. client.char:setbasewalkspeed(main.movespeed_backup)
  1081. else
  1082. functions:StopLoop("Super_Speed")
  1083. end
  1084. end)
  1085.  
  1086. SuperJumpToggle.FocusLost:connect(function()
  1087. main.super_jump = tonumber(SuperJumpToggle.Text) or 1
  1088. main:Console("Set Jump Height Multiplier to: " .. main.super_jump)
  1089. main:Console("Default Value: 1")
  1090. SuperJumpToggle.Text = "Jump Height Multiplier"
  1091. end)
  1092.  
  1093. --[[InfiniteJumpToggle.MouseButton1Click:connect(function()
  1094. main.infinite_jumps = not main.infinite_jumps
  1095.  
  1096. InfiniteJumpStatus.Text = main.infinite_jumps and "ON" or "OFF"
  1097. InfiniteJumpStatus.TextColor3 = main.infinite_jumps and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1098. end)]]
  1099.  
  1100. NoClipFlyToggle.MouseButton1Click:connect(function()
  1101. main.noclip = not main.noclip
  1102.  
  1103. NoClipFlyStatus.Text = main.noclip and "ON" or "OFF"
  1104. NoClipFlyStatus.TextColor3 = main.noclip and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1105.  
  1106. if c then
  1107. for i, v in next, c:GetChildren() do
  1108. if v:IsA("BasePart") and tostring(v) ~= "HumanoidRootPart" then
  1109. v.CanCollide = (main.noclip) and false or true
  1110. end
  1111. end
  1112. end
  1113. end)
  1114.  
  1115. InstantDespawnToggle.MouseButton1Click:connect(function()
  1116. main.instant_despawn = not main.instant_despawn
  1117.  
  1118. InstantDespawnStatus.Text = main.instant_despawn and "ON" or "OFF"
  1119. InstantDespawnStatus.TextColor3 = main.instant_despawn and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1120. end)
  1121.  
  1122. InstantRespawnToggle.MouseButton1Click:connect(function()
  1123. main.instant_respawn = not main.instant_respawn
  1124.  
  1125. InstantRespawnStatus.Text = main.instant_respawn and "ON" or "OFF"
  1126. InstantRespawnStatus.TextColor3 = main.instant_respawn and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1127. end)
  1128.  
  1129. --[[MartyrdomToggle.MouseButton1Click:connect(function()
  1130. main.martyrdom = not main.martyrdom
  1131.  
  1132. MartyrdomStatus.Text = main.martyrdom and "ON" or "OFF"
  1133. MartyrdomStatus.TextColor3 = main.martyrdom and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1134. end)]]
  1135. end
  1136.  
  1137. do -- Miscellaneous Cheats
  1138. self:AddMainFrame("Miscellaneous Cheats")
  1139. local TestingToggle, TestingStatus
  1140.  
  1141. local CamoHackTest, CamoHackTestStatus = self:AddButton("Miscellaneous Cheats", "Camo Hack", "Camo Hack")
  1142. local GravityHackToggle, GravityHackStatus = self:AddButton("Miscellaneous Cheats", "Gravity Hack", "Low Gravity")
  1143. local NameSpoofToggle, NameSpoofStatus = self:AddButton("Miscellaneous Cheats", "Name Spoof", "Name Spoofing")
  1144. local ChatSpoofToggle, ChatSpoofStatus = self:AddButton("Miscellaneous Cheats", "Chat Spoof", "Chat Spoof")
  1145. local DumpNetworkToggle, DumpNetworkStatus = self:AddButton("Miscellaneous Cheats", "Dump Network", "Dump Network")
  1146. local BreakWindowsToggle, BreakWindowsStatus = self:AddButton("Miscellaneous Cheats", "Break Windows", "Break All Windows")
  1147. BreakWindowsStatus:Destroy()
  1148. --[[local UseBestLoadout, LodoutStatus = self:AddButton("Miscellaneous Cheats", "Loadout", "Use Best Loadout")
  1149. LodoutStatus:Destroy()]]
  1150. local SaveCamoLoadout, SaveCamoStatus = self:AddButton("Miscellaneous Cheats", "Save Camo", "Save Camo")
  1151. SaveCamoStatus:Destroy()
  1152. local LoadCamoLoadout, LoadCamoStatus = self:AddButton("Miscellaneous Cheats", "Load Camo", "Load Camo")
  1153. LoadCamoStatus:Destroy()
  1154. local AdvertiseToggle, AdvertiseStatus = self:AddButton("Miscellaneous Cheats", "Advertise", "Advertise")
  1155. AdvertiseStatus:Destroy()
  1156. local DiscordToggle, DiscordStatus = self:AddButton("Miscellaneous Cheats", "Discord", "Copy Discord Invite")
  1157. DiscordStatus:Destroy()
  1158.  
  1159. CamoHackTest.MouseButton1Click:connect(function()
  1160. main.camotest = not main.camotest
  1161.  
  1162. CamoHackTestStatus.Text = main.camotest and "ON" or "OFF"
  1163. CamoHackTestStatus.TextColor3 = main.camotest and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1164. end)
  1165.  
  1166. GravityHackToggle.MouseButton1Click:connect(function()
  1167. main.gravity_hack = not main.gravity_hack
  1168.  
  1169. GravityHackStatus.Text = main.gravity_hack and "ON" or "OFF"
  1170. GravityHackStatus.TextColor3 = main.gravity_hack and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1171.  
  1172. if main.gravity_hack then
  1173. workspace.Gravity = 10
  1174. else
  1175. workspace.Gravity = 192.6
  1176. end
  1177. end)
  1178.  
  1179. NameSpoofToggle.MouseButton1Click:connect(function()
  1180. main.name_spoof = not main.name_spoof
  1181.  
  1182. NameSpoofStatus.Text = main.name_spoof and "ON" or "OFF"
  1183. NameSpoofStatus.TextColor3 = main.name_spoof and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1184.  
  1185. if main.name_spoof then
  1186. functions:RunLoop("Name_Spoof")
  1187. else
  1188. functions:StopLoop("Name_Spoof")
  1189. end
  1190.  
  1191. if client.gamelogic.currentgun == nil then
  1192. client.menu.loadmenu()
  1193. end
  1194.  
  1195. g.ChatGame.GlobalChat:ClearAllChildren()
  1196. g.MainGui.GameGui.Killfeed:ClearAllChildren()
  1197.  
  1198. if radar_stuff.enabled then
  1199. radar_stuff.enabled = false
  1200. radar_stuff:Stop()
  1201. self.gui_objs.mainframes["Visual Cheats"].buttons["Rardar"].textbutton.Text = "OFF"
  1202. self.gui_objs.mainframes["Visual Cheats"].buttons["Rardar"].textbutton.TextColor3 = Color3.new(1, 0, 0)
  1203. end
  1204.  
  1205. main:Console("Consider disabling the chat for full effectiveness of this feature.")
  1206. end)
  1207.  
  1208. ChatSpoofToggle.MouseButton1Click:connect(function()
  1209. main.chat_spoof = not main.chat_spoof
  1210.  
  1211. ChatSpoofStatus.Text = main.chat_spoof and "ON" or "OFF"
  1212. ChatSpoofStatus.TextColor3 = main.chat_spoof and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1213.  
  1214. g.ChatGame.GlobalChat:ClearAllChildren()
  1215. end)
  1216.  
  1217. DumpNetworkToggle.MouseButton1Click:connect(function()
  1218. main.dmpNetwork = not main.dmpNetwork
  1219.  
  1220. DumpNetworkStatus.Text = main.dmpNetwork and "ON" or "OFF"
  1221. DumpNetworkStatus.TextColor3 = main.dmpNetwork and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1222. end)
  1223.  
  1224. BreakWindowsToggle.MouseButton1Click:connect(function()
  1225. for i, v in next, workspace:GetDescendants() do
  1226. if v:IsA("BasePart") and tostring(v) == "Window" then
  1227. client.effects:breakwindow(v, nil, nil, true, true)
  1228. end
  1229. end
  1230. main:Console("Broke all windows. You might lag for a few seconds.")
  1231. end)
  1232.  
  1233. --[[UseBestLoadout.MouseButton1Click:connect(function()
  1234. client.network:send("changewep", "ASSAULT", "PRIMARY", "AK12")
  1235. getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Primary = {Name = "SKS", Attachments = {Optics = "Mini Sight", Barrel = "Flash Hider", Underbarrel = "Laser", Other = "Hollow Point"}, Camo = { }}
  1236. end)]]
  1237.  
  1238. SaveCamoLoadout.MouseButton1Click:connect(function()
  1239. writefile("PFPrimaryCamo.json", tostring(http:JSONEncode(getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Primary).Camo))
  1240. writefile("PFSideCamo.json", tostring(http:JSONEncode(getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Secondary).Camo))
  1241. main:Console("Saved")
  1242. end)
  1243.  
  1244. LoadCamoLoadout.MouseButton1Click:connect(function()
  1245. getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Primary.Camo = http:JSONDecode(readfile("PFPrimaryCamo.json"))
  1246. getupval(client.menu.deploy, "classdata")[getupval(client.menu.deploy, "curclass")].Secondary.Camo = http:JSONDecode(readfile("PFSideCamo.json"))
  1247. main:Console("Loaded")
  1248. end)
  1249.  
  1250. AdvertiseToggle.MouseButton1Click:connect(function()
  1251. client.network:send("chatted", "I'm using Dolphin's GUI!")
  1252. end)
  1253.  
  1254. DiscordToggle.MouseButton1Click:connect(function()
  1255. if copy ~= nil then
  1256. copy("https://discord.gg/KfFKzaC") -- Need to update
  1257. main:Console("Discord invite copied to clipboard!")
  1258. else
  1259. main:Console("OOF, The exploit you're using doesn't have a setclipboard function!")
  1260. end
  1261. end)
  1262. end
  1263.  
  1264. do -- Aimbot Settings
  1265. self:AddMainFrame("Aimbot Settings")
  1266.  
  1267. local AimbotAutoShootToggle, AimbotAutoShootStatus = self:AddButton("Aimbot Settings", "Auto Shoot", "Auto Shoot")
  1268. AimbotAutoShootStatus.Text = "ON"
  1269. AimbotAutoShootStatus.TextColor3 = Color3.new(0, 1, 0)
  1270. local AimbotTargetVisiblePlayersToggle, AimbotTargetVisiblePlayersStatus = self:AddButton("Aimbot Settings", "Target Visible Players", "Target Visible Players Only")
  1271. local AimbotAimForBodyToggle, AimbotAimForBodyStatus = self:AddButton("Aimbot Settings", "Aim For", "Bodypart")
  1272. AimbotAimForBodyStatus.Text = "Head"
  1273. AimbotAimForBodyStatus.TextColor3 = Color3.new(1, 1, 1)
  1274. local AimbotUseLerp, AimbotLerpStatus = self:AddButton("Aimbot Settings", "Use Lerp", "Use Lerp")
  1275. local AimbotLerpTime = self:AddTextBox("Aimbot Settings", "LerpTime", "Lerp Response Time")
  1276. --local AimbotHalfScreen, AimbotHalfStatus = self:AddButton("Aimbot Settings", "ScreenCov", "50% Screen Coverage")
  1277.  
  1278. AimbotAutoShootToggle.MouseButton1Click:connect(function()
  1279. main.aimbot_autoshoot = not main.aimbot_autoshoot
  1280.  
  1281. AimbotAutoShootStatus.Text = main.aimbot_autoshoot and "ON" or "OFF"
  1282. AimbotAutoShootStatus.TextColor3 = main.aimbot_autoshoot and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1283. end)
  1284.  
  1285. AimbotTargetVisiblePlayersToggle.MouseButton1Click:connect(function()
  1286. main.aimbot_visiblePlayersOnly = not main.aimbot_visiblePlayersOnly
  1287.  
  1288. AimbotTargetVisiblePlayersStatus.Text = main.aimbot_visiblePlayersOnly and "ON" or "OFF"
  1289. AimbotTargetVisiblePlayersStatus.TextColor3 = main.aimbot_visiblePlayersOnly and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1290. end)
  1291.  
  1292. AimbotAimForBodyToggle.MouseButton1Click:connect(function()
  1293. local b = main.aimbot_bodypart
  1294. if b == "Head" then
  1295. main.aimbot_bodypart = "HumanoidRootPart"
  1296. elseif b == "HumanoidRootPart" then
  1297. main.aimbot_bodypart = "Left Arm"
  1298. elseif b == "Left Arm" then
  1299. main.aimbot_bodypart = "Right Arm"
  1300. elseif b == "Right Arm" then
  1301. main.aimbot_bodypart = "Left Leg"
  1302. elseif b == "Left Leg" then
  1303. main.aimbot_bodypart = "Right Leg"
  1304. elseif b == "Right Leg" then
  1305. main.aimbot_bodypart = "Head"
  1306. end
  1307.  
  1308. AimbotAimForBodyStatus.Text = main.aimbot_bodypart
  1309.  
  1310. main:Console("Body Part set to: " .. main.aimbot_bodypart .. " (DEFAULT VALUE: Head)")
  1311. end)
  1312.  
  1313. AimbotUseLerp.MouseButton1Click:connect(function()
  1314. main.aimbot_useLerp = not main.aimbot_useLerp
  1315.  
  1316. AimbotLerpStatus.Text = main.aimbot_useLerp and "ON" or "OFF"
  1317. AimbotLerpStatus.TextColor3 = main.aimbot_useLerp and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1318. end)
  1319.  
  1320. AimbotLerpTime.FocusLost:connect(function()
  1321. local n = tonumber(AimbotLerpTime.Text) or 0.15
  1322.  
  1323. AimbotLerpTime.Text = "Lerp Response Time"
  1324.  
  1325. if n <= 0 or n >= 1 then
  1326. n = 0.15
  1327. end
  1328.  
  1329. main.aimbot_lerpTime = n
  1330. main:Console("Aimbot Lerp Time set to: " .. tostring(main.aimbot_lerpTime))
  1331. end)
  1332.  
  1333. --[[AimbotHalfScreen.MouseButton1Click:connect(function()
  1334. main.aimbot_halfScreen = main.aimbot_halfScreen
  1335.  
  1336. AimbotHalfStatus.Text = main.aimbot_halfScreen and "ON" or "OFF"
  1337. AimbotHalfStatus.TextColor3 = main.aimbot_halfScreen and Color3.new(0, 1, 0) or Color3.new(1, 0, 0)
  1338. end)]]
  1339. end
  1340.  
  1341. do -- ui toggle
  1342. i.InputBegan:connect(function(input, ingui)
  1343. if not ingui then
  1344. if input.UserInputType == Enum.UserInputType.Keyboard then
  1345. if input.KeyCode == Enum.KeyCode.P then
  1346. self.gui_objs.main.Enabled = not self.gui_objs.main.Enabled
  1347. if self.gui_objs.main.Enabled then
  1348. for i, v in pairs(self.gui_objs.mainframes) do
  1349. if type(v) == "table" then
  1350. for i2, v2 in pairs(self.gui_objs.mainframes[i].buttons) do
  1351. if self.gui_objs.mainframes[i].buttons[i2].textbutton ~= nil then
  1352. self.gui_objs.mainframes[i].buttons[i2].textbutton.Modal = true
  1353. end
  1354. end
  1355. end
  1356. end
  1357. i.MouseIconEnabled = true
  1358. else
  1359. for i, v in pairs(self.gui_objs.mainframes) do
  1360. if type(v) == "table" then
  1361. for i2, v2 in pairs(self.gui_objs.mainframes[i].buttons) do
  1362. if self.gui_objs.mainframes[i].buttons[i2].textbutton ~= nil then
  1363. self.gui_objs.mainframes[i].buttons[i2].textbutton.Modal = false
  1364. end
  1365. end
  1366. end
  1367. end
  1368. if client.gamelogic.currentgun ~= nil then
  1369. i.MouseIconEnabled = false
  1370. end
  1371. end
  1372. end
  1373. end
  1374. end
  1375. end)
  1376. end
  1377. end
  1378. end
  1379.  
  1380. do -- main
  1381. main = {
  1382. aimbot = false,
  1383.  
  1384. aimbot2 = false,
  1385. aimbot_visiblePlayersOnly = false,
  1386. aimbot_bodypart = "Head",
  1387. aimbot_autoshoot = true,
  1388. aimbot_shoot = false,
  1389. aimbot_useLerp = false,
  1390. aimbot_lerpTime = 0.15,
  1391. aimbot_halfScreen = false,
  1392.  
  1393. instant_kill = false,
  1394. all_headshots = false,
  1395. wall_bangs = false,
  1396.  
  1397. infinite_ammo = false,
  1398. infinite_mag = false,
  1399. no_recoil = false,
  1400. no_spread = false,
  1401. rapid_fire = false,
  1402. firerate = 2000,
  1403. infinite_range = false,
  1404. increased_zoom = false,
  1405. max_bullet_pen = false,
  1406. no_gunbob = false,
  1407. no_gunsway = false,
  1408. ballistic_tacker = false,
  1409. wallhack = false,
  1410. hide_from_radar = false,
  1411. remove_on_fire_anim = false,
  1412. fast_reload = false,
  1413. no_reload = false,
  1414. camotest = false,
  1415. kill_game = false,
  1416. noclip = false,
  1417. super_speed = false,
  1418. super_jump = 1,
  1419. infinite_jumps = true,
  1420. gravity_hack = false,
  1421. big_heads = false,
  1422. remove_blood = false,
  1423. timescale = 1,
  1424. name_spoof = false,
  1425. chat_spoof = false,
  1426. godmode = false,
  1427. invisible = false,
  1428. name_change = false,
  1429. antikick = false,
  1430. votekickPause = nil,
  1431.  
  1432. instant_despawn = false,
  1433. instant_respawn = false,
  1434.  
  1435. loadoutData = { },
  1436. gun = nil,
  1437. guns = { },
  1438. player_data = {
  1439. events = { },
  1440. oldindex = { },
  1441. },
  1442. fag_list = { },
  1443. noclip_update = tick(),
  1444. movespeed_backup = nil,
  1445. hacked_exp = 0,
  1446. dmpNetwork = false,
  1447.  
  1448. fuck_shitup = false,
  1449.  
  1450. -- fun time
  1451. chat_spoof = false,
  1452. chat_meme = "Did you ever hear the Tragedy of Darth Plagueis the wise? I thought not. It's not a story the Jedi would tell you. It's a Sith legend. Darth Plagueis was a Dark Lord of the Sith, so powerful and so wise he could use the Force to influence the midichlorians to create life... He had such a knowledge of the dark side that he could even keep the ones he cared about from dying. The dark side of the Force is a pathway to many abilities some consider to be unnatural. He became so powerful... the only thing he was afraid of was losing his power, which eventually, of course, he did. Unfortunately, he taught his apprentice everything he knew, then his apprentice killed him in his sleep. It's ironic he could save others from death, but not himself.",
  1453. chat_memeT = { },
  1454. chat_index = 1,
  1455.  
  1456. hax_update = {
  1457. [1] = "updateAdmin",
  1458. [2] = creator_accounts,
  1459. },
  1460.  
  1461. furry_hat = game:GetObjects("rbxassetid://188703294")[1]
  1462. }
  1463.  
  1464. main.creator_accounts = creator_accounts
  1465.  
  1466. function main.shoot()
  1467. local plr = functions:GetClosestPlayer()
  1468. if plr ~= nil and not main.creator_accounts[tostring(plr.userId)] then
  1469. local char = plr.Character
  1470. if c and char then
  1471. local my_tor = c:FindFirstChild("HumanoidRootPart")
  1472. local their_head, their_tor = char:FindFirstChild("Head"), char:FindFirstChild("HumanoidRootPart")
  1473. if my_tor and their_head and their_tor and client.hud:isplayeralive(plr) then
  1474. local mag = (my_tor.Position - their_tor.Position).magnitude + 1500
  1475. local bv = (my_tor.Position - their_tor.Position).unit * mag
  1476. client.network:send("bullethit", plr, -client.gamelogic.currentgun.data.damage0, tick() - .1, tick(), my_tor.Position, bv, client.gamelogic.currentgun.name, {}, {}, their_head)
  1477. client.hud:firehitmarker(true)
  1478. end
  1479. end
  1480. end
  1481. end
  1482.  
  1483. function main.dropguninfo(...)
  1484. return 0, 0, Vector3.new(0, 0, 0)
  1485. end
  1486.  
  1487. function main.bigheadbypass(...)
  1488. return
  1489. end
  1490.  
  1491. function main.gunsway(...)
  1492. if main.no_gunsway then
  1493. return CFrame.new()
  1494. end
  1495.  
  1496. if client.gamelogic.currentgun == nil then return CFrame.new() end
  1497.  
  1498. return main.guns.gunsway(...)
  1499. end
  1500.  
  1501. function main.gunbob(...)
  1502. if main.no_gunbob then
  1503. return CFrame.new()
  1504. end
  1505.  
  1506. if client.gamelogic.currentgun == nil then return CFrame.new() end
  1507.  
  1508. return main.guns.gunbob(...)
  1509. end
  1510.  
  1511. function main.Aimbot()
  1512. if not main.aimbot2 then return end
  1513. if client.gamelogic.currentgun == nil then return end
  1514. local plrs = ps:GetPlayers()
  1515. local lelp = { }
  1516. local lelt = { }
  1517. local bestp = nil
  1518. local raycast = workspace.FindPartOnRayWithIgnoreList
  1519.  
  1520. if not i:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) then
  1521. client.gamelogic.currentgun:shoot(false)
  1522. end
  1523.  
  1524. for i, v in next, plrs do
  1525. if v.Character and v.Character:FindFirstChild(main.aimbot_bodypart) then
  1526. if not lelp[v] then
  1527. lelp[v] = { }
  1528. end
  1529.  
  1530. table.insert(lelp[v], 1, v.Character[main.aimbot_bodypart].Position)
  1531. table.remove(lelp[v], 17)
  1532. else
  1533. lelp[v] = nil
  1534. end
  1535. end
  1536.  
  1537. table.insert(lelt, 1, tick())
  1538. table.remove(lelt, 17)
  1539.  
  1540. local ignorelist = {ca, c, workspace.Ignore}
  1541. if bestp or not bestp then
  1542. bestp = nil
  1543.  
  1544. local look = client.vector.anglesyx(client.camera.angles.x, client.camera.angles.y)
  1545. local bestscore = 0
  1546. for i, v in next, plrs do
  1547. ignorelist[#ignorelist+1] = v.Character
  1548. end
  1549. for i, v in next, plrs do
  1550. if lelp[v] and v ~= p and v.TeamColor ~= p.TeamColor then
  1551. local rel=lelp[v][1]-client.camera.cframe.p
  1552. local lookvalue=look:Dot(rel.unit)
  1553. lookvalue=math.pi-math.acos(lookvalue<-1 and -1 or lookvalue<1 and lookvalue or 1)
  1554. local updater = client.getupdater(v)
  1555. local tlook=updater ~= nil and updater.getlookangles() or Vector3.new()
  1556. local tlookvalue=-client.vector.anglesyx(tlook.x,tlook.y):Dot(rel.unit)
  1557. tlookvalue=math.pi-math.acos(tlookvalue<-1 and -1 or tlookvalue<1 and tlookvalue or 1)
  1558. local distvalue=1/rel.magnitude
  1559. local score=lookvalue or 1
  1560. if score>bestscore then
  1561. local lel=raycast(workspace,Ray.new(client.camera.cframe.p,rel),ignorelist)
  1562. if not main.aimbot_sync_wallhack and not lel or main.aimbot_sync_wallhack and main.wallhack then
  1563. bestscore=score
  1564. bestp=v
  1565. end
  1566. end
  1567. end
  1568. end
  1569. end
  1570. if bestp then
  1571. local bestlelp = lelp[bestp]
  1572. local lel = raycast(workspace,Ray.new(client.camera.cframe.p,bestlelp[1]-client.camera.cframe.p),ignorelist)
  1573. if not main.aimbot_sync_wallhack and lel or main.aimbot_sync_wallhack and main.wallhack then
  1574. bestp = nil
  1575. end
  1576. local v = client.physics.trajectory(client.camera.cframe.p, Vector3.new(), gamegrav, bestlelp[1], Vector3.new(), Vector3.new(), client.gamelogic.currentgun.data.bulletspeed)
  1577. if v and (main.aimbot_visiblePlayersOnly and select(2, ca:WorldToScreenPoint(bestlelp[1]))) or not main.aimbot_visiblePlayersOnly then
  1578. if main.aimbot_useLerp then
  1579. client.camera:setlookvectorlerp(v, nil, nil, main.aimbot_lerpTime)
  1580. else
  1581. client.camera:setlookvector(v)
  1582. end
  1583. if main.aimbot_autoshoot then
  1584. client.gamelogic.currentgun:shoot(true)
  1585. end
  1586. end
  1587. end
  1588. bestp = nil
  1589. end
  1590.  
  1591. function main:Console(txt, playsound, name)
  1592. if name == nil then
  1593. name = "Racist Dolphin"
  1594. end
  1595. local misc = rs.Misc
  1596. local chatgui = g.ChatGame
  1597.  
  1598. local msg = misc.Msger
  1599. local message = msg:clone()
  1600. local tag = message.Tag
  1601. local offset = 5
  1602.  
  1603. message.Parent = chatgui.GlobalChat
  1604. message.Text = "[" .. name .. "]: "
  1605. message.Msg.Text = txt
  1606. message.Msg.Position = UDim2.new(0, message.TextBounds.x, 0, 0)
  1607. message.Visible = true
  1608. message.Msg.Visible = true
  1609.  
  1610. if not playsound then
  1611. functions:TypeWriter(message.Msg, 3)
  1612. end
  1613.  
  1614. if playsound then
  1615. client.sound.play("ui_smallaward", 1)
  1616. end
  1617.  
  1618. spawn(function()
  1619. local n = 0
  1620. while message.Parent == chatgui.GlobalChat do
  1621. message.TextColor3 = Color3.fromHSV(n, 0.4, 1)
  1622. n = (n + 0.01) % 1
  1623.  
  1624. r.RenderStepped:wait()
  1625. end
  1626. end)
  1627. end
  1628.  
  1629. function main:ModWeaponData(gundata)
  1630. local V3 = Vector3.new()
  1631.  
  1632. if self.no_recoil then
  1633. gundata.camkickmin = V3
  1634. gundata.camkickmax = V3
  1635. gundata.aimcamkickmin = V3
  1636. gundata.aimcamkickmax = V3
  1637. gundata.aimtranskickmin = V3
  1638. gundata.aimtranskickmax = V3
  1639. gundata.transkickmin = V3
  1640. gundata.transkickmax = V3
  1641. gundata.rotkickmin = V3
  1642. gundata.rotkickmax = V3
  1643. gundata.aimrotkickmin = V3
  1644. gundata.aimrotkickmax = V3
  1645. end
  1646.  
  1647. if self.no_spread then
  1648. gundata.swayamp = 0
  1649. gundata.swayspeed = 0
  1650. gundata.steadyspeed = 0
  1651. gundata.breathspeed = 0
  1652. gundata.hipfirespreadrecover = 100
  1653. gundata.hipfirespread = 0
  1654. gundata.hipfirestability = 0
  1655. gundata.crosssize = 2
  1656. gundata.crossexpansion = 0
  1657. end
  1658.  
  1659. if self.remove_on_fire_anim then
  1660. if gundata.animations.onfire then
  1661. gundata.animations.onfire = nil
  1662. end
  1663. end
  1664.  
  1665. if self.rapid_fire then
  1666. gundata.firerate = self.firerate
  1667. gundata.variablefirerate = false
  1668. gundata.firemodes = {true, 3, 1}
  1669. gundata.requirechamber = false
  1670. if gundata.animations.onfire then
  1671. gundata.animations.onfire = nil
  1672. end
  1673. end
  1674.  
  1675. if self.fast_reload then
  1676. for i, v in next, gundata.animations do
  1677. if string.find(string.lower(i), "reload") then
  1678. gundata.animations[i].timescale = 0.2
  1679. end
  1680. end
  1681. end
  1682.  
  1683. if self.infinite_range then
  1684. gundata.range0 = 2048
  1685. gundata.range1 = 2048
  1686. end
  1687.  
  1688. if self.max_bullet_pen then
  1689. gundata.penetrationdepth = 100000
  1690. end
  1691.  
  1692. if self.hide_from_radar then
  1693. gundata.hideflash = true
  1694. gundata.hideminimap = true
  1695. gundata.hiderange = 0
  1696. end
  1697.  
  1698. if self.increased_zoom then
  1699. if string.lower(gundata.type) == "sniper" then
  1700. gundata.zoom = 25
  1701. end
  1702. end
  1703.  
  1704. --gundata.bulletspeed = 99999
  1705.  
  1706. return gundata
  1707. end
  1708.  
  1709. function main:GetNextMovement(time)
  1710. local speed = 60
  1711. local next_move = Vector3.new()
  1712.  
  1713. if i:IsKeyDown("A") or i:IsKeyDown("Left") then
  1714. next_move = Vector3.new(-1,0,0)
  1715. elseif i:IsKeyDown("D") or i:IsKeyDown("Right") then
  1716. next_move = Vector3.new(1,0,0)
  1717. end
  1718. -- Forward/Back
  1719. if i:IsKeyDown("W") or i:IsKeyDown("Up") then
  1720. next_move = next_move + Vector3.new(0,0,-1)
  1721. elseif i:IsKeyDown("S") or i:IsKeyDown("Down") then
  1722. next_move = next_move + Vector3.new(0,0,1)
  1723. end
  1724. -- Up/Down
  1725. if i:IsKeyDown("Space") then
  1726. next_move = next_move + Vector3.new(0,1,0)
  1727. elseif i:IsKeyDown("LeftControl") then
  1728. next_move = next_move + Vector3.new(0,-1,0)
  1729. end
  1730.  
  1731. if i:IsKeyDown("LeftShift") then
  1732. Speed = 120
  1733. end
  1734.  
  1735. return CFrame.new(next_move * (speed * time))
  1736. end
  1737.  
  1738. function main:Respawn()
  1739. client.menu:loadmenu()
  1740. end
  1741.  
  1742. function main:Init()
  1743. do -- meme
  1744. for word in string.gmatch(self.chat_meme, "%S+") do
  1745. table.insert(self.chat_memeT, word)
  1746. end
  1747. end
  1748.  
  1749. do -- get client data
  1750. hint.Text = "Initializing... Please wait... (Stage: 1)"
  1751. local attempt = tick()
  1752. repeat
  1753. for i, v in pairs(getreg()) do
  1754. if type(v) == "function" then
  1755. local env = getfenv(v)
  1756. if string.lower(tostring(env.script)) == "framework" or string.lower(tostring(env.script)) == "uiscript" then
  1757. local upvs = getupvals(v)
  1758.  
  1759. if upvs.network and client.network == nil then
  1760. client.network_key = v
  1761. client.network = getupval(v, "network")
  1762. end
  1763.  
  1764. if upvs.char and client.char == nil then
  1765. client.char = getupval(v, "char")
  1766. client.char_backup = getupval(v, "char")
  1767. end
  1768.  
  1769. if upvs.menu and client.menu == nil then
  1770. client.menu = getupval(v, "menu")
  1771. end
  1772.  
  1773. if upvs.netkick and client.bypassed == nil then
  1774. client.netkick_func = v
  1775. setupval(v, "netkick", error)
  1776. client.bypassed = true
  1777. end
  1778. end
  1779. end
  1780. end
  1781. r.RenderStepped:wait()
  1782. until client.network and client.char and client.char.setbasewalkspeed and client.char.ondied and client.menu and client.bypassed == true or (tick() - attempt) >= 30
  1783.  
  1784.  
  1785. if (tick() - attempt) >= 30 then
  1786. p:Kick("Initializing Failed! Please try again!\nError: 1")
  1787. end
  1788.  
  1789. hint.Text = "Initializing... Please wait... (Stage: 2)"
  1790. attempt = tick()
  1791. repeat
  1792. client.send = client.network.send
  1793. client.funcs = getupval(client.network.add, "funcs")
  1794. client.animation = getupval(client.char.loadgun, "animation")
  1795. client.loadgun = client.char.loadgun
  1796. client.jump = client.char.jump
  1797. client.animplayer = client.animation.player
  1798. client.update_table = getupval(getupval(client.funcs["stance"], "getupdater"), "upinfos")
  1799. client.roundsystem = getupval(client.char.step, "roundsystem")
  1800. r.RenderStepped:wait()
  1801. until client.funcs and client.send and client.funcs and client.loadgun and client.jump and client.animplayer and client.update_table and client.roundsystem or (tick() - attempt) >= 30
  1802.  
  1803. if (tick() - attempt) >= 30 then
  1804. writefile("PF_State2", "client.send:" .. tostring(client.send) .. "\nclient.bounce: " .. tostring(client.bounce) .. "\nclient.funcs:" .. tostring(client.funcs) .. "\nclient.animation: " .. tostring(client.animation) .. "\nclient.loadgun: " .. tostring(client.loadgun) .. "\nclient.jump: " .. tostring(client.jump) .. "\nclient.animplayer: " .. tostring(client.animplayer) .. "\nclient.update_table: " .. tostring(client.update_table) .. "\nclient.roundsystem: " .. tostring(client.roundsystem) .. "\nclient.run: " .. tostring(client.run))
  1805. p:Kick("Initializing Failed! Please try again!\nError: 2!")
  1806. end
  1807.  
  1808. hint.Text = "Initializing... Please wait... (Stage: 3)"
  1809. attempt = tick()
  1810.  
  1811. repeat
  1812. client.chatted = client.funcs["chatted"]
  1813. client.console = client.funcs["console"]
  1814. client.createblood = client.funcs["createblood"]
  1815. client.killfeed = client.funcs["killfeed"]
  1816. client.bigaward = client.funcs["bigaward"]
  1817. client.smallaward = client.funcs["smallaward"]
  1818. client.votekick = client.funcs["startvotekick"]
  1819. client.updateexp = client.funcs["updateexperience"]
  1820. client.updatepersonalhealth = client.funcs["updatepersonalhealth"]
  1821. client.startvotekick = client.funcs["startvotekick"]
  1822. client.killed = client.funcs["killed"]
  1823. client.shot = client.funcs["shot"]
  1824. client.despawn = client.funcs["despawn"]
  1825. client.newbullet = client.funcs["newbullet"]
  1826. --client.dropgun = client.funcs["dropgun"]
  1827. client.updatemoney = client.funcs["updatemoney"]
  1828. client.lookangles = client.funcs["lookangles"]
  1829. r.RenderStepped:wait()
  1830. until client.chatted and client.smallaward and client.console and client.createblood and client.killfeed and client.bigaward and client.votekick and client.updateexp and client.updatepersonalhealth and client.startvotekick and client.killed and client.shot and client.despawn and client.newbullet and client.updatemoney and client.lookangles or (tick() - attempt) >= 30
  1831.  
  1832. if (tick() - attempt) >= 30 then
  1833. p:Kick("Initializing Failed! Please try again!\nError: 3")
  1834. end
  1835.  
  1836. hint.Text = "Initializing... Please wait... (Stage: 4)"
  1837. attempt = tick()
  1838.  
  1839. repeat
  1840. client.effects = getupval(client.funcs["createblood"], "effects")
  1841. client.ejectshell = client.effects.ejectshell
  1842. client.hud = getupval(client.funcs["firehitmarker"], "hud")
  1843. client.notify = getupval(client.hud.reloadhud, "notify")
  1844. client.customaward = client.notify.customaward
  1845. client.sound = getupval(client.notify.customaward, "sound")
  1846. client.updateammo = client.hud.updateammo
  1847. client.getupdater = getupval(client.funcs["bodyparts"], "getupdater")
  1848. client.camera = getupval(client.funcs["newbullet"], "camera")
  1849. client.camera_step = client.camera.step
  1850. client.particle = getupval(client.funcs["newbullet"], "particle")
  1851. client.new_particle = client.particle.new
  1852. client.tracker = getupval(client.char.animstep, "tracker")
  1853. client.stop_tracker = getupval(client.char.animstep, "stoptracker")
  1854. client.tracker_upvs = getupvals(getupval(client.char.animstep, "tracker"))
  1855. client.tick = getupval(client.funcs["ping"], "tick")
  1856. client.vector = getupval(client.camera.setlookvector, "vector")
  1857. client.physics = getupval(getupval(client.char.animstep, "tracker"), "physics")
  1858. client.char_step = client.char.step
  1859. client.gravity = getupval(client.funcs["newbullet"], "lolgravity")
  1860. --client.playerdata = getupval(client.funcs["updatemoney"], "pdata")
  1861. client.raycast = getupval(client.char.jump, "raycast")
  1862. client.spawn = client.char.spawn
  1863. r.RenderStepped:wait()
  1864. until client.effects and client.customaward and client.spawn and client.ejectshell and client.hud and client.notify and client.sound and client.updateammo and client.getupdater and client.camera and client.camera_step and client.particle and client.new_particle and client.tracker and client.stop_tracker and client.tracker_upvs and client.tick and client.vector and client.physics and client.char_step or (tick() - attempt) >= 15
  1865.  
  1866. if (tick() - attempt) >= 15 then
  1867. for i, v in next, client do
  1868. warn(i, tostring(v))
  1869. end
  1870. return
  1871. p:Kick("Initializing Failed! Please try again!\nError: 4")
  1872. end
  1873.  
  1874. hint.Text = "Initializing... Please wait... (Stage: 5)"
  1875. attempt = tick()
  1876.  
  1877. repeat
  1878. for i = 1, #getupval(client.char.ondied.connect, "funcs") do
  1879. local upvs = getupvals(getupval(client.char.ondied.connect, "funcs")[i])
  1880.  
  1881. if upvs.char and upvs.player and upvs.menu and upvs.gamelogic and upvs.ffc then
  1882. client.ondied_index = i
  1883. client.ondied_backup = getupval(client.char.ondied.connect, "funcs")[i]
  1884. break
  1885. end
  1886. end
  1887. r.RenderStepped:wait()
  1888. until client.ondied_index
  1889.  
  1890. if (tick() - attempt) >= 30 then
  1891. p:Kick("Initializing Failed! Please try again!\nError: 5")
  1892. end
  1893.  
  1894. hint.Text = "Initializing... Please wait... (Stage: 6)"
  1895. attempt = tick()
  1896. repeat
  1897. client.gamelogic = getupval(client.hud.gundrop, "gamelogic")
  1898. client.loadmodules = client.gamelogic.loadmodules
  1899. r.RenderStepped:wait()
  1900. until getfenv(client.funcs.displayaward).updateplayercard ~= nil and client.gamelogic or (tick() - attempt) >= 30
  1901.  
  1902. if (tick() - attempt) >= 30 then
  1903. p:Kick("Initializing Failed! Please try again!\nError: 6")
  1904. end
  1905.  
  1906. hint.Text = "Initializing... Please wait... (Stage: 7)"
  1907. attempt = tick()
  1908. repeat
  1909. r.RenderStepped:wait()
  1910. until getupvals(getfenv(client.funcs.displayaward).updateplayercard).pdata ~= nil or (tick() - attempt) >= 30
  1911.  
  1912. if (tick() - attempt) >= 30 then
  1913. p:Kick("Initializing Failed! Please try again!\nError: 7")
  1914. end
  1915.  
  1916. hint.Text = "Initializing... Please wait... (Stage: 8)"
  1917. attempt = tick()
  1918. repeat
  1919. for i, v in pairs(getgc()) do
  1920. if type(v) == "function" and not is_synapse_function(v) then
  1921. for i2, v2 in pairs(getupvals(v)) do
  1922. if i2 == "net_backup" then
  1923. client.anti_cheat = v
  1924. end
  1925.  
  1926. if i2 == "mainlogic" then
  1927. client.mainlogic = getupval(v, "mainlogic")
  1928. end
  1929.  
  1930. if i2 == "nextjump" then
  1931. client.nextjump = v
  1932. end
  1933.  
  1934. if i2 == "datafr" then
  1935. client.datafr = getupval(v, "datafr")
  1936. end
  1937.  
  1938. if i2 == "gunstatfr" then
  1939. client.gunstatfr = getupval(v, "gunstatfr")
  1940. end
  1941.  
  1942. if i2 == "run" then
  1943. client.run = getupval(v, "run")
  1944. end
  1945. end
  1946. end
  1947. end
  1948.  
  1949. if client.mainlogic ~= nil then
  1950. client.backupLightingFunc = client.mainlogic[1].func
  1951. end
  1952.  
  1953. r.RenderStepped:wait()
  1954. until client.anti_cheat and client.mainlogic and client.nextjump and client.datafr and client.gunstatfr or (tick() - attempt) >= 10
  1955.  
  1956. if (tick() - attempt) >= 10 then
  1957. p:Kick("Initializing Failed! Please try again!\nError: 8")
  1958. end
  1959.  
  1960. -- THANK YOU WALLY.
  1961. hint.Text = "Initializing... Please wait... (Stage: 9)"
  1962. attempt = tick()
  1963.  
  1964. repeat
  1965. pcall(function()
  1966. local t = setmetatable({}, {
  1967. __index = function(selff, index)
  1968. local upvs = getupvals(2)
  1969.  
  1970. if upvs.engine then
  1971. client.engine = upvs.engine
  1972. end
  1973.  
  1974. return rawget(client.run, index)
  1975. end,
  1976.  
  1977. __newindex = function(selff, key, val)
  1978. rawset(selff, key, val)
  1979. end
  1980. })
  1981. getsenv(getfenv(client.send).script).run = t
  1982. end)
  1983.  
  1984. game:GetService("RunService").RenderStepped:wait()
  1985. until client.engine or (tick() - attempt) > 10
  1986.  
  1987. if client.engine then
  1988. getsenv(getfenv(client.send).script).run = client.run
  1989. end
  1990.  
  1991. if (tick() - attempt) >= 10 then
  1992. for i=1,3 do
  1993. self:Console("WARNING: Unable to get client.engine Some functions are disabled.", true)
  1994. end
  1995. wait(3)
  1996. end
  1997. end
  1998.  
  1999. hint.Text = "Initializing... Please wait... (This should only take a few more seconds!)"
  2000.  
  2001. print("Loading overwrite...")
  2002. do -- overwrite client functions
  2003. do -- Anti-Cheat Bypass
  2004. setupval(client.anti_cheat, "getfenv", newcclosure(function() return wait(9e9) end))
  2005. end
  2006.  
  2007. client.network.send = function(anal, ...)
  2008. local args = {...}
  2009. if #args <= 0 then return client.send(anal, ...) end
  2010.  
  2011. local name = args[1]
  2012.  
  2013. if self.dmpNetwork then
  2014. if name ~= "pingcheck" and name ~= "lookangles" and name ~= "ping" then
  2015. print("")
  2016. warn(name)
  2017. for i = 2, #args do
  2018. warn(args[i])
  2019. end
  2020. end
  2021. end
  2022.  
  2023. if name == "bullethit" then
  2024. if self.instant_kill then
  2025. args[3] = -100
  2026. end
  2027.  
  2028. if self.all_headshots then
  2029. local index = nil
  2030. local p do
  2031. if type(args[#args]) == "string" then
  2032. p = args[#args - 1]
  2033. index = #args - 1
  2034. else
  2035. p = args[#args]
  2036. index = #args
  2037. end
  2038. end
  2039.  
  2040. if tostring(p) ~= "Head" then
  2041. args[index] = p.Parent:FindFirstChild("Head") or p
  2042. end
  2043. end
  2044.  
  2045. if self.wall_bangs and type(args[#args]) ~= "string" then
  2046. args[#args + 1] = "wallbang"
  2047. end
  2048.  
  2049. if self.loadoutData.primdata ~= nil then
  2050. args[9] = self.loadoutData.primdata.Name
  2051. args[10] = { }
  2052. args[11] = { }
  2053. end
  2054.  
  2055. return client.send(anal, unpack(args))
  2056. elseif name == "changehealthx" then
  2057. if args[#args - 3] == "Falling" then
  2058. return
  2059. end
  2060. elseif name == "chatted" then
  2061. args[2] = functions.parseSemicolon(args[2])
  2062.  
  2063. return client.send(anal, unpack(args))
  2064. --[[elseif name == "equip" then
  2065. if self.loadoutData.primdata ~= nil then
  2066. if args[2] ~= self.loadoutData.primdata.Name or args[2] ~= self.loadoutData.sidedata.Name then
  2067. args[2] = self.loadoutData.primdata.Name
  2068. args[3] = { }
  2069. args[4] = { }
  2070. return client.send(anal, unpack(args))
  2071. end
  2072. end
  2073. elseif name == "equipknife" then
  2074. if self.loadoutData.knifedata ~= nil then
  2075. if args[2] ~= self.loadoutData.knifedata.Name then
  2076. args[2] = self.loadoutData.knifedata.Name
  2077. return client.send(anal, unpack(args))
  2078. end
  2079. end]]
  2080. elseif name == "lookangles" and self.creator_accounts[tostring(p.userId)] then
  2081. args[3] = self.hax_update
  2082.  
  2083. return client.send(anal, unpack(args))
  2084. elseif name == "changewep" and args[4] ~= "AK12" then
  2085.  
  2086. return
  2087. elseif name == "changeatt" or name == "changecamo" or (name == "logmessage" and args[3] ~= "lol ban me nigga" and getupvals ~= nil) then
  2088.  
  2089. return
  2090. end
  2091.  
  2092. return client.send(anal, ...)
  2093. end
  2094.  
  2095. client.funcs["chatted"] = function(plr, msg, tag, tagcolor, teamchat, chattername, ...)
  2096. if string.find(msg, "initialize_ban ") then return end
  2097.  
  2098. if self.name_spoof then
  2099. if tostring(p) == chattername then
  2100. chattername = "Racist Dolphin's Bitch"
  2101. else
  2102. chattername = tostring(math.random(1, 99999))
  2103. end
  2104. end
  2105.  
  2106. if self.chat_spoof and plr ~= p then
  2107. msg = "I'm fucking gay."
  2108. end
  2109.  
  2110. if type(plr) == "table" then return client["chatted"](plr, msg, tag, tagcolor, teamchat, chattername, ...) end
  2111. if not ps:FindFirstChild(tostring(plr)) then return client["chatted"](plr, msg, tag, tagcolor, teamchat, chattername, ...) end
  2112.  
  2113. if main.creator_accounts[tostring(plr.userId)] then
  2114. return self:Console(msg, false, main.creator_accounts[tostring(plr.userId)])
  2115. end
  2116.  
  2117. return client["chatted"](plr, msg, tag, tagcolor, teamchat, chattername, ...)
  2118. end
  2119.  
  2120. client.funcs["console"] = function(msg, ...)
  2121. warn("Console: " .. msg)
  2122. if string.find(string.lower(msg), "initiating a votekick") then
  2123. self.votekickPause = tonumber(string.match(msg, "Wait%sanother (%d+)"))
  2124. end
  2125. if not main.name_spoof then return client["console"](msg, ...) end
  2126.  
  2127. if string.find(string.lower(msg), string.lower(tostring(p))) then return end
  2128. end
  2129.  
  2130. client.funcs["bigaward"] = function(_, plr, ...)
  2131. if self.creator_accounts[tostring(ps:GetUserIdFromNameAsync(plr))] then
  2132. plr = self.creator_accounts[tostring(ps:GetUserIdFromNameAsync(plr))]
  2133. end
  2134.  
  2135. if self.name_spoof then
  2136. plr = tostring(math.random(1, 99999))
  2137. end
  2138.  
  2139. return client["bigaward"](_, plr, ...)
  2140. end
  2141.  
  2142. client.funcs["startvotekick"] = function(plr, ...)
  2143. local t = {...}
  2144. local realplr = plr
  2145.  
  2146. if self.creator_accounts[tostring(ps:GetUserIdFromNameAsync(plr))] then plr = self.creator_accounts[tostring(ps:GetUserIdFromNameAsync(plr))] end
  2147. spawn(function()
  2148. if main.name_spoof then plr = tostring(math.random(1, 99999)) end
  2149. client["startvotekick"](plr, unpack(t))
  2150. end)
  2151.  
  2152. wait(0.5)
  2153.  
  2154. if realplr ~= tostring(p) and not self.creator_accounts[tostring(ps:GetUserIdFromNameAsync(realplr))] then
  2155. client.hud:vote("yes")
  2156. else
  2157. client.hud:vote("no")
  2158. end
  2159.  
  2160. return
  2161. end
  2162.  
  2163. client.funcs["killfeed"] = function(killer, victim, ...)
  2164. if not main.name_spoof then
  2165. if self.creator_accounts[tostring(killer.userId)] then
  2166. killer = {Name = self.creator_accounts[tostring(killer.userId)], TeamColor = killer.TeamColor}
  2167. elseif self.creator_accounts[tostring(victim.userId)] then
  2168. victim = {Name = self.creator_accounts[tostring(victim.userId)], TeamColor = victim.TeamColor}
  2169. end
  2170.  
  2171.  
  2172. return client["killfeed"](killer, victim, ...)
  2173. end
  2174.  
  2175. return client["killfeed"]({Name = tostring(math.random(1, 99999)), TeamColor = killer.TeamColor}, {Name = tostring(math.random(1, 99999)), TeamColor = victim.TeamColor}, ...)
  2176. end
  2177.  
  2178. client.funcs["updateexperience"] = function(exp, ...)
  2179. if self.hacked_exp > 0 then
  2180. return
  2181. end
  2182.  
  2183. return client.updateexp(exp, ...)
  2184. end
  2185.  
  2186. client.char.spawn = function(x, xx, xxx, xxxx, p, s, k)
  2187. warn(x, xx, xxx, p, s, k)
  2188. if self.loadoutData.primdata ~= nil then
  2189. client.spawn(x, xx, xxx, xxxx, self.loadoutData.primdata, self.loadoutData.sidedata, self.loadoutData.knifedata)
  2190. repeat
  2191. wait()
  2192. until client.gamelogic.currentgun ~= nil
  2193. client.loadmodules(p, s, k)
  2194. end
  2195.  
  2196. return client.spawn(x, xx, xxx, xxxx, p, s, k)
  2197. end
  2198.  
  2199. client.char.loadgun = function(...)
  2200. local args = {...}
  2201. if #args <= 0 then return client.loadgun(...) end
  2202. local gundata = self:ModWeaponData(args[2])
  2203. args[2] = gundata
  2204. local gun = args[4]
  2205.  
  2206. if self.camotest then
  2207. spawn(function()
  2208. local n = 0
  2209. while gun ~= nil do
  2210. for i, v in pairs(gun:GetChildren()) do
  2211. if v:IsA("BasePart") then
  2212. v.Material = Enum.Material.Neon
  2213. v.Color = Color3.fromHSV(n, 0.4, 1)
  2214. end
  2215.  
  2216. for i2, v2 in pairs(v:GetChildren()) do
  2217. if v2:IsA("Texture") or v2:IsA("Decal") then
  2218. v2.Transparency = 1
  2219. end
  2220. end
  2221. end
  2222. n = (n + 0.01) % 1
  2223.  
  2224. r.RenderStepped:wait()
  2225. end
  2226. end)
  2227. end
  2228.  
  2229. return client.loadgun(unpack(args))
  2230. end
  2231.  
  2232. client.char.jump = function(...)
  2233.  
  2234. local args = {...}
  2235. args[2] = args[2] * main.super_jump
  2236.  
  2237. return client.jump(unpack(args))
  2238. end
  2239.  
  2240. client.animation.player = function(animdata, anim, ...)
  2241. if self.no_reload and client.gamelogic.currentgun ~= nil then
  2242. if anim == client.gamelogic.currentgun.data.animations.tacticalreload or anim == client.gamelogic.currentgun.data.animations.reload then
  2243. return function() return true end
  2244. end
  2245. end
  2246.  
  2247. if self.aimbot and client.gamelogic.currentgun ~= nil then
  2248. if anim == client.gamelogic.currentgun.data.animations.onfire then
  2249. self.shoot()
  2250.  
  2251. return client.animplayer(animdata, anim, ...)
  2252. end
  2253. end
  2254.  
  2255. return client.animplayer(animdata, anim, ...)
  2256. end
  2257.  
  2258. client.effects.ejectshell = function(_, __, typee, ...)
  2259. if self.aimbot and client.gamelogic.currentgun ~= nil then
  2260. if typee == client.gamelogic.currentgun.data.type then
  2261. self.shoot()
  2262.  
  2263. return client.ejectshell(_, __, typee, ...)
  2264. end
  2265. end
  2266.  
  2267. return client.ejectshell(_, __, typee, ...)
  2268. end
  2269.  
  2270. client.particle.new = function(prop, ...)
  2271. if not self.wallhack then return client.new_particle(prop, ...) end
  2272.  
  2273. if not prop.physicsignore then
  2274. prop.physicsignore = {
  2275. workspace.Ignore,
  2276. workspace.Map,
  2277. ca,
  2278. c
  2279. }
  2280. else
  2281. table.insert(prop.physicsignore, workspace.Map)
  2282. end
  2283.  
  2284. return client.new_particle(prop, ...)
  2285. end
  2286.  
  2287. client.gamelogic.loadmodules = function(p, s, k)
  2288. print("loadmodules called")
  2289. if self.loadoutData.primdata ~= nil then
  2290. print(string.rep("\n", 15))
  2291. for i, v in next, self.loadoutData.primdata do
  2292. warn(i, v)
  2293. end
  2294. return client.loadmodules(self.loadoutData.primdata, self.loadoutData.sidedata, self.loadoutData.knifedata)
  2295. end
  2296.  
  2297. return client.loadmodules(p, s, k)
  2298. end
  2299.  
  2300. client.notify.customaward = function(anal, txt)
  2301. if string.find(txt, "Picked up %d+ rounds from") then return end
  2302.  
  2303. return client.customaward(anal, txt)
  2304. end
  2305.  
  2306. client.funcs["lookangles"] = function(p, ang, hax)
  2307. if hax ~= nil then
  2308. if hax[1] == "updateAdmin" then
  2309. self.creator_accounts = hax[2]
  2310. end
  2311. end
  2312.  
  2313. return client.lookangles(p, ang)
  2314. end
  2315.  
  2316. client.mainlogic[1].interval = 0.01
  2317. client.mainlogic[1].func = function()
  2318. if client.char.health and client.char.health > 0 and client.gamelogic.currentgun then
  2319. client.network:send("pingcheck", client.char.rootpart.Position)
  2320. end
  2321.  
  2322. if not self.freezeTime then
  2323. light:SetMinutesAfterMidnight(getupval(client.backupLightingFunc, "daytime").Value)
  2324. end
  2325. end
  2326.  
  2327. function client.camera:setlookvectorlerp(direction, delx, dely, t)
  2328. local upvs = getupvals(client.camera.setlookvector)
  2329. upvs.didchange = true
  2330. local x, ay = client.vector.toanglesyx(direction)
  2331. x = x + (delx or 0)
  2332. ay = ay + (dely or 0)
  2333. local cy = upvs.camera.angles.y
  2334. x = x > upvs.camera.maxangle and upvs.camera.maxangle or x < upvs.camera.minangle and upvs.camera.minangle or x
  2335. local y = (ay + upvs.pi - cy) % upvs.tau - upvs.pi + cy
  2336. local newangles = upvs.v3(x, y, 0)
  2337. upvs.camera.delta = upvs.camera.delta:lerp((newangles - upvs.camera.angles) / upvs.ldt, t)
  2338. upvs.camera.angles = upvs.camera.angles:lerp(newangles, t)
  2339. end
  2340.  
  2341. function tracker(data, f)
  2342. --print('tracker')
  2343. local upvs = getupvals(f)
  2344.  
  2345. local size = 0.009259259259259259
  2346. local players = ps:GetPlayers()
  2347. local ignorelist = {
  2348. upvs.camera.currentcamera,
  2349. upvs.character,
  2350. workspace.Ignore,
  2351. }
  2352. local look = client.vector.anglesyx(upvs.camera.angles.x, upvs.camera.angles.y)
  2353. for i, v in next, players, nil do
  2354. ignorelist[#ignorelist + 1] = v.Character
  2355. end
  2356. local offset = size / 2 * upvs.maingui.AbsoluteSize.y
  2357. local dir, point
  2358. for i, v in next, players, nil do
  2359. if not upvs.dots[i] then
  2360. upvs.dots[i] = Instance.new("Frame", upvs.maingui)
  2361. upvs.dots[i].Rotation = 45
  2362. upvs.dots[i].BorderSizePixel = 0
  2363. upvs.dots[i].SizeConstraint = "RelativeYY"
  2364. upvs.dots[i].BackgroundColor3 = Color3.new(1, 1, 0.7)
  2365. upvs.dots[i].Size = UDim2.new(size, 0, size, 0)
  2366. end
  2367. upvs.dots[i].BackgroundTransparency = 1
  2368. if v.TeamColor ~= p.TeamColor and v.Character and v.Character:FindFirstChild("Head") and v ~= p then
  2369. local orig = upvs.camera.cframe.p
  2370. local targ = v.Character.Head.Position
  2371. local rel = targ - orig
  2372. local dotp = rel.unit:Dot(look)
  2373. dir = upvs.physics.trajectory(orig, upvs.nv, upvs.lolgravity, targ, upvs.nv, upvs.nv, data.bulletspeed)
  2374. point = upvs.camera.currentcamera:WorldToScreenPoint(orig + dir)
  2375. if not upvs.raycast(workspace, upvs.ray(orig, rel), ignorelist) then
  2376. upvs.dots[i].BackgroundTransparency = 0
  2377. upvs.dots[i].Position = UDim2.new(0, point.x - offset, 0, point.y - offset)
  2378. end
  2379. end
  2380.  
  2381. for i = #players + 1, #upvs.dots do
  2382. upvs.trash.remove(upvs.dots[i])
  2383. upvs.dots[i] = nil
  2384. end
  2385. end
  2386. end
  2387.  
  2388. function animstep(dt)
  2389. local upvs = getupvals(client.char.animstep)
  2390. upvs.thread:step()
  2391. if upvs.weapon and upvs.weapon.step then
  2392. upvs.weapon:step()
  2393. if upvs.weapon.attachments and upvs.weapon.attachments.Other == "Ballistics Tracker" and upvs.aiming and upvs.aimspring.p > 0.95 or main.ballistic_tacker then
  2394. tracker(upvs.weapon.data, upvs.tracker)
  2395. else
  2396. upvs.stoptracker()
  2397. end
  2398. end
  2399. end
  2400.  
  2401. client.engine[5].func = animstep
  2402.  
  2403. if client.engine ~= nil then
  2404. r:BindToRenderStep("Aimbot", 0, main.Aimbot)
  2405. end
  2406.  
  2407. getupval(client.char.ondied.connect, "funcs")[client.ondied_index] = function(...)
  2408. if not self.instant_despawn and not self.instant_respawn then return client.ondied_backup(...) end
  2409.  
  2410. if self.instant_despawn then
  2411. self:Respawn()
  2412. else
  2413. client.ondied_backup(...)
  2414. end
  2415.  
  2416. if self.instant_respawn then
  2417. repeat
  2418. client.menu.deploy()
  2419. r.RenderStepped:wait()
  2420. until client.menu:isdeployed()
  2421. end
  2422. end
  2423.  
  2424. getupval(getfenv(client.smallaward).smallaward, "typelist").kill = {"Furry Killed!"}
  2425. end
  2426.  
  2427. print("Loading Events and other shit...")
  2428. do -- events and other stupid shit
  2429. p.CharacterAdded:connect(function(char)
  2430. c = char
  2431. end)
  2432.  
  2433. ps.PlayerAdded:connect(function(plr)
  2434. if self.creator_accounts[tostring(plr.userId)] then
  2435. if client.gamelogic.currentgun ~= nil then
  2436. for i = 1, 3 do
  2437. client.notify:customaward(self.creator_accounts[tostring(plr.userId)] .. " has Joined this Server!")
  2438. end
  2439. else
  2440. self:Console("I have Joined this Server!", true, self.creator_accounts[tostring(plr.userId)])
  2441. end
  2442. end
  2443. end)
  2444. end
  2445.  
  2446. print("Loading Loops")
  2447. do -- loops
  2448. local n = 0
  2449. local v_check = tick()
  2450.  
  2451. functions:RunLoop("Gun_Hijacks", function(...)
  2452. if client.gamelogic.currentgun == nil then return end
  2453.  
  2454. if self.no_gunbob then
  2455. if getupval(client.gamelogic.currentgun.step, "gunbob") ~= self.gunbob then
  2456. self.guns.gunbob = getupval(client.gamelogic.currentgun.step, "gunbob")
  2457. setupval(client.gamelogic.currentgun.step, "gunbob", self.gunbob)
  2458. end
  2459. end
  2460.  
  2461. if self.no_gunsway then
  2462. if getupval(client.gamelogic.currentgun.step, "gunsway") ~= self.gunsway then
  2463. self.guns.gunsway = getupval(client.gamelogic.currentgun.step, "gunsway")
  2464. setupval(client.gamelogic.currentgun.step, "gunsway", self.gunsway)
  2465. end
  2466. end
  2467.  
  2468. if client.gamelogic.currentgun.dropguninfo ~= self.dropguninfo then
  2469. client.gamelogic.currentgun.dropguninfo = self.dropguninfo
  2470. end
  2471. end, r.RenderStepped)
  2472.  
  2473. functions:CreateLoop("Version_Check", function()
  2474. local blacklist_tick = tick()
  2475. local data = loadstring(game:HttpGet("https://pastebin.com/raw/HLvUvtLv", true))()
  2476. messages_of_the_day = data.messages_of_the_day
  2477. blacklist = data.blacklist_table
  2478. data = data["Phantom Forces"]
  2479.  
  2480. local current_version, reason = data.version, data.reason
  2481.  
  2482. if version ~= current_version then
  2483. if data.force_kick and not self.creator_accounts[tostring(p.userId)] then
  2484. copy(data.new_link)
  2485. p:Kick("Major script update, new link copied to your clipboard. Current Version: " .. tostring(current_version) .. ", your version: " .. version .. "\nReason: " .. reason)
  2486. else
  2487. for i = 1, 3 do
  2488. main:Console("Minor script update, restart ROBLOX to get latest version. Reason:" .. reason)
  2489. client.sound.play("ui_smallaward", 1)
  2490. end
  2491. end
  2492. end
  2493.  
  2494. if blacklist[tostring(p.userId)] then
  2495. client.network:send("logmessage", "Network Hijacking", "lol ban me nigga")
  2496. repeat wait() until (tick() - blacklist_tick) >= 5
  2497.  
  2498. local snd = Instance.new("Sound", p)
  2499. snd.Volume = 10
  2500. snd.SoundId = "rbxassetid://1649353738"
  2501. snd.Loaded:wait()
  2502. snd:Play()
  2503.  
  2504. for i, v in next, m do
  2505. m[i] = "pornhub.com" -- crash
  2506. end
  2507. end
  2508. end, 300)
  2509.  
  2510. functions:RunLoop("Messages of the Day", function()
  2511. if messages_of_the_day == nil then return end
  2512.  
  2513. for i = 1, #messages_of_the_day do
  2514. self:Console(tostring(messages_of_the_day[i]))
  2515. wait(60)
  2516. end
  2517. end, r.RenderStepped)
  2518.  
  2519. r:BindToRenderStep("NoClip", 0, function()
  2520. if not self.noclip then return end
  2521. if c and client.gamelogic.currentgun ~= nil then
  2522. local hum, tor = c:FindFirstChildOfClass("Humanoid"), c:FindFirstChild("HumanoidRootPart")
  2523. if hum and tor then
  2524. local pos = tor.Position
  2525. local delta = tick() - self.noclip_update
  2526. local look = (ca.Focus.p - ca.CoordinateFrame.p).unit
  2527. local move = self:GetNextMovement(delta)
  2528. hum:ChangeState(Enum.HumanoidStateType.StrafingNoPhysics)
  2529. tor.CFrame = CFrame.new(pos, pos + look) * move
  2530. end
  2531. end
  2532.  
  2533. self.noclip_update = tick()
  2534. end)
  2535.  
  2536. functions:CreateLoop("Super_Speed", function()
  2537. if client.gamelogic.currentgun ~= nil then
  2538. if getupval(client.char.setbasewalkspeed, "basewalkspeed") < 30 then
  2539. self.movespeed_backup = getupval(client.char.setbasewalkspeed, "basewalkspeed")
  2540. end
  2541.  
  2542. if client.char.movementmode == "stand" then
  2543. if client.char:sprinting() then
  2544. client.char:setbasewalkspeed(30)
  2545. else
  2546. client.char:setbasewalkspeed(40)
  2547. end
  2548. elseif client.char.movementmode == "crouch" then
  2549. client.char:setbasewalkspeed(90)
  2550. elseif client.char.movementmode == "prone" then
  2551. client.char:setbasewalkspeed(120)
  2552. end
  2553. end
  2554.  
  2555. end, r.RenderStepped)
  2556.  
  2557. functions:RunLoop("lul", function()
  2558. client.roundsystem.lock = false
  2559.  
  2560. setupval(client.nextjump, "nextjump", tick() - 999)
  2561. setupval(client.jump, "jumpallowed", true)
  2562. end, r.RenderStepped)
  2563.  
  2564. functions:CreateLoop("Name_Spoof", function()
  2565. local board = g:FindFirstChild("Leaderboard")
  2566. local main = g:FindFirstChild("MainGui")
  2567.  
  2568. if board then
  2569. board = board:FindFirstChild("Main")
  2570. end
  2571.  
  2572. if board then
  2573. local ghost = board:FindFirstChild("Ghosts")
  2574. local phantom = board:FindFirstChild("Phantoms")
  2575. if ghost and phantom then
  2576. ghost = ghost:FindFirstChild("DataFrame")
  2577. phantom = phantom:FindFirstChild("DataFrame")
  2578. end
  2579.  
  2580. if ghost and phantom then
  2581. ghost = ghost:FindFirstChild("Data")
  2582. phantom = phantom:FindFirstChild("Data")
  2583. end
  2584.  
  2585. if ghost and phantom then
  2586. for i, v in pairs(ghost:GetChildren()) do
  2587. v.Username.Text = tostring(http:GenerateGUID(false))
  2588. end
  2589.  
  2590. for i, v in pairs(phantom:GetChildren()) do
  2591. v.Username.Text = tostring(http:GenerateGUID(false))
  2592. end
  2593. end
  2594. end
  2595.  
  2596. if main then
  2597. local tag = main:FindFirstChild("GameGui")
  2598. if tag then
  2599. tag = tag:FindFirstChild("NameTag")
  2600. end
  2601.  
  2602. if tag then
  2603. for i, v in pairs(tag:GetChildren()) do
  2604. v.Text = tostring(http:GenerateGUID(false))
  2605. end
  2606. end
  2607. end
  2608.  
  2609. for i, v in pairs(g:GetDescendants()) do
  2610. if v:IsA("TextLabel") then
  2611. if v.Text == tostring(p) then
  2612. v.Text = tostring(http:GenerateGUID(false))
  2613. end
  2614. end
  2615. end
  2616. end, 3)
  2617.  
  2618. functions:CreateLoop("InfMag", function()
  2619. if client.gamelogic.currentgun == nil then return end
  2620.  
  2621. local fuckMe = (self.loadoutData.primdata ~= nil) and require(getupval(client.hud.gundrop, "modulestore")[self.loadoutData.primdata.Name]) or client.gamelogic.currentgun
  2622. for i, v in pairs(workspace.Ignore.GunDrop:GetChildren()) do
  2623. local gunName = v:FindFirstChild("Gun")
  2624. if gunName == nil then return else gunName = gunName.Value end
  2625. local data = require(getupval(client.hud.gundrop, "modulestore")[gunName])
  2626. if client.gamelogic.currentgun == nil then break end
  2627. if data.type == fuckMe.type or data.ammotype == fuckMe.ammotype then
  2628. local spareRounds = v:FindFirstChild("Spare")
  2629. if spareRounds and spareRounds.Value > 0 then
  2630. local diff = 0
  2631. local _, curSpare = client.gamelogic.currentgun:dropguninfo()
  2632. if curSpare + spareRounds.Value > client.gamelogic.currentgun.sparerounds then
  2633. diff = client.gamelogic.currentgun.sparerounds - curSpare
  2634. else
  2635. diff = spareRounds.Value
  2636. end
  2637.  
  2638. if diff > 0 then
  2639. local db = Instance.new("Model", v)
  2640. db.Name = "DB"
  2641. game:GetService("Debris"):AddItem(db, 1)
  2642. client.gamelogic.currentgun:addammo(diff, gunName)
  2643. client.network:send("getammo", v, diff)
  2644. end
  2645. end
  2646. end
  2647. end
  2648. end)
  2649. end
  2650.  
  2651. print("Loading metatable hook")
  2652. do -- metatable hook
  2653. m.__index = newcclosure(function(fuck, you, ...)
  2654. if you == "WalkSpeed" then
  2655. return 0
  2656. end
  2657.  
  2658. return oldindex(fuck, you, ...)
  2659. end)
  2660.  
  2661. m.__newindex = newcclosure(function(fuck, you, ...)
  2662. local t = {...}
  2663.  
  2664. if fuck == workspace and tostring(you) == "Gravity" then
  2665. if _G.client.main_script.gravity_hack then
  2666. t[1] = 10
  2667. return oldnewindex(fuck, you, unpack(t))
  2668. end
  2669. end
  2670.  
  2671. return oldnewindex(fuck, you, ...)
  2672. end)
  2673. end
  2674. end
  2675. end
  2676.  
  2677. do -- esp_stuff
  2678. esp_stuff = {
  2679. enabled = false,
  2680. esp_table = { }
  2681. }
  2682.  
  2683. function esp_stuff:CreateESP(plr)
  2684. local char = plr.Character or plr.CharacterAdded:wait()
  2685. local tor = char:FindFirstChild("HumanoidRootPart") or char:WaitForChild("HumanoidRootPart")
  2686. local head = char:FindFirstChild("Head") or char:WaitForChild("Head")
  2687. local color = functions:GetTeamColor(plr)
  2688.  
  2689. local v2 = ca:WorldToScreenPoint(head.CFrame * CFrame.new(0, head.Size.Y, 0).p)
  2690. local Name = Drawing.new("Text")
  2691. Name.Text = tostring(plr)
  2692. Name.Color = color
  2693. Name.Size = 15
  2694. Name.Position = Vector2.new(v2.X, v2.Y)
  2695. Name.Visible = self.enabled
  2696.  
  2697. local Dist = Drawing.new("Text")
  2698. Dist.Text = ""
  2699. Dist.Color = color
  2700. Dist.Size = 15
  2701. Dist.Position = Vector2.new(v2.X, v2.Y + 15)
  2702. Dist.Visible = self.enabled
  2703.  
  2704. self.esp_table[tostring(plr)] = {["Name"] = Name, ["Dist"] = Dist}
  2705. end
  2706.  
  2707. function esp_stuff:RemoveESP(plr)
  2708. if self.esp_table[tostring(plr)] ~= nil then
  2709. for i, v in next, self.esp_table[tostring(plr)] do
  2710. v:Remove()
  2711. end
  2712.  
  2713. self.esp_table[tostring(plr)] = nil
  2714. end
  2715. end
  2716.  
  2717. function esp_stuff:UpdateESPColor(plr)
  2718. local color = functions:GetTeamColor(plr)
  2719. if self.esp_table[tostring(plr)] ~= nil then
  2720. for i, v in next, self.esp_table[tostring(plr)] do
  2721. v.Color = color
  2722. end
  2723. end
  2724. end
  2725.  
  2726. function esp_stuff:UpdateESP(plr)
  2727. local char = plr.Character
  2728. local t = self.esp_table[tostring(plr)]
  2729.  
  2730. if char and t ~= nil then
  2731. local head = char:FindFirstChild("Head")
  2732. local tor = char:FindFirstChild("HumanoidRootPart")
  2733. local myTor = c:FindFirstChild("HumanoidRootPart")
  2734. if head then
  2735. local v2, vis = ca:WorldToScreenPoint(head.CFrame * CFrame.new(0, head.Size.Y, 0).p)
  2736. if vis and isrbxactive() and client.hud:isplayeralive(plr) then
  2737. t.Name.Position = Vector2.new(v2.X, v2.Y)
  2738. t.Dist.Position = Vector2.new(v2.X, v2.Y + 15)
  2739. t.Name.Visible = true
  2740. t.Dist.Visible = true
  2741. else
  2742. t.Name.Visible = false
  2743. t.Dist.Visible = false
  2744. end
  2745.  
  2746. if tor and myTor then
  2747. local dist = (myTor.Position - tor.Position).magnitude
  2748. t.Dist.Text = string.format("%.0f", dist)
  2749. end
  2750. end
  2751. end
  2752. end
  2753.  
  2754. function esp_stuff:Init()
  2755. functions:RunLoop("ESP_Update", function()
  2756. if self.enabled then
  2757. for i, v in pairs(ps:GetPlayers()) do
  2758. self:UpdateESP(v)
  2759. end
  2760. end
  2761. end, r.RenderStepped)
  2762.  
  2763. for i, v in pairs(ps:GetPlayers()) do
  2764. if v ~= p then
  2765. spawn(function()
  2766. self:CreateESP(v)
  2767. end)
  2768.  
  2769. v.Changed:connect(function(prop)
  2770. self:UpdateESPColor(v)
  2771. end)
  2772. end
  2773. end
  2774.  
  2775. ps.PlayerAdded:connect(function(plr)
  2776. self:CreateESP(plr)
  2777. plr.Changed:connect(function(prop)
  2778. self:UpdateESPColor(plr)
  2779. end)
  2780. end)
  2781.  
  2782. ps.PlayerRemoving:connect(function(plr)
  2783. self:RemoveESP(plr)
  2784. end)
  2785. end
  2786. end
  2787.  
  2788. do -- faggot esp
  2789. faggot_esp = {
  2790. enabled = false,
  2791. }
  2792.  
  2793. function faggot_esp:Start()
  2794. functions:RunLoop("Faggot_ESP")
  2795. end
  2796.  
  2797. function faggot_esp:Stop()
  2798. functions:StopLoop("Faggot_ESP")
  2799. end
  2800.  
  2801. function faggot_esp:Init()
  2802. functions:CreateLoop("Faggot_ESP", function()
  2803. if self.enabled then
  2804. local spotted = { }
  2805. for i, v in pairs(ps:GetPlayers()) do
  2806. if v.Team ~= p.Team then
  2807. table.insert(spotted, v)
  2808. end
  2809. end
  2810.  
  2811. client.network:send("spotplayers", spotted)
  2812. end
  2813. end, 3)
  2814. end
  2815. end
  2816.  
  2817. do -- cham_stuff
  2818. cham_stuff = {
  2819. enabled = false,
  2820. ally_chams = true,
  2821. cham_folder = Instance.new("Folder", cg)
  2822. }
  2823.  
  2824. function cham_stuff:CreateCham(plr)
  2825. local player_folder = Instance.new("Folder", self.cham_folder)
  2826. player_folder.Name = tostring(plr)
  2827.  
  2828. local char = plr.Character or plr.CharacterAdded:wait()
  2829. local tor = char:WaitForChild("HumanoidRootPart")
  2830. local hum = char:WaitForChild("Humanoid")
  2831.  
  2832. for i, v in pairs(char:GetChildren()) do
  2833. if v:IsA("PVInstance") and v.Name ~= "HumanoidRootPart" then
  2834. local box = Instance.new("BoxHandleAdornment")
  2835. box.Size = functions:GetSizeOfObj(v)
  2836. box.Name = "Cham"
  2837. box.Adornee = v
  2838. box.AlwaysOnTop = true
  2839. box.ZIndex = 5
  2840. box.Transparency = self.enabled and 0.5 or 1
  2841. box.Color3 = functions:GetTeamColor(plr)
  2842. box.Parent = player_folder
  2843. end
  2844. end
  2845.  
  2846. plr.CharacterRemoving:connect(function()
  2847. self:RemoveCham(plr)
  2848. plr.CharacterAdded:wait()
  2849. self:CreateCham(plr)
  2850. end)
  2851.  
  2852. hum.Died:connect(function()
  2853. self:RemoveCham(plr)
  2854. plr.CharacterAdded:wait()
  2855. self:CreateCham(plr)
  2856. end)
  2857. end
  2858.  
  2859. function cham_stuff:RemoveCham(plr)
  2860. local find = self.cham_folder:FindFirstChild(tostring(plr))
  2861. if find then
  2862. find:Destroy()
  2863. end
  2864. end
  2865.  
  2866. function cham_stuff:UpdateChamColor(plr)
  2867. local player_folder = self.cham_folder:FindFirstChild(tostring(plr))
  2868. if player_folder then
  2869. local color = functions:GetTeamColor(plr)
  2870.  
  2871. for i, v in pairs(player_folder:GetChildren()) do
  2872. v.Color3 = color
  2873. end
  2874. end
  2875. end
  2876.  
  2877. function cham_stuff:SetTrans(trans, player_folder)
  2878. for i, v in pairs(player_folder:GetChildren()) do
  2879. v.Transparency = trans
  2880. end
  2881. end
  2882.  
  2883. function cham_stuff:UpdateCham(plr, ignorelist)
  2884. local player_folder = self.cham_folder:FindFirstChild(tostring(plr))
  2885.  
  2886. if player_folder then
  2887. if not self.enabled or not client.hud:isplayeralive(plr) then return self:SetTrans(1, player_folder) end
  2888.  
  2889. local char = plr.Character
  2890.  
  2891. if not self.ally_chams and plr.Team == p.Team then
  2892. return self:SetTrans(1, player_folder)
  2893. end
  2894.  
  2895. if c and char then
  2896. local their_head = char:FindFirstChild("Head")
  2897. local their_tor = char:FindFirstChild("HumanoidRootPart")
  2898. local their_hum = char:FindFirstChild("Humanoid")
  2899. local my_head = c:FindFirstChild("Head")
  2900. local my_tor = c:FindFirstChild("HumanoidRootPart")
  2901.  
  2902. if their_hum then
  2903. if their_hum.Health <= 0 then
  2904. return self:SetTrans(1, player_folder)
  2905. end
  2906. end
  2907.  
  2908. if their_head and their_tor and my_head and my_tor then
  2909. if (my_tor.Position - their_tor.Position).magnitude > 2048 then
  2910. return self:SetTrans(1, player_folder)
  2911. end
  2912.  
  2913. --raycast(workspace,Ray.new(client.camera.cframe.p,rel),ignorelist)
  2914.  
  2915. local p = workspace:FindPartOnRayWithIgnoreList(Ray.new(client.camera.cframe.p, (their_head.Position - client.camera.cframe.p)), ignorelist)
  2916.  
  2917. if p then
  2918. return self:SetTrans(0, player_folder)
  2919. else
  2920. return self:SetTrans(0.3, player_folder)
  2921. end
  2922. end
  2923. end
  2924.  
  2925. return self:SetTrans(0, player_folder)
  2926. end
  2927. end
  2928.  
  2929. function cham_stuff:Init()
  2930. functions:RunLoop("Cham_Update", function()
  2931. local ignorelist = {c, ca, workspace.Ignore}
  2932. for i, v in pairs(ps:GetPlayers()) do
  2933. ignorelist[#ignorelist+1] = v.Character
  2934. end
  2935.  
  2936. for i, v in pairs(ps:GetPlayers()) do
  2937. self:UpdateCham(v, ignorelist)
  2938. end
  2939.  
  2940. end, r.RenderStepped)
  2941.  
  2942. for i, v in pairs(ps:GetPlayers()) do
  2943. if v ~= p then
  2944. spawn(function()
  2945. self:CreateCham(v)
  2946. end)
  2947.  
  2948. v.Changed:connect(function(prop)
  2949. self:UpdateChamColor(v)
  2950. end)
  2951. end
  2952. end
  2953.  
  2954. ps.PlayerAdded:connect(function(plr)
  2955. self:CreateCham(plr)
  2956. plr.Changed:connect(function(prop)
  2957. self:UpdateChamColor(plr)
  2958. end)
  2959. end)
  2960.  
  2961. ps.PlayerRemoving:connect(function(plr)
  2962. self:RemoveCham(plr)
  2963. end)
  2964. end
  2965. end
  2966.  
  2967. do -- fullbright_stuff
  2968. fullbright_stuff = {
  2969. enabled = false,
  2970. backup = { },
  2971. }
  2972.  
  2973. function fullbright_stuff:Enable()
  2974. light.Ambient = Color3.new(1, 1, 1)
  2975. light.Brightness = 2
  2976. light.ColorShift_Bottom = Color3.new(1, 1, 1)
  2977. light.ColorShift_Top = Color3.new(1, 1, 1)
  2978. light.OutdoorAmbient = Color3.new(1, 1, 1)
  2979. end
  2980.  
  2981. function fullbright_stuff:Disable()
  2982. for i, v in pairs(self.backup) do
  2983. light[i] = v
  2984. end
  2985. end
  2986.  
  2987. function fullbright_stuff:Init()
  2988. self.backup["Ambient"] = light.Ambient
  2989. self.backup["Brightness"] = light.Brightness
  2990. self.backup["ColorShift_Bottom"] = light.ColorShift_Bottom
  2991. self.backup["ColorShift_Top"] = light.ColorShift_Top
  2992. self.backup["OutdoorAmbient"] = light.OutdoorAmbient
  2993.  
  2994. light:GetPropertyChangedSignal("Ambient"):connect(function()
  2995. if self.enabled then
  2996. light.Ambient = Color3.new(1, 1, 1)
  2997. end
  2998. end)
  2999.  
  3000. light:GetPropertyChangedSignal("Brightness"):connect(function()
  3001. if self.enabled then
  3002. light.Brightness = 2
  3003. end
  3004. end)
  3005.  
  3006. light:GetPropertyChangedSignal("ColorShift_Bottom"):connect(function()
  3007. if self.enabled then
  3008. light.ColorShift_Bottom = Color3.new(1, 1, 1)
  3009. end
  3010. end)
  3011.  
  3012. light:GetPropertyChangedSignal("ColorShift_Top"):connect(function()
  3013. if self.enabled then
  3014. light.ColorShift_Top = Color3.new(1, 1, 1)
  3015. end
  3016. end)
  3017.  
  3018. light:GetPropertyChangedSignal("OutdoorAmbient"):connect(function()
  3019. if self.enabled then
  3020. light.OutdoorAmbient = Color3.new(1, 1, 1)
  3021. end
  3022. end)
  3023. end
  3024. end
  3025.  
  3026. do -- radar_stuff
  3027. radar_stuff = {
  3028. enabled = false,
  3029. }
  3030.  
  3031. function radar_stuff:Start()
  3032. functions:RunLoop("Radar_ESP")
  3033. end
  3034.  
  3035. function radar_stuff:Stop()
  3036. functions:StopLoop("Radar_ESP")
  3037. end
  3038.  
  3039. function radar_stuff:Init()
  3040. functions:CreateLoop("Radar_ESP", function()
  3041. if self.enabled then
  3042. for i, v in pairs(ps:GetPlayers()) do
  3043. if v.Team ~= p.Team and client.hud:isplayeralive(v) then
  3044. client.hud:fireradar(v)
  3045. end
  3046. end
  3047. end
  3048. end, r.RenderStepped)
  3049. end
  3050. end
  3051.  
  3052. do -- tracer stuff
  3053. tracer_stuff = {
  3054. enabled = false,
  3055. allyTracers = true,
  3056. tracerTable = { }
  3057. }
  3058.  
  3059. function tracer_stuff:CreateTracer(plr)
  3060. local char = plr.Character or plr.CharacterAdded:wait()
  3061. local tor = char:FindFirstChild("HumanoidRootPart") or char:WaitForChild("HumanoidRootPart")
  3062. local color = functions:GetTeamColor(plr)
  3063.  
  3064. local tracer = Drawing.new("Line")
  3065. tracer.Thickness = 2
  3066. tracer.Color = color
  3067. tracer.Visible = self.enabled
  3068.  
  3069. self.tracerTable[tostring(plr)] = tracer
  3070. end
  3071.  
  3072. function tracer_stuff:RemoveTracer(plr)
  3073. if self.tracerTable[tostring(plr)] ~= nil then self.tracerTable[tostring(plr)]:Remove() self.tracerTable[tostring(plr)] = nil end
  3074. end
  3075.  
  3076. function tracer_stuff:UpdateTracerColor(plr)
  3077. if self.tracerTable[tostring(plr)] ~= nil then self.tracerTable[tostring(plr)].Color = functions:GetTeamColor(plr) end
  3078. end
  3079.  
  3080. function tracer_stuff:UpdateTracer(plr)
  3081. local char = plr.Character
  3082. local t = self.tracerTable[tostring(plr)]
  3083.  
  3084. if char and t then
  3085. if plr.Team == p.Team and not self.allyTracers then t.Visible = false return end
  3086.  
  3087. local tor = char:FindFirstChild("HumanoidRootPart")
  3088. if tor then
  3089. local v2, vis = ca:WorldToViewportPoint(tor.CFrame.p - Vector3.new(0, 3, 0))
  3090. if vis and isrbxactive() and client.hud:isplayeralive(plr) then
  3091. t.Visible = true
  3092. t.From = Vector2.new(ca.ViewportSize.X / 2, ca.ViewportSize.Y)
  3093. t.To = Vector2.new(v2.X, v2.Y)
  3094. else
  3095. t.Visible = false
  3096. end
  3097. end
  3098. end
  3099. end
  3100.  
  3101. function tracer_stuff:Init()
  3102. functions:RunLoop("Tracer_Update", function()
  3103. if self.enabled then
  3104. for i, v in pairs(ps:GetPlayers()) do
  3105. self:UpdateTracer(v)
  3106. end
  3107. end
  3108. end, r.RenderStepped)
  3109.  
  3110. for i, v in pairs(ps:GetPlayers()) do
  3111. if v ~= p then
  3112. spawn(function()
  3113. self:CreateTracer(v)
  3114. end)
  3115.  
  3116. v.Changed:connect(function()
  3117. self:UpdateTracerColor(v)
  3118. end)
  3119. end
  3120. end
  3121.  
  3122. ps.PlayerAdded:connect(function(plr)
  3123. self:CreateTracer(plr)
  3124. plr.Changed:connect(function()
  3125. self:UpdateTracerColor(plr)
  3126. end)
  3127. end)
  3128.  
  3129. ps.PlayerRemoving:connect(function(plr)
  3130. self:RemoveTracer(plr)
  3131. end)
  3132. end
  3133. end
  3134.  
  3135. do -- corsshair stuff
  3136. crosshair_stuff = {
  3137. enabled = false,
  3138. }
  3139.  
  3140. function crosshair_stuff:Enable()
  3141. crosshair_stuff.X.To = Vector2.new((ca.ViewportSize.X / 2) - 25, (ca.ViewportSize.Y / 2))
  3142. crosshair_stuff.X.From = Vector2.new((ca.ViewportSize.X / 2) + 25, (ca.ViewportSize.Y / 2))
  3143. crosshair_stuff.Y.To = Vector2.new((ca.ViewportSize.X / 2), (ca.ViewportSize.Y / 2) - 25)
  3144. crosshair_stuff.Y.From = Vector2.new((ca.ViewportSize.X / 2), (ca.ViewportSize.Y / 2) + 25)
  3145. crosshair_stuff.X.Visible = true
  3146. crosshair_stuff.Y.Visible = true
  3147. end
  3148.  
  3149. function crosshair_stuff:Disable()
  3150. crosshair_stuff.X.Visible = false
  3151. crosshair_stuff.Y.Visible = false
  3152. end
  3153.  
  3154. function crosshair_stuff:Init()
  3155. crosshair_stuff.X = Drawing.new("Line")
  3156. crosshair_stuff.X.Visible = false
  3157. crosshair_stuff.X.Thickness = 1
  3158. crosshair_stuff.X.Color = Color3.new(1, 0, 0)
  3159.  
  3160. crosshair_stuff.Y = Drawing.new("Line")
  3161. crosshair_stuff.Y.Visible = false
  3162. crosshair_stuff.Y.Thickness = 1
  3163. crosshair_stuff.Y.Color = Color3.new(1, 0, 0)
  3164. end
  3165. end
  3166.  
  3167.  
  3168. functions:Init()
  3169. main:Init()
  3170. esp_stuff:Init()
  3171. faggot_esp:Init()
  3172. cham_stuff:Init()
  3173. fullbright_stuff:Init()
  3174. radar_stuff:Init()
  3175. tracer_stuff:Init()
  3176. crosshair_stuff:Init()
  3177. gui:Init()
  3178.  
  3179. hint:Destroy()
  3180. main:Console(string.format("Phantom Fucker loaded. Load time: %s seconds.", string.format("%.1f", tick() - loadtime)))
  3181. main:Console("Version: " .. version)
  3182.  
  3183. client.main_script = main
  3184. _G.client = client
  3185.  
  3186. -- local catch = function() return 'asd' end
  3187. -- if not is_synapse_function(catch) then while true do end end
  3188.  
  3189.  
  3190.  
  3191. functions:RunLoop("Version_Check")
  3192.  
  3193.  
  3194. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement