Search Unity

Bad Word Filter PRO - Solution against profanity and obscenity

Discussion in 'Assets and Asset Store' started by Stefan-Laubenberger, Jan 9, 2015.

  1. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Bad Word Filter (BWF)

    The "Bad Word Filter" (aka profanity or obscenity filter) is exactly what the title suggests: a tool to filter swearwords and other "bad sentences".

    There are multiple uses for the "Bad Word Filter" in your game, but the three most obvious would be user names (e.g. for high-scores), in a chat within the game and character names.

    If you don't want some wannabe-funny-guy to use the user name "a55-face", "S+alin" or any other word you don't approve of, just enable the "Bad Word Filter" and instead of the swearword something like this comes out: #$@&%*!

    In our library included are the following 25 languages (bad words as regular expressions which matches ten thousands of word variations):

    Arabic, Chinese, Czech, Danish, Dutch, English, Finnish, French, German, Greek, Hindi, Hungarian, Italian, Japanese, Korean, Norwegian, Persian, Polish, Portuguese, Russian, Spanish, Swedish, Thai, Turkish and Vietnamese.

    Furthermore, you can add (or remove) any word and language you'd like!

    We also included the following special filters: domains (URLs/emails), reserved names (from games, movies, comics etc.), global bad words, emojis (miscellaneous symbols), excessive capitalization and punctuation.

    The "Bad Word Filter" works with any language and writing system. It is easily customizable, runs on all Unity platforms and the source code (including all bad words provided) is also contained within the package.

    Features:
    Filter function

    • Review, select, read and replace:
      • Bad words and inappropriate phrases
      • Domains, URLs and email addresses
      • Excessive capitalization (such as "HEY DUDE")
      • Excessive punctuation (e.g. "!!11111")
    • All four filters can be used separately and changed during run-time

    Languages
    Contains over 5'000 of regular expressions in 25 languages - equivalent to tens of thousands of word variations!
    Supports any language and any writing system:
    • Arabic, Cyrillic, Chinese, Japanese, etc.
    • Including ltr / rtl (left to right or right to left)
    • Automated (easy) pluralization of English terms

    Flexible & expandable
    • Easy modifications/additions to the existing sources ("bad words").
    • Multi-threaded and lightning fast - even with thousands of words!
    • C# delegates and Unity events
    • Use the preconfigured providers for resources, files and URLs - or add your own provider (e.g. for XML, JSON)
    • Meta data for sources (e.g. descriptions, icons)
    • All sources („bad words“) provided

    Documentation & control
    • Test all the functions in the editor
    • Powerful API for maximum control
    • Detailed demo scene
    • Comprehensive documentation and support
    • Full C# source code

    Compatibility
    • Supports all build platforms
    • Works with Windows, Mac and Linux editors
    • Compatible with Unity 2019.4 – 2023
    • Works with Online Check
    • PlayMaker actions


    Some impressions:

    CT_Screenshot_03-01-2021-17-45-47-1.png

    CT_Screenshot_03-01-2021-17-45-55-7.png

    CT_Screenshot_03-01-2021-17-47-11-8.png


    Video:




    AssetStore:
    Bad Word Filter PRO
    Essential Tools Bundle
    All Tools Bundle

    Our other assets


    Demo:
    WebGL


    Changes



    Feel free to download and test it.
    Any constructive comments are very welcome!


    Cheers
    Stefan
     
    Last edited: Jan 26, 2023
    xucian likes this.
  2. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,684
    I just noticed this in the store. Like everyone, I know there are limitations to what can be done with a profanity filter, but I'm wondering how sophisticated this is intended to become. So I have a few questions:

    Will it let me use a different bad word list for player names than the one I use to filter chat? I ask because I might want to disallow copyrighted or trademarked names when making player names, whereas it would be fine to use such words in chat.

    On the use of bad player names, I'd like to reject the entry and have it highlight the improper usage in all caps and maybe bold as well (in case the original entry was in all caps). In the chat it will either print the profanity in all caps (and bold) or substitute a @#$! string, depending on which option is selected. Is this easily done?

    Also, a common problem with profanity filters is that either they don't search in-string (so a person can literally type "curseword" or *curseword, and it passes) or if they do search in-string, they don't allow for proper words that can contain bad words. It would be great to have the ability to not only specify bad words, but also to list acceptable words that contain bad word strings.
     
  3. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Hopeful!

    Thank you for your interest in our product!

    You can easily build your own resource files and use them whenever you want. It's a really flexible system. You can e.g. have a resource "copyrightednames" and another one like "mybadwords", Then you are able to decide during runtime which one you would like to use. For more informations, please take a look at the docs in chapter 4&5.

    To your second question: yes, it is possible to get the first or all bad words/sentences inside a given string back, but you have to mark them by yourself (e.g. with IndexOf)
    BUT, there is als a function to replace all bad words/sentences with a generated string (same length as the bad words/sentences). The result will be something like #$@&%*!

    The answer to your last question is again yes! :) But please feel free to test our demo to see if it's good enough for you.


    If you have any questions or suggestions, please let us know.

    Cheers
    Stefan
     
    Last edited: Jan 10, 2015
  4. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Yeah, our asset got a 5 star rating :) *happy time*

    Thank you dear customers!
     
  5. bobbylee

    bobbylee

    Joined:
    Aug 15, 2013
    Posts:
    49
    I was looking for something like this. I rolled my own for a project, but did not spend as much time on it as I really should have. I will probably be picking this up soon, just wish I saw it before the sale price expired :) ...
    This is something I was surprised I did not see when I looked for one in the store at the time I was looking for one, glad you decided to spend the time on one.
     
  6. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi bobbylee

    Thanks for your interest in our product!
    I'm glad you thinking about using it ;-)

    Currently, I'm working on an update to add two new languages:
    • Norwegian
    • Swedish
    I'm also working on improved pattern matching and thinking about a white-list....

    Anyway, sad you missed the sale :-( The price will raise over time (while adding more and more languages) - but probably it's on sale some day :)

    Have a nice day!


    Regards
    Stefan
     
    Last edited: Jan 14, 2015
  7. Cheshire Cat

    Cheshire Cat

    Joined:
    Sep 18, 2012
    Posts:
    39
    Hey Stefan,
    I'm looking for an asset which will filter user input for SQLite forbidden symbols, like ' " ', AND, WHERE and so on. I'm not talking about SQL injection prevention tool, but something simple which will filter symbols which may corrupt the DB.

    Does your tool is able to provide that?

    Cheers,
    Ilya
     
    Zeblote likes this.
  8. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Ilya

    I'd like to sell you my asset, but to be honest, I don't think it's the right tool (at the moment) for what you would accomplish. :)
    What about the following solution?

    http://stackoverflow.com/questions/6547986/how-to-prevent-a-sql-injection-escaping-strings

    Don't escape the strings - use a parametrized query.
    Is that possible in your context? If it's not, let me know and I figure something out...


    Have a nice Sunday!


    Cheers
    Stefan
     
  9. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    We will soon publish an update to the asset store.

    It will contain the following new languages:
    • Portuguese
    • Czech
    • Hungarian
    We also added the "Fuzzy" recognition and an experimental (undocumented) RegEx-function. This means, that you can modify the matching criteria with RegEx. You can write a resource and put the RegEx instead of "simple" bad words/sentences. E.g.:

    (((?!\b(?:assum|assimil)[\w]*\b))ass)


    This will match all words containing "ass" but exclude "assum" (e.g. "I assume ...") and "assimil" (like "assimilation").

    You can do all kind of crazy matching stuff with RegEx and it's totally up to you, what and how you will match something (but to unleash the full power of this feature, you have to set the detection to "Fuzzy").


    Have a nice weekend!

    Cheers
    Stefan
     
  10. Rikrok

    Rikrok

    Joined:
    Apr 11, 2013
    Posts:
    50
    Looks interesting. I notice it doesn't deal with Scunthorpe though!
     
  11. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Rikrok

    Thank you for your interest!
    We will release an update soon where this problem will be fixed - the current web demo is already up-to-date. :)
    We're always thankful for input and we constantly try to improve the asset.


    Cheers
    Stefan
     
  12. Rikrok

    Rikrok

    Joined:
    Apr 11, 2013
    Posts:
    50
    Hmm now the profanity in question never gets picked by fuzzy recognition.
    Nevertheless I'm sure you'll address it. Sold!
     
  13. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Thanks, we'll look into it and will recalibrate the detection rate to gain even better results.
    Just let me know if you find other things that could be improved.
     
  14. Rikrok

    Rikrok

    Joined:
    Apr 11, 2013
    Posts:
    50
    Could you add fuzzy recognition into the example scenes and documentation?
    Obviously I can remove them myself but the kill words, lmao and tainted love feel like overkill to me.
     
  15. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    The current asset store version (1.2.0) doesn't support "Fuzzy recognition". But I submitted the updated version 1.3.0 a while ago - hopefully, it will be available for download later today. :)

    Or just send me an email with your invoice number to assets@crosstales.com and I send you the latest version.
     
  16. Hippolyta

    Hippolyta

    Joined:
    Feb 2, 2015
    Posts:
    2
    Hi there
    I bought your filter some time ago and am very happy with it. Unfortunately I missed the sale :)
    So far I am impressed with the amount of updates that you made, thanks!
    Nevertheless, do you plan on introducing something like an URL-Filter?
    Cheers, Hippi
     
  17. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Hippi

    Thank you for buying our asset! We will keep up our effort on this asset to build the best solution for Unity developers.

    So I've just made some improvements which might interest you:

    -A domain-filter for URLs/emails
    -Prevention of excessive capitalization
    -Prevention of excessive punctuation

    And we added Turkish as the language number 20 :)

    See it here in action


    We will (hopefully) publish the update 1.4.0 tomorrow to the asset store - I hope this is good news for you.

    Just let me know, if you have any other wishes.


    Regards
    Stefan
     
  18. Hippolyta

    Hippolyta

    Joined:
    Feb 2, 2015
    Posts:
    2
    Sounds good, thank you!
     
  19. BDX777

    BDX777

    Joined:
    Dec 21, 2013
    Posts:
    14
    Did you censor Cheese? Because that offends me slightly.
    Oh and bad is a negative term too, but it could be positive like "bad @$$".

    Edit: I actually found a few words that aren't censored, and certain words that are allowed but similar synonyms that aren't, because I guess Labia makes 'god' frown but Cervix is totally okay.
    I don't know how to feel about this plugin. Can you customize this? I'd honestly use this to blacklist spam links, but allow everything else. Freedom of speech is pretty great, unless you're a bot.

    "toy rubber bouncy balls"
    Oh no it isn't Context Sensitive.

    Now I can't talk about how much I love putting sausages between buns and then putting ketchup on them, because "sausage" can mean penis, but shaft isn't censored, but I used "sausage" to talk about how I love ketchup on my hotdogs.
    I swear, I'm not a terrible person! I just love ketchup on my sausage!

    Niggardly isn't profanity either, according to google it means:

    "not generous; stingy.
    'serving out the rations with a niggardly hand' "

    But I guess I'll leave that up to you.
     
    Last edited: Feb 3, 2015
  20. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Nope, cheese isn't censored - but as a Swiss guy, I have to like it ;-)
    Anyway, you can censor what ever you want - the system is totally flexible.
     
    Teila likes this.
  21. BDX777

    BDX777

    Joined:
    Dec 21, 2013
    Posts:
    14
    I can't say Dick Tracy! :c
    Atleast I can say "Adolf Eichmann, Dylan Klebold, Eric Harris", so that's pretty cool! :D

    Edit: Why did you censor Homosexual and not Heterosexual? Lesbian is censored, too.
    Pansexual is fine.
    So either go all the way or just stay hetero I guess..
     
    Last edited: Feb 3, 2015
  22. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi BDX777

    Thanks for your feedback and interest in our product!
    I try to answer your comment/questions:

    1. I've added "cervix" to the Global resource
    2. You can customize this asset as you like - the idea behind is the fully customizable setup to allow everyone to maintain their own lists and modify them as they prefer. The included lists are a solid setup, but you can change everything.
    3. What do you mean by "Oh no it isn't Context Sensitive."? It is :)
    4. "sausage" and "shaft" aren't in the English resources and I think, they don't belong there for the basic setup.
    5. "Niggardly" is a difficult word - but it matches no longer ;-)
    6. Yeah, life is hard for all "Dick"s in the world; no seriously, that isn't easy solvable. Except I remove the "dick"-matching or change it to something like "if it's starting with a capital D, then it's the name and not the thing". But this will only weaken the detection, so I don't think it's a good idea.
    7. I didn't add all the Nazis and crazy people in the world - at some point you wouldn't be able to write something... But probably I should add them (and some more).
    8. It has nothing to do with "stay hetero" or discriminating the homosexual people. It's a fact that this words are often used as insults, so they are censored.
    Again, thank you for your input!


    Regards
    Stefan


    P.S: I also like an email bwf@crosstales.com for suggestions - "Bad Words" are a bit dangerous in public...
     
    Last edited: Mar 13, 2017
  23. Tortyfoo

    Tortyfoo

    Joined:
    Mar 6, 2012
    Posts:
    132
    Will I be able to say I live in Scunthorpe? I don't but that English town does cause fun with censorship. Even given its name to the problem of swear words contained within valid words.
     
  24. BDX777

    BDX777

    Joined:
    Dec 21, 2013
    Posts:
    14
    Yeah I bet they are a bit dangerous in public, saying "Cervix" might get myself punched in the nose or something!
    What about urethra, Obamacare, and Auschwitz? Can you censor those?
    I believe that sometimes censorship is taken too far, as everyone has different levels of tolerance, and it would be terrible to just be randomly persecuted based on somebody's subjective opinion. I honestly think it's offensive that some people are Misandristic, but some people just don't seem to care. It's really sad.

    Should we also ban specific names? You can't say Hitler, but why are you able to say Adolf Eichmann and Zoe Quinn? That's bound to offend somebody, we don't want their feelings to get hurt over a combination of typefaces generating pixels based on vector-graphics!! That would be awful!

    Also I thought there was Falukorv sausage in Sweden??? I know sausages look like penises to YOU, but...

    Anyways, will you atleast censor "sperg"? It's a slur used against people with aspergers, also "aspie" is another one.
    Don't forget "autist" and "privileged white male", maybe even "cracker" because it's a slur against white people!
    AND BEFORE I FORGET, even though you censor specific words, you can still be very dirty if you're smart with innuendos.

    I decided to create a list.
    "I want to come all over your face with my erect shaft of awesomeness" is not censored.
    "I'm going to penetrate your corn hole with my penal gland." is not censored.
    "dirty shlong after romp ramming" is not censored, either.

    What do we do about cases like this? Also what about people spreading annoying political opinions? They really offend me! Someone help, Mitt Romney is spreading bull manure again! (Manure isn't censored either btw, I should use that because it will offend someone)


    I wonder if you'll be able to share links to the Assassin's Creed website, probably not because it contains "ass" twice, but you can actually say assassin with this... thing... This evil censor.
    The end is nigh!
     
  25. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Tortyfoo

    Thank you for your interest!
    That's no problem for the "Bad Word Filter" - the beautiful city of "Scunthorpe" was white-listed a while ago :)

    You can test this on the web demo.

    As I said, you are totally flexible and you can add own words or send me them and I will add it for all users.


    Cheers
    Stefan
     
  26. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hehe, yeah you can - thanks to the incredible AI of this system. ;)
    But if you enable "Domain filtering", even links won't work - bad "Bad Word Filter":p
     
  27. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    I just bought this.

    In spite of all the chatter above, the asset can be customized so if you don't like certain words, such as cervix which is not a dirty word in English, btw, then you can block it yourself. I bought it to block out very specific words that do not add to an immersing environment and to keep folks from using bad words or numbers for character names.

    Stefan, I don't live in Switzerland but my father is full blooded Swiss and we have family there. I like cheese as well. :)

    Thanks for this asset. It saves us a lot of time doing it ourselves. I don't mind taking a little time configuring it to our needs.
     
  28. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Teila

    Thank you very much for buying my asset and the kind words!
    Let me know if you are planning to visit Switzerland - let's eat some cheese together ;)

    If you have any suggestions or problems with this asset, just send me an email.


    Regards
    Stefan
     
    Teila likes this.
  29. bobbylee

    bobbylee

    Joined:
    Aug 15, 2013
    Posts:
    49
    I finally picked this up, I am very happy so far with it. This is much better and faster then the one I rolled myself :) ..

    Thanks for seeing the need for this and developing it.
     
  30. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi bobbylee

    Thank you for buying my asset and I'm glad it seems useful for you!
    If you have any questions or suggestions, just send me a pm or an email.

    Have a nice day!


    Regards
    Stefan
     
  31. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    @all dear customers

    if you like the "Bad Word Filter", don't forget to rate it or even better: write a little review :)

    Thank you very much!


    Regards
    Stefan
     
  32. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    I saw that i can choose different steps on bad word filtering in a game called guild wars 2.
    Can i do this with your asset too or will you ad this feature in a later update?
     
  33. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi RandAIThor

    What do you exactly mean? Could you please provide some further details (e.g. screenshots)?
    Thank you!


    Regards
    Stefan
     
  34. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    I do not have screenshots at the moment but it work like if there where different levels of bad words.
    Like if i do not want any bad word ich choose full filtering.
    If i do allow some not "so" bad words where the meaning is not good but not frivolous then i choose middle filtering.
    If i only want to allow some little bad words that are only "bad" for little kids then i choose low filtering.
    And if i want to allow all words i choose no filtering at all.
     
  35. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hello again :)

    That's possible with the current version - the "Bad Word Filter" is very generic and expandable. You can create resources with the bad words for every level, like:
    • en_bad.txt
    • en_moderate.txt
    • en_kids.txt
    But you have to add the words by yourself - I'm currently not planning to add "levels of bad words".


    After setting up the resources, add them to the filter and call it inside your code, like this:

    bool isOk = BadWordFilter.Contains(stringToTest, "en_bad");

    I hope this answers your question.


    Cheers
    Stefan
     
  36. RandAlThor

    RandAlThor

    Joined:
    Dec 2, 2007
    Posts:
    1,293
    Ah ok, thank you.
     
  37. MikeM1970

    MikeM1970

    Joined:
    Jun 4, 2014
    Posts:
    10
    Hi, I was using the free version for a demo in Unity 4.x and it worked great. Awesome asset. However, after upgrading to Unity 5, the filter is experiencing an error when dropped into the scene. Here's a screen grab of a blank scene. Curious of anybody has tried this in Unity 5?

    A word of caution- when I upgraded my project to Unity 5, the build didn't fail exactly (I got log warnings about the script missing / failing to initialize), but the project built and the bad word filter failed to function; obviously this could be problematic if somebody gets the same issue and then pushes a production build from Unity 5 without noticing the "script missing" warnings. Thought I'd share.

    Edit: Windows 7 Professional, Unity 5.0.0f4 free version
     

    Attached Files:

    Last edited: Mar 17, 2015
  38. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Mike

    Thank you for reporting the problem - I didn't realize the error with Unity5... :-(
    The DLL seems not to work in the new version; I will fix this asap!

    The full version uses the C# source and is therefor fully compatible with Unity 5.

    Thank you again and have a nice day!


    Regards
    Stefan
     
  39. MikeM1970

    MikeM1970

    Joined:
    Jun 4, 2014
    Posts:
    10
    Thank you Stefan! I might grab the full version in the next month. In the meantime I'll keep an eye out for the dll update.
     
  40. MikeM1970

    MikeM1970

    Joined:
    Jun 4, 2014
    Posts:
    10
    Thank you Stefan! Sorry, it took me a while to get back to testing my project and the filter now works fine... Payday today so I'm going to grab the full version :) Thanks very much!
     
  41. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi Mike

    Thank you very much for supporting and buying my asset!
    I'm glad that it seems useful to you.

    If you have any suggestions or questions, just send me an email or pm.


    Happy easter! :)
     
  42. bobbylee

    bobbylee

    Joined:
    Aug 15, 2013
    Posts:
    49
    Could the next update please use Unity 5 GUI in the samples?

    Thanks,.
     
  43. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi bobbylee

    I'm currently working on version 2.0 which is based on Unity 5.
    Many changes are implemented - your "wish" for the new GUI is also part of the new version. :)

    The release is planned for the end of April.


    Cheers
    Stefan
     
  44. bobbylee

    bobbylee

    Joined:
    Aug 15, 2013
    Posts:
    49
    Great, thank you.
     
  45. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    Bought.
    Excited to see U5 version.

    Thanks

    (Tiny aside: I accidentally resized the Game Window (in the editor - at run time) on your Automatic Demo in U5.1.0f1 and the entire machine halted... Not your bug I'm sure but I would hurry up with that new demo ;) )

    We will be using this to prevent profanity via keyboard input. Cheers
     
  46. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi twobob

    Thank you for buying my asset!

    If you would like to have access to the preview-version of the asset, send me an email with your invoice number.
    The new version is fully U5 compatible, so no more resize bugs ;-)

    Have a nice weekend!


    Cheers
    Stefan
     
  47. twobob

    twobob

    Joined:
    Jun 28, 2014
    Posts:
    2,058
    thanks for that,

    and your excellent support.

    It now works perfectly and the English support has a few more words ;)
    http://kaycare.co.uk/games/kayboard/
    upload_2015-5-16_0-21-28.png
    (That particular prototype build there contains a non-fatal non-related error in my prefs before anyone runs in in dev mode and tells me... I'll fix it later) fixed thanks to http://docs.unity3d.com/Manual/ClassIDReference.html 159... I'll let the other author know he has a problem
    But yeah worker :) thanks.

    Total build size?

    upload_2015-5-16_0-34-20.png

    going to be tough to improve on that...
     
    Last edited: May 16, 2015
  48. alcottadney

    alcottadney

    Joined:
    Jul 27, 2015
    Posts:
    1
    The only way to do a word filter intelligently is to use a phonic matching system. I wrote a very effective profanity filter for a very popular massively multi-player online game for tweens and teens a few years ago in Java.

    It was based on a highly modified Double meta phone algorithm that was tweaked to be more accurate instead of the default which is to match as many things as possible. It was so extremely effective since it picked up mis-spellings and phonetic spellings just the same as the actual words. I added l33t speak and txt speak to the MetaPhone algorithm as well, making it more of a Triple/Quad Metaphone algorithm.

    It featured a pre-processor that compressed running letters and detected things like the kids putting things like w o r d s by intelligently compressing the letters together and eliminating running duplicates like wwoorrddss, it was very specialized for English only.

    It was fast enough 8 years ago to be used in a real-time chat system stream without any noticable latency with tens of thousands of users on the system.

    We had a list of words that were Metaphone encoded in a table in the database, and it was loaded into a static Map that was surprisingly small and we never had to do anything special to access the list of banned words, I was able to add phrase detection using the same techniques for almost free.

    Of course I had a running log of all the chats from thousands of kids trying to break the system in real time so I had a pretty comprehensive set of data to work against. The way I did the logging was when someone triggered the filter with a positive, I logged the next few chat messages that didn't trigger the filter from them, that way if they did find a way around a particular word or phrase, I could adapt my system and catch that. I was pretty bullet proof after just a couple of weeks.
     
  49. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Hi alcottadney

    To be honest, I don't know what you're trying to tell me. Your filter sounds good, but the link directs to "Residential Furnace Filters" - wrong link?

    Our filter works very well so far, we are constantly working on it and the accuracy got even better. We are listening to the inputs of the users - which improves our product even more.

    If you have a question or any other input, please let me know. From what you wrote it is not clear what you want - it seems you just want to brag about your filter :)
    I would like to have a look, but with the current link that's not possible.

    Cheers
    Stefan

     
  50. Stefan-Laubenberger

    Stefan-Laubenberger

    Joined:
    May 25, 2014
    Posts:
    1,980
    Version 2.0.8 is submitted to the store and add some minor improvements.

    We also added a promo video:

    .

    Have a nice weekend!


    Cheers
    Stefan