Difference between revisions of "Timer Block"
(→Actions) |
Vox Serico (talk | contribs) m (categories) |
||
(23 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{SimpleItembox|Mod:Vanilla/CubeBlock/TimerBlockLarge|Size||Mass||Integrity||BuildTimeSeconds||IsAirTight||ResourceSinkGroup||PCU}} | ||
+ | {{SimpleItembox|Mod:Vanilla/CubeBlock/TimerBlockSmall|Size||Mass||Integrity||BuildTimeSeconds||IsAirTight||ResourceSinkGroup||PCU}} | ||
+ | {{CategorizeComponents|Mod:Vanilla/CubeBlock/TimerBlockLarge}} | ||
+ | == Overview == | ||
+ | The '''Timer Block''' is a meta block used to execute actions of any block it's connected to ''(not physically)''. The actions can also be executed after a delay, hence the name. This allows automation / [[Programmable Block|programming]] of actions. | ||
− | + | == Usage == | |
− | + | 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 [[Connector]]s, [[Rotor]]s or [[Piston]]s). Connection via [[Antenna|antennas]], i.e. executing actions in remote objects is currently not possible. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | === Terminal === | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | | | + | {| class="wikitable" |
− | } | + | !style="text-align:left;"| Name !!style="text-align:left;"| Min. Value !!style="text-align:left;"| Max. Value !!style="text-align:left;"| Unit !!style="text-align:left;"| Description |
+ | |- | ||
+ | | Trigger Delay ||style="text-align:right;"| 1 ||style="text-align:right;"| 3600 || Second || Delay to execute the actions after starting the timer | ||
+ | |} | ||
+ | |||
+ | * '''Trigger now''' - Immediately executes all programmed actions | ||
+ | * '''Start''' - Starts a timer with the current delay and executes all programmed actions after the timer expires | ||
+ | * '''Stop''' - Stops the timer if running thereby preventing the execution of the actions after the delay | ||
+ | * '''Setup Actions''' - Set up blocks to trigger when the Timer Block is activated | ||
+ | |||
+ | === Rules / Behavior === | ||
+ | # 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) | ||
+ | # 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. | ||
+ | # 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")<br/> | ||
+ | E.g. | ||
− | + | Timer Block 1:<br/> | |
+ | Action 1: Timer Block 2 - ''Toggle block On''<br/> | ||
+ | Action 2: Timer Block 2 - ''Start''<br/> | ||
+ | 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:<br/> | |
+ | Action 1: Rotor 1 - ''Increase Velocity''<br/> | ||
+ | Action 2: Timer Block 2 - ''Trigger Now''<br/> | ||
− | + | 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. | |
− | |||
− | |||
− | + | == Media == | |
+ | [[File:Timer_Block_TimerB01.jpg|400px|none]] | ||
− | == | + | == Tips == |
+ | * Timer blocks can be used to setup a long list of actions with one trigger. For example, a [[Button Panel]] switch can activate a Timer block, which then triggers a group of lights, and several individual blocks. | ||
− | + | == Known Issues == | |
+ | * 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. | ||
− | == | + | == See Also == |
− | + | * [[Programmable Block]] | |
− | |||
− | |||
− | |||
− | |||
− | == | + | == Programming == |
+ | * [[Programming_Guide/Action_List#Timer_Block|Action List - Timer Block]] | ||
− | + | == Update History == | |
− | + | <div style="-webkit-border-image: none;-webkit-box-shadow: rgba(0, 0, 0, 0.046875) 0px 1px 1px 0px inset;background-color: #eeeeee;border-bottom-color: #AFAFAF;border-bottom-left-radius: 3px;border-bottom-right-radius: 3px;border-bottom-style: solid;border-bottom-width: 1px;border-left-color: #AFAFAF;border-left-style: solid;border-left-width: 1px;border-right-color: #AFAFAF;border-right-style: solid;border-right-width: 1px;border-top-color: #AFAFAF;border-top-left-radius: 3px;border-top-right-radius: 3px;border-top-style: solid;border-top-width: 1px;box-shadow: rgba(0, 0, 0, 0.046875) 0px 1px 1px 0px inset;color: #333;display: block;font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;font-size: 1em;height: auto;line-height: 20px;margin-bottom: 5px;margin-left: 8px;margin-right: 8px;margin-top: 0px;min-height: 20px;padding-bottom: 4px;padding-left: 4px;padding-right: 4px;padding-top: 4px;width: auto;"> | |
− | + | {| class="wikitable" style="width: 100%" | |
− | + | |style="text-align: left;width: 8%"| [[Update 01.047]] ||style="padding-left: 10px;padding-right: 10px;"| | |
− | + | *Timer Block Introduced | |
− | |||
− | | | ||
− | |||
− | |- | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
− | + | </div> | |
+ | [[Category:Functional Blocks]] |
Latest revision as of 22:44, 18 May 2020
259,000,000 mg
0.259 t
30,200,000 mg
0.0302 t
Contents
Overview
The Timer Block is a meta block used to execute actions of any block it's connected to (not physically). The actions can also be executed after a delay, hence the name. This allows automation / programming of actions.
Usage
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.
Terminal
Name | Min. Value | Max. Value | Unit | Description |
---|---|---|---|---|
Trigger Delay | 1 | 3600 | Second | Delay to execute the actions after starting the timer |
- Trigger now - Immediately executes all programmed actions
- Start - Starts a timer with the current delay and executes all programmed actions after the timer expires
- Stop - Stops the timer if running thereby preventing the execution of the actions after the delay
- Setup Actions - Set up blocks to trigger when the Timer Block is activated
Rules / Behavior
- 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)
- 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.
- 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.
Media
Tips
- Timer blocks can be used to setup a long list of actions with one trigger. For example, a Button Panel switch can activate a Timer block, which then triggers a group of lights, and several individual blocks.
Known Issues
- 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.
See Also
Programming
Update History
Update 01.047 |
|