A Tampermonkey/Violentmonkey userscript that automates interactions on Discord, specifically designed for fast queue joining and automatic dismissal of messages.
- Automatically detects and clicks the "Join Queue" button on Discord
- Operates at 1000 CPS (clicks per second) for maximum speed
- Uses a
setTimeout-based loop to continuously fire clicks as fast as possible
- Automatically detects and clicks "Dismiss message" buttons as they appear
- Uses a
MutationObserverto watch for DOM changes in real-time - Includes a retry mechanism (50ms delay) to handle React's rendering lifecycle
- Watches the app mount point for any newly added dismiss buttons
-
Install a userscript manager extension:
- Tampermonkey (Chrome, Firefox, Edge, Safari)
- Violentmonkey (Chrome, Firefox)
-
Add the script (
q-sniper.user.js) to your userscript manager, either copy paste it or import it. -
Navigate to the testing/queue channel (
https://discord.com/channels/<your waitlist channel>) and keep it open in a tab, I recommend firefox. You can use this to snipe multiple q channels at the same time. -
The script will automatically activate and join queue for you when it opens.
To ensure the script continues clicking even when the tab is in the background, you need to adjust Firefox's throttling settings:
- Type
about:configinto the Firefox address bar and press Enter - Accept the warning if prompted
- Search for and modify the following preferences:
| Preference | Value | Description |
|---|---|---|
dom.timeout.throttle_max_delay |
1 |
Maximum delay for throttled timeouts in background tabs |
dom.min_background_timeout_value |
1 |
Minimum timeout value for background tabs |
- Set both values to
1to minimize background throttling
Note: If these preferences are already set to
1, no changes are needed. The script should now continuously click the button even when the tab is not active.
Script Loads
├── Join Queue Spammer
│ ├── Check cached button (if still connected → use it)
│ ├── If not cached → Search for 'Join Queue' button (using textContent)
│ ├── If found → Click it & cache reference
│ └── Repeat at 1000 CPS
│
└── Dismiss Message Observer
├── MutationObserver watches DOM
├── New node added?
│ ├── Contains 'Dismiss message'? → Click it
│ └── Retry after 50ms (for React rendering)
└── Continue watching
| Parameter | Value | Description |
|---|---|---|
targetCPS |
1000 | Target clicks per second for the Join Queue loop |
interval |
1ms | Calculated as 1000 / targetCPS |
retryDelay |
50ms | Delay for retrying dismiss button clicks |
| Field | Value |
|---|---|
| Name | Lyns Q Sniper |
| Version | 1.3 |
| Namespace | coord_dom_discord |
| Match Pattern | https://discord.com/channels/* |
This script automates user interactions on Discord. Use at your own risk. Automated behavior may violate Discord's Terms of Service and could result in account restrictions. The author is not responsible for any consequences arising from the use of this script.
This script is provided as-is without any warranty.