VOGONS


First post, by NovHak

User metadata
Rank Newbie
Rank
Newbie

Dear forum readers,

I reinstalled recently this old game (2004), but it doesn't work on Windows 10. Eventually, a fix is available here which works well, but then since I have an NV Optimus laptop and since the game is pre-DX9.0c, it's forced to run on the integrated GPU and not running as smooth as it should, the GPU being overloaded.

And that's where dgVoodoo comes into play. I was hoping that running the game with Dege's DX wrapper would solve everything as usual, which unfortunately it didn't, the game refusing to start. I would like to try both the Windows 10 fix and dgVoodoo but that's impossible since both are in the form of a file with the same name (D3D8.dll) that I must paste in the game directory.

In case it may help, I found additional information about how the game's graphics work. It seems unusual...

Any advices ?

Reply 1 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t

Dege: The screenshot I posted in the other topic was from Win7. I can't get this working nicely with dgVoodoo2 in Win10 either. So it is a Win10 specific d3d8 issue affecting dgVoodoo2.

It works in windowed mode (edit dangerouswaters.ini and set .RunInWindow to Yes), but you generally don't want to play games in window mode (and borderless fullscreen isn't playing nice with the mouse coordinates on this).

It also works if the patch linked to is used (open it in a hex editor, find ".d.3.d.8...d.l.l." and replace it with ".d.g.d.8...d.l.l", rename dgVoodoo2''s d3d8.dll to dgd8.dll and put it it C:\windows\syswow64\), but there's an extreme amount of cursor trailing. Not really recommended to play that way, just saying the patch works with dgVoodoo2 as well as it does natively (there's cursor trailing there too...).

Reply 2 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

Thanks ZellSF, very interesting indeed ! I didn't even try windowed but that's better than nothing...

EDIT : Finally, it doesn't work. Trying windowed with dgVoodoo, the program just quits silently. When I use the other fix, it tells me "You must be in 16-bit color depth to run in a window.". When I start with the 16-bit color compatibility option it fails too with "Failed to initialize the graphics display" followed by "Context Create Error : -2147467259".

16-bit color compat with dgVoodoo fails silently too.

What version of dgVoodoo are you using ? I tried with 2.54...

Reply 3 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t

Are you running the game as administrator? It will silently crash if you don't.

It's weird that you don't get that problem when using the other fix, but it's the only thing I can think of. I'm using the dgVoodoo2 version 2.54 on Win10 build 1607.

Reply 4 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

Win10 v1703 here. Didn't you install the creators update yet ?

I never run games as admin (never), and they still work. DW used to work with no problem on my Vista computer, running as non-admin, and it works on my Win10 with the fix (but with slowdowns on the integrated GPU). There are indeed games that don't work out-of-the-box as non-admin but there are ways to solve this and I think I know them pretty well.

That being said I may try anyway but I'm almost certain of the result. Not sure I'll try however since the game is using some activation-based DRM, it would use one more and I don't want to have all my activations used up before it goes DRM-free. At least I should make sure I can revoke the activation before trying...

Reply 5 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t

I'm on 1703 (that's the build number of creator's update) now and dgVoodoo2 + windowed mode just works. I do need to run it with admin rights (but might be because I installed it in Program Files).

Reply 6 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

I made my tests with the game directory being user-writeable, and as I said it "works" with the fix, and quits silently with dgVoodoo. Maybe we're using different parameters on the game and/or dgVoodoo.

Here are my dgVoodoo parameters :

dgv1.PNG
Filename
dgv1.PNG
File size
39.99 KiB
Views
3101 views
File comment
dgVoodoo General tab
File license
Fair use/fair dealing exception
dgv2.PNG
Filename
dgv2.PNG
File size
40.07 KiB
Views
3101 views
File comment
dgVoodoo DX tab
File license
Fair use/fair dealing exception

And my game parameters :

Filename
dangerouswaters.ini
File size
3.59 KiB
Downloads
117 downloads
File comment
Dangerous Waters INI
File license
Fair use/fair dealing exception

Reply 7 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t

