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

[Boom Level Editing] Faux-3D door in Boom

Recommended Posts

So after discussing the idea with rdwpa and scifista42 in the editing questions thread, and subsequently using one of these in a map I'm working on...



...I figured it would be cool to write-up a little tutorial on how to do it!

In order to do this, you need to be mapping in Boom format, as this method relies on using "Linedef Action 242: Create Fake Ceiling and Floor".

The main limitation of this trick is that it's "Faux-3D", flying enemies or players will not be able to pass over the doorway at all. It functions like a solid wall against line-of-sight, bullets, and projectiles, both enemy and friendly.

All images are hyper-linked so you can zoom in for a closer look!


So, to begin with, we have a basic courtyard area, with a nice wall separating the two main areas. There's a building in the second area, and to pass into that area there's a gate in the middle of the wall.



Now, instead of sectioning off the areas with a gate made from a lowering floor, we'll use a door instead.




That's... not quite right. Not yet at least. The door works at this point, but having a door disappear into the sky is obviously undesirable. Also, we don't want to obscure the building behind it.

So, we'll lower the sky down around the door to try and hide the part of it we don't want to see.




Well, that kind of puts us closer to our goal. The sky is now obscuring the building behind, which is no good.

This is where we bring in our Linedef Action. First we need to tag the 3 sectors (the door and two lowered sky sectors on either side) with the same tag.



In this case, we're just using Tag# "1", but of course this works with any number as long as they're the same among the sectors.

Now, we need to create a "control sector" to house our Linedef Action and provide it with our reference sector properties.

Off to the side of the map in the empty void, create a small box sector. On one of the sides of this box, you will need to set the Linedef Action to "242: Create Fake Ceiling and Floor", and tag the line with the same tag as the door and sky-ceiling border sectors. (in this case, "1") The texture on the line does not matter.



In order to achieve our desired effect, you need to match the properties of the control sector that this Linedef Action is part of with the properties of the sectors bordering the door area. (NOT the sky-ceiling border that we lowered down, the sectors beyond that!)

The courtyard area is bordering our door on either side, so we'll just adjust the control sector's properties to match the courtyard's sector properties.

We need to set the floor height, the ceiling height, floor texture, and ceiling texture to the same as the sector bordering the door on either side.

(if there are two different ceiling heights in your map on either side of the door, you will likely want to use the heights of the shorter sector. If the sky is on the ceiling on either side, it shouldn't create any issues, but if you are using a non-sky texture on the ceiling watch out for potential HOMs)



Now our Linedef Action has the reference sector properties necessary to hide the bordering skies and door heights. Here's an in-game screenshot. The door is actually fully functional at this point, and will block monster line-of-sight and bullets and projectiles that are fired at it.



Now we just need to add textures. This part is a little bit confusing, but I have two "rules-of-thumb" you can use to make it simple:

>First we need to select the outer sides of the sky ceilings that border the door on either side.

>Next we need to apply a texture on the middle sidedef texture(front and back).

>Finally, we need to adjust the texture offsets. This is where the rule-of-thumb comes into play: To make these textures show up at the top of the door, set the Y-offsets to the same amount as the height of the door texture. In this case our door is only 128px tall, so we'll use 128 as our offset.



Now we just need to texture the actual door.

>First we just select the two sides of our door sector. (don't forget to apply a door Linedef Action and flip the front side of the lines out of the door!!!)

>Next we need to apply a DOOR texture on the middle sidedef texture(front and back).

>Finally, we need to adjust the texture offsets. This is where the second rule-of-thumb comes into play: To make these textures show up as the door, set the Y-offsets to the same amount as the height of the door texture. In this case our door texture is only 128px tall, so we'll use 128 as our offset.

Spoiler

As you might have noticed, the offset is the same for both sets of lines involved! You can shortcut the process here by simply using the same offset on both sets of lines using the height of the DOOR texture as your offset amount.



And there we have it! A successful "Faux-3D" door made in Boom format.





I ran up to the door and opened it, letting the pinky demon see me and come out to attack me.

Now that we have our door working properly, we can add some more lines to try and mask the effect a little bit.

What we will do now is cut up the door sector with some diagonal lines, and then set the middle sidedef textures(front and back) to a texture that resembles a flat that matches the door texture you used. Set the Y-offset of these textures to the same as the door texture offset. (in this case, 128px)

>>> ATTENTION: Make sure that AFTER you draw the diagonal lines inside your door that you select all the small sectors that make up the door and 'join' them back together. (default key 'J' in GZDB) Not doing so can lead to some crazy/undesired behavior.



Now we want to do the same thing to the bordering sky sectors on either side of our door. Make sure you join your sectors again to prevent anything undesirable from happening!



After doing that, our door is complete! It shouldn't look as strange from underneath now that we added some extra textures to hide the empty space between the middle textures.



Lastly, here is the WAD file for your reference: CLICK TO DOWNLOAD


Hopefully someone will find this of use! Enjoy~

Share this post


Link to post

Oi! I knew I forgot another thing. Thanks for reminding me where this began at :P

Changed the first line to better reflect the series of events prior to this tutorial.

Share this post


Link to post

Very neat effect! Thank you for the thorough explanation and the file showing how it's done. I'll be sure to use/abuse this in the future : >

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
×