Is RegisterDirectSongDirectory.exe in the root of the DirectSong
archive, or is it in the zip archive containing the .wma files?
The .exe is in the zip archive containing the .wma.
Also, do the .wma files need to be unpacked/present when you execute
RegisterDirectSongDirectory.exe? Or is it just 'registering the
directory location', and the .wma files can be unpacked into that
directory after running the
RegisterDirectSongDirectory.exe helper?
The .wma files do not need to be present while executing the RegisterDirectSongDirectory.exe, this executable simply creates a registry key value for Guild Wars that gives it the location of the root directory to look for the wma files at runtime. The executable is inside the WMA zip, so you need to unpack it first in order to get access to it.
It does not tell Guild Wars anything else, all the necessary files are listed locally and it expects to find them at runtime. If it does not find the file, it skips it.
..this, will be the real problem. If the DirectSong download is a
.zip archive, and it contains one (or more) other .zip archives
within it that also need to be extracted, that is trouble, as the
crosstie system will only undertake a decompression operation on 1
archive - the 'parent' archive....
The DirectSong download is a .zip. The internal WMA directory is another zip file. Also in addition, the file size of each of these music packs (including the wma and mp3 together) is a total of ~400 MB uncompressed.
Here is a breakdown of the DirectSong directory:
DirectSong is an e-commerce site where you make purchases for music.
After you make your appropriate purchase, your purchase/download comes in one of the following zips:
GuildWarsPropheciesSoundtrack.zip
GuildWarsNightfallSoundtrack.zip
GuildWarsEyeoftheNorthSoundtrack.zip
GuildWarsFactionsSoundtrack.zip
Potential Problem:
If the user has Safari, it automatically unzips your file when you have finished downloading it (so you may have two different kinds of files to expect, either a directory or a zip) I'm not trying to make your life miserable 😭...
Listing of Prophecies Sound Zip:
01 Opening Theme.mp3
.... ( a bunch of mp3 files)
32 Beyond the Ocean(Bonus).mp3
Guild Wars Special Edition Soundtrack WMA.zip <----- This is the zip with the executable and the wma files
Guild Wars Special Edition Soundtrack.jpg
Read Me First.rtf
Note: All the DirectSong downloads come with the necessary files and all end with WMA.zip and may not match the "name of music pack WMA.zip" stereo type, such as I have just shown with the prophecies soundtrack (a different WMA.zip name).
If you extract the Guild Wars Special Edition Soundtrack WMA.zip file, you obtain a directory titled "DirectSong".
Here is a listing of DirectSong:
DirectoryStructure.JPG // Sample Structure of what this directory is supposed to look like with multiple sound packs
Guild Wars DirectSong Music Read Me First.rtf // Instructions on how to setup the music
Guild Wars Special Edition Soundtrack // This is the music expansion specific directory that contains all the name casted wma files
GuildWars.ds // This file contains a listing of all music expansion pack files and where they should play in-game, the game will skip over songs it cannot find (such as a music pack you do not have)
RegisterDirectSongDirectory.exe // This is the file that registers the directory to tell guild wars to look here
ds_GuildWars.dll // A bunch of unreadable byte code (specific to the user, which I believe to prevent piracy and is identical to all the other music expansion downloads, at least for me)
Here is a cat of Guild Wars DirectSong Music Read Me First.rtf, this should answer all the necessary questions:
Guild Wars DirectSong Music
READ ME FIRST
Directory Structure
1) You need to have a directory named DirectSong.
2) In the DirectSong directory, you need to have the following three files.
ds_GuildWars.dll and GuildWars.ds and RegisterDirectSongDirectory.exe
3) Guild Wars needs to know where the audio files are located on your computer. This is done by storing some information in your computers registry file. After you have created your DirectSong directory, you can copy the RegisterDirectSongDirectory.exe into the DirectSong directory and run it. This will create the required registry keys. *Note: If you are running a 64 Bit Operating System, you will have to Right Click on the RegisterDirectSongDirectory.exe and choose the option Run As Administrator for the correct update to your registry to be applied. More information is below in the Registry Keys section.
4) For each Guild Wars Soundtrack that you own, you need to have a sub-directory within the DirectSong directory and that folder must be named exactly like the examples given below. This sub-directory will contain all the music files for that soundtrack.
A visual example of the directory structure can be found in the file DirectoryStructure.JPG.
(parent directory)
DirectSong
(sub-directories inside the DirectSong directory)
Guild Wars Battle Pak One
Guild Wars Eye of the North Original Soundtrack
Guild Wars Factions Collector's Edition
Guild Wars Factions Original Soundtrack
Guild Wars Nightfall Collector's Edition
Guild Wars Nightfall Original Soundtrack
Guild Wars Special Edition Soundtrack
Sorrow's Furnace Mini-Pak
How it works
The Guild Wars game ships with the music in the game. If you have obtained music from DirectSong, what you have is either a higher fidelity version of the same music, or you have additional music that wasn't shipped with the game. This is the case with many of the Collector's Editions.
When Guild Wars starts up, it first determines if you have any DirectSong music files on your PC. It does this by reading the information from your computers registry. If the registry information is correct, Guild Wars now knows where your DirectSong folder is. One critical thing Guild Wars knows is where to find the ds_GuildWars.dll file is located since this file is required to play back the DirectSong version of a song.
While playing the game, should you change zones or should you be in a location long enough for the music to swap to another song Guild Wars looks to see if the song is available as the DirectSong version. If the DirectSong music file is found on your computer it will load and play that version instead of version which is embedded in the game.
This list of music files to played in the different locations in the game is contained in the file, GuildWars.ds.
Registry Keys
The DirectSong Registry Keys are as follows.
For a Windows 32 Bit Operating System, you will find the key at this location.
HKEY_LOCAL_MACHINE\SOFTWARE\DirectSong
The subkey is titled MusicPath, and it should indicate the location of your DirectSong directory on your computer.
If you are using a 64bit Windows Operation Sytem the keys woul look like this
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\DirectSong