NueHoujuu

How to programatically kill chat bots.

Recommended Posts

Yes, it's another thread on this topic.

 

Yes, they should keep getting spammed about this until better solutions are made.

 

First off I'm going to tick things off that are impossible or won't work.

1. Pay walls: Gold selling bots will merely buy premium to trade if that becomes a requirement, and then they will continue to profit off of accounts they scam, meanwhile every legitimate player is getting punished.


2. In-game content walls: We already know they make their bots autolevel to a certain point to access chat. This does nothing. They will make maxed accounts if they have to. It only punishes legitimate players.


3. Hiring someone to ban bots that are created won't work, no MMORPG has people assigned to this kind of thing who can actually deal with 100% of bots.

* Runescape's "Player Moderator" system sounds like it would help, but in the long run even player moderators quit the game or move on to another game, and they still cannot monitor every location that there is bot spam.

But then again, I don't think it would be a bad idea either, as long as the ONLY thing they can do is mute (with a required mute reason) and get "priority ban report requests".

 

Besides why would they hire people when they can get players to naturally do this for free? See suggestion #1 below.

 

4. Blocking keywords is prone to false positive and can delete messages from legitimate people.

However, this is the true automatic solution. There are ways to do it that have not been implemented, it has to be more than simple keywords.

 

5. Allow players to filter chat from players below X level. Bots will keep adapting to whatever level limit you guys set by making auto level bots. In which case, letting players block chat based on level will ...

 

NOPE - then bots would all get to 45 eh. We don't want them to do that, that would make it worse.

 

-------------------------------------------

How to message lock bots.

1. Implemented as of the 2/2/2016 patch ;)

 

Infinite block lists for players. It doesn't really have to be infinite. Increase our block list to 500, and order it by date. Why order it by date?

 

Assuming bots are being banned, there is a "cycle" of spam bots that come into the game. That means that the 10 bots a person bans today, will never be in game at all ever again.

 

Players need to learn to unblock old bots and put in new blocks. It would be a huge help if banned players did not count towards the block list at all and that space was automatically freed up for us.

 

Other than that is encouraging players to cycle their block lists.

 

Give us utility to clear out people you have blocked for more than X days or months. E.g.,, "Auto-unblock all users who have been blocked for (1 month)."

 

Give use a secondary block list. One is a block list for real players. Another is a "block and report" list. People who are blocked this way, automatically get a ban report sent with a chatlog from that player's recent activity.

 

Now, players should not have to be required to block bots every day in order to even chat, but for those who are willing to take it into their own hands, it may be a great solution for some.


2. Prevent players from typing anything other than a-zA-Z1-0 and ,./;'[]\-=`1<>?:"{}|~!@#$%^&*()_+ and maybe that euro symbol / UK symbols or w/e.


3. Limit chat to a single space between characters, or count any number of whitespace as a single whitespace.

We can go further and probably count any character repeated 5 times in a row as nonsense and crush it down to 1 instance of that character.
There is no word like ooooompaloompa or wwwwwwwwwwwwwwwwww.com.
There is no reason for someone to send a message like >>>>>>>>>>>>>>>>>>> Hello bob, how are you today?


^ These limitations hardly hurt communication between humans at all, but will make filtering of bot spam much easier.

Right now bots are using 

 

Edit: ^ These limitations don't have to apply to chat - you could just put it in whatever string comparison function you guys use to regex away bots, to make the detection easier. Example below.

 

4. Get rid of alt-codes. Nobody playing a game is going to utilize Alt-0445 to type. This should not be allowed in chat.

The purpose of stripping special characters and alt codes is to get rid of things like

www.c0m
www.cOm
www.c০m
www.c੦m
www.c౦m
www.c૦m

 

So we only have to match for

www.com
www.cOm
www.c0m
www.c()m
www.c@m
etc.

 

This is only really to reduce the size of the database for blacklisted messages.

 

5. From this point now all you have to do is keep evolving your regex chat filters against them, register a server side black list for messages.

Bots will tend to send the same message every time.

Steam's chat seems to do that.

At one point every bot was spamming, "Hey bro, u need it?! www.com", and Valve promptly added those messages to a black list.

Now bot messages get blacklisted so fast, I haven't seen one in months.

Now let's say bots start sending ridiculous messages like

