let me see (ik its for pts stuff) i havent cleared smth yettttt
yeah it is and no worries thank u
hey there, at the moment, there is no integrated way to remove notifications from every player, as they weren’t made around that ideology. however, I spent some time created an add on for you and others if you are looking to do this. the way I made it requires the title to be the same, so the title cant be PTS REQUEST it would need to be user’s PTS REQUEST, or something different to the others to prevent clearing wrong things and erroring the script. if you would or others want me to make an update so I can integrate unique IDs for each notif so it doesn’t just remove the notif if it has the said title.
please follow in order or else lines will be messed up
Open up the Basic Admin Essentials Client
line: 3; or after the Mouse variable;
on the line place this script;
local openNotificationsTable = {}
![]()
should look like ^^
line: 1820; or at the pendNotif local function
directly above place this script;
local function notifRemove(typeofnotif:string, notif:Instance, title:string, Data:any)
if openNotificationsTable[title] ~= nil then
openNotificationsTable[title] = nil
end
if typeofnotif == "open" then
fireServer('Notification Transfer',Data)
elseif typeofnotif == "exit" then
if Data and Data[5] then
fireServer("Notification Transfer",{"Complete Message",Data[5]})
end
end
for a,b in pairs(Stacks.Notifs) do
if b == notif then
table.remove(Stacks.Notifs,a)
end
end
notif:Destroy()
figureNotifs(Stacks.Notifs,baseClip:WaitForChild('Container'))
end
should look like ^^
line: 1837; the updated line 1820
empty the local function;
should look like ^^
after such, paste into the local function;
spawn(function()
local notificationContainer = baseClip:WaitForChild('Container')
local Notification = notificationContainer:WaitForChild('Template')
local notifClone = Notification:Clone()
local notifInner = notifClone:WaitForChild('Inner')
local notifControls = notifInner:WaitForChild('Controls')
local notifTitle = notifControls.Decoration:WaitForChild('Title')
local notifExit = notifControls:WaitForChild('Exit')
local notifOpen = notifInner:WaitForChild('Open')
local notifDesc = notifInner:WaitForChild('Desc')
notifClone.Name = 'Notif Clone'
notifClone.Visible = true
notifClone.Parent = notificationContainer
notifTitle.Text = Title
notifDesc.Text = Desc
local receiveSound = Instance.new('Sound',Workspace.CurrentCamera)
receiveSound.Name = 'Notification'
receiveSound.SoundId = 'rbxassetid://255881176'
receiveSound.Volume = 1
receiveSound.Pitch = 1
receiveSound.PlayOnRemove = true
receiveSound:Destroy()
notifClone.Position = UDim2.new(0,0,1,0)
notifInner.Position = UDim2.new(0,0,1,0)
Tween(notifInner, 0.3, {Style = Enum.EasingStyle.Quint, Direction = Enum.EasingDirection.Out}, {Position = UDim2.new(0,0,0,0)})
openNotificationsTable[Title] = notifClone
if Data[5] then
local Tag = Instance.new('StringValue',notifClone)
Tag.Name = "Tag"
Tag.Value = Data[5]
end
local exitConnection
exitConnection = notifExit.MouseButton1Click:connect(function()
notifRemove("exit", notifClone, Data)
exitConnection:Disconnect()
end)
local openConnection
openConnection = notifOpen.MouseButton1Click:connect(function()
openConnection:Disconnect()
notifRemove("open", notifClone, Data)
end)
table.insert(Stacks.Notifs,notifClone)
figureNotifs(Stacks.Notifs,notificationContainer)
end)
should look like ^^
line: 2565; or directly under the Notif remote event statement
paste this script under line 2565;
elseif Starter == "RemoveNotif" then
if openNotificationsTable[Data[1]] ~= nil then
notifRemove("exit", openNotificationsTable[Data[1]], Data[1], {})
end
should look like ^^
Removal example;
remoteEvent:FireClient(player, 'RemoveNotif','NOTIFTITLE')
remoteEvent:FireAllClients('RemoveNotif','NOTIFTITLE')
^^ Server-side(plugin or script)
That concludes it, I spent a decent amount of time making this so please heart this post to show support if I missed anything or you found a flaw in my code, please reply. Thanks
ty for reading!!
SEARCH TAGS: PTS Clear Notification Remove Notification Permission to Speak help
edit: pls refrain from adding this into your game, I have identified a bug and I am implementing a fix
To those receiving the GuiService:AddSelectionParent already has selection group with name PlayerlistGuiSelection, overwriting selection group. warning in your output, it’s normal and it’s an internal roblox behaviour. As it is a useless error, if you want your client sided output clean you can silent it by pcalling the script like so:
pcall(function() starterGui:SetCoreGuiEnabled(Enum.CoreGuiType.PlayerList, false) end)
These are situated in two locations, you can find them using CONTROL F in the basic admin essentials client. or line 2324 and 2344
hey thank u, i ended up figuring this out and doing it a couple days ago but it’s amazing and works perfectly. thank u for ur response!
omgg thanks adam ur the best !!!
I noticed a new bug after a recent Roblox update that is really really annoying, at least for me.
- Typing an apostrophe in chat will open the command bar
- Typing
Ein chat toggles fly (if it’s enabled).
This happens because UserInputService.InputBegan still fires even when the input is being used by chat.
really quick fix
In Basic Admin Client userInput.InputBegan:connect(function(Input,Processed) change
if not inABox then
to
if not inABox and not Processed then
This makes sure that the event isn’t fired when using the chat or whatever else that also uses those keys.
(picture for reference)
Thank you for this! Was wondering why this was happening ![]()
You must modify all logic, ensure you don’t miss any for the rank additions.
hey, whenever i try editing the donorid into a gamepass one it doesn’t work and instead keeps telling me i already own the item when i try using the command !cape for example. yes, i changed all of the PromptPurchase into PromptGamePassPurchase, any ideas?
Are you using the most up-to-date version of Basic Admin Essentials? From what I remember this used to be an issue in an older version of the module but I think it was fixed by the creator after some time. I have the most up-to-date version linked at the top of this post.
Does anyone know how to integrate bans to the new ban API?
Adding timestamps to Join Logs
A simple feature which Basic Admin lacks is having the timestamp of when a player joined in :joinlogs. Having this might be helpful for some games, so you can add it by following these easy steps:
1. Find this section of your MainModule
2. Change this line
addLog(sysTable.joinLogs,Player.Name
to
addLog(sysTable.joinLogs,os.date("%X").." | "..Player.Name)
3. That’s it!
The :joinlogs command will now show players in the following format: HH:MM:SS | Username
Very lateee but how do I make the basic admin UI a gradient color?
Appreciate it if you could help! ![]()
Hihi!! Head to the MainModule script inside of your Basic Admin Essentials script, then open it > open the Components folder, then look for the ScreenGUI inside. Then, you can put it into StarterGUI, head inside and make a frame visible, then you can add a UIGradient inside of the frame. Ensure that your colour which can be toggled inside of the script is white incase the gradient glitches. Hope this helped!!
Does anyone have issues with your command bar not working? The UI shows and you can type, it just doesn’t execute commands,
How could I make commands such as :m and :h work cross age-group?







