ABOUT:

The amount of the games on sale is just unholy, and not everyone has the time to go thru them all, and pick out the best of them, especially the lesser known titles. So while this is not an absolute metric, I used the total amount of reviews a game has, as filter, to filter out the less popular titles, so you would have a much smaller and better pool of games you can actually look through and pick what you want. Again, I know the amount of reviews doesn't necessarily mean it is better than other, but popularity is the most objective variable that could be used to filter out games, because otherwise, most people don't have the time to look thru all of the games to see which one are the best, regardless of popularity.

Also the most important part, is the ability to filter games based on popularity, relative to it's price. While you can be interested looking at a game that cost 2 dollars, and has popularity of 500 reviews. you won't be as much as interested looking at All the games with same popularity that cost 10 dollars. I'm not saying those differences are what actually makes something worth buying, it is just about filtering, and giving you a smaller and relatively objective better games, to look thru.

TL;DR : This scripts filters search results based on their popularity.


HOW TO USE:

  • Change any variables you want.

  • Copy the code

  • Go to the search page in Steam, I recommend going to this link with those filters; http://store.steampowered.com/search/?sort_by=Name_ASC&category1=998&specials=1

  • Select any of the traditional filters you want.

  • Press ctrl + shift + 'J'

  • You will see a console poping out, paste the code there, and hit enter.

  • Now while it looking thru all games, you can go do what you want, and you'll get alert when it will finish.


VARIABLES:

