Lubasz4gaminG
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Play Diablo II LOD from a USB External Drive

Go down

Play Diablo II LOD from a USB External Drive Empty Play Diablo II LOD from a USB External Drive

Post by Admin Tue Mar 10, 2020 11:21 pm

•Posted by u/itpgsi2
7 years ago
[GUIDE] Making a portable Diablo II copy configurable for any server or realm. (This tutorial example configured for [You must be registered and logged in to see this link.] server) Play from USB pendrive/external HDD on virtually any Windows PC without installing the game!

Info:

If Windows is not your thing, there is also [You must be registered and logged in to see this link.] by Brian Spiller. If Linux isn’t your thing either, then as far as I can tell you’re a Mac user, so continue enjoying non-portable D2 since I’m not aware of similar guides or methods for Mac version.

Task: to make a portable take-it-with-you copy of Diablo II ready to connect to SlashDiablo on majority of Windows PCs regardless of security restrictions, unless those are extremely strict (to extent of heavy firewalling or preventing users from executing programs on removable media).

NOTES: Current version of this guide is meant for a “clean” portable version, without mods or maphacks that is. I will update the guide as I look further into methods of getting maphacks to work with portable launcher. Other than that, expect the portable copy to be identically functional to your existing installation. It’s up to you to decide which patch to use (1.13c/1.13d). If you log in to official battle.net with your installed game, its portable counterpart will be all right to connect as well, however use it at your own risk, as this solution wasn’t tested with battle.net, and I’m not sure about compliance with battle.net’s TOS. Portable launcher is confirmed to work on Windows XP SP2/SP3 and 7.

This post is a step-by-step DIY guide and a rather long read with technical details. If you want just a “plug&play” TL;DR, basics are covered in this comment in initial thread.

As all of you may guess, the foremost problem of getting portable copy to work is dependency on registry entries. Copying D2 files to a flash drive is done in a pair of clicks, but we can’t add SlashDiablo gateway to the list, unless we have enough privileges to make changes to Windows registry on the target system. Actually, this is not just about server list. Normal game operation is in question if it cannot reach corresponding registry keys. The good news is we have application virtualization technology on our side Smile. We can add a virtual registry layer isolated from the target system and run Diablo II in its context. For this task I chose Cameyo for three reasons: 1) it’s free; 2) it creates standalone packages; 3) it’s targeted on individual users rather than on IT specialists or enterprise environment.

PREPARATION

Make sure you have the following at hand:

Regular Diablo II installation configured to connect to SlashDiablo. Most likely you already have D2+LOD installed on your computer. If not, install the game and expansion using the “Full” option and patch it as usual; follow instructions in Server FAQ to add SlashDiablo to server list. The game remembers the last server you logged into and suggests it by default, so make sure you select SlashDiablo and connect to it in-game prior to making the portable copy.

Cameyo virtualization suite. [You must be registered and logged in to see this link.]. You won’t need to install it; there will be just one executable file. “One point wonder”, anyone? Smile

Registry entries in your system related to Diablo II, exported to .reg files. This stuff may seem advanced unless you’re familiar with Registry Editor application and registry structure in general, but there’s really not much of a hassle.

Open Registry Editor (normally you won’t find it in Start menu, one of ways to go is pressing Win+R, typing regedit into text field, and hitting Enter).

In the tree view panel to the left, navigate to the following four keys one by one like you would in Explorer:
a) HKEY_CURRENT_USER\Software\Battle.net;
b) HKEY_CURRENT_USER\Software\Blizzard Entertainment;
c) HKEY_LOCAL_MACHINE\SOFTWARE\Battle.net;
d) HKEY_LOCAL_MACHINE\SOFTWARE\Blizzard Entertainment.

Upon getting to each one of the keys listed, right click on it and select Export. Save files to location when you will be able to find them a few moments later, names are not important, for instance go with numbers from 1 to 4. When done, close Registry Editor for now.

