Crashes after 1 turn

Post bug reports and ask for help with other issues here.

Moderators: wdolson, MOD_War-in-the-Pacific-Admirals-Edition

Evander Law
Posts: 25
Joined: Sun Sep 04, 2016 9:11 pm

RE: Crashes after 1 turn

Post by Evander Law »

ORIGINAL: Bullwinkle58

Couple of things occur to me.

Can you launch Media Player outside the game, and play music through it? Can you show a video on it?

Do you have a stand-alone sound card? Or motherboard sound chip(s)? The last dedicated sound card I had was mumble mumble PCs ago; a Turtle Beach. It had its own driver suite. I know MS upgraded MP big time recently, or in the last two years at least. Check your sound drivers.

If you have mobo sound chips go to the mobo site and see if they have a BIOS flash or other flash upgrade for the mobo chipset.

The other thing also concerns hardware. If you have a card it could be loose in the slot. It could be dirty and overheating. The fact it lasted five turns instead of two after you opened the box and mucked with the motherboard for RAM install is suspicious. If you have a card reseat it, or try another slot if you have one free.

But the first thing is more important. If Media Player works great outside the game you've isolated the MP problem a lot.


Okay, I tried Bullwinkle58's suggestions next and still no dice.
1. I was able to launch Media Player outside the game and play music and videos.
2. I had a stand-alone sound card, but went ahead and removed it as I don't need it ...so now my 2.1 speakers are hooked up to the MOBO. I checked and it has the latest BIO from Dell from 2014.

So how does that isolate the problem since I was able to use Media Player outside the game?

thx
Evander Law
Posts: 25
Joined: Sun Sep 04, 2016 9:11 pm

RE: Crashes after 1 turn

Post by Evander Law »

I also downloaded and installed (copied over) the wmvcore.dll file sets for 32 and 64. Still crashed at same time roughly. I also removed all anti-malware that might have been running (actually did that yesterday).

any other ideas? this is the only game that crashes on me. No other one does, though the other games probably aren't as large and complex as WITPAE.

thx
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

Alright, I think the time has come to collect more information about the problem.

There is something very specific to your machine that is causing the problem - otherwise I think our general troubleshooting would have worked, and I haven't seen any other users reporting similar symptoms (to indicate a more inherent conflict between the game and media player, for instance).

In any software program, but especially a more complex one like a game - it calls upon a lot of different files to accomplish the various tasks - drawing the graphics, playing the audio, etc. Those files called upon have their own dependencies on still other files (and those on others), and very quickly you can see how intricate the tapestry is woven.

That said, one of the most powerful ways to diagnose a particular issue with a piece of software is to create a "dump" of it. Essentially we are taking a snapshot of the executable at the time an error occurs in order to forensically discover the specific error(s) that are causing the failure.

Without further ado, here is the procedure to create a process dump:

Note: Since we are using some command line (i.e. old "DOS style") tools, I have made both written instructions and illustrated some of the same in pictures so you have a way to visually confirm the steps.

1) Create C:\dumps folder

2) Click on the Start Menu

3) Open Start Menu - type 'powershell' in the 'Search Programs and Files' box

4) Right-click the Powershell shortcut

5) Click 'Run as Administrator' - click 'Yes' if it asks you to run it

Steps 1 - 5:

Image

6) Download (see attached) and extract the procdump.zip package into C:\dumps

7) In the Powershell window, type

Code: Select all

cd\

8) Then type

Code: Select all

cd dumps

9) Once in the C:\dumps directory, type

Code: Select all

.\procdump -i c:\dumps

10) ProcDump will confirm that it is now 'set as the Just-in-Time (AeDebug) debugger.

11) Then type the following into Powershell:

Code: Select all

.\procdump -w -e 1 -ma "War in the Pacific Admiral Edition" c:\dumps

12) You will receive the message in Powershell: 'Waiting for process named War in the Pacific Admiral Edition...'

Steps 7 - 12:

