Menu

DxWnd and The Sims 2

2017-07-26
2017-07-26
  • Alexandre Franco

    Hello!

    Looking at the information available at the PCGamingWiki, The Sims 2 has a native windowed mode (-w launch parameter). This works fine with an Intel GPU, unfortunately because the game has some issues with Intel Graphics (even the newer ones), and doesn't run as smooth as it does on a dedicated Nvidia GPU, I tried the same with the dedicated card.

    However, my notebook has the infamous Nvidia Optimus setup (dedicated Nvidia card outputs video to the framebuffer of the Intel card, which is the only card connected to the displays), and while it plays fine using fullscreen mode, when setting the -w parameter it either crashes at startup with a D3D error, or sucessfully launches, but with a white screen (everything else working).

    So I tried using DxWnd with it, but all I get is this error when attempting to run it with hooks enabled (happens with any of the GPUs):

    I'm running the Ultimate Collection available on Origin, and even when I tried using a No-CD crack I ended up with the same error. This was on a Windows 10 Pro, and the dxwnd.log is here if it helps.

     
  • gho

    gho - 2017-07-26

    It definitely sounds as a leftover of the protection schema that the crack didn't remove. In that case, it won't be an easy task.

     
    • Alexandre Franco

      Indeed you were correct, and a more "proper" no-CD managed to bypass that error. Unfortunately, I still get the same D3D error (E_INVALIDARG) that the native -w parameter returns (when using NVIDIA; with the Intel card DxWnd works fine). Maybe the dxwnd.log can help more now?

       
      • gho

        gho - 2017-07-28

        The log shows something weird after a Direct3D9::Reset operation that completes successfully, but after that no further Direct3D9 logs are present, as if the game unhooked from dxWnd.
        This is (sadly) typical of some games/situations, I never got it clear why, but the problem can be partially overtaken (sometimes...) by setting the "Direct3D / Suppress D3D8/9 Reset" flag.
        Since the Reset operation is normally used to change screen resolution, it may happen that this way the game works, but it is rendered with wrong coordinates.
        Anyway, the first thing to try is setting this flag and see what happens next. Let's cross our fingers.

         
        • Alexandre Franco

          Setting this flag doesn't make much of a difference (even in the dxwnd.log apparently, but I'm not experienced enough to tell :P). What I found now is that the D3D error happens even without DxWnd, just by turning Windows own compatibility mode on (any Windows version < 10 will cause it, with and without -w parameter).

          I think this might be related to how the game finds the GPU to use (trying to "inherit" the GPU from the process that calls it?), so I tried to force dxwnd.exe to run on the Nvidia card, but Nvidia Activity Indicator doesn't show it running there.

           
  • gho

    gho - 2017-07-29

    Alexandro, while I retrieve my "The Sims 2" DVD from the cellar (I only have the base edition, I hope it will suffice for the tests..), since DxWnd triggers the copy protection schemas, it seems that I will need too the "proper" crack. Would you mind send me a PM (provate message) with the crack or the link where I can find it?

     
  • gho

    gho - 2017-07-31

    Ok, we got to the point.
    I installed the game and applied a crack to avoid DxWnd detection. Since both the original exe and the crack were obfuscated (some hackers are so jelous of their work they don't like peeking inside) I added to the default options the "Hook / Hot patch (obfscated IAT)" flag.
    The game seems to be perfectly working (of course, after a very limited play time), so your guess about the cause of the problem could be right. The problem now is how am I supposed to replicate it?
    Mumble mumble ...

     
    • Anonymous

      Anonymous - 2017-07-31
       

      Last edit: Anonymous 2018-10-20
    • Alexandre Franco

      Yeah, I think the problem is only reproducible on a notebook with Nvidia Optimus setup, which is (unfortunately) quite common on notebooks with dedicated Nvidia GPUs from 2010 onwards.

      However, (I assume) going after this kind of hardware to test and attempt to fix this specific issue might be getting out of the scope of this project.

       
      • gho

        gho - 2017-08-01

        I'd say it's out of scope as long as I can't get my hands on a computer with Nvidia Optimus video card. Sadly, not being able to reproduce the effect doesn't help.
        Anyway I could compare the D3D video capabilities of my and your logs, maybe we find some clue to bypass the problem.
        But for sure the fact that the program does have a native windowed mode and this doesn't work is not incouraging out optimism.

         

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.