Free addons, flight plans and a community for MSFS 2024, MSFS 2020 and X-Plane 12

Help Contact Donate
HHangar Addons
Addons (380)New AddonsFlight PlansForumsVirtual AirlinesResourcesAbout
Livery Studio

Browse

All addonsEverything, newest and most downloadedNew addonsThe newest addons, or what was added since your last visitAll MSFS addonsMSFS 2024 and MSFS 2020 together

By simulator

MSFS 2024Addons for Microsoft Flight Simulator 2024MSFS 2020Addons for Microsoft Flight Simulator 2020X-Plane 12Addons for X-Plane 12

Aircraft and liveries

AircraftAirliners, general aviation, military and moreLiveriesRepaints for your favourite aircraftBrowse by aircraftEverything for one aircraft type, in one placeMSFS 2024 aircraftThe aircraft with addons for MSFS 2024Livery StudioPaint your own livery in the browser

Scenery and airports

All sceneryAirports, cities and landmarksScenery by locationPick a country, then a state or regionScenery mapSee scenery on a mapScenery routesTours that link scenery togetherMSFS 2024 airportsAirport addons for MSFS 2024

Quick links

Upload an addonLivery StudioHelp and guides

Want this menu to stay open while you browse?

Browse

All flight plansRoutes shared by the communityFlight plannerBuild your own route and share it

By simulator

MSFS 2024 flight plansMSFS 2020 flight plansX-Plane 12 flight plans

By aircraft (MSFS 2024)

Airbus A320Airbus A330Airbus A350Airbus A380Boeing 737Boeing 747Boeing 777Boeing 787Cessna 172

By region (MSFS 2024)

USACanadaUnited KingdomEuropeAustralia

Plan a flight

Pick an airport pair, add waypoints and get a plan you can load in the simulator.

Open the flight planner

Want this menu to stay open while you browse?

Learn

Help and guidesHow to install, fix and get more from addons
MSFS 2020 helpMSFS 2024 helpX-Plane 12 helpHangar Addons website help

Stay informed

NewsWhat is new on Hangar Addons
CollectionsRecent activityNews RSS feed

Tools and support

ResourcesTools and sites worth knowing about
Frequently asked questionsSystem statusContact

Support the site

Hangar Addons is free to use. Donations help cover the bandwidth and power that keep it running.

Donate

Want this menu to stay open while you browse?

H
Donate
HHangar Addons

New addons by email, once a week

One short email a week. Stop it with one click.

Donate

Hangar Addons is free to use. Donations help cover the bandwidth and power that keep it running.

Explore

  • Addons
  • Flight Plans
  • Planner
  • Livery Studio

Simulators

  • All MSFS Addons
  • MSFS 2024 Addons
  • MSFS 2020 Addons
  • X-Plane 12 Addons

Popular

  • MSFS 2024 Aircraft
  • MSFS 2024 Airports
  • Aircraft
  • Liveries by Airline
  • Collections
  • Scenery by Location
  • Scenery Map
  • Scenery Routes

Community

  • Forums
  • Creators
  • Virtual Airlines
  • Flight Tracking
  • News
  • Recent Activity
  • Members Online

Site

  • Help & Guides
  • Resources
  • About
  • Brand
  • FAQ
  • RSS Feed
  • Donate
  • Advertise
  • System Status

Legal

  • Contact
  • Privacy Policy
  • Do Not Sell or Share My Personal Information
  • Terms of Service
  • Copyright

© 2026 Hangar Addons. All rights reserved.
Not affiliated with Microsoft, Asobo Studio, or Laminar Research.

7K total downloads · 380 addons · community-driven

1546.0 GB transferred for 6,969 total downloads from 380 addons.

HomeBrowseX-Plane 12 AddonsUtilitiesPause at top of descent mod for xp12
1 / 1
UtilitiesX-Plane 12

Pause at top of descent mod for xp12

EEmergencyButterCreator
No ratings yet. Be the first to rate

trigger auto pause on various events with a simple ui

0
total downloads
8 MB
file size

PauseAtToD-v0.1.5.zip

v0.1.5

  • Overview
  • Reviews
  • Discussion
  • Versions
  • How to install
  • FAQ

About Pause at top of descent mod for xp12#

Pause at ToD

