Bliss Version Switcher

fearedbliss

New member
Jun 29, 2011
395
0
0
youtube.com
Name : Bliss Version Switcher
Author : Jonathan Vasquez (fearedbliss) <[email protected]>
License: 2-BSD

Description:
---------------
This is a simple Java based application that will help you manage/launch multiple versions of Diablo II from a single window.

This means you can easily install and play every single version of Diablo II from 1.00 to the latest 1.14d (and any other future versions) while maximizing your disk space (Since you won't have to keep having multiple copies of your MPQs), and having complete character isolation.

Video Tutorial

Diablo II Patch Mirror

[Download] Latest Bliss Version Switcher


The collection require you to extract them with 7-Zip. This is because I've used a high quality compression algorithm that is provided with 7-Zip. You can download 7-Zip for free here.

NOTE: In order to play versions before 1.07, you need to have your classic disc (or use the mini-images or modified Game.exes provided in the Bliss Complete Collection). You also need your expansion disc to play versions of LoD starting from 1.07 through 1.11b (again, not necessary with the mini-images or modified Game.exes)

PS: I've generated a sha256 checksum for each of the bundles and signed the manifest so that you can check their authenticity. The signatures can be found here, and my GPG key can be retrieved from pgp.mit.edu.

o1hhReF.png

0iFinBd.png

qourIQ2.png

bjCUcui.png



- Jonathan
 
Last edited:
Yes, definitely. I'll need people to help me test it though, but it should be pretty easy, just gotta adjust stuff if anything doesn't already work.
 
Hello Everyone,

I'm proud to announce the switcher. You can download the latest version at this link:

https://github.com/fearedbliss/Bliss-Version-Switcher/archive/master.zip

You will need to have Java 7 installed. If you are already using GoMule, you might be already good to go, if not, then download the latest version of Java and you will be fine.

I've also recorded another video that goes through the switcher on how to add stuff and showing it in action again:

http://youtu.be/C5-7OtGogtU

Hope it helps the community.

If you find any bugs, let me know.

- jon

PS: Today is my Birthday (9/26) :D. I guess I'll be giving you guys a gift LOL
 
Last edited:
Happy B-Day! :)

It's not very practical to me needing to watch a full video with audio to understand how it works, at least not right now.

I saw a part where you patch the D2 every time you add a new version?

(And if in the future people need a 8 minute video to know how to use it, it'd be a bad thing. A short text with some images, it'd be the best thing. If it's not simple to explain, it's not simple to do.)


Can you describe the process of creating an "auto-launch" and how said launch works?
And tell us what features do you plan to add next?

I have some comments and suggestions, but without understanding 100% how this works and what you already plan to do :/
 
I just made the video because I like making videos and I think it's a more interactive approach with the community to do it that way. Don't mistake video instruction for higher difficulty haha!
 
Cool, this could be preferable to the python switcher I am using. Happy Birthday!

If I have version folders already set up, can I just add them easily?
 
You will need to reorganize the way the files are. Like if you know for a fact that a folder is using 1.06, then you can make the following directories (Assuming your drive is C:\Games\):

C:\Games\Diablo II\Classic\1.06

and then in that folder you can put the 1.06 dlls and Game.exe/Diablo II.exe. If you have 1.06 characters, then drop the 'save' folder in there as well.

If you have let's say version 1.08 Classic and 1.08 Expansion, then the directories would be:

C:\Games\Diablo II\Classic\1.08
C:\Games\Diablo II\Expansion\1.08

You will also need to make sure that you run the version that is in the current directory _for the first time_ that you run the application. This is so that the application kicks start itself and then has a clear picture of what version you ran last time. Alternatively, you can make a file called: LastRanVersion.txt and add the version number for the version that is in your D2 directory.

Normally all of the above stuff is handled by the program automatically, but since you have previous stuff, you just need to make sure that you re-arrange the files correctly.
 
I updated the OP completely. Too many new awesome things + documentation. (Hopefully this isn't considered a double post due to the amount of time that has passed).
 
Ill probably try it out since i just recently re installed D2 for the 20th time and was thinking of playing some older versions. It wont be for a few days thought because of work.
 
This looks interesting. After formatting my computer and re-installing I might try it. I'll probably have a ton of questions, though :whistling:
 
Looks great!

A question tho, couldn't the program come with all versions installed and ready to launch?

Unzip it inside D2 folder, bang all version folders, java app wth everything ready to go. Bang! Time travel for everyone!
 
Yes I could have done the backups myself and give you all the entire package with the application + all the dlls.. one problem though, then the program would be like 75 MB +.. It's better if you specifically add the version you will be using since then you will be wasting a lot of space on all the other versions you will never play.
 
75 MB is going to be pretty inconsequential to most people.

I vote for a lazy man's version :D
 
Lol it's probably more than that. Can you guys give me a list of all the patches starting from 1.00? If you look at the source code, I was actually going to make the "Add" and "Modify" buttons show a version selection box rather than a text field. Although it's much more flexible to use the text field.

private String[] availableVersions = {
"1.00", "1.01", "1.02", "1.03", "1.04", "1.04b", "1.04c",
"1.05", "1.05b", "1.06", "1.06b", "1.07",
"1.08", "1.09", "1.09b", "1.09c", "1.09d", "1.10", "1.11",
"1.11b", "1.12", "1.13c", "1.13d"
};

I'm sure there are versions missing there like 1.10b/s I think they are called. Once I get a list of all the versions, and I get the patch for those versions, I can try to create this "Lazy Man Version" package to see how big it will be in total.
 
I'm probably dumb but what is the point of this program if it doesn't come with all versions and you still have to get/compile them yourself? Is it literally to save yourself one or icons on your desktop?
 
PurePremium
Estimated market value
Low
High