Skip to content

The Tick System

Orbitarion is tick-based. Time in the game doesn't flow continuously — it advances in discrete steps called ticks. Every tick, the game engine processes every action queued since the previous tick and updates the state of the universe.

Understanding ticks is fundamental to playing well. Almost every decision you make — when to attack, when to research, when to send fleets — is shaped by the tick rhythm.


What is a tick?

A tick is one cycle of game-state updates. When a tick processes, the engine:

  • Generates resources for every planet
  • Advances research and construction timers
  • Delivers completed ships and PDS
  • Moves fleets one step closer to their targets
  • Resolves any battles where fleets just arrived
  • Processes scans
  • Updates scores
  • Sends notifications

All of this happens atomically — in one transaction. Either the entire tick succeeds or none of it does. There's no half-processed state.

Tick interval

Season type Interval Real time per tick
Regular season 30 minutes 30 minutes
Speed Round 5 minutes 5 minutes

The interval is set per round and doesn't change during a season. A Speed Round Tick 100 is the same game-state as a Regular Season Tick 100 — the game mechanics are identical. Only the real-world pacing differs.

Ticks fire on the clock grid — on the hour and half hour (:00/:30) in a 30-minute round. A run that comes too early for the next grid slot is skipped, so ticks never double-fire and never drift off the grid.


What happens each tick

When a tick fires, the engine runs through its processing phases in a strict order:

# Phase What it does
1 Snapshot Save the pre-tick state to tick_snapshots for debugging
2 Increment current_tick + 1 on the round
3 Resources Generate income on every planet (core + orbitals + research)
4 Research Advance research orders by 1 tick. Completed researches activate
5 Construction (Reserved — no buildings in current v2)
6 Ship building Advance ship-build orders. Completed ships add to your home fleet
7 Defense building Advance PDS build orders. Completed PDS add to your planet defenses
8 Scheduled launches (Premium) Launch any fleets scheduled to depart this tick
9 Fleet movement All in-transit fleets advance by 1 tick. Fleets that arrive trigger their mission
10 Decoy fleet arrivals (Commander) Spymaster decoy fleets dissipate when reaching their target
11 Nebula garrisons Move in-transit garrisons toward their slot; complete arriving garrisons; process withdrawing garrisons
12 Recon Reveal completed reconnaissance reports
13 Orbital Shields Update Orbital Shield charge
14 Auto-donate Send automatic alliance donations
15 Battles Resolve every battle queued from arrived fleets this tick
16 Auto-recall (Premium) Automatic fleet recall if a planet's score drops below a threshold
17 Scans Resolve queued orbital scans. Apply success/failure rolls, increment uninitiated orbitals
18 Trade deliveries Complete trades arriving this tick (market, direct and Void Exchange); expire old offers
19 Refineries Complete finished refinery jobs
20 Daily missions Update mission progress; at each day boundary (every 48 ticks) check streaks and hand out new missions
21 Alliance fleets & expeditions Move alliance fleets; bring home finished expeditions
22 Scores Recalculate every planet's score using the v2 formula
23 Spymaster spy reports (Commander) Generate intel reports for Spymaster T4 players

Periodic processes also run on specific tick intervals:

Frequency Process
Every 12 ticks NPC respawn check (The Void returns to nebula slots emptied >24 hours ago)
Every 24 ticks Nebula holding VP calculation (awards VP based on slots controlled, contributes XP to garrisoners)
Every 48 ticks Score snapshots saved to history (powers stats site charts)

Finally, every tick also runs: - Strongholds, territory upkeep and nebula garrison minimums - Star Map (Dominion) tick — battle resolution if scheduled, fleet movement, sector capture/lockdown, sector traits and Void incursions on held sectors - Alliance tier decay and Renown — tier points fade for alliances holding too little territory; Renown inactivity decay - Peak stats update — track highest score, biggest fleet, longest streak for Hall of Fame - The Void — Void fleets act, the Awakening advances, and the Void Exchange posts new offers - Tick log entry — duration, counts of processed entities, errors - Protection check — fire protection_ended news for planets whose 96-tick window just expired - Tick notifications — push notifications to premium users for relevant events - Round phase check — transition signup→protection→active→havoc→ended as appropriate - Season finalization — if current_tick >= total_ticks, set status to ended and lock the season


Ordering matters

The phase order isn't arbitrary. A few examples of why:

Resources before research: Resources tick first, so your income arrives BEFORE research deducts costs. You can start a research mid-tick that depends on income generated this same tick — but only because resources processed first.

Fleet movement before battles: Fleets advance one step (phase 9), THEN combat resolves (phase 15). A fleet arriving at its target gets ETA=0 in movement, then immediately engages combat. The two happen in the same tick.

