From Bohemia Interactive Community
Jump to: navigation, search
Introduced with Armed Assault version 1.00
  Arguments of this scripting command have to be local to the client the command is executed onEffects of this scripting command are not broadcasted over the network and remain local to the client the command is executed onThis scripting command must be executed on the server to work properly in multiplayer

Click on the images for descriptions

Introduced in

Armed Assault


Sets the actual mission date and time. This command is JIP compatible. Players joining after mission start will get current server date set up.


setDate [year, month, day, hour, minute]
[year, month, day, hour, minute]: Array
Return Value:


Example 1:
setDate [1986, 2, 25, 16, 0]; //(4:00pm February 25, 1986)
Example 2:
Set real date: //postInit = 1; if (isServer) then { waitUntil {time > 0}; setDate (missionStart select [0,5]); };

Additional Information

See also:


Only post proven facts here. Report bugs on the feedback tracker. Use the talk page or the forums for discussions.
Add New Note | How To


10:00, 7/12/2010 (BST)
This command sets the date for the southern hemisphere only, i.e. when the map is in northern hemisphere a date [2010,12,7,17,0] is in day light and and date [2010,6,7,17,0] is in darkness.
21:35, 31 October 2011 (EET)
In multiplayer, the effect of this command is local, not global. The date from the server is synchronized with clients when they join the game (including start of the mission and joining in progress). E.g. if this command is executed on server in the init.sqf before the mission starts, every client will be synchronized with server as mission is started. However, if you run this command in the middle of the mission, effect is local.

Bottom Section

Posted on October 4, 2014 - 17:43 (UTC)
Since an unknown version of ARMA 3, this command now has global effect when executed on the server.
Posted on February 5, 2015 - 06:38 (UTC)
Arma 3 1.38.128937- Leapyear BUG - setdate [2016,12,31,23,59] yields an ingame date of the 1st of January 2017. If left to tick over from the 30th of December it ticks to 1st January skipping the 31st of December entirely.
Posted on April 23, 2017 - 02:58 (UTC)
Regarding execution in the middle of a session, the post of MulleDK13 is not entirely true. If you don't change the year, you are perfectly fine when executing the command on the server only. However, the server does not sync the year. Hence, if you do change the year, you have to execute the command on the server, clients and JIP to account for the missing sync. e.g.
[[], {setDate [1986, 2, 25, 16, 0]}] remoteExec ["call",0,"JIP_id_setDate"];