Hacker News new | past | comments | ask | show | jobs | submit login
Cactus – A Modern Diablo II Version Switcher, Character Isolator, & Mod Manager (github.com/fearedbliss)
108 points by fearedbliss 8 months ago | hide | past | favorite | 72 comments



This is the first time I've heard running windows in an internet restricted sense as a "dark island" but I like it.

I've been doing something similar for quite a while, by default blocking windows machines from having internet access, except for a tiny subset of programs. A dark island with a boat dock if you will.

Turns out its a real PITA with "modern software" much of which can't even install itself without internet access and programs that actually provide self contained installers becoming fewer and fewer.


Yep. GOG is one of the few places you can get old school offline installers for new and old games.

https://www.gog.com/


GoG is really great, especially sice old games are patched and working to modern Windows systems usually.

They have some good sales going now too.


Definitely. I've been on the Dark Island for about 6-12 months now and been loving it. You definitely need to be more conscious of the apps you use and all of that (Which I already have been for like a decade at this point through the use of Linux and FreeBSD, and using more open source apps - although I still use proprietary stuff if necessary). But once you are conscious about the apps, then going offline is not as difficult. You'll know what apps you can and can't live without, what apps work without internet or not, and workarounds that can be used with certain applications. You'll also know what offline installers and other setups you'll need to back up. For example, since I've gone dark, but I still want to continue working on Cactus even after Windows 10's EOL, I've downloaded the entire Visual Studio 2022 Community Edition archive, and can install everything completely in an offline environment.


I wonder if his Dark Island Strategy would also work for lan-multiplayer, or maybe even steam-multiplayer (maybe via steamemu?). Maybe it's enough to setup some good firewall rules before starting.


It would work for lan gaming since you are within your network, but not for Steam since Steam essentially is a form of DRM and you'll need to "check in" eventually. I know Steamworks is their actual DRM library and that developers can decide if they want to use it or not, but Steam essentially made DRM flourish in the industry. As much as I love Valve and the games they've made early on, they definitely have hurt the industry in this respect.


I like the idea presented it the post in theory but it seems basically impossible if you want to play anything modern. Driver updates, day one patches, etc etc.

However, since I literally only use my Windows system for gaming I don't really care what (additional) hell Microsoft puts it through over the years. Even being forced to have some sort of account, etc, as long as I can just play games without it being too much of a hassle.


The long tail on this game is absolutely amazing and should be an example to others.


> should be an example to others.

I am curious to know what sort of example it should be, and to whom.

Video game developers and publishers will look at this as an example of leaving money on the table, since people continue to enjoy the game without having to pay them any more money. Yes, the tail is long, but it doesn't end up with more money for the game company so they will see it as waste.


When a company has a mission statement, that mission statement's core purpose is to define when you leave money on the table. It defines how you plan to achieve long term success, otherwise every single company would have one mission statement: "Increase shareholder value by maximizing next quarters profits" or "extract as much revenue from customers as possible, while minimizing investment into that extraction."

Here is blizzards:

  We create the most epic interactive gaming and entertainment experiences 
  on earth immersing players in new, unimagined worlds. Our products help 
  build community and create social platforms that bring people together.
Blizzard did that for years. Blizzard was an unstoppable gaming behemoth. WoW was culturally significant. Starcraft birthed, or at least popularized eSports. MOBA's came first from starcraft's "use map settings" maps, and later more directly from Warcraft 3's. Diablo 2 is still considered a better game than any of it's sequels.

It's quite hard to understate just how influential blizzard was to the gaming industry.

When blizzard was "leaving money on the table," they were arguably the leading game developer in the world. Lots of kids grew up dreaming about working for blizzard. I would bet money a large number of current day game devs were inspired by blizzards offerings. How many gaming companies have their own conventions?

Blizzard wasn't a company that just made money. They altered the industry. They defined the industry, and they did it by "leaving money on the table." They made fun games first, and money second. Now they make money first and games second, and it shows.


Okay, I agree, and they left a lot of money on the table. Any modern gaming company (well, publisher) with reach would see that fact towards the forefront of all Blizzard facts.


How exactly did they leave money on the table? What more could they have done?


