serpentiem / ddmk

Extensive gameplay mods and more for the Devil May Cry PC games.
zlib License
242 stars 13 forks source link

Can it be made compatible with steam proton/wine for linux? #301

Open MadoScientist97 opened 2 years ago

MadoScientist97 commented 2 years ago

Not sure if this is within the project goals, but I tried using this on linux with steam proton as the newest one (7.x) added support for DMC HD collection. I thought it does not need anything extra apart from copying the files over, maybe it'll work. But ddmk is not being launched. I could try debugging it if I knew where or what to check for, but I am not that deep into proton right now. What is the most likely reason of it not being loaded? Does it absolutely depends on Directx that the vulkan translation is not helping with?

blan44 commented 2 years ago

Also wondering about the possibility of Proton compatibility.

MadoScientist97 commented 2 years ago

I actually somehow got it working on proton 7.0. It runs well enough for DMC3, it loads for DMC1 but crashes when fast switching weapons.

monoai commented 2 years ago

Hi there! I would like to contribute some information for this. I'm not sure if this should be reported in Proton or here, but I think this is the proper place for it for something I will mention later. tl;dr: I think the project should use another font/include a free-to-use font.

I got ddmk working on Proton Experimental by doing a Wine DDL Override by adding this on the launch options WINEDLLOVERRIDES="dinput8=n,b" %command% which could make dinput8.dll work in Proton. Launching the games however fails due to a weird font error thrown up by imgui_draw.cpp stating Assertion failed: (0) && "Could not load font file!". I fixed this by going through the files here and seeing that the project is using consola.ttf as its font since presumably it is one of the fonts easily included with any Windows installation, but not included within linux nor proton/wine's included fonts. You should get a copy of this font or make a link that points to a file named like this. Personally I did it by pasting a copy of consola.ttf on /STEAMLIBRARY/steamapps/compatdata/631510/pfx/drive_c/windows/Fonts/

So far I got it working on DMC1, even managing to grant Dante the Yamato, and DMC3. I haven't checked too much on DMC3 since I only tested the teleporter feature, and I didn't get to check for DMC2. Assumingly it could work for these games however. I do suggest that the project should probably include a font that it could use freely for its own uses, or use another font like arial.ttf or cour.ttf which seems to be included with Proton/Wine as default fonts.

image

EDIT(10-28-2022): A symlinked font works properly, you don't have to gather an actual copy of consola.ttf. It seems like copying cour.ttf instead of arial is better however.

monoai commented 2 years ago

@Dr-Qyurryus Hi! That is weird indeed, the only font that I could see that the project is using is consola.ttfso there shouldn't be any other font dependencies. Are you sure it is named that way? I see an extra s on your message. Make sure you did the fix on compatdata/631510 just in case it was overlooked, and as an alternative (and an update to the answer) you could try copying one of the symlinked fonts, paste it at the same directory, and rename it as consola.ttf It should look like this: image

Hope you could report in if it works!

Dr-Qyurryus commented 2 years ago

@monoai the problem was the "S" in consolas. When I searched for consola.ttf to download I couldn't find it, the only thing that was popping up was "consolas.ttf" so I assumed that is what your referring to. Are these two different fonts? Anyway, renaming it to "consola.ttf" solved the issue and is now working on the deck. Anyway Thanks for the response and thanks for the solve.

monoai commented 2 years ago

@Dr-Qyurryus Happy to hear you got it working, and even on a deck! It's nice to know it works there! It seems like Consolas is the proper name but the actual filename is either different or consola.ttf is a different font altogether. Although that topic is out of our reach and from my observation from using a symlinked font, using a different font doesn't seem to have that much of a difference in appearance. Not sure if it's because of some kind of cache or that Proton could actually imitate how a font looks like as long as you properly add a file on its place. Good work!

yurithroddtaco commented 1 year ago

GUYS How do I download it on the deck please teach me I’ve been trying to do it since I got the steam deck @monoai & @Dr-Qyurryus