• World of Warcraft Addons
  • World of Warcraft
  • Average Rating:

  • Your Rating

  • Share
  • Report Abuse

ASSFilter (Dirge and Anal Spam Filter)

 
Project Updated:
Files Updated: Wed, Aug 5 2009
Supports Game Version: 3.2.0
Category: Chat & Communication
Tags:

[Edit Tags]

Project Manager: Yewbacca
Additional Authors: No additional authors
Current Version: v1.3
License: GNU Lesser General Public License version 3 (LGPLv
Development Site: CurseForge
Avg Daily DL (last 30 days): 3
Downloads Total: 2,232
Favorites: 9
Comments: 13
  • About ASSFilter (Dirge and Anal Spam Filter)
  •  

ASSFilter (Dirge and Anal Spam Filter).

    Version:        1.3
    Date:        04/23/2009
    Author:        Yewbacca

Filters the common EU-Stormreaver [Dirge]/Anal [Item] spam and either colors it dark gray so that it's easy to ignore, or hides the spam completely.
The name of this addon is a play on both the nature of this particular spam phenomenon, and the asshats who are doing the spamming.

Behavior:
    * Spam is filtered from the numbered channels, i.e. /1 to /99 (which includes the trade channel, the worst offender).
    * This means that it won't affect whispers, says, yells, raid/bg, guild chat and so on.
    * It won't filter your OWN messages AT ALL; they will show up as normal, even if you're performing [Dirge] spam on /2 (for instance).
    * Lastly, if you're a BLACKSMITH that WANT to see people interested in BUYING [Dirge] (happens like once a year), then this filter is not for you. 99% of the mentions of [Dirge] are spam.

Usage:
    /assfilter
    Shows the current mode and prints a list of valid commands.

    /assfilter nofilter
    Disables the spam filtering, making all spam messages show up as normal.

    /assfilter color
    Colors the spam dark gray to make it easy for the eyes to skip it.

    /assfilter hide
    Completely hides all spam from ever being shown on the screen.

    The filter defaults to 'color' mode the first time you run it.
    You are then free to set the filter up to hide the spam if you want to.

    The settings are remembered account-wide (affects all characters).

Changes:
    1.3 (08/05/2009):
    Updated for Patch 3.2, which once again changed how channel filters work (they now have an additional arg12 which contains the UnitGUID of the person who typed the message), and removed the temporary MJ spamkillers.
    
    1.2 (06/26/2009):
    Temporary update to filter the massive amount of Michael Jackson spam: "MJ", "Michael", "Jackson", "Kids" and "Children" are now added. This will be restored to normal once the spam blows over. R.I.P. King of Pop.
    
    1.1 (04/23/2009):
    Updated for compatibility with Patch 3.1 (which changed how channel filters work).

    1.0 (11/05/2008):
    Initial release, fully stable.

  • Downloads (4)
  •  
File Name Release Type Game Version Downloads Date
Addon Curse.com Beta 2.3.3 0 9/29/2008
  File Name Release Type Game Version Downloads Date  
  ASSFilter (Dirge and Anal Spam Filter) v1.3 Release 3.2.0 1,011 8/5/2009
  ASSFilter (Dirge and Anal Spam Filter) v1.2 Release 3.1.0 388 6/26/2009
  ASSFilter (Dirge and Anal Spam Filter) v1.1 Release 3.1.0 452 4/24/2009
  ASSFilter (Dirge and Anal Spam Filter) v1.0 Release 3.0.3 379 11/6/2008
  • 1 page(s)
  • Comments

Add Comment  

Add

You need to login or register to post.

Benefits of Registration

  • Interact with hundreds of thousands of other gamers on an open social network.
  • Post your stories, news, images, videos, and other content to share.
  • Create a network with your fellow gamers or join an existing one.
  • Gain reputation for everything you do.
  • persheal said

    For those that wants to be able to add "keywords" more easily, I've hacked the main function to use a list of "keywords" instead of successive "or" statements.

    replace the "ASSFilter_ChannelMsgFilter" function with this one (it starts at line 56)



    function ASSFilter_ChannelMsgFilter(self, event, ...) -- ... = arg1-arg12. since patch 3.1 we have to return ALL(!) the arguments when modifying a message (see below). also, since patch 3.2 there's a new arg12 which is the unit's GUID (which helps further processing functions down the road get class, race and gender info from the GUID).

    local msg = arg1
    local author = arg2 -- note: doesn't exist for system messages

    if (ASSDB.filterMode ~= 0 and arg2 ~= UnitName("player")) then -- if the filter is not disabled (mode 0) and the message is NOT originating from us, then...
    local lcmsg = string.lower(msg);

    local items = { "anal", "dirge", "in bed", "in the bed", "gc", "gearscore", "gs", "check", "gearcheck"}
    -- this is the list of filtered keywords, just add new ones as needed.

    for _,searchString in pairs(items) do
    if (strfind(lcmsg, "%f[%w]".. searchString .. "%f[%W]")) then
    -- this very odd looking pattern is actually an UNDOCUMENTED LUA feature, %f[...], which detects the transition from "in set" to "not in set", the way we use it here is to detect "the transition into alphanumeric, the letter sequence 'anal', the transition OUT of alphanumeric", in effect this emulates regexp's \b word boundary feature, in that it matches the word boundaries around the word anal to be sure it's a word on its own (and not found as a fragment of another word such as "analyze"). this pattern accurately finds the word "anal" both at the end, start and middle of a string, and isn't thrown off by things like "anal." either, since punctuation isn't in the alphanumeric set, meaning that it correctly finds all BAD uses of the word anal while preserving good uses such as "analyzing". %f[...] is described briefly at http://lua-users.org/wiki/FrontierPattern and http://www.lua.org/pil/20.2.html (listing the other pattern modifiers). secondly, regarding the simple "dirge" pattern (instead of "%[dirge%]"), it's such a commonly misused item that we want to filter out both people using the WORD dirge and those that actually have the item link when they spam it.
    if (ASSDB.filterMode == 1) then
    local cleantext = msg:gsub("|c%x%x%x%x%x%x%x%x", ""):gsub("|r", ""):gsub("|H.-|h", ""):gsub("|h", "")
    return false, ("|cFF5C5C5C" .. cleantext .. "|r"), arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12; -- mode 1; color the message gray
    else
    return true; -- mode 2; hide the message
    end
    return
    end
    end

    end

    end

    Reply Report Permalink
  • wow.....

    trade chat just got quiet!!!!

    99/100 lines in trade are anal spam. just installed this to test it out, works great.

    Reply Report Permalink
  • persheal said

    Feature Request :

    Allow to add new filters in game via a slash command

    /assfilter add "for gc"
    would add "for gc" to the list of filtered items.

    /assfilter remove "for gc"
    would remove the entry

    /assfilter list
    would return the list of filtered entries

    Such a filter would allow the add-on to be more flexible and avoid unnessary updates to the code

    Reply Report Permalink
  • MrClown said

    Any chance for a hack/update to include the new "[item] in bed" spam that has become popular on some servers?

    Reply Report Permalink
  • persheal said

    add this to ASSFilter.lua on line 64

    or strfind(lcmsg, "%f[%w]in bed%f[%W]")

    This will take care of it.

    Reply Report Permalink
  • MrClown said

    Thank you very much =D

    Reply Report Permalink
  • persheal said

    np, see my latest comment, this will make adding filters yourself more easily

    Reply Report Permalink
  • Yewbacca said

    v1.3 (08/05/2009):
    Updated for Patch 3.2, which once again changed how channel filters work (they now have an additional arg12 which contains the UnitGUID of the person who typed the message), and removed the temporary MJ spamkillers.

    Reply Report Permalink
  • Yewbacca said

    v1.2 News, June 26:
    Temporary update to filter the massive amount of Michael Jackson spam: "MJ", "Michael", "Jackson", "Kids" and "Children" are now added. This will be restored to normal once the spam blows over. R.I.P. King of Pop.

    Reply Report Permalink
  • lilkaylie said

    Hello Yewbacca!

    First off I want to say your addon is amazing. I didn't realize anyone had come up with such a thing and today's trade chat on Galakrond got to be enough that I finally looked for this type of filter!

    Unfortunatly for me, my first five minutes of using it leads me to believe it is not updated for the 3.1 patch. I've gotten two errors. I'm not sure if they are the same or not, but I'll list them here, because I don't see a report a problem option.

    Error: Original call failed after running hooks for: ChatFrame_OnEvent Interface\AddOns\ASSFilter\ASSFilter.lua:59: bad argument to #1 to 'lower' (string expected, got table) Call Chain: Interface\AddOns\Stubby\Stubby.lua:381: in fuction (tail call):? Interface\AddOns\Sea\Libs\SeaHooks\Sea.util.lua:864: in function (tail call): ? (tail call): ? [string ";:OnEvent"]:1 in function <|string"':OnEvent"]:1>

    I don't know if that is the correct format or not... or if my other addons are clashing with it. But it seems as though every time the addon saw the anal word, it spammed that large message. I think I read it right...

    Thank you for your time!


    Reply Report Permalink
  • lilkaylie said

    I disabled the other addons Stubby (Dependency of Auctioneer Addon) and Sea (Dependency of Party Quest) and they recieved the message:

    Interface\AddOns\ASSFilter\AssFilter.lua:59: bad argument #1 to 'lower' (string expected, got table)

    Reply Report Permalink
  • Yewbacca said

    Hi, I apologize for the delay on the fix. I've been away from the game for a few months. I actually returned yesterday. ;-)

    The problem you've encountered is that Patch 3.1 changed how channel filters work, which broke every addon that uses chat channel filters.

    I have a new, updated version in queue (v1.1), it's just waiting for Curse admin approval. Enjoy! :-)

    Reply Report Permalink
  • JoakimD said

    Any chance for an update? i keep getting error messages when i have this enabled in 3.1.

    Reply Report Permalink
  • Yewbacca said

    It broke due to changes in 3.1. An updated version has been uploaded. See my reply to lilkaylie above for more info.

    Reply Report Permalink
  • vaggs said

    Just the perfect addon I needed... The script is nice and simple, which makes it piss easy to modify to filter out all the morons on Dath'Remar-US who fire up at some of the regular trolls (who I won't name as all most of them want is infamy). Thanks!

    Reply Report Permalink
  • Yewbacca said

    Hi vaggs, you're welcome. I always put plenty of comments and helpfully named variables and functions in my code no matter what I am working on. This is so that, as you discovered, it's easy for others to modify the code if they need to. Glad you like it! :-)

    Reply Report Permalink
  • can an option be added to also "report spam" on the idiots who are playing those games? I'm perhaps a bit more vindictive than others, but I'd like to see them forcably stopped as opposed to just "looking the other way".

    Reply Report Permalink
  • Yewbacca said

    Hi neadayandrakhon, I originally planned to allow the option to auto-report players that spam. However, after doing some research I found out that it's not possible, simply because the game puts a hidden 2 minute or more timer BETWEEN each report, so you can only report one player every 2 minutes. It doesn't help to click "Report spam" on 15 players. Only one gets reported (the first one). Secondly, it's a bit dangerous to have such a thing automated. ;-)

    Reply Report Permalink
  • Wall said

    great mod :)

    Reply Report Permalink
  • damnation said

    You sir are a god amongst mortals. Thanks for this!!!

    Reply Report Permalink
  • Addon Packs Containing ASSFilter (Dirge and Anal Spam Filter)

Most Downloads / Day

ASSFilter (Dirge and Anal Spam Filter) has not been added to any Addon Packs yet.

  • Similar Addons
  •  

Average downloads per day

  1. 2,669 Prat 3.0 Chat & Communication
  2. 1,463 Chatter Chat & Communication
  3. 1,096 EPGPLootmaster Chat & Communication, Bags...
  4. 415 WIM (WoW Instant Messenger) v3 Chat & Communication
  5. 369 BadBoy: Anti Spam Automatic Reporter Chat & Communication