Model Matching Magic is a program that can scan your MSFS2020 Community folder for aircraft liveries, and generate a custom .VMR file for use in vPilot's custom model matching setup. It can also handle creating model matching rules that allow a number of callsigns to match to a set of liveries (eg. BAW and SHT callsigns match to a set of British Airways liveries) and creates rules to match aircraft types that have specific liveries to another type (eg. A319, A320, A321 matching rules to match to a common A20N livery). The application has a number of configuration options that should allow to craft a setup to your particular liking, but also comes with a set of defaults that should generate a reasonable VMR file for those that don't want to tweak too much.
Installation
- Download the latest release .zip file
- Extract the ModelMatchingMagic folder to a location of your choice (or if upgrading, just extract the individual files over the top of a previous install, to keep all your settings)
- Run the ModelMatchingMagic.exe file from the installed location (and optionally, create a shortcut to this .exe file)
Operation
- (First run only) Locate your Community folder in the input box at the top of the screen
- Press the "Scan" button to start scanning your community folder
- Review the scanned results, by default, only liveries that have a valid airline code and aircraft type will be included in the generated .vmr file
- Click on the column header for "Aircraft Type" to sort, and review entries that are blank or invalid. The value can be entered/edited if need be.
- Click on the column header for "Airline ICAO" to sort, adn review entries that are blank or invalid. Again, values can be entered/edited here. For some models/liveries, such as GA aircraft, you may leave this field blank and just untick the "Excluded" column, if it doesn't make sense to match it based on an airline code.
- Press the "Generate VMR" button to create your custom .vmr file. It will be called ModelMatchingMagic.vmr and it will be saved in the same directory as the .exe file is located.
- Go to your vPilot settings and either replace your other custom .vmr files or add your new ModelMatchingMagic.vmr to the list of custom rule sets.
- Enjoy (hopefully) a better model matching experience in MSFS2020 (note: that at this only generates the matching rules file, the result may not be 100% in the sim, if there are issues with liveries not loading properly, etc)
Check out the YouTube video above or use the link below for a great explanation of the above operation and for further customization that is possible.
https://www.youtube.com/watch?v=0cvfG5Sh06U
Credits
A big thanks to British Avgeek and his channel members for the motivation to create this, and for all the effort in testing, providing feedback and comments to help develop this to where it is today.
Feedback
If you have any feedback or experience issues with this, please don't hestitate to comment below.
Enjoy!
3 months ago
jjstevens1029
6 months ago
JetMech383
8 months ago
Viking01
anyone else noticed that copy/paste or multi line action is not possible? doing it one line at a time for a large library makes it difficult to use
11 months ago
maszat
Hey there! Thank you so much for your effort!
Question: Can you provide a more detailed insight on how "SIZE" is affecting the Model Matching? Thank's!
11 months ago
benschooy
For those of you that are using IVAO MTL as of April 16 2023 these are the aircraft you need to exclude.
A5, B06, B2, DC3, F22, F5, F70, HAR, K35R, PC6P, R22, R44, T38,UH1 ,V22, VL3, ZZZV, ZZZZ
Any of the above packages does that thing that causes Model Matching Magic to error.
1 years ago
4 months ago
Sunfish
pauldobear
Please add an option to prioritise aircraft type over airline, or better yet add aircraft type groups so we have control over what models can be substituted for another.
1 years ago
MarbleFlower
Great tool, but I have so many models that have to be edited and doing that one by one is someting... I just can' do. I would be sitting there pressing the same buttons for hours. If you could implement a way to set multiple enties that would be great!
1 years ago
mrcsone
Hi mccarl1978,
Are the McDonnell MD80 series and MD11 from IVAO MTL models compatible with Model Matching Magic and Vatsim ?
2 years ago
TheStrikeEagle
If you have problems finding the VMR file then check your temp folder I founded it there.
2 years ago
BakarKaka
Does the VMR file only affect matches done to planes spawned from vpilot/vatsim? Or does it also affect planes from msfs' "live traffic", "ai traffic" and/or AIG TC? When not on vatsim, I'm having troubles with msfs "live traffic" showing up with wrong livery matches although the airlines are installed in AIG and working with AIG TC and vatsim (could be Ryanair as an example, where I can see "live traffic" has identified is as ryanair in LittleNavMap, but livery chosen/shown is Delta for some weird reason).
2 years ago
hemish
anyway to fix with the new IVAO MLT , is just showing me the Airbus models
2 years ago
Delete the following MTL models:
AS50, B1, B2, C414, EC45, UH72, EUFI, F117, F16, F18H, F22, F35, F5, GLID, HAR, PC12, SAVG, SR71, T38, UH1, ZZZC, ZZZZ
There is a problem with one of them, haven't investigated further...
2 years ago
barfoo22
anton2110
Getting an error when scanning files. Unhandled exception
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Parameter name: length
at System.String.Substring(Int32 startIndex, Int32 length)
at ModelMatchingMagic.FormMain.FindAircraftCfgs(String path)
at ModelMatchingMagic.FormMain.FindAircraftCfgs(String path)
at ModelMatchingMagic.FormMain.FindAircraftCfgs(String path)
at ModelMatchingMagic.FormMain.FindAircraftCfgs(String path)
at ModelMatchingMagic.FormMain.FindAircraftCfgs(String path)
at ModelMatchingMagic.FormMain.FindAircraftCfgs(String path)
at ModelMatchingMagic.FormMain.ButtonScan_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
ModelMatchingMagic
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Users/pauld/Desktop/vmr/ModelMatchingMagic/ModelMatchingMagic.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Newtonsoft.Json
Assembly Version: 12.0.0.0
Win32 Version: 12.0.3.23909
CodeBase: file:///C:/Users/pauld/Desktop/vmr/ModelMatchingMagic/Newtonsoft.Json.DLL
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
System.Runtime.Serialization
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Serialization/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Serialization.dll
----------------------------------------
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
2 years ago
IVAO MTL? Try deleting the following MTL models:
AS50, B1, B2, C414, EC45, UH72, EUFI, F117, F16, F18H, F22, F35, F5, GLID, HAR, PC12, SAVG, SR71, T38, UH1, ZZZC, ZZZZ
There is a problem with one of them, haven't investigated further...
2 years ago
barfoo22
pauldobear
Hello,
i am very sorry to say that, but i get always a Error when i fire up the scan.
I have only the IVAO MTLs installed in the Community Folder and also ticked the Box in the Program.
https://photos.app.goo.gl/3wStb5EsRLvkeTTj6
What can i do here ?
Thanks
Matthias
2 years ago
Delete the following MTL models:
AS50, B1, B2, C414, EC45, UH72, EUFI, F117, F16, F18H, F22, F35, F5, GLID, HAR, PC12, SAVG, SR71, T38, UH1, ZZZC, ZZZZ
There is a problem with one of them, haven't investigated further...
2 years ago
barfoo22
mroschk
Hey, this seems like a fantastic program. I've filled out all the information needed (with some help from an AHK script to fill in multiple entries) but the VMR file doesn't seem to be generating. I get "VMR File Generated Successfully" but there's no VMR file in the directory for the application.
2 years ago
giantpickle