[Guide] The (Hopefully) Definitive TrenShadow Guide (2.00)

Feb 24, 2004
6,370
1,299
113
The (Hopefully) Definitive TrenShadow Guide (2.00)

Updated TrenShadow Guide (2.00)


This guide was originally written by mattinm. I am updating it to help demonstrate how to get TrenShadow to work with any installation of D2. I have left the original guide intact for the most part, and have added information for those who have no access to physical discs.

This guide is intended as a consolidation of the TrenShadow installation and usage process, as well as explain breifly how TrenShadow works. If you notice anything missing or wrong, don't hesitate to post/PM me about it, and I'll attempt to make the appropriate change. Hopefully this guide can help a few people time-travel!

Table of Contents
1. How does TrenShadow work?
2. Where can I get TrenShadow?
3. Installing TrenShadow
3a.) Normal installation
3b.) Converting from multiple installation points
4.) Creating your own TrenShadow version folder
4a.) Creating a TrenShadow Folder for 1.14d
5. Getting TrenShadow to work for digital installations
6. Running multiple instances
7. Important Notes for Time Travelling
8. TrenShadow potention problems
9. Frequently Asked Questions
9a.) Can I use pre-LoD folders?
9b.) Can I create classic characters in older LoD versions?
9c.) Can I run mods (e.g. RWM/RRM in 1.12a) with TrenShadow?
9d.) Are pre-1.12a versions run-able with the Blizzard Downloadable installer?
9e.) Is it necessary to copy the files for the Glide wrapper into each version folder in order to have them run in Glide mode?
10. Feedback

1. How does TrenShadow work?


TrenShadow is a relatively simple Visual Basic script that first backs up the current game files (Game.exe, Patch_D2.mpq, and all .dll files). It then copies over those same files from the TrenShadow version. Once the files are replaced, TrenShadow changes a registry entry to point all Diablo II save files to the version folder instead of the main installation folder (e.g. Diablo II/1.09b/save instead of Diablo II/save).

Once the last instance of TrenShadow is closed, all settings are reverted. This means that you can run your current version as you normally would.

2. Where can I get TrenShadow

Personal Packages

I have modified the TrenShadow script slightly (with the blessing of TrenShadow himself) to both increase functionality, decrease the risk of corrupting your main Diablo II installation, simplify running multiple instances, and allow the user the choice of not displaying the default popups.

You can find all my repackaged versions (and the updated LaunchModGame.vbs script) in the 'Community & Links' section of the forum: here.

3. Installing TrenShadow

3a.) Normal Installation
Windows Vista/7/8/10 Compatibility Note

I recommend changing your main installation Game.exe (e.g. Diablo II/Game.exe) compatibility settings as shown in this pic:
1622493600959.png
I've ran into missing .dll and visual issues when running older patches, and these are the settings that I have found to work on four separate computers.

Download and unzip a version folder from section (2). Throughout the guide I will refer to version 1.07 for simplicity; simply replace with your downloaded version as needed.

Copy the folder into your main Diablo II installation:
1622493735801.png

Create a shortcut of LaunchModGame.vbs on your desktop:
1622493843316.png

Now, rename the shortcut (e.g. Diablo II - 1.07).

Now, right click the shortcut and select "Properties". In the "Shortcut" tab, ensure that the "Target" and "Start In" lines correctly match the location of the version folder:
1622493912957.png

You can add any Diablo II flags to the end of the "Target" line (e.g. -w -3dfx -direct -txt) as well as -noprompt to stop the TrenShadow popups.

If you want, you can also change the icon to the Diablo II icon. First, click "Change Icon...", then "Browse...", select your Diablo II.exe file, and say "OK":
1622494049561.png

Note: Running versions prior to 1.12a requires the CD to be in the drive. If nothing appears to happen when running TrenShadow, double-check the CD is in the drive, as there will be no notice as to why it didn't work. You can also use GalaXyHaXz's NoCD versions of Game.exe to run earlier versions without needing a CD. I highly recommend this option. Once you've downloaded the No-CD pack, navigate to the version you want to use, copy the Game.exe file, then paste it into the Trenshadow folder for that version, replacing the Game.exe file that is already there.
1622494540713.png
1622494845866.png 1622494871626.png
1622494907745.png

Right-click Game.exe and select Properties. In the Compatibility tab, make sure you have 'Run as Administrator' checked, as well as Compatibility Mode for Windows XP Service Pack 2 (see the first picture in section (3a))

3b.) Converting from a low-tech installation using multiple installation points
Make sure the current patch is in your working Diablo II directory (e.g. C:/Program Files/Diablo II). Download the corresponding version folder from section (2) for the version(s) you wish to run and install them as explained above.

Now, simply copy over your "save" folder(s) from the other Diablo II installation into the corresponding TrenShadow version folder(s) and all your characters should be accessible. I'd recommend testing before deleting my old installations however :p.

4. Creating your own TrenShadow folder

This should be unnecessary, as I've released all version folders above. To create your own version folder, you will need LaunchModGame.vbs and RecoverFromCrash.vbs (see section [2]).

Copy the following files, along with the two .vbs files above, from the version of Diablo II you which to replicate:
Code:
*Note: If you downloaded my folder versions, they do not contain these files,
       as the files don't appear to change between patches. Simply copy these
       from your main installation point.

binkw32.dll
Bnclient.dll
D2Client.dll
D2CMP.dll
D2Common.dll
D2DDraw.dll
D2Direct3D.dll
D2Game.dll
D2Gdi.dll
D2gfx.dll
D2Glide.dll
D2Lang.dll
D2Launch.dll
D2MCPClient.dll
D2Multi.dll
D2Net.dll
D2sound.dll
D2Win.dll
Fog.dll
Game.exe
ijl11.dll *
Storm.dll
SmackW32.dll *
Patch_D2.mpq

4a.) Creating a TrenShadow Folder for 1.14d

There are a few reasons you might want to create a TrenShadow folder for the current patch. The main reason is if you want to have access to both Battle.net and 1.14d Single Player with RWM. You'll still end up needing a separate shortcut for each one, so it's really up to you if you want to do this. If you choose to make a 1.14d folder, the only files you'll need to have in that folder are LaunchModGame.vbs and RecoverFromCrash.vbs (you can copy these from any other TrenShadow folder), as well as Game.exe and patch_d2.mpq from your base Diablo II directory (just Copy and Paste these). If you want to run RWM from this folder, make sure it's installed as ...Diablo II/1.14d/data/global/excel/Runes.txt. Make a shortcut for LaunchModGame as in section (3a), and make sure it's set up like this:
1622495684794.png
In the Target box, make sure you add in -direct -txt (otherwise RWM won't work), -noprompt (highly recommended to bypass TrenShadow's popups), -3dfx (if you use glide), and any others you wish (-w, -ns, etc). As a bonus, your screenshots will show up in the Diablo II/1.14d folder instead of Diablo II/Runewords if you go this route.

5. Getting TrenShadow to work for post-1.12a/digital installations

New to this version of the guide, you can now get TrenShadow to work with digital installations. The original problem with this was that with 1.12a onwards, some of the .MPQ files had a header added to them (I believe), and TrenShadow would see these files as corrupted, not allowing you to play older versions. If you are running with a post-1.12a/digital installation, you will just need to replace these .MPQ files with the original versions that came on the pre-1.12a discs.

The files you need are located here (yes, these have been approved): Link 1 | Link 2

Once you have downloaded them, extract them into your main Diablo II directory and replace the files that are already there. This will in no way mess up your current installation.