There are variables you can customize, to suite the standards of the games you are looking.

  • minmum_discount : Self explanatory, the minimum amount of discount you looking for. Enter value between 0-100.

  • minimum_rating : Self explanatory too, the minimum amount of rating in a game you looking for. Enter value between 0-100.

  • minimum_reviews : The minimum amount a reviews the game needs to have, and regardless of the next reviews_per_dollar. Enter 0(if you want the feature disabled), or any number above 0.

  • reviews_per_dollar : How much popularity a game needs to have, relative to it's price, for example if you'll put '250'; it'll show games that cost 2$ and has 500 reviews and more, but won't show games that cost 5$ and have less than 1250 reviews. Enter 0 (if you want the feature disabled), or any number above 0.

  • starting_page & ending_page: going thru the whole list of games, can take some time, lag the browser at the end, and just have too many results. SO you can set thru what p[ages you want tool in your current search.

  • special_sort : Turning this feature on, will sort all the results at the end, based on popularity (reviews) per dollar. You can either use true or false, to turn on and off this feature.


NOTES:

  • If there's an actual demand, I will make a Chrome extension of this script for a much easier usage.

  • When using the script make sure you are on the first page of the results, otherwise there is a bug that stops the script.

  • Rarely the script for some reason just doesn't start, so if you don't see any reaction, just refresh the page, and use the script again.

  • I only used it on Chrome, so I'm not sure if it is 100% compatible on other browsers.

  • I might occasionaly update and improve the code, so you can check back to see if there's any updates.

  • All feedback are welcome.


UPDATES:

none so far


CODE:

{
    var minmum_discount = 75
    var minimum_rating = 0
    var minimum_reviews = 0
    var reviews_per_dollar = 250
    var starting_page = 1
    var ending_page = 999
    var special_sort = true

    function load_next(){results=document.querySelector("#search_result_container");for(var a=results.querySelectorAll(".search_result_row"),b=0;b<a.length;b++){var c=0;if(a[b].querySelector(".search_review_summary")){var d=parseInt(a[b].querySelector(".search_review_summary").getAttribute("data-store-tooltip").split("%")[1].replace(/\D+/g,"")),e=parseInt(a[b].querySelector(".search_review_summary").getAttribute("data-store-tooltip").split("%")[0].replace(/\D+/g,""));e<minimum_rating||a[b].className.indexOf("ds_owned")>-1||minmum_discount>0&&parseInt(a[b].querySelector(".search_discount.responsive_secondrow").textContent)>-minmum_discount||(c=a[b].querySelector(".search_price").className.indexOf("discounted")>-1?parseFloat(a[b].querySelector(".search_price").textContent.split("$")[2]):parseFloat(a[b].querySelector(".search_price").textContent),c&&(minimum_reviews>d||reviews_per_dollar*c>d||old_results.push([a[b].cloneNode(!0),d/c])))}}if(current_page==number_of_pages){if(observer.disconnect(),document.querySelector("#search_result_container>div:nth-child(2)").innerHTML="",special_sort)for(var f=0;f<old_results.length;f++)for(var g=0;g<old_results.length&&f!=g;g++)if(old_results[f][1]>old_results[g][1]){var h=old_results[g];old_results[g]=old_results[f],old_results[f]=h}for(var i=0;i<old_results.length;i++)document.querySelector("#search_result_container>div:nth-child(2)").append(old_results[i][0]);return void alert("Filtering has finished, praise the almighty Necroblight.")}current_page++,FillFormFromNavigation(href+"&page="+current_page,!0)}"/search/"!=window.location.pathname&&(alert("You must be in search page to use the script, you'll be redirected momentarly, and then use the script again"),window.location="http://store.steampowered.com/search/");var href=location.search;href&&(href=href.substring(1));var number_of_pages=parseInt(document.querySelector(".search_pagination_right>a:nth-child(3)").textContent);number_of_pages=ending_page<number_of_pages?ending_page:number_of_pages;var current_page=starting_page>0?starting_page:1;current_page>number_of_pages&&alert("put an actual starting page");var old_results=[],results=document.querySelector("#search_result_container"),observer=new MutationObserver(load_next);if(current_page>number_of_pages)alert("put an actual starting page");else{var observer=new MutationObserver(load_next);observer.observe(results.parentNode,{subTree:!0,childList:!0}),FillFormFromNavigation(href+"&page="+current_page,!0)}
}
7 years ago

Comment has been collapsed.

And yet you managed to shut down the steam :D

7 years ago
Permalink

Comment has been collapsed.

I think there were some people who actually believed that (in a different thread).

7 years ago
Permalink

Comment has been collapsed.

OMG :D :D

7 years ago
Permalink

Comment has been collapsed.

that's great
I always wondered why you can't sort by discount

7 years ago
Permalink

Comment has been collapsed.

I tried the script out since I was looking for something like this. I use google chrome (dutch language). After the scanning is done, the results are empty though. I can make a screenshot of it if you like or maybe you need something else?

7 years ago*
Permalink

Comment has been collapsed.

I actually made the extension; https://drive.google.com/file/d/0B73sIp-o-zdZYm1SSEJpRk10VEE/view

If you still see problem, go to console, and make a screenshot of the error.

7 years ago
Permalink

Comment has been collapsed.

There is no error in the console.
Once it completes and sends a message to inform the user, there are no games in the list.

Great work btw. I really find this idea useful.

7 years ago
Permalink

Comment has been collapsed.

7 years ago
Permalink

Comment has been collapsed.

I used the extension now but has the same problem as before and as Srki94 described. After the message to inform the user there are no results. I cleared the console before the search and after the search was done I see this (see image). I don't know if it has something to do with it. For this one I test it with only 5 pages of searching, to save time.

(https://imgur.com/a/e9HSP)

7 years ago*
Permalink

Comment has been collapsed.

7 years ago
Permalink

Comment has been collapsed.

I just use CheapShark

7 years ago
Permalink

Comment has been collapsed.

Thanks that site looks pretty good ;)

7 years ago
Permalink

Comment has been collapsed.

But what they do is very different.

7 years ago
Permalink

Comment has been collapsed.

I just open my wishlist D:

Have a bump tho !

7 years ago
Permalink

Comment has been collapsed.

With the new updates it works on Chrome for me. Very nice tool!

7 years ago
Permalink

Comment has been collapsed.

Sign in through Steam to add a comment.