I've played a few quake2 maps and haven't seen any timing implemented.
People just use direct triggers in their maps.
I will tell you in this tutorial how to implement timing using
two techniques that I have perfected.
First of all lets start of with the simple way. Now lets say
you have a room with four lights in it and you want the second
to turn on 1 second after the first, the third 1 second after the
second, and so on.
On top of this you want them triggered with one switch. Now a
trigger_relay has no delay build in so you have to use
something else. Most of you probably don't know this but a
trigger_multiple has a targetname for a reason. The obvious
reason is that it can be triggers both when the player walks
in or if it is triggered by another event.
As for the lights lets create a small room with four light.
Give each light a different targetname: Light1 for the first,
light2 for the second, and so on.
Now create a button or trigger that will turn on the light.
Give the button or trigger a target of start.
Now create a very small brush, make it a trigger_multiple, and
place it at the upper left corner of both the top and back
view. The placement is not necessary but you want to have the
triggers out of reach so the player doesn't trip them accidentally.
Now give the trigger_multiple a targetname of start and a
target of light1. You can use the delay field to choose when
you want the first light to turn on.
Create 3 more trigger_multiple for the rest of the lights
and follow the step above. Just set different delays for them
and then you got four independent lights turned on at
different times.
This is not really necessary but this way is good if you don't
expect to use the triggers twice.
The technique is almost the same. The first step is to create
a room with 4 lights with different targetnames. Also create
a button or trigger that will turn on the lights and give
it a target of start.
The second step is to create a func_timer with a targetname
of start and a target of start1.
The third step is to create a trigger_count with a targetname
of start1 and a target that point to the first light. I don't
think it matters where you put a func_timer.
Don't forget that the counters themselves don't have a delay
but you can set a wait time for the func_timer. Lets say its
1.
Now follow the third step for the rest of the lights that
need to be triggered. You have to give the trigger_count for
the first light a count of 1 and for the second a count of
2, and so on for all the lights.
What this does that each light will be triggered every value
of second that you put for the wait field in the func_timer.
As for this func_timer there is a wait of 1, so the first
light will tun on instantly. The second one in one second.
The third in two and so on.
That should be it. I think this will broaden the range of
effects that could be created in quake2.