Image

13) Start WitPAE like you normally would; keep Powershell open but you can close any other open windows.

14) Play until WitPAE crashes and allow Procdump to write the dump file

15) Look in C:\dump - there should be a .dmp file in there

16) Using the upload service of your choice (DropBox, Google Drive, etc.), upload the .dmp file and PM me a link to download it.


If you need help setting up the file sharing service, just let me know.

I'm recommending that you PM me the dump file link because although I don't anticipate any personal info being captured by the process dump (it will be specific to WitPAE - so at most it might have the name of your windows user account and/or computer name), I like to be on the safe side with these things. Also, I don't want to alarm you by mentioning 'personal info', I just like to err on the side of full disclosure when there is even a chance of privacy being a factor.

So, what am I going to do with the dump file? I will 'debug' it to see what specific error messages are being generated so that we will have a pointer to the likely cause(s).

Finally, I'm offering this as an option - don't feel compelled to do it if you have any objections to sharing the dump file, etc. But at this point I feel it is the best option unless a developer with more intimate knowledge of the inner workings of WitPAE suddenly appears to save the day. Even then, they would probably also need a dump file because as I said earlier, I think the issue is specific to how your machine is configured and isn't an error in the WitPAE code.
Attachments
procdump.zip
(795.01 KiB) Downloaded 6 times
User avatar
rustysi
Posts: 7472
Joined: Tue Feb 21, 2012 3:23 am
Location: LI, NY

RE: Crashes after 1 turn

Post by rustysi »

8. I'm running Win 7 Home Edition
9. yes, I using the -dd_switch. This is what my Quick Start Target line shows: "C:\Matrix Games\War in the Pacific Admiral's Edition\War in the Pacific Admiral Edition.exe" -wd -altFont -cpu4 -multiaudio -dd_sw

I too run Win 7 Home Edition on an ~6 year old laptop. I know this is somewhat simplistic and probably has nothing to do with the problem, but its easy to try. I run absolutely no switches in my command line... none. Get rid of 'em and see what it does, it'll only take a minute and you can put 'em back in in a minute. Just a SWAG.
It is seldom that liberty of any kind is lost all at once. Hume

In every party there is one member who by his all-too-devout pronouncement of the party principles provokes the others to apostasy. Nietzsche

Cave ab homine unius libri. Ltn Prvb
Evander Law
Posts: 25
Joined: Sun Sep 04, 2016 9:11 pm

RE: Crashes after 1 turn

Post by Evander Law »

Thanks rustysi, I tried your suggestion first, but no luck. :( thx
User avatar
BillBrown
Posts: 2335
Joined: Sat Jun 15, 2002 3:55 am

RE: Crashes after 1 turn

Post by BillBrown »

not a good idea
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

We're making progress.

I'll refer to Evander in the 3rd person for the benefit of anyone else following along...

Evander was kind enough to share a process dump, and I have identified the point at which the crash is occurring.

The Windows Media Playback module (wmvcore.dll) attempts to read the DirectShow ASF Support module (qasf.dll) in order to call a function, but the qasf.dll module has already been unloaded from memory - causing a read error that results in an unhandled exception (crashing WitPAE).

That covers the WHAT of the problem, but as to the WHY...?

When I looked at the process behavior of my own copy of WitPAE, it appears to me that qasf.dll completely precedes wmvcore.dll and if the qasf module ever unloads, wmvcore isn't calling on it. The general behavior of WitPAE appears to be that all critical assets are loaded into memory upon starting the program, and they more or less sit in memory to be used as needed. Beyond the initial loading of the applicable modules, I didn't see a lot of activity back and forth between the qasf and wmvcore modules.

This mirrors the behavior of the game's graphics system, for instance. If you make a change to an art asset - whether it is part of the map, plane art, ship art, part of the interface, whatever - the change won't be reflected until you completely exit the game and restart it. It's not enough to go back to the main menu and reload a saved game; as I said, the assets are loaded once when the game first starts.

At this point I do not know 100% why the qasf module is being unloaded. I built a virtual Windows 7 machine in order to have a basis of comparison to Evander's files. The qasf.dll modules are an exact match - but Evander's wmvcore.dll example posted earlier is from the System32 folder, so I'm not sure that they are an exact match.

Here is my copy for comparison:

Image


So, I have attached my source wmvcore.dll and qasf.dll files. Copying these into the SysWOW64 folder will take care of the off chance that one of Evander's copies has become corrupted somehow.

The issue could also be caused by not having all or the newest C++ Runtime Libraries installed. These help determine how the various modules interact with one another and are typically obtained via Windows Update; however, I have another method to 'double check' the libraries currently installed on Evander's install of Windows 7.

First, download WSUS Offline Update. Extract it and run the 'UpdateGenerator.exe' file.

It will look like this - check the options as shown below and click the 'Start' button.

Image


That will start a script where it will build a local repository of Windows Updates from the Microsoft servers. Once it finishes, go into the wsusoffline folder, open the 'client' folder, and start 'UpdateInstaller'.

You'll want to check the following boxes (if they are available):
1) Update C++ Runtime Libraries *the most important
2) Install .NET Framework (whichever ones are offered)
3) Verify installation packages
4) Automatic reboot and recall

