Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ephinea PSOBB crashes with add-on plugin and DXVK artifact build which addresses #3117 #4017

Open
sodaboy581 opened this issue May 21, 2024 · 9 comments

Comments

@sodaboy581
Copy link

sodaboy581 commented May 21, 2024

When attempting to run this game with the add-on plugin with the latest fixed DXVK artifact build, the game immediately crashes.

The build fixes #3117 and was downloaded from https://github.com/doitsujin/dxvk/actions/runs/9179660999/artifacts/1524146257

The build works fine when not using the add-on plugin.

Normally, I'd say this is an add-on plugin problem, but it worked with the older DXVK version and it works with the other APIs like D3D8, D3D9, D3D11, and D3D12. It just breaks with DXVK.

I'm including an apitrace so maybe we can figure out if this is a DXVK issue or an add-on plugin issue.

If you'd like to test, download the game from https://ephinea.pioneer2.net/ and install the plugin at https://github.com/Solybum/psobbaddonplugin/releases

Software information

Ephinea: Phantasy Star Online Blue Burst

System information

Apitrace file(s)

Thanks for any insight you can provide!

@Blisto91
Copy link
Contributor

I tried using the addon on Linux through Proton with a AMD GPU and couldn't get it to crash. But will try also on Windows.

@sodaboy581
Copy link
Author

I tried using the addon on Linux through Proton with a AMD GPU and couldn't get it to crash. But will try also on Windows.

Yep, you're right. We have had a couple of people test on Linux and it appears fine there with Proton or WINE.

This appears to be a Windows only issue. It's weird that this happens when the addon is used with the new DXVK under Windows. I know the addon loads through dinput8.dll... Does DXVK use parts of DirectInput?

I'd love to provide more data to you, but the Event Viewer log when the game crashes just has some bogus offset data in it.

Example:

Faulting application name: PsoBB.exe, version: 0.0.0.0, time stamp: 0x00000000
Faulting module name: unknown, version: 0.0.0.0, time stamp: 0x00000000
Exception code: 0xc0000005
Fault offset: 0xffff06fb
Faulting process id: 0x0x4C30
Faulting application start time: 0x0x1DAAC80C859B4A3
Faulting application path: C:\Users\Terry\EphineaPSO\PsoBB.exe
Faulting module path: unknown
Report Id: efed9e40-fb2b-4e07-bc25-123be82fdd54
Faulting package full name:
Faulting package-relative application ID:

That fault offset is crazy. So I couldn't look at the code in memory to attempt to help debug.

Another time it was 0xffff132d, another time 0xffff07d9, and another time 0xffff1327.

The offset it crashes on isn't useful at all.

I've tried compiling the game's DLL without VMPROTECT as well to see if VMP hated DXVK + addon combo, but that didn't help at all. Still crashed.

I've even tried changing the addon initialization LUA to do nothing, but it doesn't even appear we're getting to the part where the addon tries to initialize. Crash seems to be happening way before.

@Blisto91
Copy link
Contributor

Might be worth trying with #4026

@WinterSnowfall
Copy link
Contributor

WinterSnowfall commented May 25, 2024

I know the addon loads through dinput8.dll... Does DXVK use parts of DirectInput?

It does not. However, a lot of mods/game fixes will load using dinput8.dll and override various unrelated method calls. Or, better said, dinput(8) is a common way to inject custom code into a process. Without access to the source code of the plugin it's rather hard to tell if it's messing with anything dxvk would care about.

Edit: Noticed you linked to a GitHub page above, and if that's the pulgin in question here, it looks capable of doing a lot of potentially problematic things. Why exactly that causes an issue with dxvk on Windows is anyone's guess.

@sodaboy581
Copy link
Author

Hello! Sorry for the late reply. I've had a busy day and finally got around to setting up an environment to compile DXVK and add the changes from #4026 into it. I also got the quick commit that was done today for "Fix strange type in dynamic vertex upload"... ANYHOW, compiling all that, with both files updated, the addon still crashes in Windows with DXVK. 🤷

It's not a big deal, I suppose people have other API choices like D3D8, 9 (through 8to9), 11 and 12 (through dgVoodoo) in Windows for PSOBB that work with the addon, so not a big deal. Seems fine on Linux which is probably what DXVK is primarily for anyhow.

Maybe someday it'll be figured out... and then maybe not. Probably will have to work with the addon devs on this one.

Anyhow, thanks for your input!

@Blisto91
Copy link
Contributor

I've tried on Windows now but still haven't gotten it to crash

Screenshot

image

Do you apply any specific settings?
Also were the other Windows testers also using Nvidia?

@Blisto91
Copy link
Contributor

Blisto91 commented Jun 17, 2024

Switching to my Nvidia GPU it still doesn't crash for me on Linux, but i can reproduce that it crashes on Windows. But it does that together with every dxvk version I've tried when used together with the addon, not just master. AMD iGPU runs it fine.

555.99 driver

@sodaboy581
Copy link
Author

I am SO sorry for not commenting on the previous post. I was busy when I read it and forgot to circle back.

So, this seems more like an NVIDIA bug with their Vulkan implementation on Windows.

@sodaboy581
Copy link
Author

Woops, didn’t mean to close. Haha

@sodaboy581 sodaboy581 reopened this Jun 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants