-
Notifications
You must be signed in to change notification settings - Fork 41
Option To Disable Mouse Alterations #69
Comments
Set the scaling mode to 'Unspecified', 'Stretched' or 'Centered' and the hw mouse emulation won't take place. Cursor handling cannot be done by the game when the physical resolution of the display differs from the one that the game expects. |
This happens with the scaling mode set to |
Then the resolution must be forced (or integer scaling other than 1, or sg like that). Btw, what about the latest version? It doesn't call |
Unless dgVoodoo is doing this itself, it shouldn't be. The game runs fullscreen or windowed natively without any extra hooking required/needed. (The game runs via Direct3D8 so voodoo is generally used to up-port to DX9+ as well as to 'fix' the game killing itself when IDirect3DDevice8::Reset is called. (This is an intentional thing with this game as it was used for anti-cheat purposes before they added a proper windowed mode themselves and never fixed it afterward.)) Downloaded and tested the newest version posted on the main site (2.74.1) and get the same results with the configuration file completely stock, or adjusted for what would be normal usage on this game. The mouse is still completely hidden by dgVoodoo. Configuration settings I've toggled to test with:
No matter what combination of settings are used, the mouse is force-hidden unless we manually hook the API calls ourselves and block dgVoodoo from having any control of it. The mouse aligns fine as well, and does not need voodoo trying to mess with it or trying to rescale it. If possible can this just be a single checkbox option to completely disable Voodoo from touching any part of the mouse? This game does not it trying to alter any part of it. |
Ok, then I think I completely misunderstood the situation the entry is about, sorry. So, we're talking about the D3DDevice8::ShowCursor call, not the general cursor hookup handler. I think I'll fix it somehow for both instead of a new option. |
I changed the implementation of Device::ShowCursor. |
Is there a different place to get/grab beta's or new updates outside of the main site or the Releases here to test this? Or just not pushed yet and will be in v2.74.2 later on? |
I publish WIP versions on my site when I'm in a developing period or have sg that'd be cool to test before releasing. Anyway, I attach here the spec-release version of the DX files with the cursor bug fixed. I think it's a 'would be cool to test' case. Let me know if sg is still wrong with it. |
So far with some basic testing seems to work properly. :) |
While using dgVoodoo 2 with some games, dgVoodoo will constantly attempt to hide the cursor which can lead to two issues:
For example, dgVoodoo can get stuck in a loop trying to set the cursor like so:
Games that also make use of custom cursors for important things are broken with this as dgVoodoo instead tries to either hide the cursor or default it to the IDC_ARROW icon.
An option to disable any call to SetCursor and ShowCursor inside of dgVoodoo itself and let the game control it fully would be nice to avoid this kind of issue.
A game that has all problems listed above for example would be
Final Fantasy XI
.In one of my projects, we have a custom plugin to combat dgVoodoo's aggressive 'take-over' of the mouse to allow it to work again but would prefer this to be an option that can be disabled instead.
The text was updated successfully, but these errors were encountered: