This repository contains various useful Greasemonkey scripts that I use to help my editing on Dota 2 Liquipedia.
Please note that I'm not a JavaScript developer by trade (I predominantly work in Java), so please take that into account.
These scripts are Greasemonkey scripts, that inject JavaScript into pages to run custom scripts. This therefore requires Firefox and the Greasemonkey extension.
This may work with Google Chrome and Tampermonkey/Violentmonkey, but this is untested. If using Google Chrome, Tampermonkey requires Developer Mode to be enabled, whilst Violentmonkey requires a flag to disable Manifest V2 extensions to be disabled.
After installing Firefox and Greasemonkey, go to the Extensions menu (jigsaw icon) > Greasemonkey > New user script > Copy-paste whichever script you want. Make sure each script is in its own file.
At some point during 2024, Dotabuff stopped using its defunct TrackDota site. However, this means that if you click the blue circle above, you no longer go to a page with a URL with the match ID. This makes getting the match ID a pain.
This script changes this so that if you click the blue circle, it copies the match ID to the clipboard. It changes the circle to a tick to confirm this occurred.
Sick of trying to figure out who is standing-in? Or looking for smurfs? This script displays the player IDs (ID32, ID64 and ID) beneath each player's name. Also works for non-ticketed matches.
Since Dota players are inconvenient, and often choose completely different IDs for FACEIT, sometimes, we would like to easily see the Steam ID for a player on FACEIT. This script adds the IDs (ID32, ID64 and ID) to the player's profile.
Except... FACEIT's site is complete garbage, with obfuscated classes and dynamic HTML. If you ever navigate to a player's profile (e.g. tournament > bracket > team > player > expand their profile), you will need to refresh the page in order to view it.
There is probably a way to do this automatically, but I couldn't figure it out.
This shows the player IDs on a player's profile page on ChallengerMode.
Sometimes, the Valve API goes down (as of October 2024, it has been down since the 7.37 release). Liquipedia has processing via SAP, but this does not work for all matches (in particular, smaller tournaments aren't in scope). Dotabuff, however, is more resilient, as it parses replays. This script will add links to the match screen to export the match from Dotabuff to Liquipedia format to your clipboard.
Note the order should be what is on Liquipedia (e.g. in FISSURE Universe Episode 2, the Grand Final is Entity (top) vs. OG (bottom), so select Entity vs. OG).
It also exports the map number (|map1=
/|map2=
/etc.); however, this is reliant on both teams selecting the same team consistently (this is not always the case). As a result, be sure to check the map number before submitting changes. You can also preview your edits and check the warning box at the top to see if there are any duplicate parameters - which indicate that a duplicate map number was used within a series.
This script adds a link to export a tweet to a Liquipedia ref, copying it to the clipboard. Because Twitter renders the page dynamically, you will have to refresh the page on the tweet page to add this link.
Note that this is not perfect. You may need to strip off emojis and tweak some things. You may need to add additional parameters like accessdate
and language
. But it is a start.
If you need to contact me, it is probably best if you leave me a message on my Liquipedia Dota 2 talk page.
You can also DM me on Discord (x42bn6), or email me at x42bn6 [at] gmail [dot] com.