Scans after combat: A planet that gets attacked and loses orbitals to theft does so in phase 15, but scans then process in phase 17 against the post-battle orbital count. So a scan queued for the same tick as a battle uses the new (smaller) orbital count.

Scores last: Scores recalculate after the economy, combat and scan phases (phase 22). Your score reflects everything that happened this tick — including losses from combat, gains from scans, completed research.


The 30-minute rhythm

In a regular season, every tick is 30 minutes apart. This creates a natural daily rhythm:

  • 48 ticks per day (24 hours ÷ 30 min)
  • 8–16 ticks per active session (a 4–8 hour play session)
  • 96 ticks = 2 days (protection length + havoc length)
  • 48 ticks = 1 day (score snapshot interval, nebula holding VP cadence × 2)

Most players check the game 2–5 times per day. You don't need to be glued to your phone — the tick system rewards thoughtful planning, not click speed.

A player who logs in twice per day, reads news, queues research, and commits a few attack/defense decisions will play just as effectively as someone watching every tick. The game is designed for this.

Speed Rounds compress the rhythm

A Speed Round (5-min ticks) compresses this dramatically: 288 ticks per day. What takes a week in a regular season happens in a day in a Speed Round. Players experience much higher tempo and more frequent check-ins, which is why Speed Rounds are typically shorter (about 5–6 days vs 4–6 weeks).


Tick timing and tactics

ETA is in ticks, not minutes

When you send a fleet, its ETA is shown in ticks, not real time. A "5-tick ETA" means 5 × 30 = 150 minutes in a regular season, or 5 × 5 = 25 minutes in a Speed Round.

Tick boundaries are critical

Time-sensitive actions resolve at tick boundaries. Common tick-edge plays:

  • Launching fleets seconds before a tick to maximize their ETA — the fleet processes this tick as having departed, but the action queued before the boundary
  • Recalling fleets before a battle tick — if you can pull your fleet out before its ETA reaches zero, you avoid the fight
  • Initiating an orbital just before a tick to get production this tick — initiation is instant, so a new orbital produces from the very next tick

Anti-tick-edge

If you only log in once per day, schedule your major actions on the same time of day. Two attacks 23.5 hours apart give you minimum tick coverage for both. Don't end your session right after sending a critical fleet — the tick will resolve while you're away.

Premium scheduled launches

Premium subscribers can schedule fleet launches at specific future ticks via action_schedule_fleet. This lets you set up an attack to launch at e.g. tick 1200 (8 hours from now) and walk away. Free players have to launch manually — but that's all.


Tick timing accuracy

The engine is driven by pg_cron, a Postgres extension that fires at the configured interval. In practice:

  • Tick alignment is within seconds of the scheduled boundary
  • Tick processing duration is typically 200–1500ms
  • Long ticks (heavy combat tick, many fleet arrivals) can take up to 5 seconds
  • A run that comes before the next grid slot is skipped to prevent overlap

Watchdog alerts fire to Discord if no tick has run within 10 minutes — see Support for outage handling.


Why tick-based strategy is different

If you've come from real-time strategy games (StarCraft, Civilization-style war games), the tick model takes adjustment. In tick-based games:

  • You can't out-click your opponent. Speed of decisions doesn't matter beyond meeting the tick deadline
  • Planning beats reaction. A well-planned attack queued 12 hours before tick is more powerful than a hasty real-time response
  • Coordination is harder but more valuable. Multiple alliance members arriving on the same tick is a major attack vector — but it requires conversation, not microseconds
  • Information matters more. Knowing your enemy's fleet composition (via scans) lets you build the perfect counter long before combat
  • You're never "missing the action". Major events happen between your sessions, but news feeds capture everything — you can review and respond at your own pace

This makes Orbitarion a slow-burn game. The drama unfolds over weeks. The biggest battles are months in the making.


Quick reference

Concept Detail
Tick interval (regular) 30 minutes
Tick interval (Speed Round) 5 minutes
Ticks per day (regular) 48
Ticks per day (Speed Round) 288
Phases per tick 23 main + Star Map, Void and periodic subprocesses
Order Resources → research → builds → fleets → battles → scans → scores → notifications
Periodic — NPC respawn check Every 12 ticks
Periodic — Nebula holding VP Every 24 ticks
Periodic — Score snapshot Every 48 ticks
Protection length 96 ticks (2 days regular / 8 hours Speed Round)
Havoc length Final 96 ticks of season
Total ticks per season ~1 300–2 500 (regular), ~1 400–1 800 (Speed Round)
Tick duration 200–1500 ms typically, up to 5 seconds peak
Watchdog alert threshold No tick within 10 minutes
Pause behavior is_paused flag halts ticks immediately

Documentation reflects Orbitarion v4.6.0. Last updated: 2026-10-13.