Linedef type

From DoomWiki.org

A linedef can create special effects by having a type. Over a hundred linedef types are available for use between Doom and Doom II. Heretic, Strife, and Doom 64 include additional linedef types. Hexen generalizes them into action specials, usable not just on linedefs but also on things and in ACS scripts.

Various source ports also add additional linedef types. Boom in particular includes both the Doom linedef types (known here as "regular") and a selection of "extended" and "generalized" linedef types now supported by many modern source ports (see Category:Boom compatible).

Additional information on linedef types can be found in the Unofficial Doom Specs. There is also Python code for generating and decoding types.

What follows is a complete table of linedef types throughout the Doom engine games and various source ports, followed by extensive detail on the functionality of linedef types. The latter is based on the document boomref.txt from the Boom source code distribution.

Contents

Table of all types[edit]

Type Origin Description
1 Doom DR Door
1 Heretic DR Door
1 Strife DR Door
2 Doom W1 Door Stay Open
2 Heretic W1 Door Stay Open
2 Strife W1 Door Stay Open
3 Doom W1 Door Close
3 Heretic W1 Door Close
3 Strife W1 Door Close
4 Doom W1 Door
4 Heretic W1 Door
4 Strife W1 Door Also Monsters
5 Doom W1 Floor To Lowest Adjacent Ceiling
5 Heretic W1 Floor To Lowest Adjacent Ceiling
5 Strife W1 Floor To Lowest Adjacent Ceil
6 Doom W1 Start Crusher, Fast Damage
6 Heretic W1 Start Crusher, Fast Damage
6 Strife W1 Start Crusher, Very Fast Damage
7 Doom S1 Build Stairs 8 Up
7 Heretic S1 Build Stairs 8 Up
7 Strife S1 Build Stairs 8 Up
8 Doom W1 Build Stairs 8 Up
8 Heretic W1 Build Stairs 8 Up
8 Strife W1 Build Stairs 8 Up
9 Doom S1 Floor Donut
9 Heretic S1 Floor Donut
9 Strife S1 Floor Donut
10 Doom W1 Lift Also Monsters
10 Heretic W1 Lift
10 Strife W1 Lift Also Monsters
11 Doom S1 Exit (Normal)
11 Heretic S1 Exit (Normal)
11 Strife SR Exit To Map #Tag (0 = Next)
12 Doom W1 Light To Highest Adjacent Level
12 Heretic W1 Light To Highest Adjacent Level
12 Strife W1 Light To Highest Adjacent Level
13 Doom W1 Light To 255
13 Heretic W1 Light To 255
13 Strife W1 Light To 255
14 Doom S1 Floor Up 32 Change Texture
14 Heretic S1 Floor Up 32 Change Texture
14 Strife S1 Floor Up 32 Change Texture
15 Doom S1 Floor Up 24 Change Texture
15 Heretic S1 Floor Up 24 Change Texture
15 Strife S1 Floor Up 24 Change Texture
16 Doom W1 Door Close and Open
16 Heretic W1 Door Close and Open
16 Strife W1 Door Close and Open
17 Doom W1 Light Blink 1.0 Sec
17 Heretic W1 Light Blink 1.0 Sec
17 Strife W1 Light Blink 1.0 Sec
18 Doom S1 Floor To Higher Adjacent Floor
18 Heretic S1 Floor To Higher Adjacent Floor
18 Strife S1 Floor To Higher Adjacent Floor
19 Doom W1 Floor To Highest Adjacent Floor
19 Heretic W1 Floor To Highest Adjacent Floor
19 Strife W1 Floor To Highest Adjacent Floor
20 Doom S1 Floor To Higher Floor Change Texture
20 Heretic S1 Floor To Higher Floor Change Texture
20 Strife S1 Floor To Higher Floor Change Texture
21 Doom S1 Lift
21 Heretic S1 Lift
21 Strife S1 Lift
22 Doom W1 Floor To Higher Floor Change Texture
22 Heretic W1 Floor To Higher Floor Change Texture
22 Strife W1 Floor To Higher Floor Change Texture
23 Doom S1 Floor To Lowest Adjacent Floor
23 Heretic S1 Floor To Lowest Adjacent Floor
23 Strife S1 Floor To Lowest Adjacent Floor
24 Doom G1 Floor To Lowest Adjacent Ceiling
24 Heretic G1 Floor To Lowest Adjacent Ceiling
24 Strife G1 Floor To Lowest Adjacent Ceiling
25 Doom W1 Start Crusher, Slow Damage
25 Heretic W1 Start Crusher, Slow Damage
25 Strife W1 Start Crusher, Slow No Damage
26 Doom DR Door Blue Key
26 Heretic DR Door Blue Key
26 Strife DR Door ID Badge
27 Doom DR Door Yellow Key
27 Heretic DR Door Yellow Key
27 Strife DR Door Passcard
28 Doom DR Door Red Key
28 Heretic DR Door Green Key
28 Strife DR Door ID Card
29 Doom S1 Door
29 Heretic S1 Door
29 Strife S1 Door
30 Doom W1 Floor Up Shortest Lower Texture
30 Heretic W1 Floor Up Shortest Lower Texture
30 Strife W1 Floor Up Shortest Lower Texture
31 Doom D1 Door Stay Open
31 Heretic D1 Door Stay Open
31 Strife D1 Door Stay Open
32 Doom D1 Door Blue Key
32 Heretic D1 Door Blue Key
32 Strife D1 Door Stay Open ID Badge
33 Doom D1 Door Red Key
33 Heretic D1 Door Green Key
33 Strife D1 Door Stay Open ID Card
34 Doom D1 Door Yellow Key
34 Heretic D1 Door Yellow Key
34 Strife D1 Door Stay Open Passcard
35 Doom W1 Light To 35
35 Heretic W1 Light To 35
35 Strife W1 Light To 35
36 Doom W1 Floor To 8 Above Highest Adjacent Floor Fast
36 Heretic W1 Floor To 8 Above Higher Adjacent Floor Fast
36 Strife W1 Floor To Highest Adjacent Floor Fast
37 Doom W1 Floor To Lowest Adjacent Floor Change Texture and Type
37 Heretic W1 Floor To Lowest Adjacent Floor Change Texture and Type
37 Strife W1 Floor To LAF Change Texture and Type
38 Doom W1 Floor To Lowest Adjacent Floor
38 Heretic W1 Floor To Lowest Adjacent Floor
38 Strife W1 Floor To Lowest Adjacent Floor
39 Doom W1 Teleport
39 Heretic W1 Teleport
39 Strife W1 Teleport
40 Doom W1 Ceiling To Highest Ceiling
40 Heretic W1 Ceiling To Highest Ceiling
40 Strife S1 Door Split Open To Lowest
41 Doom S1 Ceiling To Floor
41 Heretic S1 Ceiling To Floor
41 Strife S1 Ceiling To Floor
42 Doom SR Door Close
42 Heretic SR Door Close
42 Strife SR Door Close
43 Doom SR Ceiling To Floor
43 Heretic SR Ceiling To Floor
43 Strife SR Ceiling To Floor
44 Doom W1 Ceiling To 8 Above Floor
44 Heretic W1 Ceiling To 8 Above Floor
44 Strife W1 Crusher To Floor And Stops
45 Doom SR Floor To Highest Adjacent Floor
45 Heretic SR Floor To Highest Adjacent Floor
45 Strife SR Floor To Highest Adjacent Floor
46 Doom GR Door Also Monsters
46 Heretic GR Door Also Monsters
46 Strife GR Door
47 Doom G1 Floor To Higher Floor Change Texture
47 Heretic G1 Floor To Higher Floor Change Texture
47 Strife G1 Floor To Higher Floor Change Texture
48 Doom Scrolling Wall Left
48 Heretic Scrolling Wall Left
48 Strife Scrolling Wall Left
49 Doom S1 Start Crusher, Slow Damage
49 Heretic S1 Ceiling To 8 Above Floor
49 Strife S1 Ceiling To 8 Above Floor Continually
50 Doom S1 Door Close
50 Heretic S1 Door Close
50 Strife S1 Door Close
51 Doom S1 Exit (Secret)
51 Heretic S1 Exit (Secret)
51 Strife S1 Exit (Endgame)
52 Doom W1 Exit (Normal)
52 Heretic W1 Exit (Normal)
52 Strife W1 Exit to Map #Tag/100
53 Doom W1 Start Moving Floor
53 Heretic W1 Start Moving Floor
53 Strife W1 Start Moving Floor
54 Doom W1 Stop Moving Floor
54 Heretic W1 Stop Moving Floor
54 Strife W1 Stop Moving Floor
55 Doom S1 Floor To 8 Below Lowest Adjacent Ceiling and Crush
55 Heretic S1 Floor To 8 Below Lowest Adjacent Ceiling and Crush
55 Strife S1 Floor To 8 Below LAC and Crush
56 Doom W1 Floor To 8 Below Lowest Adjacent Ceiling and Crush
56 Heretic W1 Floor To 8 Below Lowest Adjacent Ceiling and Crush
56 Strife W1 Floor To 8 Below LAC and Crush
57 Doom W1 Stop Crusher
57 Heretic W1 Stop Crusher
57 Strife W1 Stop Crusher
58 Doom W1 Floor Up 24
58 Heretic W1 Floor Up 24
58 Strife W1 Floor Up 64
59 Doom W1 Floor Up 24 Change Texture and Type
59 Heretic W1 Floor Up 24 Change Texture and Type
59 Strife W1 Floor Up 24 Change Texture and Type
60 Doom SR Floor To Lowest Adjacent Floor
60 Heretic SR Floor To Lowest Adjacent Floor
60 Strife SR Floor To Lowest Adjacent Floor
61 Doom SR Door Stay Open
61 Heretic SR Door Stay Open
61 Strife SR Door Stay Open
62 Doom SR Lift
62 Heretic SR Lift
62 Strife SR Lift
63 Doom SR Door
63 Heretic SR Door
63 Strife SR Door
64 Doom SR Floor To Lowest Adjacent Ceiling
64 Heretic SR Floor To Lowest Adjacent Ceiling
64 Strife SR Floor To Lowest Adjacent Ceiling
65 Doom SR Floor To 8 Below Lowest Adjacent Ceiling and Crush
65 Heretic SR Floor To 8 Below Lowest Adjacent Ceiling and Crush
65 Strife SR Floor To 8 Below Lowest Adjacent Ceiling and Crush
66 Doom SR Floor Up 24 Change Texture
66 Heretic SR Floor Up 24 Change Texture
66 Strife SR Floor Up 24 Change Texture
67 Doom SR Floor Up 32 Change Texture
67 Heretic SR Floor Up 32 Change Texture
67 Strife SR Floor Up 32 Change Texture
68 Doom SR Floor To Higher Floor Change Texture
68 Heretic SR Floor To Higher Floor Change Texture
68 Strife SR Floor To Higher Floor Change Texture
69 Doom SR Floor To Higher Adjacent Floor
69 Heretic SR Floor To Higher Adjacent Floor
69 Strife SR Floor To Higher Adjacent Floor
70 Doom SR Floor To 8 Above Higher Adjacent Floor Fast
70 Heretic SR Floor To 8 Above Highest Adjacent Floor Fast
70 Strife SR Floor To Highest Adjacent Floor Fast
71 Doom S1 Floor To 8 Above Higher Adjacent Floor Fast
71 Heretic S1 Floor To 8 Above Highest Adjacent Floor Fast
71 Strife S1 Floor To Highest Adjacent Floor Fast
72 Doom WR Ceiling To 8 Above Floor
72 Heretic WR Ceiling To 8 Above Floor
72 Strife WR Crusher To Floor And Stops
73 Doom WR Start Crusher, Slow Damage
73 Heretic WR Start Crusher, Slow Damage
73 Strife WR Start Crusher, Slow Damage
74 Doom WR Stop Crusher
74 Heretic WR Stop Crusher
74 Strife WR Stop Crusher
75 Doom WR Door Close
75 Heretic WR Door Close
75 Strife WR Door Close
76 Doom WR Door Close and Open
76 Heretic WR Door Close and Open
76 Strife WR Door Close and Open
77 Doom WR Start Crusher, Fast Damage
77 Heretic WR Start Crusher, Fast Damage
77 Strife WR Start Crusher, Very Fast Damage
78 Boom SR Change Floor Texture and Type (Numeric Model)
79 Doom WR Light To 35
79 Heretic WR Light To 35
79 Strife WR Light To 35
80 Doom WR Light To Highest Adjacent Level
80 Heretic WR Light To Highest Adjacent Level
80 Strife WR Light To Highest Adjacent Level
81 Doom WR Light To 255
81 Heretic WR Light To 255
81 Strife WR Light To 255
82 Doom WR Floor To Lowest Adjacent Floor
82 Heretic WR Floor To Lowest Adjacent Floor
82 Strife WR Floor To Lowest Adjacent Floor
83 Doom WR Floor To Highest Adjacent Floor
83 Heretic WR Floor To Highest Adjacent Floor
83 Strife WR Floor To Highest Adjacent Floor
84 Doom WR Floor To Lowest Adjacent Floor Change Texture and Type
84 Heretic WR Floor To Lowest Adjacent Floor Change Texture and Type
84 Strife WR Floor To Lowest Adjacent Floor Change Texture and Type
85 Boom -- Scrolling Wall (Right)
86 Doom WR Door Stay Open
86 Heretic WR Door Stay Open
86 Strife WR Door Stay Open
87 Doom WR Start Moving Floor
87 Heretic WR Start Moving Floor
87 Strife WR Start Moving Floor
88 Doom WR Lift Also Monsters
88 Heretic WR Lift
88 Strife WR Lift Also Monsters
89 Doom WR Stop Moving Floor
89 Heretic WR Stop Moving Floor
89 Strife WR Stop Moving Floor
90 Doom WR Door
90 Heretic WR Door
90 Strife WR Door
91 Doom WR Floor To Lowest Adjacent Ceiling
91 Heretic WR Floor To Lowest Adjacent Ceiling
91 Strife WR Floor To Lowest Adjacent Ceiling
92 Doom WR Floor Up 24
92 Heretic WR Floor Up 24
92 Strife WR Floor Up 64
93 Doom WR Floor Up 24 Change Texture and Type
93 Heretic WR Floor Up 24 Change Texture and Type
93 Strife WR Floor Up 24 Change Texture and Type
94 Doom WR Floor To 8 Below Lowest Adjacent Ceiling and Crush
94 Heretic WR Floor To 8 Below Lowest Adjacent Ceiling and Crush
94 Strife WR Floor To 8 Below Lowest Adjacent Ceiling and Crush
95 Doom WR Floor To Higher Floor Change Texture
95 Heretic WR Floor To Higher Floor Change Texture
95 Strife WR Floor To Higher Floor Change Texture
96 Doom WR Floor Up Shortest Lower Texture
96 Heretic WR Floor Up Shortest Lo Texture
96 Strife WR Floor Up Shortest Lower Texture
97 Doom WR Teleport
97 Heretic WR Teleport
97 Strife WR Teleport
98 Doom WR Floor To 8 Above Highest Adjacent Floor Fast
98 Heretic WR Floor To 8 Above Highest Adjacent Floor Fast
98 Strife WR Floor To Highest Adjacent Floor Fast
99 Doom II SR Door Blue Key Fast
99 Heretic Scrolling Wall Right
99 Strife SR Door Fast ID Badge
100 Doom II W1 Build Stairs 16 and Crush
100 Heretic WR Door Triple Speed
100 Strife W1 Build Stairs 16 Crush
101 Doom S1 Floor To Lowest Adjacent Ceiling
101 Heretic S1 Floor To Lowest Adjacent Ceiling
101 Strife S1 Floor To Lowest Adjacent Ceiling
102 Doom S1 Floor To Highest Adjacent Floor
102 Heretic S1 Floor To Highest Adjacent Floor
102 Strife S1 Floor To Highest Adjacent Floor
103 Doom S1 Door Stay Open
103 Heretic S1 Door Stay Open
103 Strife S1 Door Stay Open
104 Doom W1 Light To Lowest Adjacent Level
104 Heretic W1 Light To Lowest Adjacent Level
104 Strife W1 Light To Lowest Adjacent Level
105 Doom II WR Door Fast
105 Heretic W1 Exit (Secret)
105 Strife WR Door Fast
106 Doom II WR Door Stay Open Fast
106 Heretic W1 Build Stairs 16
106 Strife WR Door Stay Open Fast
107 Doom II WR Door Close Fast
107 Heretic S1 Build Stairs 16
107 Strife WR Door Close Fast
108 Doom II W1 Door Fast
108 Strife W1 Door Fast
109 Doom II W1 Door Stay Open Fast
109 Strife W1 Door Stay Open Fast
110 Doom II W1 Door Close Fast
110 Strife W1 Door Close Fast
111 Doom II S1 Door Fast
111 Strife S1 Door Fast
112 Doom II S1 Door Stay Open Fast
112 Strife S1 Door Stay Open Fast
113 Doom II S1 Door Close Fast
113 Strife S1 Door Close Fast
114 Doom II SR Door Fast
114 Strife SR Door Fast
115 Doom II SR Door Stay Open Fast
115 Strife SR Door Stay Open Fast
116 Doom II SR Door Close Fast
116 Strife SR Door Close Fast
117 Doom II DR Door Fast
117 Strife DR Door Fast
118 Doom II D1 Door Fast
118 Strife D1 Door Stay Open Fast
119 Doom II W1 Floor To Higher Adjacent Floor
119 Strife W1 Floor To Higher Adjacent Floor
120 Doom II WR Lift Fast
120 Strife WR Lift Fast
121 Doom II W1 Lift Fast
121 Strife W1 Lift Fast
122 Doom II S1 Lift Fast
122 Strife S1 Lift Fast
123 Doom II SR Lift Fast
123 Strife SR Lift Fast
124 Doom II W1 Exit (Secret)
124 Strife W1 Exit (Endgame)
125 Doom II W1 Teleport Monsters Only
125 Strife W1 Teleport Monsters Only
126 Doom II WR Teleport Monsters Only
126 Strife WR Teleport Monsters Only
127 Doom II S1 Build Stairs 16 + Crush
127 Strife S1 Build Stairs 16 Crush
128 Doom II WR Floor To Higher Adjacent Floor
128 Strife WR Floor To Higher Adjacent Floor
129 Doom II WR Floor To Higher Floor Fast
129 Strife WR Floor To Higher Floor Fast
130 Doom II W1 Floor To Higher Floor Fast
130 Strife W1 Floor To Higher Floor Fast
131 Doom II S1 Floor To Higher Floor Fast
131 Strife S1 Floor To Higher Floor Fast
132 Doom II SR Floor To Higher Floor Fast
132 Strife SR Floor To Higher Floor Fast
133 Doom II S1 Door Blue Key Fast
133 Strife S1 Door Fast ID Badge
134 Doom II SR Door Red Key Fast
134 Strife SR Door Fast ID Card
135 Doom II S1 Door Red Key Fast
135 Strife S1 Door Fast ID Card
136 Doom II SR Door Yellow Key Fast
136 Strife SR Door Fast Passcard
137 Doom II S1 Door Yellow Key Fast
137 Strife S1 Door Fast Passcard
138 Doom II SR Light To 255
138 Strife SR Light To 255
139 Doom II SR Light To 35
139 Strife SR Light To 35
140 Doom II S1 Floor Up 512
140 Strife S1 Floor Up 512
141 Doom II W1 Start Crusher, Silent
141 Strife W1 Start Crusher, Silent
142 Boom W1 Floor Up 512
142 Strife Scrolling Wall Up
143 Boom W1 Lift Up 24 Change Texture
143 Strife Scrolling Wall Down Triple Speed
144 Boom W1 Lift Up 24 Remove Type
144 Strife DR Door Animated
145 Boom W1 Ceiling Down To Floor Fast
145 Strife WR Exit To Map #Tag/100 Spot #Tag%100
146 Boom W1 Floor Donut Raise
146 Strife S1 Build Stairs 16 Down
147 Boom WR Floor Up 512
147 Strife S1 Clear Forcefield // Tagged
148 Boom WR Lift Up 24 Change Texture
148 Strife SR Forcefield
149 Boom WR Lift Up 24 Remove Type
149 Strife Scrolling Wall Right
150 Boom WR Start Crusher Silent
150 Strife WR Raise Alarm
151 Boom WR Ceiling Up To Highest Ceiling
151 Strife SR Door Fast Gold Key
152 Boom WR Ceiling Down To Floor Fast
152 Strife SR Door Fast Brass Key
153 Boom W1 Change Floor Texture and Type (Trigger Model)
153 Strife SR Door Fast Silver Key
154 Boom WR Change Floor Texture and Type (Trigger Model)
154 Strife SR Lift If Gold Key
155 Boom WR Floor Donut Raise
155 Strife SR Lift Up
156 Boom WR Light Start Blinking
156 Strife D1 Door Stay Open Brass Key
157 Boom WR Light To Lowest Adjacent Level
157 Strife D1 Door Stay Open Silver Key
158 Boom S1 Floor Up By Shortest Lower Tex
158 Strife D1 Door Stay Open Gold Key
159 Boom S1 Floor To Lowest Adjacent Floor
159 Strife DR Door Gold Key
160 Boom S1 Floor Up 24 Change Texture and Type
160 Strife DR Door Silver Key
161 Boom S1 Floor Up 24
161 Strife DR Door Brass Key
162 Boom S1 Lift Perpetual
162 Strife S1 Door Fast Brass Key
163 Boom S1 Lift Stop
163 Strife S1 Door Fast Silver Key
164 Boom S1 Start Crusher, Fast Damage
164 Strife S1 Door Fast Gold Key
165 Boom S1 Start Crusher Silent
165 Strife SR Fake Door 'Doesn't Seem To Work'
166 Boom S1 Ceiling Up To Highest Ceiling
166 Strife DR Door Severed Hand
167 Boom S1 Ceiling Down To 8 Above Floor
167 Strife S1 Door Fast Severed Hand
168 Boom S1 Stop Crusher
168 Strife SR Door Fast Severed Hand
169 Boom S1 Light To Highest Adjacent Level
169 Strife DR Door Base Key
170 Boom S1 Light To 35
170 Strife DR Door Govs Key
171 Boom S1 Light To 255
171 Strife S1 Door Fast Prison Key
172 Boom S1 Light Start Blinking
172 Strife SR Door Power 1 Key
173 Boom S1 Light To Lowest Adjacent Level
173 Strife SR Door Power 2 Key
174 Boom S1 Teleport
174 Strife W1 Door Split Open To Lowest
175 Boom S1 Door Close and Open
175 Strife WR Raise Alarm If <16 Above Floor
176 Boom SR Floor Up By Shortest Lower Texture
176 Strife SR Door Power 3 Key
177 Boom SR Floor To Lowest Adjacent Floor
177 Strife SR Lift If Power 3 Key
178 Boom SR Floor Up 512
178 Strife W1 Build Stairs 16 Down
179 Boom SR Floor Up 24 Change Texture and Type
179 Strife W1 Ceiling To Floor
180 Boom SR Floor Up 24
180 Strife G1 Floor Up 512 Change Texture and Type
181 Boom SR Lift Perpetual
181 Strife S1 Floor Up 512 Change Texture and Type
182 Boom SR Lift Stop
182 Strife G1 Break Glass
183 Boom SR Start Crusher, Fast Damage
183 Strife W1 Door Split Open To Nearest
184 Boom SR Start Crusher
184 Strife WR Lift
185 Boom SR Start Crusher Silent
185 Strife WR Teleport (Silent)
186 Boom SR Ceiling Up To Highest Ceiling
186 Strife WR Exit To Map #Tag/100 Spot #Tag%100 (Front Side)
187 Boom SR Ceiling Down To 8 Above Floor
187 Strife W1 Clear Forcefield If Quest Item Y Offset // Tagged
188 Boom SR Stop Crusher
188 Strife W1 Door Open If Quest Item 16
189 Boom S1 Change Floor Texture and Type (Trigger Model)
189 Strife S1 Door Split Open To Lowest Oracle Key
190 Boom SR Change Floor Texture and Type (Trigger Model)
190 Strife DR Door Order Key
191 Boom SR Floor Donut Raise
191 Strife SR Door Military ID
192 Boom SR Light To Highest Adjacent Level
192 Strife SR Door Warehouse Key
193 Boom SR Light Start Blinking
193 Strife W1 Floor To Lowest Adjacent Floor If Quest Item from Y Offset owned
194 Boom SR Light To Lowest Adjacent Level
194 Strife S1 Door Stay Open Free Prisoners
195 Boom SR Teleport
195 Strife WR Teleport (Zombie Changer)
196 Boom SR Door Close then Open
196 Strife W1 Floor To Lowest Adjacent Floor If 2+ Sigil Pieces
197 Boom G1 Exit (Normal)
197 Strife W1 Door Close Fast If 2+ Sigil Pieces
198 Boom G1 Exit (Secret)
198 Strife WR Raise Alarm If No Officer's Uniform
199 Boom W1 Ceiling Down To Lowest Ceiling
199 Strife S1 Ceiling To Floor Destroy Converter
200 Boom W1 Ceiling Down To Highest Floor
200 Strife W1 Door Open If Sigil Owned
201 Boom WR Ceiling Down To Lowest Ceiling
201 Strife W1 Message #Tag (Front Side Only)
202 Boom WR Ceiling Down To Highest Floor
202 Strife W1 Message #Tag
203 Boom S1 Ceiling Down To Lowest Ceiling
203 Strife W1 Set Music To Map #Tag
204 Boom S1 Ceiling Down To Highest Floor
204 Strife W1 Set Music To Map #Tag
205 Boom SR Ceiling Down To Lowest Ceiling
205 Strife SR Fake Door 'Only Available In Retail'
206 Boom SR Ceiling Down To Highest Floor
206 Strife WR Raise Alarm If Chalice Owned
207 Boom W1 Teleport Preserve Direction (Silent)
207 Strife SR Door Animated
208 Boom WR Teleport Preserve Direction (Silent)
208 Strife WR Raise Alarm If Flamethrower Owned
209 Boom S1 Teleport Preserve Direction (Silent)
209 Strife S1 Build Stairs 16 Down If Chalice Owned
210 Boom SR Teleport Preserve Direction (Silent)
210 Strife W1 Message #Tag If Flamethrower (No Log)
211 Boom SR Toggle Floor To Ceiling (Instant)
211 Strife SR Message #Tag (No Log)
212 Boom WR Toggle Floor To Ceiling (Instant)
212 Strife W1 Floor To Lowest Adjacent Floor If Flamethrower Owned
213 Boom -- Transfer Floor Light
213 Strife DR Door Chalice
214 Boom -- Accelerate Tagged Ceiling w.r.t. 1st Side's Sector
214 Strife SR Lift Slow
215 Boom -- Accelerate Tagged Floor w.r.t. 1st Side's Sector
215 Strife W1 Message #Tag/100 If Quest Item #Tag%100 Owned
216 Boom -- Accelerate Objects on Tagged Floor wrt 1st Side's Sector
216 Strife WR Door If Quest Item from Y Offset Owned
217 Boom -- Accelerate Objects and Tagged Floor wrt 1st Side's Sector
217 Strife DR Door Core Key
218 Boom -- Accelerate Tagged Wall w.r.t 1st Side's Sector
219 Boom W1 Floor Down To Adjacent Floor
219 Strife S1 Floor To Higher Adjacent Floor If Blue Crystal Key Owned
220 Boom WR Floor Down To Adjacent Floor
220 Strife S1 Floor To Higher Adjacent Floor If Red Crystal Key Owned
221 Boom S1 Floor Down To Adjacent Floor
221 Strife DR Door Mauler Key
222 Boom SR Floor Down To Adjacent Floor
223 Boom -- Set Friction To Length
223 Strife SR Door Mine Key
224 Boom -- Set Wind
224 Strife DR Door Chapel Key
225 Boom -- Set Current
225 Strife DR Door Catacomb Key
226 Boom -- Point Pusher
226 Strife S1 Floor To Higher Adjacent Floor If Training Area Complete
227 Boom W1 Elevator To Higher Floor
227 Strife W1 Door Close If Quest Item from Y Offset Owned
228 Boom WR Elevator To Higher Floor
228 Strife W1 Entity Taunt If Quest Item 24 Owned
229 Boom S1 Elevator To Higher Floor
229 Strife SR Door Animated If Sigil Complete
230 Boom SR Elevator To Higher Floor
230 Strife W1 Door Open If Quest Item from Y Offset Owned
231 Boom W1 Elevator To Lower Floor
231 Strife WR Teleport (Silent Source)
232 Boom WR Elevator To Lower Floor
232 Strife DR Door Oracle Pass
233 Boom S1 Elevator To Lower Floor
233 Strife SR Door Split Open To Lowest Log Msg 70
234 Boom SR Elevator To Lower Floor
234 Strife SR Door If Irale Unlocked
235 Boom W1 Elevator To Current Floor
235 Strife S1 Door Split Open To Lowest If Sigil Complete
236 Boom WR Elevator To Current Floor
237 Boom S1 Elevator To Current Floor
238 Boom SR Elevator To Current Floor
239 Boom W1 Change Floor Texture and Type (Numeric Model)
240 Boom WR Change Floor Texture and Type (Numeric Model)
241 Boom S1 Change Floor Texture and Type (Numeric Model)
242 Boom -- Transfer Heights
243 Boom W1 Teleport Line
244 Boom WR Teleport Line
245 Boom -- Scroll Tagged Ceiling w.r.t. 1st Side's Sector
246 Boom -- Scroll Tagged Floor w.r.t. 1st Side's Sector
247 Boom -- Push Objects on Tagged Floor wrt 1st Side's Sector
248 Boom -- Push Objects & Tagged Floor wrt 1st Side's Sector
249 Boom -- Scroll Tagged Wall w.r.t 1st Side's Sector
250 Boom -- Scroll Tagged Ceiling
251 Boom -- Scroll Tagged Floor
252 Boom -- Carry Objects on Tagged Floor
253 Boom -- Scroll Tagged Floor, Carry Objects
254 Boom -- Scroll Tagged Wall, Same as Floor/Ceiling
255 Boom -- Scroll Wall Using Sidedef Offsets
256 Boom WR Build Stairs 8
257 Boom WR Build Stairs 16 + Crush
258 Boom SR Build Stairs 8
259 Boom SR Build Stairs 16 + Crush
260 Boom -- Translucent Line
261 Boom -- Transfer Ceiling Light
262 Boom W1 Teleport Line (Reversed)
263 Boom WR Teleport Line (Reversed)
264 Boom W1 Teleport Line Monsters Only (Reversed)
265 Boom WR Teleport Line Monsters Only (Reversed)
266 Boom W1 Teleport Line Monsters Only
267 Boom WR Teleport Line Monsters Only
268 Boom W1 Teleport Monsters Only (Silent)
269 Boom WR Teleport Monsters Only (Silent)
270 Eternity ExtraDataSpecial
270 ZDoom WR FS_Execute(tag)
271 MBF Transfer upper texture to tagged sector sky
272 MBF Transfer upper texture to tagged sector sky (flipped)
272 SMMU WR Start FS script with tag number
273 SMMU WR Start FS script, 1-way trigger
274 SMMU W1 Start FS script with tag number
275 SMMU W1 Start FS script, 1-way trigger
276 SMMU SR Start FS script with tag number
277 SMMU S1 Start FS script with tag number
278 SMMU GR Start FS script with tag number
279 SMMU G1 Start FS script with tag number
280 Legacy -- Deep Water with Water Colormap
281 Eternity 3DMidTex_MoveWithFloor
281 Legacy -- Solid 3D Floor with Shadow
282 Eternity 3DMidTex_MoveWithCeiling
282 Legacy -- Generate Colormap (Upper Tex is RGB, Middle Tex is Fade Distance, Lower Tex is Fade Color)
283 Eternity Portal_PlaneCeiling
283 Legacy -- Fog Sheet on Middle Textures
284 Eternity Portal_PlaneFloor
284 Legacy -- Translucent Line (TRANSMED)
285 Eternity Portal_PlaneFloorCeiling
285 Legacy -- Translucent Line (TRANSMOR)
286 Eternity Portal_HorizonCeiling
286 Legacy -- Translucent Line (TRANSHI)
287 Eternity Portal_HorizonFloor
287 Legacy -- Translucent Line (TRANSFIR)
288 Eternity Portal_HorizonFloorCeiling
288 Legacy -- Translucent Line (TRANSFX1)
289 Eternity Portal_LineTransfer
289 Legacy -- Solid 3D Floor without Shadow
290 Eternity Portal_SkyboxCeiling
290 Legacy -- Instant Lower Floor
291 Eternity Portal_SkyboxFloor
291 Legacy -- Instant Raise Ceiling
292 Eternity Portal_SkyboxFloorCeiling
293 Eternity TransferHereticWind
294 Eternity TransferHereticCurrent
295 Eternity Portal_AnchoredCeiling
296 Eternity Portal_AnchoredFloor
297 Eternity Portal_AnchoredFloorCeiling
298 Eternity Portal_AnchorLine
299 Eternity Portal_AnchorLineFloor
300 Eternity Door_Raise (param)
300 Legacy -- Solid Translucent 3D Floor (Upper Texture is Alpha, default 128)
301 Eternity Door_Open (param)
301 Legacy -- Translucent 3D Water (Upper Texture is Alpha + Fog, default 127A)
302 Eternity Door_Close (param)
302 Legacy -- 3D Fog (Upper Texture is Alpha + Fog, default 110F)
303 Eternity Door_CloseWaitOpen (param)
303 Legacy -- 3D Ceiling Light Effect
304 Eternity Door_WaitRaise (param)
304 Legacy -- Opaque Water (Upper Texture is Alpha + Fog, default 190A)
305 Eternity Door_WaitClose (param)
305 Legacy -- 3D Light Effect
306 Eternity Floor_RaiseToHighest (param)
306 Legacy -- Invisible Floor
307 Eternity Floor_LowerToHighest (param)
308 Eternity Floor_RaiseToLowest (param)
309 Eternity Floor_LowerToLowest (param)
310 Eternity Floor_RaiseToNearest (param)
311 Eternity Floor_LowerToNearest (param)
312 Eternity Floor_RaiseToLowestCeiling (param)
313 Eternity Floor_LowerToLowestCeiling (param)
314 Eternity Floor_RaiseToCeiling (param)
315 Eternity Floor_RaiseByTexture (param)
316 Eternity Floor_LowerByTexture (param)
317 Eternity Floor_RaiseByValue (param)
318 Eternity Floor_LowerByValue (param)
319 Eternity Floor_MoveToValue (param)
320 Eternity Floor_RaiseInstant (param)
321 Eternity Floor_LowerInstant (param)
322 Eternity Floor_ToCeilingInstant (param)
323 Eternity Ceiling_RaiseToHighest (param)
324 Eternity Ceiling_ToHighestInstant (param)
325 Eternity Ceiling_RaiseToNearest (param)
326 Eternity Ceiling_LowerToNearest (param)
327 Eternity Ceiling_RaiseToLowest (param)
328 Eternity Ceiling_LowerToLowest (param)
329 Eternity Ceiling_RaiseToHighestFloor (param)
330 Eternity Ceiling_LowerToHighestFloor (param)
331 Eternity Ceiling_ToFloorInstant (param)
332 Eternity Ceiling_LowerToFloor (param)
333 Eternity Ceiling_RaiseByTexture (param)
333 ZDoom Static_Init (tag, Init_Gravity)
334 Eternity Ceiling_LowerByTexture (param)
334 ZDoom Static_Init (tag, Init_Color)
335 Eternity Ceiling_RaiseByValue (param)
335 ZDoom Static_Init (tag, Init_Damage)
336 Eternity Ceiling_LowerByValue (param)
336 ZDoom Line_Mirror ()
337 Eternity Ceiling_MoveToValue (param)
337 ZDoom Line_Horizon ()
338 Eternity Ceiling_RaiseInstant (param)
338 ZDoom W1 Floor_Waggle (tag, 24, 32, 0, 0)
339 Eternity Ceiling_LowerInstant (param)
339 ZDoom W1 Floor_Waggle (tag, 12, 32, 0, 0)
340 Eternity Stairs_BuildUpDoom (param)
340 ZDoom Plane_Align (1, 0) // Slope front floor
341 Eternity Stairs_BuildDownDoom (param)
341 ZDoom Plane_Align (0, 1) // Slope front ceiling
342 Eternity Stairs_BuildUpDoomSync (param)
342 ZDoom Plane_Align (1, 1) // Slope front floor and ceiling
343 Eternity Stairs_BuildDownDoomSync (param)
343 ZDoom Plane_Align (2, 0) // Slope back floor
344 Eternity Portal_TwowayCeiling
344 ZDoom Plane_Align (0, 2) // Slope back ceiling
345 Eternity Portal_TwowayFloor
345 ZDoom Plane_Align (2, 2) // Slope back floor and ceiling
346 Eternity Portal_TwowayAnchorLine
346 ZDoom Plane_Align (2, 1) // Slope b.f. and f.c.
347 Eternity Portal_TwowayAnchorLineFloor
347 ZDoom Plane_Align (1, 2) // Slope f.f. and b.c.
348 Eternity Polyobj_StartLine (param)
348 ZDoom W1 Autosave ()
349 Eternity Polyobj_ExplicitLine (param)
349 ZDoom S1 Autosave ()
350 Eternity Polyobj_DoorSlide (param)
350 ZDoom Transfer_Heights (tag, 2) // Just fake the floor
351 Eternity Polyobj_DoorSwing (param)
351 ZDoom Transfer_Heights (tag, 6) // Just fake the floor and clip it too
352 Eternity Polyobj_Move (param)
352 ZDoom Sector_CopyScroller(tag, 1) // copy ceiling scroller
353 Eternity Polyobj_OR_Move (param)
353 ZDoom Sector_CopyScroller(tag, 2) // copy floor scroller
354 Eternity Polyobj_RotateRight (param)
354 ZDoom Sector_CopyScroller(tag, 6) // copy carrying floor scroller
355 Eternity Polyobj_OR_RotateRight (param)
356 Eternity Polyobj_RotateLeft (param)
357 Eternity Polyobj_OR_RotateLeft (param)
358 Eternity Portal_LinkedCeiling
359 Eternity Portal_LinkedFloor
360 Eternity Portal_LinkedAnchorLine
361 Eternity Portal_LinkedAnchorLineFloor
362 Eternity Pillar_Build (param)
363 Eternity Pillar_BuildAndCrush (param)
364 Eternity Pillar_Open (param)
365 Eternity ACS_Execute (param)
366 Eternity ACS_Suspend (param)
367 Eternity ACS_Terminate (param)
368 Eternity Light_RaiseByValue (param)
369 Eternity Light_LowerByValue (param)
370 Eternity Light_ChangeToValue (param)
371 Eternity Light_Fade (param)
372 Eternity Light_Glow (param)
373 Eternity Light_Flicker (param)
374 Eternity Light_Strobe (param)
375 Eternity Radius_Quake (param)
376 Eternity Portal_LinkedLineToLine
377 Eternity Portal_LinkedLineToLineAnchor
378 Eternity Line_SetIdentification (param)
379 Eternity Attach_SetCeilingControl
380 Eternity Attach_SetFloorControl
381 Eternity Attach_FloorToControl
382 Eternity Attach_CeilingToControl
383 Eternity Attach_MirrorFloorToControl
384 Eternity Attach_MirrorCeilingToControl
385 Eternity Apply_PortalToFrontsector
386 Eternity Slope_FrontsectorFloor
387 Eternity Slope_FrontsectorCeiling
388 Eternity Slope_FrontsectorFloorAndCeiling
389 Eternity Slope_BacksectorFloor
390 Eternity Slope_BacksectorCeiling
391 Eternity Slope_BacksectorFloorAndCeiling
392 Eternity Slope_BackFloorAndFrontCeiling
393 Eternity Slope_BackCeilingAndFrontFloor
394 Eternity Slope_FrontFloorToTaggedSlope
395 Eternity Slope_FrontCeilingToTaggedSlope
396 Eternity Slope_FrontFloorAndCeilingToTaggedSlope
397 Eternity Floor_Waggle (param)
398 Eternity Thing_Spawn (param)
399 Eternity Thing_SpawnNoFog (param)
400 EDGE Thick Extrafloor
400 Eternity Teleport_EndGame (param)
401 EDGE Thick Extrafloor (use upper texture)
402 EDGE Thick Extrafloor (use lower texture)
403 EDGE Liquid Extrafloor (Opaque)
404 EDGE Liquid Extrafloor (80% Translucent)
405 EDGE Liquid Extrafloor (60% Translucent)
406 EDGE Liquid Extrafloor (40% Translucent)
407 EDGE Liquid Extrafloor (20% Translucent)
408 EDGE Liquid Extrafloor (Invisible)
409 EDGE Translucent Linedef (80%)
410 EDGE Translucent Linedef (60%)
411 EDGE Translucent Linedef (40%)
412 EDGE Translucent Linedef (20%)
413 EDGE Thin Extrafloor (Opaque)
414 EDGE Thin Extrafloor (80% Translucent)
415 EDGE Thin Extrafloor (60% Translucent)
416 EDGE Thin Extrafloor (40% Translucent)
417 EDGE Thin Extrafloor (20% Translucent)
418 EDGE Enable Tagged RTS - S1
419 EDGE Enable Tagged RTS - SR
420 EDGE Enable Tagged RTS - W1
421 EDGE Enable Tagged RTS - WR
422 EDGE SCROLL RIGHT
423 EDGE SCROLL UP
424 EDGE SCROLL DOWN
425 EDGE SCROLL LEFT AND UP
426 EDGE SCROLL LEFT AND DOWN
427 EDGE SCROLL RIGHT AND UP
428 EDGE SCROLL RIGHT AND DOWN
429 EDGE SCROLL FAST LOWER AND MIDDLE TEXTURE (WATERFALLS)
434 EDGE S1, RAISE FLOOR 2 UNITS (USE FOR RTS ONHEIGHT EVENTS)
435 EDGE SR, RAISE FLOOR 2 UNITS (USE FOR RTS ONHEIGHT EVENTS)
436 EDGE W1, RAISE FLOOR 2 UNITS (USE FOR RTS ONHEIGHT EVENTS)
437 EDGE WR, RAISE FLOOR 2 UNITS (USE FOR RTS ONHEIGHT EVENTS)
438 EDGE G1, RAISE FLOOR 2 UNITS (USE FOR RTS ONHEIGHT EVENTS)
439 EDGE GR, RAISE FLOOR 2 UNITS (USE FOR RTS ONHEIGHT EVENTS)
440 EDGE Enable Tagged RTS - G1
441 EDGE Enable Tagged RTS - GR
442 EDGE Sliding door (LEFT), DR + MONSTERS
443 EDGE Sliding door (LEFT), DR
444 EDGE Sliding door (LEFT), DR + FAST
445 EDGE Sliding door (LEFT), D1
446 EDGE Sliding door (RIGHT), DR + MONSTERS
447 EDGE Sliding door (RIGHT), DR
448 EDGE Sliding door (RIGHT), DR + FAST
449 EDGE Sliding door (RIGHT), D1
450 EDGE Sliding door (CENTER), DR + MONSTERS
451 EDGE Sliding door (CENTER), DR
452 EDGE Sliding door (CENTER), DR + FAST
453 EDGE Sliding door (CENTER), D1
454 EDGE Enable Tagged RTS - W1 MONSTER
455 EDGE Enable Tagged RTS - WR MONSTER
456 EDGE Enable Tagged RTS - GR MONSTER
457 EDGE Disable Tagged RTS - SR
458 EDGE Disable Tagged RTS - WR
459 EDGE Disable Tagged RTS - GR
460 EDGE Disable Tagged RTS - WR MONSTER
461 EDGE Disable Tagged RTS - GR MONSTER
462 EDGE Mirror (Plain)
463 EDGE Mirror (White)
464 EDGE Mirror (Blue)
465 EDGE Mirror (Red)
466 EDGE Mirror (Green)
470 EDGE Ladder, 48 units high
471 EDGE Ladder, 80 units high
472 EDGE Ladder, 120 units high
473 EDGE Ladder, 160 units high
474 EDGE Ladder, 192 units high
475 EDGE Ladder, 256 units high
476 EDGE Ladder, 384 units high
477 EDGE Ladder, 512 units high
478 EDGE Ladder, 768 units high
479 EDGE Ladder, no limit
480 EDGE Portal (Dark 50%)
481 EDGE Portal (Light 30%)
482 EDGE Portal (Light 70%)
483 EDGE Portal (Blue 70%)
484 EDGE Portal (Green 70%)
485 EDGE Camera Portal (Plain)
486 EDGE Camera Portal (White)
487 EDGE Camera Portal (Cyan)
488 EDGE Camera Portal (Rusty)
489 EDGE Camera Portal (Green)
490 EDGE Green Key DOOR - DR
491 EDGE Green Key DOOR - D1
492 EDGE Green Key DOOR - SR
493 EDGE Green Key DOOR - S1
494 EDGE Green Key BLAZING DOOR - D1
501 EDGE Hub Exit to MAP01 / E1M1
502 EDGE Hub Exit to MAP02 / E1M2
503 EDGE Hub Exit to MAP03 / E1M3
504 EDGE Hub Exit to MAP04 / E1M4
505 EDGE Hub Exit to MAP05 / E1M5
506 EDGE Hub Exit to MAP06 / E1M6
507 EDGE Hub Exit to MAP07 / E1M7
508 EDGE Hub Exit to MAP08 / E1M8
509 EDGE Hub Exit to MAP09 / E1M9
510 EDGE Hub Exit to MAP10
511 EDGE Hub Exit to MAP11 / E2M1
512 EDGE Hub Exit to MAP12 / E2M2
513 EDGE Hub Exit to MAP13 / E2M3
514 EDGE Hub Exit to MAP14 / E2M4
515 EDGE Hub Exit to MAP15 / E2M5
516 EDGE Hub Exit to MAP16 / E2M6
517 EDGE Hub Exit to MAP17 / E2M7
518 EDGE Hub Exit to MAP18 / E2M8
519 EDGE Hub Exit to MAP19 / E2M9
520 EDGE Hub Exit to MAP20
521 EDGE Hub Exit to MAP21 / E3M1
522 EDGE Hub Exit to MAP22 / E3M2
523 EDGE Hub Exit to MAP23 / E3M3
524 EDGE Hub Exit to MAP24 / E3M4
525 EDGE Hub Exit to MAP25 / E3M5
526 EDGE Hub Exit to MAP26 / E3M6
527 EDGE Hub Exit to MAP27 / E3M7
528 EDGE Hub Exit to MAP28 / E3M8
529 EDGE Hub Exit to MAP29 / E3M9
530 EDGE Hub Exit to MAP30
531 EDGE Hub Exit to MAP31 / E4M1
532 EDGE Hub Exit to MAP32 / E4M2
533 EDGE Hub Exit to MAP33 / E4M3
534 EDGE Hub Exit to MAP34 / E4M4
535 EDGE Hub Exit to MAP35 / E4M5
536 EDGE Hub Exit to MAP36 / E4M6
537 EDGE Hub Exit to MAP37 / E4M7
538 EDGE Hub Exit to MAP38 / E4M8
539 EDGE Hub Exit to MAP39 / E4M9
567 EDGE Detail Slope - FLOOR
568 EDGE Detail Slope - CEILING
569 EDGE Detail Slope - FLOOR+CEILING
580 EDGE Gold Key DOOR - DR
581 EDGE Gold Key DOOR - D1
582 EDGE Gold Key DOOR - SR
583 EDGE Gold Key DOOR - S1
584 EDGE Silver Key DOOR - DR
585 EDGE Silver Key DOOR - D1
586 EDGE Silver Key DOOR - SR
587 EDGE Silver Key DOOR - S1
588 EDGE Brass Key DOOR - DR
589 EDGE Brass Key DOOR - D1
590 EDGE Copper Key DOOR - DR
591 EDGE Copper Key DOOR - D1
592 EDGE Steel Key DOOR - DR
593 EDGE Steel Key DOOR - D1
594 EDGE Wooden Key DOOR - DR
595 EDGE Wooden Key DOOR - D1
596 EDGE Fire Key DOOR - DR
597 EDGE Fire Key DOOR - D1
598 EDGE Water Key DOOR - DR
599 EDGE Water Key DOOR - D1
800 EDGE Align and rotate front sector's FLOOR
801 EDGE Align and rotate back sector's FLOOR
802 EDGE Align and rotate front sector's CEILING
803 EDGE Align and rotate back sector's CEILING
804 EDGE Align and rotate front sector's FLOOR+CEILING
805 EDGE Align and rotate back sector's FLOOR+CEILING
810 EDGE Align, scale and rotate front sector's FLOOR
811 EDGE Align, scale and rotate back sector's FLOOR
812 EDGE Align, scale and rotate front sector's CEILING
813 EDGE Align, scale and rotate back sector's CEILING
814 EDGE Align, scale and rotate front sector's FLOOR+CEILING
815 EDGE Align, scale and rotate back sector's FLOOR+CEILING
820 EDGE Scale front sector's FLOOR
821 EDGE Scale back sector's FLOOR
822 EDGE Scale front sector's CEILING
823 EDGE Scale back sector's CEILING
824 EDGE Scale front sector's FLOOR+CEILING
825 EDGE Scale back sector's FLOOR+CEILING

