Skip to content

Model Matching Prepar3D

joeherwig edited this page Jul 27, 2026 · 1 revision

Model Matching - Prepar3D

See Model Matching for the general algorithm, the attributes used, and the Explain Match dialog. This page covers what's specific to the Prepar3D build.

What you report to your friends

Scan For Models walks your simulator's own SimObjects\Airplanes/SimObjects\Rotorcraft folders directly and reads each aircraft's real aircraft.cfg/sim.cfg file, picking up:

  • icao_type_designator and icao_WTC from the file's [GENERAL] section - applied once per file to every livery/variation it defines.
  • icao_airline and atc_id (the baked-in registration) per individual livery entry.
  • The ui_typerole field for a first-pass typerole classification.

This is real, author-provided data straight from the aircraft's own configuration file - there's no live-simulator-derived fallback and no title-guessing involved. If the fields above are present and correct in the file, JoinFS reports them correctly; if an add-on's author left icao_type_designator blank or filled it in incorrectly, JoinFS has no independent way to know that and reports exactly what's in the file. A rescan (Scan For ModelsScan, or automatically on connect if "Scan at launch" is enabled) is the only way to pick up a value that's been corrected in a later version of an add-on.

One thing worth double-checking, especially on aircraft ported from FSX-era packages: ui_typerole values sometimes use localization tokens (e.g. a raw string like TT:ATCCOM.AC_TYPE_SINGLE_ENGINE_PROP) rather than plain English text. If an aircraft's typerole classification looks wrong in Explain Match, this is worth checking - it isn't verified to be handled identically to the plain-text values newer add-ons typically use.

Registration: whatever SimConnect's ATC ID reports for your aircraft at the moment it's created - either the livery's own baked-in tail number from the scan above, or whatever you've customized in the sim's own aircraft/flight setup - unless you later import a flight plan via SimBrief, in which case SimBrief's reported registration overwrites it (whichever happened more recently wins; there's no fixed priority between the two).

How JoinFS resolves your friends' reports to what you see

For every remote aircraft, JoinFS takes whatever was reported for it (title, ICAO type, class code, WTC, ICAO airline, registration, typerole) and runs it through the unified scorer described on the main Model Matching page against your own installed models - which, per above, already have real ICAO/class/WTC/registration data from your own upfront folder scan, not a guess. This build doesn't get a livery/variation name over the network (that's MSFS2024-only), so livery-name overlap never contributes as a signal here - matching relies on the other attributes instead.

Models that are scenery props, static display liveries, or otherwise non-flyable are filtered out of your own installed-model list before any of this happens, via the ban list described on the main page - they can never accidentally become what a friend's aircraft gets substituted to.

Clone this wiki locally