The Lurker Lounge Forums
Diablo Backwards Compatibility Guide - Printable Version

+- The Lurker Lounge Forums (https://www.lurkerlounge.com/forums)
+-- Forum: Lurker Games (https://www.lurkerlounge.com/forums/forum-6.html)
+--- Forum: Diablo (https://www.lurkerlounge.com/forums/forum-15.html)
+--- Thread: Diablo Backwards Compatibility Guide (/thread-13200.html)

Pages: 1 2 3 4 5 6


Diablo Backwards Compatibility Guide - Slayer_X64 - 07-21-2011

Diablo1 Compatibility and Support Guide

EDIT: I will be adding new mirrors for all the links here soon.

Contents
  • Diablo
    1. Windows 98
    2. Windows XP
    3. Windows Vista/7
    4. Windows 8.0 and 8.1
    5. Mac OS X Compatibility(10.0-10.8)
    6. Linux Compatibility
    7. Universal Net Compatibility(if you had trouble with battlenet)
    8. Mac OS X Net Compatibility(10.0-10.8)
    9. Linux Net Compatibility
    10. Running Diablo via a Virtual Machine(if nothing else works)(Coming Soon...)
    11. How to Have Multiple Installs
    12. Patch Archive
  • Diablo Hellfire
    1. Notes about Hellfire patches.
    2. Windows 98
    3. Windows XP
    4. Windows Vista/7
    5. Windows 8.0 and 8.1
    6. Mac OS X Compatibility(10.0-10.8)
    7. Linux Compatibility
    8. Online Play
    9. Patch Archive

DIABLO COMPATIBILITY

Windows 98

To fix the windows 98 no CD error, download and install this fix: scw98fix.zip

Windows XP

A fix is rarely needed for XP, but if you are running XP 64-bit this might be needed. Go to the Diablo folder (eg C: \ Games \ Diablo), and there find the file Diablo.exe. Click on the right mouse button and choose "Properties". On the top tabs are visible, go to "Compatibility" and select:
  • Run in compatibility mode for Windows 95
  • Run in 256 colors
  • Run in 640x480 screen resolution
  • Disable visual themes

If this method fails, please see the methods below.

Windows Vista/7

**NOTE: if you have a newer graphics card, or if none of the following methods work for you, see Method 4, which is known to bypass the issues Diablo has with newer graphics cards. Method 4 is the new recommended method.

Method 1:
  • Download my modified DDwrapper file here
  • Copy the files "ddraw.dll" and "aqrit.cfg" into your diablo root directory(ie. the directory that contains "diablo.exe") no need to edit the cfg file, as i have already done it for you.
  • Play until your heart is content!

Method 2:
Here is a registry key from blizzard that will fix the rainbow color effects.

32-bit Windows 7 - http://ftp.blizzard.com/pub/diablo/d109_x86.reg
64-bit Windows 7 - http://ftp.blizzard.com/pub/diablo/d109_x64.reg

Download and apply the registry key.

If you do not know if you have a 32-bit or 64-bit version of Windows7, click on your Start menu, then right-click on Computer and select Properties. There you will see if you are running 32 bit or 64 bit windows7.

Note: This registry key will only work for Diablo version 1.09. Alt+tabbing may cause it to go back to having washed out or rainbow colors.

Method 3:
  • Download the Direct Draw Compatability Tool Here
  • Run the DirectDraw_Compatability_Tool.exe
  • Browse your computer for your diablo.exe(or whatever you have named it - it is reccomended to rename the exe file so that you can have multiple game installs for mods anyways)
  • Click "Create reg-file" and select your version of windows(32-bit or 64-bit), name the .reg file and click "save". Make sure you save it in the same directory as the exe file you are modifying
  • Go to the directory you saved your .reg file in. Double click it and apply it.

Method 4:
*NOTE: this method has known incompatibility with battlenet. However, it is 100% compatibile with IPX LAN (through hamachi/tunngle or locally) and Direct connection. regardless if the other person has this patch or not, you can still play together.
  • Download the Diablo win7/vista "patch" here.
  • Extract and copy the contents into your Diablo directory.
  • (optional, but may fix multicore crashes when typing into chat in multiplayer)Open up notepad, and type the following batch code into the editor:

    start /affinity 1 Diablo.exe

    (OR, if you are running a mod, or hellfire)

    start /affinity 1 (name-of-modded-executable.exe)

    In your editor, go to "File -> Save As" and set the file type from text files to "All Files". Save the file into your Diablo directory as a ".bat" file. From now on, in order to start Diablo, you will ALWAYS run this file. You can create a shortcut to this file on your desktop if you wish.

Windows 8.0 and 8.1

*NOTE: this method has known incompatibility with battlenet. However, it is 100% compatibile with IPX LAN (through hamachi/tunngle or locally) and Direct connection. regardless if the other person has this patch or not, you can still play together. This is also the only method to work on windows8.1.
  • Download the Diablo win7/vista "patch" here.
  • Extract and copy the contents into your Diablo directory.
  • (optional, but may fix multicore crashes when typing into chat in multiplayer)Open up notepad, and type the following batch code into the editor:

    start /affinity 1 Diablo.exe

    (OR, if you are running a mod, or hellfire)

    start /affinity 1 (name-of-modded-executable.exe)

    In your editor, go to "File -> Save As" and set the file type from text files to "All Files". Save the file into your Diablo directory as a ".bat" file. From now on, in order to start Diablo, you will ALWAYS run this file. You can create a shortcut to this file on your desktop if you wish.

Windows 10
  • Install Diablo to a non protected folder (such as C:\Diablo). I ran the installation process as administrator, but I'm not sure if it's required, I just did it for good measure.
  • Right click the Diablo executable in C:\Diablo (or wherever you installed it). select the compatibility tab, and check "Run in 640 x 480 screen resolution" and "Run the program as an administrator".
  • Install Patch 1.09 (I've not tested other patches yet) either via auto-patching the game through battlenet, or by downloading and installing the patch manually. For good measure, I manual patched the game, and I ran the patch as administrator as well.
  • Run the game, but don't hit a key as soon as the Blizzard logo comes up, or you'll cause the game to crash. Also, don't use your mouse to cancel the logo or you'll cause the game to crash.
  • (optional, but fixes any unforeseen multi-core crashes)Open up notepad, and type the following batch code into the editor:

    start /affinity 1 Diablo.exe

    (OR, if you are running a mod, or hellfire)

    start /affinity 1 (name-of-modded-executable.exe)

    Save the file to your C:\Diablo directory(or wherever you installed it), and if you want to, make a shortcut to it on your desktop.

    You should now be able to run the vanilla game. Sometimes, you may have to start the game multiple times for it to run, sometimes the menu may be a bit flickery at first. For multiplayer, see the net compatibility section.

Mac OS X compatibility(10.0-10.8)

Play-On-Mac Method
NOTE: This guide is written under the assumption that you have a Mac/Windows hybrid copy of Diablo1, such as what was found in the diablo2 battlechest, or that you have a legitimate windows copy of the game. If you have a mac copy, you will have to instead use a program such as Sheepshaver(can be glitchy) or you will have to run a virtual machine of mac OS 9. Currently I have not developed support for either method as of yet.
  • Download Play-On-Machere from the POM site.
  • Start Play-On-Mac. Go to tools -> manage wine versions -> wine versions(x86)
  • Scroll down until you see wine version "1.2.1-ddraw". This is POM's patched wine1.2.1. Install it. Alternatively you can use wine version "0.9.52" and a hacked ddraw.dll to be placed in your diablo directory. You can find that dll here. You will need zip software to unpack this file, such as the zip software that comes built into OS X. You can also download iZip here.
  • Install Diablo via unlisted programs. It is recommended that you use a seperate POM virtual drive for the installation, especially if you plan on installing mods later so that you can keep all of your seperate installations organized. Its also recommended that you do this because this wine version is specially patched, and this way you wont have to continue to switch wine installations every time you want to run something different, but you dont have to. Once Diablo is installed, do not run it yet.
  • Select Diablo and click "configure". Set wine version to "1.2.1-ddraw". Launch the game
  • You will notice that the menu will be glitchy and may not even display at first. to get the menu to display, use you're arrow keys to scroll through the menu from top to bottom. Moving the mouse will also force the screen to refresh and the menu to appear - it will also cause cursors to animate. So long as you keep the mouse moving the menu should at least be navigable. Keep in mind that the menu may not respond to mouse clicks right away, so you may need to keep the mouse moving to refresh the screen while using the arrow and enter keys to navigate.
  • Now that that is done, you may need to patch the game. If you're installed version is 1.08 or higher, you can simply select multiplayer -> battlenet, and the game will autopatch and reboot for you. If you're installed version is less than 1.08, you will have to update manually. First download the patch version you wish to use, and place it in your POM Diablo install directory.
  • In the play on mac menu, select Diablo, click "configure" and go to miscellaneous -> Run a .exe file in this virtual drive. Select your patch and run it. You're game should now be both working and properly patched on mac. You will be able to play the game start to finish, in all game mods and difficulties, including playing the game on battlenet. For enabling lan play, see "Mac OS X Net Compatibility".
Linux Compatibility

Method 1: Play-On-Linux Only

NOTE: On some versions of linux, you may have to run "sudo sysctl kernel.yama.ptrace_scope=0" in order to get Diablo to run. this was noted with Ubuntu 14.04 and higher, as well as some other linux distributions. On some Linux distributions still, Diablo will just crash due to new kernel Hardening security features. In order to run Diablo on these systems, use a virtual machine running either Xubuntu or Lubuntu 12.04/14.04 32-bit (See the VIRTUAL MACHINE method for installing Diablo).
  • Download Play-On-Linux for your respective version through your distro's repository. You can also download it here from the POL site. They also include a generic package for all linux distros there just in case your distro isnt listed.
  • Start Play-On-Linux. Go to tools -> manage wine versions -> wine versions(x86)
  • Scroll down until you see wine version "1.2.1-ddraw". This is POL's patched wine1.2.1. Install it.
  • Install Diablo via unlisted programs. It is recommended that you use a seperate POL virtual drive for the installation, especially if you plan on installing mods later so that you can keep all of your seperate installations organized. Its also recommended that you do this because this wine version is specially patched, and this way you wont have to continue to switch wine installations every time you want to run something different, but you dont have to. Once Diablo is installed, do not run it yet.
  • Select Diablo and click "configure". Set wine version to "1.2.1-ddraw". Launch the game
  • You will notice that the menu will be glitchy and may not even display at first. to get the menu to display, use you're arrow keys to scroll through the menu from top to bottom. Moving the mouse will also force the screen to refresh and the menu to appear - it will also cause cursors to animate. So long as you keep the mouse moving the menu should at least be navigable. Keep in mind that the menu may not respond to mouse clicks right away, so you may need to keep the mouse moving to refresh the screen while using the arrow and enter keys to navigate.
  • Now that that is done, you may need to patch the game. If you're installed version is 1.08 or higher, you can simply select multiplayer -> battlenet, and the game will autopatch and reboot for you. If you're installed version is less than 1.08, you will have to update manually. First download the patch version you wish to use, and place it in your POL Diablo install directory.
  • In the play on linux menu, select Diablo, click "configure" and go to miscellaneous -> Run a .exe file in this virtual drive. Select your patch and run it. You're game should now be both working and properly patched on linux. You will be able to play the game start to finish, in all game modes and difficulties, including playing the game on battlenet
Method 2: POL & Wine

NOTE: On some versions of linux, you may have to run "sudo sysctl kernel.yama.ptrace_scope=0" in order to get Diablo to run. this was noted with Ubuntu 14.04 and higher, as well as some other linux distributions. On some Linux distributions still, Diablo will just crash due to new kernel Hardening security features. In order to run Diablo on these systems, use a virtual machine running either Xubuntu or Lubuntu 12.04/14.04 32-bit (See the VIRTUAL MACHINE method for installing Diablo).
NOTE: i have not actually successfully compiled an older version of WINE myself.
  • Download and install wine version 0.9.52 through the old apps web archive for wine here. POL users can find it using the "manage wine versions" menu, without a need to download it seperately. Compile it and Install it. Optionally, install the required wine version via POL, and then write a shell script to launch the game:

    #!/bin/bash
    # if using 1.21-ddraw, replace 0.9.52 with that.
    WINEDIR="$HOME/.PlayOnLinux/wine/linux-x86/0.9.52
    export WINEDLLPATH="$WINEDIR/lib/wine"
    export WINESERVER="$WINEDIR/bin/wineserver"
    export WINELOADER="$WINEDIR/bin/wine"

    # Replace this example diablo prefix with your diablo prefix
    export WINEPREFIX="$HOME/.PlayOnLinux/DIABLO"

    # Replace this example with the executable you wish to run
    GAMEPATH="$WINEPREFIX/drive_c/Diablo/Diablo.exe"
    export WINEARCH="win32"

    "$WINELOADER" --version
    "$WINELOADER" "$GAMEPATH"

  • Install Diablo normally, but do not run it. If using POL, I recommend a separate virtual drive because of the hack we will be using.
  • Download a hacked ddraw.dll made for wine 0.9.52 here. Copy it into your Diablo install directory.
  • Using Wine version 0.9.52, run Diablo.
  • You will notice that the menu will be glitchy and may not even display at first. to get the menu to display, use you're arrow keys to scroll through the menu from top to bottom. Moving the mouse will also force the screen to refresh and the menu to appear - it will also cause cursors to animate. So long as you keep the mouse moving the menu should at least be navigable. Keep in mind that the menu may not respond to mouse clicks right away, so you may need to keep the mouse moving to refresh the screen while using the arrow and enter keys to navigate.
  • Now that that is done, you may need to patch the game. If you're installed version is 1.08 or higher, you can simply select multiplayer -> battlenet, and the game will autopatch and reboot for you. If you're installed version is less than 1.08, you will have to update manually. First download the patch version you wish to use, and place it in your POL or WINE Diablo install directory.
  • Run the patch. You're game should now be both working and properly patched on linux. You will be able to play the game start to finish, in all game modes and difficulties, including playing the game on battlenet. To enable LAN play, see "Linux Net Compatibility."
You will now be able to play Diablo without color distortion or disc errors.

Universal Net compatibility
First Method

Download the Net compatibility package for play over hamachi here.
This method is recommended because not only does it work for Diablo, it also works for hellfire and mods. This package also enables LAN play, should you desire to do so.

Second Method
  1. Download and install GameRanger and create a GameRanger account(you only need a bronze account. this is free.)
  2. Run Gameranger. Go to 'File' → 'Host Game' and select Diablo as your game. Under 'Game options' select the game's difficulty(normal, nightmare or hell). you may password your session if desired. check the box beside 'Allow Late Joiners' and click 'Ok'. Contact your friends that you want to play with and wait for them to Join. Once everyone has arrived, click the 'Start' Button.
Congratulations! You can now play Diablo Multilayer games with any Users that have trouble with battlenet compatibility.

Mac OS X Net Compatibility

NOTE: the following instructions are written for Play-On-Mac. Normal WINE users will have to apply the fix according to the proper methods. Currently I have not yet developed support for Sheepshaver users or OS 9 virtual machines.
  • Download the ipx wrapper compatibility package here. Extract it and copy the files to your Diablo install directory. You will need zip software to unpack this file, such as the zip software that comes built into OS X. You can also download iZip here.
  • For POM, select diablo and click "configure". Configure wine -> libraries -> New override for library. There wont be an option to select it, so type in manually "wsock32.dll" and click add.
  • go to existing overrides ->wsock32.dll and click "edit". Set the option to "native then built in"

LAN play is now activated.

To add hamachi support:

Download and install Hamachi for OS X here.

Now you can set up LAN games for diablo over hamachi using Mac. NOTE: Mac lan games of diablo ARE compatible with windows and Linux lan games of diablo, as are their respective hamachi counterparts compatible.

Linux Net Compatibility

NOTE: the following instructions are written for Play-On-Linux. Normal WINE users will have to apply the fix by configuring wine manually and placing the files in the directory that way.
  • Download the ipx wrapper compatibility package here. Extract it and copy the files to your Diablo install directory.
  • For POL, select diablo and click "configure". Configure wine -> libraries -> New override for library. There wont be an option to select it, so type in manually "wsock32.dll" and click add.
  • go to existing overrides ->wsock32.dll and click "edit". Set the option to "native then built in"

LAN play is now activated.

To add hamachi support:
  • Download and install Hamachi for your respective linux distribution here.
  • This is optional, but reccomended: Download and install Haguichi - a visual GUI for Hamachi on linux; for your respective distribution here

Now you can set up LAN games for diablo over hamachi using linux. NOTE: linux lan games of diablo ARE compatible with windows and mac lan games of diablo, as are their respective hamachi counterparts compatible.

How To Have Multiple Installs

This is the method required if you wish to have multiple installs of the game (ie. v1.00 + 1.07 + 1.09) which is particularily useful especially if you wish to have mods on your computer.

NOTE: for Mac/Linux users using windows/battlechest hybrid disks and the WINE/POL/POM methods, DO NOT try to install the macintosh patches, as they will not work.(I dont even think they will run the update when running WINE/POL/POM because it simulates a windows API.)
  • Install Diablo using appropriate methods. preferably you'll want a vanilla v1.00 install.
  • LINUX/MAC(hybrid/windows copies only for mac): play-on-linux/play-on-mac users can just make another virtual drive for another Diablo install to keep them seperate. If they dont want to do this, they can follow this guide but at the end they will have to update their installation by running the diablo setup program, then exiting immediately in order to gain the ability to create a shortcut for the new executable.
  • Copy your Diablo install to a different directory under a different Folder name (say for this example your original install folder will be called "Diablo" and your copied folder will be called "Diablo v1.00")
  • Create desired number of copies of your remaining install, and patch them accordingly. (for example, on my computer, i keep a large selection of installs. I retain 1 install of v1.00, 1 install of v1.07 and 1 install of v1.09. Then i copy these base installs as required, so that in the copied folders i can retain mods.)
To run different versions of the game on a new OS that requires running the game from the old .bat file method, simply rename the exe file, create a new bat file with identical structure to the one above, and simply change the filename from "Diablo.exe" to "custom named diablo executable.exe". for example, to run v1.09, i renamed the executable to "Diablov109.exe" and simply replaced the old executable name with the new one in the bat file.


Diablo Patch Archive

Diablo 1.00: This would be a vanilla install of the game. While most newer Diablo discs automatically install v1.08, there is a trick to installing 1.00 onto your computer:

  1. Insert your Diablo CD. DO NOT allow it to autorun the installer.
  2. Go to the start Menu and click "My Computer" or "Computer" (depending on your OS and version)
  3. Right Click your Diablo disc drive and choose "Explore"
  4. Open the file "AUTORUN.EXE"
  5. Install Diablo
  6. LINUX/MAC(hybrid/windows copy only for mac users): when you install diablo with wine/POL/POM, use the file "AUTORUN.EXE"
This will install Diablo 1.00 on your computer. Now you may use any of the following patches to update diablo. use the functions "run as administrator" and "run in compatability mode" as needed.

Diablo 1.02
Diablo 1.03
Diablo 1.04
Diablo 1.05
Diablo 1.07(most older mods, such as V&K, MiddleEarth and Netherworld use this)
Diablo1.07(MACINTOSH PATCH)
Diablo 1.08
Diablo 1.09|Diablo 1.09b(this is used for battlenet, as well as newer mods such as Awakening)
Diablo 1.09(MACINTOSH PATCH)
Diablo Hellfire 1.01

DIABLO HELLFIRE COMPATIBILITY

Notes about hellfire patches

Patch 1.01:

This patch is a 16bit program, and can only be run on a 32bit version of windows. To patch the game using this patch, you would have to use a vrtual machine, which would require a windows installation disk, or use an older computer and transfer the files over once patched.

Also Note that this patch disables Multiplayer mode. In order to keep playing multiplayer, you must use a hacked "hellfrui.dll" file in order to re-open access to the multiplayer menu.

Unofficial Patch 1.02:

This patch works for 64bit versions of windows. It includes all of the changes of patch 1.01, as well as the changes listed here:

http://www.lurkerlounge.com/forums/thread-13318.html

This patch will complain about the Diablo CD not being inserted - to circumvent this, you only have to copy the file "DIABLODAT.MPQ from your Diablo CD into your Hellfire Directory to work.

If the Patcher complains about your hellfire executable, there is also a zip version available which will work for you.

Additionally it also re-enables multiplayer, and allows LAN play through the use of UDP, eliminating the need for the IPX wrapper.
Windows 98

Not sure if this issue exists with hellfire, but:

To fix the windows 98 no CD error, download and install this fix: scw98fix.zip

Windows XP

A fix is rarely needed for XP, but if you are running XP 64-bit this might be needed. Go to the Hellfire folder (eg C: \ Games \ SIERRA \ Hellfire), and there find the file Hellfire.exe. Click on the right mouse button and choose "Properties". On the top tabs are visible, go to "Compatibility" and select:
  • Run in compatibility mode for Windows 95
  • Run in 256 colors
  • Run in 640x480 screen resolution
  • Disable visual themes

If this method fails, please see the methods below.

Windows Vista/7

Method 1(Recommended Method):
  • Download my modified DDwrapper file here
  • Copy the files "ddraw.dll" and "aqrit.cfg" into your hellfire root directory(ie. the directory that contains "hellfire.exe") no need to edit the cfg file, as i have already done it for you.
  • Play until your heart is content!

Method 2:
  • Download the Direct Draw Compatability Tool Here
  • Run the DirectDraw_Compatability_Tool.exe
  • Browse your computer for your hellfire.exe(or whatever you have named it - it is recommended to rename the exe file so that you can have multiple game installs for mods anyways)
  • Click "Create reg-file" and select your version of windows(32-bit or 64-bit), name the .reg file and click "save". Make sure you save it in the same directory as the exe file you are modifying
  • Go to the directory you saved your .reg file in. Double click it and apply it.



Windows 8

[*]Download the Diablo win7/vista "patch" here.
[*]Extract and copy the contents into your Hellfire directory.
[*]Right Click "Hellfire.exe", go to properties>compatibility and check "Run as administrator" (this will prevent conflicts with how Hellfire creates multiplayer save files)
[*](optional, but may fix multicore crashes when typing into chat in multiplayer)Open up notepad, and type the following batch code into the editor:

start /affinity 1 Hellfire.exe

(OR, if you are running a mod)

start /affinity 1 (name-of-modded-executable.exe)

In your editor, go to "File -> Save As" and set the file type from text files to "All Files". Save the file into your Diablo directory as a ".bat" file. From now on, in order to start Diablo, you will ALWAYS run this file. You can create a shortcut to this file on your desktop if you wish.
[/list]

Mac OS X compatibility(10.0-10.8)

Play-On-Mac Method
  • Download Play-On-Mac here from the POM site.
  • Start Play-On-Mac. Go to tools -> manage wine versions -> wine versions(x86)
  • Scroll down until you see wine version "1.2.1-ddraw". This is POM's patched wine1.2.1. Install it. Alternatively you can use wine version "0.9.52" and a hacked ddraw.dll to be placed in your hellfire directory. You can find that dll here. You will need zip software to unpack this file, such as the zip software that comes built into OS X. You can also download iZip here.
  • Install hellfire via unlisted programs. It is recommended that you use a seperate POM virtual drive for the installation, especially if you plan on installing mods later so that you can keep all of your seperate installations organized. Its also recommended that you do this because this wine version is specially patched, and this way you wont have to continue to switch wine installations every time you want to run something different, but you dont have to.
  • Select Hellfire and click "configure". Set wine version to "1.2.1-ddraw". Launch the game
  • You will notice that the menu will be glitchy and may not even display at first. to get the menu to display, use you're arrow keys to scroll through the menu from top to bottom. Moving the mouse will also force the screen to refresh and the menu to appear - it will also cause cursors to animate. So long as you keep the mouse moving the menu should at least be navigable. Keep in mind that the menu may not respond to mouse clicks right away, so you may need to keep the mouse moving to refresh the screen while using the arrow and enter keys to navigate.
  • Now that that is done, you will have to patch your game. First download the patch version you wish to use, and place it in your POM Hellfire install directory.
  • In the play on mac menu, select hellfire, click "configure" and go to miscellaneous -> Run a .exe file in this virtual drive. Select your patch and run it. You're game should now be both working and properly patched on mac. You will be able to play the game start to finish, in all game modes and difficulties. For enabling lan play, see "Online Play".
Linux Compatibility

Method 1: Play-On-Linux Only
  • Download Play-On-Linux for your respective version through your distro's repository. You can also download it here from the POL site. They also include a generic package for all linux distros there just in case your distro isnt listed.
  • Start Play-On-Linux. Go to tools -> manage wine versions -> wine versions(x86)
  • Scroll down until you see wine version "1.2.1-ddraw". This is POL's patched wine1.2.1. Install it.
  • Install Hellfire via unlisted programs. It is recommended that you use a seperate POL virtual drive for the installation, especially if you plan on installing mods later so that you can keep all of your seperate installations organized. Its also recommended that you do this because this wine version is specially patched, and this way you wont have to continue to switch wine installations every time you want to run something different, but you dont have to.
  • Select Hellfire and click "configure". Set wine version to "1.2.1-ddraw". Launch the game
  • You will notice that the menu will be glitchy and may not even display at first. to get the menu to display, use you're arrow keys to scroll through the menu from top to bottom. Moving the mouse will also force the screen to refresh and the menu to appear - it will also cause cursors to animate. So long as you keep the mouse moving the menu should at least be navigable. Keep in mind that the menu may not respond to mouse clicks right away, so you may need to keep the mouse moving to refresh the screen while using the arrow and enter keys to navigate.
  • Now that that is done, you will have to patch the game. First download the patch version you wish to use, and place it in your POL Hellfire install directory.
  • In the play on linux menu, select Hellfire, click "configure" and go to miscellaneous -> Run a .exe file in this virtual drive. Select your patch and run it. You're game should now be both working and properly patched on linux. You will be able to play the game start to finish, in all game modes and difficulties.
Method 2: POL & Wine
  • Download and install wine version 0.9.52 either through your repository or through the old apps web archive for wine here. POL users can find it using the "manage wine versions" menu, without a need to download it seperately.
  • Install Hellfire normally. If using POL, I recommend a separate virtual drive because of the hack we will be using.(the same drive as your diablo install is fine)
  • Download a hacked ddraw.dll made for wine 0.9.52 here. Copy it into your Hellfire install directory.
  • Using Wine version 0.9.52, run Hellfire.
  • You will notice that the menu will be glitchy and may not even display at first. to get the menu to display, use you're arrow keys to scroll through the menu from top to bottom. Moving the mouse will also force the screen to refresh and the menu to appear - it will also cause cursors to animate. So long as you keep the mouse moving the menu should at least be navigable. Keep in mind that the menu may not respond to mouse clicks right away, so you may need to keep the mouse moving to refresh the screen while using the arrow and enter keys to navigate.
  • Now that that is done, you will need to patch the game. First download the patch version you wish to use, and place it in your POL or WINE Hellfire install directory.
  • Run the patch. You're game should now be both working and properly patched on linux. You will be able to play the game start to finish, in all game mods and difficulties, including playing the game on battlenet. To enable LAN play, see "Online Play."
You will now be able to play Hellfire without color distortion or disc errors.

Online Play

In order to play Hellfire multiplayer, you will need the following(you can find all of the files listed below in the following guides, and in the next section where the patch archive is):

Hellfire1.00 & 1.01: ipxwrapper

Hellfire1.01: hacked hellfrui.dll

Command.txt

Hamachi, or another LAN VPN application(hamachi is recommended by me
because it is cross platform compatible between linux, mac and windows. there are others however.)

NOTE: all LAN games are cross-compatible between operating systems.
NOTE: IPXwrapper is recommended for Hellfire1.02 because it tends to allow a more consistent chance of success when trying to connect to others. This way IPX LAN can still be used if UDP LAN fails(of course you would still want to troubleshoot the UDP problems later, but having the immediate connectivity would at least allow you to play.)

Download the Net compatibility package for play over hamachi here and place it in your Diablo/Hellfire directory. This package enables LAN play, and online play through hamachi.
Macintosh Users

NOTE: the following instructions are written for Play-On-Mac. Normal WINE users will have to apply the fix according to the proper methods. Currently I have not yet developed support for Sheepshaver users or OS 9 virtual machines.
  • Download the ipx wrapper compatibility package here. Extract it and copy the files to your Hellfire install directory. You will need zip software to unpack this file, such as the zip software that comes built into OS X. You can also download iZip here.
  • For POM, select Hellfire and click "configure". Configure wine -> libraries -> New override for library. There wont be an option to select it, so type in manually "wsock32.dll" and click add.
  • go to existing overrides ->wsock32.dll and click "edit". Set the option to "native then built in"

LAN play is now activated.

To add hamachi support:

Download and install Hamachi for OS X here.

Now you can set up LAN games for Hellfire over hamachi using Mac.

Linux Users

NOTE: the following instructions are written for Play-On-Linux. Normal WINE users will have to apply the fix by configuring wine manually and placing the files in the directory that way.
  • Download the ipx wrapper compatibility package here. Extract it and copy the files to your Hellfire install directory.
  • For POL, select Hellfire and click "configure". Configure wine -> libraries -> New override for library. There wont be an option to select it, so type in manually "wsock32.dll" and click add.
  • go to existing overrides ->wsock32.dll and click "edit". Set the option to "native then built in"

LAN play is now activated.

To add hamachi support:
  • Download and install Hamachi for your respective linux distribution here.
  • This is optional, but reccomended: Download and install Haguichi - a visual GUI for Hamachi on linux; for your respective distribution here

Now you can set up LAN games for Hellfire over hamachi using linux.

Patch Archive

Diablo Hellfire 1.01
Command.txt
Hellfrui.dll for Diablo Hellfire 1.01
Diablo Hellfire Unofficial Patch 1.02 exe | zip

Final Notes

Well I figured that this would be put to good use if I posted it here, so that's why I've done so. Please excuse any grammar or spelling errors that you come across during this guide, as I was not paying attention to such when writing it. Hopefully this helped some people, and maybe now We'll all have a few people to play Diablo with again.

I've also gone around grabbing all of the old mods I could find. Granted I am still missing a few, such as the Abyssmal Mod, I would be more than happy to post those as well if there is a demand for it.

At some point I will probably provide download mirrors to ensure that these downloads don't die.

Enjoy!


RE: Diablo Backwards Compatability Guide - GhastMaster - 07-22-2011

////////////////////// Windows 10 Update 2019-10-04 //////////////////////

Vanilla Gameplay or w/ Ulmo Stash/Torch Mod (Works on 1803/1809 confirmed)

1. Install Diablo (C:/Diablo requires no admin rights to run)
2. Patch to 1.09b (or whatever)
3. Install Directx 9.0c https://www.microsoft.com/en-us/download/details.aspx?id=34429
4. Install Strangebytes Diablo Patch (this will allow skipping intro and changing resolution/FPS/alt+tab/etc.) http://strangebytes.com/index.php/projects/1-diablo-1-windows-7-vista-patch=60
(Optional)
5. Install Ulmo Stash
6. Install Torch: Use the Beta DiabloTorch.dll(30 tabs, works fine) and the Windows 10 InjectorConsole.exe
7. Add admin rights to injector console.
8. Toggle fullscreen at least once before running inject.bat without admin rights.

Original reply:
Quote:Thanks!

I built a xp machine to run Diablo, but my kvm switch broke. I have been too lazy to write a batch file for windows 7. I guess I like building more than I like writing.



RE: Diablo Backwards Compatability Guide - Galbraith - 07-22-2011

For Windows 7 I would recommend registry entry published by Blizzard that fix problem with colors ultimately.

No messed colors after alt-tab problem for me with this solution, no killing explorer (highly unrecommended) and running batch files, no more.

It works for 1.09, but it could be redone for any version or mod. Usually I use this method for most of semi-retro games with DirectDraw incompatibility problem.




RE: Diablo Backwards Compatability Guide - Nystul - 07-22-2011

(07-22-2011, 08:28 PM)Galbraith Wrote: For Windows 7 I would recommend registry entry published by Blizzard that fix problem with colors ultimately.

No messed colors after alt-tab problem for me with this solution, no killing explorer (highly unrecommended) and running batch files, no more.

It works for 1.09, but it could be redone for any version or mod. Usually I use this method for most of semi-retro games with DirectDraw incompatibility problem.

Can't you achieve the same just by setting the appropriate compatibility settings for each game?

I agree that killing explorer is a terrible excuse for a solution.


RE: Diablo Backwards Compatability Guide - Galbraith - 07-22-2011

Quote:Can't you achieve the same just by setting the appropriate compatibility settings for each game?
Apparently cannot achieve exactly the same. That’s because of updating settings for direct draw by other applications. Usually it is explorer. Also alt-tabbing is changing setting, which was set previously to 256 by compatibility setting (to a messy one).
I got even an interesting story about it.
My monitor is 16:9, so it was ok for me to just adjust ratio to 4:3 on my monitor settings (signal from card was not changed) just to play with correct aspect ratio, because I do not like unnaturally distended video, however, a new NVidia drivers which I installed introduced automatically detecting aspect ratio of full screen application, so I no longer had to readjust it on my monitor, but also some bad 'feature' came with that: it also updated compatibility color settings I used for a game (to a messy one). Every time game was run.
So I restored old drivers back, to have possibility to play with compatibility settings on. And I didn't upgraded drivers until this wonderful solution came from Blizzard.
So again - answer is - not. Compatibility settings (from properties) do not work the same way. First - those settings could be easily updated by other applications (mostly by explorer but also or other ones). Second - alt-tab is giving mess again. Third - it’s not even working at all with some graphic card drivers which are adjusting aspect ratio to game's ratio.



RE: Diablo Backwards Compatability Guide - Slayer_X64 - 07-24-2011

(07-22-2011, 08:28 PM)Galbraith Wrote: For Windows 7 I would recommend registry entry published by Blizzard that fix problem with colors ultimately.

No messed colors after alt-tab problem for me with this solution, no killing explorer (highly unrecommended) and running batch files, no more.

It works for 1.09, but it could be redone for any version or mod. Usually I use this method for most of semi-retro games with DirectDraw incompatibility problem.

Thanks for this. I'll add it to my guide.


RE: Diablo Backwards Compatability Guide - Brogden - 08-30-2011

I recently installed Diablo on a windows 7 machine (before reading this wonderful guide). However, when running it, even with 256 colors and 640x800 resolution, about half of the pixels have color inversion. I found the solution for diablo, and for many other older games, is to simply right click your desktop and select change screen resolution. Then, without actually changing anything, run Diablo, and everything is back to normal.


RE: Diablo Backwards Compatability Guide - Belix - 12-17-2011

Unfortunately, the W7 registry color fix for Diablo v1.09 in this thread does not appear to correct the issue for Hellfire v1.01 and extensions such as v1.02 Fixed. I will attach registry files to this post for Hellfire players, as I know of nowhere they are uploaded online to link to.

Slayer, I hope you'll test these and add them to your thread so they are easier to find. Thanks!

Simply run the file approriate for your version of Windows. They work by default for Hellfire v1.01; to use it with something like Hellfire v1.02 Fixed, right-click the file appropriate for your OS and select "Edit" -- then change the line that points to Hellfire.exe to the proper file name of the fixed version you're running.


RE: Diablo Backwards Compatability Guide - Bolty - 12-19-2011

Why did I never sticky this? Fixing that!


RE: Diablo Backwards Compatability Guide - Belix - 12-19-2011

Oh, before I forget... when I read through this thread, I didn't see any mention of the multi-core processor chat crash. As far as I know this isn't a very common problem, but I still experience it to this day and have seen several other players over the past few years with the same problem.

When you press Enter to send a chat message on some multi-core processor systems, Diablo will sometimes crash to the desktop. This happens in Windows XP, not sure about newer ones. I don't run any mods that could be responsible or anything like that.

The fix for this is easy, but a little inconvenient. You need to use the Task Manager to tell Windows to run Diablo only on a single process core/thread each time you start the game. I have never crashed when sending a message after doing this.

I would explain step-by-step how to do this, but there are tons of guides all over the web with pictures that may be easier to follow than a lengthy explanation. Google "set processor affinity Windows ####" and replace #### with your operating system (XP, Vista, W7, etc) for the instructions.

It is rather frustrating for the players that do experience it, especially if they were the one who opened the Town Portal and were chatting in town with their companions! I hope that this helps someone.


RE: Diablo Backwards Compatability Guide - sedrosken - 01-10-2012

Wow. THANK YOU!

I don't need to murder- ermmm, I mean end explorer to run diablo anymore!
FINALLY WE MAY REJOICE!

And why yes, I DID steal that quote from Akara.
Successful troll is successful, am I[/align] right?


RE: Diablo Backwards Compatability Guide - Slayer_X64 - 03-12-2012

Ok, so I finally came back and updated the guide a little to include multiple installs(got re-interested in things since im building a new computer next month). This makes integrating mods a little easier for people now as well.

(12-19-2011, 07:02 AM)Belix Wrote: Oh, before I forget... when I read through this thread, I didn't see any mention of the multi-core processor chat crash. As far as I know this isn't a very common problem, but I still experience it to this day and have seen several other players over the past few years with the same problem.

When you press Enter to send a chat message on some multi-core processor systems, Diablo will sometimes crash to the desktop. This happens in Windows XP, not sure about newer ones. I don't run any mods that could be responsible or anything like that.

The fix for this is easy, but a little inconvenient. You need to use the Task Manager to tell Windows to run Diablo only on a single process core/thread each time you start the game. I have never crashed when sending a message after doing this.

I would explain step-by-step how to do this, but there are tons of guides all over the web with pictures that may be easier to follow than a lengthy explanation. Google "set processor affinity Windows ####" and replace #### with your operating system (XP, Vista, W7, etc) for the instructions.

It is rather frustrating for the players that do experience it, especially if they were the one who opened the Town Portal and were chatting in town with their companions! I hope that this helps someone.
Wow, thanks for bringing this up! I had noticed this, but had just accepted it as something that just happens from time to time. I'll see if I can include this in something like an easy to use batch file, or an equivalent, so that Task Manager doesnt need to be opened up every time, just to make things a little more user friendly.

Also Belix, i'll be sure to add Hellfire Compatability Stuff as soon as i get around to it.

EDIT: fiddled around with the "/affinity" command, and figured out a way to set the CPU to run diablo using only one core in a nice neat package. I'll edit the main post later, but for now, here is the code i used:

Quote:@echo off
start /affinity 1 Diablo.exe
exit

or for the second way that involves killing explorer:

Quote:@echo off
taskkill /f /im explorer.exe
start /affinity 1 Diablo.exe
pause
start explorer.exe
exit

This should fix the multicore chat crashing problem I think. Let me know how it works for you.


RE: Diablo Backwards Compatability Guide - zebluk - 03-29-2012

Hey community,

Thanks for useful the post, the registry trick is definitely the cleanest solution; unfortunately it didn't work for me at first, because the ID of my Diablo.exe didn't match the one provided by Blizzard.

Here's how to generate the ID of any game:

1. Run Diablo (or whatever game has a palette problem) in Compatibility mode WinXP SP3 (other modes might work, but I tested only this one) and just leave it right away. This will force DirectDraw to generate the ID of your game in a registry key named MostRecentApplication.

2. Find this key by running regeditit and browse your registry to:

For 32bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\MostRecentApplication
For 64bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplication

Note down the value of keys "Name" and "ID" (make sure the Name is your game executable name)

3. The ID needs a little tweaking; let's assume it is 0x12345678. This is a 4-bytes long value, each bytes consisting of 2 hexadecimal digits, so read it as: 12 34 56 78. Because x86/64 CPUs use little endian, you need to reverse the byte order, in this case: 78 56 34 12.

4. Now to force DirectDraw into compatibility mode you need to create/update the key in (replace the final key name "Diablo109" by any name you need, it doesn't really matter):

For 32bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\Diablo109
For 64bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Diablo109

There must be 3 fields there:
- Flags (type: binary) = 00 08 00 00
- ID (type: binary) = the reversed value you obtained in step 3, in this example this would be 78 56 34 12
- Name (type: string) = the name you saw in step 2.

5. Test your game; if it works you should be able to remove any compatibility mode and play just fine!

Hope this helps, peace.

Z

EDIT1: Added reg path for win32bits
EDIT2: Added compat mode requirement to generate ID, and some more info about the registry keys


RE: Diablo Backwards Compatability Guide - Jarulf - 05-12-2012

EDIT: OK, I realised the colour problem only comes after applying updates (1.07 in my case). In 1.00, there seems to be no problems at all....


RE: Diablo Backwards Compatability Guide - NiteFox - 05-12-2012

Another slight "fix" I'd suggest is copying DIABDAT.MPQ over from your Diablo CD to your base Diablo directory. You still need the CD in your drive to play the game (AFAIK), but this will eliminate annoying loading "burps" such as when you switch weapons/armor models. Oh, and activate the Butcher.


RE: Diablo Backwards Compatability Guide - Jarulf - 05-13-2012

Is there a way to run Diablo in a window instead of full screen?


RE: Diablo Backwards Compatability Guide - LennyLen - 05-13-2012

(05-13-2012, 11:44 AM)Jarulf Wrote: Is there a way to run Diablo in a window instead of full screen?

If you have a powerful enough PC, you could run it through a virtual machine. That's the only way as far as I know.


RE: Diablo Backwards Compatability Guide - MMAgCh - 05-13-2012

(05-13-2012, 11:44 AM)Jarulf Wrote: Is there a way to run Diablo in a window instead of full screen?
If I remember right, someone wrote a custom DirectDraw wrapper or something of the like that lets you do this, and I believe it even was linked to on this very forum. I currently find myself unable to locate said link, however. Undecided

Edit: oh hey, as always complaining on the internet worked. Here it is! (Note: I haven't tried this myself, so if it doesn't work or sets your computer on fire or anything along these lines, that's completely not my fault.)


RE: Diablo Backwards Compatability Guide - Jarulf - 05-13-2012

I tried the virtual xp mode but that didn't work, graphics problems. Appearantly it doesn't include the graphics part, lide direct 3D dor something. Seems a bit overcomplicated to run a virtual machine. What if one use 2 monitors? How does full screen programs work with sucha workup? Will the second (or first) screen work as a normal desktop to work with other programs?


RE: Diablo Backwards Compatability Guide - Slayer_X64 - 07-16-2012

(03-29-2012, 03:02 AM)zebluk Wrote: Hey community,

Thanks for useful the post, the registry trick is definitely the cleanest solution; unfortunately it didn't work for me at first, because the ID of my Diablo.exe didn't match the one provided by Blizzard.

Here's how to generate the ID of any game:

1. Run Diablo (or whatever game has a palette problem) in Compatibility mode WinXP SP3 (other modes might work, but I tested only this one) and just leave it right away. This will force DirectDraw to generate the ID of your game in a registry key named MostRecentApplication.

2. Find this key by running regeditit and browse your registry to:

For 32bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\MostRecentApplication
For 64bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\MostRecentApplication

Note down the value of keys "Name" and "ID" (make sure the Name is your game executable name)

3. The ID needs a little tweaking; let's assume it is 0x12345678. This is a 4-bytes long value, each bytes consisting of 2 hexadecimal digits, so read it as: 12 34 56 78. Because x86/64 CPUs use little endian, you need to reverse the byte order, in this case: 78 56 34 12.

4. Now to force DirectDraw into compatibility mode you need to create/update the key in (replace the final key name "Diablo109" by any name you need, it doesn't really matter):

For 32bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\Diablo109
For 64bits Windows: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Diablo109

There must be 3 fields there:
- Flags (type: binary) = 00 08 00 00
- ID (type: binary) = the reversed value you obtained in step 3, in this example this would be 78 56 34 12
- Name (type: string) = the name you saw in step 2.

5. Test your game; if it works you should be able to remove any compatibility mode and play just fine!

Hope this helps, peace.

Z

EDIT1: Added reg path for win32bits
EDIT2: Added compat mode requirement to generate ID, and some more info about the registry keys
Just came back from a long absence, and I saw your post, and it reminded me of another solution I had found which I think addresses this issue:

First, download the direct draw compatibility tool from here(I uploaded it fresh just now): http://www.mediafire.com/?2vy9jbwwcl9nbo9

Run the direct draw compatibility tool, find the directory and the executable of the game you want to create a registry for. Select the "exe" file. Next click the "Create reg-file" button. After that, close the direct draw compatibility tool, go to the directory of the registry file you just created, and run it. after that is done, your game should run as intended.

I have to go through and revise the compatibility guide one of these days.