Then click 'Start'.

Note that it will proceed to scan your copy of Windows and update as necessary. It will automatically restart your computer when needed to continue the updates - so don't be typing an important document, for instance, while it updates. Just let it do its thing and be aware that it may require several restarts, and even restarting the UpdateInstaller executable, before it gets to a point where it says you have everything.


Evander, I'd recommend to take the slow & methodical approach here - we'll try the file replacement first and proceed from there (since you mentioned in PM that you hadn't actually copied over the files before). In the .zip attachment there will be the two modules: wmvcore.dll and qasf.dll. Make backup copies of the copies currently in the C:\Windows\SysWOW64\ folder, and then extract the attached files into SysWOW64. It will prompt you for permission to do so. Grant it, and give WitPAE a go.

If it crashes like usual, follow the WSUS Offline update procedure - when it's finally done updating, try WitPAE again.

Beyond that I have some registry entries to check, but I'll wait on the results before writing more procedures.



***** EDIT: Forgot two steps *****

Add these steps to the copying of the files for the SysWOW64 folder:

Once you download the .zip file containing the wmvcore.dll and qasf.dll files, make sure you 'unblock' the .zip file in its 'Properties' page (right-click the .zip file), as shown here:

Image


Once the files have been copied over, make sure to register the qasf.dll file to make sure Windows knows how to locate it. You can do it for wmvcore.dll as well.

Image
Attachments
SysWOW64_files.zip
(1.2 MiB) Downloaded 11 times
User avatar
Gandalf
Posts: 365
Joined: Wed Dec 15, 2010 7:20 pm
Location: Jefferson City, MO

RE: Crashes after 1 turn

Post by Gandalf »

I'm guessing here, but it sounds to me like a bad memory chip that was momentarily worked around when he installed more memory. Since the game works just fine in Win 7 using 12 GBytes memory (I'm using Win 7 Pro with 12 GBytes myself), I would do a switch/replace/test block of the first 12 GBytes mem chips with the new ones placed in the 12-16 GByte slot(s). In other words keep the total installed memory at approx. 12 GBytes and use the new 4 Gbytes of chips to replace blooks of the older memory blocks, then run WitPAE again as a test, until you obtain satisfactory results (i.e. no crashes over hours of runtime.)

I had a similar experience years ago... What happens is the program behaves somewhat like it has a memory leak when it hits the bad memory chip generating exception errors in whatever module was attempting to use that memory at that time.

Adding additional memory chips without removing the offending chip just moves the problem around since windows allocates memory to modules in blocks and not always contiguously.

Anyway, just my $.02.

