I've spend wayyyyy to long trying to figure out how to launch different version of World of Warcraft in Playnite which I could have used to something useful. However, because I didn't want that time to be total waste I thought I'll post it on Reddit so at least other people can see this.. other topics on this issue have been around for years but none of them have proper solutions IMO. So.. here we go...
By default, the Playnite Battle.net library plugin lumps every single version of World of Warcraft into one giant master entry. If you’re bouncing between WoW: Forever and WoW Classic (Anniversary) and actually want Playnite to track your hours separately without forcing you to manually type in your password/authenticator every time, you have to bypass the Battle.net plugin and set up manual entries with a custom PowerShell tracking loop.
This sounds complicated but if you give it 15 min it should work.
After a bunch of trial and error (and dealing with Battle.net’s parse errors bs), here is the setup that worked for me.
Couple of things, this is tested on a Windows 11 PC and using the default installation folders. Some sort of basic computer knowledge is assumed. If you can't figure it out, run this thread through your favourite AI tool and use it as starting prompt.
Step 1: Create Separate Manual Entries & Grab Metadata
Do not use the Battle.net extension for these entries.
In Playnite, press Ctrl + N (Add Game -> Manually) to create two separate entries: one for World of Warcraft: Forever and one for World of Warcraft Classic.
- To easily pull the right cover art and metadata from IGDB, click Download Metadata in the Edit window and search using the exact IGDB IDs:
- WoW Forever:
417650
- WoW Classic / Anniversary:
75379
- Under the Installation tab, make sure the Installed checkbox is ticked for both.
- You have to search for a game icon yourself, I had some luck with searching for "World of Warcraft: Forever icon" in the Media tab and click "transparent" at the bottom. Also make sure to select something around 500x500 or less. I got errors when using anything above that.
Step 2: Set the Specific Installation Folders
Playnite needs to know the exact subfolder for each version so it knows which .exe to watch. Go to the Installation tab for each game and set the Installation Folder path:
- WoW Forever (Beta):
C:\Program Files (x86)\World of Warcraft_classic_beta_
- WoW Classic (Anniversary):
C:\Program Files (x86)\World of Warcraft_anniversary_ (or _classic_ / _classic_era_ depending on which flavour you play)
Step 3: Set Up the PowerShell Tracking Script
Go to the Actions tab, click Add Action, check the Play action box, and change Type to Script.
- For WoW Forever: Use WoWF in the first line. This is the below example.
- For WoW Classic (Anniversary): Replace WoWF with WoWC in the first line
Start-Process -FilePath "C:\Program Files (x86)\Battle.net\Battle.net.exe" -ArgumentList '--exec="launch WoWF"'
$elapsed = 0
while ($elapsed -lt 60) {
$proc = Get-Process -Name "Wow", "WowClassic", "WowB" -ErrorAction SilentlyContinue | Where-Object { $_.Path -like "$InstallDir*" }
if ($proc) { break }
Start-Sleep -Seconds 2
$elapsed += 2
}
if ($proc) {
$proc.WaitForExit()
}
Crucial Things to Know (How It Works & Limitations)
- You STILL have to select the right version in the Battle.net dropdown: There is currently no workaround for how the Battle.net launcher handles sub-versions. Clicking Play in Playnite will pop open Battle.net, and you still have to make sure the dropdown above the blue Play button is set to the version you want before clicking Play inside Battle.net. You have 60 seconds after clicking Play in Playnite to launch the game.
- Don't mix up your launches! If you click Play on WoW Forever inside Playnite, and then decide to launch WoW Classic in the Battle.net launcher instead, nothing will be tracked!