Ticking reference
The optional tick driver, the tick manager you can call from your own loop, and the interface your own components implement to tick with the simulation. For how to use it, see Ticking.
VtTickDriver
Component. Add it with Add Component → Vantage → Core → VtTickDriver.
Scene-placed pump for VtTickManager. One Update here replaces the per-component Update of every registered simulation driver (stats, buffs, abilities, threat, engagement, auras, AI, crafting, resource nodes, spawners, quest logs, projectiles, ground AoE), advancing them in VtTickGroup order with one shared deltaTime.
Inspector fields
| Field | Type | Default | Range | Description |
|---|---|---|---|---|
Simulation Time Scale (simulationTimeScale) |
float |
1 | ≥ 0 | Multiplier applied to Time.deltaTime before ticking the simulation. 1 = real time. 0 pauses every registered system without touching Time.timeScale (UI, camera, and combat text keep animating). |
Scripting API
| Member | Description |
|---|---|
bool IsActiveDriver { get; } |
True when this instance is the one pumping the scheduler (a second driver in the scene reports false and does nothing). |
IVtTickable
Interface. Implemented by VtAbilityRotation, VtAbilityScheduler, VtAuraEmitter, VtBuffScheduler, VtBuildSite, VtCombatEngagement, VtCompanionAi, VtEncounter, VtGroundAoeAnchor, VtHostileAi, VtMobSpawner, VtPredictedMovementExecutor, VtProjectileMover, VtRegenScheduler, VtResourceNode, VtRoaming, VtSummon, VtThreatTable, VtUnitAbilities, VtUnitBuffs, VtUnitCrafter, VtUnitOrders, VtUnitQuestLog, VtUnitRespawn, VtUnitStats, VtVendor, VtWorldClock, VtWorldClockScheduler, VtWorldItem.
Something VtTickManager advances. Register it with VtTickManager.Register in OnEnable, unregister it in OnDisable, and forward Update to Tick unless VtTickManager.IsDriven is true, so it runs with and without a VtTickDriver.
Scripting API
| Member | Description |
|---|---|
void Tick(float deltaTime) |
Advance time-based state by deltaTime seconds. Called once per step by VtTickManager, or from the component’s own Update when no driver runs. |
VtTickManager
Static class.
The one registry every simulation component ticks through. With a VtTickDriver in the scene, the driver advances every registered component once per frame in VtTickGroup order; without one, each component ticks itself from its own Update. Servers and replays call Tick directly.
Scripting API
| Member | Description |
|---|---|
static VtTickScheduler Scheduler { get; } |
The live scheduler, for diagnostics such as counting registered components. Use Register, Unregister and Tick for everything else. |
static bool IsDriven { get; } |
True while a VtTickDriver is enabled and pumping the scheduler. Components read this at the top of Update and return early when true so nothing ticks twice. |
static void Register(IVtTickable tickable, VtTickGroup group) |
Register a component for central ticking. Safe to call from OnEnable regardless of whether a driver exists yet. |
static void Unregister(IVtTickable tickable) |
Remove a component. Safe to call from OnDisable / OnDestroy. |
static void Tick(float deltaTime) |
Advance every registered component by deltaTime seconds, group by group. VtTickDriver calls it once per frame; call it yourself from a server loop or a replay. |
VtTickGroup
Enum.
The group a tickable runs in. Groups run in the order below, and within a group tickables run in registration order, so state one system produces is visible to the next in the same step.
| Value | Description |
|---|---|
Stats |
Runs first: combat timers and resource regeneration. |
Auras |
Aura emitters apply and refresh their buffs. |
Buffs |
Buff ticks such as damage and healing over time, and expiry. |
Abilities |
Cooldowns, cast bars, channels and auto-attacks. |
Threat |
Threat decay, after this step’s damage has landed. |
Movement |
Networked movement: a predicting client’s corrections and other clients following the server’s position. |
Engagement |
Chasing the current target. |
Ai |
Roaming and chase decisions of monsters and companions. |
World |
World systems: crafting, resource respawn, spawners, quests. Use it for your own world clocks. |
Projectiles |
Runs last: projectiles in flight and ground areas. |