edit1> His earlier posting that adding memory changed the successful runtime length before crashing is what leads me to my troubleshooting guess. In fact my immediate first thought was a memory leak, but if WitPAE had a memory leak, everyone would be complaining about it now. LOL

edit2> There is a DirectX 9.0c installer that WILL install DirectX 9.0c after later versions are already installed on your machine. Do a search for directx_Jun2010_redist.exe and download from whatever site you feel comfortable with. You can find it on Microsoft's site, but you really have to dig down thru the unfriendly support menus to find it. At least it worked for me following DirectX 11.0. Haven't had to try it with any later versions yet.

edit3> Also, (if your computer has a system memory diagnostic function you could use that as a quick and dirty test, but sometimes bad memory chips work just fine till stimulated/heated up in some fashion, so if you don't see it with a memory diagnostic program I wouldn't assume that you don't have a memory chip problem. Using WitPAE as a known issue would be the confirmation way of testing.

okay, I think I'm done editing... LOL
Member since January 2007 (as Gray_Lensman)

Wargaming since 1971 (1st game Avalon Hill's Stalingrad)

Computering since 1977 (TRS-80) (adhoc programming & game modding ever since)
User avatar
Bullwinkle58
Posts: 11297
Joined: Tue Feb 24, 2009 12:47 pm

RE: Crashes after 1 turn

Post by Bullwinkle58 »

Just wanted to say I'm learning a lot of troubleshooting reading your posts. Wow.

I'm at the stone knives and bearskins level compared to your skills.
The Moose
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

ORIGINAL: Bullwinkle58

Just wanted to say I'm learning a lot of troubleshooting reading your posts. Wow.

I'm at the stone knives and bearskins level compared to your skills.

I've learned a lot about WitPAE from reading the posts of many members here, yours included, so I'm glad I can attempt to return the favor. Consider this a 'technical AAR'. [:D]

I also want to encourage you, Gandalf, and anyone else reading to continue posting your ideas, in this and other technical threads. Both of you have shown sound analytical thought in your suggestions, and since we don't have full insight into the code, we have to be creative.

As to 'stone knives and bearskins', those are still alive and well in the 'advanced' analysis. To put it in WitPAE terms, we've added some additional technical tools - more listening posts and some early cryptoanalysis computers, but at the end of the day we've still got to pull a Joe Rochefort and swirl the pig intestines around a little to divine a reasonable guess of what is actually going on.

Since there is some interest in the process, here's a glimpse into what the process dump analysis looks like. Note that this will be a long image - not all of it is necessary, but I want to convey a sense of how much information must be sifted through to find the 'nuggets' of relevant information. There's a lot more data than this, but this will give you an idea...


Image

So the first bit is looking at the 'CONTEXT' section - it is there that the error is first reported and the applicable memory addresses are listed. The 'EXCEPTION_RECORD' below that breaks the error down a little more. My commentary is in red, and I added a clipping of what I saw when I looked up the memory address that could not be read. You can see how doing that confirms that qasf.dll was the module with the read error, and it occurred because qasf.dll had been unloaded from memory.

Down further I point out some 'pointer' errors in the 'vftable' - that's what is leading me to my secondary hypothesis that there is a possible issue with the C++ libraries. If the modules themselves are good, the the issue must be with the interaction of said modules, the behavior of which is partially governed by the libraries.
User avatar
Bullwinkle58
Posts: 11297
Joined: Tue Feb 24, 2009 12:47 pm

RE: Crashes after 1 turn

Post by Bullwinkle58 »

Thanks for the kind words.

Question on the gross level. You've isolated the cause in the dump process. It's a specific .dll. At least. Unknown how it happened. Would it be diagnostically relevant to have the OP install the game to a new, test folder and see if the corrupted .dll reoccurs? Something made that corruption/alteration happen. It's isolated to just AE apparently, since Media Player works otherwise. If it was a RAM glitch, it won't re-occur, probably. If it reproduces on a second install he's got something in his hardware--probably hardware--that so far as I know reading the Tech sub-forum for ten years has never happened before.

A second install, even with patching, is maybe thirty minutes.
The Moose
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

That's something I have on the list to try if the current items do not work. My thought was to have Evander install the beta, since it will install the beta executable into the Beta2 subdirectory of WitPAE without overwriting the original .exe. That would save him from having to reinstall the whole game. Except perhaps the .exe itself, the other game assets don't appear to be involved with this particular error.

I'm not focusing on the game as much, for the moment, because the wmvcore.dll and qasf.dll modules are part of the Windows operating system and are thus shared resources. The problem seems to be on the Windows side, but you have a good point that it is possible WitPAE is invoking wmvcore to read an already unloaded qasf.dll when it shouldn't.

That would mean that Evander's copy of WitPAE was corrupted in just the right way to cause that. I don't see it as a code issue in WitPAE, because as Gandalf said, we would be hearing from more players about the issue.

Also, I amended my copying procedure to include two important steps I omitted. I have a good feeling about the step to register qasf.dll - just because of the 'invalid_pointer' errors shown in the debug report. If the location of the module is improperly registered in Windows, it could be causing it to prematurely unload and/or for wmvcore not to be able to find it when needed.

User avatar
Bullwinkle58
Posts: 11297
Joined: Tue Feb 24, 2009 12:47 pm

RE: Crashes after 1 turn

Post by Bullwinkle58 »

You're being very systematic.

I hear you that the problem appears to be in Windows. It just seems strange that the game is the only call to Media Player where it seems corrupted. He can use Media Player vanilla OK.

Very strange.
The Moose
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

This whole problem is very strange.

That's why I've left the standard 'Civil War Surgery' (i.e. hack the whole limb off) behind and picked up the scalpel.

Perhaps Evander's computer is less T-34 and is more Panther/Tiger - it needs to be polished twice daily and read a bedtime story to run just right. [:D]

I think the issue is something along the lines of the Columbia disaster - you could fly the Shuttle a 1,000 more times without changes and the foam wouldn't hit the heat shield in such a way to cause a catastrophic failure like it did. Evander's computer has had one little registry tweak or minor error that is completely devastating to WitPAE but leaves everything else unscathed.
User avatar
BBfanboy
Posts: 20425
Joined: Wed Aug 04, 2010 5:36 pm
Location: Winnipeg, MB
Contact:

RE: Crashes after 1 turn

Post by BBfanboy »

ORIGINAL: Korvar

This whole problem is very strange.

That's why I've left the standard 'Civil War Surgery' (i.e. hack the whole limb off) behind and picked up the scalpel.

Perhaps Evander's computer is less T-34 and is more Panther/Tiger - it needs to be polished twice daily and read a bedtime story to run just right. [:D]

I think the issue is something along the lines of the Columbia disaster - you could fly the Shuttle a 1,000 more times without changes and the foam wouldn't hit the heat shield in such a way to cause a catastrophic failure like it did. Evander's computer has had one little registry tweak or minor error that is completely devastating to WitPAE but leaves everything else unscathed.
Has anyone asked him if he has a cat? [;)]
They can be stealthy and get themselves or their hair into all kinds of places they shouldn't! [:-]
No matter how bad a situation is, you can always make it worse. - Chris Hadfield : An Astronaut's Guide To Life On Earth
User avatar
witpqs
Posts: 26376
Joined: Mon Oct 04, 2004 7:48 pm
Location: Argleton

RE: Crashes after 1 turn

Post by witpqs »

ORIGINAL: Korvar

This whole problem is very strange.

That's why I've left the standard 'Civil War Surgery' (i.e. hack the whole limb off) behind and picked up the scalpel.

Perhaps Evander's computer is less T-34 and is more Panther/Tiger - it needs to be polished twice daily and read a bedtime story to run just right. [:D]

I think the issue is something along the lines of the Columbia disaster - you could fly the Shuttle a 1,000 more times without changes and the foam wouldn't hit the heat shield in such a way to cause a catastrophic failure like it did. Evander's computer has had one little registry tweak or minor error that is completely devastating to WitPAE but leaves everything else unscathed.
Part of me wonders if there is some malware on his PC that is affecting what is calling what or looking for what. I have not read the entire thread in detail - has that been ruled out?
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

I wouldn't say malware has been completely ruled out, but I haven't seen particular evidence of it, either.
User avatar
rustysi
Posts: 7472
Joined: Tue Feb 21, 2012 3:23 am
Location: LI, NY

RE: Crashes after 1 turn

Post by rustysi »

Any progress? Well it seems to me that you're not having any other problems with your computer. That being the case I'd say the problem is in AE. Not a bug, but something. At any rate I've got another SWAG.

Try reinstalling WitP-AE, if you haven't done so already. Do you have an SSD or a HD? Do you have a hard copy of AE? If you have the AE disk its easy to reinstall, if not and your program is registered with Matrix you should be able to re-download the software. I'm just not familiar with the procedure, so I'd check that before I'd start.

Now the reason I asked if you have an SSD or HD is simple. I don't know if its true, but I've heard an SSD doesn't fragment whereas a HD will. My SSD never showes more than 1% fragmented. The only reason I bring this up is that when you delete a program all the delete does is change the first character of the file names (or at least that's what it did in the past). Now it seemed to me that when I re-installed it somehow detected this an didn't truly do the install. Again don't really know, but for myself anyway I do a defrag just to get things to move around on the HD so I feel its truly reloaded. Not only that I often use the process to 'clean' things up if you will. You know getting rid of stuff I'm not using anyway, housekeeping. Anyway don't know if it'll help but it can't hurt.

