Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.
I jumped into a pit trap that had opened when I blew open a door in the Deep Dungeon (beyond level 35 or so) and the game froze for a bit (like when you do something stupid and die) and I got a message along the lines that I had killed the Tyrant, adolations of the populous, did I want to see my belongings, etc...and the game was over, although I had never actually SEEN any Tyrant character or did battle of any sort. I did not get a screenshot of this, and I am kind vague on the message, becuase I thought it was just another dumb death and had hit enter before it dawned on me that the message was different.
Is this expected behaviour? I am still not sure what should be considered a bug and what is just not implemented yet.
I've seen this before, too.
The code that prints this text basically says "If the game is over and the hero still has hit points, you win."
It looks like this can only happen if Game.over is set to True with the hero still having hit points left, but I don't really see how this could happen, especially by just going down some stairs. Combat.die() calls the OnDeath handler BEFORE setting the HPS to 0, so maybe that has something to do with it. It could be that something faster than you is killing you with a single blow, before the map has a chance to paint. However, it looks like the only call to Combat.die() is from Thing.die(), and the only calls to that that should affect the Hero is from Damage.inflict(), which checks HPS, or Wish.makeSpecialWish(), if you wish for death.
It doesn't make much sense to me. I suspect that the Lib is getting corrupted, and somehow the hero's OnDeath handler is getting called incorrectly. Did you recently load a savegame? I've had some kind of corruption happen there, when I had to exit the game completely and reload the same savegame.
You're spot on - it shouldn't be possible for this to happen in a normal game, so it's definitely a bug.
It might be due to the hero somehow getting not arriving at the destination map due to a proral bug if it happens on stairs.
More generally, we should probably fix this by having a more sophisticated system for game ending - this would allow multiple alternative "victory" endings for example.
I've only ever seen it on a stair well or "cave".
You know, it could somehow be related to a strange load bug I've noticed. When you load a game, things seem to be in a strange state until you rest once. The side map repaints, but the main map doesn't.
That may have even been when I've seen this bug. I might have saved on a stairwell, loaded the game, then gone down the stairwell. When I went down the stairwell, the only thing that happened was my character disappeared. I hit space bar and got the "You Won" message.
I'll try to repro this when I get a chance.
On v333 I fell into a pit and the game just froze. There is definitely a rare bug, being triggered by going to a new floor
In answer to the question about recently loading a saved game, yes, I think I had reloaded a saved game not too many moves before this happened (and I reloaded after this happened and the game ran fine (but I didn't get the map with the pit trap again)). And this was not a going down a set of stairs or entering a cave situation, but definately a pit trap that I voluntarily entered, if that helps any.
btw... great game. I used to be a "nethack" junkie, and this game has a lot of the appeal I found in nh....
OK, I think I've figured out what is happening. Fix in the works.
I had this few times. But I also defeated The Tyrant with 1 magic misile (I was level 40 argonian wizard) in normal mode....