If you're having trouble with Launcher you can install MXL Sigma without its use.
However, you will be missing out on some Launcher configuration options and this is an unofficial method of patching D2.
Download and install Diablo II
Use "Start with a fresh install" step of the guide for reference. viewtopic.php?t=4561
Download MXL Sigma files
Launcher downloads several archives from Median XL servers
Warning: This method is only for updating to versions before 2.10
To update to 2.10 or newer, you'll need to download the updated files from https://launcher.median-xl.com/mxl/release/public/manifest
http://get.median-xl.com/launcher/?get=dlls
download 2.x.x.dll.update file
rename 2.x.x.dll.update to 2.x.x.dll.7z file
extract 2.x.x.dll.7z file
--->
Fog.dll
D2Sigma.dll
http://get.median-xl.com/launcher/?get=mod
download 2.x.x.7z file
extract 2.x.x.7z file
--->
MXL.mpq
Copy files into Diablo 2 installation folder
copy Fog.dll, D2Sigma.dll, MXL.mpq files
paste and overwrite Fog.dll, D2Sigma.dll, MXL.mpq files into your Diablo 2 folder
If you use Windows you should be able to run Diablo 2 normally.
Running on Steam Deck
First, launch your Steam Deck in Desktop Mode.
Then Copy your Diablo 2 folder to your Steam Deck, there are many ways to do so, via you favourite SFTP transfer tool with SSH, like WinSCP (Win) or Transmit (Mac).
Second, add a Non-Steam game through Steam, point it to Diablo II.exe or Game.exe, add -3dfx as launch option, and then force compatibility with a Proton version, I've had success with Proton 8.0-2.
If you can't get this running read Running on Linux below.
Running on other Linux distros
If solution above doesn't work or you want to also install your game on your Linux machine you can use Lutris.
Lutris is a compatibility tool that wraps your Wine in isolated environments and is easier to tweak settings.
First, install Lutris via your package manager. Then follow all the instructions to installing a Windows game. Then, follow guide above and paste Median XL files in the folder where Lutris installs your game. Then you can launch the game, remembering to add launch argument of -3dfx.
Running on Mac (outdated)
Install brew.sh and wine
You need to install brew and wine to run Diablo 2.
See respective guides brew.sh and Installing Wine on Mac
This guide assumes you have Diablo extracted into your home folder.
In this example it's ~/D2
Open Terminal.app
cd ~/D2
For windowed mode
wine Diablo\ 2.exe -w
For fullscreen
wine Diablo\ 2.exe -3dfx
So far I haven't tested this on Mac 13.4 and above.
=================================================================================================
Common problems and solutions
I want to play windowed mode.
You can try using -w flag for windowed mode, though it's extremely buggy.
cd ~/D2
wine Diablo\ 2.exe -w
Diablo crashes with ACCESS VIOLATION (c0000005)
Make sure you're running in windowed mode (-w flag) or playing fullscreen (-3dfx flag). Check the Proton version you're using if following Steam Deck / Linux guide. Try different versions or Proton GE.
Generic bad character file when creating singleplayer character
Easy way is to login to The Sin War once, create a character and log in once. After that you can create characters offline.
If that doesn't work you can create missing folder structure. $WINEPREFIX is ~/.wine by default:
cd $WINEPREFIX
cd drive_c/users/<your_username>
mkdir -p "Application Data/MedianXL/save"
I have MacOS Ventura and nothing works
There is a solution by another application named CrossOver, which is similar to wine and wineskin. You will require CrossOver version 20+ to make this work, the process is similar:
1. Create a "bottle" - a virtual instance of a Windows machine wrapper.
2. Follow instructions above to install D2 LoD + MedianXL
3. Add a shortcut to Diablo II.exe file
4. Run it with -3dfx.
If you still can't get this working you might try paid apps like running a virtual Windows instance via Parallels.