Edit: Make sure you have the games' serial number as you will need it to reinstall.
It is seldom that liberty of any kind is lost all at once. Hume

In every party there is one member who by his all-too-devout pronouncement of the party principles provokes the others to apostasy. Nietzsche

Cave ab homine unius libri. Ltn Prvb
User avatar
Korvar
Posts: 813
Joined: Wed Sep 03, 2014 4:04 pm

RE: Crashes after 1 turn

Post by Korvar »

As far as I know Evander hasn't been able to try the latest round of procedures. He let me know via PM over the weekend that it might be a couple days before he can get to it. I told him not to worry, that they will still be here when he's ready.

As to fragmentation with regard to SSDs / HDDs - SSDs do need to be defragmented, but to a much lesser degree than HDDs do. SSDs of course remove the mechanical component (i.e. headers and platters) from the equation, which was part of the reason fragmentation occurred. So there is improvement there. Windows has also been getting better at how it writes files, yet there is some fragmentation that occurs even with SSDs. The SSD's memory controller has to keep track of these fragments and if left unchecked they could become unmanageable. Windows automatically defrags SSDs to keep it in check - but it is a much lighter version of defragmenting than what the term has traditionally meant.

You don't need to defrag SSDs beyond what Windows does. SSDs have a limit to how many read/write operations they can do before their memory sectors begin to fail, so it's not a good idea to add to the load and prematurely wear the sectors.
User avatar
wdolson
Posts: 7679
Joined: Tue Jun 27, 2006 9:56 pm
Location: Near Portland, OR

RE: Crashes after 1 turn

Post by wdolson »


Flash memory has write limits, but not on read. When the write limit is exceeded, the memory become read only. SSDs can also have other failures. I had one just vanish from my system. The I/O hardware failed. Fortunately I had a complete backup that wasn't terribly old.

A few years ago someone tested a number of SSDs to death and they all exceeded the manufacturer recommended lifetime writes.

My SSD drives are Samsungs which come with a monitor software to manage their life. Other than the mysterious failure under warranty, so far I haven't had a single sector flagged as weak.


Bill
WIS Development Team
Post Reply

Return to “Tech Support”