The Ultimate Basic Admin Essentials Guide

Actually disregard this, I’ve figured it out for the most part. One big thing I want to do, however, is be able to add the player argument to certain commands, like ones that display lists. For example ‘chatlogs flame’ will run chatlogs pre-run with the search for the corrected argument. It will check if the argument matches any players’ name and then search for that for example ‘chatlogs flame’ will run a search with Flameysrs. If the argument is not found to be matching any players, it looks for it in another list (I’ve created a command called leavelogs embedded into the mainmodule which created a list with the username of those who leave). If it cannot find it there, it just runs the search with the argument itself, in this case, just flame. Are you able to help with something like this?

1 Like

I’ve asked a friend who is friends with the BAE creator and he said that this function was never broken, cause it was never a function but people just created it themselves!

Pretty sure the command bar has always come with Basic Admin Essentials but recently the autocomplete on it has been bugged. It happens even for groups using a non-forked up-to-date version of the module.

4 Likes

@LegendOJ1 Do you know if you’re able to do this or help with this

lmk if u still need help on this

1 Like

yes help would be appreciated with this

1 Like

Extremely helpful, thank you so much! Cannot wait to see the sticky message and new ban API implemented!

2 Likes

When is the Sticky Message command coming…?

2 Likes

Does anyone know how I would add the moderator to the kick message:
image

Itd probably go "evocor moderation \n 406 \n You have been permanently blacklisted from SSS, you may not join this experience \n Moderator: \n Moderator note:

How exactly would I make it automatically put in the moderators roblox username?

Thanks

This is a bit poorly worded but long story short, how do I add the moderator to the kick messages?

For the migration to the new ban api I’ve spent a while trying to do so and this is what I’ve come up with so far and it does kinda work, any suggested improvements are welcome.

function Funcs.Ban(Args)
	local Player = Args[1]
	local playerPermissions = returnPermission(Player)
	local Victims = returnPlayers(Player,Args[3],Args[2])

	local Command = Args[2]
	if Command == "unban" then
		local UnbanConfig: UnbanConfigType = {
			UserIds = { playerService:GetUserIdFromNameAsync(Args[3]) },
			ApplyToUniverse = true
		}
		
		playerService:UnbanAsync(UnbanConfig)
	elseif Command == "ban" then
		if not Victims then
			remoteEvent:FireClient(Player,'Hint','Error',(Args[3] or 'nil')..' was not found.')
			return
		end
		for a,b in next,Victims do
			local victimPermissions = returnPermission(b)
			
			local banConfig: BanConfigType = {
				UserIds = {b.UserId},
				Duration = tonumber(Args[5]),
				DisplayReason = Args[4],
				PrivateReason = Args[4],
				ExcludeAltAccounts = false
			}
			
			if not sysTable.Permissions.Banned[tostring(b.UserId)] and victimPermissions < playerPermissions then
				sysTable.Permissions.Banned[tostring(b.UserId)] = b.Name
				pluginEvent:Fire("Ban Logs",{Player,"Banned "..b.Name})
				playerService:BanAsync(banConfig)			
			end
		end
	end
end
3 Likes

Very helpful BAE Guide, thank you.

1 Like

Hey owen! There is a way to bind the console bar into the top bar, needed the top bar module.

Just add into basic admin client

‘‘‘lua
local icon = (the code for the icon module)
icon.new()
:setLabel(“Silent command”)

:bindEvent(“deselected”, function()
:console()
end)
:oneClick()

‘‘‘

Wrote on my phone so might be wrong.
dm cuzangaming on discord if issues

1 Like

If you’re binding the console button a topbar icon using TopbarPlus, you should keep in mind that you won’t be able to leverage the functionality that you can with the BindableEvent solution proposed in my original post, because you can’t open the console from outside of the module itself. With my solution, you can.

This is not a bad solution though - if you’re using TopbarPlus and don’t care about accessing the console outside the module, the following code will do it for you:

-- At the bottom of the Basic Admin Client LocalScript
local Icon = require(replicatedStorage.Packages.Icon)

local myIcon = Icon.new()
myIcon:setLabel("Command Bar")

myIcon:bindEvent("selected", function()
    myIcon:deselect()
    Console()
end)
1 Like

Hello everybody. I am glad to find this active. Unfortunately, I was late in finding this guide and never knew what I could do with it. Furthermore, the module script has been locked and I did not have it saved in my inventory. This no longer works.

Does anyone have a copy of the module they could share? Does anybody know what happened?

Thank you.

It’s in the toolbox if you click your inv, then click models then packages it should be there. I would show a video but roblox studio is down. Major Outage Affecting Several Components: Studio, Groups, Settings, etc

1 Like

Thank you! Like I said, I did not have the module in my inventory. I was able to find a modified version on the forum though! Thanks.

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:

  1. 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 to script.MainModule.
  2. 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.

cc @exvicist @bgonzalezseeya11

11 Likes

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

image
it does both when i do !uniform male, and yes i checked, shirt and pants are different assets

4 Likes