SG NSFW Filter - Usercript for SteamGifts to hide giveaways of NSFW games.

Filtering based on developers and publishers blocklist + whitelist, and by content descriptors of the game.

Filter out games with following content descriptors (except for games by whitelisted developers/publishers):

  • "Frequent Nudity or Sexual Content",
  • "Adult Only Sexual Content".

Does not filter games with following content descriptors (except for games by blacklisted developers/publishers):

  • "Some Nudity or Sexual Content" (games can have this descriptor, for example, because of feature to manually undress character, or few scenes with swimsuits),
  • "General Mature Content" (games can have this descriptor, for example, because of offensive language, or violence scenes).

Important: script can't process games unavailable in your country (Steam API does not allow to retrieve info about region restricted games)!

More info, features description, screenshots and installation instructions at GitHub page

You can suggest developers/publishers to add to shared blocklist here.
And you can suggest developers/publishers to add to shared whitelist here.

I've made this script for myself, but seeing this discussion I decided to share it :)
Tested in Mozilla Firefox.

1 year ago*

Comment has been collapsed.

can we suggest games to be added as i know some where the publishers/devs also make non adult games - also i have some questions:

1 - what about lewd not really porn or sexual like those games where you do something like match 3 or match cards to get a picture while suggestive is not naked or sexual

2 - what about games like Nekopara where the version on Steam is all ages (just blacks quickly over the sex parts which is small in game terms anyway) but have free or paid dlc to add back in the adult content

and finally if possible would/could you do this for games with heavy violence in them like a lot of blood or deaths

also do you have a list of games/dlc already blocked/removed with this plugin

1 year ago
Permalink

Comment has been collapsed.

1 & 2) Script get game info from Steam API and checks Developer/Publisher of the game and content descriptors. It does not check age restrictions because most of cheap NSFW games have this field = 0.
On the Steam game page you can scroll down to the section "Mature Content Description", if this section exists → game have some content descriptors (but Steam does not show them, you can only see description text from developer). Exact content descriptors can be checked on the SteamDB (in the AppInfo section).
Mostly filtering based on those descriptors.
I added blocklist and whitelist just for blocking developers/publishers who didn't set those descriptors for their games, and to prevent blocking games from normal developers/publishers.
Atm blocklist is empty and whitelist have only 2 publishers :) But I created suggestion discussions on GitHub to allow ppl suggest developers/publishers for blocklist and whitelist.

3) May be later, but I will keep that in mind.

4) Nope. Script queries SteamAPI and caching results, but after last update (today) I cleared my cache before testing it xD So now I have only ~100 game AppIDs in the cache.

1 year ago*
Permalink

Comment has been collapsed.

can we suggest games to be added as i know some where the publishers/devs also make non adult games

I created suggestions discussion on GitHub

1 year ago*
Permalink

Comment has been collapsed.

BUMP( 「'Θ')🔎
Thank you! SG New filter Add-on♪

1 year ago
Permalink

Comment has been collapsed.

Wonderful!!!

In regards to the blacklist and whitelist, I was not clear if each individual has their own lists or if it they are common, public lists?

Also is there a possibility of filtering based upon #tags in Steam?

1 year ago
Permalink

Comment has been collapsed.

Atm whitelist and blocklist are inside a script code.
User can open script source code and add publishers/developers to those lists (minimal JavaScript knowledge is required I guess).
Also I created discussions on GitHub where people can suggest publishers/developers for whitelist and blocklist. Those publishers/developers will be added to script code (shared lists).

Tags in Steam are divided into 2 cotegories:
1) Tags by developer - you can see those tags on the Steam game page under achievements list, to the right of the extended game description. For example:

Title: A Plague Tale: Requiem
Genre: Action, Adventure
Developer: Asobo Studio
Publisher: Focus Entertainment

2) User defined tags - you can see those tags at the top section of the page to the right of the screenshots list.
For example:

Popular user-defined tags for this product:
Adventure Action Action-Adventure Exploration +

Steam API allows to retrieve only developer' tags, usual there are only 2-3 tags. But it still possible to get them and filter games by those tags. This feature was present in ESGST (I didn't used ESGST for few months so I don't know if it still has that feature).

1 year ago*
Permalink

Comment has been collapsed.

Thank you for the in-depth reply! It is a shame (although I can see why) that the user-entered descriptions are not filterable.

This will surely be a great asset for many although I am looking for a 100% personal solution. My idea of what to filter might or might not coincide with the general public. So I would want to start at "zero" and then populate my own filters. Although I do have minimal Javascript knowledge, so I might very well take a stab at creating my own list... which would work great until/if you issued an update to the script (sigh).

I certainly understand that this was your personal solution and that you did not sign up for creating something to other's needs. :)

1 year ago
Permalink

Comment has been collapsed.

Try ESGST.
It allows to define custom filtering rules based on many types of info about games, include tags.
When I used ESGST I made filters for myself to hide games with genres which I don't like (rules like "TAGS not include Platformer, Runner, Racing, ..."), and it worked well.
Also, as I remember, ESGST can show game tags on the giveaways, and it showed many tags (more than 3) for many games. Probably it uses HTML scrapping to get tags list for the game.

1 year ago
Permalink

Comment has been collapsed.

I actually do use ESGST. However, with some of its myriad of features, I get confused with the instructions and don't get the results I want/hope for. I'll give this another attempt there using the syntax you suggest.

I also have your extension active now and will play with it some to see if I can make it work for me. :)

1 year ago
Permalink

Comment has been collapsed.

The syntax I wrote was a very rough example :)

Here is working example of rule based on game tags: https://imgur.com/a/j5mF7Tu (I highlighted important things there)
For filtering by tags you have to enable options 3.21.2.71 and 9.4

1 year ago
Permalink

Comment has been collapsed.

You are the man! :)

1 year ago
Permalink

Comment has been collapsed.

for the life of me i cannot use ESGST looks ugly and chaotic.

1 year ago
Permalink

Comment has been collapsed.

Thank you very much for this. Definitely a useful script. <3

1 year ago
Permalink

Comment has been collapsed.

This was much needed, added to WL

1 year ago
Permalink

Comment has been collapsed.

much needed script covering the lack of care and protection from the platfrom

1 year ago
Permalink

Comment has been collapsed.

Man, had no idea you made such a cool userscript. Thank you!

6 months ago
Permalink

Comment has been collapsed.

Sign in through Steam to add a comment.