GSC X TWS Time Manager

by GSC Zeus
GSC X TWS Time Manager

Summary

This mod provides server-side control over the progression of time in Arma Reforger.

Description

Dynamic Day & Night Time Manager
This server-side mod provides complete, dynamic control over time progression, date synchronization, and client time-drift correction in Arma Reforger. 

Administrators can independently scale daytime and nighttime speeds, leverage astronomical sunrise/sunset calculations, synchronize real-world system dates, and enforce custom startup schedules via an external JSON configuration file.

Key Features:
- Independent Acceleration Rates: Define separate time speed multipliers for day and night cycles.
- Astronomical Sun Position Detection: Dynamically detects actual sunrise and sunset based on map latitude, longitude, and seasonal sun angles.
- Real-Time Date Sync: Option to automatically set the in-game date to the host server's actual OS system date upon launch.
- Custom Startup Date & Time: Enforce specific in-game start times and dates on server startup.
- Seamless Client Synchronization: Automatic time synchronization for Join-In-Progress (JIP) players and periodic background drift correction.
- Auto-Updating JSON Config: Automatically creates `$profile:GSC_TimeConfig.json` on first launch and dynamically appends new keys without overwriting existing admin values.
- Zero Performance Overhead: Fully optimized via cached C++ entity references and lightweight interval checks.

Configuration
On first startup, the mod generates or updates the configuration file located at `$profile:GSC_TimeConfig.json`:

JSON:
{
	"dayTimeAcceleration": 4.0,
	"nightTimeAcceleration": 12.0,
	"dayStartHour": 6,
	"nightStartHour": 19,
	"syncIntervalSeconds": 60,
	"syncOnPlayerJoin": 1,
	"playerJoinSyncDelaySeconds": 2.0,
	"enableDebugLogs": 1,
	"useAstronomicalSunSet": 1,
	"useRealDate": 1,
	"setCustomDate": 0,
	"startYear": 2026,
	"startMonth": 9,
	"startDay": 16,
	"setCustomTime": 0,
	"startTimeOfDay": 9.0
}

Configuration Parameters
- dayTimeAcceleration: Speed multiplier during daytime hours (e.g., 4.0 means 1 in-game hour passes in 15 real-world minutes).
- nightTimeAcceleration: Speed multiplier during nighttime hours (e.g., 12.0 means 1 in-game hour passes in 5 real-world minutes).
- dayStartHour: Fallback hour (0–23) marking daytime start (used when `useAstronomicalSunSet` is disabled).
- nightStartHour: Fallback hour (0–23) marking nighttime start (used when `useAstronomicalSunSet` is disabled).
- syncIntervalSeconds: Interval in seconds for hard client-server time sync (drift correction).
- syncOnPlayerJoin: Enables instant time synchronization when a player joins (1 = Enabled, 0 = Disabled).
- playerJoinSyncDelaySeconds: Delay in seconds before synchronizing JIP players after connection.
- enableDebugLogs: Enables clean server console logging (1 = Enabled, 0 = Disabled).
- useAstronomicalSunSet: Automatically calculates day/night transitions using native map solar geometry (1 = Enabled, 0 = Disabled).
- useRealDate: Automatically sets the in-game date to match the host server's real OS system date on startup (1 = Enabled, 0 = Disabled).
- setCustomDate: Enforces a custom in-game date on server startup if `useRealDate` is set to 0 (1 = Enabled, 0 = Disabled).
- startYear / startMonth / startDay: Target year, month, and day used when `setCustomDate` is enabled.
- setCustomTime: Enforces a custom in-game start time on server startup (1 = Enabled, 0 = Disabled).
- startTimeOfDay: Target start time in 24h decimal format (e.g., 9.0 = 09:00, 14.5 = 14:30) used when `setCustomTime` is enabled.

Installation
1. Add the mod to your server mod list.
2. Launch the server once to generate the default configuration file in your server profile directory.
3. Edit `$profile:GSC_TimeConfig.json` to your desired settings and restart the server.

License

Arma Public License No Derivatives (APL-ND)

Rating
100%
Version
1.0.3
Game Version
1.8.0.13
Version size
9.70 KB
Downloads
8,129
Created
16.09.2026
Last Modified
25.09.2026
ID
6A6093E0E7D8C1B1