Another step you will need to perform is to copy over all of the .dll files from any TrenShadow folder into your base D2 directory (you don't need to replace any exisiting ones). The newer installations do not have these files, but TrenShadow needs to have these files located in your base D2 directory before it will run (as basically a verification that you have a proper installation). This will not interfere with your current installation at all, and Trenshadow won't even use them as it will use the ones located in the version folders. They only need to be there for the version switcher to run.

I also highly recommend you use the No-CD Pack to replace the Game.exe file in each of your TrenShadow version folders. This will allow you to play older versions without requiring a CD.

6. Running multiple instances
If you want to self-MP/rush in older versions, the process is pretty easy. Each of the TrenShadow expansion folders already contains a modified d2gfx.dll needed to run multiple instances. The modified files will show up as "D2gfx.dll_x", where x is the version number (1.07, 1.08, etc.) What you'll need to do is rename the default "D2gfx.dll" to something else, like "D2gfx.dll_original" and then remove the version number from the modified file so that it just says "D2gfx.dll".

For Classic D2, you'll need the modified d2gfx.dll from the 2nd post of the Communtiy & Links thread. It only has the files for 1.00 and 1.06, but based on file sizes alone the 1.00 version should also work for 1.03 and the 1.06 version should work for 1.04b - 1.06b. You'll need to rename the original d2gfx.dll file first (only if you want to keep it) before extracting the modified file into your TrenShadow folder.

7. Important Notes for Time Travelling

Make sure you understand the SPF Time Travelling Rules!

Under Rule 3.2, a very helpful table will show each patch along with which mods are allowed and which muling application is supported. ATMA is pretty much required if you want to use a muling application (although 1.10a is not supported). RWM is out as well, unless for some reason you want to play 1.10f (for charge-bug builds), but RWM also includes the 1.11 runewords as well. I have edited the RWM to remove the 1.11 runewords in case anyone actually wants to play 1.10f and have access to the ladder-only runewords. The file can be found here (and yes, it has been approved): Link 1 | Link 2

Also check out the Guides for Time Travellers

8. TrenShadow potential problems

There are a few issues that can crop up if the installation is not done properly. Here are some examples:

Improper Registry

This only occurs if you've installed the TrenShadow folders to an installation of D2 that is located somewhere other than the location you originally installed it. For example, if you originally installed D2 to C:\Program Files (x86)\Diablo II, and then at some point copied the files from here to another folder or two (for multiple installations), the TrenShadow folders must be installed under the original directory (C:\Program Files (x86)\Diablo II) or you will get a registry error when trying to run LaunchModGame.vbs. If you can't remember where the original installation is located, you can always back up your old saves (for older versions that located them in Diablo II/Save), uninstall Diablo II, delete your copied D2 folders, do a fresh installation, patch up to 1.14d, and then install the desired TrenShadow folders. You can then move any older patch save files into the TrenShadow save folder for that version (i.e. Diablo II/1.07/Save).

Missing .dll Files

This is covered in Section (5). Newer installations do not have all the .dll files that were installed with the older Diablo II discs. They're not needed, but still will need to be copied from any TrenShadow folder into your base Diablo II directory before you can run the version switcher. The files won't be used and won't interfere in any way with your regular installation. TrenShadow just needs to see that they are there before it will run.

TrenShadow does not open

The most likely culprit here is UAC settings. Make sure the Game.exe file in the TrenShadow folder you are using has the right compatibility settings set (Windows XP Service Pack 2 Compatibility mode checked and 'Run this program as an administrator' checked).

Please insert disc

You'll need to get the No-CD pack. Check the end of Section (3a).

9. Frequently Asked Questions

Q: Can I use pre-LoD folders?

A: Absolutely! In fact, I've bundled together all of them in section (2) for you consumption.

Q: Can I create classic characters in older LoD versions?
A: Yep! Simply un-tick the []Expansion setting on character creation, just as you would in the current patch. Just don't try this with an Assassin or Druid or you could be there for a while :p.

Q: Can I run mods (e.g. RWM/RRM in 1.12a) with TrenShadow?
A: Certainly! Simply copy the data folder from the mod (e.g. Runewords/data) and paste it into your version folder (e.g. Diablo II/1.12a/data). Now, make sure to add -direct -txt to the end of your shortcut and you'll be good to go!

Q: Are pre-1.12a versions run-able with the Blizzard Downloadable installer?
A: Yes! New to version 2.0 of this guide, I have discovered it is possible to run TrenShadow even if you only have a digital installation. You will, however, need to replace a few of the .MPQ files with ones that came on the physical discs (see section 5).

Q: Is it necessary to copy the files for the Glide wrapper into each version folder in order to have them run in Glide mode?
A: Nope. You only need the Glide Wrapper files to be in the main installation point (e.g. C:\Program Files\Diablo II). Because the version files are copied into this location by TrenShadow when ran, it will automatically locate the glide3x.dll, as well as the settings to use Glide.

10. Feedback
Hopefully this will help newcomers and first-time time-travellers to use multiple version of Diablo II. If there is anything unclear, simply post here or PM me and I'll be glad to clear things up.

Good luck!
 
Last edited:
Great work!

Here are two things I noticed:
  • The link in section 2 leads to the good old xenforo upgrade page.
  • The spoiler in section 3 has a "/END compatibility section" at the end, not sure if that is intended.

Furthermore it's nice that we are apparently allowed to share the original MPQs now. Which ones are you sharing exactly? If I'm not mistaken d2data.mpq, d2exp.mpq have never been changed since 1.07 except for adding that weird header. (And d2data.mpq should be the same in 1.07 as in 1.00).
As a test I compared SHA-256 checksum for 1.00 d2data.mpq and its 1.08 version and they are identical. Just out of curiosity, do you also get this checksum?
Code:
BB3835A14AA3935B2204D32DCA9E2409F51507A35679F889A97526240CE6F055
I used a 1.03 CD and downgraded with trenshadow files to 1.00 and then installed patches. Ideally that should lead to the same result as using Trenshadow. At least I hope so :D


@maxicek What happened to the MPQ fixer? I thought you agreed to allow it. That could cut down on stuff people have to download in order to time travel. The .mpqs are rather bulky with nearly 1GB to download.

If someone has a 1.12a+ d2data.mpq it would be interesting to see whether it is identical to the pre-1.12 .mpq after using the MPQ fixer.
 
  • Like
Reactions: Vildecor
Great work!

Here are two things I noticed:
  • The link in section 2 leads to the good old xenforo upgrade page.
  • The spoiler in section 3 has a "/END compatibility section" at the end, not sure if that is intended.

Thanks! Fixed the link and got rid of that confusing text in the spoiler tag.

Furthermore it's nice that we are apparently allowed to share the original MPQs now. Which ones are you sharing exactly? If I'm not mistaken d2data.mpq, d2exp.mpq have never been changed since 1.07 except for adding that weird header. (And d2data.mpq should be the same in 1.07 as in 1.00).
As a test I compared SHA-256 checksum for 1.00 d2data.mpq and its 1.08 version and they are identical. Just out of curiosity, do you also get this checksum?
Code:
BB3835A14AA3935B2204D32DCA9E2409F51507A35679F889A97526240CE6F055

This is the one I get for d2data.mpq:
Code:
99E53768DDB87CA70B54529FF15043AAA71353CC250E757AE20E9C3D002CA431

I don't know a thing about checksums to be honest. The files I included are d2data.mpq, d2char.mpq, d2music.mpq, and d2sfx.mpq. These 4 files were the only ones that had a file size difference between my 1.00 physical disc installation vs. 1.14b digital installation. I tested a few different versions to make sure all was good and everything seemed to work fine. You can actually run 1.00 - 1.07 without these files, they're only needed for 1.08+.
 
@maxicek What happened to the MPQ fixer? I thought you agreed to allow it. That could cut down on stuff people have to download in order to time travel. The .mpqs are rather bulky with nearly 1GB to download.

If someone has a 1.12a+ d2data.mpq it would be interesting to see whether it is identical to the pre-1.12 .mpq after using the MPQ fixer.

Errrr..... I can't remember what this was, you are going to have to remind me... :oops:
 
Errrr..... I can't remember what this was, you are going to have to remind me... :oops:
It went something like this:
  • 1.12+ MPQs have extra files in them that make it impossible to downgrade to play older patches.
  • Fearedbliss makes program that automatically deletes them for you.
  • Drama.
  • I talk to him and ask if it's cool to link the program here on the SPF.
  • I tell you and you say the program should be no problem. (Check your PMs for that conversation "Time Travelling with 1.14d")
 
Sorry, now I remember. It would have saved @Vildecor some work if my memory was better...
Can you both have a conversation and work out what you need to do to update this guide? I prefer that solution rather than hosting the MPQs.
 
I sent a PM but thought it might be a good idea to post here too in case others have issues. I followed all the steps above for a 1.07 install on windows 10. When I try to start the game I get an error message that states it cannot not find the save directory, please create one and try again.
 
I sent a PM but thought it might be a good idea to post here too in case others have issues. I followed all the steps above for a 1.07 install on windows 10. When I try to start the game I get an error message that states it cannot not find the save directory, please create one and try again.
I'm having a similar, if not the same issue. Here is what I did:

1) Clean install of D2 from my original CDs (marked 1.0 and 1.07 respectively) on a computer that never had D2 installed.
2) Followed instructions above other than the no-CD fix.
3) Had the LoD (marked 1.07) version in the disk drive.
4) When I try to open version 1.08 (or any other version) I get the following error:

launch failure.PNG

When I run RecoverFromCrash.VBS I get the following error:

wsh.PNG

Any help would be greatly appreciated:D. I haven't tried the FearedBliss version switcher yet but that may be the next step.

EDIT 8/3/21: Looks like I fixed the problem. I reinstalled the game and upgraded to the latest version before following the guide. This seems to have done the trick. I may have missed it but I don't think it's 100% clear that the game needs to be patched to a certain point (I was trying to start the process at 1.07 from the CDs I have). Remaining issues: 1) sometimes when I open version 1.00, close it, then try to open an LOD version such as 1.07 the game will not open. I have to open the task manager and close the version of d2 running and then I can open another version. Seems the game has a hard time closing completely. 2) the scrolling characters before the game starts. Not sure there's a fix for this but thought I'd mention it in case anyone has any pointers.
 
Last edited:
I sent a PM but thought it might be a good idea to post here too in case others have issues. I followed all the steps above for a 1.07 install on windows 10. When I try to start the game I get an error message that states it cannot not find the save directory, please create one and try again.

I'm not quite sure what's happening here. The corresponding code for that error message in the LaunchModGame file is this:

Code:
'If Diablo path is not the current directory run MOD otherwise just fix up
If Folder.Path & "\" <> D2Path Then
  'Get full pathname of current directory and append save dir name
  Dir = Folder.Path & "\Save\"
  'Make new save dir if necessary
  If (FSO.FolderExists(Dir) = False) then
    Set f = FSO.CreateFolder(Dir)
    If Err.Number > 0 Then
      D2Alert = "Unable to create a new Save directory.  Create manually and try again."
      D2Choose = MsgBox (D2Alert,16,"Launch Failure")
      WScript.Quit(3)
    End If
  End If

