First important thing to know is the “include” function. If you wanted to, say, only add a remote door, or a few new tiles and still use the original Wolfenstein 3D XLAT, you can use this function.
Example:
include "$base"
This will tell your game to use all the definitions from the original Wolfenstein 3D (Or whatever your base game may be) along with anything you specify in this file.
Next are the feature flags. These flags enable certain ECWolf specific mapping features, mostly stuff carried over from Rise of the Triad. Keep in mind that a lot of this stuff requires the development version of ECWolf.
It is easiest to put these at the top of the file:
enable globalmeta;
This enables Blake Stone data tiles. As of the writing of this tutorial it is incomplete and doesn’t function, so this won't be covered in this guide.
enable lightlevels;
This enables the light and visibility levels from Rise of the Triad. To use this, you must add the tiles 216-223 (for brightness) and 252-267 (for visibility) to the walls plane in your map editor, and then place the brightness tile in x2y0 and the visibility tile in x3y0 in the walls plane (1st plane).
This can actually be achieved easier and with more control in MAPINFO with the commands “defaultlighting” and “defaultvisibility”. The tiles are as follows:
Light Levels
216 |
0 (Darkest) |
217 |
1 |
218 |
2 |
219 |
3 |
220 |
4 |
221 |
5 |
222 |
6 |
223 |
7 (Brightest) |
Visibility Levels
252 |
0 (Lowest) |
253 |
1 |
254 |
2 |
255 |
3 |
256 |
4 |
257 |
5 |
258 |
6 |
259 |
7 |
260 |
8 |
261 |
9 |
262 |
10 |
263 |
11 |
264 |
12 |
265 |
13 |
266 |
14 |
267 |
15 (Highest) |
enable planedepth;
This enables Rise of the Triad’s taller level feature. It works, but is incomplete. Some things are quirky, like doors extend all the way to the ceiling since it doesn’t have ROTT’s animated doors or upper textures. It can be used, but would require some workarounds to make it look right. To use this, you must also add tiles 90-97 and 450-457 to the objects plane in your map editor, and the tile must be placed in the upper left corner of the map (x0y0) on the objects plane (2nd plane). Note: 90-97 are also the patrol point tiles, they will work both ways.
The tiles are as follows:
Level Height
90 |
1 (1 tile high, or 64x64) |
91 |
2 |
92 |
3 |
93 |
4 |
94 |
5 |
95 |
6 |
96 |
7 |
97 |
8 |
450 |
9 |
451 |
10 |
452 |
11 |
453 |
12 |
454 |
13 |
455 |
14 |
456 |
15 |
457 |
16 |
enable zheights;
This makes it so, in tandem with the prior effect, actors will spawn at different heights. In order to use this, you must enable the info plane (4th plane) in your map editor. On each object you want to spawn at a different height, you must (in the 4th plane) on top of the object place in High Byte mode, place tile 176 (hex: 0xB0). Then, in low-byte mode, tiles 0-127 raise the object and 255-128 lowers the object in 4 unit (1/16th of a tile) increments.
music { track, track, etc }
ROTT’s music selection feature. ROTT determines music track by a tile in top row in the info plane. The high byte tile must be 186 and the low byte selects the index in the table defined. This is completely unnecessary, as MAPINFO defines the track played in ECWolf, inheriting from ZDoom.