UGB-Module ( ULX Custom Global Ban )

UGB-Module
A Custom Global Ban System designed to be used only with ULX & ULib Garry’s Mod servers.

  • This is my first public release.

FEATURES

  • UDB Module: A powerful tool to work with your database.
  • Server ID: When your server starts, it checks for configurations to your IP:PORT. If it’s not it’ll create it and assign the server an ID. If it is it’ll assign the server an existing ID.
  • Bans: This addon Hijack the ULib function to add a ban, and inserts it into the MySQL Database.
  • Information: When a user has been banned, all the available information saved in the MySQL Database. Each time your server is started, the hostname is automatically updated in the MySQL database.
  • Template Support!
  • Clusters: You can combine your ban lists in clusters.

FAQ
Why is this needed?
You can use this as a online ban list for your site. Also for the global ban for your servers.

Why this not work?
Most likely, You forgot to enable the UDB module in configs.

Why information is not insert to database?
MySQLOO works using a Lua Think hook, Think isn’t ran until after the first player has connected - simply join the server or run the “bot” console command. Note that all the queries will be ran in the correct order when the first player connects, so you don’t have to move everything to a PlayerInitialSpawn hook. If you have a custom hook system, make sure the “MySqlOO::Poll” Think hook isn’t being interfered with. Make sure you’re not returning anything in any other Think hooks.

PLANED/TODO

  • To learn English.
  • Reverse conversion.
  • Drink vodka and play balalaika.

[CHANGELOG]



[0.24b]
[Fixed] Shameful security hole :(

[0.21b]
[Fixed] skip banned player.
[Fixed] refresh xgui bans.

[0.2b]
[Added] check UGB version on game server.
[Added] config to skip removing expired bans.
[Added] configs of sorting in site module..
[Added] command to convert bcool bans to ugb. 
[Added] config name of table in site module.
[Added] Utility commands.
[Fixed] showing reason in permanently bans.
[Added] new bugs :)

[0.1b]
First release.


INSTALLATION
Requires MySQLOO.
Game Server: Place the addon ‘ugb’, in your servers addons folder. Inside the ‘ugb’ folder, under ‘lua’ edit the file *_config.lua to your needs.
WebSite: Place the ‘ugb_site’, in your website folder. Inside the ‘ugb_site’ folder, edit the file config.php to your needs.

Detailed install instructions

Commands
ugb refresh - Forced refresh ban list ( The reverse conversion is not supported. Not yet ).
ugb convert_ulx - Covert ulx bans to global bans.
ugb convert_bcool - Convert bcool bans to ugb ( Cluster will be set from current server, Existing bans will be updated. ).

Fierce criticism is welcome :slight_smile:
Sorry if there are mistakes.

Version: 0.1b
Example: http://gmodlive.com/ugb/
Download: https://github.com/men232/UGB-Module

Please note, this is a beta release. Use at your own risk!
Some resources are taken from this topic: http://forum.facepunch.com/showthread.php?t=1231554

P.S. Just in case, make a copy of data/ulib/bans.txt

This actually looks quite nice. I was expecting a shared ban list type system.

Between the various owners of the servers?

Between anyone else who uses the system. It was suggested may times that to stop hackers, Multiple servers from different communities contribute to a communal ban list.

It will be a little problematic. Hacker using this system be able to remove themselves from the ban list.

Does this keep a record of expired bans? Similar to SourceBans where you can view the history of a steamid. Would be a great addition!

That was why the whole system was dismissed. A few people tried using an API system, But all in all you can’t really get passed the security issues.

Anyway, I think that’s enough off topic for me :slight_smile:

Expired bans are removed automatically. I can do the configuration to disable it.

[editline]22nd August 2013[/editline]

The problem is that the system may down because of one person who will add to ban list of everyone

Men232. I want to hug you to death, you made a systeem thats like Metamod’s global ban systeem. You just made my day, I will be happy to report you bugs if I find them.

Edit:

What you can do is go into a way like MCBans, where they need to submit proof to make it a global (All servers using the systeem) ban.

Thx :slight_smile:

You are fucking awesome! Is there anyway to convert bans from NigHog’s global ban addon?

Can you provide a link to an addon, and I’ll try to make the converter.

It’s the exact same addon you used to based on for resouces. The one you posted up top.

I hope that this addon is made better. And you can combine bans in clusters.

How is this different from bcool’s ulx global ban? I may try this out.

  • Сluster System.
  • Template Support!
  • More customizable.
  • Simple Moving from ulx bans to ugb.

Could you make a converter for sql bans from bcool’s version? Or is the table structure the same?

Give me a little time :slight_smile:

Cool. I’ll be sure to check it out

Now you can try, ugb convert_bcool