Jump to content

X-COM UFO Defense, CE, DOS, can't equip for mission


ck07

Recommended Posts

50+ missions worked in 3 games before this.

 

Alien inflitration, Southeast Asia, 5 ships. Shot down 2, interceptors on way home (none minimized). Sent my three Skyrangers after the other three on the ground. Successfully defeated the first (large scout, Tokyo). Other two are battleships on ground at Djakarta, each targeted by a different Skyranger. When 1st Skyranger reaches its target, I get to the equipment screen but it is black with cursor in upper left. Pressing any key or button re-displays result screen for the Tokyo mission.

 

Inserting a fresh savegame in between does not help.

 

Repeating the last part of the Tokyo mission does not help.

 

Diverting the first Skyranger, then re-assigning, does not help.

 

Divert the 1st Skyranger so that the other will arrive first does not help.

 

It seems clear that I have a corrupt file in my savegames during/after/maybe before? the Tokyo mission, but I need help in identifying which file(s) and what to do about them.

Link to comment
Share on other sites

More data.

 

Went back to before the Tokyo mission; 3 Skyrangers in the air. Had the one aimed at Tokyo stop to patrol so that one of the Djakarta missions would arrive first. When it did, same behavior of equipment screen PLUS when I pressed a key I got a mission result: 7 aliens dead, 11 X-COM (all), plus craft. When I returned to Geoscape, one Skyranger and crew had vanished. Not the one that I could not equip -- the one that had been near Tokyo disappeared even though it had never gotten closer than a few hundred miles; I had left it patrolling out at sea.

 

This is getting weird.

Link to comment
Share on other sites

I'm no expert on the matter but crashing from the battlescape and getting weird results afterwards isn't overly unusual, and are usually as a result of some other bug that causes the battlescape to end abnormally. Players in the past sometimes got similar results when using ctrl+c to end the battlescape prematurely.

 

One possibility is that some of the parameters for the mission (probably in loc.dat) may be bugged. It could be an invalid race, invalid map, etc.

 

- NKF

Link to comment
Share on other sites

It's worth noting that whenever the tactical game engine exits, it's supposed to write the mission results to the HDD for the geoscape engine to follow up on. If the tactical engine crashes, the results for the last mission stay on the drive, so the geoscape engine reads that.

 

That is to say, if the last mission you played through was Tokyo, then if the tactical engine crashes later it would be normal to see mission results from Tokyo.

 

This can cause havoc, but reloading to a save prior to the crash should sort it.

 

In any case, start your mission, allow the game to crash again, then zip up your MISSDAT folder and post it here. I might be able to work out what it's choking on, or perhaps one of my game versions will happily start the mission.

Link to comment
Share on other sites

It's worth noting that whenever the tactical game engine exits, it's supposed to write the mission results to the HDD for the geoscape engine to follow up on. If the tactical engine crashes, the results for the last mission stay on the drive, so the geoscape engine reads that.

 

That is to say, if the last mission you played through was Tokyo, then if the tactical engine crashes later it would be normal to see mission results from Tokyo.

 

First, thanks for being willing to look at this.

 

Agree that the re-appearance of the Tokyo results, given the main problem, is not surprising. There is a UFOpaedia discussion of an exploit that makes use of this.

 

This can cause havoc, but reloading to a save prior to the crash should sort it.

 

Now I'm not sure which 'crash.' There was no crash in/after the Tokyo mission, and there was a save after it (also one during and one not long before). None of these saves would let me get past the equipment screen at Djakarta, although the earliest, combined with a still earlier craft.dat, got different results which are described above.

 

In any case, start your mission, allow the game to crash again, then zip up your MISSDAT folder and post it here. I might be able to work out what it's choking on, or perhaps one of my game versions will happily start the mission.

 

Hmm. I have WinRar but this BB will not allow an upload of a .rar. Suggestion?

 

A few minutes later--I tried reloading from a still earlier save. Got a different landing location for one of the battleships and tried running Djakarta before Tokyo. Same problem. Which tells me that you are right that the problem is in the MISSDAT folder, not in the savegame(s). I notice that many of the filenames are the same. Would it be crazy to copy a savegame folder over the current MISSDAT?

Link to comment
Share on other sites

You can right click the folder and select "add to archive...", which will grant the option to zip it. Or I suppose I could stop being lazy and enable RAR uploads.

 

When the game attempts to start a mission, it makes a full save to the MISSDAT folder, replacing most of what's in there. Copying another save in there won't work as it'll just overwrite it again when you try to start the mission again.

Link to comment
Share on other sites

You can right click the folder and select "add to archive...", which will grant the option to zip it. Or I suppose I could stop being lazy and enable RAR uploads.

 

Did not know that WinRar could make .zips. Thanks.

 

When the game attempts to start a mission, it makes a full save to the MISSDAT folder, replacing most of what's in there. Copying another save in there won't work as it'll just overwrite it again when you try to start the mission again.

 

Actually doing this did change the behavior somewhat. I was able to re-run the Tokyo mission (UFO-37; 38 and 39 were shot down) and then the second of the battleships (in order of appearance; UFO-41), which this time landed at Manila. But when I went after the one at Djakarta (UFO-40) the same bug recurred--with the minor difference that you would have predicted, namely that the results shown were those for Manila.

 

Since the problem occurs after different tactical missions, but at the start of the same mission (and regardless of which of two Skyrangers I use for that mission), it must be a property of the Djakarta mission. When both battleships land at Djakarta (UFO-40 always lands first) it affects both missions.

 

(Would be a juicy mission if I can play it. #5 of 5 to stop an infiltration plus Snakemen = mucho reactions training.)

MISSDAT.zip

Link to comment
Share on other sites

For who knows what reason the terrain type is set to 63993 (or 0xF9F9) - it's only supposed to go up to 9, tops. Likewise, the map module table is a complete mess.

 

When you go to start a mission, the game checks the WORLD.DAT entry for the geoscape polygon the battle is to take place in, and sets the GEODATA file accordingly. It would appear the polygon in concern has an invalid terrain type set, but this should also cause the game to have issues displaying the geoscape, so I reckon something else may be going on here. Dunno. I may dig into it a bit more later, but for now I've generated a new GEODATA file, tweaked the UNIPOS file to match, and repackaged the result. Should get you through the mission, it'll be interesting to see if the weirdness persists.

 

To use this, you'll need to extract it back into your game folder, then extract my toolkit over that (refer to my signature). I'm assuming you're using the DOS version of the game, so you should then be able to just run "_TacResume.bat" and things should continue from there; if it is CE, you'll need to split your executable first ("_EXE Split.bat" can do that for you, but you'll need the Java VM installed to run that one; odds are you've already got it anyways).

 

MISSDAT.rar

Link to comment
Share on other sites

For who knows what reason the terrain type is set to 63993 (or 0xF9F9) - it's only supposed to go up to 9, tops. Likewise, the map module table is a complete mess.

 

When you go to start a mission, the game checks the WORLD.DAT entry for the geoscape polygon the battle is to take place in, and sets the GEODATA file accordingly. It would appear the polygon in concern has an invalid terrain type set, but this should also cause the game to have issues displaying the geoscape, so I reckon something else may be going on here. Dunno. I may dig into it a bit more later, but for now I've generated a new GEODATA file, tweaked the UNIPOS file to match, and repackaged the result. Should get you through the mission, it'll be interesting to see if the weirdness persists.

 

To use this, you'll need to extract it back into your game folder, then extract my toolkit over that (refer to my signature). I'm assuming you're using the DOS version of the game, so you should then be able to just run "_TacResume.bat" and things should continue from there; if it is CE, you'll need to split your executable first ("_EXE Split.bat" can do that for you, but you'll need the Java VM installed to run that one; odds are you've already got it anyways).

 

MISSDAT.rar

 

Thanks! I'm using the DOS component of the CE package plus XComUtil 9.7 (I hope that XCU is not the cause of the problem).

 

Xcusetup did split the .exe file but I'm unclear on whether that matters for the DOS version. (Have been unable to use Win version under XP SP3--f0dder's loader works but I get strange colors plus a hyperactive clock. Understand that CPU-slowing utilities deal with the latter, but lack solution for the colors.)

 

I'll try your files when I get home.

 

(I see that you enabled .rar files. :laugh: )

Link to comment
Share on other sites

Got partway there. Reached the equip screen although graphics resolution was greatly reduced (640 > 320?) and mouse movement very fast--basically uncontrollable .

 

Hit a key to see what would happen next. Turn 1 appeared, again with altered graphics and fast mouse.

 

Next key/mouse click touched (tried both ways) caused this error message:

 

C:\WINDOWS\system32\cmd.exe

The NTVDM CPU has encountered an illegal instruction.

CS:0000 IP:00ba OP:0f 04 50 09 9c

 

Task Manager showed these running:

cmd.exe

16 bit MS-DOS Subsystem

 

