Advertisement
Rylenss

Quex; Raider

Sep 24th, 2022
975
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 30.68 KB | None | 0 0
  1. --
  2. -- Quex Projects; Raider
  3. --  Last updated: 9/24/22
  4. --  Last added: New commands
  5. --
  6. --  Version: 1.4-7
  7. --
  8.  
  9. --[[    Commands
  10.    
  11.     Say:[Message]
  12.     Spam:[Repeat, (Stop)]:[Message]
  13.     Rage
  14.     Swis:[Bot, (All), (Stop)]:[User, (Me), (Random)]
  15.     Lyrics:[Lyric]
  16.    
  17.     Tp:[Bot, (All)]:[User, (Me), (Random)]
  18.     Ad:[Bot, (All), (Stop)]
  19.     Line:[User, (Me), (Random)]:[PerRow]:[SpacingX]:[SpacingZ]
  20.     Fling:[Bot, (All)]:[User, (Me), (Random)]:[Method]:[Time]
  21.     Lookat:[Bot, (All), (Stop)]:[User, (Me), (Random)]
  22.     Roam:[Bot, (All), (Stop)]:[RandomJumps~(Y)]:[MoveSize]:[MoveWaitMin]:[MoveWaitMax]
  23.     Follow:[Bot, (All), (Stop)]:[User, (Me), (Random)]
  24.     Path:[Bot, (All)]:[User, (Me), (Random)]
  25.    
  26.     Speed:[Bot, (All)]:[Speed]
  27.     Jump:[Bot, (All)]:[Power]
  28.    
  29.     Wl:[(Add), (Remove)]:[Permission~(A, B, C)]
  30.     Reset:[Bot, (All)]
  31.     Restart:[Bot, (All)]
  32.     Disable:[Bot, (All)]
  33.     Leave:[Bot, (All)]
  34.    
  35. ]]--
  36. --[[    Suggestions
  37.    
  38.     Rage:[Bot, (All), (Stop)]
  39.    
  40. ]]--
  41. --[[    Permission levels
  42.     < A >
  43.         Say
  44.         Swis
  45.         Lookat
  46.         Roam
  47.         Follow
  48.         Path
  49.         Speed
  50.         Jump
  51.     < B >
  52.         < A >
  53.         Spam
  54.         Rage -
  55.         Lyrics
  56.         Tp
  57.         Line
  58.     < C >
  59.         < A >
  60.         < B >
  61.         Ad
  62.         Fling
  63.         Wl
  64.         Reset
  65.         Restart
  66.         Leave
  67. ]]--
  68. local Genv = (getgenv or function()return _G end)()["quex/raider"];
  69.  
  70. local Runtime = game:GetService("RunService");
  71. local Players = game:GetService("Players");
  72.  
  73. local Whitelisted = {
  74.     [143580602] = "C",
  75.     (function()
  76.         local Table = {};
  77.         for Int, Value in pairs(Genv["setup/alts"]) do
  78.             Table[Players:GetUserIdFromNameAsync(Value)] = "C";
  79.         end;
  80.         return table.unpack(Table);
  81.     end)(),
  82.     ["Everyone"] = "A",
  83. };
  84.  
  85. local Bot = Players.LocalPlayer;
  86. local BotNumber = table.find(Genv["setup/alts"], Bot.Name) or 0;
  87.  
  88. local Form = string.format;
  89.  
  90. local Services = {};
  91. local ServicesFollow = nil;
  92.  
  93. local Disabled = false;
  94.  
  95. local TimeFunction = Runtime:IsRunning() and time or os.clock;
  96.  
  97. local Fps = 60;
  98. local LastIteration, Start, FrameUpdates = 0, TimeFunction(), {};
  99.  
  100. local LastMessage = "";
  101.  
  102. local Spamming = false;
  103. local MockingUser = nil;
  104. local LookingAtUser = nil;
  105. local PathFindStopped = false;
  106. local LyricsStopped = false;
  107. local Roaming = false;
  108. local Ading = false;
  109. local AdSpamLines = {
  110.     "%s, Join us!",
  111.     "Quex is crazy",
  112.     "This is a drill",
  113.     "We found you",
  114.     "Arnt you surprised?",
  115.     "I did my part, now you do yours",
  116.     "I am best scripter, on granny",
  117.     "You couldnt make this if you tried",
  118.     "Do you even have a brain?",
  119.     "I am spamming this because im so cool",
  120.     "Hey look I did it",
  121.     "Im so cool",
  122.     "We are very amazing",
  123.     "So epic",
  124.     "%s, hello there",
  125.     "%s is ok i guess..."
  126. };
  127.  
  128. local Lyrics = {["lionhearted"] = {[1] = {["Lyric"] = "Flipping out the light, trying to survive this endless fight", ["WaitTime"] = 0}, [2] = {["Lyric"] = "If you shoot them down, we can make it right, we'll make it right", ["WaitTime"] = 7}, [3] = {["Lyric"] = "And they'll light the sky as they multiply, they multiply", ["WaitTime"] = 7.5}, [4] = {["Lyric"] = "And no matter what they try, they won't take away our will to fight", ["WaitTime"] = 7.5}, [5] = {["Lyric"] = "If you shoot them down, we can make it right, we'll make it right", ["WaitTime"] = 4}, [6] = {["Lyric"] = "They broke the walls we guarded", ["WaitTime"] = 5.5}, [7] = {["Lyric"] = "But we don't care about it", ["WaitTime"] = 4}, [8] = {["Lyric"] = "We'll finish what we started", ["WaitTime"] = 3.5}, [9] = {["Lyric"] = "So promise me that", ["WaitTime"] = 3.5}, [10] = {["Lyric"] = "We'll be the lionhearted", ["WaitTime"] = 4}, [11] = {["Lyric"] = "For we don't care about it", ["WaitTime"] = 3.7}, [12] = {["Lyric"] = "We'll finish what we started", ["WaitTime"] = 4}, [13] = {["Lyric"] = "So promise me that they'll fall", ["WaitTime"] = 3}, [14] = {["Lyric"] = "No matter what they try, they won't take away our will to fight", ["WaitTime"] = 70}, [15] = {["Lyric"] = "If you shoot them down, we can make it right, we'll make it right", ["WaitTime"] = 7}, [16] = {["Lyric"] = "And up against all odds, take a thousands lifes, a thousand lifes", ["WaitTime"] = 7.5}, [17] = {["Lyric"] = "And no matter what they try, they won't take away our will to fight", ["WaitTime"] = 7.5}, [18] = {["Lyric"] = "So if you shoot them down, we can make it right, we'll make it right", ["WaitTime"] = 4}, [19] = {["Lyric"] = "They broke the walls we guarded", ["WaitTime"] = 5.5}, [20] = {["Lyric"] = "But we don't care about it", ["WaitTime"] = 3.8}, [21] = {["Lyric"] = "We'll finish what we started", ["WaitTime"] = 3.5}, [22] = {["Lyric"] = "So promise me that", ["WaitTime"] = 3.5}, [23] = {["Lyric"] = "We'll be the lionhearted", ["WaitTime"] = 3.5}, [24] = {["Lyric"] = "For we don't care about it", ["WaitTime"] = 3.7}, [25] = {["Lyric"] = "We'll finish what we started", ["WaitTime"] = 4}, [26] = {["Lyric"] = "So promise me that they'll fall", ["WaitTime"] = 4}}};
  129.  
  130. Services[#Services+1] = Runtime.Heartbeat:Connect(function()
  131.     LastIteration = TimeFunction();
  132.     for Index = #FrameUpdates, 1, -1 do
  133.         FrameUpdates[Index+1] = FrameUpdates[Index] >= LastIteration-1 and FrameUpdates[Index] or nil;
  134.     end;
  135.     FrameUpdates[1] = LastIteration;
  136.     Fps = tostring(math.floor(TimeFunction()-Start >= 1 and #FrameUpdates or #FrameUpdates/(TimeFunction()-Start)));
  137. end);
  138. Bot.Idled:Connect(function()
  139.     game:GetService("VirtualUser"):CaptureController();
  140.     game:GetService("VirtualUser"):ClickButton2(Vector2.new());
  141. end);
  142.  
  143. function Say(String: string)
  144.     game:GetService("ReplicatedStorage").DefaultChatSystemChatEvents.SayMessageRequest:FireServer(String, "All");
  145. end;
  146. function Animate(Parent: Instance, Time: number, Style: Enum.EasingStyle, Direction: Enum.EasingDirection, Animation: {[string]: any})
  147.     game:GetService("TweenService"):Create(Parent, TweenInfo.new(Time, Style, Direction, 0, false, 0), Animation):Play();
  148. end;
  149. function Or(Variable: any, Checks: {[number]: any})
  150.     for Int, Value in pairs(Checks) do
  151.         if Variable == Value then
  152.             return true;
  153.         end;
  154.     end;
  155.     return false;
  156. end;
  157. function GetOnlineBots(Ordered: boolean)
  158.     local Online = {};
  159.     if Ordered == true then
  160.         for Int = 1, #Genv["setup/alts"], 1 do
  161.             if Players:FindFirstChild(Genv["setup/alts"][Int]) then
  162.                 Online[Int] = Players:FindFirstChild(Genv["setup/alts"][Int]);
  163.             end;
  164.         end;
  165.     else
  166.         for Int, Player in pairs(Players:GetPlayers()) do
  167.             if table.find(Genv["setup/alts"], Player.Name) then
  168.                 table.insert(Online, Player);
  169.             end;
  170.         end;
  171.     end;
  172.     return Online;
  173. end;
  174. function HasPermission(UserId: number, RequiredLevel: string)
  175.     local UserLevel = Whitelisted.Everyone;
  176.     for Int, Value in pairs(Whitelisted) do
  177.         if Int == UserId then
  178.             UserLevel = Value;
  179.         end;
  180.     end;
  181.     return (RequiredLevel == "A" and Or(UserLevel, {"A", "B", "C"})) or (RequiredLevel == "B" and Or(UserLevel, {"B", "C"})) or (RequiredLevel == "C" and UserLevel == "C");
  182. end;
  183. function Token(Layout: string, Library: string|any)
  184.     local UUID = "";
  185.     local Library = string.split(Library or "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", "");
  186.     for Int, String in pairs(string.split(Layout, "")) do
  187.         if String == "#" then
  188.             String = Library[math.random(1, #Library)];
  189.         end;
  190.         UUID ..= String;
  191.     end;
  192.     return UUID;
  193. end;
  194. function CommandIs(Message: string, Command: string)
  195.     return string.lower(string.sub(Message, 1, #Command)) == Command;
  196. end;
  197. function LookForUserByDisplay(String: string)
  198.     for Int, User in pairs(Players:GetPlayers()) do
  199.         if String == User.DisplayName then
  200.             return User;
  201.         end;
  202.     end;
  203.     return false;
  204. end;
  205. function GetRandomUser()
  206.     local Player = nil;
  207.     while true do
  208.         Player = Players:GetPlayers()[math.random(1, #Players:GetPlayers())];
  209.         if #Players:GetPlayers() == #GetOnlineBots(false) then
  210.             break;
  211.         elseif table.find(GetOnlineBots(false), Player.Name) == nil then
  212.             break;
  213.         end;
  214.     end;
  215.     return Player;
  216. end;
  217. function GetClosestUser()
  218.     local Lowest = math.huge;
  219.     local Closest = nil;
  220.     for Int, Player in pairs(Players:GetPlayers()) do
  221.         if Player ~= Bot and Player.Character and Player.Character:FindFirstChild("HumanoidRootPart") then
  222.             local Estimate = (Bot.Character.HumanoidRootPart.Position-Player.Character.HumanoidRootPart.Position).Magnitude;
  223.             if Estimate < Lowest then
  224.                 Lowest = Estimate;
  225.                 Closest = Player;
  226.             end;
  227.         end;
  228.     end;
  229.     return Closest;
  230. end;
  231. function GetArgs(String: string, Required: number)
  232.     local Args = {};
  233.     local Split = string.split(String, ":");
  234.     table.foreach(Split, function(Int, Value)
  235.         if Int <= Required+1 then
  236.             table.insert(Args, Value);
  237.         end;
  238.     end);
  239.     table.remove(Args, 1);
  240.     return table.unpack(Args);
  241. end;
  242. local PathFindId = Token("####-####-####-####");
  243. function Run(User: Player, Message: string)
  244.     if Disabled == false then
  245.         if CommandIs(Message, "say:") == true then
  246.             if HasPermission(User.UserId, "A") == true then
  247.                 Say((string.lower(string.sub(Message, 5, -1)) == "last" and LastMessage) or (string.lower(string.sub(Message, 5, -1)) == "fps" and Fps) or (string.lower(string.sub(Message, 5, -1)) == "token" and Token("#####|#####")) or string.sub(Message, 5, -1));
  248.             end;
  249.         elseif CommandIs(Message, "spam:") == true then
  250.             if HasPermission(User.UserId, "B") == true then
  251.                 local Count, Request = GetArgs(Message, 2);
  252.                 if string.lower(Count) == "stop" then
  253.                     Spamming = false;
  254.                 elseif typeof(tonumber(Count)) == "number" then
  255.                     Request = (string.lower(Request) == "last" and LastMessage) or (string.lower(Request) == "fps" and Fps) or (string.lower(Request) == "token" and Token("#####|#####")) or Request;
  256.                     Spamming = true;
  257.                     tonumber(Count);
  258.                     for Int = 1, Count, 1 do
  259.                         if Spamming == false then
  260.                             break;
  261.                         end;
  262.                         Say(Request);
  263.                         wait(0.5);
  264.                     end;
  265.                 end;
  266.             end;
  267.         elseif CommandIs(Message, "swis:") == true then
  268.             if HasPermission(User.UserId, "A") == true then
  269.                 local ChosenBot, ChosenUser = GetArgs(Message, 2);
  270.                 if string.lower(ChosenBot) == "stop" then
  271.                     MockingUser = nil;
  272.                 elseif string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  273.                     ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser());
  274.                     if ChosenUser then
  275.                         MockingUser = ChosenUser;
  276.                     end;
  277.                 end;
  278.             end;
  279.         elseif CommandIs(Message, "lyrics:") == true then
  280.             if HasPermission(User.UserId, "B") == true then
  281.                 local Lyric = GetArgs(Message, 1);
  282.                 if string.lower(Lyric) == "stop" then
  283.                     LyricsStopped = true;
  284.                 elseif Lyrics[Lyric] then
  285.                     LyricsStopped = false;
  286.                     for Int = 1, #Lyrics[Lyric], 1 do
  287.                         if LyricsStopped == true then
  288.                             LyricsStopped = false;
  289.                             break;
  290.                         end;
  291.                         local TheLyrics = Lyrics[Lyric][Int];
  292.                         wait(TheLyrics.WaitTime);
  293.                         if LyricsStopped == true then
  294.                             LyricsStopped = false;
  295.                             break;
  296.                         end;
  297.                         Say(TheLyrics.Lyric);
  298.                     end;
  299.                 end;
  300.             end;
  301.         elseif CommandIs(Message, "tp:") == true then
  302.             if HasPermission(User.UserId, "B") == true then
  303.                 local ChosenBot, ChosenUser = GetArgs(Message, 2);
  304.                 ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser());
  305.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  306.                     if ChosenUser then
  307.                         if ChosenUser.Character and ChosenUser.Character:FindFirstChild("HumanoidRootPart") then
  308.                             Bot.Character.HumanoidRootPart.CFrame = ChosenUser.Character.HumanoidRootPart.CFrame;
  309.                         end;
  310.                     end;
  311.                 end;
  312.             end;
  313.         elseif CommandIs(Message, "ad:") == true then
  314.             if HasPermission(User.UserId, "C") == true then
  315.                 local ChosenBot = GetArgs(Message, 1);
  316.                 if string.lower(ChosenBot) == "stop" then
  317.                     Ading = false;
  318.                 elseif string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  319.                     Ading = false;
  320.                     wait(0.1);
  321.                     Ading = true;
  322.                     coroutine.resume(coroutine.create(function()
  323.                         while Ading == true do
  324.                             for Int, User in pairs(Players:GetPlayers()) do
  325.                                 if Ading == false then break end;
  326.                                 if table.find(GetOnlineBots(false), User.Name) == nil then
  327.                                     local Looping = true;
  328.                                     delay(3, function()
  329.                                         Looping = false;
  330.                                     end);
  331.                                     xpcall(function()
  332.                                         while Looping == true do
  333.                                             Bot.Character.HumanoidRootPart.CFrame = User.Charaacter.HumanoidRootPart.CFrame;
  334.                                             wait();
  335.                                         end;
  336.                                     end, function()end);
  337.                                     Say(Form(AdSpamLines[math.random(1, #AdSpamLines)], User.DisplayName));
  338.                                 end;
  339.                             end;
  340.                         end;
  341.                     end));
  342.                 end;
  343.             end;
  344.         elseif CommandIs(Message, "line:") == true then
  345.             if HasPermission(User.UserId, "B") == true then
  346.                 local ChosenUser, PerRow, SpacingX, SpacingZ = GetArgs(Message, 4);
  347.                 PerRow, SpacingX, SpacingZ = (PerRow == "army" and 5 or PerRow) or 5, SpacingX or 4, SpacingZ or 3;
  348.                 ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser());
  349.                 if ChosenUser then
  350.                     local LastCFrame = ChosenUser.Character.HumanoidRootPart.CFrame;
  351.                     for Index = 0, BotNumber, 1 do
  352.                         if Index%PerRow == 0 then
  353.                             LastCFrame = LastCFrame*CFrame.new(-(SpacingX*PerRow)+SpacingX, 0, 0);
  354.                         else
  355.                             LastCFrame = Index == 1 and LastCFrame*CFrame.new(-(SpacingX*PerRow/2)+SpacingX*2-SpacingX/2, 0, SpacingZ) or LastCFrame*CFrame.new(SpacingX, 0, 0);
  356.                         end;
  357.                         if Index%PerRow == 0 then
  358.                             LastCFrame = LastCFrame*CFrame.new(0, 0, SpacingZ);
  359.                         end;
  360.                     end;
  361.                     Bot.Character.HumanoidRootPart.CFrame = LastCFrame;
  362.                 end;
  363.             end;
  364.         elseif CommandIs(Message, "fling:") == true then
  365.             if HasPermission(User.UserId, "C") == true then
  366.                 local ChosenBot, ChosenUser, Method, Time = GetArgs(Message, 4);
  367.                 Method, Time = Method or 2, Time or 5;
  368.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  369.                     ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser());
  370.                     if ChosenUser then
  371.                         if typeof(tonumber(Method)) == "number" and typeof(tonumber(Time)) == "number" then
  372.                             local OriginalPos = Bot.Character.HumanoidRootPart.CFrame;
  373.                             local Active = true;
  374.                             if tonumber(Method) == 1 then
  375.                                 local FPart = Instance.new("Part", Bot.Character);
  376.                                 FPart.Transparency = 1;
  377.                                 FPart.Anchored = true;
  378.                                 FPart.CanCollide = false;
  379.                                 FPart.Position = Bot.Character.Head.Position;
  380.                                 FPart.Name = "FPart";
  381.  
  382.                                 wait();
  383.                                 _G.ReanimationType = "PDeath";
  384.                                 _G.Velocity = Vector3.new(36, 0, 0);
  385.                                 _G.FlingBlock = true;
  386.                                 _G.FlingBlockTransparency = 1;
  387.                                 _G.HighlightFlingBlock = true;
  388.                                 _G.FlingBlockPosition = "FPart";
  389.                                 _G.HighlightFlingBlockColor = Color3.fromRGB(255, 50, 50);
  390.                                 xpcall(function()
  391.                                     loadstring(game:HttpGet("https://raw.githubusercontent.com/GelatekWasTaken/Reanimation.lua/main/Main/Main.lua"))();
  392.                                 end, function()end);
  393.  
  394.                                 wait(1);
  395.                                 local Service = nil;
  396.                                 Service = Runtime.Heartbeat:Connect(function()
  397.                                     xpcall(function()
  398.                                         Bot.Character.Reanimate.FPart.Position = ChosenUser.Character.HumanoidRootPart.Position;
  399.                                     end, function()end);
  400.                                     if Active == false then
  401.                                         Service:Disconnect();
  402.                                     end;
  403.                                 end);
  404.                                 delay(tonumber(Time), function()
  405.                                     Active = false;
  406.                                     Bot.Character:Remove();
  407.                                     wait(Players.RespawnTime);
  408.                                     repeat wait() until Bot.Character ~= nil;
  409.                                     Bot.Character.HumanoidRootPart.CFrame = OriginalPos;
  410.                                 end);
  411.                             elseif tonumber(Method) == 2 then
  412.                                 local Thrust = Instance.new("BodyThrust", Bot.Character.Humanoid.RigType == Enum.HumanoidRigType.R6 and Bot.Character.Torso or Bot.Character.UpperTorso);
  413.                                 local Service = nil Service = Runtime.Heartbeat:Connect(function()
  414.                                     xpcall(function()
  415.                                         Bot.Character.HumanoidRootPart.CFrame = ChosenUser.Character.HumanoidRootPart.CFrame;
  416.                                         Bot.Character.HumanoidRootPart.CanCollide = false;
  417.                                         if Bot.Character.Humanoid.RigType == Enum.HumanoidRigType.R6 then
  418.                                             Bot.Character.Torso.CanCollide = false;
  419.                                         else
  420.                                             Bot.Character.UpperTorso.CanCollide = false;
  421.                                         end;
  422.                                         Bot.Character.Head.CanCollide = false;
  423.                                     end, function()end);
  424.                                     if Active == false then
  425.                                         Thrust:Remove();
  426.                                         Service:Disconnect();
  427.                                     end;
  428.                                 end);
  429.                                 Thrust.Force = Vector3.new(2100, 0, 0);
  430.                                 Thrust.Location = Vector3.new(0, 0, 2100);
  431.                                 delay(tonumber(Time), function()
  432.                                     Active = false;
  433.                                     repeat wait() until Bot.Character ~= nil;
  434.                                     for Int = 0, 40, 1 do
  435.                                         Bot.Character.HumanoidRootPart.CFrame = OriginalPos;
  436.                                         Bot.Character.HumanoidRootPart.Velocity = Vector3.new(0, 0, 0);
  437.                                         Runtime.Heartbeat:Wait();
  438.                                     end;
  439.                                 end);
  440.                             end;
  441.                         end;
  442.                     end;
  443.                 end;
  444.             end;
  445.         elseif CommandIs(Message, "roam:") == true then
  446.             if HasPermission(User.UserId, "A") == true then
  447.                 local ChosenBot, RandomJumps, MoveSize, MoveWaitMin, MoveWaitMax = GetArgs(Message, 5);
  448.                 RandomJumps, MoveSize, MoveWaitMin, MoveWaitMax = RandomJumps or "n", MoveSize or 10, MoveWaitMin or 2, MoveWaitMax or 4;
  449.                 if string.lower(ChosenBot) == "stop" then
  450.                     Roaming = false;
  451.                 elseif string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  452.                     Roaming = true;
  453.                     while Roaming == true do
  454.                         wait(math.random(tonumber(MoveWaitMin), tonumber(MoveWaitMax)));
  455.                         if RandomJumps == "y" then
  456.                             if math.random(1, 5) == 2 then
  457.                                 Bot.Character.Humanoid.Jump = true;
  458.                             end;
  459.                         end;
  460.                         local MovePosX = math.random(1, 3) == 1 and MoveSize or math.random(1, 2) == 1 and -MoveSize or 0;
  461.                         local MovePosZ = math.random(1, 3) == 1 and MoveSize or math.random(1, 2) == 1 and -MoveSize or 0;
  462.                         Bot.Character.Humanoid:MoveTo(Bot.Character.HumanoidRootPart.Position+Vector3.new(MovePosX, 0, MovePosZ));
  463.                     end;
  464.                 end;
  465.             end;
  466.         elseif CommandIs(Message, "follow:") == true then
  467.             if HasPermission(User.UserId, "A") == true then
  468.                 local ChosenBot, ChosenUser = GetArgs(Message, 2);
  469.                 if string.lower(ChosenBot) == "stop" then
  470.                     if ServicesFollow ~= nil then
  471.                         ServicesFollow:Disconnect();
  472.                     end;
  473.                     Bot.Character.Humanoid:MoveTo(Bot.Character.HumanoidRootPart.Position, Bot.Character.HumanoidRootPart);
  474.                 elseif string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  475.                     ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser());
  476.                     if ChosenUser then
  477.                         if ServicesFollow ~= nil then
  478.                             ServicesFollow:Disconnect();
  479.                         end;
  480.                         ServicesFollow = Runtime.Heartbeat:Connect(function()
  481.                             if ChosenUser.Character.Humanoid.Health > 0 then
  482.                                 if ChosenUser.Character:FindFirstChild("HumanoidRootPart") then
  483.                                     local Distance = (Bot.Character.HumanoidRootPart.Position-ChosenUser.Character.HumanoidRootPart.Position).Magnitude;
  484.                                     if Distance > 4 then
  485.                                         Bot.Character.Humanoid:MoveTo(ChosenUser.Character.HumanoidRootPart.Position, ChosenUser.Character.HumanoidRootPart);
  486.                                         Bot.Character.Humanoid:ChangeState(Enum.HumanoidStateType.None);
  487.                                     elseif Distance > 20 then
  488.                                         Bot.Character.HumanoidRootPart.CFrame = ChosenUser.Character.HumanoidRootPart.CFrame;
  489.                                     end;
  490.                                 end;
  491.                             end;
  492.                         end);
  493.                     end;
  494.                 end;
  495.             end;
  496.         elseif CommandIs(Message, "path:") == true then
  497.             if HasPermission(User.UserId, "A") == true then
  498.                 local ChosenBot, ChosenUser = GetArgs(Message, 2);
  499.                 if string.lower(ChosenBot) == "stop" then
  500.                     PathFindStopped = true;
  501.                 elseif string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  502.                     ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser());
  503.                     if ChosenUser then
  504.                         local Spacing = 2.5;
  505.                         xpcall(function()
  506.                             workspace.Camera:FindFirstChild(PathFindId):Remove();
  507.                         end, function()end);
  508.                         local function Create(Position, Parent)
  509.                             local Part = Instance.new("Part", Parent);
  510.                             local Index = Instance.new("IntValue", Part);
  511.  
  512.                             Part.Name = Token("####-####-####-####");
  513.                             Part.CastShadow = false;
  514.                             Part.Color = Color3.fromRGB(255, 70, 80);
  515.                             Part.Material = Enum.Material.Neon;
  516.                             Part.Reflectance = 0;
  517.                             Part.Transparency = 1;
  518.                             Part.Archivable = true;
  519.                             Part.Locked = true;
  520.                             Part.Size = Vector3.new(0, 0, 0);
  521.                             Part.Position = Position;
  522.                             Part.Orientation = Vector3.new(0, 0, 0);
  523.                             Part.CanCollide = false;
  524.                             Part.Anchored = true;
  525.                             Part.Massless = true;
  526.                             Part.Shape = Enum.PartType.Ball;
  527.  
  528.                             Index.Name = "Index";
  529.                             Index.Value = Parent.Index.Value+1;
  530.  
  531.                             Animate(Part, 0.4, Enum.EasingStyle.Sine, Enum.EasingDirection.Out, {
  532.                                 Transparency = 0.8,
  533.                                 Size = Vector3.new(1, 1, 1),
  534.                             });
  535.                             return Part;
  536.                         end;
  537.  
  538.                         local Start = Instance.new("Part", workspace.Camera);
  539.                         Start.Name = PathFindId;
  540.                         Start.CastShadow = false;
  541.                         Start.Color = Color3.fromRGB(255, 120, 60);
  542.                         Start.Material = Enum.Material.Neon;
  543.                         Start.Reflectance = 0;
  544.                         Start.Transparency = 0;
  545.                         Start.Archivable = true;
  546.                         Start.Locked = true;
  547.                         Start.Size = Vector3.new(1.3, 1.3, 1.3);
  548.                         Start.Position = Bot.Character.HumanoidRootPart.Position;
  549.                         Start.Orientation = Vector3.new(0, 0, 0);
  550.                         Start.CanCollide = false;
  551.                         Start.Anchored = true;
  552.                         Start.Massless = true;
  553.                         Start.Shape = Enum.PartType.Ball;
  554.                         Instance.new("IntValue", Start).Name = "Index";
  555.  
  556.                         local Goal = ChosenUser.Character.HumanoidRootPart;
  557.                         local Opened = {Start};
  558.                         local Closed = {};
  559.                         local OrderedLast = {};
  560.                         local Directions = {Vector3.new(1, 0, 0), Vector3.new(-1, 0, 0), Vector3.new(1, 0, 1), Vector3.new(-1, 0, -1), Vector3.new(1, 0, -1), Vector3.new(-1, 0, 1), Vector3.new(0, 0, 1), Vector3.new(0, 0, -1),Vector3.new(1, 1, 0), Vector3.new(-1, -1, 0), Vector3.new(1, 1, 1), Vector3.new(-1, -1, -1), Vector3.new(1, 1, -1), Vector3.new(-1, -1, 1), Vector3.new(0, 1, 1), Vector3.new(0, -1, -1), Vector3.new(0, 1, 0), Vector3.new(0, -1, 0)};
  561.                         local function Trace(Final)
  562.                             local Current = Final;
  563.                             local LagTime = 0;
  564.                             repeat
  565.                                 LagTime += 1;
  566.                                 coroutine.resume(coroutine.create(function()
  567.                                     local Me = Current;
  568.                                     Animate(Me, 0.4, Enum.EasingStyle.Back, Enum.EasingDirection.Out, {
  569.                                         Transparency = 0,
  570.                                         Size = Vector3.new(1.4, 1.4, 1.4),
  571.                                         Position = Me.Position+Vector3.new(0, 0.6, 0),
  572.                                     });
  573.                                     wait(0.4);
  574.                                     Animate(Me, 0.4, Enum.EasingStyle.Quad, Enum.EasingDirection.InOut, {
  575.                                         Color = Color3.fromRGB(80, 255, 155),
  576.                                         Size = Vector3.new(1, 1, 1),
  577.                                         Position = Me.Position-Vector3.new(0, 0.6, 0),
  578.                                     });
  579.                                 end));
  580.                                 OrderedLast[#OrderedLast+1] = Current;
  581.                                 Current = Current.Parent;
  582.                                 if LagTime%25 == 0 then
  583.                                     LagTime = 0;
  584.                                     wait();
  585.                                 end;
  586.                             until Current.Parent == Start.Parent;
  587.                         end;
  588.                         local function Scan()
  589.                             local Final = nil;
  590.                             local LagTime = 0;
  591.                             repeat
  592.                                 LagTime += 1;
  593.                                 if LagTime%25 == 0 then
  594.                                     LagTime = 0;
  595.                                     wait();
  596.                                 end;
  597.                                 local Lowest = math.huge;
  598.                                 local Best = {};
  599.                                 for Int, Node in ipairs(Opened) do
  600.                                     local Distance = (Node.Position-Goal.Position).Magnitude*Spacing;
  601.                                     local Index = Node.Index.Value;
  602.                                     if Index+Distance < Lowest then
  603.                                         Lowest = Index+Distance;
  604.                                         Best = {Node, Int};
  605.                                     end;
  606.                                 end;
  607.                                 table.insert(Closed, Best[1]);
  608.                                 if Best[1] ~= Start then
  609.                                     Best[1].Color = Color3.fromRGB(230, 230, 230);
  610.                                     Best[1].Transparency = 0;
  611.                                 end;
  612.                                 table.remove(Opened, Best[2]);
  613.                                 for Int, Vector in ipairs(Directions) do
  614.                                     local RayPart, Ray_Posi = workspace:FindPartOnRay(Ray.new(Best[1].Position, Vector*Spacing));
  615.                                     if RayPart == nil then
  616.                                         table.insert(Opened, Create(Ray_Posi, Best[1]));
  617.                                     end;
  618.                                 end;
  619.                                 Final = Best[1];
  620.                             until #Opened <= 0 or (Best[1].Position-Goal.Position).Magnitude <= Spacing*1.5;
  621.                             Trace(Final);
  622.                         end;
  623.                         Scan();
  624.                         for Int, Node in pairs(Start:GetDescendants()) do
  625.                             if Node.ClassName == "Part" then
  626.                                 if Node.Color == Color3.fromRGB(255, 70, 80) then
  627.                                     Node:Remove();
  628.                                 end;
  629.                             end;
  630.                         end;
  631.                         wait(0.3);
  632.                         for Int1 = 0, #OrderedLast, 1 do
  633.                             if PathFindStopped == true then break end;
  634.                             xpcall(function()
  635.                                 local Int2 = #OrderedLast-Int1;
  636.                                 Int2 = Int2 < 0 and -Int2 or Int2;
  637.                                 Int2 = OrderedLast[Int2];
  638.                                 local Int2P = Int2.Position;
  639.                                 game.Players.LocalPlayer.Character.Humanoid:MoveTo(Int2P, Int2);
  640.                                 Animate(Int2, 0.5, Enum.EasingStyle.Back, Enum.EasingDirection.Out, {
  641.                                     Position = Int2.Position+Vector3.new(0, 0.6, 0),
  642.                                 });
  643.                                 game.Players.LocalPlayer.Character.Humanoid.MoveToFinished:Wait();
  644.                                 Animate(Int2, 0.4, Enum.EasingStyle.Back, Enum.EasingDirection.In, {
  645.                                     Position = Int2P,
  646.                                 });
  647.                             end, function()end);
  648.                         end;
  649.                         wait(1);
  650.                         workspace.Camera:FindFirstChild(PathFindId):Remove();
  651.                         PathFindStopped = false;
  652.                     end;
  653.                 end;
  654.             end;
  655.         elseif CommandIs(Message, "speed:") == true then
  656.             if HasPermission(User.UserId, "A") == true then
  657.                 local ChosenBot, Speed = GetArgs(Message, 2);
  658.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  659.                     if typeof(tonumber(Speed)) == "number" then
  660.                         Bot.Character.Humanoid.WalkSpeed = Speed;
  661.                     end;
  662.                 end;
  663.             end;
  664.         elseif CommandIs(Message, "jump:") == true then
  665.             if HasPermission(User.UserId, "A") == true then
  666.                 local ChosenBot, Power = GetArgs(Message, 2);
  667.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  668.                     if typeof(tonumber(Power)) == "number" then
  669.                         Bot.Character.Humanoid.JumpPower = Power;
  670.                     end;
  671.                 end;
  672.             end;
  673.         elseif CommandIs(Message, "lookat:") == true then
  674.             if HasPermission(User.UserId, "A") == true then
  675.                 local ChosenBot, ChosenUser = GetArgs(Message, 2);
  676.                 if string.lower(ChosenBot) == "stop" then
  677.                     LookingAtUser = nil;
  678.                 elseif string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  679.                     LookingAtUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser)) or (string.lower(ChosenUser) == "me" and User) or (string.lower(ChosenUser) == "random" and GetRandomUser()) or (string.lower(ChosenUser) == "closest" and "closest");
  680.                 end;
  681.             end;
  682.         elseif CommandIs(Message, "wl:") == true then
  683.             if HasPermission(User.UserId, "C") == true then
  684.                 local ChosenUser, Permission = GetArgs(Message, 3);
  685.                 ChosenUser = (Players:FindFirstChild(ChosenUser) or LookForUserByDisplay(ChosenUser))
  686.                 if string.lower(ChosenUser) == "all" then
  687.                     Whitelisted.Everyone = Permission;
  688.                 elseif ChosenUser ~= nil then
  689.                     Whitelisted[ChosenUser.UserId] = Permission;
  690.                 end;
  691.             end;
  692.         elseif CommandIs(Message, "reset:") == true then
  693.             if HasPermission(User.UserId, "C") == true then
  694.                 local ChosenBot = GetArgs(Message, 1);
  695.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  696.                     Bot.Character.Humanoid.Health = 0;
  697.                 end;
  698.             end;
  699.         elseif CommandIs(Message, "restart:") == true then
  700.             if HasPermission(User.UserId, "C") == true then
  701.                 local ChosenBot = GetArgs(Message, 1);
  702.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  703.                     delay(2, function()
  704.                         loadstring(game:HttpGet("https://pastebin.com/raw/uVjid6fJ"))();
  705.                     end);
  706.                     Disabled = true;
  707.                     for Int, Service in pairs(Services) do
  708.                         if Service then
  709.                             Service:Disconnect();
  710.                         end;
  711.                     end;
  712.                     if ServicesFollow ~= nil then
  713.                         ServicesFollow:Disconnect();
  714.                     end;
  715.                     LyricsStopped = true;
  716.                     PathFindStopped = true;
  717.                     Say("Restarting...");
  718.                 end;
  719.             end;
  720.         elseif CommandIs(Message, "disable:") == true then
  721.             if HasPermission(User.UserId, "C") == true then
  722.                 local ChosenBot = GetArgs(Message, 1);
  723.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  724.                     Disabled = true;
  725.                     for Int, Service in pairs(Services) do
  726.                         if Service then
  727.                             Service:Disconnect();
  728.                         end;
  729.                     end;
  730.                     if ServicesFollow ~= nil then
  731.                         ServicesFollow:Disconnect();
  732.                     end;
  733.                     LyricsStopped = true;
  734.                     PathFindStopped = true;
  735.                     Say("Disabled.");
  736.                 end;
  737.             end;
  738.         elseif CommandIs(Message, "leave:") == true then
  739.             if HasPermission(User.UserId, "C") == true then
  740.                 local ChosenBot = GetArgs(Message, 1);
  741.                 if string.lower(ChosenBot) == "all" or string.lower(ChosenBot) == string.lower(Bot.Name) then
  742.                     Say("Leaving...");
  743.                     game:Shutdown();
  744.                 end;
  745.             end;
  746.         else
  747.             LastMessage = Message;
  748.             if string.lower(MockingUser) == "all" or MockingUser == User then
  749.                 Say(Message);
  750.             end;
  751.         end;
  752.     end;
  753. end;
  754. Services[#Services+1] = Runtime.Heartbeat:Connect(function()
  755.     if LookingAtUser ~= nil then
  756.         if LookingAtUser == "closest" then
  757.             local Pos = GetClosestUser().Character.HumanoidRootPart.Position;
  758.             Bot.Character.HumanoidRootPart.CFrame = CFrame.new(Bot.Character.HumanoidRootPart.Position, Vector3.new(Pos.X, Bot.Character.HumanoidRootPart.Position.Y, Pos.Z));
  759.         elseif LookingAtUser.Character then
  760.             if LookingAtUser.Character:FindFirstChild("HumanoidRootPart") then
  761.                 local Pos = LookingAtUser.Character.HumanoidRootPart.Position;
  762.                 Bot.Character.HumanoidRootPart.CFrame = CFrame.new(Bot.Character.HumanoidRootPart.Position, Vector3.new(Pos.X, Bot.Character.HumanoidRootPart.Position.Y, Pos.Z));
  763.             end;
  764.         end;
  765.     end;
  766. end);
  767. game:GetService("ReplicatedStorage").DefaultChatSystemChatEvents.OnMessageDoneFiltering.OnClientEvent:Connect(function(Store)
  768.     Run(Players:GetPlayerByUserId(Store.SpeakerUserId), Store.Message);
  769. end);
  770. Say(Form("Quex raider #%s loaded (%s/%s). [Debug 7]", BotNumber, #GetOnlineBots(false), #Genv["setup/alts"]));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement