-- Note: This is my old idea that I was going to use in ULib. It is fully functional, I dropped it because I thought it would be too complicated for users to understand.
--[[
Title: UCL
ULib's Access Control List
]]
--[[
Section: Format
This section will tell you how to format your strings/files for UCLs.
Layout:
:user <user name>
: <possible query string ( IE: steamid, in-game name, IP, IRC hostmask )>
: <More optional query strings...>
:
:userGroup <group name>
: <user identifier or username (another usergroups is not accepted)>
:
:commandUcl <command name>
: ALLOW
: <user, identifier, usergroup, or *>
: <more possible identifiers, usergroups, users>
: DENY
: <user, identifier, usergroup, or *>
: <more possible identifiers, usergroups, users>
:
:uclCommandGroup <group name>
: <command 1>
: <more possible commands>
:
:ucl <group name or commandUclGroup group name>
: ALLOW
: <user, identifier, usergroup, or *>
: <more possible identifiers, usergroups, users>
: DENY
: <user, identifier, usergroup, or *>
: <more possible identifiers, usergroups, users>
Full Example:
:user Ray
: Ray // An in-game name
: STEAM_0:0:1234567 // A steamid
: Rayzinator // A steam login
: 67.89.83.20 // Or an IP
: ray.gamesurge-user.net // Or an IRC hostmask. All of thse identifiers will be associated with Ray
:
:user Bob
: STEAM_0:0:1232364 // A steamid
:
:userGroup coolUsers
: Ray // This will register as the four identifiers from Ray in any queries
: Bob // This will expand to the steamid we specified
: STEAM_0:0:412703 // You don't have to add only users here, identifiers will work too.
:
:commandUcl ulx_kickban
: ALLOW
: Megiddo
: DENY
: Bob // Bob got abusive, so he's not allowed to kickban anymore.
: STEAM_0:0:9123872 // Identifiers can be put here too!
:
:commandUclGroup funCommands
: ulx_slay
: ulx_sslay
: vmf_load
: ulx_slap
:
:commandUcl funCommands // This will limit access to the four commands listed above
: ALLOW
: STEAM_0:1:3297446 // Identifiers can be put here too!
: Megiddo
: Bob
: DENY
: *
Important Notes:
* *You should check with the specific addons using the UCLs to see where they want you to keep the UCL, what they want you to use for identifiers, and whether or not they accept commandUcl and commandUclGroup*.
* You do not need the have the spacing and newlines shown above, any whitespace will work ( You could have everything on one line if you wished )
* The "*" without the quotes will set the default access ( if you set the default to allow, and the user is on a deny list in that ucl or elsewhere being queried at the same time, the user will be denied. )
* For commandUcl and ucl, you don't need both ALLOW and DENY, but you must have one.
* You cannot use "*" on both allow and deny.
* Everything is case sensitive.
]]