• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

what can prevent warcraft 3 from starting

Status
Not open for further replies.
Level 21
Joined
Mar 2, 2010
Messages
3,069
i have a problem with warcraft 3 and battle realms that prevents them from starting after the system have been running for a while. as they appear to be using the same engine it makes sense but what in windows can cause that engine to stop working. they dont stop running when they are started but if they are closed i cant get them working again after the system have been running for a while.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,259
i have a problem with warcraft 3 and battle realms that prevents them from starting after the system have been running for a while. as they appear to be using the same engine it makes sense but what in windows can cause that engine to stop working.
I do not think they use the same engine. WC3 uses a custom WoW style engine that was turned RTS at the last stages of development. Battle Realms was not only many years before WC3 but also by a totally different company.

they dont stop running when they are started but if they are closed i cant get them working again after the system have been running for a while.
Sounds like a process collision. When you exit them or something that uses a dependency they might not start due to the double start prevention methods they use. Open task manager and show all processes for all users. Make sure no dependant processes for those games still run.

This is most commonly the case for SC2 and D3 when the agent.exe does not shut down after the game is closed. It will keep running and prevent the launcher from starting.
 
Level 21
Joined
Mar 2, 2010
Messages
3,069
battle realms was released while warcraft 3 was still in production. warcraft 3 do shut down all processes correctly but after running windows for a while it wont start.(independent of wether warcraft 3 was run or not, the same is the case with battle realms.) it must be something running in windows but the big question is what.
 
Level 21
Joined
Mar 2, 2010
Messages
3,069
it happened again and this time i hadnt run anything warcraft 3 related and i ran no games before i tried starting warcraft 3. it is unlikely that the browser cause i because i can usually start it after the browser have started. this issue makes very little sense to me so i really need help. a fresh installation didnt help.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,259
Something is preventing the game from starting up. I quite literally mean that. The game process when initializing obviously creates a lot of OS structures varying from graphic resources, file resources, sound resources, input resources etc. It is possible that a bug in the initialization code causes it to hang/close while trying to setup/lock/use one such resource causing the process to never past initialization.

What resource is causing this? Cannot say. You will probably need to ask Blizzard as they have the source code and can debug it. You could also try manually debugging the assembly using a standard debugger.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,259
since it only happens in vista it is likely caused by something vista specific so that narrows things down a bit. it affects the editor as well as the game. lets try to figure out a solution through this topic.
Sounds related to creating a d3d context. Both WE and WC3 need to create D3D objects in order to generate the graphics you see. If for some reason this was to fail it would appear the program never started or it would start briefly and terminate. One would usually expect some form of error but maybe the reason why it fails is such that no error is created.

Since I cannot recreate this as I neither have Windows Vista nor did it give such a problem when I did I cannot really help you. Try debugging the process and seeing what instruction calls crash it.
 
Level 21
Joined
Mar 2, 2010
Messages
3,069
you could be on to something but since i am running dual versions of direct x i dont know how to diagnose direct x 9. since direct 3d is powered by direct x there could possibly be something happening to that. any idea how i can open dxdiag for direct x 9? any idea how i can run warcraft 3 in opengl if the problem is direct 3d?
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,259
you could be on to something but since i am running dual versions of direct x i dont know how to diagnose direct x 9. since direct 3d is powered by direct x there could possibly be something happening to that. any idea how i can open dxdiag for direct x 9? any idea how i can run warcraft 3 in opengl if the problem is direct 3d?
I am sorry but no one can help you if you do silly things with your OS. Vista is only designed to run one version of DirectX (11? I am not sure if that was backported but I do know it will be at least 10), if you use a kernel level modification to run 2 it is entirely your problem and you knew the risks when performing such a modification.

Usually backwards compatibility for older D3D software is provided by D3D 9.0L (L for Legacy), like it is done in Windows 7 and 8 as well. This provides the D3D 8.0 which WC3 needs to run and is how my Windows 7 machine can run WC3 and how when I used Vista I could run WC3.

You should only ever need 1 DirectX version, I do not have any idea why you modded your Vista to have 2 since the latest should be backwards compatible with older versions anyway. No wonder you are having problems as it probably tries to load incompatible components from both versions.

any idea how i can run warcraft 3 in opengl if the problem is direct 3d?
Using the well known command line flag... -opengl
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,259
i dont use any mods, i installed direct x 9 because older games require it. windows vista can run both direct x 9 and 10(or 11) at the same time natively.
No it cannot. It can only run DirectX 10 and higher natively. These include full backwards compatibility with versions before 10 specifically to address old programs. Out of that it should be noted that there are 3 versions of Direct 3D supported. From wiki these are...

Direct3D 9: emulates Direct3D 9 behavior as it was on Windows XP. Details and advantages of Vista's Windows Display Driver Model are hidden from the application if WDDM drivers are installed. This is the only API available if there are only XP graphic drivers (XDDM) installed, after an upgrade to Vista for example.
Direct3D 9Ex (known internally during Windows Vista development as 9.0L or 9.L): allows full access to the new capabilities of WDDM (if WDDM drivers are installed) while maintaining compatibility for existing Direct3D applications. The Windows Aero user interface relies on D3D 9Ex.
Direct3D 10: Designed around the new driver model in Windows Vista and featuring a number of improvements to rendering capabilities and flexibility, including Shader Model 4.
When you have proper Vista compatibile drivers installed there will be 2 main Direct3D parts.
Direct3D 9Ex (Direct3D 9L) which provides legacy support for all DirectX version prior (before) DirectX 10. Used with legacy hardware.
Direct3D 10 (now some version of Direct3D 11) for modern hardware.

There was an incremental update for Direct3D 9 after Vista was released so the updater will also update 9Ex with new files to allow some old (were new back then) games to run.

There is also a chance that not all components of legacy DirectX versions were included, probably because they were intended to be installed on a required basis. To fix this install the SDK version which includes absolutely every DirectX file, including debug only components. Many emulators need this to work as they are in the development phase or do not have proper installation processes.

Under no circumstance should you be touching any installer for DirectX next to those provided by windows update as part of service packs or updates. All such installers were aimed at versions of windows prior to Vista and so might not be compatible and even damage the operating system installation. Especially those found on legacy game discs. Updaters which include missing components or incremental DirectX updates can be touched but those should be downloaded directly from Microsoft.

i cant however diagnose direct x 9 by running dxdiag so is there a way to access direct x 9 through that?
That is because you are using a newer version of DirectX. There can only ever be one version of DirectX installed at a time and that is mostly fully backwards compatible with previous versions (updates add content only).
 
Level 15
Joined
Mar 9, 2008
Messages
2,174
because direct x 10(and 11) isnt backwards compatible and as a result i installed direct x 9 for backwards compatibility. that is a fact.
No. All directX versions are backwards compattible, I'm running WC3 with directX 11 without a single hickup. Besides, WC3 requires 8.1, not 9.0, so even if you did manage to install two paralel versions by some bizzare means, it would cause some conflicts for sure and only make things worse.
 
Level 21
Joined
Mar 2, 2010
Messages
3,069
microsoft didnt add bacwards compatibility to direct x 10 and nothing is going to change that. as a workaround they made modern systems able to run dual versions of direct x. i suggest that you discuss this with microsoft instead of me. direct x 9 is backwards compatible with older versions of direct x however. (with the exception of requiem avenging angel which only supports 1 version of direct x.) the problem with warcraft 3 however is that it wont go from the first executable to the second executable after the system have been running for a while. i tried open gl but that didnt help. please help me fix that issue and please drop the argument.
 
Level 15
Joined
Mar 9, 2008
Messages
2,174
Reinstall the OS and install directx using the web installer and dont try to install multiple versions of it.

Considering how many PCs you said to have, I'd expect you to do atleast some troubleshooting to try to pinpoint the problem, instead of saying "plz fix it".
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,259
microsoft didnt add bacwards compatibility to direct x 10
They did to a large extent.

as a workaround they made modern systems able to run dual versions of direct x
No they did not. Since that would make them vulnerable to security vulnerabilities in the old versions of DirectX.

i suggest that you discuss this with microsoft instead of me.
Well you could post the link to where they say that you can dual install to prove me wrong.

DirectX before 10 contained a lot of components such as DirectSound, DirectInput etc which were all replaced in 10. DirectSound was replaced with some sound frame work. DirectInput uses a port of the same input drivers the Xbox360 used (and probably the Xbox One). Direct3D 9 was superseded with Direct3D 10 which uses an entirely different interface to improve performance (the old interface scheme was fundamentally flawed).

However so that old stuff works they did provide the libraries that are linked to for the legacy DirectX versions. In Direct 3D's case this is Direct3D Ex (or Direct3D L as it was known early on). I am guessing in the case of the input and sound systems they are simple adapters to the new standard, but in the case of Direct3D they need a separate library as the interfaces are completely incompatible.
 
Status
Not open for further replies.
Top