An X-Plane 11.50+/12 plugin, written in Rust, that pauses the sim when a condition you've armed comes true. You can step away during cruise and come back to a paused aircraft at top of descent, near a waypoint, at an altitude, or after a set time.

Installing and updating

Download PauseAtToD-vX.Y.Z.zip from the latest release and copy the PauseAtToD folder into X-Plane/Resources/plugins/.

Updating through SkunkCrafts Updater is recommended. The plugin folder includes a skunkcrafts_updater.cfg, so the updater picks up Pause at ToD on its own and fetches each new release. Without it, quit X-Plane and replace the PauseAtToD folder. Your settings are kept either way.

Using it

Keep exploring

  • More utilities for X-Plane 12

Pause at top of descent mod for xp12

Version
v0.1.5
Updated
October 31, 2026
Size
8 MB
Downloads
0
Licence
Open Source (MIT)

Plugins → Pause at ToD → Settings... opens a modern, resizable X-Plane floating window. It's drawn with egui and follows X-Plane's UI scale:

╭─ Pause at ToD ──────────────────────────────────╮
│ ● ARMED                               [ Disarm ] │
│ ╭──────────────────────────────────────────────╮ │
│ │ (●) Top of descent   FMS T/D, 3:1 rule or ... │ │
│ │ Reach [arrival] at [auto] ft MSL              │ │
│ │ Pause [5 nm] before the top of descent        │ │
│ │ T/D in 38.2 nm (to KSEA at 1,933 ft) ...      │ │
│ │ ▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░                            │ │
│ ╰──────────────────────────────────────────────╯ │
│ ╭ (○) Near waypoint ───────────────────────────╮ │
│ ╭ (○) Altitude ────────────────────────────────╮ │
│ ╭ (○) Timer ───────────────────────────────────╮ │
╰─────────────────────────────────────────────────╯
  • Switch on the conditions you want and press Arm. The first enabled condition that comes true pauses the sim. The plugin then disarms, and the window pops up with the reason.
  • While you edit, the window looks up identifiers as you type, e.g. "KSEA · airport · 142 nm away · cross at 1,933 ft (field 433 + 1,500)".
  • While armed, the inputs are locked and each active condition shows a live status line and a progress bar.
  • Plugins → Pause at ToD → Armed shows the armed state and toggles it.
  • You can bind keys to two commands: pauseattod/toggle_window and pauseattod/toggle_arm.
  • Settings are saved in X-Plane/Output/preferences/pauseattod.prf.
  • Loading a new flight or aircraft disarms the plugin.

Conditions

ConditionFires when
Near waypointThe great-circle distance to the waypoint is at or below N nm. Arming while already inside that distance fires straight away.
AltitudeYou pass the altitude in the chosen direction (descending, climbing or either way), in MSL (pilot altimeter) or AGL. It only fires on an actual crossing: arming while already below a "descending" target doesn't fire.
Top of descentThe first of the three ToD heuristics below fires.
TimerN minutes of sim time have passed since arming. Time spent paused doesn't count.

Top-of-descent heuristics. All three are evaluated, and none of them run below 1,000 ft AGL:

  1. FMS value. If the dataref named by tod_dataref exists and has reported a positive distance, the plugin pauses once that distance is at or below the lead. The default name is X-Plane 12's sim/cockpit2/radios/indicators/fms_distance_to_tod_pilot (float, nm), which the built-in FMS fills once it has a descent planned. If the dataref is missing or never goes positive, this heuristic stays inactive. You can point tod_dataref at an aircraft's own ToD dataref in the prefs file.
  2. Geometric 3:1 rule. ToD is (altitude − crossing altitude) / 1000 × 3 nm before the end-of-descent point. The plugin pauses when the distance to go minus that figure is at or below the lead. The point ("Reach X at Y ft MSL") defaults to the arrival airport: the last airport in the pilot's flight plan in X-Plane's built-in FMS. It's read through X-Plane 12.1's flight-plan API when available, otherwise through the legacy FMS calls. Aircraft with their own FMS, such as Zibo or ToLiss, aren't visible this way, so type the arrival airport for those. The crossing altitude defaults to the field elevation + 1,500 ft when the point is an airport. The elevation comes from the nav database, from the airport itself or from the FMS arrival. For other kinds of point it defaults to 1,500 ft MSL. The SDK documents the nav height as feet, but X-Plane returns meters, so the plugin converts it and logs the result (PauseAtToD: KSEA field elevation 433 ft (nav height 132.0 m)). Values outside −1,500 to 15,000 ft are ignored.
  3. Descent onset (fallback). The plugin first needs at least 60 s of level flight (|VS| < 300 fpm) above 5,000 ft AGL. After that, a descent of at least 500 fpm sustained for 10 s fires. This covers third-party FMSs (Zibo, ToLiss and others) that don't feed X-Plane's FMS, at the cost of pausing at the descent rather than before it.

Waypoint lookup. Entries in the loaded X-Plane FMS flight plan come first. Otherwise the plugin uses the nav-database airport, VOR, NDB or fix with exactly that ID that's closest to the aircraft. The SDK's fragment search is tried first, and a full exact-match scan runs only if that fails.

Advanced settings exist only in the prefs file: tod_nm_per_kft (default 3), tod_dataref, and descent_vs_fpm (default −500).

Design

crates/core    pauseattod-core: pure Rust, no X-Plane. Settings + file format,
               great-circle math, and the Monitor that evaluates conditions
               against AircraftState samples. All heuristics are unit-tested.
crates/plugin  pauseattod (cdylib → win/lin/mac.xpl)
  ffi.rs       hand-written bindings for the ~40 SDK functions used, checked
               against the official SDK headers and import libraries
  xp.rs        safe wrappers: datarefs, commands, menu, nav/FMS lookups
  gui.rs       egui hosted in an XPLM floating window: input translation,
               keyboard focus, painting with egui_glow
  gl.rs        GL loader, boxel→pixel transform, GL state save/restore
  view.rs      the window's content (plain egui code)
  app.rs       state machine: arm/disarm, sampling, firing, previews, prefs
  lib.rs       XPlugin* entry points and C callbacks
xtask          `cargo xtask dist` packaging/installing, also in Rust

Key decisions:

  • No C toolchain or SDK download. On Windows the SDK functions are linked through raw-dylib imports from XPLM_64.dll (and opengl32.dll for the GL loader), so no .lib files or bindgen/libclang are needed. On macOS the build uses -undefined dynamic_lookup. Linux resolves the symbols when X-Plane loads the plugin.
  • Sim logic is separate from the sim. core gets plain samples (position, MSL/AGL altitude, VS, sim flight time, optional FMS ToD distance), so you can test every heuristic with cargo test on any machine.
  • UI: egui in a modern XPLM window. The window uses X-Plane's own floating-window decoration (title bar, close, resize). Each draw callback runs an egui frame, maps boxels to pixels with the transform X-Plane set up, and paints with egui_glow on X-Plane's GL context. X-Plane 12's Vulkan build still offers that context to plugins. Every piece of GL state egui touches is saved before painting and restored after. Typing reaches the window only while a text field has focus, so sim key bindings keep working.
  • Re-entrancy safety. Widget calls can call back into the plugin synchronously. Callbacks never touch the app directly: they post an Event, and one guarded pump (with_app) drains the queue. A re-entrant call queues its event and returns, so a RefCell double borrow can't happen.
  • Panics are contained. Every extern "C" callback runs inside catch_unwind. A bug is written to Log.txt and doesn't crash X-Plane.
  • Edge detection keeps history. Altitude crossings compare consecutive samples. A jump of more than 2,000 ft between samples is treated as a reposition and ignored. The timer restarts if the sim clock goes backwards (new flight). Conditions are only evaluated while the sim isn't paused, at 10 Hz.
  • Pausing uses sim/operation/pause_on, falling back to pause_toggle only if the sim isn't already paused.

Build and install

You need a stable Rust toolchain. Windows needs the MSVC target.

cargo test -p pauseattod-core                     # heuristics
cargo xtask dist                                  # → dist/PauseAtToD/64/win.xpl
cargo xtask dist --install "C:/X-Plane 12"        # also copies to Resources/plugins

For a universal (Intel + Apple Silicon) mac.xpl, run cargo xtask dist --target aarch64-apple-darwin --target x86_64-apple-darwin on a Mac. lin.xpl builds on Linux with plain cargo xtask dist.

