I try the X-Files DVD games so you don't have to


I could not get this game to run at first. The same Windows 98 virtual machine that ran parts 1, 2, 5, 6, 7, and 8 did not run this.

Immediately it complains about my Shockwave version. I have the latest version that runs on Windows 98. It blissfully runs all the other games.

Shockwave version error

So instead I'll try it on a Windows 7 virtual machine. I'll try version 8 of Shockwave because I believe that would be the newest version available when this DVD was made.

Shockwave install

Windows 7 is complaining about the software but that's nothing to worry about. I like Windows 7. It's my second favorite version after 2000. It is extremely complain-y though.

Windows 7 complaining

We now get to a point where the window loads but is stuck here.

Totally stuck

Alright, well good thing I tried this game last instead of first otherwise I would have scrapped this idea. Maybe I should have anyway.

Round 2

When I first posted this page I quit after trying it on Windows 7. That is so out of character for me. Normally there is nothing I enjoy more than debugging pointless obtuse problems. Let's get back to it...

First, let's try the last version of Shockwave ever.

Trying Shockwave 12

Windows 7 couldn't install this which I found very odd. Windows 7 was a common OS at the time of Shockwave 12 existing. The last security update I see is from 2013. Perhaps this is a problem from trying multiple versions on this VM. Then again, that is also a common thing people did all the time.

I then started poking around the config files for InterActual player. That's where I noticed:

Config file

OK, so this is really expecting Flash 5 or at least includes a copy of it. It also references Internet Explorer 4 which would have been an old version by the time these DVDs were released. It supports a theory that this game was built & tested on Windows 98 though.

What the heck, time to uninstall all prior versions and roll back to Flash 5.

Rolling back to Flash 5

OK, progress sort of. Now it's stuck on that little icon you probably remember all too well if you're old enough to have watched The X-Files when it was new.

At this point I would like to note that I am completely 100% aware of a project to emulate Flash games. I could very likely play this game using that emulator. Two issues though... (1) it lists supports for Linux as "limited" which in my experience means "totally nonexistent" (2) the page notes that you might have to disable or configure your virus scanner to make it run, that makes me a tad skeptical. Of course I am extremely familiar with virus scanners doing dumb things so maybe I'm overreacting.

Let's look at some code, specifically the HTML page attempting to play the game (emphasis added to things relevant to this article).


<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script  language="JavaScript">
<!--
function popUpVideo(){
	gnuwindow = window.open ('../popup/popup.htm', 'gnuwindow', 'width=400,height=350,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no')
}
// -->
</script>
<!-- begin Quicktime detection and shockwave detection -->
<SCRIPT LANGUAGE="Javascript">
<!-- hide from pre-script browsers
  var haveshock = false;
//-->
</SCRIPT>
</head>
<body bgcolor=000000>
<script language="javascript">
<!--
with (navigator) if (appName.indexOf('Microsoft')!=-1 && appVersion.indexOf('Mac')==-1) document.write(''+
'<scr'+'ipt language="VBScript">\nOn error resume next\n'+
'MM_dir = (IsObject(CreateObject("SWCtl.SWCtl.1")) Or IsObject(CreateObject("Macromedia.ActiveShockwave.1")))\n'+
'MM_flash = NOT IsNull(CreateObject("ShockwaveFlash.ShockwaveFlash"))\n</scr'+'ipt>');
//-->
</script>
<SCRIPT LANGUAGE="Javascript">
<!-- hide from pre-script browsers
	if (window.MM_dir!=null) haveshock=true;
	if (haveshock){
		// your good to go... nothing needs to happen
	}else{
		//change the value in quotes below to change the page users are redirected to
		//self.location="getplugs.htm";
	}
//-->
</SCRIPT>
<!--  End Quicktime detection.  Place page content below this comment -->
<object classid="clsid:166B1BCA-3F9C-11CF-8075-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=7,0,2,0" width="720" height="477">
	<param name="src" value="../ASSETS/SHOCKWAVE/xfiles4_01.dcr">
	<param name="background" value="000000">
 <embed src="../ASSETS/SHOCKWAVE/xfiles4_01.dcr" bgColor=#000000 pluginspage="http://www.macromedia.com/shockwave/download/" width="720" height="477"></embed>
 </object>
</body>
</html>

It's been a while since I thought about these kinds of problems, but this looks like something that would try to download Shockwave 7(?) from a URL that doesn't exist anymore. Also based on the image alt text being from the previous game I concluded this was thrown together without much thought.

The season 2 DVD contains a nearly identical page without the javascript detection code. I don't think that's the issue. In the season 5 DVD it's a whole different setup.

Let's go back to Windows 98, uninstall everything, reboot, and see if this installs on a "clean" system.

Security warning

Now there's a security warning and it still doesn't load. I'm beginning to think this only ever went through the "works on my machine" testing process. One of the 5 or so worst developers I've ever worked with used that line often. The absolute worst developer I worked with was a dude who couldn't figure out the difference between cookies, session storage, and cache. Explaining the appropriate use of those is now a go-to interview question for me.

Anyway... what do we try next?

OK, crazy time. Since the game on the 2nd DVD set works, let's replace the .dcr file in that DVD with the one from the 4th DVD set. Well, after copying it in case I corrupt the DVD in some way.

Finally working

Hey, that actually worked. In the screenshot the wrapper for the 2nd DVD is there but it's playing the game from the 4th DVD.

Briefing

It starts off like the others with a briefing. This appears to follow the black oil story line. That was a big part of the season then so that checks out.

The first game might trigger phobias in some people. It involves trying to collect samples of the black oil squirming under a cadaver's skin. That's like 3 potential triggers in a row.

Squirmy game

Each time you collect a sample it leaves a puncture wound for a few seconds. During this time other oil worms can escape through the hole. You have to stab then stalk the area until it heals. I don't know how a corpse heals from a puncture wound but whatever.

If too many worms escape, then it's game over.

Game over screen

This took a couple tries to get through. Later on I would have to become an expert on this game. More on this soon.

First game complete

The next game involves collecting samples from a biofuge and dragging them to an analysis tray.

Biofuge game

This is tricky because some of the samples are radioactive but there's no way to tell ahead of time which they are. You have to drag them back before the bottom meter fills. To make things more challenging, the bottom meter does not reset. So you only get to make a couple mistakes.

If you fail you have to start over from first game.

Another game over screen

Then you have to arrange the samples into a longitude.

Finding the longitude

If you can't read those characters it's not you. I can't really make them out at all. I just kept rearranging until the submit link appeared. I believe it's N5502.

Also if they knew the right answer all along why do I have to go through this?

You then have to do the biofuge game again.

Biofuge game again

This time you need to pull E, 2, 5, and another 5 out. Then it's a second round of rearranging them. This time, however, it does not tell you if the answer is right.

Finding the latitude

Then there's an email asking for the coordinates.

Email asking for coordinates

I have no idea if this is a good or bad ending.

Ending maybe?

I went back and tried some other latitudes. If you get them wrong there's an email telling you to try again. So I guess that's really it. This is a very short game then.

Wait, what does "Delete & proceed" do?

Alternative ending

OK, you get a different ending message. Afterwards it goes back to that same ending screen. This is indeed very short.


Related