time: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
(see also)
(41 intermediate revisions by 20 users not shown)
Line 1: Line 1:
back to [[Scripting_Reference#T|COMREF]]
{{Command|= Comments
____________________________________________________________________________________________


<h2 style="color:#000066">'''time'''</h2>
| ofp |= Game name


|1.00|= Game version
____________________________________________________________________________________________


'''Operand types:'''
| Returns time elapsed since mission started (in seconds). The value is different on each client. If you need unified time, use [[serverTime]]. |DESCRIPTION=
____________________________________________________________________________________________


None
| '''time''' |SYNTAX=


'''Type of returned value:'''
| [[Number]] |RETURNVALUE=


[[Number]]
|x1=<code>_future = [[time]] + 30;
[[waitUntil]] {[[time]] >= _future};  ''/* continue after 30 seconds... */''</code> |EXAMPLE1=


'''Description:'''
|x2=Wait until mission fully started:<code>[[waitUntil]] {[[time]] > 0};</code> |EXAMPLE1=
____________________________________________________________________________________________


Time elapsed since mission started (in seconds).
| [[date]], [[daytime]], [[serverTime]], [[skipTime]], [[accTime]], [[dateToNumber]], [[timeMultiplier]], [[setTimeMultiplier]], [[missionStart]], [[diag_tickTime]], [[diag_deltaTime]], [[BIS_fnc_timeToString]] |SEEALSO=


}}


'''Comments:'''
<h3 style="display:none">Notes</h3>
<dl class="command_description">
<!-- Note Section BEGIN -->


Not to be confused with [[_time]].
<dd class="notedate">Posted on August 4, 2006 - 12:02
<dt class="note">'''[[User:Hardrock|hardrock]]'''<dd class="note">''Notes from before the conversion:''


Within a script, the reserved local variable [[_time]] returns the time elapsed since the script started running.
Not to be confused with ''_time''. Within a script, the reserved local variable ''_time'' returns the time elapsed since the script started running. Note that the value of _time is not saved when the mission is saved and so will be reset to zero when a mission is restarted from a saved position. The value of [[time]] is saved correctly and will resume from where it was.
::''_time'' has only special meaning in SQS scripts, in SQF script it is just another variable. --[[User:Killzone_Kid|Killzone_Kid]]
 
 
<dd class="notedate">Posted on January 5, 2007 - 12:24
<dt class="note">'''[[User:Giova|Giova]]'''<dd class="note">''Notes from before the conversion:''
 
time works properly in sqf called with execVM command. In an other hand, _time does not works in sqf called with execVM command.(Arma v1.02.5103GER)
 
<dd class="notedate">Posted on October 02, 2010 - 12:02
<dt class="note">'''[[User:TeaCup|teaCup]]'''<dd class="note">
On overloaded servers (below ~10 server FPS), time readings are unreliable. Seconds actually take longer. While the clients keep a steady tempo, server time lags behind, resulting in considerable offset between client and server time (easily 30 minutes for a 2 hour game). Client time is synchronised to server time during JIP, but other than that it runs independently.
 
 
<dd class="notedate">Posted on 30 Oct 2013
<dt class="note">'''[[User:Dr_Eyeball|Dr Eyeball]]'''<dd class="note">'''Arma 3 JIP bug:'''
 
As of Arma 3 v1.02, for JIP clients 'time' value will start off counting from 0, not the real 'time' value. After about 2.5sec (on average), it will then jump to a high value and synchronise with the real 'time' value, which could be 900, for example.
 
Therefore, do not use 'time' for any start of mission init timeouts; it's unreliable. (It's odd that it doesn't synchronise at the same time as public variables.)
 
 
<!-- Note Section END -->
</dl>
 
<h3 style="display:none">Bottom Section</h3>
 
 
 
[[Category:Scripting Commands|TIME]]
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP 1.96|TIME]]
[[Category:Scripting Commands OFP 1.46|TIME]]
[[Category:Scripting Commands ArmA|TIME]]
[[Category:Command_Group:_Mission_Information|TIME]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
 
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on September 1, 2016 - 18:18 (UTC)</dd>
<dt class="note">[[User:Demellion|Demellion]]</dt>
<dd class="note">
'''In MP''': Since per-client time and server time is unconsistant I strongly recommend execution of time-critical tasks from server-side scripts and with [[remoteExec]] or [[remoteExecCall]] ('''Since only A3 1.50''' alternative may be [[publicVariableClient]] with pre-defined handler) as this will eliminate any time calculation lags and make it reliable.
</dd>
</dl>
<!-- DISCONTINUE Notes -->

Revision as of 20:52, 11 July 2019

Hover & click on the images for description

Description

Description:
Returns time elapsed since mission started (in seconds). The value is different on each client. If you need unified time, use serverTime.
Groups:
Uncategorised

Syntax

Syntax:
time
Return Value:
Number

Examples

Example 1:
_future = time + 30; waitUntil {time >= _future}; /* continue after 30 seconds... */
Example 2:
Wait until mission fully started:waitUntil {time > 0};

Additional Information

See also:
datedaytimeserverTimeskipTimeaccTimedateToNumbertimeMultipliersetTimeMultipliermissionStartdiag_tickTimediag_deltaTimeBIS_fnc_timeToString

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Posted on August 4, 2006 - 12:02
hardrock
Notes from before the conversion: Not to be confused with _time. Within a script, the reserved local variable _time returns the time elapsed since the script started running. Note that the value of _time is not saved when the mission is saved and so will be reset to zero when a mission is restarted from a saved position. The value of time is saved correctly and will resume from where it was.
_time has only special meaning in SQS scripts, in SQF script it is just another variable. --Killzone_Kid
Posted on January 5, 2007 - 12:24
Giova
Notes from before the conversion: time works properly in sqf called with execVM command. In an other hand, _time does not works in sqf called with execVM command.(Arma v1.02.5103GER)
Posted on October 02, 2010 - 12:02
teaCup
On overloaded servers (below ~10 server FPS), time readings are unreliable. Seconds actually take longer. While the clients keep a steady tempo, server time lags behind, resulting in considerable offset between client and server time (easily 30 minutes for a 2 hour game). Client time is synchronised to server time during JIP, but other than that it runs independently.
Posted on 30 Oct 2013
Dr Eyeball
Arma 3 JIP bug: As of Arma 3 v1.02, for JIP clients 'time' value will start off counting from 0, not the real 'time' value. After about 2.5sec (on average), it will then jump to a high value and synchronise with the real 'time' value, which could be 900, for example. Therefore, do not use 'time' for any start of mission init timeouts; it's unreliable. (It's odd that it doesn't synchronise at the same time as public variables.)

Bottom Section

Posted on September 1, 2016 - 18:18 (UTC)
Demellion
In MP: Since per-client time and server time is unconsistant I strongly recommend execution of time-critical tasks from server-side scripts and with remoteExec or remoteExecCall (Since only A3 1.50 alternative may be publicVariableClient with pre-defined handler) as this will eliminate any time calculation lags and make it reliable.