First of all, get yourself a copy of Achim Stremplats editor DEVIL and learn how to use its features.

  1. BASICS :
    Descent levels are constructed of CUBES. Each cube has 6 SIDES and 8 POINTS. You can move the sides or point to a certain degree to alter the cubes shape. Sides that are between two CONNECTED Cubes are called WALLS. WALLS can be DOORS, SWITCHES or NOTHING or more than one of these. (For example you can have a WALL that is not invisible but that you can fly through (secret spots !), or a wall you won't notice at all, if it wouldn't trigger some devious traps...) Each side or wall can have different textures and light settings, which can all be set manually (which could be a hell of a lot to do) .
      Each level created by DEVIL starts with a STANDARD CUBE (that is a cube with a certain defined size, texture and light). To add other cubes to this first cube, you must add a MACRO, that is either another standard cube or a larger structure of several cubes. You can load and SAVE macros, so you can develop a library of level parts you can combine to a whole level.
      Start with a STANDARD CUBE, add another standard cube to either side, remove the adjacent wall (if DEVIL hasn't done that for you yet). Add another standard cube to either side... and so on. Try to keep your macros SMALL, because DEVIL could get a bit sloooow when you operate with larger parts (depending on your hardware of course). You can move all points in your macro to create the shape you want, but keep in mind that you want to put the macros together in the end. It is favourable to have a standard (NOT modified) cube as connecting point of each macro, that saves you A LOT of trouble. You can assign textures and light to your macros by now, but don't be too precise, you may have to change them anyway in the end.
      Once you have all your rooms together, you must put them all together. This is when you start hating these "funky" macros with weird walls and distorted corridors. The most time is spent with correcting little errors and moving point a bit to fit to the connecting point (DEVIL connects cubes only when the connecting sides are highly similar). When you have all cubes connected, save the entire level ! DEVIL sometimes crashes. Be sure to have an EXIT and a REACTOR (inside a REACTOR ROOM !!), or you won't leave this mine when you play it ! Have a look at DEVIL's manual for more information.
      This is the ugliest part. Check if the textures don't flip over in the middle of a corridor or room (because you have connected a macro upside down and now the floor is above and the lamps are below). If you want special textures (such as lamps, panels, screens or lava), they often have to be fitted to the according side (for example you want a lamp in the middle of a side, but you have stretched the side a bit and now you get one and a half lamps on it. You must stretch the "lamp" texture as well to avoid this phenomenon). Once this is done, the light settings want to be done. Often it is sufficient to set the light for whole cubes or maybe sides (floor 5 percent light, ceiling 100 percent for instance), but for special effects you must edit EACH AND EVERY POINT IN THAT '*?=$%-... LEVEL. This can soon frustrate you, but it surely is worth the effort.
    5. THINGS :
      Finally, you can put THINGS in your level. Things are such as ROBOTS, ITEMS, STARTING POINTS (!!!) or the REACTOR. Things can be moved around in the level. That is useful, because otherwise all robots would look in the same direction and stay in the middle of a cube. Hide robots behind corners, place powerups in open spaces where it is dangerous to get them and so on >-}
  3. PLAYING :
    OK, now we have a complete level ready to play. In case you haven't made a mistake (such as forgetting the exit or putting the starting point outside a cube or not removing a wall in a corridor) AND you haven't used to many cubes, walls or things (don't ask me HOW much you may use, there are no definitive specifications available. I once built a level (together with a friend) that had 1000 cubes and 300 walls, which was WAY to much. It seems that 900 cubes and 170 walls should be enough.) Descent should now load your level and you could play it. You may see some mistakes or realize that you have put to many robots in, but thats it, finally.
    If you want complex rooms (such as hexagons), the best way is to make a sketch on paper and calculate the angles and side length before you start using DEVIL. If you want "bridges" in your rooms, you will see that Descent WALLS have no thickness. If you want THICK bridges, you'll have to use more cubes, one for EACH side/wall your bridge should have. (For example: You want a large cube with small doors in opposite sides, connected by a bridge. You need at least 8 (eight) cubes to realise that, three over the bridge, three under the bridge and one on each side of the bridge. These cubes must have one side INSERTED where the bridge should be (so the bridge is hollow in this example).) Lights can be used to create effects. Set the lights of your points to get smooth colour bleedings or accentuated spots. It looks very nice when you set a top corner of a room to 100 percent light and the according bottom corner to 5 percent or so. Play around with "4D" effects (that is when two cubes are at the same 3D-coordinates but aren't connected). With this you could realize rooms that are bigger from the inside than from the outside. Though this could be considered "dirty style" it sure makes fun. As stated above, try to keep your constructions precise, a 187 degree left 22 degree up turn in a corridor doesn't look as good as a 180 degree left 45 degree up turn, besides it is easier to connect macros with "straight" design.