Erik-JS / proxy-dll-64

Proxy DLL's with ASI loader; 64-bit
MIT License
14 stars 2 forks source link

d3d12 #1

Open imedox opened 2 years ago

imedox commented 2 years ago

awesome job you do, pls Can you add d3d12 and binkw64, got game run only on it ❤ (^_^)

Erik-JS commented 2 years ago

I'm basing this repo on dll's which are part of Windows' system folder, as they are less likely to change their internal structures in a future update because Microsoft has to keep compatibility with pretty much anything that was designed to use them from years ago.

I remember someone ran into a problem because I imprudently used Mass Effect 3's binkw32 for Mass Effect 2. This happened in the old ME3Explorer Forums (this was before masseffect-binkw32 was created). It turned out those games use different versions of binkw32.

From all games I have currently installed here, only one uses binkw64. So if I pick Yu-Gi-Oh! LotD Link Evolution and make a proxy dll based on the binkw64 which came with that game, then there will be no guarantee that this thing will work on other games.

Also, things like winmm and d3d11 aren't supposed to be and are never included in the game's files for obvious reasons - so if you have a fake d3d11.dll inside the game's main exe folder, it won't get overwritten when some update is released later.

D3d12 is feasible, so I'll take a look at it. Binkw64 unfortunately has no place here.

Out of curiosity, which game are you planning to use a proxy dll on?

imedox commented 2 years ago

thanks for respond me, i want to use it on cyberpunk 2077 and other game run only on dx12, to create some mod and load it with the d3d12.dll

Erik-JS commented 2 years ago

Sorry for the long wait... would you like to test this file?

d3d12.zip

I have Cyberpunk 2077 on Steam and this fake d3d12 cannot be used there unless I turn off the Steam overlay. On the other hand, I can keep the overlay enabled if I use winmm. Also, d3d11 proxy can be used with the game - even if the game is DX12 exclusive, d3d11.dll is actually listed in the import table of Cyberpunk2077.exe for some reason.

imedox commented 2 years ago

Don't work the .asi script not injected to the game just load original dx12

Erik-JS commented 2 years ago

What was written into the log?

See d3d12_proxy64.log in your Documents folder.

There should be something like this:

Sun Oct 17 09:35:58 2021
>Cyberpunk2077.exe
>>Plugin loaded: G:\SteamLibrary\steamapps\common\Cyberpunk 2077\bin\x64\TestPlugin64.asi

Does it find your ASI file? Does it say plugin loaded or plugin error?

imedox commented 2 years ago

! ther is no d3d12_proxy64.log!

Erik-JS commented 2 years ago

You said you had CP2077 and other game, did you try it on both?

If it didn't work on CP2077 for you then I don't know what to say... it just works here. =/

imedox commented 2 years ago

yeh it work thanks just miss to copy on the exe folder :D