Ironically enough I was deliberately attempting to cause that error yesterday while coding. It's caused when the game loads in a ship which has had its hitpoints set to 0 by use of the special hitpoints code. There may be other ways to cause it too. Since I'm interested in seeing what is the cause I'll see if I can get it to happen myself.
EDIT : The ship causing the problem is actually the Gold 1 Asteroid. For some reason the mission is reading it in as having 0 hitpoints although I have no idea why it would do that. I'll look in to this some more later today.
EDIT 2 : Cracked it. Gold wing have been set up to use special hitpoints at some point. But there are no SEXP variables defined in the mission. I suspect that who ever made the mission assigned special hitpoints and then decide against them. Unfortunately the mission file is still looking for the SEXP variable to get the special hitpoints for the asteroid. Simply deleting this line
+Special Hitpoint index: 98
from each of the asteroids in gold wing should cure the problem but I haven't tried it yet.
I've got a bug flagged in the special hitpoints code as it is. I'll put a pointer to this thread in Mantis and take a look at both of them at the same time. (Speaking of Mantis are you still getting
this bug IP?)
@Dwin You can only get this error running the debug build (Asserts will only ever occur in the debug builds. They're part of the error checking code that is disabled in the standard release builds). Try running using the build that has _r in its name rather than _d as your current build does.