Jump to content

The All-Ghosts Glitch


Recommended Posts

So there I was, minding my own business, working my way through map 16 of Icarus, when I somehow triggered the all-ghosts glitch today.  Only the second time in all my years of playing Doom that this has ever happened to me.  I messed around with it for a few minutes until I got unnerved by trying to navigate through the center of the level and having demons randomly appear through walls to chomp my ass and I had to shut it down.  I didn't check to see if I could save and reload this phenomenon  - I'm pretty sure I tried the first time it happened and it just reverted back to normal on reloading, albeit with monsters now stuck in the wall.  

I'm now fascinated by the idea that, if the circumstances are right, you can cause an overflow that makes the game throw up its hands and be like "okay, guys, do what you want" and have all the baddies ignore the laws of physics and start walking through the walls and each other.  I understand it gets triggered by firing a hitscan weapon across more than 128 'things' (linedefs, items, enemy corpses) which can confuse the game engine, but I don't know why that if this is the case I haven't seen this more often.  I mean, I've played a shitload of slaughtermaps over the years, I'd assume they'd be most prone to this bug.

But whatever.  I guess I need to know what are the exact circumstances needed to trigger this glitch, and a very basic explanation of what's going on engine-wise (I'm talking more basic than this - http://games.moria.org.uk/doom/research/ghosts), and of course I wanna hear stories from anyone who has also encountered this.  

Rip n tear

Peace

Share this post


Link to post
27 minutes ago, Maximum Matt said:

I guess I need to know what are the exact circumstances needed to trigger this glitch

Basically you need to overflow the number of interceptions a hitscan makes. The array used to store intercepts is of a limited size, but there's no bounds checking so it starts overwriting adjacent memory if the count becomes too large, the result usually ends up destroying the blockmap (if I've understood it correctly) so nothing can collide with anything else anymore, though the results are unstable and the engine will crash at a hair trigger at this point (if it hasn't already). For example, stack 144 dead imps on one spot and fire a shotgun past them:

 

Edited by Edward850

Share this post


Link to post

Very cool, thanks!

14 hours ago, xdarkmasterx said:

It happens about once per megawad to me, in vanilla. super annoying in long legels -_-

It's only ever happened to me twice in my life, can't believe I haven't seen it more often

Share this post


Link to post

The "all-ghosts" bug has never happened to me, but ICARUS is the wad where I first encountered ghost monsters (a long long time ago) and it did confuse the hell out of me, eventually I noticed the pictures on the wall which tell you what to do.

Share this post


Link to post

I recall getting this to happen, I think for the first time I can consciously remember, when I was recording a new Let's Play of the game in 2013. I was just like "uuuuh wtf", and I've only had it happen maybe one more time since then.

 

 

Share this post


Link to post
17 hours ago, andrewj said:

The "all-ghosts" bug has never happened to me, but ICARUS is the wad where I first encountered ghost monsters (a long long time ago) and it did confuse the hell out of me, eventually I noticed the pictures on the wall which tell you what to do.

Yes, I read about this level and can't wait for it - and of course this once again begs the question: how did the designer(s) of the arch-vile not notice this glitch when D2 was being made? Did it really never occur to them that a crushed corpse could be resurrected, or that they never witnessed that happening during playtesting? 

Share this post


Link to post
3 hours ago, Maximum Matt said:

how did the designer(s) of the arch-vile not notice this glitch when D2 was being made?

Programmers cannot foresee every potential issue that could arise with some new code, in particular programmers working on a deadline like in the games industry.  As the saying goes "all code has bugs", and in my experience that is very true.  I'm sure if the issue arose during their testing, it would have been fixed.

Share this post


Link to post
22 hours ago, andrewj said:

Programmers cannot foresee every potential issue that could arise with some new code, in particular programmers working on a deadline like in the games industry.  As the saying goes "all code has bugs", and in my experience that is very true.  I'm sure if the issue arose during their testing, it would have been fixed.

More than that - it actually came about as a result of attempting to fix another bug entirely. They fixed THAT bug, but in the process, created the conditions that eventually would allow ghost monsters to fix once something became able to actually return monsters from the dead.

 

In something that should surprise no programmer whatsoever, fixing one problem literally created another. :P

 

Basically ghost monsters wouldn't exist if a Thing's height and radius properties and MF_SOLID were restored upon resurrection. But since they're not, they retain the height and radius of the pile of gibs (0) and having no MF_SOLID flag, since that's what they got turned into.

Edited by Dark Pulse

Share this post


Link to post

Currently Eternity doesn't support the all-ghosts bug, and I don't even know how to emulate it cleanly. The code from Chocolate-Doom looks exceedingly complex and dependent on the vanilla world structures (which got enhanced by Eternity). I'd consider it no big loss: most all-ghosts events cause the level to be unwinnable.

Share this post


Link to post
  • 6 months later...

Basically an extreme version of the bug using NUTS.wad through Crispy Doom. I'm not sure if the implementation of this glitch is old news, but I don't know if it's been experienced to this degree and it is amusing to see.

 

Share this post


Link to post
On 11/29/2020 at 6:59 AM, therealdrgray said:

Basically an extreme version of the bug using NUTS.wad through Crispy Doom. 

HO.  LEE.  SHIT.

That is one of the most awesome Doom-related things I've ever seen.  I'm sure your computer hates you for putting it through that.  It's probably got stretch-marks now

On 11/29/2020 at 10:28 AM, David Asaad said:

I am the Ghost whisperer!!

13 times?!  Some people have all the luck, I've only ever experienced it twice.  

Also, what version of Stronghold is that, with the green marble area at 1:44?  That ain't in the original version!

Share this post


Link to post
  • 2 years later...

Pardon me while I blow the dust off this old topic, folks, but there's been a new development regarding this glitch and our very own ZeroMaster utilising it to create a new speedrun record. :^)

 

 

Share this post


Link to post
  • 4 weeks later...

if melee attacks (fist , chainsaw works? ) that it meant to be the icon of sin can be passed quickier, by voiding directly to romero head . And any level that requires punch button to exit!!! incredible find out, i experienced that glitch in 1996 in my childhood!!!

 

Did Melee from doomguy works?

Share this post


Link to post
7 hours ago, WhiteMagicRaven said:

if melee attacks (fist , chainsaw works? ) that it meant to be the icon of sin can be passed quickier, by voiding directly to romero head . And any level that requires punch button to exit!!! incredible find out, i experienced that glitch in 1996 in my childhood!!!

 

Did Melee from doomguy works?

 

No, player melee attacks are hitscan (like guns and bullets), but they do not work on ghosts. Monster melee is only a distance check, so it works. That is why a Demon can bite you from far above or below, but you cannot punch it/saw it.

Share this post


Link to post

You could still kill the Romero head with splash damage from rockets, so it's still possible to break the record if you can trigger the glitch

Share this post


Link to post
  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...