Hellfire critical error @ startup.
#1
Salutations Lurkers,

I'm having a very unusual problem with Hellfire and was hoping someone here could assist me in solving this problem, because I am quite frankly stumped. Thanks in advance for your time.

Here's the error message exactly as displayed on the screen:

Code:
This application has encountered a critical error:

Not enough storage is availible to process this command.

Program:    C:\Program Files\Diablo\Hellfire\hellfire.exe
File:        D:\diablo97\UISRC\ui\local.cpp
Line:        104


Press OK to terminate the application.
If you know exactly what causes this please skip all the following details and HELP! :w00t: Much appreciated. Otherwise let me paint the scenario for you...

This error occurs every time the game is started - I don't see the Sierra logo video, don't hear any sound, all I get is this error (and note that the CD-ROM drive on this system is E:, not D:, so it's not a CD issue with Diablo. Diablo runs just fine).

I've perused the readme files that come with the game and the manual and nothing sheds any light on the matter. I've searched the web and this forum for any similiar issues and turned up nothing. The system exceeds all of the requirements outlined for the game (and again I note that Diablo runs as smooth as silk). The system is:

Microsoft Windows XP Home Edition (5.1, Build 2600) service pack 2.
Processor: AMD Athlon, 1.3GHz
RAM: 496MB
Video memory: 16MB
Hard Disk: 51.5GB capacity, 31GB free.


After encountering this problem, I've installed and played Hellfire just fine on two other systems... but they're running XP Pro and I cannot recreate this error message with either of them. Is it just XP Home Edition messing this up or what? If Hellfire has a problem with Home Edition, why doesn't Diablo? Is it the screwy 496MB memory? (I have no idea why the system says there's only 496. It has two RAM slots on the motherboard, both of which have a 256 stick in them.) Maybe a combination of both?

I have tried EVERY bloody thing I can possibly think of within my mediocre technical knowledge to get this game running or at least shed some light on what the problem is... all to no avail. Here's everything I've tried, none of which had any effect:

*Reinstalling the game. Reinstalling the game to a different directory. Uinstalling the game, installing the game on another system and transferring the working install from the other system to this machine.

*Running different game versions: unpatched (1.00) Hellfire, patched (1.01) Hellfire, fixed (1.2something - thanks Lem!) Hellfire (thus confirming this problem isn't relevant to any specific version of the program)

*Running with compatability settings: every combination I could think of: Tried OS = 95, 98/ME, NT, 2000. Tried 256 colors, run in 640x480 resolution, disable visual themes (on all of the different versions listed above... can you tell I'm patient?)

*System stuff: Changing application priority via Task Manager. Increasing the Virtual Memory swapfile size. Freeing up more hard disk space even though there's already an absurd amount availible.

*Other programs: Closed anything that wasn't running on other systems where Hellfire did work.

*Out of desperation: Edited registry settings and patched one of Hellfire's .dll files to run the entire game off the hard disk (reading diabdat.mpq from the Diablo CD from the hard disk instead)



I am about to start pulling my hair out here. The only problem this XP Home system ever has is running newer games that are 3d accelerated - but that's because of it's old videocard, and neither Diablo nor Hellfire even require such a card... it can run some heavier 3d games just fine (think System Shock 2). I realize I can simply play Hellfire on another system, but I'm not ready to admit defeat to a technical problem so readily.

As mentioned earlier, I read through pages of threads in this forum to see if anyone had a similiar problem before starting this thread, and I didn't see any problems like it. If any one of you gives me the solution to this problem or helps me figure it out, in exchange for helping me preserve faith in my self-imagined technical prowess I will volunteer two things to the entire Lurker community that I surprisingly didn't see any mention of while browsing:


A.) How to fix Diablo's random "storm_invalid_player" crash on certain PCs when sending a chat message.
B.) How to configure an XP system's network adapters for IPX play across the internet utilizing a wonderful third-party program that is NOT Kali and does NOT cost you a thing. Yes, that's right, free LAN games across the internet, including Hellfire and Diablo, over a secure connection with a hassle-free application.


So... anyone willing to take a shot at this? I don't care if you're after the incentives listed above, <strike>my goodwill, or both</strike> (nevermind, I'm about out of that right now after trying to solve this for over a week :blink:). I just want this darn thing to work. Again, thanks in advance.
Reply
#2
A.) I'm pretty sure this is a maligerent user-made crash, not an error, but any solution would be wonderful. =)
B.) Hamachi, been there, done that. =D

(Removed advice in case of other reference. =o)
Reply
#3
Most likely you've been playing a Diablo mod which uses a modified PATCH_RT.MPQ, like Dr.Zeds mod. The easiest solution is putting the original PATCH_RT.MPQ in your hellfire folder.

It's explained in more detail in this thread
[Image: Zamal.gif]
Reply
#4
Quote:Most likely you've been playing a Diablo mod which uses a modified PATCH_RT.MPQ, like Dr.Zeds mod. The easiest solution is putting the original PATCH_RT.MPQ in your hellfire folder.

It's explained in more detail in this thread

Irony of all ironies... thank you very much Zamal. I wasn't using any kind of mods for Diablo at all that I got elsewhere, lo, the modified patch_rt.mpq file was my own doing over a year ago when I tired of Diablo's original soundtrack and dumped all the files out of the patch_rt.mpq file into a folder, .wav'ed some new music that I felt enriched the game's atmosphere, and recompiled the file. No problems with Diablo, no problems connecting to Battle.net - in theory the only thing that should have been modified was the music, and seeing as how it didn't cause any problems anywhere, I left it that way.

The music has been muted in the game for some time now, though, as while initially being too lazy to want to tab out and change music every time I entered a different area of the game so it felt immersive, I realize that this took significantly less effort than creating a new patch_rt.mpq with music replacements every time I got bored with the one I had.

So, this error was self-inflicted because of a file I had completely forgotten I had ever touched for a long time now, and came back to haunt me when I brushed the dust off of Hellfire. :blush:I really need to learn pattern recognition and realize this kind of thing happens to me so much as to predict this kind of silliness... and it is kind of silly, isn't it? Why would Hellfire access anything in Diablo's patch file?

After removing that it runs fine. Thanks a million, I never would have remembered that unless you specifically mentioned patch_rt.mpq! Now, to keep my word and get to sleep.


A.) How to fix Diablo's random "storm_invalid_player" crash on certain PCs when sending a chat message.

A couple of my friends and I experienced this random crash (Alamara: no, this has nothing to do with anyone using crash 'hacks' or mods) that occurs in any type of multiplayer game when sending a message. As it turns out this seems to be a crash unique to computers equipped with multiple processors, making it rather uncommon (websearches trying to reveal the cause and cure for this crash prior to investigation turned up nothing also).

It may only be unique to Windows XP, but if you're experiencing this "storm_invalid_player" crash message occasionally when you hit that Enter key to send your message, here's what I found fixes it.

With Diablo running, press CTRL+ALT+DEL to open your Task Manager, and right-click on Diablo in the applications list and select "Go To Process". It'll switch to the Processes list and highlight Diablo.exe for you, right-click on that and select "Set Affinity..." and in the following dialogue box, uncheck all of the CPUs but one. Click OK, close Task Manager and you're done. Now D1 is running on a single processor and the chat crash should be history - but unfortunately, your system doesn't remember your affinity selections, so each time you start Diablo you must follow this procedure again to prevent it. Hope that helps someone.


B.) How to configure an XP system's network adapters for IPX play across the internet utilizing a wonderful third-party program that is NOT Kali and does NOT cost you a thing. Yes, that's right, free LAN games across the internet, including Hellfire and Diablo, over a secure connection with a hassle-free application.

Alamara, okay... didn't expect nobody at all here would know about Hamachi, but I did see threads asking how to setup LAN games of Diablo and I'm sure some of this knowledge could be applied to it. On top of that I only ever saw Kali mentioned, so for anyone who didn't know... there is a wonderful little program called Hamachi that creates a virtual network between your computer and anyone else's, just like their computer was next to yours - save the physical distance, of course.

You can get Hamachi here: http://www.hamachi.cc/

As for configuring your network adapters for Hamachi in XP so you can use IPX with it, pretty simple. Just make sure you have "NWLink IPX/SPX/Netbios Compatible Transport Protocol" installed - note that highlighting this and clicking Properties produces a window that has three settings: Internal network number, and Frame type + Network number. I got IPX working over Hamachi by setting the Frame type to Ethernet 8082.2 (as opposed to Auto Detect) and assigning a unique Network number (00000001, 00000002, etc.) to each connection.

Poof... should work, or at least get you started. Okay, sorry that's probably not the most thorough or professional little guide, but I hope it helps someone. Been a long day, my eyes are bloodshot, and I'm in a hurry to get some sleep now that I've typed this up.


Thanks again Zamal... gotta love how those things that should be so blatantly obvious to the involved person sometimes aren't, then someone else comes in and the first thing they suggest hits the mark. I was actually thinking about trying to append a graphics patch to that patch_rt.mpq file for regular Diablo to change some of the item graphics like Lem did with Hellfire Fixed, but now that I know Hellfire is sensitive to that file for some reason I'll leave it alone.

Take care everyone!
Reply
#5
Thanks for the tip on the storm_invalid_player crash. I have experienced that from time to time on battlenet and have even crashed to desktop in Ironman games because of it. Like you, I was unsuccessful in googling any helpful information on this crash. I do not know how you figured out the solution but I am glad you did and thanks for posting it!
Reply
#6
My friends and I use it to play StarCraft with each other. There's like 25-30 people in my high school that play SC occasionally, so it's easier to use Hamachi to keep track of people than the limited friend's list, mine being full anyway. I tried on another forum to get some legit players interested in using it for Diablo, but regardless of how simple Hamachi is (especially compared to Kali), the interest just isn't there.

In any case, I'm almost sure that I've recieved that error myself, and yet I only run a single processor. Like the start_new_lvl and other crashes that I know are hacks, I'd just attributed that one to a player with a program being an idiot.

I'm glad you found a solution, regardless, and thanks for your help with the configuration.
Reply
#7
The original error message comes from storm.dll!SMemAlloc when an allocation request cannot be satisfied. Most likely, Hellfire was misreading your modified MPQ and trying to request an excessively large chunk of memory. The D:\ was the path to the source file which called SMemAlloc. That is, whoever build Hellfire had the source to it on their D: drive.:)

Interesting that Diablo is not SMP/SMT safe, but not really surprising given how rare SMP was when Diablo came out. Note that affinity is inherited, so you could change the affinity of some other process and then always use that process to create Diablo. Similarly, one could create a launcher that always launches Diablo with the correct affinity. Affinity is process metadata, and so is not checked by the current version checking procedure (which does tend to break any hacks which are applied pre-connect). Changing the affinity for Diablo makes it very unlikely that the crash will occur, but does not fix the underlying problem that caused it. An inopportune context switch could still cause Diablo to crash. The fact that you haven't seen any such crash says that you most likely never will. Just remember that it is still theoretically possible.:)
Reply
#8
I've spent some time getting Hellfire to work with Hamachi, and wrote a setup guide. You can check out the thread here

One tip: Make sure all parties are using the same version of Hamachi (preferrably the latest version).
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)