Lets make a room.
Map Formats and WADs
Download Doom Builder 2. Or Ultimate Doombuilder. Or Doombuilder X. I'm on GZDoombuilder because I never had cause to upgrade, but things should be mostly the same between them.
Maps can be made in different formats depending on what features you want to use. Some formats won't work on older source ports, so we're sticking with Doom Format (vanilla) for this tut.
Select your resources, that is: Doom wads. doom2.wad, in this case. If you're using a texture pack or something you would load it after doom2.wad. Could also be a pk3, or pk7, or a zip or something I dunno.
Lines, Verts, Sectors
Sectors are closed polygonal shapes that make up the brunt of the visible features in a Doom map (or heretic or hexen or whatever). They are made up of lines which are made of two connected vertices (the corners). Simple shit.
Draw a room. A square is lame so let's do a fat L shape, for interest. Right-click to start drawing, every subsequent left-click drops a vert. Click the initial vert to close the shape.
You might notice that lines have a smaller line jutting out from them. That's because lines have orientation. That little leg indicates the direction the line's “front” is. You can flip it by hovering over the line and hitting “F” (for “flip”). It's not usually an issue, but it's best to be consistent with it. It can effect what lines are “usable” by the player.
Height
Sectors have height. Floor height and ceiling height. 128 is the standard height of a texture and is good place to start for a room height. But, for interest again, we'll cut the room in half and give each a different ceiling height. Select the line or vert tool and insert a line from the corner of the L to the wall like so (I usually right click on empty space, then hit back space to get a floating vertice to drop where I want it, there's probably a better way):
Then alter the ceiling height of the smaller sector to be lower. Let's say 96. Lower number means lower ceiling/floor. And raise the floor up to 8 while you're at it.
Easiest way to do this is to go into 3D view (Q in GZDoom Builder) and use the scroll wheel while the ceiling or floor is selected. Every step is 8 units of change, or if you hold shift it will be one unit of change.
You can also go into Sectors mode (S) and right click on a sector to change the floor/ceiling heights. There are other options in there as well, but ignore them. Or just screw around with them and see what happens, but save first.
The tallest difference in floor height you can step up is 31, and the lowest sector height you can squeeze through is 56.
Block-out
Play around with this a bit. If you make a sector then select it while in “sector” mode you can delete it and the empty space will create a pillar or whatever other shape.
Mine looks like a dog bone:
And I added sectors on the sides for steps or whatever. Go nuts, play around.
Textures/Flats
Textures go on lines, Flats are textures on the floor/ceiling. There are 3 places you can place a texture on lines: Upper, Lower, and Middle. Upper is the wall that's created when you lower a ceiling down. Lower is the wall created when you raise a floor. Middle is the space between (for transparent textures), or a wall that has no sector behind it. You can change the textures either by going into the Lines mode (L, or click the button) and right-clicking them, or by going into the 3D mode (Q) and right clicking the highlighted line there. You may notice that if you place a middle texture that you can walk through it. Don't worry about that, or skip to the Linedef Properties section below.
You can change the alignment either with the numbers in the Linedef editor (the little window that pops up when you right click a line), or by using the arrow keys in the 3D mode. In 3D mode holding shift will move the textures by 8 pixels per key-press rather than one.
Flats work the same way, but you only have to worry about ceiling and floor, and you can't change their alignment in vanilla doom. They're stuck to the grid. 64 map-pixels x 64 map-pixels.
Detailing
Add some details. Again, go nuts. There are tools like like the stair tool and curve tool and blah blah blah, but to start you should do these things manually for a better understanding.
Light levels can be changed either numerically, by right clicking the sector in sector mode (S) and playing with the numbers there, or by going into the 3D view and holding CRTL while scrolling the mouse wheel. Every step is 8 unit of change. Light levels can be 0 - 256. All shadows have to be drawn manually in vanilla, and it's best to keep them fairly simple, though some fun details can be had.
Linedef Properties
Let's run down the linedefs property flags. Right click on a line, either in the 2d view or 3d view.
Right side is upper unpegged on an “upper” texture.
Lights and railing are lower unpegged “middle” textures.
On “lower” textures it does the same thing as upper-unpegged does to “upper” textures.
(Insert picture here illustrating this)
Actions and Tags
The gist is this: Linedefs can tell Sectors to perform special actions. Lower, Raise, Act as doors, switches for doors/lifts. Lines and Sectors need the same tag. So if a line with tag “1” says “w1 open door stay” that will open a sector with tag “1” that has been lowered to the ground (as doors are in doom). It will open and stay open when you walk once (w1) over the line. If it raid “wr” that means “walk repeatable”. S1 is “switch once” sr is “switch repeatable”. G1 means gun once - a hitscan weapon will cause the action. Gr is “gun repeatable”.
Simple as that. EZPZ. Of course there are tricks you can do with these things, but that's for another time.
Sector Effects
SAME. Go to sector mode (S) and right click a sector. The effects listed are all fairly self explanatory. This window is also where you set sector tags.
Items/Monsters
On the left you'll see a “Things” button. Click that, and right click to place a “thing”. A “thing” is anything that is shown as a sprite in-game. Most can be placed manually. A few can't (blood particles, smoke puffs, that sort of thing). There are a few types of things. Monsters, item pick ups, decorations, etc. They're pretty self explanatory. Right click to place a thing, right click it again to change it's properties.
Thing properties for your consideration:
Ambush - Sometimes called “deaf” in some editors. Means enemies won't react to you firing your weapon, and will only attack on sight.
Difficulty flags - Lets you control which items/monsters appear on which difficulty.
Multiplayer only - Only shows up in MP.
Anyway, that's your first room. Go make a map.