Skip to main content

FB2TimeManager

Overview

  • Simulation manager for in-game time: current time/day/date, time scale, and day/night state. (lua_manifest Manager binding key="Time")

Metadata

FieldValue
Kindsystem
EnvironmentB2 - Simulation
Categorysystems
ExtendsFB2ManagerBase
Requirerequire('Systems.B2TimeManager')

Properties (22)

NameTypeDescription
AccRealTimenumber
CachedRealTimeSecondsPerGameMinuteInDaytimenumber
CachedTimeStringstring
CurrentTimeScalenumber
GameSpeedAccelerationHourEndinteger
InitialTimeStateEB1TimeControlState
LastRabbitHoleEndedTicksintegerGame-time ticks at the moment the rabbit-hole ended.
PauseReasonstable<EB1PauseReason, boolean>
RabbitholeSmoothTimeScaleBoundaryinteger
RealTimeSecondToInGameMinuteRationumberRatio multiplied to reflect real time into time ticks. Default is real 1 second = game 1 minute (00:00-06:00); from 06:00-24:00 it slows to real 2 seconds = game 1 minute.
RelativeTimeScaleByGame48Minnumber
StartDayintegerrefs...
StartHourinteger
StartMinuteinteger
TimeScaleFastnumber
TimeScaleNormalnumber
TimeScaleOverridestable<EB1TimeScaleOverrideReason, number>
TimeScaleRabbitHolenumber
TimeScaleRabbitHoleSmoothnumber
TimeScaleVeryFastnumber
bPossessHouseholdSleepingboolean
bTriggerTimeScaleRabbitHoleboolean

Functions (54)

FunctionParametersReturnsDescription
AddTimeInDay: integer, InHour: integer, InMinute: integer-Adds Time.
BuildTimeString--
CalcDateTimeAfterGameTimeFrom: FDateTime, GameTimeMinute: integerFDateTime
ClearDelayedTask--Clears Delayed Task.
ClearPostProcessTask--Clears Post Process Task.
ConvertDayOfWeekInType: EDayOfWeekEB1DayOfWeek
CustomTickForLuaState: EB2SimulationState, DeltaTime: number-
DelayedTasks--
GetAccRealTime-numberReturns Acc Real Time.
GetCachedTimeString-stringReturns Cached Time String.
GetCurrentTicks-integerReturns Current Ticks.
GetCurrentTime-FDateTimeReturns Current Time.
GetDay-integerReturns Day.
GetDayOfWeek-EB1DayOfWeekReturns Day Of Week.
GetHour-integerReturns Hour.
GetLastRabbitHoleEndedTicks-integerReturns the game-time ticks when the rabbit-hole ended (used as a guard for character stat decay).
GetMinute-integerReturns Minute.
GetPlayTime-FDateTimeReturns Play Time.
GetPlayTimeSpan-FTimespanReturns Play Time Span.
GetRealElapsedTimeInElapsedTicks: integernumberReturns Real Elapsed Time.
GetRealTimeSecondToInGameMinuteRatio-numberReturns Real Time Second To In Game Minute Ratio.
GetRealTimeSecondsPerGameMinute-numberReturns how many real-world seconds correspond to one in-game minute.
GetRelativeTimeScale-numberReturns the current time scale relative to the baseline of 1 in-game day = 48 real minutes.
GetTimeForTimeline-integerReturns Time For Timeline.
GetTimeScaleRawValue-numberReturns Time Scale Raw Value.
GetTimeScaleValuebIgnorePauseReason: booleannumberReturns Time Scale Value.
GetTimeState-EB1TimeControlStateReturns Time State.
IsAllHouseholdMemberSleepingInHouseholdId: FB1EntityIdbooleanReturns whether All Household Member Sleeping.
IsContainsPauseReasonInReason: EB1PauseReasonbooleanReturns whether Contains Pause Reason.
IsNightTimeInHour: integerbooleanReturns whether Night Time.
IsPaused-booleanReturns whether Paused.
IsValidTimeScaleOverrideValue (static)Reason: EB1TimeScaleOverrideReason, TimeScale: numberbooleanReturns whether Valid Time Scale Override Value.
IsValidTimeScaleRange (static)InTimeScale: numberbooleanReturns whether Valid Time Scale Range.
OnChangePossessEntityIdInPrevEntityId: FB1EntityId, InCurrEntityId: FB1EntityId-Callback invoked on Change Possess Entity Id.
OnChangePossessHouseholdInPrevHouseholdId: FB1EntityId, InCurrHouseholdId: FB1EntityId-Callback invoked on Change Possess Household.
PostProcessTasksbSingleTask: boolean-
RemoveTimeScaleOverrideInReason: EB1TimeScaleOverrideReason-Removes Time Scale Override.
Reset--
SendSyncTime--Sends Sync Time.
SetGamePausedInPause: boolean, InReason: EB1PauseReason-Sets Game Paused.
SetRealTimeSecondsPerGameMinuteInSeconds: number-Sets Real Time Seconds Per Game Minute.
SetTimeScaleInTimeScale: number-Sets Time Scale.
SetTimeScaleOverrideInReason: EB1TimeScaleOverrideReason, InTimeScale: number-Sets Time Scale Override.
SetTimeStateType: EB1TimeControlState-Sets Time State.
SetTriggerTimeScaleRabbitHolebInTriggerTimeScaleRabbitHole: boolean-Sets Trigger Time Scale Rabbit Hole.
StaticGetAccRealTime (static)-number
StaticGetCurrentTicks (static)-integer
StaticGetCurrentTime (static)-FDateTime
StaticGetDayFromTicks (static)InTick: integerinteger
StaticGetPassedDayCount (static)InFromTick: integer, InToTick: integerinteger
StaticGetRealElapsedTime (static)InElapsedTicks: integernumber
StaticIsPaused (static)-boolean
StaticIsTriggerTimeScaleRabbitHole (static)-boolean
TrySetPossessHouseholdSleepingbInValue: boolean-

Override points (15)

Implement these in Lua as FB2TimeManager.Override_Name = function(...) end.

FunctionParametersReturnsDescription
Override_AddTimeInDay: integer, InHour: integer, InMinute: integer-Adds Time.
Override_BuildTimeString--
Override_CalcDateTimeAfterGameTimeFrom: FDateTime, GameTimeMinute: integerFDateTime
Override_ClearDelayedTask--Clears Delayed Task.
Override_ClearPostProcessTask--Clears Post Process Task.
Override_ConvertDayOfWeekInType: EDayOfWeekEB1DayOfWeek
Override_CustomTickForLuaState: EB2SimulationState, DeltaTime: number-
Override_DelayedTasks--
Override_OnChangePossessEntityIdInPrevEntityId: FB1EntityId, InCurrEntityId: FB1EntityId-Callback invoked on Change Possess Entity Id.
Override_OnChangePossessHouseholdInPrevHouseholdId: FB1EntityId, InCurrHouseholdId: FB1EntityId-Callback invoked on Change Possess Household.
Override_PostProcessTasksbSingleTask: boolean-
Override_RemoveTimeScaleOverrideInReason: EB1TimeScaleOverrideReason-Removes Time Scale Override.
Override_Reset--
Override_SendSyncTime--Sends Sync Time.
Override_TrySetPossessHouseholdSleepingbInValue: boolean-