Door linedef types

From Eternity Wiki
Jump to navigationJump to search

A door is a sector, usually placed between two rooms, whose ceiling raises to open, and lowers to close.

A door is fully closed when its ceiling height is equal to its floor height.

A door is fully open when its ceiling height is 4 less than the lowest neighbor ceiling adjacent to it.

A door may be set to an intermediate state initially, or through the action of a linedef trigger that affects ceilings or floors. The door is passable to a player when its ceiling is at least 56 units higher than its floor. In general the door is passable to a monster or a thing when its ceiling is at least the monster or thing's height above the floor.

If a door has a ceiling height above the fully open height, then an open door action moves the ceiling to the fully open height instantly.

If a door has a ceiling height below the fully closed height (that is the ceiling of the door sector is lower than the floor of the door sector) a close door action moves the ceiling to the fully closed height instantly.

Back to Linedef types

Door functions[edit]

  • Open, Wait, Then Close
On activation, door opens fully, waits a specified period, then closes fully. This door type is also known as a "Raise" door. The parameterized special is Door_Raise.
  • Open and Stay Open
On activation, door opens fully and remains there. The parameterized special is Door_Open.
  • Close and Stay Closed
On activation, door closes fully, and remains there. The parameterized special Door_Close.
  • Close, Wait, Then Open
On activation, door closes fully, waits a specified period, then opens fully. The parameterized special Door_CloseWaitOpen.
  • Wait, Open, Wait, Close
Available as a parameterized line special only (Door_WaitRaise), this door type waits for a specified countdown period, and then functions as a normal "Raise" door.
  • Wait, Close and Stay Closed
Available as a parameterized line special only (Door_WaitClose), this door type waits for a specified countdown period, and then closes fully and remains closed.

Varieties of doors[edit]

A door can be triggered by pushing on it, walking over or pressing a linedef trigger tagged to it, or shooting a linedef tagged to it. These are called manual, walkover, switched, or gun doors respectively.

Since a push door (D1/DR) has no use for its tag, BOOM has extended the functionality to include changing any tagged sectors to maximum neighbor lighting on fully opening, then to minimum neighbor lighting on fully closing. This is true for regular, extended, and generalized doors with push triggers. Parameterized push doors use a separate argument to control dynamic door lighting.

A door trigger can be locked. This means that the door function will only operate if the player is in possession of the right key(s). Regular and extended door triggers only care if the player has a key of the right color, they do not care which. Generalized door triggers can distinguish between skull and card keys, and can also require any key, or all keys in order to activate.

A door can have different speeds, slow, normal, fast or turbo. Parameterized doors can open at any speed.

A door can wait for different amounts of time.

A door may or may not be activateable by monsters.

Any door function except Close and Stay Closed, when closing and encountering a monster or player's head will bounce harmlessly off that head and return to fully open. A Close and Stay Closed will rest on the head until it leaves the door sector.

Door linedef types[edit]

Table information[edit]

  • Class: "reg" and "ext". The "registered" types are from vanilla DOOM, while the "extended" types were added since BOOM.

Regular and extended door types[edit]