Paid loot boxes, obviously. /s


I think you're right - loot boxes, rent, aka subscriptions, micro transactions, etc.. That's the only way they could have milked it for more.


Intentional artificial feeling time wasting mechanics, XP weekends, increased drop rate weekends, etc.

All of these things knock a person right out of immersion. Frequently they also damage social behavior. "Pay for power" is at odds with "work together for power." "Pay to look cool" is at odds with "work together to look cool." "Use our market place to trade" and "most items are bound" directly damage the social nature of trading.

Money incentives anti-social behavior. Time wasting and artificial mechanics damage immersion. So blizzard spends time on features that are directly at odds with their mission.

At some point the diablo franchise went from "we're going to make an action rpg about killing demons" to "what's the best way to skin this slot machine". Diablo 3 feels like a completely artificial experience, while diablo 2 feels organic.

It all comes down to the who is given power in an organization. Boeing, Intel, Blizzard, etc. They have all made one critical error, which is to put MBA's and accountants in charge instead of engineers and creatives. Short term that's fine and benefits everyone but customers. Long term it kills the egg laying goose.


Well said!

Ahhh working together to get cool stuff - fond memories of that!


They've sold it continuously over the last 20+ years, and continue to do so. I bought a copy this past year to try out Project Diablo 2[A], my second or third purchase of it, personally. They remastered it and sold that too, while selling D2, side by side. I also bought that to play with a friend. Quality sells.

It should be an example to all companies that a game made with passion can produce money for a long time. Diablo 2 was also one of the games that launched Blizzard into the stratosphere of popularity (which can be turned into wealth directly and indirectly). Awards. Prestige. The obsession with cash is out of control.

It might actually be a fat tail, if that's a thing, given how long it's been selling.[B] In fact, blizzard has probably made more money on me from D2, than D3, which I bought once, and I have not purchased D4 for a number of reasons.

[A] https://www.projectdiablo2.com/ - a lot of fun

[B] https://en.wikipedia.org/wiki/Diablo_II#Sales

[Edit]

Wait, what exactly is a waste? Not charging a rent? aka a subscription?


Diablo 2 is very hard compared to Diablo III, which I find is a major selling point.

I think the waste in D4 is that there is very little replay value, only the long grind or Seasons.

But starting over and over has very little appeal, so that leaves only one option: New content released regularly.

Which sadly is not planned for D4.


vanilla d3 was very hard, lod made me play hc exclusively


diablo III difficulty is adjustable. you can make it as hard as you like during leveling and at the endgame.

I played diablo 2 a lot when I was a kid, and really, the only hard parts were bullshit mechanics like damage immunities and iron maiden. it also had no real endgame, only mindless baalruns. ubers were only doable by a few paladin builds (with reasonable gear/effort).


The endgame was your next character (playing hardcore to spice it up). :)

I still prefer that design to pretty much everything aRPG developers have come up with as endgame in the meantime.


They’ve sold millions of copies at $50 a pop.

You could say they left money on the table. You could also say they’ve profited tens or hundreds of millions of dollars.

And most games fail to realize this while maximizing revenue.


I'd say that they do still make money of the game.

The reason both Diablo 3 and Diablo 4 has sold well is because of the legacy of Diablo 2.

Developing a great game is a surefire way of gaining a dedicated fanbase, which will carry your company a long time.

(A shame that Blizzard is pissing away all that goodwill though.)


> Video game developers and publishers will look at this as an example of leaving money on the table, since people continue to enjoy the game without having to pay them any more money. Yes, the tail is long, but it doesn't end up with more money for the game company so they will see it as waste.

I understand where you are coming from - but it's not entirely true, that there's no additional money in it.

Blizzard had built a very strong reputation of making games all of which have this long life and thus are are always guaranteed to be worth buying straight at launch. Who knows how many of Diablo IIs lifetime sales can be attributed to that, but it sure had some influence.

And D2 again delivering on that Blizzard promise only strengthened that reputation - which again translated into a positive effect on sales on subsequent Blizzard releases.

Resurrected is another title that most obviously and directly benefited from the longevity of D2. The way D2 was designed surely did translate into sales of Ressurected.

