murkl / d2launcher

Diablo II • Median XL • Mod Launcher for Linux
https://github.com/murkl/d2launcher/releases/latest
32 stars 8 forks source link

Default Configs #19

Open Thorinori opened 5 months ago

Thorinori commented 5 months ago

I wanted to double check what the default config settings were (and then change them to cnc-ddraw by default since Glide is basically super broken now) but can't seem to find how they are being set. I found where you are checking and creating the config entries, but am not quite sure beyond that. Any info would be appreciated!

murkl commented 4 months ago

Actually the default configuration you can find starting from line 73 were the variables are defined. But this properties only set, if the user does not have already this property in d2launcher.conf. There you will find d2_args this is set to -3dfx (glide default). To change to cnc draw, you have to add a argument to wine to override the ddraw.dll. And keep in mind, that since new API the cnc-draw files also avlaibalbe as download (https://github.com/murkl/d2launcher/issues/13)

Thorinori commented 4 months ago

Alright cool, thanks! Not quite sure how I missed them if they are right there haha. Yeah, will look into setting the override automatically for sure, and ideally get it set for -ddraw default since just using Sven's Glide is VERY broken for a lot of players nowadays. As for the API part, will I need to do an API call for the cnc-ddraw files specifically or do they just come with the MXL download now when you do it normally?

murkl commented 4 months ago

With the new API is a little bit tricky :) You do not need to download cnc files from API yourself this is done in update patch step. Since d2launcher 4.0.0 (new API) the d2launcher-medianxl-*.zip files located in ~/.d2launcher/patches has a lot more files included from API (also the cnc files). And all this files included a patch file will override the files in $d2_dir. All custom cnc files in $d2_dir will also overridden. More infos especially for legacy support (patch files created before 4.0.0 which do not includes the cnc files) i have written here: https://github.com/murkl/d2launcher/issues/13#issuecomment-1893827851

Thorinori commented 4 months ago

Perfect, so yeah just sounds like the wine override and changing the default flag will be all that is needed then!

murkl commented 4 months ago

Indeed, thats the only things do modify. And if the provided cnc files/version from API do not work with linux we should talk to @whistmxl for seperated api endpoint for linux cnc files

Edit: But we need a falback/legacy solution for the old patch files (which do not include the cnc files). In this case, we should check on start of diablo if this files exists in $d2_dir and if not, run with glide (-3dfx)

Thorinori commented 4 months ago

I generally have been using cnc since d2gl doesn't work right with d2stats currently, so as long as the version they are pulling via the API is recent it should work fine on linux.

As for the fallback option, yeah that sounds perfectly reasonable to me!