# Class Trig Lock Speed Wait Monst Function Parameterized equivalent
1 Reg DR No Slow 4s Yes Open, Wait, Then Close Door_Raise(0, 16, 150, tag)
117 Reg DR No Fast 4s No Open, Wait, Then Close Door_Raise(0, 64, 150, tag)
63 Reg SR No Slow 4s No Open, Wait, Then Close Door_Raise(tag, 16, 150, 0)
114 Reg SR No Fast 4s No Open, Wait, Then Close Door_Raise(tag, 64, 150, 0)
29 Reg S1 No Slow 4s No Open, Wait, Then Close Door_Raise(tag, 16, 150, 0)
111 Reg S1 No Fast 4s No Open, Wait, Then Close Door_Raise(tag, 64, 150, 0)
90 Reg WR No Slow 4s No Open, Wait, Then Close Door_Raise(tag, 16, 150, 0)
105 Reg WR No Fast 4s No Open, Wait, Then Close Door_Raise(tag, 64, 150, 0)
4 Reg W1 No Slow 4s Yes Open, Wait, Then Close Door_Raise(tag, 16, 150, 0)
108 Reg W1 No Fast 4s No Open, Wait, Then Close Door_Raise(tag, 64, 150, 0)
31 Reg D1 No Slow -- No Open and Stay Open Door_Open(0, 16, tag)
118 Reg D1 No Fast -- No Open and Stay Open Door_Open(0, 64, tag)
61 Reg SR No Slow -- No Open and Stay Open Door_Open(tag, 16, 0)
115 Reg SR No Fast -- No Open and Stay Open Door_Open(tag, 64, 0)
103 Reg S1 No Slow -- No Open and Stay Open Door_Open(tag, 16, 0)
112 Reg S1 No Fast -- No Open and Stay Open Door_Open(tag, 64, 0)
86 Reg WR No Slow -- No Open and Stay Open Door_Open(tag, 16, 0)
106 Reg WR No Fast -- No Open and Stay Open Door_Open(tag, 64, 0)
2 Reg W1 No Slow -- No Open and Stay Open Door_Open(tag, 16, 0)
109 Reg W1 No Fast -- No Open and Stay Open Door_Open(tag, 64, 0)
46 Reg GR No Slow -- Yes Open and Stay Open Door_Open(tag, 16, 0)
42 Reg SR No Slow -- No Close and Stay Closed Door_Close(tag, 16, 0)
116 Reg SR No Fast -- No Close and Stay Closed Door_Close(tag, 64, 0)
50 Reg S1 No Slow -- No Close and Stay Closed Door_Close(tag, 16, 0)
113 Reg S1 No Fast -- No Close and Stay Closed Door_Close(tag, 64, 0)
75 Reg WR No Slow -- No Close and Stay Closed Door_Close(tag, 16, 0)
107 Reg WR No Fast -- No Close and Stay Closed Door_Close(tag, 64, 0)
3 Reg W1 No Slow -- No Close and Stay Closed Door_Close(tag, 16, 0)
110 Reg W1 No Fast -- No Close and Stay Closed Door_Close(tag, 64, 0)
196 Ext SR No Slow 30s No Close, Wait, Then Open Door_CloseWaitOpen(tag, 16, 240, 0)
175 Ext S1 No Slow 30s No Close, Wait, Then Open Door_CloseWaitOpen(tag, 16, 240, 0)
76 Reg WR No Slow 30s No Close, Wait, Then Open Door_CloseWaitOpen(tag, 16, 240, 0)
16 Reg W1 No Slow 30s No Close, Wait, Then Open Door_CloseWaitOpen(tag, 16, 240, 0)

Regular and Extended Locked Door Types[edit]

# Class Trig Lock Speed Wait Monst Function
26 Reg DR Blue Slow 4s No Open, Wait, Then Close
28 Reg DR Red Slow 4s No Open, Wait, Then Close
27 Reg DR Yell Slow 4s No Open, Wait, Then Close
32 Reg D1 Blue Slow -- No Open and Stay Open
33 Reg D1 Red Slow -- No Open and Stay Open
34 Reg D1 Yell Slow -- No Open and Stay Open
99 Reg SR Blue Fast -- No Open and Stay Open
134 Reg SR Red Fast -- No Open and Stay Open
136 Reg SR Yell Fast -- No Open and Stay Open
133 Reg S1 Blue Fast -- No Open and Stay Open
135 Reg S1 Red Fast -- No Open and Stay Open
137 Reg S1 Yell Fast -- No Open and Stay Open

There are two generalized door linedef types, Generalized Door, and Generalized Locked Door. The following tables show the possibilities for each parameter, any combination of parameters is allowed:

Slow and Fast represent the same speeds as slow and fast regular doors. Normal is twice as fast as slow, Fast is twice normal, Turbo is twice Fast.

Generalized Door Types[edit]

# Class Trig Lock Speed Wait Monst Function
3C00H-4000H Gen D1/DR No Slow 1s Yes Open, Wait, Then Close
S1/SR Normal 4s No Open and Stay Open
W1/WR Fast 9s Close and Stay Closed
G1/GR Turbo 30s Close, Wait, Then Open

Generalized Locked Door Types[edit]

# Class Trig Lock Speed Wait Monst Function
3800H-3C00H Gen D1/DR Any Slow 1s No Open, Wait, Then Close
S1/SR Blue Normal 4s Open and Stay Open
W1/WR Red Fast 9s Close and Stay Closed
G1/GR Yell Turbo 30s Close, Wait, Then Open
BlueC
RedC
YellC
BlueS
RedS
YellS
All3
All6

There are several types of parameterized door specials, each performing a different type of door action. See the Parameterized Door Types section for full information on how to use these specials.