These are some of the collected crash info:
Win 7 (now at 265+ hours Win XP too) - very frequent
Exception code: 0xc0000005
Fault offset: 0x001df674
Win 7 (now at 265+ hours Win XP too) - most frequent <-- dozens and dozens of these
Exception code: 0xc0000005
Fault offset: 0x001dfa5c
Win 7 only - less frequent
Exception code: 0xc0000005
Fault offset: 0x001df796
Win 7 only - rare - crash when Quicksaving
Exception code: 0xc0000005
Fault offset: 0x00361b2a
Win 7 and Win XP - very frequent in XP, moderately frequent in Win 7
Exception code: 0xc00000fd
Fault offset: 0x00a692cb
Computer info: q6600, 4Gb ram, GTX275 @ 1920x1080, X-Fi Platinum Pro, retail Win 7 Pro x64, retail XP SP3 x86.
The hardware is the same for both Win 7 and XP, the computer used is dual-booted to Win 7 or XP. As much as it can be equal the software installed in both OSs is similar and of course the hardware is identical. Crashing in Win 7 is much more frequent than in XP and a particular error only seems to happen in Win 7 - the 0xc0000005 errors, which leads me to believe that those errors are specific to Win 7.
Casually looking at these might lead you to think that it is just a hardware problem. The 0xc0000005 in particular is a generic memory error usually cause by a bad pointer. This can sometimes be caused by bad memory, overheating or a too overclocked system, in this case the system is not overclocked. This particular computer was taken apart and cleaned and checked for problems. An intensive memory test was run over several hours with no failures, a videocard test was run with no errors and a cpu test was run over several hours with no errors. In operation this computer does not overheat and lately I have been running monitoring software to record operating temperatures of the CPU, northbridge, memory and videocard and all seem to operate within nominal temperature ranges. I conclude that the hardware is not the source of the obscenely frequent crashing. In comparison Fallout 3 running on this same hardware very rarely crashes.
The 0xc00000fd error, which happens in both Win 7 and XP, is a stack overflow or stack unwinding error. This could happen when the program stacks are too small to handle the number of objects being managed.
An observation and possible explanation of the crashing problem:
While playing I have noticed that bodies and objects laying on the ground seem to randomly disappear. On returning to that same place those bodies and objects will often reappear. What that means to me is that those objects are actually there but the game engine is somehow randomly missing those objects and not drawing them. This may be significant later.
Now for an example: I happened to be walking across the desert near Searchlight with Arcade Gannon. I has just shot a Ghoul and was looking around for more targets, no enemy markers were displayed on my compass. Suddenly Arcade pulled out his melee weapon as if to attack, there was nothing there. Seconds later he again pulled out his melee weapon, still there were no enemy markers. I began walking and within 5 steps the game crashed. On reloading there was a ghoul standing about one foot away from my player character. I conclude that the Ghoul was there all the time prior to the crash, Arcade could sense the Ghoul but the game engine was not drawing the Ghoul.
Another example: I was returning to Camp McCarran from the west. Crossing the overpass just west of the El Rey Motel are two sandbag barricades, there is usually a soldier at the one on the eastern side. In this case the soldier was missing, as soon as I passed the barricade the game crashed. On restarting the soldier reappeared. At the Camp McCarran entrance on the right side of the door is another sandbag barricade, there is usually a soldier there. In this case the soldier was missing. As soon as I got within about 200 feet of the door the game crashed. Again on restarting the soldier reappeared. This all means that the game is not drawing all the NPCs in the game, they're there but they're not being drawn causing the game to crash.
Another example (I'm getting really cheezed off now!): Simple task to find Morale's body. Start at McCarran, crashed 4 times walking about a mile to the destination. Found the body, crashed again. What's worse is that the body is embedded in the surface, you are supposed to carry the body back a short way to some soldiers. Fixed the embedded body with the console. Went to look for the traps, you guessed it, crashed again. Disposed of the body, went back to McCarran, crashed once on the way, crashed again approaching the gate. So I thought this would be a good time to revisit Crimson Caravans to start the recruit Cass thing. Fast traveled to Crimson Caravans, did my business there, fast traveled back to McCarran and, lo and behold, crashed again. I am so angry at this point that I cannot continue with the game tonight. This kind of performance is obscene and makes for a horrible game experience. I would never recommend this game to anyone in its present state.
Now at 265+ hours of gameplay I am getting frequent crashes in BOTH Win 7 and Win XP, note that the crashes in both OSes are at the exact same code locations. Today, 1 Jan 2011 (what a nice way to start the year), in about 4 hours of gameplay I had 12 crashes all in Win XP. What's worse is that toward the end of this crash session Win XP itself seems to have begun failing, on restarting XP the system hung and required a power-off cycle to restart. I am not certain that these FNV crashes caused this problem but it is very likely. I will note that my system is otherwise extremely stable so this system hang is a very rare thing that I am going to blame on FNV. I have experimented with setting the CPU affinity to use only 2 cores (on a q6600), this may have helped but it's too soon to tell. Next I will try 2 cores in Win 7 to see if I can get good results.
I believe now that the game engine is failing in managing the AI and/or failing in managing the objects and that is what is causing the crashing. Objects that are really there are not being drawn and somehow that results in a crash. When the object is a NPC then managing the AI fails because the NPC is not being drawn again resulting in a crash. Some of this seems to be time dependent, if my player walks a crash is less likely than when running. Running causes the game engine to get too far behind in managing the objects and AI resulting in very frequent crashes. It also seems that a higher level player is more likely to have constant crashes possibly because there are more objects and AI to manage.
So what's the problem with the game engine? It's possible that there is some major error in managing lists of objects in the game, either the lists are too large or possibly some of the lists are being overwritten by some buffer overflow error. This could be a classic example of a failure caused by a memory leak causing essential parts of the game data memory to be overwritten.
Is there a solution? I believe that only the developers can fix the problem. The code locations I have listed above can be used to help find the particular location that the crashes happen at which should help to determine just exactly what is failing.