Same settings. Guessing some problem with Optimus and windowed mode.

Did you try my alternative solution? I said there was a lot of cursor trailing but that was only because I was running the retail version of the game, patch 1.04 is fine.

I've attached the modified file in case you don't want to try yourself, copy it in Dangerous Water's directory then rename dgVoodoo2's "d3d8.dll" to "dgd8.dll" and move it to C:\windows\syswow64. If it asks you to overwrite files, don't and stop (you're doing something wrong).

Attachments

  • Filename
    d3d8.zip
    File size
    52.18 KiB
    Downloads
    128 downloads
    File license
    Fair use/fair dealing exception

Reply 8 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

Okay, I'm going to try this and come back here.

Btw, are you sure it really worked for you, for example by activating the dgVoodoo watermark, and that it didn't just simply find its way directly to the DX interface, bypassing Dégé's wrapper ?

Reply 9 of 16, by Dege

User metadata
Rank l33t
Rank
l33t

I've tried the game and it crashed for me both natively and with dgVoodoo.
It works with the spec d3d8 patch though, with heavy cursor trailing.

The crashing code seems to be a bitmap data copy (or converter) code, for the time being I have no idea what's the problem (in addition to it's obviously a memory overaddressing). A guess, as I read it was coded specifically for 16 bit surfaces, the game might create 32 bit surfaces while thinking they're 16 bit.
An idea I didn't try so far is setting the desktop color mode to 16 bit (compat settings), so the game creates true 16 bit surfaces instead of 32 ones.

Reply 10 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t
NovHak wrote:

Okay, I'm going to try this and come back here.

Btw, are you sure it really worked for you, for example by activating the dgVoodoo watermark, and that it didn't just simply find its way directly to the DX interface, bypassing Dégé's wrapper ?

Very sure:

dangerouswaters_2017_07_21_13_24_24_891.jpg
Filename
dangerouswaters_2017_07_21_13_24_24_891.jpg
File size
357.04 KiB
Views
3056 views
File license
Fair use/fair dealing exception
Dege wrote:

I've tried the game and it crashed for me both natively and with dgVoodoo.
It works with the spec d3d8 patch though, with heavy cursor trailing.

The patch seems to only be meant for v1.04 of the game, on the retail version you get the cursor trailing. On the latest version you don't. The behavior there is identical whether you use dgVoodoo2 or not.

Reply 11 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

The watermark is a proof enough !

I notice on your screenshot that the color banding problem is still present. I was secretly hoping dgVoodoo would solve this too !

So finally I tried, and it didn't work.

First I wanted to put dgd8.dll in a non-system directory, setting the Path environment variable accordingly, but that wasn't enough since it seems the fix enables some sort of security option making sure the file it loads is from a secure place. Moreover, it has a wrapper.log file meant to receive errors, and it was clearly stating it couldn't find the "real" d3d8.dll.

So I finally put Dégé's renamed dgd8.dll in syswow64, now the wrapper isn't complaining any more but the game still crashes, not silently this time since I get the classical "***** has stopped working" window that usually displays when a program crashes.

Since I was trying all this fullscreen, I tried back in windowed mode (who knows), and got again the "must be in 16-bit color depth" message. If I set the 16-bit compatibility option, the program crashes the same way it did when I was trying full screen ("***** has stopped working").

I tried ultimately fullscreen with "disable and passthru to real DirectX" and it failed too (stopped working). So even when just passing through Dégé's wrapper, it fails. When I get back to the classical fix (without the dgd8 modification) it "works" again.

And yes, I have version 1.04.

Reply 13 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

The only difference I can see between you and me is that for me it doesn't work with dgVoodoo. Everything else looks the same. Btw, it doesn't seem to work for Dégé either...

I suppose you're running a Steam version of the game, while I run a Securom PA-protected one. Could that explain things ? I'm doubtful... and of course you're running the game as an admin while I'm not.

Could you without too much of a hassle try running the game as a non-admin ? I would have tested admin myself long ago had I not this annoying Securom activation limit. In case you get the same problems as me with the game silently quitting (using dgVoodoo only and not the fix), that will have some meaning. Otherwise it will mean it's not a system privilege related problem. After all, there must be a reason behind all this...