Differences between games[edit]

Line types originating from Doom (type 1—98 and 101—104) are part of the codebase that went into Heretic and Strife. However, there have been changes made which result in different behavior in these shared types. The first version of Final Doom has a minor change that was reverted in a later build.

Doom below version 1.25[edit]

The code specifying which sector to copy the data from was modified in version 1.25 for certain linedef specials, which resulted in an impact on the floors that descend into a blood pool in E3M1: Hell Keep.

Doom below version 1.4[edit]

Player and monster projectiles can trigger linedef types that can be triggered by monsters. From this version on only the new projectiles added in Doom 2 can trigger such linedef specials.

Final Doom[edit]

Teleporter lines behave slightly different in the first released build of this game. The height is not reset when teleporting, leading to drops from above if the destination is below the origination sector. This is fixed in the updated release.

Heretic[edit]

The game supports the linedef types 1–98 and 101–104 from Doom, with a few changes. Linedef types 99, 100, and 105–107 have different actions in Heretic. There is only one type of keys, with either a blue, green, or yellow color.

  • Type 4, 39, and 97 can be activated by all monsters and projectiles since there are no exceptions as found in later versions of Doom.
  • Type 7 and 8 raising stairs move four times faster.
  • Type 10 and 88 lifts cannot be activated by monsters.
  • Type 49 crusher does not move back and forth.
  • Type 70, 71, 98 floors lower always adjust the height to 8 above highest adjacent floor in Heretic, but in Doom only adjust if the adjacent floors are lower than the starting height.
  • Type 99 scrolls a texture to the right. Doom only had left-scrolling.
  • Type 100 WR, fast open door (closes after 6 seconds).
  • Type 105 W1, exit to secret level, this one is type 124 in Doom.
  • Type 106 W1, raise stairs with 16 unit steps, same speed as 7 and 8.
  • Type 107 S1, raise stairs with 16 unit steps, same speed as 7 and 8.

