moderator

What is moderator? It’s an lightweight, administrative add-on that I’ve been working on every so often. It is designed to be straight-forward and to the point of its objective, moderating players.

Why are you making this? I can’t stand other admin mods.

Can I download it? https://github.com/Chessnut/moderator


Spotted an error? Post the *full error*!

What’s there to see?
This video demonstrates usage of the menus. (Not shown but you can move the menu too)

The help for commands in the console.

http://i.imgur.com/bw6kvVO.png[/t]
Collapsing the side-menu to focus on things.
[t]http://i.imgur.com/Lba4TYZ.png[/t]
Screenshot of the quick menu if you prefer a simpler menu.
[t]http://i.imgur.com/kZ0t0fE.png

What else is there to know?
Targeters
For chat commands, you can specify targeters. Basically, they’re just hashtags (#all, #dead, #alive, #rand, #last, #me, etc…) to target one or more players.

Arrays as Targets
You can specify arrays as targets for some commands. Using !slay [#alive, Chessnut] will slay all alive players and me if I’m on (or someone is impersonating me).

Console Commands
Use console commands as you would with chat. The equivalent of !slay [#alive, Chessnut] in console command form is: mod slay “[#alive, Chessnut]”

Report System
Whenever someone files a report, a new report will show up in the report tab. You can click on the avatar to bring/go to the player if they are online, or go to their Steam profile regardless of whether or not they are online or offline. Clicking on the array also allows you to remove the report.

Instant Kick when Banned
As soon as a banned player joins the server, instead of waiting for sending client info, the player will be immediately kicked with a message saying the ban reason and time.

In the admin’s ban menu, there is also a live count-down until the ban expires.

Time Shortcuts
There is no longer a need to specify minutes.
You can use the following:
#y = # years
#mo = # months
#w = # weeks
#d = # days
#h = # hours
#m = # minutes

= # seconds

And it can be combined. Typing 5y3m2d will yield 5 years, 3 months, and 2 days. You can specify this as ban times, which is better than calculating/memorizing minutes yourself.

Main Menu for Commands
On the main menu for commands, you can: tick multiple players or just one, search for players, and run commands on them!

In-Game Rank Editor
This is pretty standard and self-explanatory.

Simple Chat messages

It is straight forward and the names match the team color.

And more! (Probably forgot to mention or not done yet)

Our admin mods will blot out the sun!

Anyways, this looks really good, just seeing the video. Like someone had replied in my thread, it gets rid of the “Fun” assigned commands, and leaves a pretty good thing. I’ll definitely be watching this one.

When do you think this will be out?

Really nice job!

Hey, hey, hey, another great work from Chessnut!

Great. I like the stats, and the UI looks modern.

Do you plan to put it on github when you release it?

Really looking forward to when this is released!

Of course

Seems awesome! Definally using this when it´s released.

Am i the only one hating the assmod style? Other from that it seems good. Could you add some chat commands? Nice work

Looks great! You should make your own DermaQuery for that addon that has the same GUI style to unify the look of it(in the quick menu).

Mysql support?

You need to watch the video again.

In the future.

Nice, bye bye ulx for me!

My bad. Nice work. Will it be easy to add new commands?

Commands go in a commands folder and looks like this:
[lua]
local COMMAND = {}
COMMAND.name = “Arm”
COMMAND.tip = “Restores a player’s weapons.”
COMMAND.icon = “basket_put”
COMMAND.example = “!arm Chessnut - Gives Chessnut default weapons.”

function COMMAND:OnRun(client, arguments, target)
	local function Action(target)
		if (target.modWeapons) then
			for i = 1, #target.modWeapons do
				target:Give(target.modWeapons*)
			end

			if (target.modWeapons[0]) then
				target:SelectWeapon(target.modWeapons[0])
			end

			target.modWeapons = nil
		else
			hook.Run("PlayerLoadout", target)
		end
	end

	if (type(target) == "table") then
		for k, v in pairs(target) do
			Action(v)
		end
	else
		Action(target)
	end

	moderator.NotifyAction(client, target, "has armed")
end

moderator.commands.arm = COMMAND[/lua]

That looks pretty simply and clear.

I will definitely try this on my Server if the download is there… Are you going to add TTT commands or murder commands?

Greetz Downy

Not a bad idea if you add a feature to allow gamemodes to have their own set of commands separated from the default, so if I’m on sandbox I won’t see the TTT commands and vice versa just like assmod had.

I’m not very familiar with all the different kinds of admin mods (there’s alot of them), but what exactly is the big change? Because the menu looks exactly the same as in all the other admin mods there are, except for ulx maybe which has a different menu. If possible I would like to see more of the usergroup manager for example. For limits per group and allowed actions for admins and what not. I’ve always used ulx, eventhough alot of people hate it, it had alot of plugins. I would like an admin mod that just has everything included so you don’t need 10 different plugins for everything. I experimented with other admin mods and sometimes I missed alot of options, so i’m really looking for something that has it all. But it looks very proper, well done!