Almost everything you've read about missiles is wrong.
Most people never bother to look beyond the visible, or even think about how much goes on behind the scenes to cut down loads, not even the 4x nerds, so no suprise there. But you also got some stuff wrong.
In general, only a single volley of missiles will be drawn at a time. You can hear the sound effect of each volley, but no new missiles appear (this is on max graphics settings). This can easily result in 4-5 invisible missiles flights waiting to strike.
MAX_GFX_MISSILES = 50
This also exists for projectiles (MAX_GFX_PROJECTILES = 100)
So there is your reason as to why there are invisible missiles, even in one volley. Any missile beyond 50 just gets its draw state turned off to save hardware load.
The invisible missiles strike much earlier than the visible effects, apparently travelling about twice as fast. Basically, when the visible missiles are half-way to their target, the invisible missiles they represent hit. There is still a noticeable delay before hitting even when ships enter into a furball.
While all other weapons are direct action types, missiles run thru some additional timings and if states. My guess is those are based on straight distance and "should be speed", but dont take into account the longer travel time due to cruving, pseudo acceleration and such.
From a programming point of view this also makes a lot more sense compared to having to calculate two tracking objects instead of one...
Missiles suck because they overkill INSANELY compared to direct fire weapons
This has been a much discussed issue since release, even just counting how many missiles are already tracking a target would be a great improvement. But the whole target picking code needs some improvement anyways, see "lets fire on that mining station that just came into range instead of the enemy fleet"-since-realease-issue.
That is, until you account for point defense. NOTHING in point defense makes sense. The system is full of black-magic and basically impossible to sanely mod.
I modded the PD to 100% accuracy, a 2.5 CD, and to deal only 1 damage
Im reading accuracy, but that makes me have to ask if you did consider tracking values, as well as the missiles evasion values. Because if you didnt, then there was still a lot of RNG gods having some fun pranking your experiment.
Please fix reload stats so it stops crashing Stellaris. This made this testing EXTREMELY painful.
Well i can at least agree to this request
Find a way to draw more missile salvos. If you cut to showing only a single missile per ship (instead of one per launcher per ship) you could get more salvos on screen. Consider making grouped missiles particles so you can get multiple missiles on screen for each ship but only use one particle. Reduce missile trail particles, they are kinda long. Maybe have the trail length decrease quickly so that by the time the next salvo launches the salvos in the air have minimal tails.
Meh, how about a slider for all those MAX_GFX defines instead? Not like you would enjoy having 6000 missiles on your screen anyways.
Increase the base missile speed, just for visual purposes, speed 5 is comically slow. Heck, the invisible missiles are hitting earlier anyway, so maybe at least increase the visual speed? Bonus points for matching visuals and actual impact.
Agreed on speed, gets even more funny when some Speed 4.2 cruisers get chased by 50 missiles.