Timer Block
Description
The Timer Block is a meta block used to execute actions of any block it's connected to. The actions can also be executed after a delay, hence the name. This allows automation / programming of actions.
An action is defined by the properties of a block. Often the actions are the ones you can apply in the "G"-menu when e.g. configuring the action bar of a cockpit. For instance, a warhead can be detonated or the safety can be toggled on or off. The Timer Block can also execute it's own actions, enabling loops by ending it's sequence with a Start.
A block is connected with the Timer Block when both are on the same grid or sub-grid (other grids that connected via Connectors, Rotors or Pistons). Connection via antennas, i.e. executing actions in remote objects is currently not possible.
A curious property of the timer block is that although it requires electricity, it does not actually consume any Watts idle or otherwise. If a Grid has any power available to it, it will be able to run without consuming any of the electricity available.
Properties
Name | Min. Value | Max. Value | Unit | Description |
---|---|---|---|---|
TriggerDelay | 1 | 3600 | Second | Delay to execute the actions after starting the timer |
Actions
Action | Prerequisite | Description |
---|---|---|
Toggle block On/Off | None | Toggles on/off state of the Timer Block |
Toggle block On | None | Switches the Timer Block on. |
Toggle block Off | None | Switches the Timer Block off. |
Increase Delay | None | Increases the current delay by tbd. seconds |
Decrease Delay | None | Decreases the current delay by tbd. seconds |
Trigger now | Block has to be on | Immediately executes all programmed actions |
Start | Block has to be on | Starts a timer with the current delay and executes all programmed actions after the timer expires |
Stop | None (?) | Stops the timer if running thereby preventing the execution of the actions after the delay |
Programming
Rules / Behaviour
- The Timer Block can execute up to 90 actions
- Switching the Timer Block off while the timer is running doesn't stop the timer, just interrupts its operation for the duration it's off. The timer continues operation after switching the Timer Block on again (this is currently bugged, it will not continue if a map has been reloaded)
- Executing actions Trigger Now and Start immediately after action Toggle block On: These actions won't be executed if programmed in another timer block which switches the timer block on (when it is in state "off")
E.g.
Timer Block 1:
Action 1: Timer Block 2 - Toggle block On
Action 2: Timer Block 2 - Start
On triggering Timer Block 1 when Timer Block 2 is off, the Start action has no effect because Timer Block 2 needs some time to power up but the Start action is executed before it's powered up.
- Switching a Timer Block off ends a Trigger Now (endless) loop.
E.g.
Timer Block 2:
Action 1: Rotor 1 - Increase Velocity
Action 2: Timer Block 2 - Trigger Now
Triggering Timer Block 2 starts an endless loop increasing the revolution speed of Rotor 1. Switching Timer Block 2 off will end this loop. It won't be continued when switching Timer Block 2 on again.
- Timer block delays are not entirely accurate. A timer set to 5 seconds may not fire until 5.5 seconds have elapsed. If you are triggering things which depend on an exact number of game ticks/length of game time, timer delays may not be the right tool. Further experiments needed to confirm exact behaviour.