protonscr

[PROBLEM] MSAA Compatibility for Soldier of Fortune Payback

dxvkclosed
doitsujin/dxvk#4833 · opened 2025-04-06 by Sol1vaN · updated 2025-05-23 · 6 comments · github
SSol1vaN 2025-04-06 github

Hi there,

On a old forum (2019) a guy tells there's a way to apply AA with nvidia inspector and the 0x200100C5 flag
https://www.gog.com/forum/soldier_of_fortune_series/soldier_of_fortunepayback_problem

But now in 2025 with nvidia inspector 2.4.2.3, Win10 Pro 22H2 the 0x200100C5 flag don't exist
Image

So, I've tested the d3d9.forceSwapchainMSAA = 4 dxvk.conf configuration, and seems it work fine.
But with corrupted geometry:
Image

So, there's another options that I need to change to enabling the MSAA without this problem?

Cheers.

KK0bin maintainer 2025-04-06 github

d3d9.forceSwapchainMSAA = 4

This generally only works on ancient games.

We don't support force enabling MSAA in games that don't support it.
There's no clean way to do that, as you can see in your first screenshot, it needs to be hacked in differently for each game. That's simply not something we want to do.

SSol1vaN 2025-05-04 github

for information purposes
finally i've figure out (thanks to Digger1955) how to make MSAA work using a thechnique called "rewrapper".
that means we can wrapper two times a game with two different solutions, here's explain:

the game engine (CloackNT) don't like:

  • antialiasing
  • high frame rates

the problem with sof payback is:

  • the game don't work fine with DXVK, the game can execute fine
  • but, when we enable MSAA option the game graphics beigns corrupted
    Image

so, i have to left DXVK and I have to use dgVoodoo2 instead, this one makes the game works fine
but...
in the fourth stage (Mogaung: Farming Village), dgVoodoo2 begins to have another problem with bloom effect... 🤦‍♂️🤦‍♂️🤦‍♂️
Image

also SoF Painback have a texture bug with modern video cards, showing a rare square patterns on many objets surfaces
Image
Image

dgVoodoo2 let us fix this selecting an old compatibility video card mode, like this:
Image

Also I recomend to use 60FPS limit
raising FPS make a choppy enviroment movement (your mouse will go smooth, but the 3D world not)
sure internal game tick is 60hz, so frame pacing and game tick desynchronizes resulting a stuttering/choppy behavior

Square texture pattern fix results:
Image
Image

We can combine all this benefits from dgVoodoo2 and DXVK
So, if SoF Painback is a native DX9 game, we can do the following:

  • wrap DX9 --> dgVoodoo2 DX11 x32 bits
  • rewrap DX11 --> DXVK Vulkan x32 bits

and vuala! 🤩
Image

and of course, Farming Village now can be played flawessly ✨😁
Image

the file order needs to be like:
Image

resuming...

dgVoodoo2 pros

  • MSAA compatibility
  • texture pattern bug fix

DXVK pros

  • better frame pacing (smooth gameplay)
  • bloom bug fix

dgVoodoo2 cons

  • stuttering gameplay

DXVK cons

  • MSAA incompatible

now we can enjoy

  • x2 res 2560x1440 that means 5120x2880
  • x4 MSAA
  • x16 anisotropic

Image
Image
Image
Image

finally, I want to say Ph42oN vulkan wrapper have a better frame pacing managment (sorry doitsujin)
because Ph42oN wrapper have gplasync (smooth frames, less stuttering)
https://gitlab.com/Ph42oN/dxvk-gplasync

anyway, this is a horrible videogame
but with all this stuff we can enjoy it with some better experience

PS: use this trainer, trust me, you'll need it
https://d2.consoletarget.com/?y=7d1c79f9&x=9eJ9%2Flc0fvD3Ay90uM2QPSfWhutwaJP5DQoxW3Mi%2B5ZY8P4IOdGKlqcijR5PziMPnOLbSDWw5du5wpX%2FU1pHvj4ChIHWHEGWb%2BJdE3qbKvBY8p71NhYQSVKMrsyBmPijirF6U5qodXW6JNBuo0d3A3lej8NvT2cWf40%2Fcx5Y%2B4Viq57httitv7jhSv2l6kgntdEFELzRRGkLdB%2F%2BHSn%2B2w%3D%3D

Ddoitsujin maintainer 2025-05-04 github

do i understand that you're having issues with some third-party tool injecting msaa into a game that doesn't support msaa and that doesn't work with an unsupported dxvk fork while simultaneously using some other thing that fucks around with game memory like malware?

Yeah, not gonna waste time on that, sorry.

SSol1vaN 2025-05-04 github

all the solutions here are tools dll injected
dgvoodoo2
dxvk

msaa works with dgvodoo2
dxvk give smooth vulkan benefits

i can't see where is 'some other thing that fucks around with game memory like malware'

KK0bin maintainer 2025-05-04 github

i can't see where is 'some other thing that fucks around with game memory like malware'

PS: use this trainer, trust me, you'll need it

SSol1vaN 2025-05-04 github

ooh man, i understand now
but this trainer is only a suggestion, not for solve the graphics problems

trainer in this case is only for activate/deactivate gameplay features (totally theme apart)
again, all after trainer suggestion, is about wrappers
trainer is only optional/suggestion (because sof payback gameplay are terrible)

the trainer can return a false AV Positive! File = Clean
this was downloaded from GameCopyWorld
https://gamecopyworld.com/games/pc_soldier_of_fortune_payback.shtml#Soldier of Fortune: Payback v1.1 +6 TRAINER

again: is only a suggestion, we can play without this.

Nothing extracted yet.