Mike Nichols just wanted to make a talking banana. A self-described inventor of "useless" things, his original goal was to create an interactive robot for his Twitch viewers to play with. Whatever they typed into chat, the banana would say — while dancing! Then the trolls showed up.
The bananaImage: Mike Nichols
Nichols learned the hard way what many Twitch streamers who employ text-to-speech technology already knew: arseholes really like to try to manipulate programs into saying the n-word. Or even just things that sound like the n-word. As long as there's a chance they will get the banhammer dropped on a streamer's head, they're not too picky.
And given Twitch's history of banning channels for saying the n-word, there's a very good chance indeed.
The banana channel is pretty much what it sounds like: the banana is positioned in front of a camera, and while it moves back and forth to music, people can enter phrases into Twitch chat — which it will then read out loud. One night a couple months ago, Nichols' channel's concurrent viewer count suddenly shot up to 600, which is a lot for a relatively small channel.
Nichols realised the channel had been raided by the community of a popular streamer, but he didn't think much of it. "I decided to just leave the stream on and go to sleep," he said in a video about the banana uploaded to YouTube this week.
That was a mistake.
The streamer in question was Greekgodx, whose "GGX gang" is one of the more notoriously troll-y communities on Twitch. Greekgodx himself pointed his viewers to the channel, but dipped out when things started getting racist. Members of his community stuck around, though and made the banana sing and dance to a series of increasingly vile tunes.
"It was pretty shocking to me when I woke up in the morning, came over to my computer, and saw the stream was down," he said in his video about the banana. "I had been banned from Twitch for 24 hours, and I had a permanent strike on the channel."
Nichols was not so naive as to put his banana on Twitch sans protection. There was a language filter in place, but the GGX gang figured out how to trick it. And while footage of the moment in question got deleted when Twitch banished the banana from the digital airwaves, Nichols had programmed it to log any text people tried to get it to say.
"It was kinda like when there's a plane accident, and they recover the black box," he said. "But this time, instead of the pilots saying 'mayday' as the plane crashed, they just kept repeating the n-word until the plane exploded."
He found that Twitch trolls had used accented characters to get around the banana's filter, using fake words like "knìgár" to defuse the banana's defences. While waiting for the ban to end, Nichols tweaked the banana's code so that it would remove accented characters and added the words the GGX gang had come up with to his filter list. Problem solved?
Of course not. Once the banana was back up, the GGX gang were like Vegas magicians with their use of dehumanising language: tricks up every sleeve and other crevices besides. Thus began an arms race that spanned days.
Nichols says that the trolls switched to another tried-and-true Twitch tactic: spamming the word, except with the first letter at the end instead of the beginning so that — thanks to rapid repetition — it would still sound like the banana was saying it.
A demonstration of one of the ways trolls got around the banana's language filter.Image: Mike Nichols
Nichols figured out a solution for this, too. "I added an extra step to my bad word checking service," he said. "Now the banana takes the sentence, removes all the spaces, then searches the sentence for the bad word."
It didn't end there, either. Trolls proceeded to spam innocuous words like "Snickers," which — when repeated ad nauseam — sounds like the n-word. So Nichols added words like that to the filter. But the trolls kept trying to turn the banana into their racist mannequin. Next, they went with combinations of innocuous words like "Disney Gurs" and "Bernie Curs." Warning: do not trying saying those phrases out loud. The banana did, and Nichols told Kotaku that he was "lucky" that Twitch admins didn't notice, or he'd have probably gotten banned again.
"Now, at this point I realised that I can't account for every bad word combination everybody in the world can possibly come up with," said Nichols. "I had to do something a bit more drastic."
He wrote a phonetic filter for the banana that converts his list of bad words into their basic phonetic components. It would then do the same thing to every phrase people entered into the banana, scanning them for telltale sounds. Just to be safe, phrases also automatically go through the filter a second time with all spaces removed so as to snuff out sneaky tactics.
"So now not only does my banana not say bad words, but it also won't say anything that sounds like a bad word," said Nichols. "At this point I realised I had the best bad word filter I could possibly make. It might even be the best one on Twitch. I don't know."
As a last-ditch effort, trolls started coordinating, individually entering letters to spell out the n-word. So Nichols added code to block that, too.
Ever since the end of March, Nichols says the GGX gang hasn't been able to bust through the new filter, no matter how much they have beaten their multifarious, hydra-like heads against it.
"As we speak, there are users adding racist GGX-related comments to my YouTube video about the banana," he said to Kotaku in an email this week. "They still try to troll my Twitch stream from time to time, but they get bored after they realise they can't get past the filter.
Even with such a good filter I still have to listen to the banana just in case. I don't want to risk getting another channel strike, as after three I will be removed from Twitch."
Nichols says his next step will be to share his powerful filter with other Twitch broadcasters. "I have been receiving a lot of direct messages on Twitter asking for the filter code, I plan to release it after I do some final updates," he told Kotaku. "I hope some streamers are able to get good use out of it!"
In the meantime, he feels like Twitch's policy toward channels getting assailed by obvious trolls could use some tweaking. If nothing else, it's clear that portions of Twitch's community have a pretty serious problem.
"The content I was banned for was never produced by me," Nichols said. "It was taken directly from the Twitch chat. The banana was a sort of mirror that showed how toxic the Twitch community can be, and it turned out it was just too much for the [Twitch] admins to handle."