\/\/.\/\/,\/\/,f . r . 0 . g . c , () , m .

We register that to the blacklist, but now they spam

\/\/.\/\/,\/\/,f . r . 0 . g . c , () , m . ((((1))))

then

\/\/.\/\/,\/\/,f . r . 0 . g . c , () , m . ((((2))))

then

\/\/.\/\/,\/\/,f . r . 0 . g . c , () , m . ((((3))))

then

\/\/.\/\/,\/\/,f . r . 0 . g . c , () , m . ((((absfd33))))

Well, that's still a symbol regex pattern that can all be detected by black listing

^/\/\/.\/\/,\/\/,f . r . 0 . g . c , () , m . ((((.*))))/$

(The actual regex would be much messier than this)

 

6. * Possibly already in-game ;)

 

Look at the rate at which they are spamming messages. Add a flood filter. If we cannot get rid of every message, we can certainly slow them down and automute them.

Now, they might try to get around that by increasing the amount of bots so even if one bot is automuted, another can keep talking or they can rotate messages.

Which is why a good system for #5 is important.

 

Auto filters shouldn't warn the player at all, only merely block the messages. Lots of people probably don't pay attention to chat and it will only give bots another thing to hook on to.

 

Real humans aren't likely going to spam an exact replica of the same message again and again and again. Any human or bot doing this should be punished for it with an automute. Especially since copy paste is blocked, we know they're either a bot or using an autotyper.

 

Since this game has the marketplace, I don't think we need to worry about people trying to sell things by spamming messages that they're having a bank sale.

 

7. I'm in favor of anyone who gets blocked en-masse being automuted for everyone else. It should at least be more than 50 in the rare scenario that a clan really has it out for someone, or you can choose to detect if it's more than 50 people not from the same clan.

 

8. For new accounts, or accounts at the minimum level to chat, let's say we impose a 10 second chat delay. Not necessarily 10 seconds, whatever it is don't tell anyone or bots will adapt by changing their timing around that.

 

Messages sent within a certain time frame get checked against each other and if they're duplicates, automatic spam bot detected.

 

And this all happens before the messages are actually sent, as the actual string comparison takes nanoseconds.

 

That way we can potentially block spam before players even see it.

 

9. #8 can be done a different way, by simply sending the message so that the person who sent in sees it as having been sent instantly, but people receiving the message have it processed before it's sent.

 

in other words, before sending it to other players, we check it for being a spambot message.

 

If it's "okay", then it is actually sent.

 

If not, then the person who sent it thinks it was sent, but it never really gets sent.

 

The human reaction to a false positive being blocked will be to repeat what they said when the other person they're talking to doesn't respond.

 

The bot reaction is to keep spamming, even though nothing is sent. :)

 

10. Remove custom announcements from Party Finder. For clan recruitment announcement that's fine for now, but Party Finder doesn't need that.

 

Instead of making Party Finder announcements have a custom announcement you can make autospam, make the chat message a preset message, and make the "custom description" something that can only be read at a Dragonspire, by accessing a menu from the party that is announcing it.

 

That'll remove the spam from party finder as there's no point in website spam if people only really see it in a hidden menu.

 

HOWEVER, this could cause problems if bots put those in the descriptions and then end up making fake parties, meaning if you join them, you end up joining basically an afk bot that's spamming.

 

Or we can get rid of custom messages from party finder entirely.

 

Add a drop down menu with the following options to advertise your party as:

 

For Fun

Efficiency

Laid Back

Etc

 

Dunno what else has to go in a party besides that, we already had very limited space to type the custom message anyway and I don't see people use it much.

 

11. Spambots replacing W with \/\/ and o with 0?

 

Do some formatting on the chat string to replace \/\/ instances with w and 0 with o to see if the string matches common spambot strings.

 

------------------------------------

 

Don't forget about actual level up bots, farm bots, etc. Mule accounts used to do the trades or attempt to scam people. Detecting and blocking those tends to be another story.

 

Jagex has done good work on detecting those, they accumulated a database of things players do and looked at players who were "spending very abnormal amounts of time in-game" or players who were "transfering abnormal amounts of in-game gold too much" and similar.

 

That's probably more long term and freeing up the chat is a little easier / faster to work on now and gives everyone some noticeable improvements to the gaming experience.

