- -- _____ _ _ ___ ___ __ __
- -- | __ \ | | | | |__ \ / _ \/_ | / /
- -- | |__) |___ | |__ | | _____ __ ) | | | || |/ /_
- -- | _ // _ \| '_ \| |/ _ \ \/ / / /| | | || | '_ \
- -- | | \ \ (_) | |_) | | (_) > < / /_| |_| || | (_) |
- -- |_| \_\___/|_.__/|_|\___/_/\_\ |____|\___/ |_|\___/
- --
- -- Script made by Invisible_
- -- If you want the cursor, look youtube for it
- if game:IsLoaded() ~= true then
- game.Loaded:Wait()
- end
- --Needed for nostalgia, Filtering Disabled spoof
- local Workspace = game.Workspace
- local old
- old = hookmetamethod(game, "__index", newcclosure(function(Self, ...)
- local args = ...
- if Self == Workspace and args == "FilteringEnabled" then
- return false
- end
- return old(Self, ...)
- end))
- --Script utils
- oldrequire = require
- getgenv().bakrequire = require
- cache = {}
- function IsCached(Inst)
- for i,v in next, cache do
- if v[1] == Inst then
- return true, v[2]
- end
- end
- return false
- end
- getgenv().require = function(inst)
- CachedStatus, Result = IsCached(inst)
- if CachedStatus == false and Result == nil then
- result = loadstring(inst.Source)()
- table.insert(cache, {inst, result})
- return result
- else
- if Result then
- return Result
- end
- end
- end
- getgenv().LoadLibrary = function(str)
- return loadstring(game:GetObjects("rbxassetid://9133787982")[1][str].Source)()
- end
- --Delete CoreGui guis
- function ExistAndDelete(str)
- task.spawn(function()
- if game:GetService("CoreGui"):FindFirstChild(str) == nil then
- game:GetService("CoreGui"):WaitForChild(str):Destroy()
- else
- game:GetService("CoreGui")[str]:Destroy()
- end
- end)
- end
- ExistAndDelete("RobloxGui")
- ExistAndDelete("TeleportGui")
- ExistAndDelete("RobloxPromptGui")
- ExistAndDelete("RobloxLoadingGui")
- ExistAndDelete("PlayerList")
- ExistAndDelete("RobloxNetworkPauseNotification")
- ExistAndDelete("PurchasePrompt")
- ExistAndDelete("HeadsetDisconnectedDialog")
- ExistAndDelete("ThemeProvider")
- ExistAndDelete("BubbleChat")
- --Adios all CoreScript!!!
- for i,v in pairs(game:GetDescendants()) do
- if v.ClassName == "CoreScript" then
- v:Destroy()
- end
- end
- --Chat handler (soo people can see your messages) (YOU CAN EDIT THIS IF THE GAME YOUR PLAYING HAVE A CUSTOM CHAT)
- game.Players.LocalPlayer.Chatted:Connect(function(msg)
- if game:GetService("ReplicatedStorage"):FindFirstChild("DefaultChatSystemChatEvents") ~= nil then
- if game:GetService("ReplicatedStorage").DefaultChatSystemChatEvents:FindFirstChild("SayMessageRequest") ~= nil then
- game:GetService("ReplicatedStorage").DefaultChatSystemChatEvents:FindFirstChild("SayMessageRequest"):FireServer(msg, "All")
- end
- end
- end)
- --Delete Chat if found
- if game.Players.LocalPlayer:FindFirstChild("PlayerGui") == nil then
- game.Players.LocalPlayer:WaitForChild("PlayerGui")
- end
- if game.Players.LocalPlayer.PlayerGui:FindFirstChild("Chat") == nil then
- game.Players.LocalPlayer.PlayerGui:WaitForChild("Chat"):Destroy()
- else
- game.Players.LocalPlayer.PlayerGui["Chat"]:Destroy()
- end
- --The Health bar always on
- game.Players.PlayerAdded:Connect(function(plr)
- task.spawn(function()
- if plr ~= nil then
- if plr.Character == nil then
- plr.CharacterAdded:Wait()
- end
- if plr.Character:FindFirstChild("Humanoid") == nil then
- plr.Character:WaitForChild("Humanoid")
- end
- plr.Character.Humanoid.HealthDisplayType = Enum.HumanoidHealthDisplayType.AlwaysOn
- end
- plr.CharacterAdded:Connect(function(charac)
- if charac:FindFirstChild("Humanoid") == nil then
- charac:WaitForChild("Humanoid")
- end
- charac.Humanoid.HealthDisplayType = Enum.HumanoidHealthDisplayType.AlwaysOn
- end)
- end)
- end)
- task.spawn(function()
- while true do
- task.wait(.1)
- for i,v in pairs(game.Players:GetChildren()) do
- if v.Character ~= nil then
- if v.Character:FindFirstChild("Humanoid") then
- sethiddenproperty(v.Character.Humanoid, "HealthDisplayType", Enum.HumanoidHealthDisplayType.AlwaysOn)
- end
- end
- end
- end
- end)
- --Funny gui
- local RobloxGui = game:GetObjects("rbxassetid://9139773381")[1]
- RobloxGui.Parent = game:GetService("CoreGui")
- --Remove kick blur
- task.spawn(function()
- while true do
- task.wait()
- game:GetService("RunService"):SetRobloxGuiFocused(false)
- end
- end)
- --Scripts both taken from a real 2016 roblox studio
- --They do the joining stuff etc
- task.spawn(function()
- -- Creates the generic "ROBLOX" loading screen on startup
- -- Written by ArceusInator & Ben Tkacheff, 2014
- --
- -- Constants
- local PLACEID = game.PlaceId
- local MPS = game:GetService('MarketplaceService')
- local UIS = game:GetService('UserInputService')
- local guiService = game:GetService("GuiService")
- local ContextActionService = game:GetService('ContextActionService')
- local RobloxGui = game:GetService("CoreGui"):WaitForChild("RobloxGui")
- local startTime = tick()
- local COLORS = {
- BLACK = Color3.new(0, 0, 0),
- BACKGROUND_COLOR = Color3.new(45/255, 45/255, 45/255),
- WHITE = Color3.new(1, 1, 1),
- ERROR = Color3.new(253/255,68/255,72/255)
- }
- local function getViewportSize()
- while not game.Workspace.CurrentCamera do
- game.Workspace.Changed:wait()
- end
- while game.Workspace.CurrentCamera.ViewportSize == Vector2.new(0,0) do
- game.Workspace.CurrentCamera.Changed:wait()
- end
- return game.Workspace.CurrentCamera.ViewportSize
- end
- --
- -- Variables
- local GameAssetInfo -- loaded by InfoProvider:LoadAssets()
- local currScreenGui, renderSteppedConnection = nil, nil
- local destroyingBackground, destroyedLoadingGui, hasReplicatedFirstElements = false, false, false
- local backgroundImageTransparency = 0
- local isMobile = (UIS.TouchEnabled == true and UIS.MouseEnabled == false and getViewportSize().Y 0 then
- if brickCountChange == nil then
- brickCountChange = guiService:GetBrickCount()
- end
- if guiService:GetBrickCount() - lastBrickCount >= brickCountChange then
- lastBrickCount = guiService:GetBrickCount()
- updateLoadingDots()
- end
- end
- end
- if not isTenFootInterface then
- if currentTime - startTime > 5 and currScreenGui.BlackFrame.CloseButton.ImageTransparency > 0 then
- currScreenGui.BlackFrame.CloseButton.ImageTransparency = currScreenGui.BlackFrame.CloseButton.ImageTransparency - fadeAmount
- if currScreenGui.BlackFrame.CloseButton.ImageTransparency 0)
- if not hasReplicatedFirstElements then
- if game:IsLoaded() then
- handleRemoveDefaultLoadingGui()
- else
- local gameLoadedCon = nil
- gameLoadedCon = game.Loaded:connect(function()
- gameLoadedCon:disconnect()
- gameLoadedCon = nil
- handleRemoveDefaultLoadingGui()
- end)
- end
- else
- wait(5) -- make sure after 5 seconds we remove the default gui, even if the user doesn't
- handleRemoveDefaultLoadingGui()
- end
- end
- function handleRemoveDefaultLoadingGui(instant)
- if isTenFootInterface then
- ContextActionService:UnbindCoreAction('CancelGameLoad')
- end
- destroyLoadingElements(instant)
- end
- game:GetService("ReplicatedFirst").FinishedReplicating:connect(handleFinishedReplicating)
- if game:GetService("ReplicatedFirst"):IsFinishedReplicating() then
- handleFinishedReplicating()
- end
- game:GetService("ReplicatedFirst").RemoveDefaultLoadingGuiSignal:connect(handleRemoveDefaultLoadingGui)
- if game:GetService("ReplicatedFirst"):IsDefaultLoadingGuiRemoved() then
- handleRemoveDefaultLoadingGui()
- end
- local UserInputServiceChangedConn;
- local function onUserInputServiceChanged(prop)
- if prop == 'VREnabled' then
- local UseVr = false
- pcall(function() UseVr = UIS.VREnabled end)
- if UseVr then
- if UserInputServiceChangedConn then
- UserInputServiceChangedConn:disconnect()
- UserInputServiceChangedConn = nil
- end
- handleRemoveDefaultLoadingGui(true)
- require(RobloxGui.Modules.LoadingScreen3D)
- end
- end
- end
- UserInputServiceChangedConn = UIS.Changed:connect(onUserInputServiceChanged)
- onUserInputServiceChanged('VREnabled')
- end)
- task.spawn(function()
- -- Creates all neccessary scripts for the gui on initial load, everything except build tools
- -- Created by Ben T. 10/29/10
- -- Please note that these are loaded in a specific order to diminish errors/perceived load time by user
- local scriptContext = game:GetService("ScriptContext")
- local touchEnabled = game:GetService("UserInputService").TouchEnabled
- local RobloxGui = game:GetService("CoreGui"):WaitForChild("RobloxGui")
- local soundFolder = Instance.new("Folder")
- soundFolder.Name = "Sounds"
- soundFolder.Parent = RobloxGui
- -- This can be useful in cases where a flag configuration issue causes requiring a CoreScript to fail
- local function safeRequire(moduleScript)
- local moduleReturnValue = nil
- local success, err = pcall(function() moduleReturnValue = require(moduleScript) end)
- if not success then
- warn("Failure to Start CoreScript module" ..moduleScript.Name.. ".\n" ..err)
- end
- return moduleReturnValue
- end
- --CUSTOM FUNCTION FOR SYNAPSE X
- function AddCoreScriptLocal(str)
- local Inject = [==[
- --Get names
- script.Name = script.Name..[[]==]..str..[==[]]
- --FAKE SCRIPT
- local script = Instance.new("LocalScript", game.CoreGui.RobloxGui)
- script.Name = [[CoreScripts/]==]..str..[==[]]
- script.Disabled = true
- script.Source = [[print("Doin' your mom")]]
- ]==]
- loadstring(Inject..tostring(RobloxGui.CoreScriptSyn[str].Source))()
- end
- -- TopBar
- task.spawn(function()
- AddCoreScriptLocal("Topbar")
- end)
- -- SettingsScript
- local luaControlsSuccess, luaControlsFlagValue = pcall(function() return settings():GetFFlag("UseLuaCameraAndControl") end)
- -- MainBotChatScript (the Lua part of Dialogs)
- task.spawn(function()
- AddCoreScriptLocal("MainBotChatScript2")
- end)
- -- In-game notifications script
- task.spawn(function()
- AddCoreScriptLocal("NotificationScript2")
- end)
- -- Performance Stats Management
- task.spawn(function()
- AddCoreScriptLocal("PerformanceStatsManagerScript")
- end)
- -- Chat script
- task.spawn(function() safeRequire(RobloxGui.Modules.ChatSelector) end)
- task.spawn(function() safeRequire(RobloxGui.Modules.PlayerlistModule) end)
- task.spawn(function()
- AddCoreScriptLocal("BubbleChat")
- end)
- -- Purchase Prompt Script (run both versions, they will check the relevant flag)
- task.spawn(function()
- AddCoreScriptLocal("PurchasePromptScript2")
- end)
- task.spawn(function()
- AddCoreScriptLocal("PurchasePromptScript3")
- end)
- -- Backpack!
- task.spawn(function() safeRequire(RobloxGui.Modules.BackpackScript) end)
- task.spawn(function()
- AddCoreScriptLocal("VehicleHud")
- end)
- task.spawn(function()
- AddCoreScriptLocal("GamepadMenu")
- end)
- if touchEnabled then -- touch devices don't use same control frame
- -- only used for touch device button generation
- task.spawn(function()
- AddCoreScriptLocal("ContextActionTouch")
- end)
- RobloxGui:WaitForChild("ControlFrame")
- RobloxGui.ControlFrame:WaitForChild("BottomLeftControl")
- RobloxGui.ControlFrame.BottomLeftControl.Visible = false
- end
- do
- local UserInputService = game:GetService('UserInputService')
- local function tryRequireVRKeyboard()
- if UserInputService.VREnabled then
- return safeRequire(RobloxGui.Modules.VR.VirtualKeyboard)
- end
- return nil
- end
- if not tryRequireVRKeyboard() then
- UserInputService.Changed:connect(function(prop)
- if prop == "VREnabled" then
- tryRequireVRKeyboard()
- end
- end)
- end
- end
- -- Boot up the VR App Shell
- if UserSettings().GameSettings:InStudioMode() then
- local UserInputService = game:GetService('UserInputService')
- local function onVREnabled(prop)
- if prop == "VREnabled" then
- if UserInputService.VREnabled then
- local shellInVRSuccess, shellInVRFlagValue = pcall(function() return settings():GetFFlag("EnabledAppShell3D") end)
- local shellInVR = (shellInVRSuccess and shellInVRFlagValue == true)
- local modulesFolder = RobloxGui.Modules
- local appHomeModule = modulesFolder:FindFirstChild('Shell') and modulesFolder:FindFirstChild('Shell'):FindFirstChild('AppHome')
- if shellInVR and appHomeModule then
- safeRequire(appHomeModule)
- end
- end
- end
- end
- task.spawn(function()
- if UserInputService.VREnabled then
- onVREnabled("VREnabled")
- end
- UserInputService.Changed:connect(onVREnabled)
- end)
- end
- end)