Description
FlightTimer
FlightTimer is a lightweight World of Warcraft: The Burning Crusade addon that tracks, learns, and estimates flight path durations and displays a real-time progress bar with remaining time and completion percentage while you are in flight.
The addon automatically records real flight times as you travel and becomes more accurate over time. When real data is unavailable, it can estimate travel time using previously learned route segments or the reverse route.
Features
Core features:
Automatically detects flight source and destination when you select a taxi.
Measures and stores real flight times per route.
Learns routes automatically as you fly them.
Averages repeated flights to smooth timing data.
Account-wide SavedVariables shared across characters.
Smart estimation:
When no real data exists for a route, FlightTimer now uses a learned flight graph built from all previously recorded flights.
Every measured route (A → B) becomes an edge in a directed weighted graph.
This allows the addon to infer multi-hop routes and compute the shortest known path between two locations using Dijkstra’s algorithm.
This means FlightTimer can now:
Discover indirect routes such as:
Ironforge → Stormwind → Sentinel Hill
Combine multiple known legs automatically.
Prefer real recorded directions.
Fall back gracefully when some segments are unknown.
How estimation works
When a flight starts and no exact time is recorded for that direction:
The addon searches the learned route graph for the best path between source and destination.
If a path is found, the total estimated time is calculated by summing all known legs.
If parts of the path are missing from the graph, default segment times may be used.
If no usable path exists at all, the route is treated as completely new and measured normally.
In-flight UI:
During flight, FlightTimer displays a progress bar showing:
Shortened Source to Destination (text before the first comma for readability).
Time remaining in minutes and seconds (MM:SS).
Completion percentage.
UI behavior:
If the route has been flown before:
Ironforge -> Stormwind 2:41 (58%)
If the route is new but an estimate exists:
New route Ironforge -> Sentinel Hill. Estimated 4:56 (32%)
New route with estimate:
New route Ironforge -> Sentinel Hill. Estimated 4:56 (32%)
Completely unknown route:
New route, collecting time
Movable and Resizable Window
The flight timer bar can now be customized:
Drag the bar with the left mouse button to reposition it.
Resize it using the handle in the bottom-right corner.
Position and size are saved automatically and restored on login or reload.
This allows the bar to fit cleanly into any UI layout.
Data and compatibility:
Uses account-wide SavedVariables, so all your characters share learned routes.
Minimal performance impact.
Fully compatible with WoW TBC Classic (2.4.3 API).
Works with Lua 5.1.
How it works
When you click a flight destination, FlightTimer captures:
Your current node (source).
Your destination.
The intermediate reachable nodes.
When the flight starts, the addon:
Checks for real stored time.
If none exists, tries to estimate using waypoints or the reverse route.
Starts the progress bar.
When the flight ends, FlightTimer:
Measures the real travel time.
Saves it, or averages it with existing data.
Makes future flights on that route accurate.
Installation
Download the addon from CurseForge.
Extract the FlightTimer folder into:
World of Warcraft/classic/Interface/AddOns/
Restart the game or reload the UI.
Debugging (optional)
The addon includes optional debug output for development and testing.
You can enable it in the code by setting:
local DEBUG = true
Credits
Author: Mizar
Inspired by classic-era flight timer addons from The Burning Crusade.
Support
If you encounter issues or have feature requests, please report them on the CurseForge project page.


