Making a door in 3D floors
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
- Zero X. Diamond
- Posts: 676
- Joined: Tue Dec 22, 2009 12:46 am
- Contact:
Making a door in 3D floors
I just learned how to make 3D floors, but I'm wondering: how do you do a door in an area with a 3D floors ceiling? I've got no idea where to even begin.
- Sgt Dopey
- Posts: 558
- Joined: Thu Jan 13, 2011 8:44 pm
- Graphics Processor: nVidia (Modern GZDoom)
- Location: Australia
Re: Making a door in 3D floors
Do you mean like a standard Doom door or a polyobject door?
- Zero X. Diamond
- Posts: 676
- Joined: Tue Dec 22, 2009 12:46 am
- Contact:
Re: Making a door in 3D floors
Either one. I'll need to know how to do both. In this specific case I'm looking to make a regular up-down door.
- Sgt Dopey
- Posts: 558
- Joined: Thu Jan 13, 2011 8:44 pm
- Graphics Processor: nVidia (Modern GZDoom)
- Location: Australia
Re: Making a door in 3D floors
would you be able to take a screenshot of the location where you want the door, that would help alot. As for polyobjects read this
Re: Making a door in 3D floors
Polyobject doors (i.e., those that move sideways or swing) in 3D space create some limitations. Activating a "regular" polyobject door will cause the entire polyobject to move on all floors. Therefore, if you have a sliding door (for example), the door will slide open on all floors - assuming you have a doorway above another in 3D space. There are some workarounds, using textures instead of true "void" space for your polyobject, but the method is hacky.Zero X. Diamond wrote:... how do you do a door in an area with a 3D floors ceiling?
Vertically opening doors will be easier to control, but will require some scripting knowledge, particularly on getting the player's absolute height and the highest floor point underneath the player. In this way, only the door on the floor from which it's being activated will open. Such doors can be set up using simple 3D control sectors, where only the floors move up and down. Ask if you need further help.
Re: Making a door in 3D floors
I think you can do for example swinging doors which are under each other and can be opened separately.
I'll send you a test wad for it.
Yeah, but it's not the most simple task I've done so far.
I'll send you a test wad for it.

Last edited by cocka on Fri Sep 28, 2012 12:21 pm, edited 1 time in total.
Re: Making a door in 3D floors
OK, here it is:
http://www.sendspace.com/file/qa7klp
This is for Hexen and I made it in UDMF format.
http://www.sendspace.com/file/qa7klp
This is for Hexen and I made it in UDMF format.
Re: Making a door in 3D floors
A 3d floor door should be basically just as a 3dfloor elevator, the only difference is to change the soundfx used to door sound. 
Pretty much, if I remember right, tag your 3dfloor control sectors to move via moving floor script. 120-128 up down?
You will however have to tag the target line to active the script.. I think that is all.

Pretty much, if I remember right, tag your 3dfloor control sectors to move via moving floor script. 120-128 up down?
You will however have to tag the target line to active the script.. I think that is all.
Re: Making a door in 3D floors
Another easier way is to simulate an "Animated Strife Door" with some ACS. You'll just need to use some SetLineTexture and Line_SetBlocking commands to animate and unblock a line the way you wish.
.
This old video of my mod shows one at the very beginning:
If you don't have animated door textures but have some with blank space on it, you can even just scroll the texture like a "sliding" door/gate using Line_SetTextureOffset.
.
This old video of my mod shows one at the very beginning:
Spoiler:Player can walk over the train, so I also could not use the conventional doors like you. To avoid player from opening the door when he is at the wrong height, just check his Zheight with GetActorZ, like Rex said.
If you don't have animated door textures but have some with blank space on it, you can even just scroll the texture like a "sliding" door/gate using Line_SetTextureOffset.
Re: Making a door in 3D floors
What method do you use to ensure the player is clear of the "door" before you allow it to close?Ravick wrote:Another easier way is to simulate an "Animated Strife Door" with some ACS. You'll just need to use some SetLineTexture and Line_SetBlocking commands to animate and unblock a line the way you wish.
Re: Making a door in 3D floors
Zero X. Diamond hasn't given us any feedback whether our advices have helped him or not. Why? 

- Zero X. Diamond
- Posts: 676
- Joined: Tue Dec 22, 2009 12:46 am
- Contact:
Re: Making a door in 3D floors
Because I've been working all weekend and haven't had time to work on my map? You'll be the first to know when I have a chance to sit down and look at this again.
Re: Making a door in 3D floors
Oops! I forgot to tell it. ^^'Enjay wrote:What method do you use to ensure the player is clear of the "door" before you allow it to close?Ravick wrote:Another easier way is to simulate an "Animated Strife Door" with some ACS. You'll just need to use some SetLineTexture and Line_SetBlocking commands to animate and unblock a line the way you wish.
I used ThingCountSector at the sector where the 'door' is, so if there is a player, monster or any other actor on it, the script suspend the door closing and keeps checking until there is nothing at the sector. The bad thing is that special effect actors will also prevent the door from closing.
Edit: Btw, I recommend blocking the line at the first animation frame of the closing door, because if the closing animation starts and any actor gets on the line before it is blocked it may get "stuck" there.
Re: Making a door in 3D floors
Ah, OK, thanks for the explanation. What I normally do is have the door close when the player crosses a line as they walk away from the door. Your method has some advantages over mine.