Where'd They Come From? - by Brian Osman (osmanb@rpi.edu)

Submitted to:
The QuakeLab - http://www.in2nett.com/stevefu/QuakeLab

        IDEA:
        ----
	One of the oldest traps used even in the days of DOOM was the
        teleportation of monsters somewhere near the player. This is also
        possible in Quake, and can actually be done even better than before.
        Brushes can be used to force monsters to teleport, and you have
        incredible control over where they go.

        TEXTURES:
        --------

        There are no real texturing needs. The monster den is never
        seen, and the rest is just triggers and destinations.

        ENTITIES:
        --------
	trigger_teleport, info_teleport_destination, and trigger_once

        WHAT TO DO:
        ----------
        1) Start with a basic room. Make a second copy, where the monsters
        will be kept. (I call this the monster den.) Put the den somewhere
        outside the normal scope of the level. Put the monsters you will be
        teleporting in it, but space them out, so that each one has plenty of
        elbow room. Now, for each monster, put a trigger_teleport brush around
        it (so the monster is inside the telporter). Each of these should have
        the same targetname (I used trap1). This way, every monster will be
        teleported at once. (When a trigger_teleport is triggered, anything
        inside it is automiatically teleported.)

        2) Now, give each of the trigger_teleports a DIFFERENT target value.
        If not, all of your monsters will teleport to the SAME place, and
        you will get an impressive "Shower of Gibs" trap. (E1M7 does this to
        get the cool visual at the end.) I used enumerated targets: room1,
        room2, etc.

        3) The next step is to set up where the monsters will appear. Create
        as many info_teleport_destination entities as you have monsters. Put
        each one where you want the corresponding monster to appear, and
        give it the same targetname as the target value for the
        trigger_teleport. (I also set the angle on each of these so that the
        monsters end up facing the player when he sets of the trap.)

        4) Finally, add the trigger for the trap. Create a trigger_once
        entity (brush) and place it where you want the trap to be triggered
        from. If you simply place it in the level, like I did, then the player
        will walk through that area, and set off the trap. Give this trigger a
        target value that is the same as the targetname for the
        trigger_teleports created in step 1.

        5) You're done! This seems long, but it's not really that hard.
        The trigger_once tells each trigger_teleport to send the monster(s)
        inside to the corresponding info_teleport_destination.

        NOTES:
        -----
	The nailgun in my level is not a trigger or anything. It is just
        there as bait to lure the player into my trigger.

        OTHER IDEAS:
        -----------

	If the trigger_teleport is inside the level somewhere, you could
        use this system to teleport people. (Example: put it aound the
        rocket launcher, and have a button someone else can push to send their
        greedy butt into a cage or something.) Also, by using a
        trigger_multiple, instead of a trigger_once, the trap could be reused.
        This won't work too well with monsters, as they don't come back, but
        to teleport people around, that would be perfectly ok.

        Any questions or comments? Please e-mail me: osmanb@rpi.edu
