Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • 0
Vermil

Linetype 19 quirk?

Question

Are there any quirks with vanilla Doom's linetype 19; 'W1 Floor lower to highest floor', that cause it to raise to the next highest floor instead of lower to the next lowest?

Share this post


Link to post

10 answers to this question

Recommended Posts

  • 3

If you have a line type that is "lower to next" or "raise to next" and the game cannot find an adjacent lower or higher sector, respectively, it will instead jump instantly to the next-lowest or highest floor. This can be exploited in many interesting ways!

Share this post


Link to post
  • 0

W1 floor raise to lowest ceiling which can instant lower to nearby lowered ceiling? Both of this actions used for fake 3D bridges (WR).

Share this post


Link to post
  • 0
2 hours ago, Vermil said:

Are there any quirks with vanilla Doom's linetype 19; 'W1 Floor lower to highest floor', that cause it to raise to the next highest floor instead of lower to the next lowest?

There are two mechanisms to keep in mind:

  1. When looking for the highest or lowest floor or ceiling from a neighboring sector, it doesn't necessarily need them to be higher or lower than the moving sector's floor or ceiling.
  2. Sectors move at a constant speed, and if they overshoot their target, they instantly move to it instead. The logic is this: suppose you want to lower by 10 units and you lower at a speed of 8 units per tic. First tic you lower the full eight, now you still have two units to lower, second tic you again lower by 8, you've overshot your destination, so you instantly move up 6 units and it'll look like you've only lowered 2 units.

When you combine these two effects, you get that if a floor is "lowering" to a higher height than it already is, then it'll consider to have already overshot it. So the movement is instant, no matter how far it has to cover.

Share this post


Link to post
  • 0

I've probably just made a mapping mistake, but I can't understand why the sector in the attached example wad instantly raises instead of lowers to the height of the control sector outside the map?

test.zip

Share this post


Link to post
  • 0
1 hour ago, Vermil said:

I've probably just made a mapping mistake, but I can't understand why the sector in the attached example wad instantly raises instead of lowers to the height of the control sector outside the map?

test.zip

that's because you try to lower the floor to the highest adjacent floor, and not to the next lower floor

 

EDIT: "W1 lower floor to nearest floor" might work for you

Share this post


Link to post
  • 0
4 minutes ago, Vermil said:

I believe "w1 lower to nearest floor' is a boom linetype?

 

EDIT: Actually it might be, but your map is boom format anyway

Share this post


Link to post
  • 0

If the target is the highest adjacent whatever, (floor in this case) then make sure there are no adjacent floors (sectors sharing a linedef) that are higher than the control sector (as it sounds like you're using dummy sectors in this setup). If there are not, then the engine will actually lower the floor to the highest adjacent floor below it like you want. If you still need help when I get home I'll check out your map and help as I can.

Share this post


Link to post
  • 0

Your example wad has a floor that is like a castle turret surrounded by parapets moving to its highest adjacent floor, which are the parapets.

 

WFujfhQ.png

 

This floor will always raise up to the position of the parapets using this action, because no matter how many other, lower floors you add adjacent to this sector, or any other sector it's joined to, these parapets will always be the "highest adjacent floor." This is also one of the primary, or most common, uses of this linedef action in modern maps. It's the standard 'instapop encounter' action.

 

Assuming you're in vanilla format, your options here are somewhat limited. For the benefit of others reading this: you want to lower this highlighted floor to 32x above the lowest floor here. In vanilla you really only have 2 ways of doing this with this architecture and without settling for an insta-lower: floor lower to lowest, (with or without changing texture) and floor lower to highest (or 8 above it), neither seem to be helpful, however either set can be used (though for this I would forget about the 'change texture' one unless you specifically need to do that too, as well as the '8 above' one) to make this happen, with some edits to the architecture.

 

The simplest would be to draw a thin sector around the entire thing, and set the floor's height of that thin sector to be where you want the floor to lower to, then use the lower to lowest action. Also make sure to hide these new lines on the automap :)

 

REWlt9A.png

 

The more complicated, but less noticeable in-game way would suggest using thin sectors between the parapets and highlighted floor and lowering them to the value you want, then using the lower to highest action.

 

WiVZCwP.png

 

Hope this helps :)

 

One other thing: don't think that the direction of movement specified by the action means that a floor/ceiling cannot be moved in the opposing direction, or that it ignores adjacent sectors with values out of scope of its 'intended' movement. If something is marked as a lowering action, it can still raise stuff, but it will do so instantly instead of gradually as it would handle the lowering, and vice versa with raising actions. Best way to view it is that each floor/ceiling action can be used for gradual movement in one direction or instant movement in the other.

Edited by Fonze

Share this post


Link to post
  • 0

Thank you for the information and suggestions (I will try them and see how noticeable they are in game, worst comes to the worst, I will have to use the Boom linetype and write an XG definition for Dday that mimics said Boom linetype).

 

I would have thought 'lower' would have meant it always lowered to the next lowest floor. The quirks of Doom.

 

 

Share this post


Link to post

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×