Logic timer

From Valve Developer Community

This point-based entity is available in all Source games.

Table of contents

Entity Description

An entity that fires a timer event at regular, or random, intervals. It can also be set to oscillate between a high and low end, in which case it will fire alternating high/low outputs each time it fires.
  • An oscillator's first output will be an OnTimerHigh output.
  • Use with logic_case for extremely random events.
  • Could be used to deploy env_headcrabcanisters at random intervals, instead of using fixed delays on the inputs.

Keyvalues

Defines the name that other entities refer to this entity by.
  • hammerid [Episode Two Update]
<integer readonly> This id is used for debugging purposes in Hammer.
  • StartDisabled
<boolean>
  • UseRandomTime
<boolean> If set, fires randomly at an interval from the last trigger.
  • LowerRandomBound
<float> If UseRandomTime is set, this is the minimum time between timer fires. The time will be a random number between this and the UpperRandomBound.
  • UpperRandomBound
<float> If UseRandomTime is set, this is the maximum time between timer fires. The time will be a random number between the LowerRandomBound and this.
  • RefireTime
<float> If UseRandomTime isn't set, this is the interval between timer fires, in seconds.

Flags

  • 1 : Oscillator (alternates between OnTimerHigh and OnTimerLow outputs)

Inputs

  • Kill
Removes this entity from the world.
Removes this entity and all its children from the world.
  • AddOutput <string>
Evaluates a keyvalue/output on this entity. It can be potentially very dangerous, use with care.
Format: <key> <value>
Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire (-1 == infinite)>
Causes this entity's OnUser1-4 outputs to be fired. See User Inputs and Outputs.
  • Enable
Enable this entity.
  • Disable
Disable this entity.
  • Toggle
Toggle the timer on/off.
  • RefireTime <integer>
Set a new Refire Interval.
  • FireTimer
Force the timer to fire immediately.
  • LowerRandomBound <float>
Set a new Minimum Random Interval.
  • UpperRandomBound <float>
Set a new Maximum Random Interval.
  • ResetTimer [Episode Two Update]
  • AddToTimer <float> [Episode Two Update]
  • SubtractFromTimer <float> [Episode Two Update]
  • UseRandomTime [Episode Two Update]

Outputs

Fired in response to FireUser1-4 inputs. See User Inputs and Outputs.
!activator = activator
  • OnTimer
Fired when the timer expires.
  • OnTimerHigh
Fired every other time for an oscillating timer.
  • OnTimerLow
Fired every other time for an oscillating timer.