I would first make sure the shortcut you are using to launch 1.07 has the correct D2/1.07 folders in both the 'Target' and 'Start In' boxes. The Trenshadow files should already come with a save folder for each version with one character already there (ExpSeven for 1.07). The fact that your game is launching 1.12 (from the Technical Support thread) definitely means something isn't pointing to the right place.

Edit: It looks like the classic versions have the save folders, but not the expansion folders, which is strange because all of mine did (I may have gotten the full package download from a separate link). I completely removed the 1.07 folder and got the one hosted here as well as the noCD game.exe and it created a save folder just fine, so that shouldn't be an issue anyway.

EDIT 8/3/21: Looks like I fixed the problem. I reinstalled the game and upgraded to the latest version before following the guide. This seems to have done the trick. I may have missed it but I don't think it's 100% clear that the game needs to be patched to a certain point (I was trying to start the process at 1.07 from the CDs I have). Remaining issues: 1) sometimes when I open version 1.00, close it, then try to open an LOD version such as 1.07 the game will not open. I have to open the task manager and close the version of d2 running and then I can open another version. Seems the game has a hard time closing completely. 2) the scrolling characters before the game starts. Not sure there's a fix for this but thought I'd mention it in case anyone has any pointers.

It should work just fine from a plain 1.07 installation. You can also get the missing .dll error messages if the game.exe file doesn't have the correct compatibility settings/run as admin set (according to mattinm's original Trenshadow guide).

For 1) I don't have this issue with my PC, but it does happen on my laptop. Even running 1.14d the application won't close completely and I have to kill it each time.

2) I don't remember which fullscreen/windowed settings cause this, but I was able to get rid of it using Glidewrapper.
The glide settings I use:
1627983912844.png

Then just make sure you use both -3dfx (to use the glide settings) and -w (to prevent cursor jumping when opening menus) in your shortcut
 
Last edited:
Sorry to bother, but looking to time travel and would like to use this method.

I have the exact same issue as Silvio, including the exact same error messages. I have not done a clean install yet (as he did), but tried the no CD route. I get the following message when executing game.exe:

"The code execution cannot proceed because jil11.dll was not found. Reinstalling the program may fix this problem".

For what its worth, 1.14d will run, its just that 1.07 does not.

Thanks in advance for your help...
 
Diablo 4 Interactive Map
PurePremium
Estimated market value
Low
High