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

Cacodemon diffusion

Recommended Posts

I like how in some slaughter maps when there are a horde of cacodemons up on cliffs in the distance, they will hover over to you and some of them will descend at different heights creating a dangerous cloud of cacodemons swarming in on the player. The cacodemons are at different heights so they can fire over or under each other which makes them a little more dangerous than if they are on flat ground where you are only under fire from whoever is in front.

I have a map where I want to put cacodemons in large 256x256 square cages but I don't want them on the ground, I'd like for them to float around at different heights rather than hugging the floor. I know if there is a higher floor, a cacodemon will try to "climb" it and I know cacodemons descend lower depending on how close it is to its target. I tried putting a really thin pole of a floor raised to the ceiling in hopes some cacodemons will bump into it and "climb" it but the results weren't as good as I hoped. I also know that if they are on a floor and a linedef trigger lowers it, the cacodemon will lower with it. Is anyone able to think of a way to make the cacodemons behave as depicted in the picture below?

Share this post


Link to post

The pole idea sounds good to me. I think it didn't work well for you just because you didn't put the pole in the right place. Make two poles, make each of them at least 8 units thick, make them as high as the ceiling height minus 56 units, and place them into two diagonally opposite corners of the cage.

Share this post


Link to post

I have to agree with scifista here; granted there are many more people with more experience than me, but thinking outside of the box there's not much you can do for monsters in a cage operating off of a semi-random behavior trait, especially if the distance between the player and the monster isn't a particular, set amount (between x and x+a away from the cacos), that would also have to be fairly close anyway to force that behavior.

That all said, invisible/self-referencing sectors (floors/ceilings) would seem to be the only real option for forcing a particular setup like that with cacos. The problem here, though, is that the cacos behind the first row would still be useless, youd just be able to see them. Small pillars could help make it easier for the cacos to hit the player, but many would still wind up hitting the tiny pillars.

Here's a thought: take what scifista said a step further; move those pillars constantly up and down. Maybe even make them 1 pixel-wide and invisible. The constant movement would force the cacos to their desired height while allowing the ones behind to at least have a shot at getting a projectile past the first row.

Maybe for the timing of it, make them move "fast" and have their starting locations above the ceiling or below the floor, so they are only able to block shots for a miniscule percentage of the time.

Share this post


Link to post

I think only in Doom64 items and monsters can have a starting height z, as well as a starting sets of xy coords.

Share this post


Link to post

I'm not at my computer at home so I can't test to make sure this works, but I might try something like this:



The cacodemons can teleport in one at a time on top of the center pillar and descend down into the cage, and hopefully begin to vary in height as the player gets closer. I can make the walls above (marked in pink) untextured so the player can't see the above area, and I can also use a linedef action to lower the center pillar before the player enters the room, so its like it was never there. Only price is that the monsters will already be active before the player gets there. I suppose I could put one cacodemon on the floor set to deaf so you at least get one wakeup sound when the player enters.

Hopefully it works as intended.

Maes said:

I think only in Doom64 items and monsters can have a starting height z, as well as a starting sets of xy coords.


btw

there's a trick you can do that I'm using in a future map and works really well. You can place a cacodemon, pain elemental or lost soul (any flying monster) on a really tall floor with no lower textures, and, assuming the player will be below the height of the floor when the monster sees him, the monster will appear to be floating in midair at the time its awaken.

You can surround the floor with instantly lowering floor walkover actions to lower the platform before the player gets close enough to touch it, and its like it was never there. The only cost is a little platform stop sound.

If the player enters the area from above the monster, you'll need to use selfreferencing sectors to make the floor truly invisible.

Share this post


Link to post
40oz said:

The only cost is a little platform stop sound.


Attach that sector to a dummy sector miles away so the sound originates between the two sectors and is un-hearable from the player's location. Unless you're mapping for ZDoom, buuut then if you are you could just give the Cacodemons a Z-height.

Share this post


Link to post

Oh yeah that too, I forgot!

It's funny how hacky you gotta do things to achieve a really simple effect

Share this post


Link to post
40oz said:

Oh yeah that too, I forgot!

It's funny how hacky you gotta do things to achieve a really simple effect


It's funny how hacky doom modding is in general. I think that's in part why I still love it so many years on from when I started - you'll never know everything about this game, and even if you did, you're still able to learn new ways to use this knowledge. (read as: exploit the engine)

Share this post


Link to post

What if you put the Caco on some sort of self-referencing sector so that it is on a greater height, but the moment you enter the room, you trigger a "lower to lowest floor" linedef (so that the selfref sector doesn't prevent movement)?
Would that work?

Share this post


Link to post

in my experience if a cacodemon is touching the floor and the floor moves down, the cacodemon will move down with it, so the cacodemon needs to be able to get off the floor before moving it down.

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  
×