Open StevenLawson opened 10 years ago
Hmmm, It sounds like it would work. Perhaps link it into the general spamming system and have it more of a general feature instead of just spambots.
The other problem you get is with players suddenly joining... Perhaps we could have some sort of system that detects if the user is premium and if not check if more than X have joined in the last Y mins. If so then switch it so only premium, players can join (without kicking other players)
That brings be onto another suggestion that kinda links in, currently /onlinemode always will kick, perhaps we could change it so that there is a option not to kick, that way players can continue during a spam bot attack and during that time only permium players can join.
Perhaps we should find a way to stop bots at the gate. This avoids the situation together. Likewise, there are some bots which just log in and log out to create spam. Perhaps for every "new" user and IP (one that hasn't logged in before), we should pose this puzzle. Or perhaps, we should prevent players from chatting without moving first.
Additionally, we can prevent IPs that have logged in in the last 20 seconds from logging in again.
I agree with Darth although it's still a good idea for blocking chat spam
@markbyrn Chat spam should already be blocked. If it's still occurring, the threshold might be set too low. We could fix that. :)
@JeromSar I dont think chat spam is currently a major problem... It happens from time to time, but spambots kinda get around it as they all randomly say the same thing causing the spam. Thats the problem I have seen before, and I dont know of a way to get around that other than with the human validation system that was talked about and implementing it for every username and IP. If you change IP, you re-verify. It then slowly matches a list of people that are proved to be human with their IP.
as a super admin on TF @JeromSar its not chat its them joining and leaving latley its just been joining and leaving with the spambots and also take into account that they have proxies
@Heyitsthatonekid See my first comment.
@JeromSar Ahh ok
@StevenLawson, if possible, may you have this feature the ability to toggle if this should be on, or off (in the config.yml).
I'm going to start coding this tomorrow. Initial implementation will require all new usernames and new IPs to validate via a simple math question and a PlayerMoveEvent. If a single IP joins with more than X different user names in a single session, that IP will be temp-banned.
Using
PlayerQuitEvent setQuitMessage(null)
and
PlayerJoinEvent setJoinMessage(null)
Should completely suppress the "joined the game" and "left the game" messages. It might be best to not even start sending these messages till a user validates.
@StevenLawson You could probably cache these messages temporarily, then send them when the puzzle is solved.
@StevenLawson But they have VPN's or whatever so they change ips i think that we should have a sort of puzzle like the others are saying...
@Heyitsthatonekid Again, please read the first message on this issue.
@JeromSar When they complete the puzzle it could just say "X Has completed the puzzle and has now joined the game" or something? That way people know that they are in the game but they also have just completed the puzzle.
A way to mitigate spambot attacks.
When botblock is enabled:
Thoughts on this? Will this work, and should we add it?