M.A.X. 2 Mechanized Assault & Exploration doesn't start

Hello,

when I try to execute M.A.X. 2 [GOG version] I get the message “Screen init failed”.

I’m using the latest Lutris from Flathub with Wine version 9.0. The game is patched to the latest version 1.40. Under real Windows 10 the game is running without issues.

Is there a way to get this game to work?

Thank you in advance for your help!

I will start by assuming you have other Windows games working, and are using a PC not a Steam Deck.

The auto installers aren’t always the best, and the using the system default WINE, whilst adequate for some things, isn’t the best option for most games.

I did find this result through the obvious internet search of “m.a.x 2 mechanized assault and exploration screen init failed”

The tool Dxwnd comes with a bunch of compatibility features that allows MAX2 to run without crash. You have to enable the option “Handle Error Messages” under the Compat tab.
To avoid the “Screen Init Failed” error message, you have to use CnC-Ddraw, put the ddraw.dll file in the game’s folder.

You might be able to make it work with the cnc ddraw - you can install it into the prefix using winetricks and then copy it into the game folder as suggested.

Note: That requires you to “go into” the flatpak - its a container isolated from the system - and make that change.
Short version: flatpak run --command=bash net.lutris.Lutris will give you a command line inside the flatpak. Then you need to find the prefix of where the game is installed (from the config,) where the cnc ddraw.dll got installed to (probably windows\system32), then copy it to the game directory and hope that 2 year old post is right.

Good luck :slight_smile:

Hello Asaftiifm,

thank you for the reply. Yes, I’m not using Steam Deck and already installed some games like Submarine Titans, IL-2 Sturmovik Great Battles, Legend of Grimrock 2 which all working great with Wine 9.0.

I followed your suggestion and installed CnC-Ddraw with Winetricks, activated “use winetricks of system” in Lutris game config and also placed the ddraw.dll into the M.A.X. 2 game folder. I tried different Windows versions from Windows 95 upwards. And I added an dll-override for ddraw in Winecfg. But nothing works. The same error message as I described in the first post appeared again.

Then I tested a different starter. I changed it to “wine-ge-8-26-x86_64 (standard)” for the game. When I execute the game with it a different error message appears:

“Not enough extended memory available to run M.A.X. 2. Amount needed: 6000000, amount found: -1”

Is there any other possibility to get this game to work?

Greetings,

Condor-2-4-2

After further research on the internet I found an old bug report on WinHQ Bugzilla (https://bugs.winehq.org/show_bug.cgi?id=17258). Comment 10 describes a fix where a specific byte has to be changed in the code of the game executable. This byte defines a version check for DirectX. But I noticed that the mentioned byte can only be found in max2.exe version 1.00 at offset 0x69D2F.

For other versions of the game the offsets for that specific byte are different. For newer versions I could identify the following offsets:

Version 1.10: change Byte 0x05 to 0x00 in offset 0x69E3F
Version 1.30: change Byte 0x05 to 0x00 in offset 0x690DF
Version 1.40: change Byte 0x05 to 0x00 in offset 0x69F1F

First I edited the game executable (in my case the last official patched version 1.40) with Okteta. For the Direct Draw API I use the latest CnC-Ddraw from GitHub, as Asaftiifm suggested in his reply. I extracted all files from the CnC-Ddraw.zip archive in the M.A.X.2 game folder and created an dll override “ddraw (native)” for the max2.exe in Winecfg. Finally I adjusted the graphic settings with cnc-ddraw config.exe.

Now M.AX.2 runs fine for me without error messages!