This is not a bug, of course.
The issue is, you must understand the ground operator assignment is tied to the parking codes of the gate only marginally. In order to see ( or not ) a ground operator in a certain airport, it must be first assigned to it, using a priority scoring system based on the ICAO code.
The airline codes in the AFCAD enters into play ONLY if several operators are all tied at the highest score so, in that case ( and in that case ONLY ), the airline codes in the AFCAD will matter.
There's a logic explanation for that. Lots of the time, you have parking codes for code-sharing operators to indicate, for example, that members of Star Alliance ( Lufthansa, United, Air Canada, etc. ) will use certain parking spots when they are overseas.
You might have Lufthansa codes at KLAX, or United codes at Frankfurt but, would be right to be served by United at Frankfurt JUST because you are a United airplane ? No, of course, that would be silly and unrealistic, having your ground crew following everywhere, and that's why GSX correctly use the airline code only after it has decided if an operator is allowed on that airport.
The file that controls the DEFAULT behavior in GSX is this one:
Addon Manager\texture\rules_handling.cfg ( there are similar files for catering and jetway logos )
And if we check this file, we can see that KBOS is indicated with all full 4 characters for the following operators:
[AA]
couatl.atc_parking_codes = AAL,AALX,LOF
couatl.icaoprefixes = K KDFW KJFK KLAX KMIA KORD KBOS KSFO KDEN KMCO KDCA KTPA KPHX KPHL KMCI KMEM KCLT KSDF
couatl.basecolor = blue
[AA_white]
couatl.atc_parking_codes = AALW
couatl.icaoprefixes = K KDFW KJFK KLAX KMIA KORD KBOS KSFO KDEN KMCO KDCA KTPA KPHX KPHL KMCI KMEM KCLT KSDF
couatl.basecolor = full_blue
[JBU]
couatl.atc_parking_codes = JBU
couatl.icaoprefixes = KJFK KFLL KMCO KBOS KLGB KDEN KDFW KSFO
couatl.basecolor = blue
[Swissport]
couatl.atc_parking_codes = _SWP
couatl.icaoprefixes = LS LG LE LB LC GC EP EPWA MD SB EHAM PANC KCLT KATL KBOS KIAD KLGA KLRD KMIA KBNA KEWR KMCO KSAT KSJC KSFB KSEA CYUL CYOW CYYZ CYWG LFSB EGBB EGCC LSZH LSGG LEMD EFHK
couatl.basecolor = red
This means, AA, JBU and Swissport are all tied for the highest score, so they are all available.
If the parking had a DL code, GSX will ignore it because, as far as GSX is concerned, DL should not operate at KBOS, because DL has been assigned to other US airport, and has a generic very low score of 1 with all airports in the US ( the single K in the airline code list )
[DL]
couatl.atc_parking_codes = DAL,DAT,DALX,SNO,DEA
couatl.icaoprefixes = K KCVG KDTW KATL KJFK KMEM KMSP KSLC KBWI KPHX KDEN KLAX KLAS KDFW KSFO KMCO KOMA KLGA KDCA KJAC KSDF
couatl.basecolor = blue
The single K on DL means they have a chance to appear everywhere in the US, unless somebody else has an higher score there. No KBOS here, so DL won't operate here, even if the parking had a DL code.
And no, as explained so many times and on the manual too, YOUR own airplane code doesn't have ANY effect on the choice of the ground operator, for the same reason I already explained above: to prevent to have your own crew following everywhere in the world.
Your own airline code will affect ONLY the livery of the cargo ULD loaded, both because they *are* property of the airline, and to prevent having different ULD on departure and landing provided, of course, you have the correct airline codes set in the airplane.cfg.
If you want to change an operator, you can do it in two different ways:
- Use the GSX customization page, and set that operator on all the parking spots you need. The operator set here will always "win", and can be selected even if GSX didn't assigned to it with its own scoring system. This is the easiest to do, but you can set only ONE operator with this method. If it's ok for you, that's the suggested option.
OR
- You can create a new rules_handling.cfg file here:
%APPDATA%\Virtuali\GSX\texture
If you ever created a custom texture, you should already have a sample file there, otherwise you can create one from scratch. Creating this file will allow to override the default rules for any number of stock operators, so you won't have to go through multiple airport customizations, and the will play by the same rules so, you can have multiple operators on an airport, which can be further refined with either the AFCAD parking codes or the single operator customization.
You should use THIS file to do your customizations. DO NOT edit the one in Addon Manager\texture, if only because you'll lose all your customization on the next Live Update, since that's a core GSX file which is always restored to its default state during updates. The one in %APPDATA% is designed to be customized.
So, for example, assuming you want to have Delta at KBOS, you'll have to add the lines for DL in the new rules_handling.cfg file in %APPDATA%, like this:
[DL]
couatl.atc_parking_codes = DAL,DAT,DALX,SNO,DEA
couatl.icaoprefixes = K KBOS KCVG KDTW KATL KJFK KMEM KMSP KSLC KBWI KPHX KDEN KLAX KLAS KDFW KSFO KMCO KOMA KLGA KDCA KJAC KSDF
couatl.basecolor = blue
So now, this custom rule for Delta in %APPDATA%\Virtuali\GSX\texture\rules_handling.cfg will TAKE PRECEDENCE over the default rule that didn't assigned Delta at KBOS and, assuming the gate doesn't have any airline codes, you'll should see a menu with AA, Swissport, Jetblue AND Delta.
If you want to remove an operator, it's the same concept. You want to remove AA from KBOS ? Add a rule for AA and AA_White and remove KBOS from it:
[AA]
couatl.atc_parking_codes = AAL,AALX,LOF
couatl.icaoprefixes = K KDFW KJFK KLAX KMIA KORD KSFO KDEN KMCO KDCA KTPA KPHX KPHL KMCI KMEM KCLT KSDF
couatl.basecolor = blue
[AA_white]
couatl.atc_parking_codes = AALW
couatl.icaoprefixes = K KDFW KJFK KLAX KMIA KORD KSFO KDEN KMCO KDCA KTPA KPHX KPHL KMCI KMEM KCLT KSDF
couatl.basecolor = full_blue
So now, only Jetblue, Swissport and Delta will go at KBOS.
And what if the gate had a Delta DAL or DALX code ( and no AAL or JBU codes ) ? ONLY Delta will appear, and there will be NO MENU because, of course, presenting a menu with only one choice is useless so, Delta will just appear.
If the parking had AAL and DAL codes, only Delta will appear, because we removed AA with the previous rule.
If the parking had JBU and DAL codes, a menu with two choice ( Jetblue and Delta ) will appear.