Read _TacResume.bat in Notepad. I do have a directory called UFOEXE that contains a file called BLACK.exe. (And I do have split .exe's courtesy XComUtil.)

 

 

FWIW I attempted to reload the game the regular way, from just before the Djakarta/UFO-40 mission. When I reached UFO-40 got same empty equip screen, but when I hit a key it failed in a way I have not seen before--left two dosbox windows open. One was labeled TACTICAL but was empty, the other was labeled DOSBos Status Window and contained:

 

CONFIG:Loading primary settings from config file dosbox.conf

MIDI:Opened device:win 32.

Link to comment
Share on other sites

Ah. Removed my DOSBox 0.65 months ago, so didn't have one (apart from the one that is part of CE).

 

Installed 0.74. Have a Z: prompt. Can't run _TacResume.bat because "drive C: is not mounted."

 

Read the instructions for the MOUNT command. I assume that what I need to do is something like "MOUNT [some letter] C:\Program Files\X-Com\X-Com UFO Defense\XCOM" (the dir where tactical.exe and _TacResume are).

 

Then I would issue "[that letter]:\_TacResume"

 

Is this right?

 

The DOSBox documentation, however, warns against mounting the C:\Program Files directory or any part of it due to risk of corruption of the actual hard disk.

 

Advice?

 

Thanks for your patience.

Link to comment
Share on other sites

I don't like storing the game (or any OTHER game) in Program Files for the simple reason that it takes too long to find stuff in there. You can move the game to c:\games\xcom or something if you like.

 

Later versions of Windows specifically have problems with running many games from Program Files. XP should be fine with it though, if you really wanna leave it there.

 

If the path has spaces in it, you'll need to wrap quote tags around it. A sample set of commands would be:

 

mount c "C:\Program Files\X-Com\X-Com UFO Defense\XCOM"

c:

_TacResume

Link to comment
Share on other sites

I don't like storing the game (or any OTHER game) in Program Files for the simple reason that it takes too long to find stuff in there. You can move the game to c:\games\xcom or something if you like.

 

Later versions of Windows specifically have problems with running many games from Program Files. XP should be fine with it though, if you really wanna leave it there.

 

If the path has spaces in it, you'll need to wrap quote tags around it. A sample set of commands would be:

You're probably right about where to put applications. I used to be better about it.

 

Some progress:

-Went back to before UFO-40, let it start and fail, copied your MISSDAT into place.

-Managed to mount c: properly and to start _TacResume (had to truncate name).

Result: Black screen in DOSBox window, cursor in upper left, DOSBox apparently frozen.

 

Don;t know whether this is just hard or I am doing it wrong; either way I apologize for taking up your time.

Link to comment
Share on other sites

So it's doing the same thing as before. I hadn't tested it in DOSBox before myself, but now that I do, it seems to be working; just a guess, but did you maybe extract my archive INTO the MISSDAT folder (as opposed to over it)?

 

Extracted MISSDAT and your tools to separate directors, then re-ran the failed mission (which of course failed again), then saved the game, then copied _TacResume into the XCOM directory and your MISSDAT over mine, then opened DOSbox and mounted the directory, then ran _TacResume.

 

Is that the (or a) right sequence?

Link to comment
Share on other sites

You do not need to attempt to launch the mission/save prior to copying the altered MISSDAT folder into your game directory. The contents of this folder override anything you do before you copy it in there; you could completely wipe all your other save game folders if you wanted, it just shouldn't matter.

 

However, it seems the new MISSDAT is not overriding your game, hence why my first thought was that you maybe didn't copy it over correctly. Well, actually my first thought was that somehow the DOS version of the game still wasn't happy with the data it was being passed, but then I sat down and tested that on my machine, and found it loaded quite happily.

 

Even so, perhaps you should give it a go under CE, which is much more crash-resistant (in fact it was able to load your original MISSDAT from the word go, though of course the terrain rendering was non-existent). Open "_TacRun.bat" and delete everything prior to the line that reads ":winstart".

 

Odds are you require one of f0dder's loaders to make the game render correctly. In my batch, I assume the filename for this will be "xcloader", but this may not be true for your install, and for all I know you don't have the loader at all - if you do, its icon will look like a sun (a yellow circle with eight spikes coming out of it). Replace the term "xcloader" with whatever your loader filename is, save the batch, run it. If, for who knows what reason, you somehow don't have the loader at all, then presumably you don't need it and the term "xcloader" can simply be removed from the batch.

 

"_TacRun" differs from "_TacResume" in that it won't proceed to the GeoScape once the mission ends (though it's obviously a little simpler to edit due to its relative lack of complexity). Once you get the game to load and have done the initial inventory management, you'll want to save the game mid-battle then quit and run your game normally in order to continue.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...