Skip to content

Instantly share code, notes, and snippets.

@xPaw
Last active April 22, 2026 02:24
Show Gist options
  • Select an option

  • Save xPaw/73f8ae2031b4e528abf7 to your computer and use it in GitHub Desktop.

Select an option

Save xPaw/73f8ae2031b4e528abf7 to your computer and use it in GitHub Desktop.
⚠ This script has been integrated into SteamDB browser extension!
// ==UserScript==
// @name Steam Queue Auto Discoverer
// @description Discover the Steam queue three times to get the sale cards
// @version 2.3.0
// @namespace https://gist.github.com/xPaw/73f8ae2031b4e528abf7
// @icon https://store.steampowered.com/favicon.ico
// @match https://store.steampowered.com/explore*
// @grant none
// ==/UserScript==
var DiscoveryQueueModal, GenerateQueue = function( queueNumber )
{
if( DiscoveryQueueModal )
{
DiscoveryQueueModal.Dismiss();
}
DiscoveryQueueModal = ShowBlockingWaitDialog( 'Generating the queue...', 'Generating new discovery queue #' + ++queueNumber );
jQuery.post( 'https://store.steampowered.com/explore/generatenewdiscoveryqueue', { sessionid: g_sessionID, queuetype: 0 } ).done( function( data )
{
var requests = [], done = 0, errorShown;
for( var i = 0; i < data.queue.length; i++ )
{
var request = jQuery.post( 'https://store.steampowered.com/app/10', { appid_to_clear_from_queue: data.queue[ i ], sessionid: g_sessionID } );
request.done( function()
{
if( errorShown )
{
return;
}
DiscoveryQueueModal.Dismiss();
DiscoveryQueueModal = ShowBlockingWaitDialog( 'Exploring the queue...', 'Request ' + ++done + ' of ' + data.queue.length );
} );
request.fail( function()
{
if( errorShown )
{
return;
}
errorShown = true;
DiscoveryQueueModal.Dismiss();
DiscoveryQueueModal = ShowBlockingWaitDialog( 'Error', 'Failed to clear queue item #' + ++done + '. Will try again soon.' );
} );
requests.push( request );
}
var callback = function()
{
DiscoveryQueueModal.Dismiss();
if( queueNumber < 3 )
{
GenerateQueue( queueNumber );
}
else
{
DiscoveryQueueModal = ShowConfirmDialog( 'Done', 'Queue has been explored ' + queueNumber + ' times', 'Reload the page' ).done( function() {
ShowBlockingWaitDialog( 'Reloading the page' );
window.location.reload();
});
}
};
jQuery.when.apply( jQuery, requests ).then( callback, callback );
} ).fail( function()
{
setTimeout( () => GenerateQueue( queueNumber - 1 ), 1000 );
DiscoveryQueueModal.Dismiss();
DiscoveryQueueModal = ShowBlockingWaitDialog( 'Error', 'Failed to generate new queue #' + queueNumber + '. Trying again in a second.' );
} );
};
var buttonContainer = document.createElement( 'div' );
buttonContainer.className = 'discovery_queue_customize_ctn';
buttonContainer.innerHTML = '<div class="btnv6_blue_hoverfade btn_medium" id="js-cheat-queue"><span>Cheat the queue</span></div><span>Discover the queue three times to get the sale cards</span>';
var container = document.querySelector( '.discovery_queue_customize_ctn' );
container.parentNode.insertBefore( buttonContainer, container );
var button = document.getElementById( 'js-cheat-queue' );
button.addEventListener( 'click', function( )
{
GenerateQueue( 0 );
container.parentNode.removeChild( buttonContainer );
}, false );
@Pilaba

Pilaba commented Jun 30, 2016

Copy link
Copy Markdown

you are awesome m8

@alpasy

alpasy commented Dec 23, 2016

Copy link
Copy Markdown

doesn't work this time?

Uncaught TypeError: Cannot read property 'parentNode' of null
at :76:10

@longlyduc

Copy link
Copy Markdown

still work like a charm, thankyou :)

@mig0sd

mig0sd commented Jun 23, 2017

Copy link
Copy Markdown

Is there a way to install into tampermonkey without manually inserting (pasting) the JS into TM? Usually going to the raw link works.

@aveao

aveao commented Jun 24, 2017

Copy link
Copy Markdown

@mig0sd (and @xPaw) it'd automatically install if the extension was .user.js and not .js

@user

user commented Dec 21, 2017

Copy link
Copy Markdown

Thanks! 👍

@Enissay

Enissay commented Dec 21, 2017

Copy link
Copy Markdown

Seems not to work in FF. Clicking on the button does nothing.
It works fine in chrome though :-/

@chucky515

Copy link
Copy Markdown

nice.... thx!!!

@MatyiFKBT

Copy link
Copy Markdown

thanks a lot! works perfectly

@errorproxy

Copy link
Copy Markdown

How do I make this run on a page automatically?

@testman42

Copy link
Copy Markdown

Doesn't seem to be working any more.

@fuomag9

fuomag9 commented Jun 21, 2018

Copy link
Copy Markdown

For me it doesn't work, even tried with a clean browser (Chrome and Firefox)

@BrunoKrugel

Copy link
Copy Markdown

still working for me

@wankio

wankio commented Jun 22, 2018

Copy link
Copy Markdown

not working :((((((((((((((( tampermonkey/greasemonkey

@wankio

wankio commented Jun 22, 2018

Copy link
Copy Markdown

@paolareyes

Copy link
Copy Markdown

Still working for me, gg

@hill123455

Copy link
Copy Markdown

Ya still working, <3

@defaltadmin

Copy link
Copy Markdown

Great code! Is it possible to include a line at the top that shows instructions? I'm not familiar with coding so it took me a while to piece together the information from comments from here and reddit. Just 3 lines of instructions such as

  1. Be on the Explore page in browser
  2. Press Ctrl + Shift + J
  3. Paste this code and hit enter
  4. The button "Start queue" will change to "Cheat queue". Click it.

That's all.

@RudeySH

RudeySH commented Sep 28, 2019

Copy link
Copy Markdown

Is there any way to disable this feature? Just like there are many options to disable other features, I'd like to see an option to disable this.

@leoffx

leoffx commented Dec 25, 2019

Copy link
Copy Markdown

The link to the Explore page is https://store.steampowered.com/explore/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment