Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Memfis

What causes cacodemons to get stuck on ceilings?

Recommended Posts

Sometimes cacodemons are seemingly unable to approach you due to some ceilings, so they sorta get stuck and just keep jiggling in the same place, it looks really bad. What causes this exactly? Can I reliably avoid it in my levels? Sorry I don't have an example demo at the moment.

Share this post


Link to post

I think it happens when some part of the Cacodemon's bottom (maybe it needs to be another part than the one perfectly below its center point?) touches some sector's floor while the Cacodemon tries to descend to fit under another sector's ceiling. So, make all floors either far-enough away from ceilings or low-enough below ceilings. Sectors which are too low for Cacos to fit under should be OK, as well as sectors which are blocked off via impassable or monster-blocking linedefs.

Share this post


Link to post

If their target is at the same z level as they are and close enough to them, and there's a ceiling obstacle in the way.. they get indecisive about staying at target's z level or going below it to get around the obstacle.

Share this post


Link to post

^ I've just made a quick test and it didn't support your theory, it supported my one, though.

EDIT: I think it's clear now. A flying monster, whose outer edge touches a floor or is very slightly above it, tries to make a step onto a new position. On that new position, the monster collides with a lowered ceiling with enough space below it, but no longer collides with the floor it originally touched. This makes the monster think that it can and should descend, and so it aborts the step and descends. But, since the monster didn't actually do the step, it remains on the position where it touches the floor. So it actually briefly descends below the floor's level - however, this is almost instantly detected (either in the next tic or during the monster's next step attempt, not sure which), and the monster's vertical position is reset back above the floor's level. The monster will remain on the same spot and repeat this potentially infinitely, at least as long as the monster keeps trying to go the way where the lowered ceiling is - which is as long as the monster's target is generally in that direction.

Share this post


Link to post

I've never seen this before, and I've even made maps where cacodemons are purposely on the ceiling so they can float down as a surprise (a bit tricky to do in a vanilla/no limit map).

Share this post


Link to post

This sounds very familiar and I feel like I've seen this happen on one of the PS1 Doom games recently.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  
×