Fix for AMD drivers crashing at load with HoI2 DD Arma, AoD, DH and IC games [FINAL]

  • Crusader Kings III Available Now!

    The realm rejoices as Paradox Interactive announces the launch of Crusader Kings III, the latest entry in the publisher’s grand strategy role-playing game franchise. Advisors may now jockey for positions of influence and adversaries should save their schemes for another day, because on this day Crusader Kings III can be purchased on Steam, the Paradox Store, and other major online retailers.


    Real Strategy Requires Cunning

Czudak X

Sergeant
12 Badges
Sep 25, 2010
94
6
  • Iron Cross
  • Hearts of Iron II: Armageddon
  • Victoria 2
  • 500k Club
Ahoy, sailors.

Everyone (susceptible) knows that the games based on the ancient HoI 2 DD Arma engine (meaning: AoD, IC and DH, plus the first mentioned itself) crash on loading for an AMD graphic card users (I am one). Apparently AMD cleaned up their DirectX code for any version up to 9.0c and wrapped up stuff referring to those libraries, in the latest driver packages. Anyway, after Crimson v15.7.1 or so, issues began to occur.

Exactly two files, supplied with the each game's installation, are responsible for that behavior:

  • T-carrier a-fire c-min d-ne.bmp
  • T-carrier a-fire c-min d-sw.bmp

That's because they exceed the cap for any size dimension of 8192 pixels for a "texture", of any DirectX before 10 (including DDraw, on which the games' engines are based), venturing themselves into the almost 11000 pixels territory. Previously that worked by accident on AMD drivers. And it apparently still works by accident on nVidia/Intel graphic drivers.

I simply and decisively cut down those nuisances by half, to 5310 pixels (to maintain the pixel ratio for the each "frame" in the graphic file; the firing animations and their frames are repeated sequences, anyway, so it was logical to reduce by 50%) and the game loaded with no fuss. In every single title, mind you. And this way one can retain the original sprites. Works for Windows XP/7/8/8.1/10 and even for Wine emulation for Linux, plus all versions of AMD drivers.

***​

INSTALLATION:

1. Download the edited .BMPs from here.
2. Unpack the stuff into the X:\Your AoD or IC or DH or HoI 2 DD Arma Installation Directory\GFX\MAP\UNITS\BMP\ and overwrite.
3. You're done and can now play the game.

OPTIONAL:


You can change the corresponding .SPRs files (they contain animation codes for the engine) now, but it's not required. If you wish to, open them up (Windows Notepad will be enough) and change the "Frames" value from 79 to 39 (in both files), then save. Do that if you want to match the amount of displayed frames (by the engine) with the amount of actual frames (of the edited .BMPs); otherwise you will see the animation being faster, but it's rather passable. Files (use "Search" function in your OS):

  • T-carrier a-fire c-min d-ne.spr
  • T-carrier a-fire c-min d-sw.spr

***​

ATTENTION!!!

If you beforehand applied any other solutions fixing this problem by changing any of the .BMP or .SPR files - you NEED to install fresh! Otherwise it WILL NOT work properly if you don't know what you're doing and/or have still any leftovers from the other fixes. You can always move saves between the installations.

That is all, comrades.

***​

CREDITS: @Zsar1 for the very important information and collaboration.
 
Last edited:

quintelosky

Ingeniero del HoI2
10 Badges
Oct 2, 2005
2.829
38
www.quintelosky.com
  • Arsenal of Democracy
  • Hearts of Iron II: Armageddon
  • Deus Vult
  • Divine Wind
  • Heir to the Throne
  • Europa Universalis III Complete
  • Iron Cross
  • Europa Universalis III Complete
  • 500k Club
  • Hearts of Iron IV Sign-up
Good job, thanks
 

Conanteacher

Colonel
12 Badges
Apr 8, 2009
1.039
30
  • Hearts of Iron II: Armageddon
  • Iron Cross
  • Heir to the Throne
  • Divine Wind
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Darkest Hour
  • Crusader Kings II
  • 500k Club
  • Europa Universalis III: Collection
  • Hearts of Iron IV: Cadet
Hey wait, I use an AMD graphic card (Radeon R9 270X) and face some serious random CTDs whenever I install the latest drivers.
Iron Cross is really not playable because it crashes immediately within 10 to 100 seconds.
If carrier sprites are the problem, could they be fixed somehow?
I have not the latest drivers installed because of that. Any permanent solutions?
 

Conanteacher

Colonel
12 Badges
Apr 8, 2009
1.039
30
  • Hearts of Iron II: Armageddon
  • Iron Cross
  • Heir to the Throne
  • Divine Wind
  • Europa Universalis III: Chronicles
  • Europa Universalis III
  • Darkest Hour
  • Crusader Kings II
  • 500k Club
  • Europa Universalis III: Collection
  • Hearts of Iron IV: Cadet
Well, I hope I'm not in another dimension...

But some things that are obvious for you are difficult for others to understand. Some questions now:

- What is WineD3D ? A program I have to install? And then do what?
Your description "It's a hook/wrapper to intercept an executable's calls to DirectDraw/DirectX libraries and do its magic via OpenGL wonders" is for me incomprehensible.

On your link, post #165"=
...WineD3DForWIndows_2.2.zip 32-Bits (regular, without x64 added to their name). Download, unpack the three files from the solution (WINED3D.DLL, LIBWINE.DLL and DDRAW.DLL), put them into HoI2 (or AoD, or Iron Cross, or DH) directory and run the game - that's what I did.

...explains a lot more. But:

- What are the other side effects?

For example, "The downside: it's emulation, thus it slows the game down" is a really non-desirable side effect.

- I always use counters, but what if I follow slution no.1 and...
"Delete all CARRIER-named files from X:\Your[AoD or DH or HoI2DDArma or IC]GameInstallation\GFX\MAP\UNITS. All of them. No sprites - no problems. "
...and then select sprites? Will there just be some big ugly X-boxes or will there be CTDs?

Solution No.3 - "Replace the malfunctioning sprites (.BMP files) and animation codes" seems to be the best, but...

- Are you sure that this is the only problem? Is there any guarantee that there will be no more CTDs?

Sorry for being so reluctant, but I don't want to spend another afternoon reinstalling drivers from DVD and IC from scratch, in case something is not fixed.
Ah, and one last question (Quintelosky should answer that)

What happens with the next patch - If there is any?