AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Plugins (https://forums.alliedmods.net/forumdisplay.php?f=108)
-   -   SUM - global admins, bans and antifake (https://forums.alliedmods.net/showthread.php?t=66930)

sfPlayer 02-11-2008 20:03

SUM - global admins, bans and antifake
 
3 Attachment(s)
SUM is a lightweight and efficient solution for managing global admins and bans ingame. It furthermore provides a system against nick faking by storing nicknames and displaying the 3 most often used ones when a player connects.

The global admin system supports Mani's Admin Plugin including basic admin flag translation from SourceMod admin levels.


Requirements
Optional: SUM uses a MySQL 5 (or later) database reachable by all gameservers for global features, if you are using SQLite you are restricted to local functionality only.
Optional: Mani Admin Plugin 1.2s


Installation
All
  • Copy the compiled plugin file to addons/sourcemod/plugins
  • Change the map after setting the database up
  • If sum_stats reports "Database online" the setup was successful
MySQL automated
  • sum_setup mysql <host> <database> <user> <password> [<port>]
SQLite
  • sum_setup sqlite
MySQL manual (if the SUM DB-user doesn't have CREATE TABLE privileges)
  • Run the contents of sum.sql.txt in your favourite MySQL client after selecting a database. If you use PHPMyAdmin just copy the content into the SQL window/tab and submit it.
  • Add an entry to addons/sourcemod/configs/databases.cfg called sumdb including the required settings for connecting to your MySQL server.

Update
If you update from an older version to version 1.4.0 you have to run the content of sum_update_130_140.sql.txt in your sum MySQL database.


Usage
Banning/Unbanning
SUM's global ban feature triggers on the well know sm_ban, sm_addban and sm_unban commands including the functions available in the admin menu. Bans/Unbans created by other plugins using BanClient() etc. are also included if they satisfy the requirements for creating a forward. All bans longer than 10 minutes will be converted to global bans.
sum_banlog [<name|#userid|steamid|unknown>] [<target|creator>=target] lists previous bans.

Admins
sum_admins lists all players with global admin permissions. (limited to 100)
sum_setadmin <steamid> <permissions|none|light|default|full|root> sets the global admin permissions for a player, the permission none will remove them.
none = no admin
light = 4079 (no unban, cheats, rcon, root, custom flags)
default = 12287 (no rcon, root, custom flags)
full = 16383 (no root, custom flags)
root = 32767 (all permissions)
Permission levels can be changed in the source file before compiling it.
example: sum_setadmin STEAM_0:0:1234 full (gives STEAM_0:0:1234 full global admin permissions)
example: sum_setadmin STEAM_0:0:1234 none (removes global admin permissions for STEAM_0:0:1234)

Other stuff
sum_stats lists the number of users and names in the database.


Changelog
Version 1.5.0
- added sum_setup
- made all database queries SQLite compatible
- updated plugin information to match this thread
Version 1.4.1
- fixed permanent bans (thx to 35Lazy)
Version 1.4.0
- fixed race condition in mani detection
- display how often somebody has been banned when he joins (if >0)
- added sum_banlog
Version 1.3.0
- sum_admins is compatible with rcon (->HLSW&co)
- check if Mani's Admin Plugin is present
Version 1.2.2

- fixed a rarely used message
Version 1.2.1
- quoted reason to prevent a SQL injection
Version 1.2.0
- initial public release

LocutusH 02-12-2008 03:19

Re: SUM - global admins, bans and antifake
 
Sounds interesting.

Can i use this plugin, to store my servers non permanent bans? So that the plugin restores the timed bans from the mysql after restarting the server? (i have only one server ATM)
And maybe creating a fronted for the mysql table, to let people view on a website, whos banned and why..

bl4nk 02-12-2008 03:23

Re: SUM - global admins, bans and antifake
 
What's "antifake"?

sfPlayer 02-12-2008 13:10

Re: SUM - global admins, bans and antifake
 
@LocutusH: yes, it actually doesn't use the server ban system, it queries the steamid on connect and kicks if he's banned

@bl4nk: it displays the nicks somebody used to identify him after his nick changed similar to how lastconnected does it

LocutusH 02-12-2008 13:55

Re: SUM - global admins, bans and antifake
 
1. You write, that we can load the plugin on the fly. Now thats not correct, since changes to the databases.cfg will not take affect this way, and the plugin will give a database failure message.

2. Do i need to add all my regular admins via the command in the console? Or my default SM admins have the rights, so that their bans get written to mysql too?

3. The plugin sometimes tries to run ma_clients command. Why does it need that in SM enviroment?

4. Why am i only able to list sum_admins while i am in game, and not from remote console?

LocutusH 02-12-2008 14:10

Re: SUM - global admins, bans and antifake
 
+ i get this in the error logs:

L 02/12/2008 - 20:04:27: [SM] Plugin encountered error 4: Invalid parameter or parameter type
L 02/12/2008 - 20:04:27: [SM] Native "VFormat" reported: String formatted incorrectly - parameter 2 (total 1)
L 02/12/2008 - 20:04:27: [SM] Debug mode is not enabled for "sum.smx"
L 02/12/2008 - 20:04:27: [SM] To enable debug mode, edit plugin_settings.cfg, or type: sm plugins debug 47 on

LocutusH 02-12-2008 14:32

Re: SUM - global admins, bans and antifake
 
More and more question :)

But let me state: The plugin works :) Mysql is working, bans, clients are stored.


So for the questions:

5. Does it readd the bans every mapstart from mysql to the server?

6. I have a permanent banlist already, in the banned_users.cfg. How do i get the plugin to write those bans in the database too? To have all the bans stored...

sfPlayer 02-12-2008 15:10

Re: SUM - global admins, bans and antifake
 
1. i modified the instructions

2.
a) No, it uses the sm authentification system and just provides an additional one
b) Yes

3. That's the part which sets admin access for mani, you can disable it by setting #define MANI_SUPPORT to 0 before compiling it

4. The Source engine somehow doesn't relay messages generated after Plugin_Handle to rcon clients like HLSW, but due to using threaded queries I can't handle this case, maybe i'll add a non-threaded version for client==0.

the native error should be fixed in version 1.2.2

5. It doesn't add bans, it just kicks banned clients in OnClientAuthorized -> it does what you want it to do, but in another way

6. You have to run sm_addban for every steamid listed there, maybe i'll add an import function

LocutusH 02-12-2008 15:14

Re: SUM - global admins, bans and antifake
 
Thx for the answers :)

The plugin is running now, and we already created a frontend integration to our website for it too, to let people view whos banned, why, and how long, by who.


Tomorrow i will update to 1.2.2, to see if the errors are gone.

LocutusH 02-13-2008 03:07

Re: SUM - global admins, bans and antifake
 
Updated to 1.3.0.

No problems so far.

Thx.


All times are GMT -4. The time now is 06:59.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.