I had a, in my oppinion anyway, cool idea, why not make BC tougher? Tougher to scripting errors and other forms of torture (purely from the perspective of BC, I mean, its only purpose is to run BC, and we are all making it so very difficult!).
How hard you ask?
As hard as a diamond.
One of the most common causes of crashes are missing projectile files. So, with that, here is the first module of a series of N modules (I haven't yet thought of all possible cases, so it could be 1, it could also be 10 or more).
Projectiles
Mind you, it is still in Beta for now. I (and hopefully you as well) will test it out more properly. And release it on BCFiles in the near future.
I've attached (along with the file) a picture that shows that it actually works.
What the script does, is it replaces projectile references (in the hardpoint) when those are loaded if it can't find (that is, import) said module, or if that module doesn't contain all 5 required functions (Create, GetName, GetPowerCost, GetLaunchSound and GetLaunchSpeed), with one that is guaranteed to exist, itself (yes the module that protects your BC from faulty projectile references is another torpedo). It looks just like a Photon, has the same speed and damage, and even the same sound and cost. The one thing in that it differs is its name, which is "ProjectileSubstitute".
So, if you see that name, go to the console, and ask the author of the mod to send you the projectiles mentioned! (See screenshot)
The file itself goes in scripts/Custom/Autoload/
It will also protect you from missing pulse weapon references.
Mind you, while it uses similar constructs for handling missing projectiles like my More Than 4 Torpedo types, it doesn't allow more than 4 torpedo types, and I'm still working on properly redoing that mod into a FoundationTech plugin.