In my game starlight high, I have several scripts located in the startergui, they somehow stopped working. Is this a new feature with the update for roblox?, that local scripts are parented to startergui, this is a weird bug I’ve encountered.
you can see it here
Please help me with this situation, it’s really unusual I’ve had something happen where clicking wasn’t working and now it’s the local scripts inside the player’s ui
there are no errors shown in the output and the scripts are not disabled.
When did you last update this as it could be an FE issue. Moreover a script would be much appreciated as its very difficult to help without much context.
I last updated the first place about a day ago. I don’t think this is a filtering enabled issue since local scripts are supposed to work in the starter gui. Earlier today it was working however but then it suddenly stopped.
These are multiple scripts across various games, really and it’s an issue with all of them. I don’t really know how showing the scripts could be much help since they don’t function at all.
Here’s a part of a script I guess (it’s a bit messy)
local StarterGui = game:GetService('StarterGui')
local plr = game.Players.LocalPlayer
plr.CharacterAdded:wait()
local spawnn = 'SpawnLocation'
plr.PlayerGui:SetTopbarTransparency(1)
local plrgui = plr.PlayerGui
local char = plr.Character
local rs = game:GetService("ReplicatedStorage")
local lighting = game:GetService("Lighting")
local remotes = rs.avatar_editor_remotes
local begin_remote = remotes.begin
local add_remote = remotes.additem
local universal = game:GetService('ReplicatedStorage').universal
local TweenService = game:GetService("TweenService")
local avachar
local sound1
local sound2
local frombought
local remove_accessories = {}
local function clone_char()
workspace.avatar_editor.line.pe.Enabled = true
if avachar then
avachar:Destroy()
end
char.Archivable = true
wait(0.1)
avachar = char:Clone()
avachar:FindFirstChild('Body Colors'):Destroy()
if avachar:FindFirstChild('ForceField') then
avachar:FindFirstChild('ForceField'):Destroy()
end
local object = char.Head.Color
avachar.Head.Color = object
for i,v in pairs(avachar:GetChildren()) do
if v:IsA('MeshPart') then
v.Color = object
end
end
if avachar.Head:FindFirstChild('faceui') then
if avachar:FindFirstChild('blinking') then
avachar.blinking:Destroy()
end
char.blinking:Clone().Parent = avachar
end
if avachar:FindFirstChild('PetTool') then
avachar.PetTool:Destroy()
end
for i,v in pairs (workspace.character_cloning:GetChildren()) do
v:Destroy()
end
avachar.Parent = workspace.character_cloning
avachar.HumanoidRootPart.CFrame = workspace.avatar_editor.spawn.Value
local animation = Instance.new("Animation")
animation.AnimationId = char.Animate.idle.Animation1.AnimationId
local animTrack = avachar.Humanoid:LoadAnimation(animation)
animTrack:Play()
workspace.avatar_editor.line.pe.Enabled = false
end
rs.avatar_editor_remotes.clonex.OnClientEvent:Connect(function()
clone_char()
end)
if plr.PlayerGui:FindFirstChild('Chat') then
plr.PlayerGui:FindFirstChild('Chat').Enabled = true
game.Soundscape.party_music:Play()
end
local main = plrgui.maingui
local button = main.hub.avatar_editor.button
local workspacecam = workspace.CurrentCamera
local cframeoldd
--- hide players and show players with the avatar editor ---
--[[begin_remote.OnClientEvent:Connect(function()
for i,v in pairs (game.Players:GetChildren()) do
if v.Name == plr.Name then
else
print('EEEK')
if v.Character.inavatareditor.Value == true then
print('tttrrrUUU')
v.Character.Parent = game.Lighting
elseif v.Character.inavatareditor.Value == false then
print('FAAAAAAALSSSSSE')
v.Character.Parent = workspace
end
end
end
end)]]
local function hair_p_check()
if plr.PlayerGui:FindFirstChild('Chat') then
plr.PlayerGui:FindFirstChild('Chat').Enabled = true
end
spawn(function()
for i,v in pairs(char:GetChildren()) do
if v:FindFirstChild('physics') then
v.Parent = workspace
for a,l in pairs (v.Handle:GetChildren()) do
if l:IsA('AlignOrientation') or l:IsA('BallSocketConstraint') or l:IsA('RopeConstraint') then
l.Enabled = false
end
end
for o,m in pairs(v:GetChildren()) do
if m:IsA('MeshPart') then
m.Position = char.Head.Position
end
end
for a,l in pairs (v.Handle:GetChildren()) do
if l:IsA('AlignOrientation') or l:IsA('BallSocketConstraint') or l:IsA('RopeConstraint') then
l.Enabled = true
end
end
v.Parent = char
end
end
end)
end
Perhaps it was a client update of sorts? It seems that there’s been a few issues with LocalScripts on the rise lately. One thread reported an issue with KeyDown being broken.
If you’re absolutely sure that this isn’t something you directly caused, it’s most likely a Roblox error and there’s not much you can do, if anything, to fix the issue yourself.
GUIs are client-sided. Doubt they’ll break if they were handled by local scripts… but a wild guess would be if the GUIs were handled by a server scripts, entirety would break.
local plr = game.Players.LocalPlayer
local plrgui = plr.PlayerGui
local spawnn = 'SpawnLocation'
plrgui:SetTopbarTransparency(1)
local char = plr.Character
local remotes = rs.avatar_editor_remotes
local begin_remote = remotes.begin
local add_remote = remotes.additem
local rs = game:GetService("ReplicatedStorage")
local lighting = game:GetService("Lighting")
local StarterGui = game:GetService("StarterGui")
local TweenService = game:GetService("TweenService")
local universal = game:GetService('ReplicatedStorage').universal
local avachar
local sound1
local sound2
local frombought
local remove_accessories = {}
local function clone_char()
workspace.avatar_editor.line.pe.Enabled = true
if avachar then
avachar:Destroy()
end
char.Archivable = true
wait(0.1)
avachar = char:Clone()
avachar:FindFirstChild('Body Colors'):Destroy()
if avachar:FindFirstChild('ForceField') then
avachar:FindFirstChild('ForceField'):Destroy()
end
local object = char.Head.Color
avachar.Head.Color = object
for i,v in pairs(avachar:GetChildren()) do
if v:IsA('MeshPart') then
v.Color = object
end
end
if avachar.Head:FindFirstChild('faceui') then
if avachar:FindFirstChild('blinking') then
avachar.blinking:Destroy()
end
char.blinking:Clone().Parent = avachar
end
if avachar:FindFirstChild('PetTool') then
avachar.PetTool:Destroy()
end
for i,v in pairs (workspace.character_cloning:GetChildren()) do
v:Destroy()
end
avachar.Parent = workspace.character_cloning
avachar.HumanoidRootPart.CFrame = workspace.avatar_editor.spawn.Value
local animation = Instance.new("Animation")
animation.AnimationId = char.Animate.idle.Animation1.AnimationId
local animTrack = avachar.Humanoid:LoadAnimation(animation)
animTrack:Play()
workspace.avatar_editor.line.pe.Enabled = false
end
rs.avatar_editor_remotes.clonex.OnClientEvent:Connect(clone_char)
if plr.PlayerGui:FindFirstChild('Chat') then
plr.PlayerGui:FindFirstChild('Chat').Enabled = true
game.Soundscape.party_music:Play()
end
local main = plrgui.maingui
local button = main.hub.avatar_editor.button
local workspacecam = workspace.CurrentCamera
local cframeoldd
--- hide players and show players with the avatar editor ---
--[[begin_remote.OnClientEvent:Connect(function()
for i,v in pairs (game.Players:GetChildren()) do
if v.Name == plr.Name then
else
print('EEEK')
if v.Character.inavatareditor.Value == true then
print('tttrrrUUU')
v.Character.Parent = game.Lighting
elseif v.Character.inavatareditor.Value == false then
print('FAAAAAAALSSSSSE')
v.Character.Parent = workspace
end
end
end
end)]]
local function hair_p_check()
if plr.PlayerGui:FindFirstChild('Chat') then
plr.PlayerGui:FindFirstChild('Chat').Enabled = true
end
spawn(function()
for i,v in pairs(char:GetChildren()) do
if v:FindFirstChild('physics') then
v.Parent = workspace
for a,l in pairs (v.Handle:GetChildren()) do
if l:IsA('AlignOrientation') or l:IsA('BallSocketConstraint') or l:IsA('RopeConstraint') then
l.Enabled = false
end
end
for o,m in pairs(v:GetChildren()) do
if m:IsA('MeshPart') then
m.Position = char.Head.Position
end
end
for a,l in pairs (v.Handle:GetChildren()) do
if l:IsA('AlignOrientation') or l:IsA('BallSocketConstraint') or l:IsA('RopeConstraint') then
l.Enabled = true
end
end
v.Parent = char
end
end
end)
end
Also I can’t access the latest release notes. The page is broken and I might return another day trying to check what is off.
Did you try acquiring the previous version prior to the update of your games before they broke, AKA a rollback? - Make sure to save the latest version.
If I was given answers from these questions I’ll probably find out where the source of this bug is coming from.
One of my group games’s UI broke as well. For me the local scripts are running fine but when the code checks a ObjectValue’s value it will always be nil even when in Studio the value is assigned something. My friend’s game also broke at the same time but he hasn’t told me a cause yet.
Also, the error is occurring with many other people, it may be an update or an API error, still waiting for more information for the LocalScripts error.
I have checked around release notes 378 and it turns out they do change the UI a bit, but I haven’t found anything that could critically break it.
Strange thing is that when I tested some UI during a session in Studio, they worked without any problems. It appears that the bug was just temporary from Roblox’s end.
Which means SPTS is broken because of Roblox, I swear to myself that we didn’t make any changes to the game, check the last update date, I only added the Bloxy toy.