Reply 14 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t

I got it running with dgVoodoo2 without admin privileges too (by moving it to another folder). The version of the game I'm running does not seem to have any copy protection, though I haven't actually checked for it.

Reply 15 of 16, by NovHak

User metadata
Rank Newbie
Rank
Newbie

Thanks for having tried !

Stricly speaking that doesn't mean admin privileges aren't the cause of my problems since running it once as admin could have enabled something, but I doubt it's the case.

I performed a hash check on the files in the game root directory for people who have time to lose comparing my files and theirs, but I doubt it will be very useful. If you have no copy protection, it's likely your game executable will be different from mine (plus Securom's paul.dll will be absent) but I'm not convinced it's the cause since not many people must still be using Securom, and Dégé has problems too. So unless Dégé has a Securom-protected one as well, I doubt it's worth checking...

PS D:\Program Files (x86)\Dangerous Waters> ls | Get-FileHash -Algorithm MD5

Algorithm Hash Path
--------- ---- ----
MD5 782ADBEFD69F603A65596DFD54D0F232 D:\Program Files (x86)\Dangerous Waters\AppTextE.dll
MD5 C2FBF85C34A79C96D652DEF6AA577968 D:\Program Files (x86)\Dangerous Waters\camscript.dat
MD5 067C52E9F1AD5B2B6C6AE89BE5EB979D D:\Program Files (x86)\Dangerous Waters\CHANGE_LOG.txt
MD5 201CB5C1FAEE3C84485DD29127D0B632 D:\Program Files (x86)\Dangerous Waters\controllers.ini
MD5 5C5FC2CBDD6FC931B7692AFBE9DAE775 D:\Program Files (x86)\Dangerous Waters\D3D8.dll
MD5 32487C8B3CEBFC0CE9FCFF2A76EB75E2 D:\Program Files (x86)\Dangerous Waters\D3DImm.dll
MD5 5CE88EA7B5C77B141CBEC56EC2CE9793 D:\Program Files (x86)\Dangerous Waters\dangerouswaters.exe
MD5 22A6C321297C165EF0086C6E74034275 D:\Program Files (x86)\Dangerous Waters\DangerousWaters.ico
MD5 ACC8FC7E6C92BA7287533FE27B5DF970 D:\Program Files (x86)\Dangerous Waters\dangerouswaters.ini
MD5 5EAE2F3532D882A2F175331CD20D8D04 D:\Program Files (x86)\Dangerous Waters\DDraw.dll
MD5 E11F099F636034D7ADFD959CCBB24052 D:\Program Files (x86)\Dangerous Waters\lang.ini
MD5 4BD79B09A9FF1F1916ED4ABAE7B6230F D:\Program Files (x86)\Dangerous Waters\LaunchDW.exe
MD5 6D943B713FEFFD12EEDE7A0692024536 D:\Program Files (x86)\Dangerous Waters\NavalSimEngine.dll
MD5 28D8A538729A320CAACF8A12930ABDFC D:\Program Files (x86)\Dangerous Waters\paul.dll
MD5 462158ED696B0DBE4C90333D74A77482 D:\Program Files (x86)\Dangerous Waters\Readme.txt
MD5 869AD28838CCB4CBA9FF66FC2F82EDA5 D:\Program Files (x86)\Dangerous Waters\SharedDLL.dll
MD5 CF4A140B22377B7834002889D98E232D D:\Program Files (x86)\Dangerous Waters\SonalystsEULA.txt
MD5 DF601CDD57C053BB6C9CE90212EBB8BB D:\Program Files (x86)\Dangerous Waters\SpeechEULA.txt
MD5 50A63D74D7700928FFF316FB7CA08778 D:\Program Files (x86)\Dangerous Waters\starchart.dat
MD5 7F6D6004897B634F7CA0E504800DB9E6 D:\Program Files (x86)\Dangerous Waters\unins000.dat
MD5 AEC338D4711C653EA1494705EE387FA6 D:\Program Files (x86)\Dangerous Waters\unins000.exe

