Category:Editing Doors: Difference between revisions

From EDukeWiki
Jump to navigation Jump to search
Mblackwell (talk | contribs)
mNo edit summary
Line 5: Line 5:


==Doors==
==Doors==
Doors in Duke Nukem 3D are constructed in different ways using a combination of [[Sectors]], [[Sector Tag Reference Guide|Sector Tags]], and [[Sector Effector Reference Guide|Sector Effectors]]. Doors can be combined with [[GPSPEED]] sprites, [[ACTIVATOR]]/[[ACTIVATORLOCKED]] sprites, and [[MASTERSWITCH]] sprites to create a multitude of effects. Refer to the tutorial maps ''TUTORIAL.MAP'' and ''ADVANCED.MAP'' as noted in the articles for reference.
Doors in Duke Nukem 3D are constructed in different ways using a combination of [[Sectors]], [[Sector Tag Reference Guide|Sector Tags]], and [[Sector Effector Reference Guide|Sector Effectors]]. Doors can be combined with [[GPSPEED]] sprites, [[ACTIVATOR]]/[[ACTIVATORLOCKED]] sprites, and [[MULTISWITCH]] sprites to create a multitude of effects. Refer to the tutorial maps ''TUTORIAL.MAP'' and ''ADVANCED.MAP'' as noted in the articles for reference.
 
===Adding Sounds to Doors===
 
''Map Name: TUTORIAL.MAP (ROOMS 1-A through 1-I)''
 
To add sound effects to a door (the sound of the door opening and closing) follow these simple steps:
 