Hexen[edit]

In Hexen, linedef actions and triggers are independent of one another, instead of being hard-coded like Doom-format maps. Linedef types can be set directly on linedefs, or indirectly via ACS scripts.

Strife[edit]

Contains line types from Doom II up to type 141. Locked doors use different keys and there are also many more key types.

  • Type 6 crusher is twice as fast.
  • Type 11 exit can be parameterized to an arbitrary level by using the line's sector tag.
  • Type 25, 73 crushers deal no damage.
  • Type 31 door can be used by monsters.
  • Type 32, 33, 34 locked doors cannot be used by monsters, even once unlocked.
  • Type 36 floor movement does not make the sector "stick out" by eight units.
  • Type 44, 72 lowering ceilings deal damage.
  • Type 49 crusher deals no damage.
  • Type 51, 124 exits end the game instead of being a secret exit.
  • Type 52 exit can be parameterized to an arbitrary level by using the line's sector tag x100.
  • Type 58, 93 floors raise by 64 instead of 24.
  • Type 70, 71, 98 the floor always lower to be flush with the highest adjacent floor, without an 8 unit difference.
  • Type 77 crusher is twice as fast.
  • Type 134, 136 locked doors do not stay open.

Others[edit]

The Chex Quest series and Hacx make no changes to the game engine itself, only graphical and (in the case of Hacx) behavioral changes.

