Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Verveo/Basic-Admin-Remade/llms.txt

Use this file to discover all available pages before exploring further.

This page answers the most common questions about Basic Admin Remade. If you don’t find your answer here, join the community Discord at https://discord.gg/kMDQXANppm for direct support.
There are a few common causes:
  1. Wrong prefix. The default command prefix is : (colon). Make sure you are typing commands like :kick PlayerName and not using another character. The prefix is set in main_script.lua:
['Prefix'] = (':'),
Some commands use the action prefix ! instead (e.g., !clean, !rejoin, !cape). Check the command list with :cmds to confirm which prefix a command uses.
  1. BAR is not in ServerScriptService. BAR’s main script must be placed inside ServerScriptService. Placing it in Workspace, StarterPack, or any other service will prevent it from running correctly. BAR will attempt to move itself automatically, but placing it in the correct location from the start is recommended:
-- BAR enforces this at runtime:
if script.Parent ~= game:GetService('ServerScriptService') then
    script.Parent = game:GetService('ServerScriptService')
end
  1. Your User ID is not in the correct admin table. If you are not the game creator, your Roblox User ID (not your username) must be added to the Super Admins, Admins, or Mods table in main_script.lua. See the next FAQ for details.
As the game creator, you are automatically given the Game Creator rank (level 4) — the highest admin level. You do not need to add yourself to any table.For other players, add their Roblox User ID (a numeric value, not their username) to the appropriate table in main_script.lua:
['Super Admins'] = {
    1234567890, -- Replace with the player's User ID
},

['Admins'] = {
    9876543210,
},

['Mods'] = {
    1122334455,
},
The four permission levels are:
LevelRankDefault rank name
4Game CreatorGame Creator
3Super AdminSuperAdmin
2AdminAdmin
1ModeratorModerator
Rank names can be customized in the Rank Config table inside ExtraSettings.lua.
The Datastore Key in main_script.lua determines the key used by Roblox’s DataStore service to store and retrieve BAR’s persistent data — including permanent ban records and donor cape data:
['Datastore Key'] = ('BAR'), -- What cape data, ban data, etc. is stored under. Changing will wipe it.
Changing this value effectively resets all stored data. Any existing permanent bans will no longer be enforced (BAR won’t find them under the new key), and all saved cape configurations will be lost. Only change this value if you intentionally want to start fresh, such as after a game reset or when moving to a different game.
Yes. Set DisplayNameSupportEnabled = true in ExtraSettings.lua (it is true by default):
["DisplayNameSupportEnabled"] = true, -- Use display name & username to use commands on players?
When enabled, BAR will accept both a player’s display name and their username as valid targets for commands. For example, both :kick CoolDisplayName and :kick ActualUsername will work for the same player.If you want to require exact usernames only (e.g., to avoid ambiguity), set this to false.
Set CommandBarRestrictionEnabled = true in ExtraSettings.lua:
["CommandBarRestrictionEnabled"] = false, -- False to enable command bar. True to disable command bar (for all ranks)
When set to true, the BAR command bar GUI is hidden and disabled for all ranks, including admins. Commands can still be issued through chat. Set it back to false (the default) to re-enable the command bar.Note: This setting disables the command bar UI entirely. Admins can still use commands by typing them in the Roblox chat with the appropriate prefix.
The two banning commands have different scopes and persistence:
  • :ban is a session ban. It removes the player from the current server and adds them to an in-memory ban list. The ban is lifted as soon as the player joins a new server instance (or the server restarts). It is useful for quickly removing a disruptive player from a single session.
  • :pban is a permanent ban. It stores the ban in Roblox’s DataStore (or via the Roblox Ban API when UseLegacyBan = false) so the player is denied entry every time they attempt to join any server for your game. Permanent bans persist across server restarts.
To un-permanently-ban a player by username, use :unpban <FullUsername>. To un-ban by User ID, use :unpbanid <UserID>. To view a list of permanent bans, use :pbans.
BAR includes a plugin system that lets you add your own commands without modifying the core source files. To create a plugin:
  1. Create a Folder named Plugins inside the BAR main_script in ServerScriptService.
  2. Add a ModuleScript inside the Plugins folder. Each ModuleScript represents one custom command.
  3. The ModuleScript must return a function that receives the BAR API table and returns the command’s Name, Function, Level, Prefix, and Desc values.
BAR detects and loads plugins automatically at startup:
local Plugins
if script:FindFirstChild('Plugins') and #(script:FindFirstChild('Plugins'):GetChildren()) >= 1 then
    Plugins = script:FindFirstChild('Plugins')
end
For a full walkthrough with code examples, see the Creating a Plugin guide.
Not for core functionality. Basic admin commands — kicking, banning, teleporting, messaging, etc. — all work without HttpService.HttpService is only required for:
  • Trello integration — Syncing ban lists from a Trello board (['Trello'] = true in main_script.lua).
  • Version checking — BAR pings boopup.dev on startup to check if a newer version is available and to display it to Game Creator-ranked admins.
If HttpService is disabled, BAR will simply skip these features and log a debug entry. Enable HttpService in Roblox Studio under Game Settings → Security → Allow HTTP Requests if you want to use Trello integration.
BAR uses two distinct command prefixes:
  • Command prefix (:) — Used for most moderation and admin commands, e.g., :kick PlayerName, :ban PlayerName, :sm Hello everyone.
  • Action prefix (!) — Used for player-facing or utility commands, e.g., !clean, !cape, !rejoin, !changelog.
The distinction is reflected in how commands are registered internally. For example, !clean is a public command (permission level 0) accessible to everyone when Public Commands is enabled, while :ban requires at least Admin (level 2).The command prefix is configurable via ['Prefix'] in main_script.lua. The action prefix (!) is set in the BAR core and is not a top-level configuration option, but you can override the prefix on any individual command using the ['Prefix'] key inside that command’s entry in the Command Configuration table in main_script.lua.To see which prefix applies to each command in your server, type :cmds (if you have admin) to open the full command list.
For general bugs and feature requests:Open an issue on the GitHub repository: https://github.com/Verveo/Basic-Admin-Remade/issuesInclude as much detail as possible — the BAR version you are using, steps to reproduce the issue, and any relevant error messages from the Output window.For security vulnerabilities:Do not open a public issue for security vulnerabilities. Instead, use GitHub’s private vulnerability reporting:
  1. Go to https://github.com/Verveo/Basic-Admin-Remade.
  2. Click the Security tab.
  3. Click “Report a Vulnerability” to submit a private advisory.
This ensures the issue can be triaged and patched before public disclosure, protecting all BAR users.

Build docs developers (and LLMs) love