But D2's longevity also contributed a LOT to the popularity of the franchise overall - which in turn surely had some influence on the sales of D3 and D4.

Then there's also the battle chest, which didn't sell badly to my knowledge - and don't even get me started on all the various Diablo Merchandise you can get. I'm pretty sure that made them a little bit of money as well.

It's not just the long tail of sales on the game itself - there's also a lot of additional, compounding long-term benefits. Publishers often disregard those benefits, because they aren't able to reliable measure those effects and put a number on it. And they generally often value short-time profit gains over nurturing a long-time fanbase.

And all off that of course leads down the path of yearly sequels that barely improve anything over last years game, but are still soooo expensive to make, that publishers need to sell loot boxes and battle passes and microtransactions and dlcs, just to make even - and then cutting short the long tail with next years' release. Rince and repeat until people get fatigued and the cash-cow is milked dry...

Maybe, just maybe, churning out a few less titles that each have a longer tail of sales and steadly grow a loyal fanbase and increase the sales-appeal of the franchise as a whole, is not that bad of a long-term strategy after all. Maybe this could serve as an example after all...


It’s not well known but the original pitch deck for Diablo included loot boxes in the form of buyable CDs that would have random items on it, like booster packs for card games.


if you have long term fans that really love what you make I think making most of your money with merch is an area worth exploring. Most bands make their money that way, it's what made Star Wars rich, it's where most of the pokemon money comes from too. I don't think a game has to make money just from the game itself.


AoE2 seems to be finding ways to monetize the long tail in a good way. If whatever monstrosity is left of Blizzard had any positive intentions at all, they could release non-malicious remasters and expansions as well.


Well, now they're the "same" company.


hahah what a fucking outlook. Grim. Just grim. What about the profits on a game from 2002 that sold millions that the developer could still milk!!???

Are you an MBA? I guess you got into tech for the money and not the love.

To your point I have bought the Diablo 2 Remaster but not yet played it :)


I think you are misreading my comment as something I believe. It isn’t, I just have been around long enough to know how companies think.


Back then it wasn't as a big a market as it is today full of shit games


In my stumbling around YouTube in the past week, I found "The Next Major RTS Will Fail. This Is Why" - https://youtu.be/XehNK7UpZsc

The publishers have listened to their hard core players - and created games for them. Is Diablo III for the people doing seasons? or the people who play through the campaign in solo mode?

With modern games, this in turn means that the casual to competitive conversion rate is low (because of the lack of solo content to hook the casual players) and publishers look to milk more from the competitive players by making the game even less accessible.

The games are being developed as multiplayer first today... and that in turn means that the solo modes that the casual games aren't there.

Honestly, if MMO is one of the first things listed on a game, and solo content is lacking - that gets a "nope" or "meh" from me on Steam. Meanwhile, some fun old games I still pull up from time to time to play.


good ol' days when Blizzard wasn't a public company that needed a way to generate on going revenue via some sort of game pass system.


Or maybe the "others" simply don't exist because D2 was already the peak of the genre, and it's got a long tail as proof.


It was the example for the makers of Path of Exile. I share Chris Wilson’s talk (Designing Path of Exile to Be Played Forever) here frequently!

https://www.youtube.com/watch?v=tmuy9fyNUjY


Also heroes 3


HoMM3 is one of my favorite games, and I also enjoy its modern reimagining, Songs of Conquest. You might like it too.


I was recently looking into it, sadly the community all seems to be on platforms like Discord and Reddit, which is a dealbreaker.


Is there a HoMM3 community? Where is it?


I was talking about SoC.

For HoMM3 there used to be several, this one still seems to be active :

http://heroescommunity.com/


> I was talking about SoC.

I know, but you'd only consider the lack of an open community a dealbreaker if you were already part of one such community for HoMM, so I was curious. Thanks for the link!


There are some really great mods for Diablo 2. Project Diablo 2 is mod with an active online community that has a season system, plus new abilities and balancing. Its a fantastic mod. Some others exist like Path of Diablo.


PD2 is absolutely amazing. Season 9 is estimated to be released in a few weeks to a month. If any of you are D2 fans, you simply must try it. I've purchased several copies of D2R and it pales in comparison.

Do note that we are currently in a crafting league (a non-standard gameplay mode). If you try the game, you'll need to do it in single player and downgrade to s8[0], or wait until s9 is released.

0. https://www.reddit.com/r/ProjectDiablo2/s/o2hkXE6mue


> However, since Cactus is written in C#, it behaves as a native Windows application and allows it to integrate natively with the system. On the other hand, Bliss Version Switcher was written in Java and there were many limitations that lead to the Cactus rewrite.

I have no idea what any of that means that or why a rewrite from Java to C# was necessary. It's also unfortunate, because C# GUI applications can be a real pita to run on Linux (particularly my Steam Deck).


Cactus and Diablo I / II were exclusively made for Windows (even though I use FreeBSD as my primary OS, and used to be a Gentoo Linux developer). Thus I wanted full and seamless integration with the OS that the game was originally made for. Since Diablo II can run on UNIX-like systems through Wine (fairly well - at least for the Vanilla game, not too sure how mods would interact given specific uses of OS behavior, hard to say without actually testing every single mod made), and also because all of the Cactus platforms are self contained and independent (even independent from Cactus itself), it would be easy for someone to implement a Cactus like type of system on UNIX-like systems. You would just need to do the same file switching that Cactus does, and update the "registry" which would actually be located in a WINEPREFIX. I will leave that exercise for someone else since I'm just interested in maintaining Cactus on Windows 7 and Windows 10 exclusively.


Thanks - I actually used cactus and llama years ago when I got interested in playing diablo 2 again and it was really cool to try out the older versions of the game and to play around with the larger stash.

Curious - I remember thinking about this a few times after using it - I don't see the binaries in git anymore, was this done for performance reasons or did Blizzard reach out?


Yup it was a combination of factors, but nothing legal related, Blizzard didn’t reach out. It was easier for me to maintain and provide a better experience by just hosting the main file archive itself on my server directly since all of the binaries live there anyways. I use GitHub primarily as a markdown rendering frontend for the project. Of course the Cactus Core itself is publicly available and the source code can be found at the https://github.com/fearedbliss/Cactus-Core page.

Edit: By “llama” I’m guessing you mean Alpaca (my simple stash extension based on PlugY 11.02)?


Is there some significance to the word cactus in D2?



I don't know whether this the reason, but the project is 1) written in C# and 2) cactuses have an enduring spirit.

For a project that aims to make all version of D2 available (and a lot more), it seems to fit.


Lol you are funny. I'm having fun reading everyone's comments on the theory of how the name came to be.


As a former D2 player, I don't think so.


I don't remember it being relevant either. Honestly kind of a huge creative miss to not use SOMETHING from the game lord/items.


Sometimes the name an author gives to a project doesn't need to be related to the thing itself, but can be a name inspired by other life factors. In this case I decided to call it Cactus.


Just musing, but I can definitely picture a D2-art-style cactus, and haven't played in 15 years or so...


>Due to Microsoft mandating people to have an online connection and a Microsoft account for Windows 11 (at the OOBE stage), any version over Windows 10 will not be supported.

No they don't, bullshit. I agree with the sentiment that MS should just have a button but don't lie like this.

I mean it's hidden, but there is a sign in method or OOBE\BYPASSNRO or burn the ISO with Rufus.

https://www.ghacks.net/2023/01/26/how-to-bypass-the-microsof...

Use the email address [email protected].

Type any password on the next screen.

Windows will display "Oops, something went wrong" on the next screen.

Clicking Next opens a screen that allows you to create a local account.


I added the following to the latest Cactus documentation updates:

- Added sources links related to Microsoft requiring online activation during Windows 11's OOBE stage to the "Windows 11+ will not be supported" section of the Cactus documentation. I will not accept the premise that I need to use a Microsoft Account, or require online activation at the OOBE stage, for me to use my own computer, and I definitely won't accept the use of "workarounds" to bypass that requirement as a justification to use that OS. That requirement should not be there in the first place. This is the same thing Microsoft already forces people to do on the Xbox One. When you first buy the console, one of the first things you need to do is log into their servers. Your console is useless until you do that. That's unacceptable. I'm not surprised they are moving in that direction with Windows in general, and I'm not accepting it.

  - Source 1 - February 16, 2022 - Windows 11 Insider Preview Build 22557 - https://blogs.windows.com/windows-insider/2022/02/16/announcing-windows-11-insider-preview-build-22557/

 ```
 Similar to Windows 11 Home edition, Windows 11 Pro edition now requires internet connectivity during the initial device setup (OOBE) only. If you choose to setup device for personal use, MSA will be required for setup as well. You can expect Microsoft Account to be required in subsequent WIP flights.
 ```

  - Source 2 - May 5, 2022 - Windows 11 Insider Preview Build 22616 - https://blogs.windows.com/windows-insider/2022/05/05/announcing-windows-11-insider-preview-build-22616/

 ```
 Previously, we shared new requirements for internet and MSA on the Windows 11 Pro edition. Today, Windows Insiders on Windows 11 Pro edition will now require MSA and internet connectivity during the initial device setup (OOBE) only when setting up for personal use. If you choose to setup device for Work or School, there is no change, and it will work the same way as before.
```


We shouldn't have to jump through Microsoft's hoops that might or might not work.

I wouldn't support any Windows version other than 7 (and even that one, only for legacy software).

(Not to mention that Windows 11 requires specific hardware : a "Trusted Platform Module", which comes with its own ethical can of worms, and which the previous generation of desktop AMD processors doesn't have.)


I agree.

But 7 is outright dangerous to have internet connected, I hope you are not using it or recommending others to use Win7 my god.

The TPM shit can also be bypassed but yes I don't like it either.


Why wouldn't I use it (for games) ?

BTW Microsoft still does monthly security updates for it.


You definitely should continue to use Windows 7 (for games in an offline capacity). Nothing wrong with that and it's exactly what you should be doing for gaming with old games. I legally own Windows 7 Ultimate and Windows 10 Pro, and use both of them for playing my old (and wonderful) collection of games. It's the same thing you would do either with just owning a Gameboy/N64/PS1/PS2, etc, or for the desktop case, trying to emulate old hardware on X platform. The former here is more applicable than the latter of course, but both are perfectly valid when speaking about systems used in an offline capacity.



What are those patches then ? They claim to be security-related.


Yes, ESU is extended Windows Update. But it ran out for Windows 7 in 2023.


Ah, found it :

https://en.wikipedia.org/wiki/Malicious_Software_Removal_Too...

> Despite Microsoft ending general support for the Windows 7 operating system in 2020, updates are still provided to Windows 7 users via the standard Windows Update delivery mechanism.

And still are (for now).

Of course :

> MSRT does not offer real-time protection. It scans its host computer for specific, widespread malware, and tries to eliminate the infection.


That is antivirus updates delivered over Windows Update, not Windows Security Updates.


It's nice to see as a pet project but really D2 is just too old in every single way. At this point you could have just joined some game studio and help making a modern aprg.



If PG doesn't like my comment he can delete it or ban me. I am saying what I am thinking based on my experience with arpgs. Sure this tool would be useful for some, and I know there are people still modding the game, running seasonal ladders and so on trying to keep it up for some time. And with all respect to the original it's time to move on and clearly this person has skills and passion so I suggest a way use it.


I love the original Diablo 1 and Diablo 2 and I don't want to work on newer stuff. It's like saying "Why you still playing Chess? That game is like 1500 years old". Sometimes you need to do what you love, it doesn't matter what other people think or do. Enjoy your own life and do what you like. Simple as that.


I don't fully agree with a chess analogy, because chess has certain completeness and perfection to it so there isn't really much to improve or innovate on. Where arpgs went a long way (paved by D1 and D2) in terms of user friendliness, content, entertainment and so on. One example that you know for sure is that respecs were not in the first versions of D2 and were added later in a limited form of quest reward and later on became farmable items in unlimited quantities and is a universally accepted improvement which all other arpgs do today.

And of course you enjoy what you do, my suggestion is to iterate on that, not to remove that aspect. This tool is a job well done from what I can see anyway.


And pg is saying this type of commenting is making HN worse.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: