VOGONS


First post, by FX506

User metadata
Rank Newbie
Rank
Newbie

So I managed to set up Age of Wonders to work with dgvoodoo2 by doing the CLSID edit for ddraw.dll so it loads the wrapper and not the system dll. However, the game only works in windowed mode: if I try to run it in fulscreen it crashes, regardless of setting the resolution with the launcher or changing it ingame. Strangely, fullscreen works with ddrawcompat, even though I have seen peope get the game working with dgvoodoo. I tired some of the additional settings (deferred mode switch, ms d3d names), but they didn't help. I'm running the game on an Asus TUF laptop that has an intel UHD 750 igpu and an RTX 3050 Ti dgpu, the crash occurs with both of them.

Reply 1 of 9, by Krolin

User metadata
Rank Newbie
Rank
Newbie

You could try borderless fullscreen instead.

GeneralExt settings:
Windowed mode attributes -> Borderless, Fullscreen size
Fullscreen mode attributes -> Fake
Presentation model -> Flip discard (Windows 10+ only)

Borderless fullscreen + flip discard performs as good or better than fullscreen exclusive.

By the way, DDrawCompat forces borderless fullscreen by default :)

Reply 2 of 9, by FX506

User metadata
Rank Newbie
Rank
Newbie
Krolin wrote on 2023-07-23, 21:46:
You could try borderless fullscreen instead. […]
Show full quote

You could try borderless fullscreen instead.

GeneralExt settings:
Windowed mode attributes -> Borderless, Fullscreen size
Fullscreen mode attributes -> Fake
Presentation model -> Flip discard (Windows 10+ only)

Borderless fullscreen + flip discard performs as good or better than fullscreen exclusive.

By the way, DDrawCompat forces borderless fullscreen by default 😀

Tired that, doesn't work, still crashes.

Reply 3 of 9, by Dege

User metadata
Rank l33t
Rank
l33t

I gave it a quick go but it worked for me in fullscreen. I had an occassional crash when entering a game scene but that came from a game dll.

Did you try the _dbg version of dgVoodoo to see if there is any error dumped?

Reply 4 of 9, by Krolin

User metadata
Rank Newbie
Rank
Newbie
FX506 wrote on 2023-07-23, 22:29:

Tired that, doesn't work, still crashes.

I got it to work by using DxWrapper (Dd7to9) + dgVoodoo (D3D9 -> D3D11):

  1. Copy dxwrapper.dll and dxwrapper.ini to AoW folder (rename them to winmm.dll and winmm.ini)
  2. Copy dgVoodoo x86 D3D9.dll to AoW folder
  3. Open winmm.ini and set "Dd7to9 = 1"

Edit: menu works but campaign crashes...

Reply 5 of 9, by FX506

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2023-07-24, 19:02:

I gave it a quick go but it worked for me in fullscreen. I had an occassional crash when entering a game scene but that came from a game dll.

Did you try the _dbg version of dgVoodoo to see if there is any error dumped?

Here's the debug output.

EDIT: I noticed that there is a "$ DWM8And16BitMitigation" compatibility flag set for AoW.exe in AppCompatFlags. Could this somehow conflict with the wrapper ?

Reply 6 of 9, by Dege

User metadata
Rank l33t
Rank
l33t

Thanks! I tried the GOG version of this game (1.36) but TBH I could not even start it, it just got stuck into a waiting state, no matter if dgVoodoo was present or not.
The non-GOG version that I tried last time, worked in full screen too.

Based on the log, I suppose that the last DX-call is a surface Lock and then an exit with error code 0x80000001 which is strange, it can't come from dgVoodoo.
What if you don't install the game into "C:\Program Files (x86)" but a neutral folder, like c:\games or sg like that? (Program Files is requires admin privilege to create/modify files in it, AFAIK)

Reply 7 of 9, by Krolin

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2023-07-25, 18:52:
Thanks! I tried the GOG version of this game (1.36) but TBH I could not even start it, it just got stuck into a waiting state, n […]
Show full quote

Thanks! I tried the GOG version of this game (1.36) but TBH I could not even start it, it just got stuck into a waiting state, no matter if dgVoodoo was present or not.
The non-GOG version that I tried last time, worked in full screen too.

Based on the log, I suppose that the last DX-call is a surface Lock and then an exit with error code 0x80000001 which is strange, it can't come from dgVoodoo.
What if you don't install the game into "C:\Program Files (x86)" but a neutral folder, like c:\games or sg like that? (Program Files is requires admin privilege to create/modify files in it, AFAIK)

I was experimenting with the GOG version again and the only way I could get it to run was combining DxWrapper (winmm.dll, winmm.ini -> EnableDdrawWrapper = 1) + cnc-ddraw (ddraw.dll) + dgVoodoo (D3D9.dll). So basically: DD6 -> DD7 -> D3D9 -> D3D11... Got an error on exit but at least campaign worked 😁

Reply 8 of 9, by FX506

User metadata
Rank Newbie
Rank
Newbie
Dege wrote on 2023-07-25, 18:52:
Thanks! I tried the GOG version of this game (1.36) but TBH I could not even start it, it just got stuck into a waiting state, n […]
Show full quote

Thanks! I tried the GOG version of this game (1.36) but TBH I could not even start it, it just got stuck into a waiting state, no matter if dgVoodoo was present or not.
The non-GOG version that I tried last time, worked in full screen too.

Based on the log, I suppose that the last DX-call is a surface Lock and then an exit with error code 0x80000001 which is strange, it can't come from dgVoodoo.
What if you don't install the game into "C:\Program Files (x86)" but a neutral folder, like c:\games or sg like that? (Program Files is requires admin privilege to create/modify files in it, AFAIK)

Crash happens regardless of where the game is installed. Looks like it might be a GoG issue rather than a wrapper one. The game works for me without a wrapper, but it's prone to random crashes, or with ddrawcompat, but it will hang on exit if the latter is used. I will try to test with a retail copy.

EDIT: NVM, retail 1.36 has same issues; if I enable intro cutscene, it crashes right there, if I disable it, game boots into main menu (with working fullscreen at least), but opening any menu causes CTD.

Reply 9 of 9, by FX506

User metadata
Rank Newbie
Rank
Newbie

Well I finally got the game to work with the wrapper, but there is a caveat. The game works if the Fast Video Memory Access option is unchecked in wrapper settings and if the skip intro option is checked in the game's launcher (GDI hooking doesn't help with the intro), but then it will run slow like molasses (not unplayable, but certainly not how it should) regardless of what gpu is used. If I enable FVMA it gets to the menu, but crashes if i click on any option. Also, some of the previous crashes might also have been caused by me trying to run the game with the DSOAL Directsound wrapper, as removing it solves some crashes, but not all. Attaching logs for both video memory options as well as for the intro crash.