Not just that. For example, I got a GTI Ganymede kill in Aeos, but when i turned off the mod, it was gone. When i turned it back on, it was still gone, but it still acts like ive completed the campaign, yet the Ganymede is retail and always present in the tables.
That may be, but what is important is the
order of the ships as the pilot file only stores the index of the ships as the engine parses them. Because mods are parsed before the original game data, at best you just confused the engine and it just ignores is, at worst when the engine loaded that pilot is caused a buffer overrun and mangled the pilot data that the engine stored.
Based on your description, I would say the latter has happened because the engine writes the pilot file any time you press the "accept/continue/etc" button the engine damaged that pilot file as well.
This is why we tell people to use new pilots for every mod. Yes, I even got to learn this one the hard way.