qwopqwoqpwqwop

r2sv2 fixed

Jul 31st, 2019
396
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 37.16 KB | None | 0 0
  1. -- FrontEnd // UI
  2.  
  3. local dragger = {};
  4. do
  5.     local mouse = game:GetService("Players").LocalPlayer:GetMouse();
  6.     local inputService = game:GetService('UserInputService');
  7.     local heartbeat = game:GetService("RunService").Heartbeat;
  8.     -- // credits to Ririchi / Inori for this cute drag function :)
  9.     function dragger.new(frame)
  10.         local s, event = pcall(function()
  11.             return frame.MouseEnter
  12.         end)
  13.  
  14.         if s then
  15.             frame.Active = true;
  16.  
  17.             event:connect(function()
  18.                 local input = frame.InputBegan:connect(function(key)
  19.                     if key.UserInputType == Enum.UserInputType.MouseButton1 then
  20.                         local objectPosition = Vector2.new(mouse.X - frame.AbsolutePosition.X, mouse.Y - frame.AbsolutePosition.Y);
  21.                         while heartbeat:wait() and inputService:IsMouseButtonPressed(Enum.UserInputType.MouseButton1) do
  22.                             frame:TweenPosition(UDim2.new(0, mouse.X - objectPosition.X + (frame.Size.X.Offset * frame.AnchorPoint.X), 0, mouse.Y - objectPosition.Y + (frame.Size.Y.Offset * frame.AnchorPoint.Y)), 'Out', 'Quad', 0.1, true);
  23.                         end
  24.                     end
  25.                 end)
  26.  
  27.                 local leave;
  28.                 leave = frame.MouseLeave:connect(function()
  29.                     input:disconnect();
  30.                     leave:disconnect();
  31.                 end)
  32.             end)
  33.         end
  34.     end
  35. end
  36.  
  37. -- Objects
  38.  
  39. local RemoteSpy = Instance.new("ScreenGui")
  40. local BG = Instance.new("Frame")
  41. local Ribbon = Instance.new("ImageLabel")
  42. local Hide = Instance.new("TextButton")
  43. local Title = Instance.new("TextLabel")
  44. local Remotes = Instance.new("ScrollingFrame")
  45. local Source = Instance.new("ScrollingFrame")
  46. local ButtonsFrame = Instance.new("Frame")
  47. local ToClipboard = Instance.new("TextButton")
  48. local Decompile = Instance.new("TextButton")
  49. local GetReturn = Instance.new("TextButton")
  50. local ClearList = Instance.new("TextButton")
  51. local CryptStrings = Instance.new("TextButton")
  52. local EnableSpy = Instance.new("TextButton")
  53. local Last = Instance.new("TextLabel")
  54. local Total = Instance.new("TextLabel")
  55. local Settings = Instance.new("TextButton")
  56. local SetRemotes = Instance.new("ScrollingFrame")
  57. local Storage = Instance.new("Frame")
  58. local RBTN = Instance.new("TextButton")
  59. local Icon = Instance.new("ImageLabel")
  60. local RemoteName = Instance.new("TextLabel")
  61. local ID = Instance.new("TextLabel")
  62. local SBTN = Instance.new("TextButton")
  63. local Icon_2 = Instance.new("ImageLabel")
  64. local RemoteName_2 = Instance.new("TextLabel")
  65. local ID_2 = Instance.new("TextLabel")
  66. local ScriptLine = Instance.new("Frame")
  67. local Line = Instance.new("TextLabel")
  68. local SourceText = Instance.new("TextLabel")
  69. local Tokens = Instance.new("TextLabel")
  70. local Strings = Instance.new("TextLabel")
  71. local Comments = Instance.new("TextLabel")
  72. local Keywords = Instance.new("TextLabel")
  73. local Globals = Instance.new("TextLabel")
  74. local RemoteHighlight = Instance.new("TextLabel")
  75. local Enabled = Instance.new("TextLabel")
  76. local FullScreen = Instance.new("TextButton")
  77. local SetRemotesTab = Instance.new("Frame")
  78. local FilterF = Instance.new("TextButton")
  79. local FilterE = Instance.new("TextButton")
  80. local Search = Instance.new("TextBox")
  81. local remotes_fired = 0
  82. local encrypt_string = false
  83. local spy_enabled = true
  84.  
  85. local lua_keywords = {"and", "break", "do", "else", "elseif", "end", "false", "for", "function", "goto", "if", "in", "local", "nil", "not", "or", "repeat", "return", "then", "true", "until", "while"}
  86. local global_env = {"game", "workspace", "script", "math", "string", "table", "print", "wait", "BrickColor", "Color3", "next", "pairs", "ipairs", "select", "unpack", "Instance", "Vector2", "Vector3", "CFrame", "Ray", "UDim2", "Enum", "assert", "error", "warn", "tick", "loadstring", "_G", "shared", "getfenv", "setfenv", "newproxy", "setmetatable", "getmetatable", "os", "debug", "pcall", "ypcall", "xpcall", "rawequal", "rawset", "rawget", "tonumber", "tostring", "type", "typeof", "_VERSION", "coroutine", "delay", "require", "spawn", "LoadLibrary", "settings", "stats", "time", "UserSettings", "version", "Axes", "ColorSequence", "Faces", "ColorSequenceKeypoint", "NumberRange", "NumberSequence", "NumberSequenceKeypoint", "gcinfo", "elapsedTime", "collectgarbage", "PhysicalProperties", "Rect", "Region3", "Region3int16", "UDim", "Vector2int16", "Vector3int16"}
  87.  
  88. -- Properties
  89.  
  90. RemoteSpy.Name = "RemoteSpy"
  91. RemoteSpy.Parent = game.CoreGui
  92.  
  93. dragger.new(BG)
  94. BG.Name = "BG"
  95. BG.Parent = RemoteSpy
  96. BG.Active = true
  97. BG.BackgroundColor3 = Color3.new(0.141176, 0.141176, 0.141176)
  98. BG.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  99. BG.Draggable = true
  100. BG.Position = UDim2.new(0.5, -700, 0.5, -400)
  101. BG.Size = UDim2.new(1, -300, 1, -200)
  102. BG.ClipsDescendants = true
  103.  
  104. Ribbon.Name = "Ribbon"
  105. Ribbon.Parent = BG
  106. Ribbon.BackgroundColor3 = Color3.new(0.760784, 0.0117647, 0.317647)
  107. Ribbon.BorderSizePixel = 0
  108. Ribbon.Size = UDim2.new(1, 0, 0, 20)
  109. Ribbon.ZIndex = 2
  110.  
  111. Hide.Name = "Hide"
  112. Hide.Parent = Ribbon
  113. Hide.BackgroundColor3 = Color3.new(1, 0, 0)
  114. Hide.BorderSizePixel = 0
  115. Hide.Position = UDim2.new(1, -40, 0, 0)
  116. Hide.Size = UDim2.new(0, 40, 0, 20)
  117. Hide.ZIndex = 3
  118. Hide.Font = Enum.Font.SourceSansBold
  119. Hide.FontSize = Enum.FontSize.Size14
  120. Hide.Text = "_"
  121. Hide.TextColor3 = Color3.new(1, 1, 1)
  122. Hide.TextSize = 14
  123.  
  124. Title.Name = "Title"
  125. Title.Parent = Ribbon
  126. Title.BackgroundColor3 = Color3.new(1, 0.0117647, 0.423529)
  127. Title.BorderSizePixel = 0
  128. Title.Position = UDim2.new(0.5, -100, 0, 0)
  129. Title.Size = UDim2.new(0, 200, 0, 20)
  130. Title.ZIndex = 3
  131. Title.Font = Enum.Font.SourceSansBold
  132. Title.FontSize = Enum.FontSize.Size14
  133. Title.Text = "Remote2Script v2"
  134. Title.TextColor3 = Color3.new(1, 1, 1)
  135. Title.TextSize = 14
  136.  
  137. Remotes.Name = "Remotes"
  138. Remotes.Parent = BG
  139. Remotes.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  140. Remotes.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  141. Remotes.Position = UDim2.new(0, 10, 0, 80)
  142. Remotes.CanvasSize = UDim2.new(0, 0, 40, 0)
  143. Remotes.Size = UDim2.new(0, 250, 1, -90)
  144. Remotes.ZIndex = 2
  145. Remotes.BottomImage = "rbxassetid://148970562"
  146. Remotes.MidImage = "rbxassetid://148970562"
  147. Remotes.ScrollBarThickness = 5
  148. Remotes.TopImage = "rbxassetid://148970562"
  149.  
  150. Source.Name = "Source"
  151. Source.Parent = BG
  152. Source.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  153. Source.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  154. Source.Position = UDim2.new(0, 270, 0, 80)
  155. Source.Size = UDim2.new(1, -280, 1, -90)
  156. Source.ZIndex = 2
  157. Source.BottomImage = "rbxassetid://148970562"
  158. Source.CanvasSize = UDim2.new(3, 0, 160, 0)
  159. Source.MidImage = "rbxassetid://148970562"
  160. Source.ScrollBarThickness = 5
  161. Source.TopImage = "rbxassetid://148970562"
  162.  
  163. ButtonsFrame.Name = "ButtonsFrame"
  164. ButtonsFrame.Parent = BG
  165. ButtonsFrame.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  166. ButtonsFrame.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  167. ButtonsFrame.Position = UDim2.new(0, 10, 0, 30)
  168. ButtonsFrame.Size = UDim2.new(1, -20, 0, 40)
  169. ButtonsFrame.ZIndex = 2
  170. ButtonsFrame.ClipsDescendants = true
  171.  
  172. ToClipboard.Name = "ToClipboard"
  173. ToClipboard.Parent = ButtonsFrame
  174. ToClipboard.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  175. ToClipboard.BorderColor3 = Color3.new(0.117647, 0.392157, 0.117647)
  176. ToClipboard.Position = UDim2.new(0, 10, 0.5, -10)
  177. ToClipboard.Size = UDim2.new(0, 100, 0, 20)
  178. ToClipboard.ZIndex = 3
  179. ToClipboard.Font = Enum.Font.SourceSansBold
  180. ToClipboard.FontSize = Enum.FontSize.Size14
  181. ToClipboard.Text = "COPY"
  182. ToClipboard.TextColor3 = Color3.new(0.235294, 0.784314, 0.235294)
  183. ToClipboard.TextSize = 14
  184.  
  185. Decompile.Name = "Decompile"
  186. Decompile.Parent = ButtonsFrame
  187. Decompile.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  188. Decompile.BorderColor3 = Color3.new(0.384314, 0.384314, 0.384314)
  189. Decompile.Position = UDim2.new(0, 120, 0.5, -10)
  190. Decompile.Size = UDim2.new(0, 100, 0, 20)
  191. Decompile.ZIndex = 3
  192. Decompile.Font = Enum.Font.SourceSansBold
  193. Decompile.FontSize = Enum.FontSize.Size14
  194. Decompile.Text = "DECOMPILE"
  195. Decompile.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  196. Decompile.TextSize = 14
  197.  
  198. GetReturn.Name = "GetReturn"
  199. GetReturn.Parent = ButtonsFrame
  200. GetReturn.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  201. GetReturn.BorderColor3 = Color3.new(0.384314, 0.384314, 0.384314)
  202. GetReturn.Position = UDim2.new(0, 230, 0.5, -10)
  203. GetReturn.Size = UDim2.new(0, 100, 0, 20)
  204. GetReturn.ZIndex = 3
  205. GetReturn.Font = Enum.Font.SourceSansBold
  206. GetReturn.FontSize = Enum.FontSize.Size14
  207. GetReturn.Text = "GET RETURN"
  208. GetReturn.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  209. GetReturn.TextSize = 14
  210.  
  211. ClearList.Name = "ClearList"
  212. ClearList.Parent = ButtonsFrame
  213. ClearList.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  214. ClearList.BorderColor3 = Color3.new(0.384314, 0.384314, 0.384314)
  215. ClearList.Position = UDim2.new(0, 340, 0.5, -10)
  216. ClearList.Size = UDim2.new(0, 100, 0, 20)
  217. ClearList.ZIndex = 3
  218. ClearList.Font = Enum.Font.SourceSansBold
  219. ClearList.FontSize = Enum.FontSize.Size14
  220. ClearList.Text = "CLEAR LOGS"
  221. ClearList.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  222. ClearList.TextSize = 14
  223.  
  224. CryptStrings.Name = "CryptStrings"
  225. CryptStrings.Parent = ButtonsFrame
  226. CryptStrings.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  227. CryptStrings.BorderColor3 = Color3.new(0.392157, 0.117647, 0.117647)
  228. CryptStrings.Position = UDim2.new(0, 450, 0.5, -10)
  229. CryptStrings.Size = UDim2.new(0, 100, 0, 20)
  230. CryptStrings.ZIndex = 3
  231. CryptStrings.Font = Enum.Font.SourceSansBold
  232. CryptStrings.FontSize = Enum.FontSize.Size14
  233. CryptStrings.Text = "CRYPT STRINGS"
  234. CryptStrings.TextColor3 = Color3.new(0.784314, 0.235294, 0.235294)
  235. CryptStrings.TextSize = 14
  236.  
  237. EnableSpy.Name = "EnableSpy"
  238. EnableSpy.Parent = ButtonsFrame
  239. EnableSpy.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  240. EnableSpy.BorderColor3 = Color3.fromRGB(30, 100, 30)
  241. EnableSpy.Position = UDim2.new(0, 560, 0.5, -10)
  242. EnableSpy.Size = UDim2.new(0, 100, 0, 20)
  243. EnableSpy.ZIndex = 3
  244. EnableSpy.Font = Enum.Font.SourceSansBold
  245. EnableSpy.FontSize = Enum.FontSize.Size14
  246. EnableSpy.Text = "REMOTESPY"
  247. EnableSpy.TextColor3 = Color3.fromRGB(60, 200, 60)
  248. EnableSpy.TextSize = 14
  249.  
  250. Last.Name = "Last"
  251. Last.Parent = ButtonsFrame
  252. Last.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  253. Last.BorderColor3 = Color3.new(0.384314, 0.384314, 0.384314)
  254. Last.Position = UDim2.new(0, 670, 0.5, -10)
  255. Last.Size = UDim2.new(0, 200, 0, 20)
  256. Last.ZIndex = 3
  257. Last.Font = Enum.Font.SourceSansBold
  258. Last.FontSize = Enum.FontSize.Size14
  259. Last.Text = ""
  260. Last.TextColor3 = Color3.new(1, 1, 1)
  261. Last.TextSize = 14
  262. Last.TextWrapped = true
  263.  
  264. Total.Name = "Total"
  265. Total.Parent = ButtonsFrame
  266. Total.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  267. Total.BorderColor3 = Color3.new(0.384314, 0.384314, 0.384314)
  268. Total.Position = UDim2.new(0, 880, 0.5, -10)
  269. Total.Size = UDim2.new(0, 50, 0, 20)
  270. Total.ZIndex = 3
  271. Total.Font = Enum.Font.SourceSansBold
  272. Total.FontSize = Enum.FontSize.Size14
  273. Total.Text = "0"
  274. Total.TextColor3 = Color3.new(1, 1, 1)
  275. Total.TextSize = 14
  276. Total.TextWrapped = true
  277.  
  278. Settings.Name = "Settings"
  279. Settings.Parent = ButtonsFrame
  280. Settings.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  281. Settings.BorderColor3 = Color3.new(0.117647, 0.392157, 0.392157)
  282. Settings.Position = UDim2.new(1, -110, 0.5, -10)
  283. Settings.Size = UDim2.new(0, 100, 0, 20)
  284. Settings.ZIndex = 3
  285. Settings.Font = Enum.Font.SourceSansBold
  286. Settings.FontSize = Enum.FontSize.Size14
  287. Settings.Text = "REMOTES"
  288. Settings.TextColor3 = Color3.new(0.235294, 0.784314, 0.784314)
  289. Settings.TextSize = 14
  290.  
  291. SetRemotes.Name = "SetRemotes"
  292. SetRemotes.Parent = BG
  293. SetRemotes.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  294. SetRemotes.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  295. SetRemotes.Position = UDim2.new(0, 270, 0, 80)
  296. SetRemotes.Size = UDim2.new(1, -280, 1, -140)
  297. SetRemotes.Visible = false
  298. SetRemotes.ZIndex = 2
  299. SetRemotes.BottomImage = "rbxassetid://148970562"
  300. SetRemotes.CanvasSize = UDim2.new(0, 0, 25, 0)
  301. SetRemotes.MidImage = "rbxassetid://148970562"
  302. SetRemotes.ScrollBarThickness = 5
  303. SetRemotes.TopImage = "rbxassetid://148970562"
  304.  
  305. Storage.Name = "Storage"
  306. Storage.Parent = RemoteSpy
  307. Storage.BackgroundColor3 = Color3.new(1, 1, 1)
  308. Storage.Size = UDim2.new(0, 100, 0, 100)
  309. Storage.Visible = false
  310.  
  311. RBTN.Name = "RBTN"
  312. RBTN.Parent = Storage
  313. RBTN.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  314. RBTN.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  315. RBTN.Position = UDim2.new(0, 10, 0, 10)
  316. RBTN.Size = UDim2.new(1, -20, 0, 20)
  317. RBTN.ZIndex = 3
  318. RBTN.Font = Enum.Font.SourceSansBold
  319. RBTN.FontSize = Enum.FontSize.Size14
  320. RBTN.Text = ""
  321. RBTN.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  322. RBTN.TextSize = 14
  323. RBTN.TextXAlignment = Enum.TextXAlignment.Left
  324.  
  325. Icon.Name = "Icon"
  326. Icon.Parent = RBTN
  327. Icon.BackgroundColor3 = Color3.new(1, 1, 1)
  328. Icon.BackgroundTransparency = 1
  329. Icon.Size = UDim2.new(0, 20, 0, 20)
  330. Icon.ZIndex = 4
  331. Icon.Image = "rbxassetid://413369506"
  332.  
  333. RemoteName.Name = "RemoteName"
  334. RemoteName.Parent = RBTN
  335. RemoteName.BackgroundColor3 = Color3.new(0.713726, 0.00392157, 0.298039)
  336. RemoteName.BorderSizePixel = 0
  337. RemoteName.Position = UDim2.new(0, 30, 0, 0)
  338. RemoteName.Size = UDim2.new(0, 140, 0, 20)
  339. RemoteName.ZIndex = 4
  340. RemoteName.Font = Enum.Font.SourceSansBold
  341. RemoteName.FontSize = Enum.FontSize.Size14
  342. RemoteName.Text = "10"
  343. RemoteName.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  344. RemoteName.TextSize = 14
  345.  
  346. ID.Name = "ID"
  347. ID.Parent = RBTN
  348. ID.BackgroundColor3 = Color3.new(0.458824, 0.00392157, 0.192157)
  349. ID.BorderSizePixel = 0
  350. ID.Position = UDim2.new(1, -50, 0, 0)
  351. ID.Size = UDim2.new(0, 50, 0, 20)
  352. ID.ZIndex = 4
  353. ID.Font = Enum.Font.SourceSansBold
  354. ID.FontSize = Enum.FontSize.Size14
  355. ID.Text = "10"
  356. ID.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  357. ID.TextSize = 14
  358.  
  359. SBTN.Name = "SBTN"
  360. SBTN.Parent = Storage
  361. SBTN.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  362. SBTN.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  363. SBTN.Position = UDim2.new(0, 10, 0, 10)
  364. SBTN.Size = UDim2.new(1, -20, 0, 20)
  365. SBTN.ZIndex = 3
  366. SBTN.Font = Enum.Font.SourceSansBold
  367. SBTN.FontSize = Enum.FontSize.Size14
  368. SBTN.Text = ""
  369. SBTN.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  370. SBTN.TextSize = 11
  371. SBTN.TextXAlignment = Enum.TextXAlignment.Left
  372.  
  373. Icon_2.Name = "Icon"
  374. Icon_2.Parent = SBTN
  375. Icon_2.BackgroundColor3 = Color3.new(1, 1, 1)
  376. Icon_2.BackgroundTransparency = 1
  377. Icon_2.Size = UDim2.new(0, 20, 0, 20)
  378. Icon_2.ZIndex = 4
  379. Icon_2.Image = "rbxassetid://413369506"
  380.  
  381. RemoteName_2.Name = "RemoteName"
  382. RemoteName_2.Parent = SBTN
  383. RemoteName_2.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
  384. RemoteName_2.BorderSizePixel = 1
  385. RemoteName_2.BorderColor3 = Color3.fromRGB(62, 62, 62)
  386. RemoteName_2.Position = UDim2.new(0, 30, 0, 0)
  387. RemoteName_2.Size = UDim2.new(0, 140, 0, 20)
  388. RemoteName_2.ZIndex = 4
  389. RemoteName_2.Font = Enum.Font.SourceSansBold
  390. RemoteName_2.FontSize = Enum.FontSize.Size14
  391. RemoteName_2.Text = "SayMessageRequest"
  392. RemoteName_2.TextColor3 = Color3.fromRGB(200, 200, 200)
  393. RemoteName_2.TextSize = 11
  394.  
  395. ID_2.Name = "ID"
  396. ID_2.Parent = SBTN
  397. ID_2.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
  398. ID_2.BorderSizePixel = 1
  399. ID_2.BorderColor3 = Color3.fromRGB(62, 62, 62)
  400. ID_2.Position = UDim2.new(1, -700, 0, 0)
  401. ID_2.Size = UDim2.new(0, 700, 0, 20)
  402. ID_2.ZIndex = 3
  403. ID_2.Font = Enum.Font.SourceSansBold
  404. ID_2.FontSize = Enum.FontSize.Size14
  405. ID_2.Text = "10"
  406. ID_2.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  407. ID_2.TextSize = 14
  408.  
  409. ScriptLine.Name = "ScriptLine"
  410. ScriptLine.Parent = Storage
  411. ScriptLine.BackgroundColor3 = Color3.new(1, 1, 1)
  412. ScriptLine.BackgroundTransparency = 1
  413. ScriptLine.Size = UDim2.new(1, 0, 0, 17)
  414. ScriptLine.ZIndex = 2
  415.  
  416. Line.Name = "Line"
  417. Line.Parent = ScriptLine
  418. Line.BackgroundColor3 = Color3.new(0.329412, 0, 0)
  419. Line.BackgroundTransparency = 1
  420. Line.BorderSizePixel = 0
  421. Line.Size = UDim2.new(0, 40, 1, 0)
  422. Line.ZIndex = 3
  423. Line.Font = Enum.Font.SourceSansBold
  424. Line.FontSize = Enum.FontSize.Size18
  425. Line.Text = ""
  426. Line.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  427. Line.TextSize = 17
  428.  
  429. SourceText.Name = "SourceText"
  430. SourceText.Parent = ScriptLine
  431. SourceText.BackgroundColor3 = Color3.new(1, 1, 1)
  432. SourceText.BackgroundTransparency = 1
  433. SourceText.Position = UDim2.new(0, 40, 0, 0)
  434. SourceText.Size = UDim2.new(1, -40, 1, 0)
  435. SourceText.ZIndex = 3
  436. SourceText.Font = Enum.Font.Code
  437. SourceText.FontSize = Enum.FontSize.Size18
  438. SourceText.Text = ""
  439. SourceText.TextColor3 = Color3.new(1, 1, 1)
  440. SourceText.TextSize = 17
  441. SourceText.TextXAlignment = Enum.TextXAlignment.Left
  442.  
  443. Tokens.Name = "Tokens"
  444. Tokens.Parent = ScriptLine
  445. Tokens.BackgroundColor3 = Color3.new(1, 1, 1)
  446. Tokens.BackgroundTransparency = 1
  447. Tokens.Position = UDim2.new(0, 40, 0, 0)
  448. Tokens.Size = UDim2.new(1, -40, 1, 0)
  449. Tokens.ZIndex = 3
  450. Tokens.Font = Enum.Font.Code
  451. Tokens.FontSize = Enum.FontSize.Size18
  452. Tokens.Text = ""
  453. Tokens.TextColor3 = Color3.new(0.392157, 0.392157, 0.392157)
  454. Tokens.TextSize = 17
  455. Tokens.TextXAlignment = Enum.TextXAlignment.Left
  456.  
  457. Strings.Name = "Strings"
  458. Strings.Parent = ScriptLine
  459. Strings.BackgroundColor3 = Color3.new(1, 1, 1)
  460. Strings.BackgroundTransparency = 1
  461. Strings.Position = UDim2.new(0, 40, 0, 0)
  462. Strings.Size = UDim2.new(1, -40, 1, 0)
  463. Strings.ZIndex = 5
  464. Strings.Font = Enum.Font.Code
  465. Strings.FontSize = Enum.FontSize.Size18
  466. Strings.Text = ""
  467. Strings.TextColor3 = Color3.new(1, 0.615686, 0)
  468. Strings.TextSize = 17
  469. Strings.TextXAlignment = Enum.TextXAlignment.Left
  470.  
  471. Comments.Name = "Comments"
  472. Comments.Parent = ScriptLine
  473. Comments.BackgroundColor3 = Color3.new(1, 1, 1)
  474. Comments.BackgroundTransparency = 1
  475. Comments.Position = UDim2.new(0, 40, 0, 0)
  476. Comments.Size = UDim2.new(1, -40, 1, 0)
  477. Comments.ZIndex = 5
  478. Comments.Font = Enum.Font.Code
  479. Comments.FontSize = Enum.FontSize.Size18
  480. Comments.Text = ""
  481. Comments.TextColor3 = Color3.fromRGB(60, 200, 60)
  482. Comments.TextSize = 17
  483. Comments.TextXAlignment = Enum.TextXAlignment.Left
  484.  
  485. RemoteHighlight.Name = "RemoteHighlight"
  486. RemoteHighlight.Parent = ScriptLine
  487. RemoteHighlight.BackgroundColor3 = Color3.new(1, 1, 1)
  488. RemoteHighlight.BackgroundTransparency = 1
  489. RemoteHighlight.Position = UDim2.new(0, 40, 0, 0)
  490. RemoteHighlight.Size = UDim2.new(1, -40, 1, 0)
  491. RemoteHighlight.ZIndex = 3
  492. RemoteHighlight.Font = Enum.Font.Code
  493. RemoteHighlight.FontSize = Enum.FontSize.Size18
  494. RemoteHighlight.Text = ""
  495. RemoteHighlight.TextColor3 = Color3.fromRGB(0, 145, 255)
  496. RemoteHighlight.TextSize = 17
  497. RemoteHighlight.TextXAlignment = Enum.TextXAlignment.Left
  498.  
  499. Keywords.Name = "Keywords"
  500. Keywords.Parent = ScriptLine
  501. Keywords.BackgroundColor3 = Color3.new(1, 1, 1)
  502. Keywords.BackgroundTransparency = 1
  503. Keywords.Position = UDim2.new(0, 40, 0, 0)
  504. Keywords.Size = UDim2.new(1, -40, 1, 0)
  505. Keywords.ZIndex = 3
  506. Keywords.Font = Enum.Font.Code
  507. Keywords.FontSize = Enum.FontSize.Size18
  508. Keywords.Text = ""
  509. Keywords.TextColor3 = Color3.new(0.231373, 1, 0)
  510. Keywords.TextSize = 17
  511. Keywords.TextXAlignment = Enum.TextXAlignment.Left
  512.  
  513. Globals.Name = "Globals"
  514. Globals.Parent = ScriptLine
  515. Globals.BackgroundColor3 = Color3.new(1, 1, 1)
  516. Globals.BackgroundTransparency = 1
  517. Globals.Position = UDim2.new(0, 40, 0, 0)
  518. Globals.Size = UDim2.new(1, -40, 1, 0)
  519. Globals.ZIndex = 3
  520. Globals.Font = Enum.Font.Code
  521. Globals.FontSize = Enum.FontSize.Size18
  522. Globals.Text = ""
  523. Globals.TextColor3 = Color3.new(1, 0, 0)
  524. Globals.TextSize = 17
  525. Globals.TextXAlignment = Enum.TextXAlignment.Left
  526.  
  527. Enabled.Name = "Enabled"
  528. Enabled.Parent = SBTN
  529. Enabled.BackgroundColor3 = Color3.fromRGB(20, 20, 20)
  530. Enabled.BorderSizePixel = 1
  531. Enabled.BorderColor3 = Color3.fromRGB(30, 100, 30)
  532. Enabled.Position = UDim2.new(0, 210, 0, 0)
  533. Enabled.Size = UDim2.new(0, 100, 1, 0)
  534. Enabled.ZIndex = 4
  535. Enabled.Font = Enum.Font.SourceSansBold
  536. Enabled.FontSize = Enum.FontSize.Size14
  537. Enabled.Text = "Enabled"
  538. Enabled.TextColor3 = Color3.fromRGB(60, 200, 60)
  539. Enabled.TextSize = 14
  540.  
  541. FullScreen.Name = "FullScreen"
  542. FullScreen.Parent = Ribbon
  543. FullScreen.BackgroundColor3 = Color3.new(1, 0, 0)
  544. FullScreen.BorderSizePixel = 0
  545. FullScreen.Position = UDim2.new(1, -90, 0, 0)
  546. FullScreen.Size = UDim2.new(0, 40, 0, 20)
  547. FullScreen.ZIndex = 3
  548. FullScreen.Font = Enum.Font.SourceSansBold
  549. FullScreen.FontSize = Enum.FontSize.Size14
  550. FullScreen.Text = "[~]"
  551. FullScreen.TextColor3 = Color3.new(1, 1, 1)
  552. FullScreen.TextSize = 14
  553.  
  554. SetRemotesTab.Name = "SetRemotesTab"
  555. SetRemotesTab.Parent = BG
  556. SetRemotesTab.Visible = false
  557. SetRemotesTab.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  558. SetRemotesTab.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  559. SetRemotesTab.ClipsDescendants = true
  560. SetRemotesTab.Position = UDim2.new(0, 270, 1, -50)
  561. SetRemotesTab.Size = UDim2.new(1, -280, 0, 40)
  562. SetRemotesTab.ZIndex = 2
  563.  
  564. FilterF.Name = "FilterF"
  565. FilterF.Parent = SetRemotesTab
  566. FilterF.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  567. FilterF.BorderColor3 = Color3.new(0.392157, 0.117647, 0.117647)
  568. FilterF.Position = UDim2.new(0, 120, 0.5, -10)
  569. FilterF.Size = UDim2.new(0, 120, 0, 20)
  570. FilterF.ZIndex = 3
  571. FilterF.Font = Enum.Font.SourceSansBold
  572. FilterF.FontSize = Enum.FontSize.Size14
  573. FilterF.Text = "FILTER FUNCTIONS"
  574. FilterF.TextColor3 = Color3.new(0.784314, 0.235294, 0.235294)
  575. FilterF.TextSize = 14
  576.  
  577. FilterE.Name = "FilterE"
  578. FilterE.Parent = SetRemotesTab
  579. FilterE.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  580. FilterE.BorderColor3 = Color3.new(0.392157, 0.117647, 0.117647)
  581. FilterE.Position = UDim2.new(0, 10, 0.5, -10)
  582. FilterE.Size = UDim2.new(0, 100, 0, 20)
  583. FilterE.ZIndex = 3
  584. FilterE.Font = Enum.Font.SourceSansBold
  585. FilterE.FontSize = Enum.FontSize.Size14
  586. FilterE.Text = "FILTER EVENTS"
  587. FilterE.TextColor3 = Color3.new(0.784314, 0.235294, 0.235294)
  588. FilterE.TextSize = 14
  589.  
  590. Search.Name = "Search"
  591. Search.Parent = SetRemotesTab
  592. Search.BackgroundColor3 = Color3.new(0.0784314, 0.0784314, 0.0784314)
  593. Search.BorderColor3 = Color3.new(0.243137, 0.243137, 0.243137)
  594. Search.Position = UDim2.new(0, 250, 0.5, -10)
  595. Search.Selectable = true
  596. Search.Size = UDim2.new(1, -260, 0, 20)
  597. Search.ZIndex = 3
  598. Search.Font = Enum.Font.SourceSansBold
  599. Search.FontSize = Enum.FontSize.Size14
  600. Search.Text = "[SEARCH]"
  601. Search.TextColor3 = Color3.new(0.784314, 0.784314, 0.784314)
  602. Search.TextSize = 14
  603.  
  604. -- FrontEnd-Backend // UI Functions
  605.  
  606. local HasSpecial = function(string)
  607.     return (string:match("%c") or string:match("%s") or string:match("%p")) ~= nil
  608. end
  609.  
  610. local GetPath = function(Instance)
  611.     local Obj = Instance
  612.     local string = {}
  613.     local temp = {}
  614.     local error = false
  615.    
  616.     while Obj ~= game do
  617.         if Obj == nil then
  618.             error = true
  619.             break
  620.         end
  621.         table.insert(temp, Obj.Parent == game and Obj.ClassName or tostring(Obj))
  622.         Obj = Obj.Parent
  623.     end
  624.    
  625.     table.insert(string, "game:GetService(\"" .. temp[#temp] .. "\")")
  626.    
  627.     for i = #temp - 1, 1, -1 do
  628.         table.insert(string, HasSpecial(temp[i]) and "[\"" .. temp[i] .. "\"]" or "." .. temp[i])
  629.     end
  630.  
  631.     return (error and "nil -- Path contained invalid instance" or table.concat(string, ""))
  632. end
  633.  
  634. local GetType = function(Instance)
  635.     local Types =
  636.     {
  637.         EnumItem = function()
  638.             return "Enum." .. tostring(Instance.EnumType) .. "." .. tostring(Instance.Name)
  639.         end,
  640.         Instance = function()
  641.             return GetPath(Instance)
  642.         end,
  643.         CFrame = function()
  644.             return "CFrame.new(" .. tostring(Instance) .. ")"
  645.         end,
  646.         Vector3 = function()
  647.             return "Vector3.new(" .. tostring(Instance) .. ")"
  648.         end,
  649.         BrickColor = function()
  650.             return "BrickColor.new(\"" .. tostring(Instance) .. "\")"
  651.         end,
  652.         Color3 = function()
  653.             return "Color3.new(" .. tostring(Instance) .. ")"
  654.         end,
  655.         string = function()
  656.             local S = tostring(Instance)
  657.             return "\"" .. (encrypt_string and S:gsub(".", function(c) return "\\" .. c:byte() end) or S) .. "\""
  658.         end,
  659.         Ray = function()
  660.             return "Ray.new(Vector3.new(" .. tostring(Instance.Origin) .. "), Vector3.new(" .. tostring(Instance.Direction) .. "))"
  661.         end
  662.     }
  663.  
  664.     return Types[typeof(Instance)] ~= nil and Types[typeof(Instance)]() or tostring(Instance)
  665. end
  666.  
  667. local size_frame = function(frame, UDim)
  668.     frame:TweenSize(UDim, "Out", "Quint", 0.3)
  669. end
  670.  
  671. local pos_frame = function(frame, UDim)
  672.     frame:TweenPosition(UDim, "Out", "Quint", 0.3)
  673. end
  674.  
  675. local size_pos_frame = function(frame, UDim, UDim2)
  676.     frame:TweenSizeAndPosition(UDim, UDim2, "Out", "Quint", 0.3)
  677. end
  678.  
  679. local hide = function()
  680.     size_frame(BG, UDim2.new(0, 300, 0, 20))
  681.     pos_frame(Title, UDim2.new(0, 0, 0, 0))
  682.     pos_frame(Remotes, UDim2.new(0, 10, 0, 100))
  683.     pos_frame(Source, UDim2.new(0, 270, 0, 100))
  684.     BG.Draggable = true
  685.     SetRemotes.Visible = false
  686.     SetRemotesTab.Visible = false
  687.     Source.Visible = true
  688.    
  689.     return "[]"
  690. end
  691.  
  692. local show = function()
  693.     size_frame(BG, UDim2.new(1, -300, 1, -200))
  694.     pos_frame(BG, UDim2.new(0.1, 0, 0.1, 0))
  695.     pos_frame(Title, UDim2.new(0.5, -100, 0, 0))
  696.     pos_frame(Remotes, UDim2.new(0, 10, 0, 80))
  697.     pos_frame(Source, UDim2.new(0, 270, 0, 80))
  698.     BG.Draggable = false
  699.    
  700.     return "_"
  701. end
  702.  
  703. local onclick_hide = function()
  704.     Hide.Text = Hide.Text == "_" and hide() or show()
  705. end
  706.  
  707. local onclick_settings = function()
  708.     Source.Visible = not Source.Visible
  709.     SetRemotes.Visible = not Source.Visible
  710.     SetRemotesTab.Visible = not Source.Visible
  711. end
  712.  
  713. local onclick_remotespy = function()
  714.     spy_enabled = not spy_enabled
  715.     EnableSpy.TextColor3 = EnableSpy.TextColor3 == Color3.fromRGB(60, 200, 60) and Color3.fromRGB(200, 60, 60) or Color3.fromRGB(60, 200, 60)
  716.     EnableSpy.BorderColor3 = EnableSpy.TextColor3 == Color3.fromRGB(200, 60, 60) and Color3.fromRGB(100, 30, 30) or Color3.fromRGB(30, 100, 30)
  717. end
  718.  
  719. local onclick_cryptstring = function()
  720.     encrypt_string = not encrypt_string
  721.     CryptStrings.TextColor3 = CryptStrings.TextColor3 == Color3.fromRGB(60, 200, 60) and Color3.fromRGB(200, 60, 60) or Color3.fromRGB(60, 200, 60)
  722.     CryptStrings.BorderColor3 = CryptStrings.TextColor3 == Color3.fromRGB(200, 60, 60) and Color3.fromRGB(100, 30, 30) or Color3.fromRGB(30, 100, 30)
  723. end
  724.  
  725. local clear_logs = function()
  726.     Remotes:ClearAllChildren()
  727.     remotes_fired = 0
  728.     Total.Text = "0"
  729. end
  730.  
  731. local filter_events = function()
  732.     local n = 0
  733.     for i, v in pairs(SetRemotes:GetChildren()) do
  734.         v.Visible = not (FilterE.TextColor3 == Color3.fromRGB(60, 200, 60) and v.Icon.Image == "rbxassetid://413369623")
  735.         if v.Visible == true then
  736.             n = n + 1
  737.             v.Position = UDim2.new(0, 10, 0, -20 + n * 30)
  738.         else
  739.             v.Position = UDim2.new(0, 10, 0, -20 + i * 30)
  740.         end
  741.     end
  742. end
  743.  
  744. local filter_functions = function()
  745.     local n = 0
  746.     for i, v in pairs(SetRemotes:GetChildren()) do
  747.         v.Visible = not (FilterF.TextColor3 == Color3.fromRGB(60, 200, 60) and v.Icon.Image == "rbxassetid://413369506")
  748.         if v.Visible == true then
  749.             n = n + 1
  750.             v.Position = UDim2.new(0, 10, 0, -20 + n * 30)
  751.         else
  752.             v.Position = UDim2.new(0, 10, 0, -20 + i * 30)
  753.         end
  754.     end
  755. end
  756.  
  757. local onclick_fevents = function()
  758.     FilterE.TextColor3 = FilterE.TextColor3 == Color3.fromRGB(60, 200, 60) and Color3.fromRGB(200, 60, 60) or Color3.fromRGB(60, 200, 60)
  759.     FilterE.BorderColor3 = FilterE.TextColor3 == Color3.fromRGB(200, 60, 60) and Color3.fromRGB(100, 30, 30) or Color3.fromRGB(30, 100, 30)
  760.     filter_events()
  761. end
  762.  
  763. local onclick_ffunctions = function()
  764.     FilterF.TextColor3 = FilterF.TextColor3 == Color3.fromRGB(60, 200, 60) and Color3.fromRGB(200, 60, 60) or Color3.fromRGB(60, 200, 60)
  765.     FilterF.BorderColor3 = FilterF.TextColor3 == Color3.fromRGB(200, 60, 60) and Color3.fromRGB(100, 30, 30) or Color3.fromRGB(30, 100, 30)
  766.     filter_functions()
  767. end
  768.  
  769. local Highlight = function(string, keywords)
  770.     local K = {}
  771.     local S = string
  772.     local Token =
  773.     {
  774.         ["="] = true,
  775.         ["."] = true,
  776.         [","] = true,
  777.         ["("] = true,
  778.         [")"] = true,
  779.         ["["] = true,
  780.         ["]"] = true,
  781.         ["{"] = true,
  782.         ["}"] = true,
  783.         [":"] = true,
  784.         ["*"] = true,
  785.         ["/"] = true,
  786.         ["+"] = true,
  787.         ["-"] = true,
  788.         ["%"] = true,
  789.         [";"] = true,
  790.         ["~"] = true
  791.     }
  792.     for i, v in pairs(keywords) do
  793.         K[v] = true
  794.     end
  795.     S = S:gsub(".", function(c)
  796.         if Token[c] ~= nil then
  797.             return "\32"
  798.         else
  799.             return c
  800.         end
  801.     end)
  802.     S = S:gsub("%S+", function(c)
  803.         if K[c] ~= nil then
  804.             return c
  805.         else
  806.             return (" "):rep(#c)
  807.         end
  808.     end)
  809.  
  810.     return S
  811. end
  812.  
  813. local Tokens = function(string)
  814.     local Token =
  815.     {
  816.         ["="] = true,
  817.         ["."] = true,
  818.         [","] = true,
  819.         ["("] = true,
  820.         [")"] = true,
  821.         ["["] = true,
  822.         ["]"] = true,
  823.         ["{"] = true,
  824.         ["}"] = true,
  825.         [":"] = true,
  826.         ["*"] = true,
  827.         ["/"] = true,
  828.         ["+"] = true,
  829.         ["-"] = true,
  830.         ["%"] = true,
  831.         [";"] = true,
  832.         ["~"] = true
  833.     }
  834.     local A = ""
  835.     string:gsub(".", function(c)
  836.         if Token[c] ~= nil then
  837.             A = A .. c
  838.         elseif c == "\n" then
  839.             A = A .. "\n"
  840.         elseif c == "\t" then
  841.             A = A .. "\t"
  842.         else
  843.             A = A .. "\32"
  844.         end
  845.     end)
  846.  
  847.     return A
  848. end
  849.  
  850. local strings = function(string)
  851.     local highlight = ""
  852.     local quote = false
  853.     string:gsub(".", function(c)
  854.         if quote == false and c == "\"" then
  855.             quote = true
  856.         elseif quote == true and c == "\"" then
  857.             quote = false
  858.         end
  859.         if quote == false and c == "\"" then
  860.             highlight = highlight .. "\""
  861.         elseif c == "\n" then
  862.             highlight = highlight .. "\n"
  863.     elseif c == "\t" then
  864.         highlight = highlight .. "\t"
  865.         elseif quote == true then
  866.             highlight = highlight .. c
  867.         elseif quote == false then
  868.             highlight = highlight .. "\32"
  869.         end
  870.     end)
  871.  
  872.     return highlight
  873. end
  874.  
  875. local comments = function(string)
  876.     local ret = ""
  877.     string:gsub("[^\r\n]+", function(c)
  878.         local comm = false
  879.         local i = 0
  880.         c:gsub(".", function(n)
  881.             i = i + 1
  882.             if c:sub(i, i + 1) == "--" then
  883.                 comm = true
  884.             end
  885.             if comm == true then
  886.                 ret = ret .. n
  887.             else
  888.                 ret = ret .. "\32"
  889.             end
  890.         end)
  891.         ret = ret
  892.     end)
  893.    
  894.     return ret
  895. end
  896.  
  897. local copy_source = function()
  898.     local script = ""
  899.     local copy
  900.     for i, v in pairs(Source:GetChildren()) do
  901.         script = script .. v.SourceText.Text .. "\n"
  902.     end
  903.     if Clipboard ~= nil then
  904.         copy = Clipboard.set
  905.     elseif Synapse ~= nil then
  906.         copy = function(str)
  907.             Synapse:Copy(str)
  908.         end
  909.     elseif setclipboard ~= nil then
  910.         copy = setclipboard
  911.     end
  912.     copy(script)
  913. end
  914.  
  915. local onclick_fullscreen = function()
  916.     size_pos_frame(BG, UDim2.new(1, 0, 1, 40), UDim2.new(0, 0, 0, -40))
  917.     BG.Draggable = false
  918. end
  919.  
  920. local filter_remotes = function(type)
  921.     local n = 0
  922.     if type == "Text" then
  923.         for i, v in pairs(SetRemotes:GetChildren()) do
  924.             if v.Name:lower():match(Search.Text:lower()) and string ~= "" then
  925.                 v.Visible = true
  926.                 n = n + 1
  927.             else
  928.                 v.Visible = false
  929.             end
  930.             if v.Visible == true then
  931.                 v.Position = UDim2.new(0, 10, 0, -20 + n * 30)
  932.             else
  933.                 v.Position = UDim2.new(0, 10, 0, -20 + i * 30)
  934.             end
  935.         end
  936.     end
  937. end
  938.  
  939. local fix = function(string)
  940.     if string == "/e fix" then
  941.         show()
  942.         wait(0.3)
  943.         pos_frame(BG, UDim2.new(0.1, 0, 0.1, 0))
  944.     end
  945. end
  946.  
  947. -- FrontEnd-Connections // UI Events
  948.  
  949. Hide.MouseButton1Down:Connect(onclick_hide)
  950. Settings.MouseButton1Down:Connect(onclick_settings)
  951. ClearList.MouseButton1Down:Connect(clear_logs)
  952. EnableSpy.MouseButton1Down:Connect(onclick_remotespy)
  953. ToClipboard.MouseButton1Down:Connect(copy_source)
  954. CryptStrings.MouseButton1Down:Connect(onclick_cryptstring)
  955. FullScreen.MouseButton1Down:Connect(onclick_fullscreen)
  956. FilterE.MouseButton1Down:Connect(onclick_fevents)
  957. FilterF.MouseButton1Down:Connect(onclick_ffunctions)
  958. Search.Changed:Connect(filter_remotes)
  959. game:GetService("Players").LocalPlayer.Chatted:Connect(fix)
  960.  
  961. -- Recursive Remotefill // UI-Backend
  962.  
  963. Table_TS = function(T)
  964.     local M = {}
  965.     for i, v in pairs(T) do
  966.         local I = "\n\t" .. (type(i) == "number" and "[" .. i .. "] = " or "[\"" .. i .. "\"] = ")
  967.         table.insert(M, I .. (type(v) == "table" and Table_TS(v) or GetType(v)))
  968.     end
  969.    
  970.     return "\n{" .. table.concat(M, ", ") .. "\n}"
  971. end
  972.  
  973. function fill(base)
  974.     for i, v in pairs(base:GetChildren()) do
  975.         if v.ClassName:match("Remote") and v.Name ~= "CharacterSoundEvent" then
  976.             local B = SBTN:Clone()
  977.            
  978.             B.Parent = SetRemotes
  979.             B.Icon.Image = (v.ClassName == "RemoteEvent" and "rbxassetid://413369506" or "rbxassetid://413369623")
  980.             B.RemoteName.Text = v.Name
  981.             B.ID.Text = GetPath(v)
  982.             B.Name = v.Name
  983.             B.Position = UDim2.new(0, 10, 0, -20 + #SetRemotes:GetChildren() * 30)
  984.             B.MouseButton1Down:Connect(function()
  985.                 B.Enabled.Text = B.Enabled.Text == "Enabled" and "Disabled" or "Enabled"
  986.                 B.Enabled.TextColor3 = B.Enabled.Text == "Enabled" and Color3.fromRGB(60, 200, 60) or Color3.fromRGB(200, 60, 60)
  987.                 B.Enabled.BorderColor3 = B.Enabled.Text == "Enabled" and Color3.fromRGB(30, 100, 30) or Color3.fromRGB(100, 30, 30)
  988.             end)
  989.         end
  990.         fill(v)
  991.     end
  992. end
  993.  
  994. fill(game)
  995.  
  996. -- Backend // Remotespy Backend
  997.  
  998. local game_meta = getrawmetatable(game)
  999. local game_namecall = game_meta.__namecall
  1000. local namecall_dump = {}
  1001. local current_rmt = nil
  1002. local g_caller = nil
  1003. local f_return = nil
  1004. local Step = game:GetService("RunService").Stepped
  1005.  
  1006. setreadonly(game_meta, false)
  1007.  
  1008. local namecall_script = function(object, method, arguments)
  1009.     local mScript = "-- Script generated by R2Sv2 --\n"
  1010.     local args = {}
  1011.     for i, v in pairs(arguments) do
  1012.         mScript = mScript .. "local A_" .. i .. " = " .. (type(v) == "table" and Table_TS(v) or GetType(v)) .. "\n"
  1013.         table.insert(args, "A_" .. i)
  1014.     end
  1015.     mScript = mScript .. "local Event = " .. GetPath(object) .. "\n\n"
  1016.     mScript = mScript .. "Event:" .. method .. "(" .. table.concat(args, ", ") .. ")"
  1017.     return mScript
  1018. end
  1019.  
  1020. local dump_script = function(script)
  1021.     Source:ClearAllChildren()
  1022.     local lines = 0
  1023.     script:gsub("[^\r\n]+", function(c)
  1024.         lines = lines + 1
  1025.         local tabs = 0
  1026.         c:gsub("%\t", function() tabs = tabs + 1 end)
  1027.         local line = ScriptLine:Clone()
  1028.         line.Parent = Source
  1029.         line.SourceText.Text = c
  1030.         line.Line.Text = lines
  1031.         line.RemoteHighlight.Text = Highlight(c, {"FireServer", "InvokeServer", "invokeServer", "fireServer"})
  1032.         line.Position = UDim2.new(0, tabs * (17 * 2), 0, -17 + #Source:GetChildren() * 17)
  1033.         line.Globals.Text = Highlight(c, global_env)
  1034.         line.Line.Position = UDim2.new(0, 0 - tabs * (17 * 2), 0, 0)
  1035.         line.Strings.Text = strings(c)
  1036.         line.Keywords.Text = Highlight(c, lua_keywords)
  1037.         line.Tokens.Text = Tokens(c)
  1038.         line.Comments.Text = comments(c)
  1039.     end)
  1040. end
  1041.  
  1042. local log_remote = function(table)
  1043.     if SetRemotes[table.object.Name].Enabled.Text == "Disabled" then return end
  1044.     local B = RBTN:Clone()
  1045.     g_caller = table.caller
  1046.     remotes_fired = remotes_fired + 1
  1047.     Total.Text = remotes_fired
  1048.  
  1049.     B.Parent = Remotes
  1050.     B.Position = UDim2.new(0, 10, 0, -20 + #Remotes:GetChildren() * 30)
  1051.     B.Icon.Image = table.method == "FireServer" and "rbxassetid://413369506" or "rbxassetid://413369623"
  1052.     B.RemoteName.Text = table.object.Name
  1053.     B.ID.Text = tostring(remotes_fired)
  1054.     B.MouseButton1Down:Connect(function()
  1055.         dump_script(table.script)
  1056.         g_caller = table.caller
  1057.         f_return = table.freturn == nil and table.object.Name .. " is not RemoteFunction" or table.freturn
  1058.     end)
  1059. end
  1060.  
  1061.  
  1062. local get_namecall_dump = function(mScript, mObject, arguments)
  1063.     --[[local Ret = nil
  1064.     if mObject.ClassName == "RemoteFunction" then
  1065.         local freturn = {pcall(mObject.InvokeServer, mObject, unpack(arguments))}
  1066.         freturn = {select(2, unpack(freturn))}
  1067.        
  1068.         if #freturn == 0 then
  1069.             Ret = mObject.Name .. " is a void type RemoteFunction."
  1070.         else
  1071.             Ret = Table_TS(freturn)
  1072.         end
  1073.     end
  1074.     namecall_dump[#namecall_dump + 1] =
  1075.     {  
  1076.         script = namecall_script(mObject, mObject.ClassName == "RemoteEvent" and "FireServer" or "InvokeServer", arguments),
  1077.         caller = mScript,
  1078.         object = mObject,
  1079.         method = mObject.ClassName == "RemoteEvent" and "FireServer" or "InvokeServer",
  1080.         freturn = Ret
  1081.     }--]]
  1082. end
  1083.  
  1084. GetReturn.MouseButton1Down:Connect(function()
  1085.     dump_script('void')
  1086. end)
  1087.  
  1088. Decompile.MouseButton1Down:Connect(function()
  1089.     dump_script("Decompile not supported for new LuaU update!")
  1090. end)
  1091.  
  1092. Step:Connect(function()
  1093.     while #namecall_dump > 0 do
  1094.         log_remote(table.remove(namecall_dump, 1))
  1095.     end
  1096. end)
  1097.  
  1098. function game_meta.__namecall(object, ...)
  1099.     local method = tostring(getnamecallmethod())
  1100.     local args = {...}
  1101.     if method:match("Server") and spy_enabled == true then
  1102.         local mScript = "-- Script generated by R2Sv2 --\n"
  1103.         local args2 = {}
  1104.         for i, v in pairs(args) do
  1105.             if type(v) ~= 'userdata' then v=tostring(v);i=tostring(i) end
  1106.             --if v.GetFullName then v = v:GetFullName() end
  1107.             mScript = mScript .. "local A_" .. tostring(i) .. " = " .. (type(v) == 'userdata' and v.GetFullName and ('game.' .. v.GetFullName(v)) or tostring(v)) .. "\n"
  1108.             table.insert(args2, "A_" .. tostring(i))
  1109.         end
  1110.         mScript = mScript .. "local Event = game." .. object:GetFullName() .. "\n\n"
  1111.         mScript = mScript .. "Event:" .. method .. "(" .. table.concat(args2, ", ") .. ")"
  1112.        
  1113.         namecall_dump[#namecall_dump + 1] =
  1114.         {  
  1115.             script = mScript,
  1116.             caller = getfenv(2).script,
  1117.             object = object,
  1118.             method = object.ClassName == "RemoteEvent" and "FireServer" or "InvokeServer",
  1119.             freturn = Ret
  1120.         }
  1121.     end
  1122.  
  1123.     return game_namecall(object, ...)
  1124. end
Advertisement
Add Comment
Please, Sign In to add comment