By Robert Shearman Jr 1155655
#524500 I know this is not strictly a vPilot issue, but, since it may be useful for vPilot users I am posting it here. Mods, please feel free to move it if you feel it belongs somewhere else.

I finally got an AI helicopter to work on VATSIM via FSX and vPilot. If you want to know what I did, here it is.

(1) The AI helicopter model I found that worked is at https://militaryaiworks.com/download-ha ... r-fsx-jyai . You need to register for an account on that site to perform a download, but registration is free and instant with email verification.

(2) From that .zip archive I copied just the file under "Effects" into FSX's "Effects" folder, and the file under "SimObjects"/"Aircraft" into FSX's "SimObjects"/"Aircraft" folder. (Yes, Aircraft, not Rotorcraft.)

(3) I edited the "aircraft.cfg" file and added the line "atc_model=EC45" to every entry in that file. There are a dozen model variations and a total of 51 model/paint combinations. I used find/replace the first time but this screwed it up because some of the models do have entries listed. So it may be best to do this by hand. Other model types may work here as well, but, for simplicity's sake (and sticking with what worked for me), leaving them all as "EC45" is a sure bet.

(4) In my "Documents" "vPilot Files" folder I created a new text file and called it "heli.vmr". In it I created a matching rule for every single heli type I could find (list at http://helihub.com/icao-code/) and matched it to "JYAI Lakota US Navy TPS 70". IMPORTANT NOTE! I initially tried the Navy variation #71 and was still getting errors. This caused me a great deal of frustration and I almost gave up assuming that this model also would not work as VATSIM AI/Model Matching but, on a whim I decided to try a different variation and it worked. I don't know why #71 didn't work but #70 did. I have not done further testing to see which of the models work and which don't. Please feel free to invest that time if you'd like. I will not. I am fine with any and all helicopters matching to the same exact variation for now; helis are few and far between enough on VATSIM that it doesn't make a difference to me. If someone else wants to do all that research and testing, have at it.

(5) I opened vPilot, which scanned the new aircaft folder. I hit the "Settings" button and under "Model Matching" and "Advanced" I expanded the model list, and confirmed that under "JYAI..." it identified all 51 models. If it didn't, go back to step 3 and check your work.

(6) Under "Model Matching" and "Custom Rules" I added in my custom model match rule (the one created above) and put it at the top of the list (or, at least, certainly above the BVAI rule, which still has some issues with helicopter matching).

(7) I tested this near a VATSIM user who was flying a helicopter, and lo and behold, I SAW A HELICOPTER!

Here are the contents of heli.vmr:
Code: Select all<?xml version="1.0" encoding="utf-8"?>
<ModelMatchRuleSet Folder="" UpdatedOn="5/30/2018 11:00:00 PM">

  <ModelMatchRule TypeCode="A109" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="A119" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="A129" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="A139" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="A149" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="A2RT" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ALH" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ALO2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ALO3" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ANST" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="AS32" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="AS3B" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="AS50" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="AS55" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="AS65" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B06" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B06T" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B105" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B212" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B214" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B222" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B230" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B305" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B407" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B412" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B427" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B429" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B430" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B47G" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B47J" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="B47T" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="BABY" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="BK17" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="BRB2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="BSTP" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="CH7" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="CHIF" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="COMU" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="DJIN" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="DRAG" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="DYH2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EC20" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EC25" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EC30" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EC35" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EC45" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EC55" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EH10" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ELTO" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EN28" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EN48" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ES11" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EXEC" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EXEJ" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="EXPL" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="FH11" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="FREL" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="G2CA" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="GAZL" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H12T" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H21" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H269" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H43A" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H43B" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H46" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H47" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H500" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H53" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H53S" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H60" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="H64" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="HUCO" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="HX2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="IS2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="JAG2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="K126" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="K226" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KA25" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KA26" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KA27" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KA50" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KA52" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KA62" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KH4" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="KMAX" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="LAMA" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="LR2T" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="LYNX" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="M74" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MD52" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MD60" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MH20" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI10" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI14" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI24" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI26" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI28" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI34" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI38" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI4" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI6" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="MI8" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="NA40" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="NH90" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="OH1" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="PHIL" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="PSW2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="PUMA" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="R22" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="R4" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="R44" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="R66" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="RMOU" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="RP1" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="RVAL" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S274" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S278" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S330" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S360" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S51" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S52" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S55P" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S55T" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S58P" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S58T" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S61" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S61R" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S62" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S64" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S65C" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S76" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="S92" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="SCOR" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="SCOU" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="SH4" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="SUCO" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="SYCA" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="TIGR" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="UH1" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="UH12" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="UH1Y" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ULTS" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="V500" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="W3" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="WASP" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="WESX" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="WG30" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="X2" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="X49" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="YNHL" ModelName="JYAI Lakota US Navy TPS 70" />
  <ModelMatchRule TypeCode="ZA6" ModelName="JYAI Lakota US Navy TPS 70" />

</ModelMatchRuleSet>


Hopefully this is useful for someone. Please enjoy. Discussion and tips for improvement are welcome as well.
By Robert Shearman Jr 1155655
#524508
Robert Shearman Jr 1155655 wrote:and lo and behold, I SAW A HELICOPTER!

Dace Nicmane 1313735 wrote: :D Now where is the screenshot?

O, ye of little faith, doth speak the "Pics or it didn't happen," lol. I'll get ya one.
By Robert Shearman Jr 1155655
#524516
Dace Nicmane 1313735 wrote:One would think you would've taken that trophy screenshot :mrgreen:

Haha. He logged off too quickly, so I missed him.
Dace Nicmane 1313735 wrote:I've never seen a helicopter on VATSIM, though in theory it should be possible.

If you've followed the many threads about helicopter model matching, you know that using the flyable models as AI traffic isn't possible. It has always been said that it's absolutely possible if you have an AI helicopter model installed. Problem is, I had to hunt far and wide to find a freeware helicopter AI model that would work, and even then it was an adventure! But, it works now, and so I can stop getting vPilot model-match errors and/or seeing A321's in place of rotorcraft on the occasion I do happen across one, from now on!

https://youtu.be/iAIlvkYV_pk

Image