Terminology[edit]

In Boom (like Doom), actions are caused to happen through linedef types. Boom has three kinds of linedef types:

  • Regular - the linedef types that were already in Doom II v1.9
  • Extended - linedef types not in Doom II v1.9 but less than 8192 in value
  • Generalized - linedef types over 8192 in value that contain bit fields that independently control the actions of the sector affected.

A linedef with a non-zero linedef type is called a linedef trigger. A linedef trigger is always activated in one of three ways - pushing on the first sidedef of the linedef, walking over the linedef, or shooting the linedef with an impact weapon.

Linedefs activated by pushing on them come in two varieties. A manual linedef affects the sector on the second sidedef of the line pushed. A switched linedef affects all sectors that have the same tag field as the linedef that was pushed.

Nearly all switched, walkover, and gun linedefs operate on the sectors with the same tag as that in the tag field of the linedef.

Some linedefs are never activated per se, but simply create or control an effect through their existence and properties, usually affecting the sectors sharing the linedef's tags. There are also a few special cases like line-line teleporters and exit linedefs that do not affect sectors.

Some linedefs are only triggerable once, others are triggerable as many times as you like.

Triggering types are denoted by the letters P, S, W, and G for manual (push), switched, walkover, and gun. Their retriggerability is denoted by a 1 or R following the letter. So the triggering types for linedefs are:

P1 PR S1 SR W1 WR G1 GR

You will sometimes see triggering types D1 and DR mentioned. This is just different notation for the P1 and PR triggering types. The D stands for "door", which makes sense for the regular Doom types, but P (for "push") is more general—the Boom generalized types can be used to construct "manual" floors, ceilings, lifts, stairs and crushers in addition to doors.

Often linedef actions depend on values in neighboring sectors. A neighboring sector is one that shares a linedef in common, just sharing a vertex is not sufficient.

In Doom only one action on a sector could occur at a time. Boom supports one floor action, one ceiling action, and one lighting action simultaneously. Many Boom-supporting source ports also make this change.

Doors[edit]

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 thru 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.

Door functions[edit]

  • Open, Wait, Then Close - On activation, door opens fully, waits a specified period, then closes fully.
  • Open and Stay Open - On activation, door opens fully and remains there.
  • Close and Stay Closed - On activation, door closes fully, and remains there.
  • Close, Wait, Then Open - On activation, door closes fully, waits a specified period, then opens fully.

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 resp.

Since a push door (P1/PR) 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.

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.

A door can wait for different amounts of time.

A door may or may not be activatable 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]

Regular and extended door types
# Class Trig Lock Speed Wait Monst Function
1 Reg PR No Slow 4s Yes Open, Wait, Then Close
117 Reg PR No Fast 4s No Open, Wait, Then Close
63 Reg SR No Slow 4s No Open, Wait, Then Close
114 Reg SR No Fast 4s No Open, Wait, Then Close
29 Reg S1 No Slow 4s No Open, Wait, Then Close
111 Reg S1 No Fast 4s No Open, Wait, Then Close
90 Reg WR No Slow 4s No Open, Wait, Then Close
105 Reg WR No Fast 4s No Open, Wait, Then Close
4 Reg W1 No Slow 4s Yes Open, Wait, Then Close
108 Reg W1 No Fast 4s No Open, Wait, Then Close
31 Reg P1 No Slow -- No Open and Stay Open
118 Reg P1 No Fast -- No Open and Stay Open
61 Reg SR No Slow -- No Open and Stay Open
115 Reg SR No Fast -- No Open and Stay Open
103 Reg S1 No Slow -- No Open and Stay Open
112 Reg S1 No Fast -- No Open and Stay Open
86 Reg WR No Slow -- No Open and Stay Open
106 Reg WR No Fast -- No Open and Stay Open
2 Reg W1 No Slow -- No Open and Stay Open
109 Reg W1 No Fast -- No Open and Stay Open
46 Reg GR No Slow -- Yes Open and Stay Open
42 Reg SR No Slow -- No Close and Stay Closed
116 Reg SR No Fast -- No Close and Stay Closed
50 Reg S1 No Slow -- No Close and Stay Closed
113 Reg S1 No Fast -- No Close and Stay Closed
75 Reg WR No Slow -- No Close and Stay Closed
107 Reg WR No Fast -- No Close and Stay Closed
3 Reg W1 No Slow -- No Close and Stay Closed
110 Reg W1 No Fast -- No Close and Stay Closed
196 Ext SR No Slow 30s No Close, Wait, Then Open
175 Ext S1 No Slow 30s No Close, Wait, Then Open
76 Reg WR No Slow 30s No Close, Wait, Then Open
16 Reg W1 No Slow 30s No Close, Wait, Then Open
Regular and extended locked door types
# Class Trig Lock Speed Wait Monst Function
26 Reg PR Blue Slow 4s No Open, Wait, Then Close
28 Reg PR Red Slow 4s No Open, Wait, Then Close
27 Reg PR Yell Slow 4s No Open, Wait, Then Close
32 Reg P1 Blue Slow -- No Open and Stay Open
33 Reg P1 Red Slow -- No Open and Stay Open
34 Reg P1 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
# Class Trig Lock Speed Wait Monst Function
3C00H-4000H Gen P1/PR 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
# Class Trig Lock Speed Wait Monst Function
3800H-3C00H Gen P1/PR 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

Floors[edit]

Floor targets[edit]

