5 ms·
My favorite is the online name censoring in video games. Dark Souls infamously just does a straight check of any string match within the name against a big list
by hbn 3y ago
My favorite is the online name censoring in video games. Dark Souls infamously just does a straight check of any string match within the name against a big list of no-no words. So in this fantasy game where everyone is running around as a knight, anyone who has "knight" in their game will appear as "k***ht" to other players.
There's also a famous image I've seen online from another game where the guy's name was Nasser which appeared for everyone else in-game as "N***er"
- vmilner 3y agoI remember a conversation with some using an in-house file transfer system “Oh you won’t be able to send more than X GBytes, at that point the chances that the base64 encoding contains a banned rude word become too high, and the transfer will fail”
- reuben364 3y agoI wonder what the optimal encoding is given a list of banned words for any substring of a message.
- namibj 3y agoJust use a r-ANS entropy coder with feedback skipping symbols that would result in a ban from being possible to encode at that moment... I think. Unless I've gotten confused about the limits of dynamic prediction abilities in ANS. I think it's just that the encoder and decoder run in opposite directions through the encoded symbols, but read-ahead during decoding shouldn't be a problem...
- quesera 3y agogzip?
- marcosdumay 3y agoA random binary string will be accepted until something between 4 and 8 times the size.
- klysm 3y agoWow that may be the dumbest thing I’ve heard today
- PurpleRamen 3y agoMaybe it's time to convert base64 to high UTF8-areas. I guess there won't be any keyword-filter yet for ancient egyptian hieroglyphs. I'm curious whether there are already emoji-filters...
- jazzyjackson 3y agohttps://github.com/qntm/base32768 https://github.com/qntm/base32768 https://github.com/keith-turner/ecoji https://github.com/keith-turner/ecoji :D
- jwestbury 3y ago> ecoji In a similar vein, a former colleague of mine created this Python package: https://pypi.org/project/piickle/ https://pypi.org/project/piickle/ It's functionally the same as pickle, except it binary-encodes the data with spaces and pickle emoji.
- TRiG_Ireland 3y agoMatt Grey & Tom Scott had to build an emoji filter, I believe. https://www.youtube.com/watch?v=GsyhGHUEt-k https://www.youtube.com/watch?v=GsyhGHUEt-k
- willsmith72 3y agoThis is awesome
- vbezhenar 3y agoHere's list of substrings World of Warcraft checks in character names. https://wow.tools/dbc/?dbc=namesprofanity&build=10.0.5.47660#page=1 https://wow.tools/dbc/?dbc=namesprofanity&build=10.0.5.47660... They spent great effort to build this list. Most character names in the game are lame anyway and some are just offensive or inappropriate.
- babypuncher 3y agoIt makes sense for Dark Souls games because multiplayer is a lot less optional. Player names will appear in your game, and turning this feature off really hurts the experience. Their hamfisted approach leaves a lot to be desired. I have a feeling it is a product of being designed and implemented by non-native English speakers.
- levi_n 3y agoMy favorite is Fark's word-changing filters and their unintended side effects. The no-no words are scanned across whitespace and reversed, and any hits get translated to the approved word. "Shit" becomes "Shiat", the N word becomes "nubian", etc Every so often someone will find their sentence that contains something like "I will have ham or egg in my sandwich" becomes "I will have ham onaibun my sandwich"
- iggldiggl 3y agoReminds me of Yahoo's botched e-mail filter in the early 2000s, when in an attempt to prevent Javascript exploits they automatically replaced all occurrences of a few script-related keywords with alternative terms – even in the text body of a mail and without regards to word boundaries. "eval" got replaced by "review", leading to such words as "medireview" (medieval), "reviewuation" (evaluation), "rereviewuation" (reevaluation), "prreviewent" (prevalent) and suchlike. If you search for some of those terms, you can still find traces of them across the internet and even in some published scientific papers.
- tzs 3y ago> My favorite is the online name censoring in video games. I don't know what the filters are like in EverQuest nowadays [1], but back in 2000 EQ didn't allow "cock" in chat. Then in April 2000 the expansion "The Ruins of Kunark" came and some of the zones that pretty much everyone making their first trips to Kunark would visit contained a variety of hostile cockatrices, and the chat filter would not let you mention them because of the "cock" at the start of their names. I once had occasion to implement a chat system for a small online gaming service and was supposed to filter out bad language. What I did was something like this: 1. Split the message into words. 2. For each word that is in /usr/share/dict/words or our own list of good words and is not on our bad words list, mark each character in that word as being good. 3. Concatenate all the words. 4. Find all places where words from the bad list appear as substrings of that concatenated string. 5. For any such bad words in the concatenated string mask the corresponding characters in the original message with asterisks unless all of the bad word's characters in the concatenated string are marked as good. For example the word "cockatrice" would have been uncensored even if "cock" was on our bad list because "cockatrice" is in /usr/share/dict/words and would not have been on the bad list. On the other hand "cocksucker" would have had the "cock" masked. If someone had tried to slip "cocksucker" by by inserting spaces such as "c o c k s u c k e r" the "cock" part would have still been masked, because the "c o c k" would have ended up as "cock" in the concatenated string, and not marked as good. Note that you would have been able to call someone a "peacock sucker" just fine, because "peacock" is in /usr/share/dict/words. Misspell that as "peecock sucker" though and then the "cock" part would have been masked. I was fine with that. I figured it encouraged good spelling among those who want to insult others. :-) (There was a little more, such as dealing with tricks like using 3 for e or \/\/ for w but those aren't really relevant to the general idea). [1] Yes, EQ is still around...and with the changes it has undergone over the years it is actually a pretty nice solo or small group game even on a free play account, especially if you have an old account to reactive so you get veteran rewards. Here's a description of some of the major changes [2]. When I returned to EQ a few years ago, I had no trouble playing a solo Bard to around level 60 on free play. Things got a bit slow then and I switched to paid. I then made reasonable progress up until I had finally satisfied my [2] https://news.ycombinator.com/item?id=31368588 https://news.ycombinator.com/item?id=31368588