From 5349399b082b819f581d67ab70714fbcffb79bee Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Fri, 22 Nov 2024 20:35:48 +0200 Subject: [PATCH 01/28] Add clearnote alias --- MainModule/Server/Commands/Admins.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Commands/Admins.luau b/MainModule/Server/Commands/Admins.luau index a1f554f17..81a7397fb 100644 --- a/MainModule/Server/Commands/Admins.luau +++ b/MainModule/Server/Commands/Admins.luau @@ -1098,7 +1098,7 @@ return function(Vargs, env) DeleteNote = { Prefix = Settings.Prefix; - Commands = {"removenote", "remnote", "deletenote"}; + Commands = {"removenote", "remnote", "deletenote", "clearnote"}; Args = {"player", "note (specify 'all' to delete all notes)"}; Description = "Removes a note on the target player(s)"; AdminLevel = "Admins"; From ad8ccc53059dbd9a860e790f8004dffc2223410b Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Fri, 22 Nov 2024 20:53:39 +0200 Subject: [PATCH 02/28] Optimise textureid pooling --- MainModule/Client/Plugins/Anti_Cheat.luau | 23 ++--------------------- 1 file changed, 2 insertions(+), 21 deletions(-) diff --git a/MainModule/Client/Plugins/Anti_Cheat.luau b/MainModule/Client/Plugins/Anti_Cheat.luau index 7c49fb78d..6c4187b32 100644 --- a/MainModule/Client/Plugins/Anti_Cheat.luau +++ b/MainModule/Client/Plugins/Anti_Cheat.luau @@ -293,29 +293,10 @@ return function(Vargs) xpcall(function() local function getCoreUrls() local coreUrls = {"rbxassetid://0", "rbxassetid://10066921516", "rbxassetid://13262267483", "rbxassetid://13253401424"} -- Whitelist for Roblox Camera SFX and Quest Controls Scheme - local backpack = Player:FindFirstChildOfClass("Backpack") - local character = Player.Character - local starterPack = service.StarterPack local screenshotHud = service.GuiService:FindFirstChildOfClass("ScreenshotHud") - if character then - for _, v in ipairs(character:GetChildren()) do - if v:IsA("BackpackItem") and service.Trim(v.TextureId) ~= "" then - table.insert(coreUrls, service.Trim(v.TextureId)) - end - end - end - - if backpack then - for _, v in ipairs(backpack:GetChildren()) do - if v:IsA("BackpackItem") and service.Trim(v.TextureId) ~= "" then - table.insert(coreUrls, service.Trim(v.TextureId)) - end - end - end - - if starterPack then - for _, v in ipairs(starterPack:GetChildren()) do + for _, container in {Player.Character, service.StarterPack, Player:FindFirstChildOfClass("Backpack")} do + for _, v in ipairs(container:GetChildren()) do if v:IsA("BackpackItem") and service.Trim(v.TextureId) ~= "" then table.insert(coreUrls, service.Trim(v.TextureId)) end From 64c3d9fbc95d79d4c0173c162bf1dcdf19009d49 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Fri, 22 Nov 2024 21:43:10 +0200 Subject: [PATCH 03/28] Use script env for scriptbase --- MainModule/Server/Dependencies/ScriptBase.server.luau | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MainModule/Server/Dependencies/ScriptBase.server.luau b/MainModule/Server/Dependencies/ScriptBase.server.luau index 390e7201b..6ed4a169e 100644 --- a/MainModule/Server/Dependencies/ScriptBase.server.luau +++ b/MainModule/Server/Dependencies/ScriptBase.server.luau @@ -2,7 +2,8 @@ task.wait() local execute = script:FindFirstChild("Execute") local code, loadCode = rawget(_G, "Adonis").Scripts.ExecutePermission(script, execute and execute.Value) local canUseLoadstring = loadstring and pcall(loadstring, "local a = 5 local b = a + 5") or false +local env = getfenv() if code then - (canUseLoadstring and loadstring(code) or loadCode(code--[[, getfenv()]]))() + (canUseLoadstring and loadstring(code) or loadCode(code, env))() end From e2344eebca5f77fd3fb7946cb2e6ab959e92a49b Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 00:42:15 +0200 Subject: [PATCH 04/28] Optimise material --- MainModule/Server/Commands/Fun.luau | 35 +++-------------------------- 1 file changed, 3 insertions(+), 32 deletions(-) diff --git a/MainModule/Server/Commands/Fun.luau b/MainModule/Server/Commands/Fun.luau index c72d6fb41..c5e973329 100644 --- a/MainModule/Server/Commands/Fun.luau +++ b/MainModule/Server/Commands/Fun.luau @@ -780,42 +780,13 @@ return function(Vargs, env) Material = { Prefix = Settings.Prefix; - Commands = {"mat", "material"}; + Commands = {"material", "mat"}; Args = {"player", "material"}; Description = "Make the target the material you choose"; Fun = true; AdminLevel = "Moderators"; Function = function(plr: Player, args: {string}) - local mats = { - Plastic = 256; - Wood = 512; - Slate = 800; - Concrete = 816; - CorrodedMetal = 1040; - DiamondPlate = 1056; - Foil = 1072; - Grass = 1280; - Ice = 1536; - Marble = 784; - Granite = 832; - Brick = 848; - Pebble = 864; - Sand = 1296; - Fabric = 1312; - SmoothPlastic = 272; - Metal = 1088; - WoodPlanks = 528; - Neon = 288; - } - local enumMats = Enum.Material:GetEnumItems() - - local chosenMat = args[2] or "Plastic" - - if not args[2] then - Functions.Hint("Material wasn't supplied; Plastic was chosen instead") - elseif tonumber(args[2]) then - chosenMat = table.find(mats, tonumber(args[2])) - end + local chosenMat = if tonumber(args[2]) then Enum.Material:FromValue(tonumber(args[2])) elseif not args[2] then "Plastic" else Enum.Material:FromName(args[2]) if not chosenMat then Remote.MakeGui(plr, "Output", {Title = "Error"; Message = "Invalid material choice";}) @@ -825,7 +796,7 @@ return function(Vargs, env) for _, v in service.GetPlayers(plr, args[1]) do if v.Character then for _, p in v.Character:GetChildren() do - if p:IsA"BasePart" then + if p:IsA("BasePart") then p.Material = chosenMat end end From 17bd2e96c82027d0a0702116ac2588e49a276001 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 10:38:29 +0200 Subject: [PATCH 05/28] Better API checking --- MainModule/Server/Dependencies/ScriptBase.server.luau | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/MainModule/Server/Dependencies/ScriptBase.server.luau b/MainModule/Server/Dependencies/ScriptBase.server.luau index 6ed4a169e..e5b1613c8 100644 --- a/MainModule/Server/Dependencies/ScriptBase.server.luau +++ b/MainModule/Server/Dependencies/ScriptBase.server.luau @@ -1,4 +1,6 @@ -task.wait() +while rawget(_G, "Adonis") == nil do + task.wait() +end local execute = script:FindFirstChild("Execute") local code, loadCode = rawget(_G, "Adonis").Scripts.ExecutePermission(script, execute and execute.Value) local canUseLoadstring = loadstring and pcall(loadstring, "local a = 5 local b = a + 5") or false From 8013e48d7227976eb1f2e20fe64d6e034ab53156 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 10:44:11 +0200 Subject: [PATCH 06/28] Create ClientScriptBase.server.luau --- .../Server/Dependencies/ClientScriptBase.server.luau | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 MainModule/Server/Dependencies/ClientScriptBase.server.luau diff --git a/MainModule/Server/Dependencies/ClientScriptBase.server.luau b/MainModule/Server/Dependencies/ClientScriptBase.server.luau new file mode 100644 index 000000000..ac51390b6 --- /dev/null +++ b/MainModule/Server/Dependencies/ClientScriptBase.server.luau @@ -0,0 +1,10 @@ +while rawget(_G, "Adonis") == nil do + task.wait() +end +local execute = script:FindFirstChild("Execute") +local code, loadCode = rawget(_G, "Adonis").Scripts.ExecutePermission(script, execute and execute.Value) +local env = getfenv() + +if code then + loadCode(code, env)() +end From 67324568ec1700697ab6b1aa1d3ffb1814462491 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 10:44:39 +0200 Subject: [PATCH 07/28] Create ClientScriptBase.meta.json --- MainModule/Server/Dependencies/ClientScriptBase.meta.json | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 MainModule/Server/Dependencies/ClientScriptBase.meta.json diff --git a/MainModule/Server/Dependencies/ClientScriptBase.meta.json b/MainModule/Server/Dependencies/ClientScriptBase.meta.json new file mode 100644 index 000000000..5077db135 --- /dev/null +++ b/MainModule/Server/Dependencies/ClientScriptBase.meta.json @@ -0,0 +1,5 @@ +{ + "properties": { + "Disabled": true + } +} From f19fdffc38d7c5521ee87b7f1140ba843b291cb8 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 11:10:52 +0200 Subject: [PATCH 08/28] Update AnimateAvatar.meta.json --- MainModule/Server/Dependencies/Assets/AnimateAvatar.meta.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MainModule/Server/Dependencies/Assets/AnimateAvatar.meta.json b/MainModule/Server/Dependencies/Assets/AnimateAvatar.meta.json index 51c45b040..6233c02da 100644 --- a/MainModule/Server/Dependencies/Assets/AnimateAvatar.meta.json +++ b/MainModule/Server/Dependencies/Assets/AnimateAvatar.meta.json @@ -1,6 +1,6 @@ { "properties": { - "Disabled": true, - "RunContext": "Client" + "RunContext": "Client", + "Disabled": true } } From 6fc4c9552c092ebddd0c864510fbaaa2cd32f31c Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 11:11:09 +0200 Subject: [PATCH 09/28] Update ClientScriptBase.meta.json --- MainModule/Server/Dependencies/ClientScriptBase.meta.json | 1 + 1 file changed, 1 insertion(+) diff --git a/MainModule/Server/Dependencies/ClientScriptBase.meta.json b/MainModule/Server/Dependencies/ClientScriptBase.meta.json index 5077db135..6233c02da 100644 --- a/MainModule/Server/Dependencies/ClientScriptBase.meta.json +++ b/MainModule/Server/Dependencies/ClientScriptBase.meta.json @@ -1,5 +1,6 @@ { "properties": { + "RunContext": "Client", "Disabled": true } } From dd31d373afc8e6611828c326694ec4f560210c82 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 11:21:54 +0200 Subject: [PATCH 10/28] Add clientscript support for scriptbuilder --- MainModule/Server/Commands/Admins.luau | 2 ++ 1 file changed, 2 insertions(+) diff --git a/MainModule/Server/Commands/Admins.luau b/MainModule/Server/Commands/Admins.luau index 81a7397fb..3ea208f9f 100644 --- a/MainModule/Server/Commands/Admins.luau +++ b/MainModule/Server/Commands/Admins.luau @@ -799,6 +799,8 @@ return function(Vargs, env) if string.lower(class) == "script" or string.lower(class) == "s" then class = "Script" + elseif string.lower(class) == "clientscript" or string.lower(class) == "cs" then + class = "ClientScript" --elseif string.lower(class) == "localscript" or string.lower(class) == "ls" then -- class = "LocalScript" else From 02d5377bc0dfbbd660df55c1640696d7d9126cb5 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 11:27:16 +0200 Subject: [PATCH 11/28] Use a clientscript for rainbowify --- MainModule/Server/Commands/Fun.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Commands/Fun.luau b/MainModule/Server/Commands/Fun.luau index c5e973329..589c6ae1f 100644 --- a/MainModule/Server/Commands/Fun.luau +++ b/MainModule/Server/Commands/Fun.luau @@ -683,7 +683,7 @@ return function(Vargs, env) Fun = true; AdminLevel = "Moderators"; Function = function(plr: Player, args: {string}) - local scr = Core.NewScript("Script",[[ + local scr = Core.NewScript("ClientScript", [[ local restore = {} local tween = game:GetService("TweenService") From 40f2a872932f2d71883d961269622840c7304f5e Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 11:29:44 +0200 Subject: [PATCH 12/28] Add clientscript support for newscript --- MainModule/Server/Core/Core.luau | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MainModule/Server/Core/Core.luau b/MainModule/Server/Core/Core.luau index 2d18d007b..2553252dc 100644 --- a/MainModule/Server/Core/Core.luau +++ b/MainModule/Server/Core/Core.luau @@ -597,6 +597,7 @@ return function(Vargs, GetEnv) NewScript = function(scriptType: string, source: string, allowCodes: boolean?, noCache: boolean?, runLimit: number?) local scr = assert( if scriptType == "Script" then Deps.ScriptBase:Clone() + elseif scriptType == "ClientScript" then Deps.ClientScriptBase:Clone() elseif scriptType == "LocalScript" then Deps.LocalScriptBase:Clone() else nil, `Invalid script type '{scriptType}'` @@ -617,7 +618,7 @@ return function(Vargs, GetEnv) local wrapped = Core.RegisterScript({ Script = scr; Code = execCode; - Source = scr:IsA("LocalScript") and Core.Bytecode(source) or source; + Source = (scr:IsA("LocalScript") or scriptType == "ClientScript") and Core.Bytecode(source) or source; noCache = noCache; runLimit = runLimit; }) From 0f037cb76af292599cf23c9d3d166aadfe397b9f Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 13:25:48 +0200 Subject: [PATCH 13/28] Delete MainModule/Server/Dependencies/Assets/Clipper.rbxmx --- .../Server/Dependencies/Assets/Clipper.rbxmx | 67 ------------------- 1 file changed, 67 deletions(-) delete mode 100644 MainModule/Server/Dependencies/Assets/Clipper.rbxmx diff --git a/MainModule/Server/Dependencies/Assets/Clipper.rbxmx b/MainModule/Server/Dependencies/Assets/Clipper.rbxmx deleted file mode 100644 index 71215654e..000000000 --- a/MainModule/Server/Dependencies/Assets/Clipper.rbxmx +++ /dev/null @@ -1,67 +0,0 @@ - - true - null - nil - - - - 0 - false - true - - Clipper - 0 - {CB07704A-5D5F-4007-B203-DA3FC3AFC116} - - -1 - - - - - - 0 - false - Clip - -1 - - false - - - - From b5d4930bbaa0e2dafd276be610206b4cd736561f Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 13:25:59 +0200 Subject: [PATCH 14/28] Create init.client.luau --- .../Assets/Clipper/init.client.luau | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 MainModule/Server/Dependencies/Assets/Clipper/init.client.luau diff --git a/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau b/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau new file mode 100644 index 000000000..eb7e2b893 --- /dev/null +++ b/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau @@ -0,0 +1,64 @@ +local RunService = game:GetService("RunService") + +local LIMB_NAMES = { + R6 = { + "Torso", + "HumanoidRootPart", + "Head" + }, + R15 = { + "HumanoidRootPart", + "LowerTorso", + "UpperTorso" + } +} + +local humanoid: Humanoid = script.Parent +local character = humanoid.Parent +local wasInside = false +local ignoreParams = OverlapParams.new() + +ignoreParams.FilterDescendantsInstances = {character, humanoid} +ignoreParams.FilterType = Enum.RaycastFilterType.Exclude +ignoreParams.MaxParts = 1 +ignoreParams.CollisionGroup = humanoid.RootPart and humanoid.RootPart.CollisionGroup or "Default" +ignoreParams.RespectCanCollide = true + +local function isInsideTerrain(position) + return (tonumber(workspace.Terrain:ReadVoxelChannels(Region3.new(position, position):ExpandToGrid(4), 4, {"SolidOccupancy"}).SolidOccupancy[1][1][1]) or 0) > 0 +end + +RunService.PreSimulation:Connect(function() + if script.Clip.Value then + for _, object in ipairs(character:GetDescendants()) do + if object:IsA("BasePart") and object.CanCollide then + object.CanCollide = false + end + end + + local rootPart = humanoid.RootPart + local velocity = rootPart and rootPart.AssemblyLinearVelocity + + if velocity and velocity.Y <= 0 and (#workspace:GetPartsInPart(rootPart, ignoreParams) > 0 or isInsideTerrain(rootPart.Position - Vector3.new(0, humanoid.HipHeight, 0))) then + wasInside = true + rootPart.AssemblyLinearVelocity = Vector3.new(velocity.X, math.clamp(velocity.Y, 0, math.huge), velocity.Z) + --humanoid:ChangeState(Enum.HumanoidStateType.StrafingNoPhysics) -- Enum.HumanoidStateType.StrafingNoPhysics (semi-depricated but still working and fixes the colliding if in water). + + if humanoid.Jump then + humanoid:ChangeState(Enum.HumanoidStateType.Jumping) + end + elseif wasInside then + wasInside = false + humanoid:ChangeState(Enum.HumanoidStateType.None) + end + else + for _, object in ipairs(character:GetDescendants()) do + if table.find(LIMB_NAMES[humanoid.RigType.Name] or {}, object.Name) and object:IsA("BasePart") then + object.CanCollide = true + end + end + + humanoid:ChangeState(Enum.HumanoidStateType.None) -- Enum.HumanoidStateType.None (Allows roblox to set set a state that isn't Enum.HumanoidStateType.StrafingNoPhysics) + script:Destroy() + end +end) From 5684a5b8d2123debb989cff31caea7b0180402ac Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 13:27:03 +0200 Subject: [PATCH 15/28] Create Clip.model.json --- .../Server/Dependencies/Assets/Clipper/Clip.model.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 MainModule/Server/Dependencies/Assets/Clipper/Clip.model.json diff --git a/MainModule/Server/Dependencies/Assets/Clipper/Clip.model.json b/MainModule/Server/Dependencies/Assets/Clipper/Clip.model.json new file mode 100644 index 000000000..c90e7ae10 --- /dev/null +++ b/MainModule/Server/Dependencies/Assets/Clipper/Clip.model.json @@ -0,0 +1,6 @@ +{ + "ClassName": "BoolValue", + "Properties": { + "Value": false + } +} From 380cead4454dc7f4e937d7c855eff22d5434eecc Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 14:58:11 +0200 Subject: [PATCH 16/28] Fix multiple issues with effect --- MainModule/Client/UI/Default/Effect.luau | 134 +++++++++++------------ 1 file changed, 67 insertions(+), 67 deletions(-) diff --git a/MainModule/Client/UI/Default/Effect.luau b/MainModule/Client/UI/Default/Effect.luau index 3c51ad25f..1208f278b 100644 --- a/MainModule/Client/UI/Default/Effect.luau +++ b/MainModule/Client/UI/Default/Effect.luau @@ -11,8 +11,10 @@ return function(data, env) if env then setfenv(1, env) end - + local gui = service.New("ScreenGui") + gui.IgnoreGuiInset = true + gui.ClipToDeviceSafeArea = true local mode = data.Mode local gTable = client.UI.Register(gui, {Name = "Effect"}) local BindEvent = gTable.BindEvent @@ -26,12 +28,12 @@ return function(data, env) local frame = Instance.new("Frame") frame.Parent = gui local camera = workspace.CurrentCamera - local pixels = {} local resY = data.Resolution or 20 local resX = data.Resolution or 20 local depth = 0 local distance = data.Distance or 128 + local pixels = table.create((gui.AbsoluteSize.Y / resY) * (gui.AbsoluteSize.X / resX)) local function renderScreen() for _, pixel in pixels do @@ -43,23 +45,21 @@ return function(data, env) pixel.Pixel.BackgroundColor3 = if part and part.Transparency < 1 then part.BrickColor.Color else Color3.fromRGB(105, 170, 255) - else pixel.Pixel.BackgroundColor3 = Color3.fromRGB(105, 170, 255) end end end - frame.Size = UDim2.new(1, 0, 1, 40) - frame.Position = UDim2.new(0, 0, 0, -35) - for y = 0, gui.AbsoluteSize.Y+50, resY do - for x = 0, gui.AbsoluteSize.X+30, resX do - local pixel = service.New("TextLabel", { + frame.Size = UDim2.new(1, 0, 1, 0) + frame.Position = UDim2.new(0, 0, 0, 0) + for y = 0, gui.AbsoluteSize.Y, resY do + for x = 0, gui.AbsoluteSize.X, resX do + local pixel = service.New("Frame", { Parent = frame; - Text = ""; BorderSizePixel = 0; Size = UDim2.fromOffset(resX, resY); - Position = UDim2.fromOffset(x-(resX/2), y-(resY/2)); + Position = UDim2.fromOffset(x - (resX / 2), y - (resY / 2)); BackgroundColor3 = Color3.fromRGB(105, 170, 255); }) table.insert(pixels, {Pixel = pixel, X = x, Y = y}) @@ -92,26 +92,21 @@ return function(data, env) local bg = service.New("Frame", { Parent = gui; BackgroundTransparency = 1; - BackgroundColor3 = Color3.new(0,0,0); - Size = UDim2.new(2,0,2,0); - Position = UDim2.new(-0.5,0,-0.5,0); + BackgroundColor3 = Color3.new(0, 0, 0); + Size = UDim2.new(2, 0, 2, 0); + Position = UDim2.new(-1, 0, -1, 0); }) - for i = 1, 0, -0.01 do - bg.BackgroundTransparency = i - blur.Size = 56 * (1 - i); - task.wait(0.1) - end - - bg.BackgroundTransparency = 0 + service.TweenService:Create(bg, TweenInfo.new((1 / 0.01) * 0.1), { BackgroundTransparency = 0 }):Play() + service.TweenService:Create(blur, TweenInfo.new((1 / 0.01) * 0.1), { Size = (1 / 0.01) * 5.6 }):Play() elseif mode == "Trippy" then local v = service.Player local bg = Instance.new("Frame") - bg.BackgroundColor3 = Color3.new(0,0,0) + bg.BackgroundColor3 = Color3.new(0, 0, 0) bg.BackgroundTransparency = 0 - bg.Size = UDim2.new(10,0,10,0) - bg.Position = UDim2.new(-5,0,-5,0) + bg.Size = UDim2.new(10, 0, 10, 0) + bg.Position = UDim2.new(-5, 0, -5, 0) bg.ZIndex = 10 bg.Parent = gui @@ -123,15 +118,15 @@ return function(data, env) if gui then gui:Destroy() end elseif mode == "Spooky" then local frame = Instance.new("Frame") - frame.BackgroundColor3=Color3.new(0,0,0) - frame.Size=UDim2.new(1,0,1,50) - frame.Position=UDim2.new(0,0,0,-50) + frame.BackgroundColor3 = Color3.new(0, 0, 0) + frame.Size = UDim2.new(1, 0, 1, 0) + frame.Position = UDim2.new(0, 0, 0, 0) frame.Parent = gui local img = Instance.new("ImageLabel") - img.Position = UDim2.new(0,0,0,0) - img.Size = UDim2.new(1,0,1,0) + img.Position = UDim2.new(0, 0, 0, 0) + img.Size = UDim2.new(1, 0, 1, 0) img.BorderSizePixel = 0 - img.BackgroundColor3 = Color3.new(0,0,0) + img.BackgroundColor3 = Color3.new(0, 0, 0) img.Parent = frame local textures = { 299735022; @@ -158,25 +153,28 @@ return function(data, env) sound.Looped = true sound.Parent = gui sound:Play() + local lastImage while gui and gui.Parent do - for i=1,#textures do - img.Image = `rbxassetid://{textures[i]}` - task.wait(0.1) + local image = `rbxassetid://{textures[math.floor(os.clock() / 0.1) % #textures + 1]}` + if image ~= lastImage then + img.Image, lastImage = image, image end + task.wait() end + sound:Stop() elseif mode == "lifeoftheparty" then local frame = Instance.new("Frame") - frame.BackgroundColor3 = Color3.new(0,0,0) - frame.Size = UDim2.new(1,0,1,50) - frame.Position = UDim2.new(0,0,0,-50) + frame.BackgroundColor3 = Color3.new(0, 0, 0) + frame.Size = UDim2.new(1, 0, 1, 0) + frame.Position = UDim2.new(0, 0, 0, 0) frame.Parent = gui local img = Instance.new("ImageLabel") - img.Position = UDim2.new(0,0,0,0) - img.Size = UDim2.new(1,0,1,0) + img.Position = UDim2.new(0, 0, 0, 0) + img.Size = UDim2.new(1, 0, 1, 0) img.BorderSizePixel = 0 - img.BackgroundColor3 = Color3.new(0,0,0) + img.BackgroundColor3 = Color3.new(0, 0, 0) img.Parent = frame local textures = { 299733203; @@ -205,33 +203,34 @@ return function(data, env) 299733663; 299733674; 299733694; - } local sound = Instance.new("Sound") sound.SoundId = "rbxassetid://172906410" sound.Looped = true sound.Parent = gui sound:Play() + local lastImage while gui and gui.Parent do - for i=1,#textures do - img.Image = `rbxassetid://{textures[i]}` - task.wait(0.1) + local image = `rbxassetid://{textures[math.floor(os.clock() / 0.1) % #textures + 1]}` + if image ~= lastImage then + img.Image, lastImage = image, image end + task.wait() end sound:Stop() elseif mode == "trolling" then local frame = Instance.new("Frame") - frame.BackgroundColor3 = Color3.new(0,0,0) - frame.Size = UDim2.new(1,0,1,50) - frame.Position = UDim2.new(0,0,0,-50) + frame.BackgroundColor3 = Color3.new(0, 0, 0) + frame.Size = UDim2.new(1, 0, 1, 0) + frame.Position = UDim2.new(0, 0, 0, 0) frame.Parent = gui local img = Instance.new("ImageLabel") - img.Position = UDim2.new(0,0,0,0) - img.Size = UDim2.new(1,0,1,0) + img.Position = UDim2.new(0, 0, 0, 0) + img.Size = UDim2.new(1, 0, 1, 0) img.BorderSizePixel = 0 - img.BackgroundColor3 = Color3.new(0,0,0) + img.BackgroundColor3 = Color3.new(0, 0, 0) img.Parent = frame local textures = { "6172043688"; @@ -260,62 +259,63 @@ return function(data, env) "6172045193"; "6172044478"; "6172043688"; - } local sound = Instance.new("Sound") sound.SoundId = "rbxassetid://229681899" sound.Looped = true sound.Parent = gui sound:Play() + local lastImage while gui and gui.Parent do - for i=1,#textures do - img.Image = `rbxassetid://{textures[i]}` - task.wait(0.13) + local image = `rbxassetid://{textures[math.floor(os.clock() / 0.13) % #textures + 1]}` + if image ~= lastImage then + img.Image, lastImage = image, image end + task.wait() end sound:Stop() elseif mode == "Strobe" then local bg = Instance.new("Frame") - bg.BackgroundColor3 = Color3.new(0,0,0) + bg.BackgroundColor3 = Color3.new(0, 0, 0) bg.BackgroundTransparency = 0 - bg.Size = UDim2.new(10,0,10,0) - bg.Position = UDim2.new(-5,0,-5,0) + bg.Size = UDim2.new(10, 0, 10, 0) + bg.Position = UDim2.new(-5, 0, -5, 0) bg.ZIndex = 10 bg.Parent = gui while gui and gui.Parent do task.wait(1/44) - bg.BackgroundColor3 = Color3.new(1,1,1) + bg.BackgroundColor3 = Color3.new(1, 1, 1) task.wait(1/44) - bg.BackgroundColor3 = Color3.new(0,0,0) + bg.BackgroundColor3 = Color3.new(0, 0, 0) end if gui then gui:Destroy() end elseif mode == "Blind" then local bg = Instance.new("Frame") - bg.BackgroundColor3 = Color3.new(0,0,0) + bg.BackgroundColor3 = Color3.new(0, 0, 0) bg.BackgroundTransparency = 0 - bg.Size = UDim2.new(10,0,10,0) - bg.Position = UDim2.new(-5,0,-5,0) + bg.Size = UDim2.new(10, 0, 10, 0) + bg.Position = UDim2.new(-5, 0, -5, 0) bg.ZIndex = 10 bg.Parent = gui elseif mode == "ScreenImage" then local bg = Instance.new("ImageLabel") - bg.Image=`rbxassetid://{data.Image}` + bg.Image = `rbxassetid://{data.Image}` bg.BackgroundColor3 = Color3.new(0,0,0) bg.BackgroundTransparency = 0 - bg.Size = UDim2.new(1,0,1,0) - bg.Position = UDim2.new(0,0,0,0) + bg.Size = UDim2.new(1, 0, 1, 0) + bg.Position = UDim2.new(0, 0, 0, 0) bg.ZIndex = 10 bg.Parent = gui elseif mode == "ScreenVideo" then local bg = Instance.new("VideoFrame") - bg.Video=`rbxassetid://{data.Video}` - bg.BackgroundColor3 = Color3.new(0,0,0) + bg.Video = `rbxassetid://{data.Video}` + bg.BackgroundColor3 = Color3.new(0, 0, 0) bg.BackgroundTransparency = 0 - bg.Size = UDim2.new(1,0,1,0) - bg.Position = UDim2.new(0,0,0,0) + bg.Size = UDim2.new(1, 0, 1, 0) + bg.Position = UDim2.new(0, 0, 0, 0) bg.ZIndex = 10 bg.Parent = gui bg:Play() From 8da371e9c02534afe6c28e94ae7e84a3ee553b20 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 15:23:09 +0200 Subject: [PATCH 17/28] Fix server mutex --- MainModule/Server/Server.luau | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/MainModule/Server/Server.luau b/MainModule/Server/Server.luau index 8b9fa6638..75245fb23 100644 --- a/MainModule/Server/Server.luau +++ b/MainModule/Server/Server.luau @@ -460,7 +460,7 @@ return service.NewProxy({ script:Destroy() return "FAILED" else - mutex = service.New("StringValue", {Name = "__Adonis_MODULE_MUTEX", Archivable = false, Value = "Running"}) + mutex = service.New("StringValue", {Name = "__Adonis_MODULE_MUTEX", Value = "Running"}) local mutexBackup = mutex:Clone() local function makePersistent(m) local connection1, connection2 = nil, nil @@ -469,9 +469,10 @@ return service.NewProxy({ connection1:Disconnect() connection2:Disconnect() warn("Adonis module mutex removed; Regenerating...") - makePersistent(mutexBackup) - mutexBackup.Parent = service.RunService - mutexBackup = mutexBackup:Clone() + mutex = mutexBackup:Clone() + mutex.Archivable = false + mutex.Parent = service.RunService + makePersistent(mutex) end end) connection2 = m:GetPropertyChangedSignal("Name"):Connect(function() @@ -482,6 +483,7 @@ return service.NewProxy({ end) end makePersistent(mutex) + mutex.Archivable = false mutex.Parent = service.RunService end From 544f7703a8784d1e4962386b0fefa6fe2858db84 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 18:35:24 +0200 Subject: [PATCH 18/28] Update Quacker.server.luau --- MainModule/Server/Dependencies/Assets/Quacker.server.luau | 1 + 1 file changed, 1 insertion(+) diff --git a/MainModule/Server/Dependencies/Assets/Quacker.server.luau b/MainModule/Server/Dependencies/Assets/Quacker.server.luau index 5301e27d7..aa57c4ef3 100644 --- a/MainModule/Server/Dependencies/Assets/Quacker.server.luau +++ b/MainModule/Server/Dependencies/Assets/Quacker.server.luau @@ -4,6 +4,7 @@ while true do if script.Parent ~= nil then script.Parent:FindFirstChild(`Quack{math.random(1, 4)}`):Play() else + script:Destroy() break end end From 053fa70ec87cefc7a9ddf4824634826e69f7f4ac Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 18:37:06 +0200 Subject: [PATCH 19/28] Update Spinner.client.luau --- MainModule/Server/Dependencies/Assets/Spinner.client.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Dependencies/Assets/Spinner.client.luau b/MainModule/Server/Dependencies/Assets/Spinner.client.luau index 3a7266373..8354a48db 100644 --- a/MainModule/Server/Dependencies/Assets/Spinner.client.luau +++ b/MainModule/Server/Dependencies/Assets/Spinner.client.luau @@ -2,5 +2,5 @@ local torso = script.Parent local bg = torso:FindFirstChild("ADONIS_SPIN_GYRO") repeat task.wait(1/44) - bg.CFrame *= CFrame.Angles(0,math.rad(12),0) + bg.CFrame *= CFrame.Angles(0, math.rad(12), 0) until not bg or bg.Parent ~= torso From d5ab70ff0632a689689b905a0e3cfe0f16c7986d Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 18:40:49 +0200 Subject: [PATCH 20/28] Fix sfling creating local craters --- MainModule/Server/Dependencies/Assets/Sfling.rbxmx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Dependencies/Assets/Sfling.rbxmx b/MainModule/Server/Dependencies/Assets/Sfling.rbxmx index c58966959..c37215ed6 100644 --- a/MainModule/Server/Dependencies/Assets/Sfling.rbxmx +++ b/MainModule/Server/Dependencies/Assets/Sfling.rbxmx @@ -22,7 +22,7 @@ for i = 1, 100 do ex.Position = torso.Position + Vector3.new(math.random(-5, 5), -10, math.random(-5, 5)) ex.BlastRadius = 35 ex.BlastPressure = strength - ex.ExplosionType = Enum.ExplosionType.Craters + ex.ExplosionType = Enum.ExplosionType.NoCraters--Enum.ExplosionType.Craters ex.DestroyJointRadiusPercent = 0 ex.Archivable = false ex.Parent = cam From bd8a15f876262adde9e710228dbb1fb7ede4f60c Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Sun, 24 Nov 2024 18:52:55 +0200 Subject: [PATCH 21/28] Optimise terrain check --- MainModule/Server/Dependencies/Assets/Clipper/init.client.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau b/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau index eb7e2b893..c9713a4b9 100644 --- a/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau +++ b/MainModule/Server/Dependencies/Assets/Clipper/init.client.luau @@ -25,7 +25,7 @@ ignoreParams.CollisionGroup = humanoid.RootPart and humanoid.RootPart.CollisionG ignoreParams.RespectCanCollide = true local function isInsideTerrain(position) - return (tonumber(workspace.Terrain:ReadVoxelChannels(Region3.new(position, position):ExpandToGrid(4), 4, {"SolidOccupancy"}).SolidOccupancy[1][1][1]) or 0) > 0 + return workspace.Terrain:ReadVoxelChannels(Region3.new(position, position + Vector3.one):ExpandToGrid(4), 4, {"SolidOccupancy"}).SolidOccupancy[1][1][1] > 0 end RunService.PreSimulation:Connect(function() From dcc3e79a64a7830f5e5abd875f2ae0799dff554f Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Mon, 25 Nov 2024 13:04:44 +0200 Subject: [PATCH 22/28] Fix balance name --- MainModule/Server/Core/Variables.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Core/Variables.luau b/MainModule/Server/Core/Variables.luau index bfe7910b3..f7243ea00 100644 --- a/MainModule/Server/Core/Variables.luau +++ b/MainModule/Server/Core/Variables.luau @@ -189,7 +189,7 @@ return function(Vargs, GetEnv) {Name = "still", ID = 7023771708}, {Name = "sleep", ID = 7023407320}, {Name = "whatareyouwaitingfor", ID = 7028977687}, - {Name = "balace", ID = 7024183256}, + {Name = "balance", ID = 7024183256}, {Name = "brokenglass", ID = 7028799370}, {Name = "thelanguageofangels", ID = 7029031068}, {Name = "imprints", ID = 7023704173}, From 8acadbd3d2e08048bb9ba409495e410977983126 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Mon, 25 Nov 2024 23:25:06 +0200 Subject: [PATCH 23/28] Fix ClientScript not working --- MainModule/Server/Core/Core.luau | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/MainModule/Server/Core/Core.luau b/MainModule/Server/Core/Core.luau index 2553252dc..f8b8fcdd3 100644 --- a/MainModule/Server/Core/Core.luau +++ b/MainModule/Server/Core/Core.luau @@ -517,7 +517,7 @@ return function(Vargs, GetEnv) local fixscr = service.UnWrap(scr) for _, val in Core.ExecuteScripts do - if not isLocal or (isLocal and val.Type == "LocalScript") then + if not isLocal or isLocal and (val.Type == "LocalScript" or val.Type == "ClientScript") then if (service.UnWrap(val.Script) == fixscr or code == val.Code) and (not val.runLimit or (val.runLimit ~= nil and val.Executions <= val.runLimit)) then val.Executions += 1 @@ -552,7 +552,7 @@ return function(Vargs, GetEnv) RegisterScript = function(data) data.Executions = 0 data.Time = os.time() - data.Type = data.Script.ClassName + data.Type = data.Type or data.Script.ClassName data.Wrapped = service.Wrap(data.Script) data.Wrapped:SetSpecial("Clone",function() return Core.RegisterScript({ @@ -618,6 +618,7 @@ return function(Vargs, GetEnv) local wrapped = Core.RegisterScript({ Script = scr; Code = execCode; + Type = scriptType; Source = (scr:IsA("LocalScript") or scriptType == "ClientScript") and Core.Bytecode(source) or source; noCache = noCache; runLimit = runLimit; From 0beadb171a9d623e701f33bffeb3760bf4a44134 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Mon, 25 Nov 2024 23:25:49 +0200 Subject: [PATCH 24/28] Fix rainbowify --- MainModule/Server/Commands/Fun.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Commands/Fun.luau b/MainModule/Server/Commands/Fun.luau index 589c6ae1f..567f62eaf 100644 --- a/MainModule/Server/Commands/Fun.luau +++ b/MainModule/Server/Commands/Fun.luau @@ -707,7 +707,7 @@ return function(Vargs, env) end script:Destroy() end - ]]) + ]], true) scr.Name = "Rainbowify" for i, v in service.GetPlayers(plr, args[1]) do From 169229c0c33df830ae205e7808e9af243b7b157d Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Mon, 25 Nov 2024 23:51:34 +0200 Subject: [PATCH 25/28] Optimize and fix oldlogs conversion --- MainModule/Server/Core/Logs.luau | 36 ++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/MainModule/Server/Core/Logs.luau b/MainModule/Server/Core/Logs.luau index 7e18420b0..311492d0c 100644 --- a/MainModule/Server/Core/Logs.luau +++ b/MainModule/Server/Core/Logs.luau @@ -144,29 +144,33 @@ return function(Vargs, GetEnv) end) end - local temp = {} + local temp = table.create(#oldLogs + #logsToSave + (Logs.Commands.__meta == "DLL" and Logs.Commands.count or 0)) + + local function insertLog(log) + local isTable = type(log) == "table" + local newTab = if isTable then table.clone(log) else log + + if (isTable and not log.NoSave) or not isTable then + if isTable and log.Player then + local p = log.Player + log.Player = { + Name = p.Name; + UserId = p.UserId; + } + end + table.insert(temp, log) + end + end for _, m in logsToSave do if m.__meta == "DLL" then local newTab = m:GetAsTable() - for i,v in pairs(newTab) do - table.insert(temp,v) + for _, v in ipairs(newTab) do + insertLog(v) end else - local isTable = type(m) == "table" - local newTab = if isTable then table.clone(m) else m - - if (isTable and not newTab.NoSave) or not isTable then - if isTable and newTab.Player then - local p = newTab.Player - newTab.Player = { - Name = p.Name; - UserId = p.UserId; - } - end - table.insert(temp, newTab)--{Time = m.Time; Text = `{m.Text}: {m.Desc}`; Desc = m.Desc}) - end + insertLog(m) end end From 7d63ce1666d5c2727d17f79d73e7aacb1cd92a71 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Mon, 25 Nov 2024 23:53:46 +0200 Subject: [PATCH 26/28] Add `:seize` alias --- MainModule/Server/Commands/Fun.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Commands/Fun.luau b/MainModule/Server/Commands/Fun.luau index 567f62eaf..89df679a1 100644 --- a/MainModule/Server/Commands/Fun.luau +++ b/MainModule/Server/Commands/Fun.luau @@ -3717,7 +3717,7 @@ return function(Vargs, env) Seizure = { Prefix = Settings.Prefix; - Commands = {"seizure"}; + Commands = {"seizure", "seize"}; Args = {"player"}; Description = "Make the target player(s)'s character spazz out on the floor"; Fun = true; From 5fbe957e9c6dc806a9d7bafb7f4c8b8ff7871179 Mon Sep 17 00:00:00 2001 From: ccuser44 <68124053+ccuser44@users.noreply.github.com> Date: Tue, 26 Nov 2024 03:14:00 +0200 Subject: [PATCH 27/28] Fix case --- MainModule/Server/Dependencies/Assets/Singer.server.luau | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MainModule/Server/Dependencies/Assets/Singer.server.luau b/MainModule/Server/Dependencies/Assets/Singer.server.luau index 30b558859..8fe063394 100644 --- a/MainModule/Server/Dependencies/Assets/Singer.server.luau +++ b/MainModule/Server/Dependencies/Assets/Singer.server.luau @@ -46,7 +46,7 @@ local WIDTH_SUPRESS = 20000 local HEIGHT_SUPRESS = 1000 local ANGLE_MULTIPLY = 100 -game:GetService("RunService").Heartbeat:connect(function() +game:GetService("RunService").Heartbeat:Connect(function() local relativeSize = head.Size / (isR15 and Vector3.new(1.2, 1.2, 1.2) or Vector3.new(2, 1, 1)) local loudness = script.Parent.PlaybackLoudness mouthMesh.Scale = mouthMesh.Scale:Lerp(Vector3.new(originalSize.X + loudness/WIDTH_SUPRESS * relativeSize.X, loudness/HEIGHT_SUPRESS * relativeSize.Y, originalSize.Z), SIZE_SMOOTHNESS) From 71992bcfc6bcbd7ec5fa56c74f5db1c5c525ee34 Mon Sep 17 00:00:00 2001 From: nichole <64012878+Dimenpsyonal@users.noreply.github.com> Date: Tue, 26 Nov 2024 21:56:40 +0000 Subject: [PATCH 28/28] Fix lint --- MainModule/Server/Commands/Fun.luau | 32 ++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/MainModule/Server/Commands/Fun.luau b/MainModule/Server/Commands/Fun.luau index 89df679a1..3343588c6 100644 --- a/MainModule/Server/Commands/Fun.luau +++ b/MainModule/Server/Commands/Fun.luau @@ -786,7 +786,37 @@ return function(Vargs, env) Fun = true; AdminLevel = "Moderators"; Function = function(plr: Player, args: {string}) - local chosenMat = if tonumber(args[2]) then Enum.Material:FromValue(tonumber(args[2])) elseif not args[2] then "Plastic" else Enum.Material:FromName(args[2]) + --local chosenMat = if tonumber(args[2]) then Enum.Material:FromValue(tonumber(args[2])) elseif not args[2] then "Plastic" else Enum.Material:FromName(args[2]) + local mats = { + Plastic = 256; + Wood = 512; + Slate = 800; + Concrete = 816; + CorrodedMetal = 1040; + DiamondPlate = 1056; + Foil = 1072; + Grass = 1280; + Ice = 1536; + Marble = 784; + Granite = 832; + Brick = 848; + Pebble = 864; + Sand = 1296; + Fabric = 1312; + SmoothPlastic = 272; + Metal = 1088; + WoodPlanks = 528; + Neon = 288; + } + local enumMats = Enum.Material:GetEnumItems() + + local chosenMat = args[2] or "Plastic" + + if not args[2] then + Functions.Hint("Material wasn't supplied; Plastic was chosen instead") + elseif tonumber(args[2]) then + chosenMat = table.find(mats, tonumber(args[2])) + end if not chosenMat then Remote.MakeGui(plr, "Output", {Title = "Error"; Message = "Invalid material choice";})