Reply 16 of 16, by ZellSF

User metadata
Rank l33t
Rank
l33t
NovHak wrote:
Thanks for having tried ! […]
Show full quote

Thanks for having tried !

Stricly speaking that doesn't mean admin privileges aren't the cause of my problems since running it once as admin could have enabled something, but I doubt it's the case.

I performed a hash check on the files in the game root directory for people who have time to lose comparing my files and theirs, but I doubt it will be very useful. If you have no copy protection, it's likely your game executable will be different from mine (plus Securom's paul.dll will be absent) but I'm not convinced it's the cause since not many people must still be using Securom, and Dégé has problems too. So unless Dégé has a Securom-protected one as well, I doubt it's worth checking...

PS D:\Program Files (x86)\Dangerous Waters> ls | Get-FileHash -Algorithm MD5

Algorithm Hash Path
--------- ---- ----
MD5 782ADBEFD69F603A65596DFD54D0F232 D:\Program Files (x86)\Dangerous Waters\AppTextE.dll
MD5 C2FBF85C34A79C96D652DEF6AA577968 D:\Program Files (x86)\Dangerous Waters\camscript.dat
MD5 067C52E9F1AD5B2B6C6AE89BE5EB979D D:\Program Files (x86)\Dangerous Waters\CHANGE_LOG.txt
MD5 201CB5C1FAEE3C84485DD29127D0B632 D:\Program Files (x86)\Dangerous Waters\controllers.ini
MD5 5C5FC2CBDD6FC931B7692AFBE9DAE775 D:\Program Files (x86)\Dangerous Waters\D3D8.dll
MD5 32487C8B3CEBFC0CE9FCFF2A76EB75E2 D:\Program Files (x86)\Dangerous Waters\D3DImm.dll
MD5 5CE88EA7B5C77B141CBEC56EC2CE9793 D:\Program Files (x86)\Dangerous Waters\dangerouswaters.exe
MD5 22A6C321297C165EF0086C6E74034275 D:\Program Files (x86)\Dangerous Waters\DangerousWaters.ico
MD5 ACC8FC7E6C92BA7287533FE27B5DF970 D:\Program Files (x86)\Dangerous Waters\dangerouswaters.ini
MD5 5EAE2F3532D882A2F175331CD20D8D04 D:\Program Files (x86)\Dangerous Waters\DDraw.dll
MD5 E11F099F636034D7ADFD959CCBB24052 D:\Program Files (x86)\Dangerous Waters\lang.ini
MD5 4BD79B09A9FF1F1916ED4ABAE7B6230F D:\Program Files (x86)\Dangerous Waters\LaunchDW.exe
MD5 6D943B713FEFFD12EEDE7A0692024536 D:\Program Files (x86)\Dangerous Waters\NavalSimEngine.dll
MD5 28D8A538729A320CAACF8A12930ABDFC D:\Program Files (x86)\Dangerous Waters\paul.dll
MD5 462158ED696B0DBE4C90333D74A77482 D:\Program Files (x86)\Dangerous Waters\Readme.txt
MD5 869AD28838CCB4CBA9FF66FC2F82EDA5 D:\Program Files (x86)\Dangerous Waters\SharedDLL.dll
MD5 CF4A140B22377B7834002889D98E232D D:\Program Files (x86)\Dangerous Waters\SonalystsEULA.txt
MD5 DF601CDD57C053BB6C9CE90212EBB8BB D:\Program Files (x86)\Dangerous Waters\SpeechEULA.txt
MD5 50A63D74D7700928FFF316FB7CA08778 D:\Program Files (x86)\Dangerous Waters\starchart.dat
MD5 7F6D6004897B634F7CA0E504800DB9E6 D:\Program Files (x86)\Dangerous Waters\unins000.dat
MD5 AEC338D4711C653EA1494705EE387FA6 D:\Program Files (x86)\Dangerous Waters\unins000.exe

Dege didn't try windowed mode or using both the Windows 10 fix and dgVoodoo2 at the same time like I described (if he did, he didn't mention it here).