:STEP 1: Place one music and sound effect sprite (#5) in the door sector.
 
:STEP 2: Give the music and sound effects sprite a lotag value equal to the sound you wish to play. Values of 166 through 168 are good values, but use what you want (anything other than a door sound isn't very realistic however). A listing of sound effects by both tag number and sound category can be downloaded at Map FAQ Central (see the very top of this FAQ for the URL).
 
 
 
 
 
===Sliding Star Trek Doors===
 
''Map Name: ADVANCED.MAP (ROOM 1-A)''
 
Sliding Star Trek doors are difficult to make, but they are a cool addition to most any level. Because this type of door is so complex to make, a step by step construction has been placed in the tutorial map. Take a look at it to see what to do, and even copy the sectors if you want.
 
:NOTE 1: The texture of the door will be "squished" when the door is opened. There is no way around this problem.
 
:NOTE 2: The door sound will sound twice for some reason. Again, there is no way around this problem.
 
===Splitting Star Trek Doors===
 
''Map Name: ADVANCED.MAP (ROOM 1-B)''
 
This is a more complex version of the sliding star trek door, and it is by far one of the coolest doors in the game.
 
:STEP 1: Create a sliding star trek door.
 
:STEP 2: Raise the floor of this door about halfway up, and lower the ceiling about halfway down (the ceiling and floor should meet in the middle of the door).
 
:STEP 3: Change the door sector lotag value from 9 to a value of 26. You're all done! Take a look at the tutorial example if you don't quite understand.
 
===Teeth Doors===
 
''Map Name: TUTORIAL.MAP (ROOM 1-F)''
 
This door never appears in the game (it has a few minor problems) but it is very cool anyways.
 
:STEP 1: Create a sector for the door, and two square sectors inside the door sector (for the teeth of the door). All these sectors should be valid player space.
 
:STEP 2: Lower the teeth sector floors down until you can no longer see the floor (even when looking down at an angle).
 
:STEP 3: Give the door sector a sector lotag value of 29 and a unique sector hitag value.
 
:STEP 4: Place one sector effect in each tooth sector. Give each sector effector sprite a sprite lotag value of 22. Also give each sector effector sprite a sprite hitag value equal to the door sector hitag value. You're done! Look at the tutorial map if you don't quite understand.
 
::NOTE 1: This door must start in the open position for it to properly work.
 
===Another Way To Do Teeth Doors===
 
Using this method, the door can start in the closed position. Thanks goes to Jaap Menist for writing this in the first place.
 
:STEP 1: Create the following sectors. All are valid player space.
 
          +------------------+        +---------------+
          |                  |        |              |
          |                  +---------+              |
          |                  |  +---+  |              |
          |                  |  | d |  |              |
          |                  |  +---+  |              |
          |      A          |    C    |      B      |
          |                  |  +---+  |              |
          |                  |  | e |  |              |
          |                  |  +---+  |              |
          |                  +---------+              |
          |                  |        |              |
          +------------------+        +---------------+
 
:Sector 'A' and 'B' are the rooms, sector 'C' is the door and sectors 'd' and 'e' are the teeth in the door.
 
:STEP 2: Make all floors and ceilings equal height. (When the door is finished you may raise the ceiling of 'A' or 'B' if you like).
 
:STEP 3: Now here's a nice one; The floors of sectors 'd' and 'e' have to be lowered, so holes appear. The amount you have to lower each sector can be calculated like this:
 
:('PixelHeight of door' / 3) - 2
 
:So you divide the door-height by 3 and subtract 2 from the result. This is the number of times you have to hit page-down when lowering the floor of sectors 'd' and 'e'. Weird eh? It looks as if the teeth move 3 times as fast as the door. Now you have two pretty deep holes where the teeth will sink into.
 
:STEP 4: Put sector effectors in 'd' and 'e' and give them a lotag of 22. Give them the same unique hitag number. Put the sector effectors on the floor of 'd' and 'e'.
 
:STEP 5: Lower the ceilings of 'd' and 'e' to their floors. In other words, put the teeth all the way down.
 
:STEP 6: Give sector 'C' a lotag of 29 and the same hitag you issued for hitags of the effectors in 'd' and 'e'. So sector 'C' hitag is equal to the hitag of the sector effectors in sectors 'd' and 'e'!
 
:STEP 7: Lower the ceiling of sector 'C' to the ground and you're done !
 
:STEP 8: You can put a music sprite in sector 'C' for a door sound and a sector effector sprite to make the door auto-close. Now you have a door which is closed in the initial state, when it opens you see the teeth shoot up and if you stand in the doorway looking down into the holes, you get squished when the bastard shuts its mouth! :)
 
===Sliding Doors===
 
''Map Name: ADVANCED.MAP (ROOM 1-C)''
 
Again, due to the extremely difficult task of explaining this how-to, I have provided a step by step example in the tutorial map, showing how to make this door. Just take a look at the example and it should make sense (it goes step by step in the building process).
 
===See Through Sliding Doors===
 
Here's a step by step explanation on how to make sliding glass doors.
 
The following symbols are used:
* Vertex
- Red line
! Red line
= White line
| White line
 
:STEP 1: Start by making the following sectors. All are valid player space.
 
*=============*     
|            | Sectors 'a' and 'e' are the corridor in which   
|      a    | the door will be made.   
*-------------*   
|            |   
|      b    |   
*-------------*   
|            |   
|            |  Sector 'c' will be the actual door.   
|            |   
|      c    |   
*-------------*   
|            |   
|      d    |   
*-------------*   
|            |   
|      e    |   
*=============*
 
:STEP 2: Split sector 'c' in half. 
 
*=============*     
|            |   
|      a    |   
*-------------*   
|            |   
|      b    |   
*------*------*   
|      !      |   
|      !      |  Sector 'c1' and 'c2' are the two parts   
|      !      |  of the door which will slide apart.   
|  c1 ! c2  | 
  *------*------*   
|            |   
|      d    |   
*-------------*   
|            |   
|      e    |   
*=============*
 
:STEP 3: Make sectors 'f' and 'g'.
   
*=============*     
|            |   
|      a    |   
*-------------*   
|            |   
|      b    |   
*------*------*   
|\    !    /|   
| \    !    / |  Make sure sectors 'f' and 'g' are valid player spaces.   
|f *  !  * g|  (Alt-S in 2D mode).   
| / c1 ! c2 \ |   
|/    !    \|   
*------*------*   
|            |   
|      d    |   
*-------------*   
|            |   
|      e    |   
*=============*
 
:STEP 4: Raise floor of sectors 'f' and 'g' and mask walls. Then lower floor again.
   
*=============*     
|            |   
|      a    |   
*-------------*   
|            |   
|      b    |   
*------*------*   
|\    !    /|   
| \    !    / |  Raise the floors of sectors 'f' and 'g' and for each sector   
|f *v1 ! v2* g|  mask one of the diagonal lines. In this example we'll mask   
| /    !    \ |  <- these two diagonal lines. Mask them for example with 'glass2'.
|/  c1 ! c2  \|  If you use 'glass1' you'll be able to break the glass and walk   
*------*------*  through the door without ever having to open it.   
|      v3    |  Make the walls a bit translucent so you can see through them.   
|      d    |  Also make them blockable and hittable ('b' and 'Ctrl-H in 2D mode).
*-------------*  Lower the floors again to the same height as the floors of sectors
|            |  'c1' and 'c2'.   
|      e    |   
*=============*  'v1' 'v2' and 'v3' have been named for the next picture.
 
:STEP 5: Move vertices.
 
*=============*   
|            |   
|      a    |   
*-------------*   
|            |   
|      b    |   
*------*------* 
|\    !    /|   
| \ c1 ! c2 / |  'v1' and 'v2' have been moved down onto 'v3' The three   
|f \  !  / g|  vertices are all in the same place. They do NOT connect.   
|  \  !  /  |     
|    \ ! /    |     
*------*------*     
|      v1-3  |     
|      d    |     
*-------------*   
|            |   
|      e    |   
*=============*
 
:STEP 6: Place sector effectors, gpspeed and music sprites and give sector lotag. Give sectors 'c1' and 'c2' both a lotag of 25. Put sector effectors in sector c1 and c2. Make them point towards each other (',' and '.' key in 2D mode, angle 0 and 1024) and give them a lotag of 15.  Give them the same unique hitag.  Also put gpspeed sprites in sectors 'c1' and 'c2'.  They determine how far the door will open. The largest grid in build is 512. Give the gpspeed sprites the correct value for the lotag.  Finally you can put a music sprite in one of the door sectors ('c1' _or_ 'c2').  Don't put music sprites in both sectors. The lotag is the door sound when it opens or closes.
 
:STEP 7: Add vertices.
   
    *=============*     
    |            |   
    |      a    |   
    *-------------*   
    |            |   
    |      b    |
v4 *------*------* v5   
    |\    !    /|   
    | \ c1 ! c2 / |  Insert two new vertices on the diagonal lines.   
    |f \  !  / g|  'v4' and 'v5' have been named for the next picture.   
    |  *  !  *  |     
    |    \ ! /    |     
    *------*------*     
    |      v1-3  |     
    |      d    |     
    *-------------*   
    |            |   
    |      e    |   
    *=============*
 
:STEP 8: Move 'v4' and 'v5' down.
 
    *=============*     
    |            |   
    |      a    |   
    *-------------*   
    |      b    |   
    |            |   
    |      * v6  |   
    |    /!\    |   
    |    / ! \    |   
    |  /  !  \  |   
    |  /  !  \  |           
    | /  c1! c2 \ |     
    |/    !    \|   
v4 *---*  !  *---* v5   
    | f  \ ! / g  |     
    *------*------*     
    |      v1-3  |     
    |      d    |     
    *-------------*   
    |            |   
    |      e    |   
    *=============*
 
:STEP 9: Move 'v6' down.
    *=============*     
    |            |   
    |      a    |   
    *-------------*   
    |      b    |   
    |      v6    |        The little triangles in the middle are sectors
v4 *---*--*--*---* v5    'c1' and 'c2'.   
    | f  \ ! / g  |   
v7 *------*------* v8   
    |      v1-3  |     
    |      d    |     
    *-------------*   
    |            |   
    |      e    |   
    *=============*
 
:STEP 10: Move 'v4' 'v5' 'v7' and 'v8'.
 
      *=============*       
      |            |     
      |      a    |   
  v9 *-------------* v10     
      |      b    |   
    /      v6      \       
v4 *-----*--*--*-----* v5    Move the vertices to the outside a bit.   
    |  f  \ ! / g    |   
v7 *--------*--------* v8   
    \      v1-3    /       
      |      d    |   
  v11 *-------------* v12     
      |            |     
      |      e    |     
      *=============*
 
:STEP 11: Move 'v9' and 'v10' down, move 'v11' and 'v12' up.
      *=============*       
      |      a    |     
      |v9    v6    |v10 
v4 *-*---*--*--*---*-* v5    'v9' and 'v10' have been moved down. Sector 'b' has   
    |  f  \ ! / g    |        a width of 0. Same goes for vertices 'v11' and 'v12',
v7 *-*------*------*-* v8    they have been moved up. Sector 'd' also has a width
      |v11      v12|          of 0.     
      |            |
      |      e    |
      *=============*
 
:STEP 12: Make sure sectors 'f' and 'g' aren't too wide or it will look ugly. If you want a vertical bar in the door (i.e. doorpost) just draw a non-valid player space in sector 'f' and/or 'g'. These non-valid player spaces will slide aside with the door so they are best put in the middle.You can of course also partially raise the floors of sectors 'f' and 'g' and lowerthe ceilings and still mask the wall (With any texture you like! :) )
 
===Rotating Subway Doors===
 
''Map Name: TUTORIAL.MAP (ROOM 1-G)''
 
This type of door constantly revolves in a circle, much like the doors you find in an airport or subway station.
 
:STEP 1: Create your door sector to be rotated. The sector should be valid player space. Raise the floor of the door up to the ceiling (or lower the ceiling to the floor).
 
:STEP 2: Place one sector effector sprite in the middle of the door sector. Give this sprite a lotag value of 1. Give it a unique hitag value. If you want this door to rotate counter-clockwise, angle the sprite straight down. If you want the door to rotate in a clockwise manner, angle the sprite straight up.
 
:STEP 3: Place one sector effector sprite somewhere else in the door sector. Give this sprite the same hitag value you gave the sprite in step 2. Leave the lotag value as 0. Change the angle of this sprite to point straight down. You are now finished - take a look at the tutorial map if you don't quite understand.
 
::NOTE 1: Several versions of this door can be made. Look at the tutorial example to see the different versions in action.
 
===Making Doors Auto Close===
 
''Map Name: TUTORIAL.MAP (ROOM 1-H)''
 
To make any door auto-close, place one sector effector sprite in the door sector, and give it a lotag value of 10. The hitag value is the delay that the door will wait before it closes. A value of 32 is one second, 64 is two seconds, and so on.
 
===Making Locked Doors===
 
''Map Name: TUTORIAL.MAP (ROOM 1-I)''
 
To make a locked door (that must be opened with a keycard) follow these steps:
 
:STEP 1: Place an access pad sprite (#130 or #170) somewhere in your map. Give it a hitag value of 212. Give it a unique lotag value.
 
:STEP 2: Place an ActivatorLocked sprite (#4) in the door sector. Give this sprite the same lotag value you gave the access pad.
 
:STEP 3: Place a key sprite (#60) somewhere in your level.
 
:STEP 4: Change the palette of *both* the key and the access pad (use [ALT]+[P] in 3D mode) to the following values to make one of the 3 different kinds of keys and locks:
 
:* 0 = Blue
:* 21 = Red
:* 23 = Yellow


[[Category:Level editing documentation]]
[[Category:Level editing documentation]]

Revision as of 17:45, 10 September 2006

Build/Mapster32 Map Editing

NOTE: Much of information on this page is from around 1999. Some may be outdated, and some may be incorrect -- this page exists to get you started with the Level Editing and may not currently cover some of the additional features available in Mapster32.

Doors

Doors in Duke Nukem 3D are constructed in different ways using a combination of Sectors, Sector Tags, and Sector Effectors. Doors can be combined with GPSPEED sprites, ACTIVATOR/ACTIVATORLOCKED sprites, and MULTISWITCH sprites to create a multitude of effects. Refer to the tutorial maps TUTORIAL.MAP and ADVANCED.MAP as noted in the articles for reference.

Subcategories

This category has only the following subcategory.

Pages in category "Editing Doors"

The following 10 pages are in this category, out of 10 total.