Edited by NueHoujuu

Share this post


Link to post
Share on other sites

Just to point this out, but there are 3 'kinds' of accounts they use: spammers, farmers, and sellers.

 

Most focus on spammers, since we see them in chat constantly. Those are throw away accounts and don't cost the 'owners' anything when they get deleted. This is why we have thousands in BnS.

 

Farmers are the ones making the gold to be sold and good ones 'blend in' to some degree. Those often sell their loot on the marketplace and turn over their money to the sellers. Their loss directly effects the currency the sellers can trade to players for RL money. However, like I said, the good ones look like players and with no way to 'delevel' you may find them in the end game PvE content. Most just seem rude and quiet.

 

The sellers are the ones who do the transactions with other players. If they are smart they make these look like honest trades. Nabbing these guys is hard without paying careful attention to transactions between characters. Smart gold sellers keep dozens of these and try not to keep that much money on one at any time so they blend in more. However catching them tends to have about the same impact as catching farmers. Like farmers they will try to blend in to some degree.

 

Also to point this out... Most gold farming shops are run by a dozen to a few hundred real people. The farmers will often watch 2-6 machines and can take control of them at any time it's 'needed'. This is how they avoided detection in the old days. Someone would question them and eventually get an answer, though it was often in Chinese (though now I've seen a variety of languages).

 

I know most of this because back in the day the ones running the bots would talk to me since I speak some Chinese. It was a boring job for them in 'geeky' sweat shop like conditions. Ironically most worked there to earn money to become 'professional gamers' with legit accounts (in their own countries version of the game).

Edited by theshadow99

Share this post


Link to post
Share on other sites

I never thought I'd be so disturbed to read the words "the bots will try to blend in". It's like they're assimilating to later overthrow the human race...okay that's exaggeration but still XD Wasn't there a movie (or several) about that, though?

 

Anyway, I like these ideas. They're well thought out even though they primarily target the spammers, but it's a good start o:

 

Edited by senpaisan

Share this post


Link to post
Share on other sites

well if they would increase the capacity of blocking people i could just continuously block then, i assume they will delete the reported spammer / bot account so they should be

removed from the blocking list which they aren't currently.

 

but then again it's even a solution to the problem, the problem is human related, as long as there are people willing to pay money for extra gold pocket instead of grinding it themselves there will always be bots like these. (demand and offer business)

 

then again the bot and spamming protection services that are in-game are 0.00% if they just add an counter to the same message spammed in chat like 2/3 times in a row you get timed out efficiently. if they continue after that time-out longer, 3rd count after timeouts a temp ban.

its a simple yet easy implementation to kill filter out spamming bots in a decent way.

Share this post


Link to post
Share on other sites

they may be good ideas but its all up to NCsoft how the want to implement their solutions.
we can just hope for the best and complain as an community.

Share this post


Link to post
Share on other sites
Banzatou   

These are really great ideas; one can only hope that they put these into action.

 

Off-topic: Great to see another Touhou fan in the forums.

Share this post


Link to post
Share on other sites

Bots are now sending newlines to make only their message appear in chat, hide their name so you have to scroll up to block them, and bump other chat messages out of the chat box.

 

Since players can't type those, nor can we type those "SYSTEM" things, well, they ought to be stripped from chat. Actually, why don't we just auto-ban people for managing to type untypeable words? I'm sure they're doing some packet hacket type of thing for that anyway.

 

Bots spam emoticons now. #2 would make filtering bots that use that easier, just filter all emoticons from chat strings that are being checked against the filter.

 

I'm still all for assigning someone to making a database of bot spam regex filters until they run out of websites to advertise their account stealing scams with.

Edited by NueHoujuu

Share this post


Link to post
Share on other sites

I hope they come up with something better than what they are doing.  I got banned today for something called RMT: Selling, which I am innocent of.  Then when I came to the forum to look into this, I see that this has happened to a handful of others, and that's just the ones that felt like going through the hassle of creating a new account just to post on the forums.  But there were at least 3 today alone just in the past 4 or so hours.  

Whatever security algorithm NCSoft is using to flag folks is getting innocent customers/players banned.  This is one of the worst things NCSoft can have happen, because that will kill customer faith in NCSoft and doing business with them will cease.  They really need to revise their approach.  

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now