Lowest Neighbor Floor (LnF)
This means that the floor moves to the height of the lowest neighboring floor including the floor itself. If the floor direction is up (only possible with generalized floors) motion is instant, else at the floor's speed.
Next Neighbor Floor (NnF)
This means that the floor moves up to the height of the lowest adjacent floor greater in height than the current, or down to the height of the highest adjacent floor less in height than the current, as determined by the floor's direction. Instant motion is not possible in this case. If no such floor exists, the floor does not move.
Lowest Neighbor Ceiling (LnC)
This means that the floor height changes to the height of the lowest ceiling possessed by any neighboring sector, including that floor's ceiling. If the target height is in the opposite direction to floor motion, motion is instant, otherwise at the floor action's speed.
8 Under Lowest Neighbor Ceiling (8uLnC)
This means that the floor height changes to 8 less than the height of the lowest ceiling possessed by any neighboring sector, including that floor's ceiling. If the target height is in the opposite direction to floor motion, motion is instant, otherwise at the floor action's speed.
Highest Neighbor Floor (HnF)
This means that the floor height changes to the height of the highest neighboring floor, excluding the floor itself. If no neighbor floor exists, the floor moves down to -32000. If the target height is in the opposite direction to floor motion, the motion is instant, otherwise it occurs at the floor action's speed.
8 Above Highest Neighbor Floor (8aHnF)
This means that the floor height changes to 8 above the height of the highest neighboring floor, excluding the floor itself. If no neighbor floor exists, the floor moves down to -31992. If the target height is in the opposite direction to floor motion, the motion is instant, otherwise it occurs at the floor action's speed.
Ceiling
The floor moves up until it is at ceiling height, instantly if floor direction is down (only available with generalized types), at the floor speed if the direction is up.
24 Units (24)
The floor moves 24 units in the floor action's direction. Instant motion is not possible with this linedef type.
32 Units (32)
The floor moves 32 units in the floor action's direction. Instant motion is not possible with this linedef type.
512 Units (512)
The floor moves 512 units in the floor action's direction. Instant motion is not possible with this linedef type.
Shortest Lower Texture (SLT)
The floor moves to the height of the shortest lower texture on the boundary of the sector, in the floor direction. Instant motion is not possible with this type. In the case that there is no surrounding texture the motion is to -32000 or +32000 depending on direction.
None
Some pure texture type changes are provided for changing the floor texture and/or sector type without moving the floor.

Varieties of floors[edit]

A floor can be activated by pushing on a linedef bounding it (generalized types only), or by pushing on a switch with the same tag as the floor sector, or by walking over a linedef with the same tag as the floor, or by shooting a linedef with the same tag as the floor with an impact weapon.

A floor can move either Up or Down.

A floor can move with speeds of Slow, Normal, Fast, or Turbo. If the target height specified by the floor function (see Floor Targets above) is in the opposite direction to the floor's motion, then travel is instantaneous, otherwise it happens at the speed specified.

A floor action can be a texture change type, in which case after the action the floor texture of the affected floor, and possibly the sector type of the affected floor are changed to those of a model sector. The sector type may be zeroed instead of copied from the model, or not changed at all. These change types are referred to below as Tx (texture only), Tx0 (type zeroed), and TxTy (texture and type changed). The model sector for the change may be the sector on the first sidedef of the trigger (trigger model) or the sector with floor at destination height across the lowest numbered two-sided linedef surrounding the affected sector (numeric model). If no model sector exists, no change occurs. If a change occurs, floor texture is always affected, lighting is never affected, even that corresponding to the sector's type, nor is any other sector property other than the sector's type.

Numeric model algorithm:

  1. Find all floors adjacent to the tagged floor at destination height
  2. Find the lowest numbered linedef separating those floors from that tagged
  3. The sector on the other side of that linedef is the model

A floor action can have the crush property, in which case players and monsters are crushed when the floor tries to move above the point where they fit exactly underneath the ceiling. This means they take damage until they die, leave the sector, or the floor action is stopped.

A floor action never reverses on encountering an obstacle, even if the crush property is not true, the floor merely remains in the same position until the obstacle is removed or dies, then continues.

Floor linedef types[edit]

Regular and extended floor types
# Class Trig Dir Spd Chg Mdl Mon Crsh Target
60 Reg SR Dn Slow None -- No No Lowest Neighbor Floor
23 Reg S1 Dn Slow None -- No No Lowest Neighbor Floor
82 Reg WR Dn Slow None -- No No Lowest Neighbor Floor
38 Reg W1 Dn Slow None -- No No Lowest Neighbor Floor
177 Ext SR Dn Slow TxTy Num No No Lowest Neighbor Floor
159 Ext S1 Dn Slow TxTy Num No No Lowest Neighbor Floor
84 Reg WR Dn Slow TxTy Num No No Lowest Neighbor Floor
37 Reg W1 Dn Slow TxTy Num No No Lowest Neighbor Floor
69 Reg SR Up Slow None -- No No Next Neighbor Floor
18 Reg S1 Up Slow None -- No No Next Neighbor Floor
128 Reg WR Up Slow None -- No No Next Neighbor Floor
119 Reg W1 Up Slow None -- No No Next Neighbor Floor
132 Reg SR Up Fast None -- No No Next Neighbor Floor
131 Reg S1 Up Fast None -- No No Next Neighbor Floor
129 Reg WR Up Fast None -- No No Next Neighbor Floor
130 Reg W1 Up Fast None -- No No Next Neighbor Floor
222 Ext SR Dn Slow None -- No No Next Neighbor Floor
221 Ext S1 Dn Slow None -- No No Next Neighbor Floor
220 Ext WR Dn Slow None -- No No Next Neighbor Floor
219 Ext W1 Dn Slow None -- No No Next Neighbor Floor
64 Reg SR Up Slow None -- No No Lowest Neighbor Ceiling
101 Reg S1 Up Slow None -- No No Lowest Neighbor Ceiling
91 Reg WR Up Slow None -- No No Lowest Neighbor Ceiling
5 Reg W1 Up Slow None -- No No Lowest Neighbor Ceiling
24 Reg G1 Up Slow None -- No No Lowest Neighbor Ceiling
65 Reg SR Up Slow None -- No Yes Lowest Neighbor Ceiling - 8
55 Reg S1 Up Slow None -- No Yes Lowest Neighbor Ceiling - 8
94 Reg WR Up Slow None -- No Yes Lowest Neighbor Ceiling - 8
56 Reg W1 Up Slow None -- No Yes Lowest Neighbor Ceiling - 8
45 Reg SR Dn Slow None -- No No Highest Neighbor Floor
102 Reg S1 Dn Slow None -- No No Highest Neighbor Floor
83 Reg WR Dn Slow None -- No No Highest Neighbor Floor
19 Reg W1 Dn Slow None -- No No Highest Neighbor Floor
70 Reg SR Dn Fast None -- No No Highest Neighbor Floor + 8
71 Reg S1 Dn Fast None -- No No Highest Neighbor Floor + 8
98 Reg WR Dn Fast None -- No No Highest Neighbor Floor + 8
36 Reg W1 Dn Fast None -- No No Highest Neighbor Floor + 8
180 Ext SR Up Slow None -- No No Absolute 24
161 Ext S1 Up Slow None -- No No Absolute 24
92 Reg WR Up Slow None -- No No Absolute 24
58 Reg W1 Up Slow None -- No No Absolute 24
179 Ext SR Up Slow TxTy Trg No No Absolute 24
160 Ext S1 Up Slow TxTy Trg No No Absolute 24
93 Reg WR Up Slow TxTy Trg No No Absolute 24
59 Reg W1 Up Slow TxTy Trg No No Absolute 24
176 Ext SR Up Slow None -- No No Abs Shortest Lower Texture
158 Ext S1 Up Slow None -- No No Abs Shortest Lower Texture
96 Reg WR Up Slow None -- No No Abs Shortest Lower Texture
30 Reg W1 Up Slow None -- No No Abs Shortest Lower Texture
178 Ext SR Up Slow None -- No No Absolute 512
140 Reg S1 Up Slow None -- No No Absolute 512
147 Ext WR Up Slow None -- No No Absolute 512
142 Ext W1 Up Slow None -- No No Absolute 512
190 Ext SR -- ---- TxTy Trg No No None
189 Ext S1 -- ---- TxTy Trg No No None
154 Ext WR -- ---- TxTy Trg No No None
153 Ext W1 -- ---- TxTy Trg No No None
78 Ext SR -- ---- TxTy Num No No None
241 Ext S1 -- ---- TxTy Num No No None
240 Ext WR -- ---- TxTy Num No No None
239 Ext W1 -- ---- TxTy Num No No None

The following tables show the possibilities for generalized floor linedef type parameters. Any combination of parameters is allowed:

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

Generalized floor types
# Class Trig Dir Spd Chg¹ Mdl² Mon Crsh Target
6000H-7FFFH Gen P1/PR Up Slow None Trg Yes Yes Lowest Neighbor Floor
S1/SR Dn Normal Tx Num No No Next Neighbor Floor
W1/WR Fast Tx0 Lowest Neighbor Ceiling
G1/GR Turbo TxTy Highest Neighbor Floor
Ceiling
24
32
Shortest Lower Texture
  1. Chg - Mon(ster) enabled must be No if Chg field is not None
    • Tx = Texture copied only
    • Tx0 = Texture copied and Type->0
    • TxTy = Texture and Type copied
  2. Mdl
    • Trg = Trigger Model
    • Num = Numeric Model

Ceilings[edit]

Ceiling targets[edit]

Highest Neighbor Ceiling (HnC)
This means that the ceiling moves to the height of the highest neighboring ceiling NOT including the ceiling itself. If the ceiling direction is down (only possible with generalized ceilings) motion is instant, else at the ceiling's speed. If no adjacent ceiling exists the ceiling moves to -32000 units.
Next Neighbor Ceiling (NnC)
This means that the ceiling moves up to the height of the lowest adjacent ceiling greater in height than the current, or to the height of the highest adjacent ceiling less in height than the current, as determined by the ceiling's direction. Instant motion is not possible in this case. If no such ceiling exists, the ceiling does not move.
Lowest Neighbor Ceiling (LnC)
This means that the ceiling height changes to the height of the lowest ceiling possessed by any neighboring sector, NOT including itself. If the target height is in the opposite direction to ceiling motion, motion is instant, otherwise at the ceiling action's speed. If no adjacent ceiling exists the ceiling moves to 32000 units.
Highest Neighbor Floor (HnF)
This means that the ceiling height changes to the height of the highest neighboring floor, excluding the ceiling's floor itself. If no neighbor floor exists, the ceiling moves down to -32000 or the ceiling's floor, whichever is higher. If the target height is in the opposite direction to ceiling motion, the motion is instant, otherwise it occurs at the ceiling action's speed.
Floor
The ceiling moves down until its at floor height, instantly if ceiling direction is up (only available with generalized types), at the ceiling speed if the direction is down.
8 Above Floor (8aF)
This means that the ceiling height changes to 8 above the height of the ceiling's floor. If the target height is in the opposite direction to ceiling motion, the motion is instant, otherwise it occurs at the ceiling action's speed.
24 Units (24)
The ceiling moves 24 units in the ceiling action's direction. Instant motion is not possible with this linedef type.
32 Units (32)
The ceiling moves 32 units in the ceiling action's direction. Instant motion is not possible with this linedef type.
Shortest Upper Texture (SUT)
The ceiling moves the height of the shortest upper texture on the boundary of the sector, in the ceiling direction. Instant motion is not possible with this type. In the case that there is no surrounding texture the motion is to -32000 or +32000 depending on direction.

Varieties of ceilings[edit]

A ceiling can be activated by pushing on a linedef bounding it (generalized types only), or by pushing on a switch with the same tag as the ceiling sector, or by walking over a linedef with the same tag as the ceiling, or by shooting a linedef with the same tag as the ceiling with an impact weapon (generalized types only).

A ceiling can move either Up or Down.

A ceiling can move with speeds of Slow, Normal, Fast, or Turbo. If the target height specified by the ceiling function (see Ceiling Targets above) is in the opposite direction to the ceiling's motion, then travel is instantaneous, otherwise its at the speed specified.

A ceiling action can be a texture change type, in which case after the action the ceiling texture of the affected ceiling, and possibly the sector type of the affected ceiling are changed to those of a model sector. The sector type may be zeroed instead of copied from the model, or not changed at all. These change types are referred to below as Tx (texture only), Tx0 (type set to 0), and TxTy (texture and type copied from model). The model sector for the change may be the sector on the first sidedef of the trigger (trigger model) or the sector with ceiling at destination height across the lowest numbered two-sided linedef surrounding the affected sector (numeric model). If no model sector exists, no change occurs. If a change occurs, ceiling texture is always affected, lighting is never affected, even that corresponding to the sector's type, nor is any other sector property other than the sector's type.

Numeric model algorithm:

  1. Find all ceilings adjacent to the tagged ceiling at destination height
  2. Find the lowest numbered linedef separating those ceilings from that tagged
  3. The sector on the other side of that linedef is the model

A ceiling action can have the crush property (generalized types only), in which case players and monsters are crushed when the ceiling tries to move below the point where they fit exactly underneath the ceiling. This means they take damage until they die, leave the sector, or the ceiling action is stopped. A ceiling action never reverses on encountering an obstacle, even if the crush property is not true, the ceiling merely remains in the same position until the obstacle is removed or dies, then continues.

Ceiling linedef types[edit]

Regular and extended ceiling types
# Class Trig Dir Spd Chg¹ Mdl² Mon Crsh Target
43 Reg SR Dn Fast None -- No No Floor
41 Reg S1 Dn Fast None -- No No Floor
152 Ext WR Dn Fast None -- No No Floor
145 Ext W1 Dn Fast None -- No No Floor
186 Ext SR Up Slow None -- No No Highest Neighbor Ceiling
166 Ext S1 Up Slow None -- No No Highest Neighbor Ceiling
151 Ext WR Up Slow None -- No No Highest Neighbor Ceiling
40 Reg W1 Up Slow None -- No No Highest Neighbor Ceiling
187 Ext SR Dn Slow None -- No No 8 Above Floor
167 Ext S1 Dn Slow None -- No No 8 Above Floor
72 Reg WR Dn Slow None -- No No 8 Above Floor
44 Reg W1 Dn Slow None -- No No 8 Above Floor
205 Ext SR Dn Slow None -- No No Lowest Neighbor Ceiling
203 Ext S1 Dn Slow None -- No No Lowest Neighbor Ceiling
201 Ext WR Dn Slow None -- No No Lowest Neighbor Ceiling
199 Ext W1 Dn Slow None -- No No Lowest Neighbor Ceiling
206 Ext SR Dn Slow None -- No No Highest Neighbor Floor
204 Ext S1 Dn Slow None -- No No Highest Neighbor Floor
202 Ext WR Dn Slow None -- No No Highest Neighbor Floor
200 Ext W1 Dn Slow None -- No No Highest Neighbor Floor
Generalized ceiling types
# Class Trig Dir Spd Chg¹ Mdl² Mon Crsh Target
4000H-5FFFH Gen P1/PR Up Slow None Trg Yes Yes Highest Neighbor Ceiling
S1/SR Dn Normal Tx Num No No Next Neighbor Ceiling
W1/WR Fast Tx0 Lowest Neighbor Ceiling
G1/GR Turbo TxTy Highest Neighbor Floor
Floor
24
32
Shortest Upper Texture
  1. Chg - Mon(ster) enabled must be No if Chg field is not None
    • Tx = Texture copied only
    • Tx0 = Texture copied and Type->0
    • TxTy = Texture and Type copied
  2. Mdl
    • Trg = Trigger Model
    • Num = Numeric Model

Platforms (lifts)[edit]

A platform is basically a floor action involving two heights. The simple raise platform actions, for example, differ from the corresponding floor actions in that if they encounter an obstacle, they reverse direction and return to their former height.

The most often used kind of platform is a lift which travels from its current height to the target height, then waits a specified time and returns to it former height.

Platform targets[edit]

Lowest Neighbor Floor
This means that the platforms "low" height is the height of the lowest surrounding floor, including the platform itself. The "high" height is the original height of the floor.
Next Lowest Neighbor Floor
This means that the platforms "low" height is the height of the highest surrounding floor lower than the floor itself. If no lower floor exists, no motion occurs as the "low" and "high" heights are then both equal to the floors current height.
Lowest Neighbor Ceiling
This means that the platforms "low" height is the height of the lowest surrounding ceiling unless this is higher than the floor itself. If no adjacent ceiling exists, or is higher than the floor no motion occurs as the "low" and "high" heights are then both equal to the floors current height.
Lowest and Highest Floor
This target sets the "low" height to the lowest neighboring floor, including the floor itself, and the "high" height to the highest neighboring floor, including the floor itself. When this target is used the floor moves perpetually between the two heights. Once triggered this type of linedef runs permanently, even if the motion is temporarily suspended with a Stop type. No other floor action can be commanded on the sector after this type is begun.
Ceiling
This target sets the "high" height to the ceiling of the sector and the "low" height to the floor height of the sector and is only used in the instant toggle type that switches the floor between the ceiling and its original height on each activation. This is also the ONLY instant platform type.
Raise Next Floor
This means that the "high" height is the lowest surrounding floor higher than the platform. If no higher adjacent floor exists no motion will occur.
Raise 24 Units
The "low" height is the original floor height, the "high" height is 24 more.
Raise 32 Units
The "low" height is the original floor height, the "high" height is 32 more.

Varieties of platforms[edit]

A platform can be activated by pushing on a linedef bounding it (generalized types only), or by pushing on a switch with the same tag as the platform sector, or by walking over a linedef with the same tag as the platform, or by shooting a linedef with the same tag as the platform with an impact weapon.

A platform can move with speeds of Slow, Normal, Fast, or Turbo. Only the instant toggle platform moves instantly, all others move at the platform's speed.

A platform can have a delay, in between when it reaches "high" height and returns to "low" height, or at both ends of the motion in the case of perpetual lifts.

A platform action can be a texture change type, in which case after the action the floor texture of the affected floor, and possibly the sector type of the affected floor are changed to those of a model sector. The sector type may be zeroed instead of copied from the model, or not changed at all. These change types are referred to below as Tx (texture only), Tx0 (type zeroed), and TxTy (texture and type changed). The model sector for the change is always the sector on the first sidedef of the trigger (trigger model). If a change occurs, floor texture is always affected, lighting is never affected, even that corresponding to the sector's type, nor is any other sector property other than the sector's type.

Platform linedef types[edit]

Regular and extended platform types
# Class Trig Dly Spd Chg Mdl Mon Target
66 Reg SR -- Slow Tx Trg No Raise 24 Units
15 Reg S1 -- Slow Tx Trg No Raise 24 Units
148 Ext WR -- Slow Tx Trg No Raise 24 Units
143 Ext W1 -- Slow Tx Trg No Raise 24 Units
67 Reg SR -- Slow Tx0 Trg No Raise 32 Units
14 Reg S1 -- Slow Tx0 Trg No Raise 32 Units
149 Ext WR -- Slow Tx0 Trg No Raise 32 Units
144 Ext W1 -- Slow Tx0 Trg No Raise 32 Units
68 Reg SR -- Slow Tx0 Trg No Raise Next Floor
20 Reg S1 -- Slow Tx0 Trg No Raise Next Floor
95 Reg WR -- Slow Tx0 Trg No Raise Next Floor
22 Reg W1 -- Slow Tx0 Trg No Raise Next Floor
47 Reg G1 -- Slow Tx0 Trg No Raise Next Floor
181 Ext SR 3s Slow None -- No Lowest and Highest Floor (perpetual)
162 Ext S1 3s Slow None -- No Lowest and Highest Floor (perpetual)
87 Reg WR 3s Slow None -- No Lowest and Highest Floor (perpetual)
53 Reg W1 3s Slow None -- No Lowest and Highest Floor (perpetual)
182 Ext SR -- ---- ---- -- -- Stop
163 Ext S1 -- ---- ---- -- -- Stop
89 Reg WR -- ---- ---- -- -- Stop
54 Reg W1 -- ---- ---- -- -- Stop
62 Reg SR 3s Slow None -- No Lowest Neighbor Floor (lift)
21 Reg S1 3s Slow None -- No Lowest Neighbor Floor (lift)
88 Reg WR 3s Slow None -- Yes Lowest Neighbor Floor (lift)
10 Reg W1 3s Slow None -- Yes Lowest Neighbor Floor (lift)
123 Reg SR 3s Fast None -- No Lowest Neighbor Floor (lift)
122 Reg S1 3s Fast None -- No Lowest Neighbor Floor (lift)
120 Reg WR 3s Fast None -- No Lowest Neighbor Floor (lift)
121 Reg W1 3s Fast None -- No Lowest Neighbor Floor (lift)
211 Ext SR -- Inst None -- No Ceiling (toggle)
212 Ext WR -- Inst None -- No Ceiling (toggle)
Generalized platform types
# Class Trig Dly Spd Mon Target
3400H-37FFH Gen P1/PR 1s Slow Yes Lowest Neighbor Floor
S1/SR 3s Normal No Next Lowest Neighbor Floor
W1/WR 5s Fast Lowest Neighbor Ceiling
G1/GR 10s Turbo Lowest and Highest Floor (perpetual)

Crusher ceilings[edit]

A crusher ceiling is a linedef type that causes the ceiling to cycle between its starting height and 8 above the floor, damaging monsters and players that happen to be in-between. Barrels explode when crushed.

Once a crusher ceiling is started it remains running for the remainder of the level even if temporarily suspended with a stop type. No other ceiling action can be used in that sector thereafter.

Varieties of crushers[edit]

A crusher can be activated by pushing on a linedef bounding it (generalized types only), or by pushing on a switch with the same tag as the crusher sector, or by walking over a linedef with the same tag as the crusher, or by shooting a linedef with the same tag as the crusher with an impact weapon (generalized types only).

A crusher has a speed: slow, normal, fast, or turbo. The slower the speed, the more damage the crusher does when crushing, simply through being applied longer. When a slow or normal crusher is moving down and encounters something to crush, it slows down even more, by a factor of 8. This persists until it reaches bottom of its stroke and starts upward again. Fast and turbo crushers do not slow down.

A crusher can be silent. The regular silent crusher makes platform stop and start noises at the top and bottom of its stroke. The generalized silent crusher is completely quiet.

A crusher linedef is provided to stop a crusher in its current position. Care should be taken that this does not lock the player out of an area of the level if the crusher is too low to pass under. A crusher can be restarted, but not changed, with any crusher-start linedef.

Crusher linedef types[edit]

Regular and extended crusher types
# Class Trig Spd Mon Silent Action
184 Ext SR Slow No No Start
49 Reg S1 Slow No No Start
73 Reg WR Slow No No Start
25 Reg W1 Slow No No Start
183 Ext SR Fast No No Start
164 Ext S1 Fast No No Start
77 Reg WR Fast No No Start
6 Reg W1 Fast No No Start
185 Ext SR Slow No Yes Start
165 Ext S1 Slow No Yes Start
150 Ext WR Slow No Yes Start
141 Reg W1 Slow No Yes Start
188 Ext SR ---- -- -- Stop
168 Ext S1 ---- -- -- Stop
74 Reg WR ---- -- -- Stop
57 Reg W1 ---- -- -- Stop
Generalized crusher types
# Class Trig Spd Mon Silent
2F80H-2FFFH Gen P1/PR Slow Yes Yes
S1/SR Normal No No
W1/WR Fast
G1/GR Turbo

Stair builders[edit]

A stair builder is a linedef type that sets a sequence of sectors defined by a complex rule to an ascending or descending sequence of heights.

The rule for stair building is as follows:

  1. The first step to rise or fall is the tagged sector. It rises or falls by the stair stepsize, at the stair speed, in the stair direction.
  2. To find the next step (sector) affected examine each two-sided linedef with first sidedef facing into the previous step in numerical order. For each such linedef if the sector on the other side is already active, or has already risen from this stair, the linedef is skipped. If textures are not ignored then any linedef with a different floor texture on its second side is also skipped. The next step to rise is the sector on the other side of the first linedef not skipped. If none exists, stair building ceases.

    The next step moves to the height of the previous step plus or minus the stepsize depending on the direction the stairs build, up or down. If the motion is in the same direction as the stairs build, it occurs at stair build speed, otherwise it is instant.

  3. Repeat step 2 until stair building ceases.

Varieties of stair builders[edit]

A stair can be activated by pushing on a linedef bounding it (generalized types only), or by pushing on a switch with the same tag as the stair sector, or by walking over a linedef with the same tag as the stair, or by shooting a linedef with the same tag as the stair with an impact weapon (generalized types only).

Only extended and generalized stair types are retriggerable. The extended retriggerable stairs are mostly useless, though triggering a stair with stepsize 8 twice might be used. The generalized retriggerable stairs alternate building up and down on each activation which is much more useful.

A stair can build up or down (generalized types only).

A stair can have a step size of 4, 8, 16, or 24. Only generalized types support stepsize of 4 or 24.

A stair can have build speeds of slow, normal, fast or turbo. Only generalized types support speeds of normal or turbo.

A stair can stop on encountering a different texture or ignore (generalized types only) different textures and continue.

Only the regular build fast, stepsize 16 stair has the property that monsters and players can be crushed by the motion, all others do not crush.

Stair builder linedef types[edit]

Regular and extended stairs types
# Class Trig Dir Spd Step Ignore Mon
258 Ext SR Up Slow 8 No No
7 Reg S1 Up Slow 8 No No
256 Ext WR Up Slow 8 No No
8 Reg W1 Up Slow 8 No No
259 Ext SR Up Fast 16 No No
127 Reg S1 Up Fast 16 No No
257 Ext WR Up Fast 16 No No
100 Reg W1 Up Fast 16 No No
Generalized stairs types
# Class Trig Dir Spd Step Ignore Mon
3000H-33FFH Gen P1/PR Up Slow 4 Yes Yes
S1/SR Dn Normal 8 No No
W1/WR Fast 16
G1/GR Turbo 24

Elevators[edit]

An elevator is a linedef type that moves both floor and ceiling together. All elevator linedefs are extended, there are no regular or generalized elevator types. Instant elevator motion is not possible, and monsters cannot activate elevators. All elevator triggers are either switched or walkover.

Elevator targets[edit]

Next Highest Floor
The elevator floor moves to the lowest adjacent floor higher than the elevator's floor, the ceiling staying the same height above the floor. If there is no higher floor the elevator does not move.
Next Lowest Floor
The elevator floor moves to the highest adjacent floor lower than the current floor, the ceiling staying the same height above the floor. If there is no lower floor the elevator does not move.
Current Floor
The elevator floor moves to the height of the floor on the first sidedef of the triggering line, the ceiling remaining the same height above the elevator floor.

Elevator linedef types[edit]

Extended elevator types
# Class Trig Spd Target
230 Ext SR Fast Next Highest Floor
229 Ext S1 Fast Next Highest Floor
228 Ext WR Fast Next Highest Floor
227 Ext W1 Fast Next Highest Floor
234 Ext SR Fast Next Lowest Floor
233 Ext S1 Fast Next Lowest Floor
232 Ext WR Fast Next Lowest Floor
231 Ext W1 Fast Next Lowest Floor
238 Ext SR Fast Current Floor
237 Ext S1 Fast Current Floor
236 Ext WR Fast Current Floor
235 Ext W1 Fast Current Floor

Lighting[edit]

The lighting linedef types change the lighting in the tagged sector. All are regular or extended types, there are no generalized lighting types. All are switched or walkovers.

Lighting targets[edit]

Lights to Minimum Neighbor
Each tagged sector is set to the minimum light level found in any adjacent sector. The tagged sectors are changed in numerical order, and this may influence the result.
Lights to Maximum Neighbor
Each tagged sector is set to the maximum light level found in any adjacent sector. The tagged sectors are changed in numerical order, and this may influence the result.
Blinking
Each tagged sector begins blinking between two light levels. The brighter level is the light level in the tagged sector. The darker level is the minimum neighbor light level, or 0 if all neighbor sectors have lighting greater than or equal to the sector's at the time of activation. The blinking is non-synchronous, beginning 1-9 gametics after activation, with a dark period of 1 sec (35 gametics) and a bright period of 1/7 sec (5 gametics).
35 Units
Each tagged sector is set to a light level of 35 units.
255 Units
Each tagged sector is set to a light level of 255 units.

Lighting linedef types[edit]

Regular and extended lighting types
# Class Trig Target
139 Reg SR 35 Units
170 Ext S1 35 Units
79 Reg WR 35 Units
35 Reg W1 35 Units
138 Reg SR 255 Units
171 Ext S1 255 Units
81 Reg WR 255 Units
13 Reg W1 255 Units
192 Ext SR Maximum Neighbor
169 Ext S1 Maximum Neighbor
80 Reg WR Maximum Neighbor
12 Reg W1 Maximum Neighbor
194 Ext SR Minimum Neighbor
173 Ext S1 Minimum Neighbor
157 Ext WR Minimum Neighbor
104 Reg W1 Minimum Neighbor
193 Ext SR Blinking
172 Ext S1 Blinking
156 Ext WR Blinking
17 Reg W1 Blinking

Exits[edit]

An exit linedef type ends the current level, bringing up the intermission screen with its report of kills/items/secrets (or frags in the case of deathmatch). Obviously, none are retriggerable, and none require tags, since no sector is affected.

Exit varieties[edit]

An exit can be activated by pushing on a switch with the exit type or by walking over a linedef with the exit type, or by shooting a linedef with the exit type with an impact weapon.

An exit can be normal or secret. The normal exit simply ends the level and takes the player to the next level via the intermission screen. The secret exit only works on certain levels depending on the IWAD being played:

  • In Doom/Ultimate Doom, a secret exit on any level leads to the secret level for that episode, but a normal exit on that level always returns the player to the "next" level (E1M4, E2M6, E3M7, or E4M3 respectively). This can be exploited as a special effect in PWADs, causing the player to skip or repeat levels.
  • In Doom II, a secret exit can lead from MAP15 to MAP31 or from MAP31 to MAP32. If a secret exit is used in any other level, it instead resets the current level, unless the player entered the current level via -warp or idclev, in which case he is taken to MAP01. A normal exit from MAP31 or MAP32 goes to MAP16.

Exit linedef types[edit]

Regular and extended exit types
# Class Trig Type
11 Reg S1 Normal
52 Reg W1 Normal
197 Ext G1 Normal
51 Reg S1 Secret
124 Reg W1 Secret
198 Ext G1 Secret

Teleporters[edit]

A teleporter is a linedef that when crossed or switched makes the player or monster appear elsewhere in the level. There are only regular and extended teleporters, no generalized teleporters exist. Teleporters are the only direction sensitive walkover triggers in Doom (to allow them to be exited without teleporting again). They must be crossed from the first sidedef side in order to work.

The place that the player or monster appears is set in one of two ways. The more common is by a teleport thing in the sector tagged to the teleport line. The newer completely player preserving line-line silent teleport makes the player appear relative to the exit line (identified by having the same tag as the entry line) with the same orientation, position, momentum and height that they had relative to the entry line just before teleportation. A special kind of line-line teleporter is also provided that reverses the player's orientation by 180 degrees.

In the case of several lines tagged the same as the teleport line, or several sectors tagged the same, or several teleport things in the tagged sector, in all cases the lowest numbered one is used.

In Doom crossing a W1 teleport line in the wrong direction used it up, and it was never activatable. In Boom this is not the case, it does not teleport but remains active until next crossed in the right direction.

If the exit of a teleporter is blocked a monster (or anything besides a player) will not teleport through it. However, a player will teleport, including into a down crusher, a monster, or another player. In the latter two cases the monster/player occupying the spot dies messily, and this is called a telefrag. On MAP30, monsters can and will telefrag other monsters or players.

Teleporter varieties[edit]

A teleporter can be walkover or switched, and retriggerable or not.

A teleporter can have destination set by a teleport thing in the tagged sector, or by a line tagged the same as the teleport line. These are called thing teleporters and line teleporters respectively.

A teleporter can preserve orientation or set orientation from the position, height, and angle of the teleport thing. Note a thing destination teleporter always sets position, though it may preserve orientation otherwise.

A teleporter can produce green fog and a whoosh noise, or it can be silent, in which case it does neither.

A teleporter can transport monsters only, or both players and monsters.

Teleporter linedef types[edit]

Regular and extended teleporter types
# Class Trig Silent Mon Plyr Orient Dest
195 Ext SR No Yes Yes Set TP thing in tagged sector
174 Ext S1 No Yes Yes Set TP thing in tagged sector
97 Reg WR No Yes Yes Set TP thing in tagged sector
39 Reg W1 No Yes Yes Set TP thing in tagged sector
126 Reg WR No Yes No Set TP thing in tagged sector
125 Reg W1 No Yes No Set TP thing in tagged sector
269 Ext WR Yes Yes No Set TP thing in tagged sector
268 Ext W1 Yes Yes No Set TP thing in tagged sector
210 Ext SR Yes Yes Yes Preserve TP thing in tagged sector
209 Ext S1 Yes Yes Yes Preserve TP thing in tagged sector
208 Ext WR Yes Yes Yes Preserve TP thing in tagged sector
207 Ext W1 Yes Yes Yes Preserve TP thing in tagged sector
244 Ext WR Yes Yes Yes Preserve Line with same tag
243 Ext W1 Yes Yes Yes Preserve Line with same tag
263 Ext WR Yes Yes Yes Preserve Line with same tag (reversed)
262 Ext W1 Yes Yes Yes Preserve Line with same tag (reversed)
267 Ext WR Yes Yes No Preserve Line with same tag
266 Ext W1 Yes Yes No Preserve Line with same tag
265 Ext WR Yes Yes No Preserve Line with same tag (reversed)
264 Ext W1 Yes Yes No Preserve Line with same tag (reversed)

Donuts[edit]

A donut is a very specialized linedef type that lowers a pillar in a surrounding pool, while raising the pool and changing its texture and type.

The tagged sector is the pillar, and its lowest numbered line must be two-sided. The sector on the other side of that is the pool. The pool must have a two-sided line whose second sidedef does not adjoin the pillar, and the sector on the second side of the lowest numbered such linedef is the model for the pool's texture change. The model sector floor also provides the destination height both for lowering the pillar and raising the pool.

No generalized donut linedefs exist, and all are switched or walkover.

Donut linedef types[edit]

Regular and extended donut types
# Class Trig
191 Ext SR
9 Reg S1
155 Ext WR
146 Ext W1

Property transfer[edit]

These linedefs are special purpose and are used to transfer properties from the linedef itself or the sector on its first sidedef to the tagged sector(s). None are triggered, they simply exist.

Extended property transfer linedefs
213 Ext -- Set Tagged Floor Lighting to Lighting on 1st Sidedef's Sector

Used to give the floor of a sector a different light level from the remainder of the sector. For example bright lava in a dark room.

261 Ext -- Set Tagged Ceiling Lighting to Lighting on 1st Sidedef's Sector

Used to give the ceiling of a sector a different light level from the remainder of the sector.

260 Ext -- Make Tagged Lines (or this line if tag==0) Translucent

Used to make 2s normal textures translucent. If tag==0, then this linedef's normal texture is made translucent if it is 2s, and the default translucency map TRANMAP is used as the filter. If tag!=0, then all similarly-tagged 2s linedefs' normal textures are made translucent, and if this linedef's first sidedef contains a valid lump name for its middle texture (as opposed to a texture name), and the lump is 64K long, then that lump will be used as the translucency filter instead of the default TRANMAP, allowing different filters to be used in different parts of the same maps. If the first side's normal texture is not a valid translucency filter lump name, it must be a valid texture name, and will be displayed as such on this linedef.

242 Ext -- Set Tagged Lighting, Flats Heights to 1st Sidedef's Sector, and set colormap based on sidedef textures.

The 242 linedef type makes sectors in game "look" different than how their physical proportions really are by copying the sector height values from another sector. This action allows the tagged sector to have two levels -- an actual floor and ceiling, and another floor or ceiling where more flats are rendered. Things will stand on the actual floor or hang from the actual ceiling, while this function provides another rendered floor and ceiling at the heights of the sector on the first sidedef of the linedef. Typical use is "deep water" that can be over the player's head.

    ----------------------------------  < real sector's ceiling height
   |         real ceiling             | < control sector's ceiling texture
   |                                  |
   |                                  | < control sector's lightlevel
   |              A                   |
   |                                  | < upper texture as colormap
   |                                  |
   |                                  | < control sector's floor texture
    ----------------------------------  < control sector's ceiling height
   |         fake ceiling             | < real sector's ceiling texture
   |                                  |
   |                                  | < real sector's lightlevel
   |              B                   |
   |                                  | < normal texture as colormap
   |                                  |
   |          fake floor              | < real sector's floor texture
    ----------------------------------  < control sector's floor height
   |                                  | < control sector's ceiling texture
   |                                  |
   |                                  | < control sector's lightlevel
   |              C                   |
   |                                  | < lower texture as colormap
   |                                  |
   |          real floor              | < control sector's floor texture
    ----------------------------------  < real sector's floor height

Boom sectors controlled by a 242 linedef are partitioned into 3 spaces. The viewer's xyz coordinates uniquely determine which space they are in.

If they are in space B (normal space), then the floor and ceiling textures and lightlevel from the real sector are used, and the colormap from the 242 linedef's first sidedef's normal texture is used (COLORMAP is used if it is invalid or missing). The floor and ceiling are rendered at the control sector's heights.

If they are in space C ("underwater"), then the floor and ceiling textures and lightlevel from the control sector are used, and the lower texture in the 242 linedef's first sidedef is used as the colormap.

If they are in space A ("head over ceiling"), then the floor and ceiling textures and lightlevel from the control sector are used, and the upper texture in the 242 linedef's first sidedef is used as the colormap.

If only two of these adjacent partitions in z-space are used, such as underwater and normal space, one has complete control over floor textures, ceiling textures, light level, and colormaps, in each of the two partitions. The control sector determines the textures and lighting in the more "unusual" case (e.g. underwater).

It is also possible for the fake floor to extend below the real floor, in which case an invisible platform / stair effect is created. In that case, the picture looks like this (barring any ceiling effects too):

    ----------------------------------  < real sector's ceiling texture
   |   real ceiling = fake ceiling    |
   |                                  |
   |                                  |
   |              B                   | < real sector's lightlevel
   |                                  | < normal texture's colormap
   |                                  |
   |          real floor              |
    ----------------------------------  < invisible, no texture drawn
   |                                  |
   |                                  |
   |                                  | < real sector's lightlevel
   |              C                   | < normal texture's colormap
   |                                  |
   |                                  |
   |          fake floor              | < real sector's floor texture
    ----------------------------------  < fake sector's floor height

In this case, since the viewer is always at or above the fake floor, no colormap/lighting/texture changes occur -- the fake floor just gets drawn at the control sector's height, but at the real sector's lighting and texture, while objects stand on the higher height of the real floor.

It is the viewer's position relative to the fake floor and/or fake ceiling which determines whether the control sector's lighting and textures should be used, and which colormap should be used. If the viewer is always between the fake floor and fake ceiling, then no colormap, lighting, or texture changes occur, and the view just sees the real sector's textures and light level drawn at possibly different heights.

If the viewer is below the fake floor height set by the control sector, or is above the fake ceiling height set by the control sector, then the corresponding colormap is used (lower or upper texture name), and the textures and lighting are taken from the control sector rather than the real sector. They are still stacked vertically in standard order -- the control sector's ceiling is always drawn above the viewer, and the control sector's floor is always drawn below the viewer.

The kaleidescope effect only occurs when F_SKY1 is used as the control sector's floor or ceiling. If F_SKY1 is used as the control sector's ceiling texture, then under water, only the control sector's floor appears, but it "envelops" the viewer. Similarly, if F_SKY1 is used as the control sector's floor texture, then when the player's head is over a fake ceiling, the control sector's ceiling is used throughout.

F_SKY1 causes HOM when used as a fake ceiling between the viewer and normal space. Since there is no other good use for it, this kaleidescope is an option turned on by F_SKY1. Note that this does not preclude the use of sky REAL ceilings over deep water -- this is the control sector's ceiling, the one displayed when the viewer is underwater, not the real one.

A colormap has the same size and format as Doom's COLORMAP. Extra colormaps may be defined in Boom by adding them between C_START and C_END markers in wads. Colormaps between C_START and C_END are automatically merged by Boom with any previously defined colormaps.

WATERMAP is a colormap predefined by Boom which can be used to provide a blue-green tint while the player is under water. WATERMAP can be modified by pwads.

Ceiling bleeding may occur if required upper textures are not used.

223 Ext -- Length Sets Friction in tagged Sector, Sludge < 100, Ice > 100

The length of the linedef with type 223 controls the amount of friction experienced by the player in the tagged sector, when in contact with the floor. Lengths less than 100 are sticker than normal, lengths greater than 100 are slipperier than normal. The effect is only present in the tagged sector when its friction enable bit (bit 8) in the sector type is set. This allows the flat to be changed in conjunction with turning the effect on or off thru texture/type changes.

Constant pushers[edit]

Two types of constant pushers are available, wind and current. Depending on whether you are above, on, or below (special water sectors) the ground level, the amount of force varies.

The length of the linedef defines the 'full' magnitude of the force, and the linedef's angle defines the direction.

line type above on under
wind (224) full half none
current (225) none full full

The linedef should be tagged to the sector where you want the effect. The special type of the sector should have bit 9 set (0x200). If this bit is turned off, the effect goes away. For example, a fan creating a wind could be turned off, and the wind dies, by changing the sector type and clearing that bit.

Constant pushers can be combined with scrolling effects and point pushers.

224 Ext -- Length/Direction Sets Wind Force in tagged Sectors
225 Ext -- Length/Direction Sets Current Force in tagged Sectors

Point pushers[edit]

Two types of point pushers are available, push and pull.

The previous implementation of these was SECTOR-SPECIFIC. The new implementation ignores sector boundaries and provides the effect in a circular area whose center is defined by a Thing of type 5001 (push) or 5002 (pull). You now also do not have to set any option flags on these Things. A new linedef type of 226 is used to control the effect, and this line should be tagged to the sector with the 5001/5002 Thing.

The length of the linedef defines the 'full' magnitude of the force, and the force is inversely proportional to distance from the point source. If the length of the controlling linedef is L, then the force is reduced to zero at a distance of 2L.

The angle of the controlling linedef is not used.

The sector where the 5001/5002 Things reside must have bit 9 set (0x200) in its type. If this is turned off, the effect goes away.

Point pushers can be combined with scrolling effects and constant pushers.

226 Ext -- Length Sets Point Source Wind/Current Force in Tagged Sectors

Scrolling walls, flats, objects[edit]

Static scrollers[edit]

The most basic kind of scrolling linedef causes some part of the tagged sector or tagged wall to scroll, in proportion to the length of the linedef the trigger is on, and according to the direction that trigger linedef lies. For each 32 units of length of the trigger, the tagged object scrolls 1 unit per frame. Since the length of a linedef does not change during gameplay, these types are static, the scrolling effect remains constant during gameplay. However, these effects can be combined with, and/or canceled by, other scrollers.

250 -- Scroll Tagged Ceiling

The ceiling of the tagged sector scrolls in the direction of the linedef trigger, 1 unit per frame for each 32 units of linedef trigger length. Objects attached to the ceiling do not move.

251 -- Scroll Tagged Floor

The floor of the tagged sector scrolls in the direction of the linedef trigger, 1 unit per frame for each 32 units of linedef trigger length. Objects resting on the floor do not move.

252 -- Carry Objects on Tagged Floor

Objects on the floor of the tagged sector move in the direction of the linedef trigger, 1 unit per frame for each 32 units of linedef trigger length. The floor itself does not scroll.

253 -- Scroll Tagged Floor, Carry Objects

Both the floor of the tagged sector and objects resting on that floor move in the direction of the linedef trigger, 1 unit per frame for each 32 units of linedef trigger length.

254 -- Scroll Tagged Wall, Same as Floor/Ceiling

Walls with the same tag as the linedef trigger scroll at the same rate as a floor or ceiling controlled by one of 250-253, allowing their motion to be synchronized. When the linedef trigger is not parallel to the wall, the component of the linedef in the direction perpendicular to the wall causes the wall to scroll vertically. The length of the component parallel to the wall sets the horizontal scroll rate, the length of the component perpendicular to the wall sets the vertical scroll rate.

Simple static scrollers[edit]

For convenience three simpler static scroll functions are provided for when a simple scrolling wall is needed without control over its rate or proportionality.

255 -- Scroll Wall Using Sidedef Offsets

For simplicity, a static scroller is provided that scrolls the first sidedef of a linedef, based on its x- and y- offsets. No tag is used. The x offset controls the rate of horizontal scrolling, 1 unit per frame per x offset, and the y offset controls the rate of vertical scrolling, 1 unit per frame per y offset.

48 -- Animated wall, Scrolls Left

A linedef with this type scrolls its first sidedef left at a constant rate of 1 unit per frame.

85 -- Animated wall, Scrolls Right

A linedef with this type scrolls its first sidedef right at a constant rate of 1 unit per frame.

Dynamic scrolling[edit]

To achieve dynamic scrolling effects, the position or rate of scrolling is controlled by the relative position of the floor and ceiling of the sector on the scrolling trigger's first sidedef. The direction of scrolling remains controlled by the direction of the linedef trigger. Either the floor or ceiling may move in the controlling sector, or both. The control variable is the amount of change in the sum of the floor and ceiling heights.

All scroll effects are additive, and thus two or more effects may reinforce and/or cancel each other.

Displacement scrollers[edit]

In the first kind, displacement scrolling, the position of the scrolled objects or walls changes proportionally to the motion of the floor or ceiling in the sector on the first sidedef of the scrolling trigger. The proportionality is set by the length of the linedef trigger. If it is 32 units long, the wall, floor, ceiling, or object moves 1 unit for each unit the floor or ceiling of the controlling sector moves. If it is 64 long, they move 2 units per unit of relative floor/ceiling motion in the controlling sector and so on.

245 -- Scroll Tagged Ceiling w.r.t. 1st Side's Sector

The tagged sector's ceiling texture scrolls in the direction of the scrolling trigger line, when the sector on the trigger's first sidedef changes height. The amount moved is the height change times the trigger length, divided by 32. Objects attached to the ceiling do not move.

246 -- Scroll Tagged Floor w.r.t. 1st Side's Sector

The tagged sector's floor texture scrolls in the direction of the scrolling trigger line when the sector on the trigger's first sidedef changes height. The amount moved is the height change times the trigger length, divided by 32. Objects on the floor do not move.

247 -- Push Objects on Tagged Floor wrt 1st Side's Sector

Objects on the tagged sector's floor move in the direction of the scrolling trigger line when the sector on the trigger's first sidedef changes height. The amount moved is the height change times the trigger length, divided by 32.

248 -- Push Objects & Tagged Floor wrt 1st Side's Sector

The tagged sector's floor texture, and objects on the floor, move in the direction of the scrolling trigger line when the sector on the trigger's first sidedef changes height. The amount moved is the height change times the trigger length, divided by 32.

249 -- Scroll Tagged Wall w.r.t 1st Side's Sector

Walls with the same tag as the linedef trigger scroll at the same rate as a floor or ceiling controlled by one of 245-249, allowing their motion to be synchronized. When the linedef trigger is not parallel to the wall, the component of the linedef in the direction perpendicular to the wall causes the wall to scroll vertically. The length of the component parallel to the wall sets the horizontal scroll displacement, the length of the component perpendicular to the wall sets the vertical scroll displacement. The distance scrolled is the controlling sector's height change times the trigger length, divided by 32.

Accelerative scrollers[edit]

The second kind of dynamic scrollers, accelerative scrollers, also react to height changes in the sector on the first sidedef of the linedef trigger, but the RATE of scrolling changes, not the displacement. That is, changing the controlling sector's height speeds up or slows down the scrolling by the change in height times the trigger's length, divided by 32.

An on/off scroller can be made by using an accelerative scroller and any linedef that changes the controlling sector's heights. If a scroll effect which is initially on is desired, then the accelerative scroller should be combined with a static one which turns the scroll effect on initially. The accelerative scroller would then need to be set up to cancel the static scroller's effect when the controlling sector's height changes.

214 -- Accel Tagged Ceiling w.r.t. 1st Side's Sector

The tagged sector's ceiling's rate of scroll changes in the direction of the trigger linedef (use vector addition if already scrolling) by the change in height of the sector on the trigger's first sidedef times the length of the linedef trigger, divided by 32. For example, if the ceiling is motionless originally, the linedef trigger is 32 long, and the ceiling of the controlling sector moves 1 unit, the tagged ceiling will start scrolling at 1 unit per frame.

215 -- Accel Tagged Floor w.r.t. 1st Side's Sector

The tagged sector's floor's rate of scroll changes in the direction of the trigger linedef (use vector addition if already scrolling) by the change in height of the sector on the trigger's first sidedef times the length of the linedef trigger, divided by 32. For example, if the floor is motionless originally, the linedef trigger is 32 long, and the ceiling of the controlling sector moves 1 unit, the tagged floor will start scrolling at 1 unit per frame.

216 -- Accel Objects on Tagged Floor wrt 1st Side's Sector

Objects on the tagged sector's floor's rate of motion changes in the direction of the trigger linedef (use vector addition if already moving) by the change in height of the sector on the trigger's first sidedef times the length of the linedef trigger divided by 32. For example, if the objects are motionless originally, the linedef trigger is 32 long, and the ceiling of the controlling sector moves 1 unit, the objects on the tagged floor will start moving at 1 unit per frame.

217 -- Accel Objects&Tagged Floor wrt 1st Side's Sector

The tagged sector's floor, and objects on it, change its rate of motion in the direction of the trigger linedef (use vector addition if already moving) by the change in height of the sector on the trigger's first sidedef times the length of the linedef trigger, divided by 32. For example, if the floor and objects are motionless originally, the linedef trigger is 32 long, and the ceiling of the controlling sector moves 1 unit, the objects and the tagged floor will start moving at 1 unit per frame.

218 -- Accel Tagged Wall w.r.t 1st Side's Sector

Walls with the same tag as the linedef trigger increase their scroll rate in sync with a floor or ceiling controlled by one of 214-217. When the linedef trigger is not parallel to the wall, the component of the linedef in the direction perpendicular to the wall causes the wall to increase its vertical scroll rate. The length of the component parallel to the wall sets the change in horizontal scroll rate, the length of the component perpendicular to the wall sets the change in vertical scroll rate. The rate change is the height change times the trigger length, divided by 32.

Detailed generalized linedef specification[edit]

Boom has added generalized linedef types that permit the parameters of linedef actions to be nearly independently chosen. Instead of looking at the linedef special as one single number which corresponds to one single type, it is divided into entire ranges of effects where parts of the numbers are used as parameters.

Effect Start of range End of range Size of range
Generalized crushers 12 160 (0x2f80) 12 287 (0x2fff) 128
Generalized stairs 12 288 (0x3000) 13 311 (0x33ff) 1024
Generalized lifts 13 312 (0x3400) 14 335 (0x37ff) 1024
Generalized locked doors 14 336 (0x3800) 15 359 (0x3bff) 1024
Generalized doors 15 360 (0x3c00) 16 383 (0x3fff) 1024
Generalized ceilings 16 384 (0x4000) 24 575 (0x5fff) 8192
Generalized floors 24 576 (0x6000) 32 767 (0x7fff) 8192
Total 12 160 (0x2f80) 32 767 (0x7fff) 20 608

The following sections define the placement and meaning of the bit fields within each linedef category. Fields in the description are listed in increasing numeric order.

Some nomenclature:

Target height designations:

H means highest, L means lowest, N means next, F means floor, C means ceiling, n means neighbor, Cr means crush, sT means shortest lower texture.

Texture change designations:

  • c0n - change texture, change sector type to 0, numeric model change
  • c0t - change texture, change sector type to 0, trigger model change
  • cTn - change texture only, numeric model change
  • cTt - change texture only, trigger model change
  • cSn - change texture and sector type to model's, numeric model change
  • cSt - change texture and sector type to model's, trigger model change

A trigger model change uses the sector on the first side of the trigger for its model. A numeric model change looks at the sectors adjoining the tagged sector at the target height, and chooses the one across the lowest numbered two sided line for its model. If no model exists, no change occurs. Note that in DOOM II v1.9, no model meant an illegal sector type was generated.

Generalized floors (8192 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
model trig/numeric -or- nomonst/monst 1 0x0020 5
direct down/up 1 0x0040 6
target HnF/LnF/NnF/LnC/C/sT/24/32 3 0x0380 7
change nochg/zero/txtonly/type 2 0x0c00 10
crush no/yes 1 0x1000 12

DETH Nomenclature:

W1[m] F->HnF DnS [c0t] [Cr]
WR[m] F->LnF DnN [c0n] 
S1[m] F->NnF DnF [cTt]  
SR[m] F->LnC DnT [cTn]          
G1[m] F->C   UpS [cSt]          
GR[m] FbysT  UpN [cSn]          
D1[m] Fby24  UpF                        
DR[m] Fby32  UpT                        

Notes:

  1. When change is nochg, model is 1 when monsters can activate trigger otherwise monsters cannot activate it.
  2. The change fields mean the following:
    • nochg - means no texture change or type change
    • zero - means sector type is zeroed, texture copied from model
    • txtonly - means sector type unchanged, texture copied from model
    • type - means sector type and floor texture are copied from model
  3. down/up specifies the "normal" direction for moving. If the target specifies motion in the opposite direction, motion is instant. Otherwise it occurs at speed specified by speed field.
  4. Speed is 1/2/4/8 units per tic
  5. If change is nonzero then model determines which sector is copied. If model is 0 its the sector on the first side of the trigger. If model is 1 (numeric) then the model sector is the sector at destination height on the opposite side of the lowest numbered two sided linedef around the tagged sector. If it does not exist no change occurs.

Generalized ceilings (8192 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
model trig/numeric -or- nomonst/monst 1 0x0020 5
direct down/up 1 0x0040 6
target HnC/LnC/NnC/HnF/F/sT/24/32 3 0x0380 7
change nochg/zero/txtonly/type 2 0x0c00 10
crush no/yes 1 0x1000 12

DETH Nomenclature:

W1[m] C->HnC DnS [Cr] [c0t] 
WR[m] C->LnC DnN      [c0n] 
S1[m] C->NnC DnF      [cTt] 
SR[m] C->HnF DnT      [cTn]     
G1[m] C->F   UpS      [cSt]     
GR[m] CbysT  UpN      [cSn]     
D1[m] Cby24  UpF                        
DR[m] Cby32  UpT                        

Notes:

  1. When change is nochg, model is 1 when monsters can activate trigger otherwise monsters cannot activate it.
  2. The change fields mean the following:
    • nochg - means no texture change or type change
    • zero - means sector type is zeroed, texture copied from model
    • txtonly - means sector type unchanged, texture copied from model
    • type - means sector type and ceiling texture are copied from model
  3. down/up specifies the "normal" direction for moving. If the target specifies motion in the opposite direction, motion is instant. Otherwise it occurs at speed specified by speed field.
  4. Speed is 1/2/4/8 units per tic
  5. If change is nonzero then model determines which sector is copied. If model is 0 its the sector on the first side of the trigger. If model is 1 (numeric) then the model sector is the sector at destination height on the opposite side of the lowest numbered two sided linedef around the tagged sector. If it does not exist no change occurs.

Generalized doors (1024 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
kind odc/o/cdo/c 2 0x0060 5
monster n/y 1 0x0080 7
delay 1/4/9/30 (secs) 2 0x0300 8

DETH Nomenclature:

W1[m] OpnD{1|4|9|30}Cls S
WR[m] Opn               N
S1[m] ClsD{1|4|9|30}Opn F
SR[m] Cls               T
G1[m]
GR[m]
D1[m]
DR[m]

Notes:

  1. The odc (Open, Delay, Close) and cdo (Close, Delay, Open) kinds use the delay field. The o (Open and Stay) and c (Close and Stay) kinds do not.
  2. The precise delay timings in gametics are: 35/150/300/1050
  3. Speed is 2/4/8/16 units per tic

Generalized locked doors (1024 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
kind odc/o 1 0x0020 5
lock any/rc/bc/yc/rs/bs/ys/all 3 0x01c0 6
sk=ck n/y 1 0x0200 9

DETH Nomenclature:

W1[m] OpnDCls           S Any
WR[m] Opn               N R{C|S|K}
S1[m]                   F B{C|S|K}
SR[m]                   T Y{C|S|K}
G1[m]                     All{3|6}
GR[m]
D1[m]
DR[m]

Notes:

  1. Delay for odc kind is constant at 150 gametics or about 4.333 secs
  2. The lock field allows any key to open a door, or a specific key to open a door, or all keys to open a door.
  3. If the sk=ck field is 0 (n) skull and cards are different keys, otherwise they are treated identically. Hence an "all" type door requires 3 keys if sk=ck is 1, and 6 keys if sk=ck is 0.
  4. Speed is 2/4/8/16 units per tic

Generalized lifts (1024 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
monster n/y 1 0x0020 5
delay 1/3/5/10 (secs) 2 0x00c0 6
target LnF/NnF/LnC/LnF<->HnF(perp.) 2 0x0300 8

DETH Nomenclature:

W1[m] Lft  F->LnFD{1|3|5|10}    S
WR[m]      F->NnFD{1|3|5|10}    N
S1[m]      F->LnCD{1|3|5|10}    F
SR[m]      HnF<->LnFD{1|3|5|10} T
G1[m]
GR[m]
D1[m]
DR[m]

Notes:

  1. The precise delay timings in gametics are: 35/105/165/350
  2. Speed is 1/2/4/8 units per tic
  3. If the target specified is above starting floor height, or does not exist the lift does not move when triggered. NnF is Next Lowest Neighbor Floor.
  4. Starting a perpetual lift between lowest and highest neighboring floors locks out all other floor actions on the sector, even if it is stopped with the non-extended stop perpetual floor function.

Generalized stairs (1024 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
monster n/y 1 0x0020 5
step 4/8/16/24 2 0x00c0 6
dir dn/up 1 0x0100 8
igntxt n/y 1 0x0200 9

DETH Nomenclature:

W1[m] Stair Dn s4  S [Ign]
WR[m]       Up s8  N
S1[m]          s16 F
SR[m]          s24 T
G1[m]
GR[m]
D1[m]
DR[m]

Notes:

  1. Speed is .25/.5/2/4 units per tic
  2. If igntxt is 1, then the staircase will not stop building when a step does not have the same texture as the previous.
  3. A retriggerable stairs builds up and down alternately on each trigger.

Generalized crushers (128 types)[edit]

field description NBits Mask Shift
trigger W1/WR/S1/SR/G1/GR/P1/PR 3 0x0007 0
speed slow/normal/fast/turbo 2 0x0018 3
monster n/y 1 0x0020 5
silent n/y 1 0x0040 6

DETH Nomenclature:

W1[m] Crusher S [Silent]
WR[m]         N
S1[m]         F
SR[m]         T
G1[m]
GR[m]
D1[m]
DR[m]

Notes:

  1. Speed is 1/2/4/8 units per second, faster means slower damage as usual.
  2. If silent is 1, the crusher is totally quiet, no start/stop sounds.

Sources[edit]