Hello, Ok so i would like to make a custom admin command Script for my school. I want it to be set that you get admin if in the group but at a rank and a Rank tp to the rooms but the spot that you tp to changes depending on what class you should be in. I wan to be able to kick and ban and give tools. I just want a custom admin command that has useful things for a roleplay group in a way. Any advice or templates to go from? Thank You!
COMMUNITY QUESTION
Custom Admin Commands?
1 answer
Open Source Admin
https://kobra.io/#/e/-JzHM-drJKOTDXZ3S6qs
script from this link ^
--[[
Project: AdminC Framework[Open Source]
Lead Developer: devSeldom
Contributers: PreyStar, LegitimatlyMe
Awesome people: ScriptGuider, duckyo01 (But mostely ScriptGuider)
Special thanks to: ScriptGuider for being awesome
Progresion: 80% needs more commands adding types of Groups and acronymns
Description:
AdminC Framework is an open source administrative framework which impowers users to create administrator rights
efficiently and effortlessly.
Distributed by devSeldom and affilitates
--]]
--Settings
local Settings =
{
Admins = {"devSeldom", "YellowTide", "duckyo01"}, -- first level
Moderators = {"Name"}, -- 2nd level
AdminsOnline = {},
ModsOnline = {},
FireKey = ";",
BanList = {"Name"},
Log = {},
}
local macros = {
{"all", function()
local players = {}
for i,v in pairs(game.Players:GetChildren()) do
if v.ClassName == "Player" then
table.Insert(players,v)
end
end
return players
end},
{"me",function(player)
if game.Players:FindFirstChild(player) then
return game.Players:FindFirstChild(player)
end
end},
{"random", function()
local players = {}
for i,v in pairs(game.Players:GetChildren()) do
if v.ClassName == "Player" then
table.Insert(players,v)
end
end
return players[math.random(1,#players)]
end}
}
local Commands =
{
-- 3 variables 1. Name 2. Groups Expected 3.function
{"kill", ListExpected = 1,
function(list)
group1 = list[1]
for i,player in pairs(group1) do
if v.Character then
v.Character.Humanoid.Health = 0
end
end
end}
}
--[[
WARNING DO NOT EDIT ANYTHING UNDER THIS LINE AS IT CAN BREAK THE ADMIN SCRIPT
ONLY EDIT IF YOU KNOW WHAT YOU ARE DOING
--]]
--Compares string to a table
local checkstringtable = function(tab,check)
for i,v in pairs(tab) do
if string.lower(v) == check:lower() then
return true
end
end
end
function tableremove(table,obj)
for i,v in pairs(table) do
if v == obj then
table.remove(table,i)
break
end
end
end
--Fired by chat
function commandcheck(msg,sender)
--Logs The Command
local commandString = " Commanded("..tostring(game.Workspace.DistributedGameTime/60).." minutes ago) "
print(sender.Name..commandString..msg)
table.Insert(Settings.Log, sender.Name..commandString..msg)
--Variables
local words = {}
local lists = 0
local liststabs = {}
--Seperates words by space
for word in text:gmatch("[^" .." ".. "]+") do
table.insert(words, word)
end
--Number of groups of people
lists = #words-1
--Makes words lower
for i,v in pairs(words) do
v = v:lower()
end
-- Seperates groups into a table for the groups
for i=1,lists do
namelist = {}
for name in text:gmatch("[^" ..",".. "]+") do -- seperates names by a ,
table.insert(namelist, word)
end
table.insert(liststabs,namelist)
end
-- Replaces the list made with players and removes ones that dont match
for i = 1, lists do
for i,name in pairs(liststabs[i]) do
local namefound = false
for i,player in pairs(game.Players:GetChildren()) do
if name:lower() == player.Name:sub(1,name:len()) then
namefound = true
name = player
end
end
if namefound == false then
tableremove(liststabs[i],name)
end
end
end
--Fires
for i,v in pairs(Commands) do
if v[1]:lower() == words[1]:sub(2,words[1]:len()):lower() and lists >= v[2] then
v[3](liststabs)
end
end
end
game.Players.PlayerAdded:connect(function(player)
--Checks settings if they are mods
admincheck = checkstringtable(Settings.Admins,player.Name)
modcheck = checkstringtable(Settings.Moderators,player.Name)
--Adds player to mod table
if modcheck == true then
table.insert(Settings.ModsOnline,player.Name)
end
--Adds player to Admin table
if admincheck == true then
table.insert(Settings.AdminsOnline, 1, player.Name)
print("amdin")
end
--Removes player from mod table if the player is in admin table
if modcheck == true and admincheck == true then
tableremove(Settings.ModsOnline,player.Name)
table.insert(Settings.Admins,player.Name)
end
--Fires if FireKey is present
player.Chatted:connect(msg, player)
if admincheck == true or modcheck == true and msg:sub(1,1) == Settings.FireKey then
commandcheck(msg,player)
end
end)
game.Players.PlayerRemoved:connect(function(player)
--Checks if player leaving is in any online tables
local adminonline = checkstringtable(Settings.AdminsOnline,player.Name)
local modonline = checkstringtable(Settings.ModsOnline,player.Name)
--Removes from AdminsOnline table if they're in it
if adminonline == true then
tableremove(Settings.AdminsOnline,player.Name)
print("Admin")
while true do end
print(player.Name.." admin left")
end
--Removes from ModsOnline table if they're in it
if modonline == true then
tableremove(Settings.ModsOnline,player.Name)
print(player.Name.." mod left")
print("Admin")
end
end)
2 comments
0
requires intermediate amount of scripting to know how to use it though.
0
dont opensource your admin like that bb
This discussion is preserved as it was. New answers, comments, and votes are closed.

3 comments
This is not a request site. You must post a code that you need help with. We don't just give you an entirely new script.
How long does it to take you to log in with that long of a username?
I did ask for help i said a template that doesn't mean that i wanted a complete made on for me thank you. I changed my name on Roblox so its fast.