FunkyFr3sh / cnc-ddraw

GDI, OpenGL and Direct3D 9 re-implementation of the DirectDraw API for classic 2D games for better compatibility with Windows ME, 2000, XP, Vista, 7, 8, 10, 11, Wine (Linux/macOS/Android) and Virtual Machines
https://discord.gg/afWXJNDDF5
MIT License
2.23k stars 143 forks source link

DVD Version with MPEG-2 MCI driver do not run (The X-Files Game) #315

Closed rrrcabral closed 4 months ago

rrrcabral commented 4 months ago

This game has a DVD version with some better video quality in MPEG-2 format, but they are not running on Windows 11 (actually, none windows after Win98). https://www.pcgamingwiki.com/wiki/The_X-Files_Game

the game is not unplayable because by not running MPEG-2 it apparently plays another video of worse quality in its place, but the person cannot experience the high quality of the DVD version. The 'read me' of the game says: "The MPEG2 player must include a Windows MCI driver" this MCI support seems to be ended after Windows98.

When searching solutions i saw that this case is similar to the other games like "Star Trek: Starfleet Academy" and "Wing Commander 4" that also has a DVD version with MPEG-2 better videos, Fortunately, these 2 games have a Patch: http://www.si-gamer.net/gulikoza/dxmci.html which converts the MCI commands to the current way that Windows works, but it seems that this tool needs to be done game by game, so "X-Files" must not be supported, and the patch author must have been off the internet for over 10 years to ask for an update to this game.

So it would be great if a fix was added for this "MCI Driver" case, so that X-Files becomes playable too, perhaps based on this code for other games that are already ready.

To test, the DVD version can be downloaded at Archive.org and myabandonware-com in DVD folder you can see the "vob" folder with the best quality videos, that include the Opening.

FunkyFr3sh commented 4 months ago

I don't have the game, but I checked some screenshots and it does look like a 3D game (cnc-ddraw is supposed to work with 2D games only, so it may either not work at all or it's not going to look that great), so it may not be possible to use cnc-ddraw with it.

But anyways, I had to deal with another old game recently (Captain Claw) which also had a DVD version with MPEG-2 (.vob) movies that didn't work ever since windows 98.

I debugged it and found out there was just a registry key missing and therefore windows refused to play any files with the .vob extention. So here's the fix:

  1. add missing registry key cnc-ddraw.vob.movie.fix.reg.zip

  2. install old mpeg 2 codec (X-Codec-Pack_2.7.4 works, but you may be able to use other packs as well)

rrrcabral commented 4 months ago

Just to inform, "X-Files" is not a 3D game, it is an FMV game, it is a Point and Click game with static images and from time to time some videos play (via QuicktimePlayer, and play well). But the DVD version, in addition to this Quicktime part, also has a few videos in MPEG-2, and that's where the problem lies. But I'll try your fix suggestion.

rrrcabral commented 4 months ago

IT WORKED!

I applied the .reg, so I tried installing the "MPEG-2 Video Extension" from the Windows Store, which didn't work, but almost, the screen went dark but I could notice that the audio had better quality and it was the MPEG-2 file that was playing! So I was excited already. so I uninstalled that, and downloaded the latest version of the K-Lite Codec Pack, AND IT WORKED TOTALLY! Thanks for the information to fix this.

(Now the only "downside" is dreaming about improvements beyond the original, like dreaming about a widescreen-hack for the game [which the videos are letterboxed and small], and running these MPEG-2 videos at maximum resolution [720p horizontal] because The game runs at 640p horizontally and down-resizes the video leaving aliasing. but that's a dream, the original version was already perfect.)

FunkyFr3sh commented 4 months ago

nice!

Yeah, had a similar issue in captain claw. I just re-encoded the videos with x264 there and resized them with a smooth filter (bicubic). That also made the files a lot smaller and it did work now without having to install any codec packs, but unfortunately required a game patch to make the videos working with the new file extension (avi.) 😄

Anyways, closing this now 👍

FunkyFr3sh commented 4 months ago

@rrrcabral I'm just messing around with games that use .vob and .mpg videos (trying to fix some issues with them...) and I noticed X-Files DVD got the movies in the original resolution stored in a ddraw surface, this allowed me to prevent the downscaling to 640x480 and integer upscale it instead.

I'm not planning to include this in cnc-ddraw, but It was a fun little experiment, if you like to try it, get it there:

cnc-ddraw-x-files-dvd.zip

This will integer upscale the movies (e.g. 1440x960 or 2160x1440) and center on the screen. So yeah, you need a monitor that supports at least 1440 width and 960 height for this trick to work