Target media. Any USB pendrive or external HDD will do just fine. Copy the entire Diablo II folder from your computer to chosen destination. You will need about 2 gigs of space, but you can safely cut it down to 1.5 gigs if you don’t need videos to be in the portable copy (leave out d2video.mpq and d2xvideo.mpq).

CREATING A PORTABLE LAUNCHER

The usual process of virtualizing an application is installing it into a virtual layer, from where it is then packaged into a single standalone .exe. Now, the idea of condensing 2 gigabyte game into 1 executable is apparently quite unappealing. What is appealing is that Cameyo provides means of creating a blank package containing only preconfigured virtual environment, in the context of which we can start the game.

Open Cameyo (remember, we downloaded it at preparation stage). You can ignore the prompt to register an account, as we won’t be using online features. Go to the Studio page and click on Package editor. When Package editor opens, from the File menu select New empty virtual package.

You now find yourself at General tab of our new package settings. Click Change in the Startup line. In this dialog make sure Specific command is selected, and type game.exe (it is D2 executable) into the field right under. Note that we do not specify path to this file on purpose, as we want it to be relative to package location. You can also add parameters in the next text field, for instance -w -skiptobnet in order for the game to start in windowed mode and skip to battle.net login screen right away. Click OK to proceed.

In Isolation mode option select Full access. We can’t go with isolated mode, since our package is empty and the game will need to access its files outside of the package.

Data storage option can be left default. I personally clicked Change in its line and selected Under the executable’s directory. Choices of icon and application ID are up to you. When ready, hop to Registry tab.

On the toolbar inside Registry tab click Import a .reg file button, presented by a blue folder icon. Locate .reg files that you exported from registry at preparation stage and perform import procedure for all 4 of them. We are now going to make a few edits to our resulting virtual registry.
First, we don’t want to keep video settings taken from our computer, as these will surely be irrelevant on other hardware.

Navigate to %Current User%\Software\Blizzard Entertainment\VideoConfig, right click on it, select Delete, and confirm. Repeat for MACHINE\SOFTWARE\Blizzard Entertainment\VideoConfig if it exists.
Second, we need to get rid of every absolute path specified in game’s registry entries. For this we will need to edit key values.

Click Edit registry toolbar button, presented by a blue fragmented cube icon. Confirm your intention (click OK), and we meet Registry editor once again, but this time we are inside the virtual registry snapshot. Be careful, we need to stay inside this node of the tree, so only go down from Registry key, not up. Navigate to %Current User%\Software\Blizzard Entertainment\Diablo II. Edit values by double clicking on them. Change values according to the following table.

Value name Change to
DiabloIICD .
InstallPath .
Program .Diablo II.exe
Save Path .save
Repeat same edits for MACHINESoftwareBlizzard EntertainmentDiablo II. Note #1: the dot in our new paths represents current directory, which is the directory we start our portable launcher in. Note #2: Values listed here can most likely be deleted without any harm to the game, but I decided to go via safe route.
After edits are made, close Registry editor and see how changes are reflected in Package editor. We’re almost done now!

Get to the Advanced tab. We only need to add one thing here. Type the following into Exclude child processes from virtualization text field:
%System%\spoolsv.exe
All Cameyo packages captured via normal install procedure incorporate exclusion of this system process; apparently it is needed for normal functioning of virtual layer, don’t ask me why.

That’s it! We’re ready to save our portable launcher. Select File -> Save and save it to the Diablo II directory on the target media. Give it a descriptive name so you don’t have trouble finding it among lots of game files.

USING YOUR PORTABLE COPY

There’s not much to cover here, you probably already figured this out Smile Plug your media with a portable copy, start the portable launcher and feel yourself at home. Oh, and command line parameters work too. portable_launcher.exe -w will start the game in windowed mode, and so on.
Admin
Admin
Admin

Posts : 75
Join date : 2016-03-11

https://lubasz4gaming.forumotion.com

Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum