Cactus - A Modern Diablo II Worldstone Manager (Original, Not Resurrected) is now out for Linux!

Hello all,

I’m proud to announce the official launch of Cactus 5.0.0, A Modern Diablo II Worldstone Manager (Original, Not Resurrected) for Linux. This is a complete re-write from scratch of my previous Cactus application that I’ve been working on for the past 13 years on Windows (originally called Bliss Version Switcher) into Zig/DVUI for Linux/Wine. There is a lot of features and functionality implemented and it would be too much to write here, however, I have written a very detailed README on the Cactus page which explains everything. I’m excited for people to check out the code and the project itself. If you are a Diablo II player that is interested in continuing to play the Original version of the game, and are also on Linux, then you’ll definitely want to check this out.

Additionally, this project is completely handcoded. I do have access to my own local AI inference server and agents at home, however I did not use it for this project since my own local AI inference server is for my own personal exploration of how AI works, not necessarily that it brings me stimulation to generate code from it. I most likely would use AI to re-write the front page of my website or re-write my dependency of a dead flat page CMS I use to post my blog posts, since I don’t really care about that and it seems to be simple enough I can delegate it to the AI. However, for things that I personally care about that I want to maintain for decades, as I have been doing with Cactus, I need to be able to fully understand the code and maintain it. I can’t easily maintain AI generated code if I delegate almost all control to it. It’s too much code. Professionally, I do have access to AI tools as well since the industry has been incorporating AI stuff directly into the business, so it’s not really feasible for me to escape it in all sectors of society. Below you’ll find my AI and Code Contributions policy for Cactus:

AI Policy and Code Contributions.

This project is made by humans for humans. Therefore all AI generated code is not allowed. You may use AI in an ancillary capacity as you normally would use a search engine, for your own brainstorming and research. However, any code that would be contributed must be handcoded and will be judged as such.

In addition, while Cactus has been and always will be an Open Source project released under a permissive license, I’m not actively looking for code contributions. I do however encourage forking, so if you are itching to make a change, feel free to make it in your own branch. Go wild!

Hopefully everyone has a lot of fun reading and playing with the code. The project is also permissively licensed under the Simplified BSD License (2-BSD), so if you find any sections of code that you want to use, feel free to use it.

I would also like to thank @andrewrk, @kristoff, the rest of the zig team, and @david_vanderson for making Zig and DVUI. It wouldn’t have been possible for me to implement this project in the way that I wanted to speak to the machine without your language and tools. It’s been a hell of a ride since I started using Zig during 0.11.0 era, and things are only going to get better.

I’m ready to Maintain It With Zig!

Take care all and stay safe,

Jonathan

4 Likes

Very cool!

I also have some stuff I made for the original version of Diablo II with no plans to update it for Resurrected (but they were also made before I was aware of Zig):

1 Like

Nice to hear from a fellow Diablo II hacker. There aren’t many of us left these days and PhrozenKeep is basically dead.

1 Like