User:Gabrielwoj/DDS Cache Finder (Cygwin Batch Script)

This is a power-user guide, be careful on what commands you run, I recommend you watching the entire thing first before doing anything. You may need Administrator privileges in order to be able to modify files on. If you're not an administrator, try copying the files temporarily on a new folder, and change the Cygwin commands to accommodate these new folder locations.

Required programs
Bash scripting terminal
 * Cygwin: https://cygwin.com/install.html (Choose either the 32-bit or 64-bit installer &mdash; the one that fits your machines architecture. I'm using the 64-bits version). We will be using Cygwin in order to run Linux-based commands that helps finding DDS files for the portrait images, because this program is an emulator, it's most likely that this process may also be able to achieve by using a Linux machine;

DDS file viewer
 * DDSView: A program capable of opening and/or converting DDS files. We will be using DDSVview by Amnoid on this tutorial: http://www.amnoid.de/ddsview/download.html . This will be used to quick-review DDS images, and then save them as PNG files;

Batch image 
 * InfranView: http://www.irfanview.com/download_sites.htm (32-bit) or http://www.irfanview.com/64bit.htm (64-bit), on the first link, I recommend download the one directly from their website, scroll down until you see "Alternative IrfanView download site (second click on the white page required):". This program will be used to split the portrait sheets (which in sheets, each portrait has 128×128 of size and there 6 portraits per row and column, being then 6x6).
 * ImageMagick: (Optional) - http://www.imagemagick.org, You can run the following script co batch convert all the *.dds files into *.png files: Convert DDS to PNG using linux command line (SuperUser).


 * DupeGuru or DupeGuru Picture Edition: (Optional) - This program lets you find exact copies of the files and then mark them for deletion or move to older folders. This can useful for future updates of the game, for instance, after extracting the first batch of things and finding what you need, you can move them all to a folder, later on, when you want to find the new portraits from a recent update, you'll get the old ones again when running the Cygwin script, so you can use this program to eliminate all duplicate files and just see what's new. The Picture Edition has a system to detect similar images, but I recommend downloading the standard version because we will be dealing with exact match files (100% to 100%), so Picture Edition may not be recommended here, to avoid mistakes made by this version. Development for DupeGuru has ended for Windows, but it still works just fine for this tutorial: https://www.hardcoded.net/dupeguru/ (Choose 32-bit or 64-bit).

What you need to do
Launch Heroes of the Storm Open Heroes of the Storm, this is required because the portraits are downloaded when you open the game and so on, they aren't located in the game Installation folder, instead, they're downloaded from Blizzard's cache, I recommend checking the Portrait section on the Collection tab, just in case;

Locate cache files Follow the cygwin commands like in the video and how it's below. Here's the scripts/codes I've used on the video, in order:
 * 1) This will open this folder, which will be the folder necessary to run the program on the second item).


 * 1) This is the script that finds the Header DDS file, and copies any file with the word "DDS" to "FilesWithDDS" folder. You will also need to create it if you don't have it yet, this is case-sensitive).


 * 1) This will open the "FilesWithDDS" folder, make sure to not forget this one, don't make the same mistake as I did!)


 * 1) This will add the ".dds" extension to all files in the folder).

Convert to PNG After completing the Cygwin process, you will need perform these additional steps. Now you have only the new DDS files, open them with DDSView and keep pressing space to go to the next file. If you find a new portrait along the mix, press S, and save as PNG, organize if you feel like doing so.


 * 1) Open the new PNG file with InfranView, and split the image as shown in the video;
 * 2) Now you have the entire image sheet with 152×152 portrait tiles. (This is the maximum size, when playing the game on a higher resolution, the portraits are simply upscaled, so 152×152 are the true and maximum size that the server sends to you, sometimes, the Heroes of the Storm website may have higher resolution portrait images that comes from an Update or something, but the ones in game are all 152×152)
 * 3) Have fun with them. You can use them as avatars (like Steam, Youtube, etc), you can use this to help the Heroes of the Storm Wiki Gamepedia or for your website, and so on. Just a heads up, Blizzard owns these images, so, don't make anything risky.