Skip to content

Timecycle Editor

Build your server's own look. Start from any of the game's 1,101 timecycle modifiers or from nothing, set the light, fog, colour grade and post effects with real controls over the ranges the game itself uses, and see the change on the actual Los Santos world as you drag. A diff shows exactly what you moved against the vanilla modifier, and the download is a ready resource: the timecycle_mods file, the manifest that mounts it and the client Lua, or the same modifier built at runtime with no data file at all.

Config & CodeTimecycle, Postfx, Weather, DownloadRead the docs

What a timecycle modifier is

GTA V decides how the world looks from a timecycle: a big table of light, fog, colour and post effect values that the game reads for the current weather and the current time of day. A timecycle modifier is a short list of overrides on top of that table. It sets a handful of those values and leaves the rest alone, which is why underwater works at noon and at midnight.

The file lives at common/data/timecycle/timecycle_mods_1.xml and three more like it, and one modifier looks like this:

<modifier name="underwater" numMods="115" userFlags="1">
  <light_dir_col_r>0.004 0.900</light_dir_col_r>
  <light_dir_mult>1.000 0.500</light_dir_mult>
</modifier>

One element per parameter, named after the parameter, holding two floats. This page reads and writes exactly that, and it was checked against all twelve timecycle_mods files the game ships: 3,043 modifiers and 78,389 parameter entries read and written back with no difference. (One of Rockstar's own,DLC_mp2026_01_VAULT_ROOM, says numMods="54" while the file holds 57 parameters, so the count here is always recomputed rather than copied.)

The two floats

Every parameter stores two. In the engine that is tcModData, a variable index plusm_value1 and m_value2. The first is the value this page draws and the one every tool and guide treats as "the" value. What the second one means is not documented anywhere. Not in the game files, not in the Cfx natives reference (which says only "the second value of variable"), not in the FiveM source (whose header comments every other field and leaves those two bare), and not in the GTAForums timecycle thread, which is about the base weather files. So this page does not claim a meaning. It carries the number through untouched, so a modifier you open and save is the modifier you opened.

What can be measured, over all 1,101 stock modifiers and 31,523 parameter entries:

  • 66.9% of entries have the second float at exactly 0, and 27.1% at exactly 1. Only 6% are anything else.
  • 253 of the 325 parameters the stock modifiers ever set have it at 0 in every single modifier that sets them, including ones that clearly do something, like postfx_exposure.
  • For all 3,462 colour triples in the game's own files, the three channels carry the same second float, while the first floats differ in three quarters of them. So the second float is never a second colour.
  • A few parameters, mostly fog and far_clip, carry a real second number in their own units that usually equals the first (fog_start 93% of the time, far_clip 60%).

Turn on Second float above the parameter list to edit it. When you add a parameter the second float starts at the value the game's own modifiers use most often for that parameter, which is the least surprising thing it can do. (FiveM's own code starts a brand new variable at 0 instead, which is another sign that nothing depends on it in an obvious way.) SET_TIMECYCLE_MODIFIER_VAR takes both floats, so the generated code loses nothing either.

Two ways to ship it

A streamed file

The download puts a timecycle_mods file in the resource and mounts it withdata_file 'TIMECYCLEMOD_FILE', the same route Rockstar's own DLC packs use for their timecycle files. Those files merge: mpchristmas2017 ships 391 modifiers and update.rpf ships 647, and the 259 names update has that the DLC does not still work in game, so mounting cannot be a replacement. Your modifier lands alongside the game's 1,101.

Which copy wins when two mounted files use the same name is not documented anywhere, so give your modifier a name of its own rather than counting on overriding a vanilla one. The other catch: a data file only mounts when a client connects, so people already on the server will not get it until they rejoin.

Built in code

FiveM can also make a modifier at runtime. CreateTimecycleModifier makes an empty one,CloneTimecycleModifier forks an existing one, SetTimecycleModifierVar writes a parameter, and SetTimecycleModifier picks it. No data file, no rejoin. If you started from a vanilla modifier the generated script clones that one and writes only what you changed, so 115 parameters come out as three lines.

The catch is the other way round: the modifier only exists on clients that ran the script, and FiveM destroys every runtime modifier when the client disconnects, so the script has to run again on each join. It does survive a resource restart, because nothing ties it to the resource that made it.

Pick the one you want on the Export tab. Both come out of the same document, so you can switch and re-download.

What the preview does and does not show

The 3D view is our own render of the real Los Santos world with the same screen pass theScreen Effects Browser draws its before and after pictures with. Light direction and colour, ambient, interior light, fog, the far clip, exposure, the filmic tone map, colour correction and shift, desaturation, the colour gradient, vignette, noise, scanlines, chromatic aberration, lens distortion, bloom, depth of field and the night vision block all move.

Shadows, SSAO, reflections, water, heat haze, god rays, lens flares, the sun and moon direction, motion blur, streaming distances and the weather and particle switches do not. They are written into the file exactly as you set them, they just have nothing to change in a browser. Each row says whether the preview draws it, and there is a filter for the ones that do.

It is an approximation. The only place a timecycle looks exactly right is in the game.

What this page will not do

It does not edit the base timecycle, the w_clear.xml family. Those are a different and much bigger file: <timecycle_keyframe_data> holding one <cycle> with two regions, GLOBAL and URBAN, and inside each one 423 parameters that each carry 13 numbers, one per time of day sample with the last repeating the first so the day wraps. That is 10,998 floats inw_clear.xml alone, and the game ships one file per weather type. Editing a curve per parameter, per region, per weather is a different tool, and half doing it here would be worse than not doing it.

If what you want is "the whole server looks colder", a modifier applied withSetTimecycleModifier is usually the right answer anyway, and that is what this page builds.

Everything stays in your browser

The parameters, the XML and the zip are all made on your machine, and a timecycle_mods file you open is never uploaded. Your work autosaves in this browser, Copy link puts the whole modifier in the page address as a diff against the vanilla one you started from, and the zip carries that link in its README so you can open it again later.