AntiAdvertising
Don't you hate these people joining your server, spamming their server's ip?
This plugin will bring an end to this.
It searches the chat messages (and specified commands) for server addresses like 111.111.111.111:12345 or server.domain.com. The plugin will then check if this message really points to a minecraft server (by pinging it) and in this case can:
CI-Server
If you want to support the development of this plugin, you can donate by clicking the button on the top right corner.
Thanks to Absolutionmc for donating.
This plugin will bring an end to this.
It searches the chat messages (and specified commands) for server addresses like 111.111.111.111:12345 or server.domain.com. The plugin will then check if this message really points to a minecraft server (by pinging it) and in this case can:
- drop the message
- censor the message (replace the advertisement by ***)
- kick the player
- broadcast a message
- notify moderators of the advertising
- execute a custom command
Frequently asked questions
Commands
- /antiadreload
-
Reloads the plugin configuration.
Permission: antiad.reload
- /serverping
-
Pings a server manually.
Permission: antiad.ping
Permissions
- antiad.notify
-
Permission to receive notifications about server advertisement.
- antiad.reload
-
Permissions to reload the configuration of the plugin.
- antiad.ignore
-
Permission to send chat messages without being checked.
- antiad.ping
-
Permissions to ping potential servers manually.
config.yml
Click the heading ;-)
Development builds
Development builds of this project can be acquired at the provided continuous integration server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.CI-Server
If you want to support the development of this plugin, you can donate by clicking the button on the top right corner.
Thanks to Absolutionmc for donating.
@upsj
Nope, but i dont want have too many files :)
@ThePlayingNoob
That is/was an intended flaw, but does it create any issues to have an empty logfile sit around your bukkit files?
I didn't want to have to modify my action class design too much for the simple log action, but I could include it in the next version, just a bit too busy right now.
And By the way, the plugin is generating a log file even if the log:
attempts: 0 is set to 0, could you fix that? Thanks!
@LyshaRMC
A Update is not needed because the plugin works great for 1.5.1
@upsj
pls udate :D
Awesome plugin, was searching for this long time! Keep the work up
@C0nsoleMC
Might be a good idea - I'll see for the next version :-D
I know this works, obviously, its chat related! Might want to say that your next build is for the latest CB, just to prevent people from making comments like "Does this work with 1.5.2?"
If a server has this, use comers they look the same in mc
@godgodgodgo
As known servers are stored during runtime, if a IP is posted once, each spam message containing that IP only requires parsing using a regular expression (which are rather fast, see the ChatMessageTest.testPerformance test case) and a hashmap lookup, which should be fast too. (Hope, this wasn't too technical :-D )
I've thought about only parsing one message per tick and dropping the others, but this would cause trouble on very laggy servers.
If I have some spare time, I'll see how the performance is in real world use :-)
And let's be honest here: If a spam bot comes on, either you have an anti spam plugin running and it's kicked/muted/whatever, or the server starts to lag anyway.
And the server pings/lookups run in a separate thread anyway ;-)
I'd like to use this however I question how performance would be when spam bots come on and post an ip constantly.
@DOMAASS Short answer: See FAQ.
Long answer:
Because the Chat API hasn't changed since then (AFAIK), so it makes no difference which Bukkit version I build against. By using an older API version (I only use the chat components, these don't change much), I allow server owners who are using an older bukkit version (for whatever reason) to use this plugin, too.
Why are u updating it to 1.4.2,not for 1.5.2?
@jtaylor0608
I have uploaded a new version with a 'log' action and a fix for the /serverping command. Should be approved within the next day(s). If you can't wait, you can obtain the new version from my CI server (link above).
@jtaylor0608
Umm... I am using ban manager and i have webstats! There i can see if some one are banned for advertising! :)
Working pretty well so far.
Would be nice to have a log of who has been naughty and posted an IP ;-)
@Apple_columb
Autoban: That's what the 'attempts' option is for. If you set once to true and attempts to 2 for an action config, the command will be execute every second time the player advertises.
If you set once to false, it will be executed every time the player advertises a server after (and including) the second time.
The plugin matches all that looks like a domain/IP, no matter if it is succeeded by spaces or other characters. Could also be something like "Hello.Do you think this works", it would match "hello.do" here, but as there is no such domain (AFAIK), this causes no problems.
@upsj
Is it possible to autoban player if he posts server ip's 2 times in X minutes? This would separate spam protection and censorship. For first time it's should do nothing because it's could be not even spamer but a regular player sharing some server ip without spamming (I'm ok with it). But for second time it would be nice to ban spamer. Another question. Would it also detect spam in "JOIN MY SERVER 127.1!!!" There is no spaces between ip and "!!!"?
@Apple_columb
If you add both IPs or host names to the whitelist, the plugin will ignore occurrences of your server addresses in the chat.
Format:
whitelist: [first.hostname.or.IP, second.hostname.or.IP, ...]
Whitelist ips? How it would react to my server ip? IP of my other server?