Tuesday, September 13, 2016

CE Stopped Working?

Symptoms:
  • On starting a level: "InitD3D fails".
  • Configure / options shows no available resolutions.
If you have updated your 3d card lately or your PC/laptop is simply new, then CE may have stopped working with the above symptoms. It appears that ce.exe may be misinterpreting directx GPU make/model and resolution capability information for newer model 3d cards / drivers and is trying to start games with a corrupted screen resolution.

I don't yet know if its CE's fault, or a directx, or a driver problem. My guess it is CE not handling extra long model information strings and/or long GPU resolution capability lists and is corrupting its memory.

It may be a while before I fix the problem properly, but I have a quick fix patch in the interim. The patch simply hard-codes a game resolution into ce.exe, specifically 1920 x1080 @ 32 BPP. The patch may be applied to CE versions 1.42 and up. (Do not use it on ce v1.36 or older, it will not work.)

Get the patch here.

Open "ce142ForceRes.xsc" in a text editor for info on how to apply the patch. As mentioned, the patch is currently set to hard-code the game to 1920x1080, but if you know hexadecimal you can easily update the script to hard-code other resolutions.

Thanks to Skjalg and others for bringing this to my attention.


14 comments:

Skjalg said...

Thanks Dafoosa! :)

I am struggling with patching the ce.exe with XVI32. How do I do that?

√ėyvind Lie Sandnes said...

Open your CE.exe in XVI32, then click XVIscript in the menu up top. Go for Editor, open ce142ForceRes.xsc in this new editor, and click execute. Game is now playable.

Thanks a lot for the fix, Dafoosa. Codename Eagle at the next LAN, Skjalg!

Skjalg said...

Still cant get it to work. It just wont launch at 1080p

Dafoosa said...

Is 1920 x 1080 32bpp a supported resolution on your machine?

Marco Karel said...

Still getting the InitD3D fails after applying. Any solutions ?

lev245 said...

Hi, I downloaded the patch, but I have no idea about hex editing. I use an old monitor at 1280x1024. Does anyone know how I can change the resolution in the patch? Would love to be able to play the game that I played for hours on end 16 years ago.

Xperteas said...

Who still plays this game? where is the active community? We have 3 or so people who still play looking for other players.

S Oldenkamp said...

Thx for the fix.

I updated my pc and tried to play. Om my old pc with a gforce GTX560 it worked fine. Now I got a new RX480 from amd and it caused troubles. But more friends of my with a videocard from amd got the same issue. Maybe the problem is related to AMD cards.

Anyway... soon we will have a Old School LAN party with a playable CE for everyone. Thank you again!

Mikhail said...

connect server 109.73.13.27:24771

DB said...

Thanks for the fix, here's the modded exe for future convenience: https://mega.nz/#!38okXIib!VebZ1b1M4juBC8qLC6T3rEZql0hvfs1kRnb5vhnz3M0

I don't remember the framerate being capped at 38 FPS, is there any way to increase it?

Dafoosa said...

The frame rate is capped at ~36-38 fps and has always been. The whole game's engine is linked to that frame rate and increasing it (which is easy) causes the game to run at proportionally the increased rate. i.e. proportionally increases movement/acceleration in the game. I looked for a global constant to slow the game down again but unfortunately there isnt one. To slow the game back to normal speed I would have to change ~1000 game constants throughout the game binary.

DB said...

Cheers for the response. That's surprising to me because I used to play a lot of CE and I can't recall it ever feeling so sluggish or looking so blurry, especially when turning in a plane.
I may be spoiled these days however back then I was playing other games as well like Quake 3 and BF 1942 so it should've been apparent by comparison.

Back on the fix, is having different exes (e.g. one set to 1920x1080 and another set to 1600x900) an issue in multiplayer?
If not could you please assist me on what values I need to alter in the XSC file to make a 1600x900 version?

Enzo said...

AbyssUK here, you are my hero :)

Working on an RX580 Win10 x64, well done sir.

DB said...

Enabling G-Sync prevents the game from launching, you can alt-tab to re-enable it however it doesn't seem to take effect in game.

On another issue, installing 'Logitech X52 H.O.T.A.S' drivers apparently causes mouse lag in CE.

@AbyssUK, any tips on setting different resolutions for those with laptops?