We, NadeoLive, launched during the alpha a new service for server admins: Trust Circles!
About it
Players with inappropriate behaviour are sadly common on online multiplayer games. As a server admin you might want to get rid of these trouble-makers ; unfortunately, you can't stay 24/7 to watch and kick/ban them. Moreover, you sometimes want to make a list of these people and share it with others, eventually allowing them to add names to it and so here comes the interest of Trust Circles.
The main idea of Trust Circles is a service so you can share, merge and access blacklists easily. And as there are also people who're always polite and fairplay (yourself to begin ^^), you can also whitelist people to say to anyone they can be trusted.
How does it work
First step: create an API username
For those who aren't used to our web services, I recommend you to read this forum: http://forum.maniaplanet.com/viewforum.php?f=282. Else you can directly go to the Player page > Advanced > Web Services and create an API username.
Second step: create or join a circle
Even if you can already blacklist or whitelist people thanks to previous step, this is pretty useless until you're in a circle. So, still on the Player page, go to Advanced > Trust Circles.
Here you can either create a new circle or join an existing one. When you create a circle, be careful to remember the password. As nobody owns a circle, you won't be able to get a new password for it but if you want to invite people into your circle, you'll need to give it to them. You can be part of as many circle as you like, each of them will benefit of your own blacklist and whitelist.
You're now ready to go!
Example of usage
To show you a first example on how to use it, we made a little ManiaLive plugin. To get it working, you need at least ManiaLive 2.1.12. The TrustCircle plugin can be found in the standard plugins.
Configuration
This plugin should be pretty simple to configure, depending on how do you want to use it. First, you have to add these lines to your config file.
Code: Select all
manialive.plugins[] = 'Standard\TrustCircle'
alias trust = 'ManiaLivePlugins\Standard\TrustCircle\Config'
Code: Select all
trust.readFrom[] = 'a_circle'
trust.readFrom[] = 'another_circle'
...
There are two constants usable in the boolean expression:
- B for the number of times a user has been blacklisted in circles you set before
- W for whitelistings
- N to refuse the player and kick him
- Y to accept the player
- B to auto-blacklist the player
- W to auto-whitelist the player
Here are some examples:
Code: Select all
trust.rules[] = 'B > 5 => N' ; if a player has been blacklisted more than 5 times then kick him
trust.rules[] = 'W > B => Y' ; if he has been more whitelisted than blacklisted then accept him
trust.rules[] = 'W == 0 && B > 10 => B' ; if he has never been whitelisted and blacklisted more than 10 times then blacklist him
Code: Select all
wsapi.username = 'API username'
wsapi.password = 'API password'
Additionally, at launch, the plugin is synchronizing your server blacklist with logins you've blacklisted on the API so those people won't be able to enter the server at all. It's like having your blacklist file in the cloud.
Finally, there are chat commands to blacklist or whitelist players:
- "/+black login" to blacklist someone
- "/-black login" to unblacklist someone
- "/+white login" to whitelist someone
- "/-white login" to unwhitelist someone
If you want to make your own plugin for ManiaLive or for another server controller, feel free to do it!
Note that for ManiaLive, the WS SDK is already included but for any other server controller you'll need it.