time: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Warning note for A3 JIP bug)
(see also)
(11 intermediate revisions by 6 users not shown)
Line 7: Line 7:
____________________________________________________________________________________________
____________________________________________________________________________________________


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


| [[Number]] <nowiki>=</nowiki> '''time''' |= Syntax
| '''time''' |SYNTAX=


| [[Number]] |= Return value
| [[Number]] |RETURNVALUE=
 
|x1=<code>_future = [[time]] + 30;
[[waitUntil]] {[[time]] >= _future};  ''/* continue after 30 seconds... */''</code> |EXAMPLE1=
 
|x2=Wait until mission fully started:<code>[[waitUntil]] {[[time]] > 0};</code> |EXAMPLE1=
____________________________________________________________________________________________
____________________________________________________________________________________________


| [[daytime]], [[date]], [[dateToNumber]] |= See also
| [[date]], [[daytime]], [[serverTime]], [[skipTime]], [[accTime]], [[dateToNumber]], [[timeMultiplier]], [[setTimeMultiplier]], [[missionStart]], [[diag_tickTime]], [[diag_deltaTime]], [[BIS_fnc_timeToString]] |SEEALSO=


}}
}}
Line 26: Line 31:
<dt class="note">'''[[User:Hardrock|hardrock]]'''<dd class="note">''Notes from before the conversion:''
<dt class="note">'''[[User:Hardrock|hardrock]]'''<dd class="note">''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.
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]]




Line 55: Line 61:


[[Category:Scripting Commands|TIME]]
[[Category:Scripting Commands|TIME]]
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP 1.96|TIME]]
[[Category:Scripting Commands OFP 1.96|TIME]]
[[Category:Scripting Commands OFP 1.46|TIME]]
[[Category:Scripting Commands OFP 1.46|TIME]]
Line 62: Line 69:
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{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.