Hey there! Could you send me the link to the module you found?
Module Loading Issue
There is an issue that has appeared in the past few days which is due to the main module being setup as a Package and not as an actual model which is now no longer able to be distributed on the marketplace. It means people can’t load it into their game since the model is privated.
Statement from the creator of Basic Admin Essentials:
“in 2020 i made basic admins main module into a package linked model and roblox just made it so that you can’t have that type of asset as publicly available…it looks like i’m gonna have to migrate the asset id for the main module to a new asset id”
Since if you don’t own the module you can’t import it now, this is a severe problem for people relying on the asset ID from the module and it has caused the admin to break in a lot of games. I’ve uploaded the MainModule as a real model that you can take for free from the creator marketplace for now, linked below.
To put this in your game (and fix your admin), do one of the following:
- Take the model above and import it into your game. Drag it under the original Basic Admin script and change the
Loader ID
section in that Basic Admin Essentials 2.0 loader script toscript.MainModule
. - Change the number for
Loader ID
in your Basic Admin Essentials 2.0 script to the ID of the model above (89905715840090
).
I assume the creator of Basic Admin Essentials will migrate the module to a new module as soon as possible and I will change the link/ID above to his official model when this is the case.
I have an issue,
local Plugin = function(...)
local Data = {...}
local remoteEvent = Data[1][1]
local remoteFunction = Data[1][2]
local returnPermissions = Data[1][3]
local Commands = Data[1][4]
local Prefix = Data[1][5]
local actionPrefix = Data[1][6]
local returnPlayers = Data[1][7]
local cleanData = Data[1][8]
local pluginName = 'uniform'
local pluginPrefix = actionPrefix
local pluginLevel = 1
local pluginUsage = "<Gender>"
local pluginDescription = ""
local playerService = game:GetService('Players')
local function pluginFunction(Args)
local Player = Args[1]
local gender = Args[3]
print(gender)
if gender == 'male' or 'Male' then
Player.Character.Shirt.ShirtTemplate = script.male.ShirtM.ShirtTemplate
Player.Character.Pants.PantsTemplate = script.male.pantsm.PantsTemplate
print(Player.Name.. " has put on the male uniform.")
end
if gender == "female" or "Female" then
Player.Character.Shirt.ShirtTemplate = script.female.shirtf.ShirtTemplate
Player.Character.Pants.PantsTemplate = script.female.pantsf.PantsTemplate
print(Player.Name.. " has put on the female uniform")
end
end
local descToReturn
if pluginUsage ~= "" then
descToReturn = pluginPrefix..pluginName..' '..pluginUsage..'\n'..pluginDescription
else
descToReturn = pluginPrefix..pluginName..'\n'..pluginDescription
end
return pluginName,pluginFunction,pluginLevel,pluginPrefix,{pluginName,pluginUsage,pluginDescription}
end
return Plugin
it does both when i do !uniform male, and yes i checked, shirt and pants are different assets
When doing if statements in Luau, you must specify each condition individually. What’s happening under the hood with your current script is that it’s checking if the gender is equal to “male”, but the second condition is a string (always a truthy value) so the check for male is always true.
There are two ways you can fix this:
- Convert the string into lowercase so that the input case doesn’t matter (recommended)
- Check both conditions using “or” (
if gender == "male" or gender == "Male" then
)
Here’s how you’d do option 1 which is best as the input case shouldn’t matter in this scenario.
local function pluginFunction(Args)
local Player = Args[1]
local gender = Args[3]
if string.lower(gender) == "male" then
Player.Character.Shirt.ShirtTemplate = script.male.ShirtM.ShirtTemplate
Player.Character.Pants.PantsTemplate = script.male.pantsm.PantsTemplate
print(Player.Name.. " has put on the male uniform.")
elseif string.lower(gender) == "female" then
Player.Character.Shirt.ShirtTemplate = script.female.shirtf.ShirtTemplate
Player.Character.Pants.PantsTemplate = script.female.pantsf.PantsTemplate
print(Player.Name.. " has put on the female uniform")
end
end
Oh thanks! char limmit!!!111111
I believe there is a custom model made for sticky messages and it was public before, here’s the script:
--[[
____
/\ _`\ __
\ \ \L\ \ __ ____/\_\ ___
\ \ _ <' /'__`\ /',__\/\ \ /'___\
\ \ \L\ \/\ \L\.\_/\__, `\ \ \/\ \__/
\ \____/\ \__/.\_\/\____/\ \_\ \____\
\/___/ \/__/\/_/\/___/ \/_/\/____/
Admin Essentials v2
Plugin Documentation
*coming soon^tm
If you have any questions regarding Plugins, contact TheFurryFish.
--]]
local Plugin = function(...)
local Data = {...}
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local StickyEvent = ReplicatedStorage:WaitForChild("StickyMessage")
local FetchSticky = ReplicatedStorage:WaitForChild("FetchSticky")
local Sticky = false
local StickyMessage = ""
local StickyPlayer
-- Included Functions and Info --
local remoteEvent = Data[1][1]
local remoteFunction = Data[1][2]
local returnPermissions = Data[1][3]
local Commands = Data[1][4]
local Prefix = Data[1][5]
local actionPrefix = Data[1][6]
local returnPlayers = Data[1][7]
local cleanData = Data[1][8] -- cleanData(Sender,Receiver,Data)
-- Practical example, for a gui specifically for a player, from another player
-- cleanData(Sender,Receiver,"hi") -- You need receiver because it's being sent to everyone
-- Or for a broadcast (something everyone sees, from one person, to nobody specific)
-- cleanData(Sender,nil,"hi") -- Receiver is nil because it is a broadcast
-- Plugin Configuration --
local pluginName = 'n'
local pluginPrefix = Prefix
local pluginLevel = 2
local pluginUsage = "<Message?>" -- leave blank if the command has no arguments
local pluginDescription = "Allow for a sticky hint to be placed at the top of the screen"
-- Example Plugin Function --
local function pluginFunction(Args) -- keep the name of the function as "pluginFunction"
local Player = Args[1]
if Args[3] then
local combinedMessage
for a,b in pairs(Args) do
if a >= 3 then
if not combinedMessage then
combinedMessage = b
else
combinedMessage = combinedMessage..' '..b
end
end
end
for a,b in next, game:GetService("Players"):GetPlayers() do
local Cleaned,newData = cleanData(combinedMessage,Player,b)
local cleansedData = ""
local cannotShow = false
if Cleaned and newData then
cleansedData = newData
elseif not Cleaned then
if newData and newData:lower():match('cannot communicate with') then
cannotShow = true
StickyEvent:FireClient(b, true, Player, 'Your chat settings prevent you from seeing messages.')
else
if not newData then
remoteEvent:FireClient(Player,'Hint', "Warning",'Your chat settings prevent you from sending messages.')
return
else
cleansedData = newData
end
end
end
if not cannotShow then
StickyEvent:FireAllClients(true, Player, cleansedData)
Sticky = true
StickyMessage = combinedMessage
StickyPlayer = Player
end
end
else
StickyEvent:FireAllClients(false, Player, "")
Sticky = false
StickyMessage = ""
StickyPlayer = nil
end
end
FetchSticky.OnServerInvoke = function(Player)
local Cleaned, newData = cleanData(StickyMessage, Player, nil)
local cleansedData = ""
local cannotShow = false
if Cleaned and newData then
cleansedData = newData
elseif not Cleaned then
if newData and newData:lower():match('cannot communicate with') then
cannotShow = true
StickyEvent:FireClient(Player, true, Player, 'Your chat settings prevent you from seeing messages.')
else
cannotShow = true
end
end
if not cannotShow then
return {
Active = Sticky,
Message = cleansedData,
Player = StickyPlayer
}
end
end
-- Return Everything to the MainModule --
local descToReturn
if pluginUsage ~= "" then
descToReturn = pluginPrefix..pluginName..' '..pluginUsage..'\n'..pluginDescription
else
descToReturn = pluginPrefix..pluginName..'\n'..pluginDescription
end
return pluginName,pluginFunction,pluginLevel,pluginPrefix,{pluginName,pluginUsage,pluginDescription}
end
return Plugin
just make sure to create a remote function and remote event inside of replicatedstorage, rf naming: FetchSticky
and re naming: StickyMessage
i pretty much recommend updating the script if necessary since it is kinda old
Furthermore, the developer can implement the module without any package linked to it (or atleast works for me) by using the command in the output:
game:GetService("InsertService"):LoadAsset(563619835).Parent = game.ServerStorage -- user can parent this anywhere
I think thats a free model. char limit
it was indeed a free model, but i cannot find it anywhere in the toolbox
What happened to the main module asset?
It was uploaded as a package which can no longer be distributed on the marketplace. You can fix this by referring to my post below.
The Ultimate Basic Admin Essentials Guide - #45 by LegendOJ1
I know this is out of your control,
but whenever you modify the bae main module, and upload it to roblox you get a warning because it’s “misuse of roblox’s sytems” “sexual content” “spam” and more.
Are there any solutions to logs and chat logs not fully showing for mobile players after enabling copy and pasting?
This is a slightly more complicated thing to achieve so I’ve made a video explaining how you might go about achieving this type of functionality. By no means is this the best solution and it still needs improvement if you want to emulate the PC behavior exactly, but it should be at least a good starting point for restoring the functionality on mobile.
How do you set up trello bans?
Wow! This solutions works really well! Although there are some limitations but I think it does the job right. Thank you so much!
So recently I was editing the BAE Donor Template UI, and I for some reason have experienced a new bug that has never occurred to me before and I was wondering if its Roblox studios fault or smth on my end!
So the bug was that when I opened up the Donor UI And it was all weirdly placed!
But donating in studio testing everything worked perfectly fine anyone got ideas?
Do you have a tutorial for adding cooldowns to ban kick pban commands?
Don’t forget to add “Temporary Bans & Migration to the new Ban API”
How can I teleport teams? As Im making a training center and im needing to teleport specific teams through a command. Is that possible?