Skip to content

Instantly share code, notes, and snippets.

@matthamil
Last active December 10, 2022 21:41
Show Gist options
  • Save matthamil/800e1cb60b68f3ee43ace3534cf71987 to your computer and use it in GitHub Desktop.
Save matthamil/800e1cb60b68f3ee43ace3534cf71987 to your computer and use it in GitHub Desktop.
Syncing WoW Addons across multiple computers

If you play WoW on multiple computers and have addons installed on one of them, you probably wish you could have the same addons installed on all of your machines. This is a guide to sync addons across multiple machines (and preserve their settings, too!).

Prerequisites

You will need the following:

  1. Google Account
  2. Google Drive storage space equal or greater than the size of your World of Warcraft\_classic_\Interface\AddOns directory.
  3. Addons you have already downloaded in your World of Warcraft\_classic_\Interface\AddOns directory.

Tools

Download rclone.

This is the CLI tool you will use to sync your Addons folder to Google Drive from your Main Computer and also keep the Addons up to date on your other computers.

Creating a remote for rclone

Unzip the rclone .zip folder you downloaded. The .zip should have a name similar to rclone-v1.50.1-windows-amd64.zip. You can unzip it by double-clicking the .zip and clicking "Extract all".

A "Select a Destination and Extract Files" prompt should appear. Click "Extract".

A new Explorer window will appear with the extracted folder. Double-click on the folder. The folder should have a name similar to rclone-v1.50.1-windows-amd64.

Click at the end of the navigation bar under the ribbon containing controls for Explorer. The navigation bar should look like:

> This PC > Downloads > rclone-v1.50.1-windows-amd64 > rclone-v1.50.1-windows-amd64

When you click at the end of the navigation bar, the full file path should display. It should look like:

C:\Users\YOURUSER\Downloads\rclone-v1.50.1-windows-amd64\rclone-v1.50.1-windows-amd64

Copy this path to your clipboard.

Click on the Windows button and search for "PowerShell". Right click "Windows PowerShell" and run the program as an administrator. If you are prompted to confirm running PowerShell as an administrator, select "Yes".

In PowerShell, type cd followed by a space, then right-click in the PowerShell window to paste the path of the rclone executable. This should look like:

cd C:\Users\YOURUSER\Downloads\rclone-v1.50.1-windows-amd64\rclone-v1.50.1-windows-amd64

In your browser, open Google Drive and create a new folder. Name it WoW Addons or whatever you like. Navigate into the folder. The URL should look something like https://drive.google.com/drive/u/0/folders/5zR13jaQ6aUSiU3bDDclwtfOC2xTm2dfq. The random characters after /folders/ at the end is the Folder ID. This will be the root_folder_id when you run rclone config. Don't close this browser tab since you will need this Folder ID while configuring rclone on this and any other computers you want to sync addons with.

Follow the steps in the Making your own client_id section. You will need the client_id and client_secret you create in these steps for the rclone config in the next step. Do not close this window.

Back in PowerShell, run rclone and set up a remote config:

.\rclone.exe config

💡 Read the rclone docs for Google Drive if you run into issues.

Follow the prompts to create a new remote in Google Drive.

Type n and press enter to create a New remote.

Type remote to name your new remote as "remote" and press enter.

Select Google Drive in the list of cloud storage providers.

When prompted for a "Google Application Client Id", go back to your browser window and copy the client_id and paste it into PowerShell by right-clicking.

Do the same for the client_secret.

When prompted for the ID of the root folder, copy and paste the Folder ID of the Google Drive folder you want to use as the root folder for your Addons. This should be the new folder you created in Google Drive. The random characters past the /folder/ in the folder URL (e.g. https://drive.google.com/drive/u/0/folders/5zR13jaQ6aUSiU3bDDclwtfOC2xTm2dfq) is the value you want to copy and paste into PowerShell.

Press Enter to skip the Service Account Credentials JSON file path.

Type y to use the auto config and press enter.

A browser window should open for you to allow your Google account access to the rclone project you just created. You will need to authenticate via your Google Account.

You should not need to set up the folder as a team drive, so type "n" and press enter.

When prompted if the config is OK, type "y" and hit enter.

Uploading Addons to Google Drive

In Windows Explorer, navigate to your World of Warcraft Interface folder. This should be something like D:\World of Warcraft\World of Warcraft\_classic_\Interface. Your install path will likely differ. You will want to find the _classic_\Interface folder and copy its path.

Inside the _classic_\Interface folder, you should have an AddOns folder. Right-click on the AddOns folder and select "Send to" and choose "Compressed (zipped) folder". This will create an AddOns.zip inside your Interface folder. We will be zipping the addons since it is much faster to upload a single file to Google Drive than multiple small files.

In PowerShell, run the following:

.\rclone sync "D:\YOURWOWPATH\World of Warcraft\_classic_\Interface\AddOns.zip" remote: --progress --create-empty-src-dirs

This will upload the AddOns.zip to Google Drive. To verify that the upload worked, go to Google Drive in your browser and open the folder you created earlier. You should see an AddOns.zip inside it.

Automate the Upload to Google Drive

You can create a script that will run the commands for you on your Main Computer. Create a upload_addons.ps1 file and copy/paste the following:

# the path below should be the folder where your rclone.exe lives
cd C:\Users\YOURUSER\Downloads\rclone-v1.50.1-windows-amd64\rclone-v1.50.1-windows-amd64

Compress-Archive -Path "C:\PATH_TO_WOW\World of Warcraft\_classic_\Interface\AddOns" -DestinationPath "C:\PATH_TO_WOW\World of Warcraft\_classic_\Interface\AddOns.zip" -Force

.\rclone sync "C:\PATH_TO_WOW\World of Warcraft\_classic_\Interface\AddOns.zip" remote: --progress --create-empty-src-dirs

Whenever you want to upload your AddOns to Google Drive, you can right-click this file and select "Run with PowerShell".

Downloading Addons from Google Drive

On another computer, install rclone and follow the same steps above to create an rclone remote with rclone config. You do not need to create a new Google Drive folder or client_id/client_secret as you will be reusing these values.

To download your addons on another computer, run:

rclone sync remote: "C:PATH\TO\WOW\World of Warcraft\_classic_\Interface" --progress --create-empty-src-dirs

This should download the AddOns.zip file inside your _classic_\Interface directory. You should extract the addons into an AddOns directory within the same folder.

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