GitHub Actions (.github/workflows/build.yml) runs the tests and builds all three platforms on every push. The PauseAtToD artifact holds the complete plugin folder with win.xpl, mac.xpl and lin.xpl. Pushing a v* tag also attaches that bundle to the matching GitHub release. Stable tags (no - in them) also force-push the plugin folder, with its CRC32 whitelist and sizes list, to the orphan skunkcrafts branch. That branch is the SkunkCrafts Updater module named in packaging/skunkcrafts_updater.cfg, which ships in the zip. Log lines go to X-Plane/Log.txt with the prefix PauseAtToD:.

License

MIT, see LICENSE.

Community reviews of Pause at top of descent mod for xp12#(0)

0.0
0.0(0)
5
0%
4
0%
3
0%
2
0%
1
0%

No ratings yet.

Be the first to rate this.

Discussion#

Versions and changelog#

v0.1.5CurrentOctober 31, 2026

How to install Pause at top of descent mod for xp12

  1. 1Select Download to get the file.
  2. 2Unpack the download and follow the creator's notes in the description above. The installation guides show where each kind of addon goes.
  3. 3Start the simulator. If it does not show up, see the troubleshooting guides.

Questions about Pause at top of descent mod for xp12#

Is Pause at top of descent mod for xp12 free to download?

Yes. Pause at top of descent mod for xp12 can be downloaded free from Hangar Addons. It is released as Open Source (MIT).

Which simulator is Pause at top of descent mod for xp12 for?

Pause at top of descent mod for xp12 is an addon in the Utilities category for X-Plane 12.

How do I install Pause at top of descent mod for xp12?

The quickest way is the Hangar Addons Manager: select Add to Addon Manager on this page and it downloads and installs Pause at top of descent mod for xp12 in the right folder. You can also download the file (8 MB), unpack it and copy it into your X-Plane 12 addons folder. The installation guides on Hangar Addons show where that is.

Who made Pause at top of descent mod for xp12?

Pause at top of descent mod for xp12 was made by EmergencyButter.

What is the latest version of Pause at top of descent mod for xp12?

The latest version is v0.1.5, last updated on October 31, 2026.

File Info
Repository
emergencybutter/pauseattod
First Released
October 31, 2026
Simulator
X-Plane 12
Views
0
Reviews
0

Share this addon

RedditFacebookPost on X

Guides

  • How to install X-Plane 12 plugins
  • Install it with the Hangar Addons Manager
Community testing

No community test results yet.

More from EmergencyButter
Voyager Aviation livery for Aerobask Dassault Falcon 8X (with cutom registration editor)

Voyager Aviation livery for Aerobask Dassault Falcon 8X (with cutom registration editor)

Related Addons to Pause at top of descent mod for xp12

OurRadioFS for X-Plane 12 and Microsoft Flight Simulator 2024 and Microsoft Flight Simulator 2020
Utilities
X-Plane 12
MSFS 2024
MSFS 2020

OurRadioFS

by MiquelG82 · v1.6.4

5.0(3)
46
October 2, 2026
Radioatc
FlightMesh for X-Plane 12 and Microsoft Flight Simulator 2020 and Microsoft Flight Simulator 2024
Utilities
X-Plane 12
MSFS 2020
MSFS 2024

FlightMesh

by FlightMesh · v0.1.93

5.0(5)
9
September 24, 2026
simbriefModel MatchingTrafficLive TrafficutilityNetworkFlight Trackingmultiplayer
Canadian Xpress xPilot Model Set for X-Plane 12
Utilities
X-Plane 12

Canadian Xpress xPilot Model Set

by CXA001 · v1.63

5.0(1)
1
October 7, 2026
vatsimxPilotCanadian XpressX-Plane 12CXAX-Plane 11
UTILITIES
Utilities
X-Plane 12

HeadtrackRS

by TripleJumpStudios · v0.1.1

0.0(0)
4
October 7, 2026
webcamtirlinuxheadtracking
Better Pushback for X-Plane 12
Utilities
X-Plane 12

Better Pushback

by Olivier Butler · vbeta1.16

0.0(0)
16
October 25, 2026
Pushbackbetter pushback
ERJ-145 Performance Calculator for X-Plane 12 and Microsoft Flight Simulator 2024 and Microsoft Flight Simulator 2020
Utilities
X-Plane 12
MSFS 2024
MSFS 2020

ERJ-145 Performance Calculator

by Alexair · v3.4

0.0(0)
2
October 23, 2026
EMBEmbraerERJEMB-145ERJ-145