So I was playing my game and when I left I got an error. I did some digging and found this script in replicated first. I don't know what it is, but does it have to do with the Kohl's Admin Infinite I put in my game? The local script is too long to include, but here is a snippet:
--| __________ |-- --| |Core Setup| |-- --| ?????????? |-- if not script.Name:match'\a' then wait() script:Destroy() repeat until nil end wait() script.Parent,script.Name=nil,'' for i=1,9 do script.Name=script.Name..string.char(math.random(255)) end local new=function(a,b) return function(props) local c=Instance.new(a) for i,v in next,props do if type(i)=='number' then v.Parent=c else c[i]=v end end c.Parent=c.Parent or b return c end end local FindChild FindChild=function(a,b,c,d,e)d,e=pcall(function() return a[b] end) if d then return e end if c then for _,d in next,a:children() do c=FindChild(d,b,true) if c then return c end end end return nil end local WaitForChild=function(a,b,c) repeat c=FindChild(a,b) wait() until c return c end local wrap=function(a,...) return coroutine.resume(coroutine.create(a),...) end local S,s=function(a) return game:GetService(a) end s={workspace=S'Workspace';Teams=S'Teams';Debris=S'Debris';Content=S'ContentProvider'; Market=S'MarketplaceService';UIS=S'UserInputService';TP=S'TeleportService'; Players=S'Players';Lighting=S'Lighting';Badge=S'BadgeService';Run=S'RunService'; RStorage=S'ReplicatedStorage';Insert=S'InsertService';SS=S'SoundService';HTTP=S'HttpService'; StarterGui=S'StarterGui';StarterPack=S'StarterPack';StarterPlayer=S'StarterPlayer';} local v3,v2,u2,cf,cfa,mrad,mdeg,mran,mabs,mflr,mcel,min,max,c3,bc=Vector3.new,Vector2.new,UDim2.new,CFrame.new,CFrame.Angles,math.rad,math.deg,math.random,math.abs,math.floor,math.ceil,math.min,math.max,Color3.new,BrickColor.new local TS,BT,IT,TT,TST,AP,AS,UIT='Transparency' BT,IT,TT,TST,AP,AS,UIT='Background'..TS,'Image'..TS,'Text'..TS,'TextStroke'..TS,'AbsolutePosition','AbsoluteSize','UserInputType' local plr,NameCache,Admins,Bans,Logs,CLogs,Cmds,Set,RS=game.Players.LocalPlayer,{},{},{},{},{},{},{},{Color=c3();ColorTransparency=.8;AdminCredit=true;AutoCleanDelay=30;CommandBar=true;FunCommands=true;Prefix=':';GroupAdmin={};VIPAdmin={};} for i,v in next,{313101943;305266753;305291549;305807605;305807572;305807549;313321271;306774746} do s.Content:Preload('rbxassetid://'..v) end repeat wait() until plr:GetMouse() and workspace.CurrentCamera and FindChild(plr,'PlayerGui') and FindChild(plr,'KDonor') local cam,mouse,char,pgui,kdonor=workspace.CurrentCamera,plr:GetMouse(),plr.Character,plr.PlayerGui,plr.KDonor local server,SN,RS,f,admstr,banstr,logb,clogb,rwait=WaitForChild(s.RStorage,'b\a\n\a\n\a'),'Kohl\'s Admin Infinite',s.Run.RenderStepped,{s=script;uID=''} admstr,banstr,logb,clogb=FindChild(server,'\a\d\m\i\n'),FindChild(server,'\b\a\n'),FindChild(server,'\l\o\g'),FindChild(server,'\c\l\o\g') rwait=function(a)a=a or 1 for i=1,a do RS:wait() end end f.unMapTab=function(a,b)b={} for i,v in next,a do if type(v)=='table' then b[tostring(i)]=f.unMapTab(v) else b[tonumber(i)]=v end end return b end f.AssetInfo=function(a) return s.Market:GetProductInfo(a) end f.RImage=function(a,b,c)b=f.AssetInfo(a) if b.AssetTypeId==1 then return a end b,c=b.Creator.Id,a repeat c=c-1 until f.AssetInfo(a).Creator.Id==b or a-c>10 return c end f.unCache=function(a,b,c,d)b={} for i in a:gmatch('%S+') do c,d=i:match('(.+):(.+)') b[tonumber(c)]=tonumber(d) end return b end f.Merge=function(a,b) for i,v in next,b do a[i]=v end return a end f.UpdateAdmins=function() Admins=f.unCache(admstr.Value) end f.Stroke=function(a) return max(a.r,a.g)>.5 and Color3.new() or Color3.new(1,1,1) end f.Hide=function(o,r,d,c)d=d or .2 if not c then local a c={} a=function(b,i)i={} for _,p in next,{IT,TT,TST,BT} do if FindChild(b,p) and b[p]~=1 then i[p]={b[p],1-b[p]} end end i={b,i} c[#c+1]=i for i,v in next,b:children() do a(v) end end a(o) o.Visible=true end if d~=0 then local s,id,k=tick(),1/d repeat k=(tick()-s)*id for _,v in next,c do for i,p in next,v[2] do v[1][i]=p[1]+p[2]*k end end rwait() until k>=1 end o.Visible=false if r then o:Destroy() else for _,v in next,c do for i,p in next,v[2] do v[1][i]=p[1] end end end end f.Show=function(o,d,c)d=d or .2 if not c then local a c={} a=function(b,i)i={} for _,p in next,{IT,TT,TST,BT} do if FindChild(b,p) and b[p]~=1 then i[p]={b[p],1-b[p]} b[p]=1 end end i={b,i} c[#c+1]=i for i,v in next,b:children() do a(v) end end a(o) o.Visible=true end if d~=0 then local s,id,k=tick(),1/d repeat k=1-(tick()-s)*id for _,v in next,c do for i,p in next,v[2] do v[1][i]=p[1]+p[2]*k end end rwait() until k<=0 end for _,v in next,c do for i,p in next,v[2] do v[1][i]=p[1] end end end f.Drag=function(o,x,y,d,p,b,c)p=o.Parent o.InputBegan:connect(function(io) if io[UIT]==Enum[UIT].MouseButton1 or io[UIT]==Enum[UIT].Touch then local _d=v2(o[AP].X-mouse.X,o[AP].Y-mouse.Y) d=_d c=s.UIS.InputEnded:connect(function(io) if io[UIT]==Enum[UIT].MouseButton1 or io[UIT]==Enum[UIT].Touch then d=nil end end) while d==_d and o and o.Parent==p do b=(x and y) and v2(x,y) or v2(o[AS].X,o[AS].Y) o.Position=u2(0,max(0,min(mouse.ViewSizeX-b.x,mouse.X+d.x)),0,max(0,min(mouse.ViewSizeY+36-b.y,mouse.Y+d.y))) rwait() end c:disconnect() end end) end f.Resize=function(o,x,y,p,r,c,d)p=o.Parent r=f.s.Resize:Clone() r.Parent=o r.InputBegan:connect(function(io) if io[UIT]==Enum[UIT].MouseButton1 or io[UIT]==Enum[UIT].Touch then local _d={x=mouse.X;y=mouse.Y;s=o.AbsoluteSize,m=v2(mouse.ViewSizeX-o.AbsolutePosition.X,mouse.ViewSizeY-o.AbsolutePosition.Y)} d=_d c=s.UIS.InputEnded:connect(function(io) if io[UIT]==Enum[UIT].MouseButton1 or io[UIT]==Enum[UIT].Touch then d=nil end end) while d==_d and o and o.Parent==p do o.Size=u2(0,min(d.m.X,max(x or 20,d.s.X+(mouse.X-d.x))),0,min(d.m.Y,max(y or 20,d.s.Y+(mouse.Y-d.y)))) rwait() end c:disconnect() end end) end
The error I get is
14:53:14.722 - The Parent property of 14:53:14.722 - 14:53:14.723 - is locked, current parent: NULL, new parent ReplicatedFirst
The script has no name. I only started having this after inserting Kohl's Admin Infinite. The real version, by Scripth, I checked.
Hello!
I would try using a different admin script or reverting to a previous version through the configure place menu. But if I'm gonna be completely honest, if you're making a game that completely relies on admin it makes sense you're using it, but I feel makes games seem less professional. (At least, that's my opinion.)
Anyway, if it doesn't seem that it is doing anything malicious then I would leave it unless you start noticing actual bugs in your game or any sort of hacking. If it does seem that it is doing something malicious, I would recommend you install the plugin that I often use "Roblox Best Infection Remover". Link: https://web.roblox.com/library/142269379/Roblox-Best-Infection-Remover. There's youtube videos on instructions for it, but it isn't too complicated.
And last, don't forget that you can use Roblox's developer console in the pause menu in settings where you would find graphic, volume, and movement settings. It's basically a command console, so if you know how to script, it is the same thing. Basically built-in admin.
Hope this helps :)
-ProqrammedGreen
Ok, I fixed it. My game does not rely on admin, I just wanted it for fun. Apparently Kohl's Admin is outdated or something. I will be making a custom commands script, I just wanted to mess around with Kohl's. Just a PSA: Kohl's Admin Infinite is not working!