rebtd7/FF13Fix

Steam Overlay not working

AngelicJoker opened this issue · 24 comments

Whenever I enable the fix mod in FF XIII, the Steam overlay stops working. This seems to stop my PS4 controller from working as well. I am able to use both the controller and overlay if I disable the mod.

Seems to be caused by e0e7563

@Nucleoprotein Any idea on what may be causing this? I also get no overlay without dxvk

Edit: I just saw this:
doitsujin/dxvk#1467

This isn't our bug. The overlay on x86 just won't hook loose d3d9.dlls. (it works on x64)

Perhaps we have to create both dinput8.dll and d3d9.dll, and tell users to use dinput8.dll if they are not using dxvk, and tell them to use d3d9.dll if they are using dxvk?

Is dxvk used outside of Linux systems? I'm running Windows 10 so I don't think I have the option to use it.

Seems to be caused by e0e7563

@Nucleoprotein Any idea on what may be causing this? I also get no overlay without dxvk

Edit: I just saw this:
doitsujin/dxvk#1467

This isn't our bug. The overlay on x86 just won't hook loose d3d9.dlls. (it works on x64)

Perhaps we have to create both dinput8.dll and d3d9.dll, and tell users to use dinput8.dll if they are not using dxvk, and tell them to use d3d9.dll if they are using dxvk?

For me d3d9.dll doesn't work, using Intel i7-9750H processor with an RTX 2070 Max-Q [MSI GS65 Stealth [9S]], but when i revert back to 1.46 13Fix mod, it works perfectly fine. Which means it accepts dinput8.dll but not d3d9.dll

Not sure why it's causing an issue in my Laptop.

@rebtd7
It's reference count hell, GameOverlayRenderer is deleting own hooks because object reference is 0 (or too low?)
I have a working fix already but i dont like it because our private ref count does not match in some points D3D9 one... Maybe we should just return D3D9 refcount + 1 always...

EDIT: i think i have more proper solution
EDIT2: Nope, dxvk is broken now... EDIT3: fixed
EDIT4: Fixed in e9bbbf0

Thanks a lot, @Nucleoprotein!

@AngelicJoker, @nav2max Could you try 1.6.1 and let us know if it is working?

Should the dll files still be renamed similarly like how it was with 1.6.0 version if DXVK is used with this new version ?

@Surihix Yes, it is the same (FF13Fix is d3d9.dll and DXVK (if present) is dxvk.dll)

@rebtd7 I just installed the update and now the Steam overlay and PS4 controller are working. Thanks for the quick response!

Thanks a lot, @Nucleoprotein!

@AngelicJoker, @nav2max Could you try 1.6.1 and let us know if it is working?

Sorry it's not even starting the game...not sure what i got wrong. [Currently using Nvidia Profile Inspector graphic settings along with FFXIII HD project & models mod] - All this was working fine when i used 1.46 13Fix file with dinput8.dll
FF13Fix.log

Looks like object is destroyed (yeah... ref counting) ...
Please check if this works
d3d9.zip

Looks like object is destroyed (yeah... ref counting) ...
Please check if this works
d3d9.zip

Nope no luck, it didn't even open in default settings, but when i changed the settings by enabling V-sync, limiting to 60 FPS and turning borderless ON, it almost started...
FF13Fix.log

This?
d3d9.zip

Nope, checked now, no luck
FF13Fix.log

Create clean config file and disable DiscardUIVertexBuffer

disable DiscardUIVertexBuffer

It's currently set to default "false"

You have too many options changed to unsafe values, create new clean config file.
Patching thread is not even starting ...

You have too many options changed to unsafe values, create new clean config file.
Patching thread is not even starting ...

This time i placed a new config file, still no luck, DiscardUIVertexBuffer is on default "false"
FF13Fix.log

It must be wrong ref count... Try this.. it not breaks anything for me yet...
d3d9.zip

No luck...
FF13Fix.log

This one is broken i.e. not call Release() at all, if this works... i'm confused
d3d9.zip

This one is broken i.e. not call Release() at all, if this works... i'm confused
d3d9.zip

Nope...just my bad luck, not working..
FF13Fix.log

This one is broken i.e. not call Release() at all, if this works... i'm confused
d3d9.zip

I fixed it.... !!!! I disabled Windows 7 compatibility mode and unticked "Disable Full screen Optimization", it works now...no issue
FF13Fix.log

It was W7 compatibility mode, normal release dll should work too

On 1.6.1 and 1.6.2, the overlay and controller input works for me without dxvk, but now it doesn't work for me with dxvk. Does the 1.6.1 fix not apply to dxvk users? Is there a workaround?

edit: Okay, I read the post linked in the second post here and realize now it's a general steam overlay issue. Guess there's just nothing we can do about it?

edit 2: actually, DS4Windows works just fine so feel free to disregard this whole post.