VOGONS


First post, by B0ilz

User metadata
Rank Newbie
Rank
Newbie

Hey all, new to dgVoodoo here. I'm trying to get the most recent Mektek version of Mechwarrior 4 Mercenaries to work with dgVoodoo 2.79.1's scaling mode and forced resolution options.

When either of these options is used, the game will run fine at first install until you go into the options and change the controls, which is highly recommended for this old game. The game then lags every time you move the mouse and will lag harder depending on how fast the movement is. This behavior does not revert after changing back the control options to default. I suspect the culprit is related to the mouse torso aim option.

I've tested this on every version of the game I could find with the same result, and can only assume it's dgVoodoo fighting the mouse aim somehow. Turning scaling mode and forced resolution to unspecified/unforced will allow the game to run fine, but the scaling options REALLY enhance the game, especially due to the enhanced textures in this specific Mektek version I'm using. Without them, it turns into a bit of a mess with the high-res textures and low resolution.

You can get the exact version of the game I'm using here [link removed]
Or if you don't trust a drive download you can get a non-enhanced version of the game at [link removed]

Last edited by Snover on 2022-08-29, 02:18. Edited 2 times in total.
Reason: warez

Reply 1 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

Hi B0ilz,

Welcome to VOGONS! Please do not post links to pirated software here or tell people where they can download software illegally. It is against the rules you agreed to follow when you joined.

Thanks,

Yes, it’s my fault.

Reply 3 of 17, by B0ilz

User metadata
Rank Newbie
Rank
Newbie

That does seem to solve the mouse lag issue 😁 , but turning that option on in the CONF file seems to cause the game screen to flicker constantly.

Reply 4 of 17, by B0ilz

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2022-08-29, 10:53:
Hi, […]
Show full quote

Hi,

I really hope the solution I mentioned in the thread below also helps for MW4:

Re: C&C Generals (2003) - Double Mouse Pointer (When using Scaling Modes or Forcing Resolution)

This symptom is very common and known (to me at least), and GDI hooking always helped for the games I tried.

Just tried this with the resolution and scale options off and the GDI hook, and it still flickers a lot, but the original mouse lag problem is gone regardless if resolution and scale are on now.

Reply 5 of 17, by Dege

User metadata
Rank l33t
Rank
l33t

Then plz send me the links in a private message.

Reply 6 of 17, by B0ilz

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2022-08-30, 10:41:

Then plz send me the links in a private message.

I think I'm not allowed to send PMs yet, since I'm new on VOGONS.

Reply 7 of 17, by Dege

User metadata
Rank l33t
Rank
l33t

Ok, then I'm going to send you a pm.

Reply 8 of 17, by Dege

User metadata
Rank l33t
Rank
l33t

Yes, the problem is what I was afraid of. The game keeps an open GDI DC to the screen while it's running. So, from the viewpoint of dgv it draws into the window through both GDI and DX simultaneously, that's why the flickering is.
The best would be to change option GeneralExt\EnableGDIHook to GeneralExt\SystemHookFlags and define 2 flags for what to hook: 'GDI' and 'Cursor' (or empty flags == none). Cursor hooking is not evident from the name EnableGDIHook anyway.
But I won't do that now because I'd have to increase version number for that but I'm only planning a patch version with 1-2 bugs fixed.

So, for the time being, what if I compile a version for MW4 that only hooks the cursor when EnableGDIHook is enabled?

Reply 9 of 17, by B0ilz

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2022-08-31, 14:26:

So, for the time being, what if I compile a version for MW4 that only hooks the cursor when EnableGDIHook is enabled?

That would be much appreciated, though I would love it if others could be able to use the fix eventually if you decide to change that in a new patch.
What you explained is a little beyond me haha but from the little I understand MW4 is basically trying to draw from two different sources when EnableGDIHook is true and it's confusing dgv? So the fix essentially would be to tell dgv to specifically look at one or the other?

Reply 10 of 17, by Dege

User metadata
Rank l33t
Rank
l33t
B0ilz wrote on 2022-08-31, 15:21:

That would be much appreciated, though I would love it if others could be able to use the fix eventually if you decide to change that in a new patch.

I can link it here, so anybody can download if needed (I for one don't have the lagging mouse symptom for this game).

B0ilz wrote on 2022-08-31, 15:21:

What you explained is a little beyond me haha but from the little I understand MW4 is basically trying to draw from two different sources when EnableGDIHook is true and it's confusing dgv? So the fix essentially would be to tell dgv to specifically look at one or the other?

It doesn't draw from the GDI source but holds an open GDI drawing context permanently anyway, and yes, it confuses dgv. The fix would be not hooking GDI (only the cursor functionality) and problem solved.

Reply 11 of 17, by B0ilz

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2022-08-31, 16:24:

I can link it here, so anybody can download if needed (I for one don't have the lagging mouse symptom for this game).

Sounds good, looking forward to it. The mouse lag appears after changing the control options after initial install of the game and persists afterwards, unsure why it happens specifically like that.

Reply 12 of 17, by Dege

User metadata
Rank l33t
Rank
l33t

I compiled the version I promised, it's the slightly modified version of 2.79.3:

http://dege.fw.hu/temp/dgVoodoo2_79_3_MW4.zip

You still need to enable GeneralExt\EnableGDIHooking but it only hooks the system cursor functionality.
Let me know if it works for you as expected.

Reply 13 of 17, by B0ilz

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2022-09-03, 17:44:

Let me know if it works for you as expected.

Works perfectly as far as I can see, I'll update you if I find any issues but for now it's great, thanks! 😁

Edit: I did notice some static lines going across the screen in the menu, but they aren't present in-mission so it's not too much of an issue.

Reply 14 of 17, by Dege

User metadata
Rank l33t
Rank
l33t

Great, thanks!

Those lines must be coming from the resolution forcing. Maybe integer upscaling (2x, 3x) helps them to disappear.

Reply 15 of 17, by xcomcmdr

User metadata
Rank Oldbie
Rank
Oldbie

Thank you sooooooo much, Dege !

I've been trying to make this game work for so long !

You are AWESOME ! 😁

Reply 16 of 17, by Jennifer.Diamonds

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2022-09-03, 17:44:
I compiled the version I promised, it's the slightly modified version of 2.79.3: […]
Show full quote

I compiled the version I promised, it's the slightly modified version of 2.79.3:

http://dege.fw.hu/temp/dgVoodoo2_79_3_MW4.zip

You still need to enable GeneralExt\EnableGDIHooking but it only hooks the system cursor functionality.
Let me know if it works for you as expected.

The link seems to be dead. I'm having the same issue and would like to try your fix, if it is still available somewhere?

Reply 17 of 17, by Dege

User metadata
Rank l33t
Rank
l33t
Jennifer.Diamonds wrote on 2023-03-24, 14:09:
Dege wrote on 2022-09-03, 17:44:
I compiled the version I promised, it's the slightly modified version of 2.79.3: […]
Show full quote

I compiled the version I promised, it's the slightly modified version of 2.79.3:

http://dege.fw.hu/temp/dgVoodoo2_79_3_MW4.zip

You still need to enable GeneralExt\EnableGDIHooking but it only hooks the system cursor functionality.
Let me know if it works for you as expected.

The link seems to be dead. I'm having the same issue and would like to try your fix, if it is still available somewhere?

You don't need that fix anymore (but the link should work btw). Just use dgV 2.8 and enable Cursor hooking (GeneralExt\SystemHookFlags), that is equivalent to using the fix.