The problem with some of these "fixes" is that, while they may correct the OP nature of carriers, they also undermine the concept.
Forget about our lets-pretend space planes for a moment, think about how a carrier module differs from a beam module. With a beam module, it does a bunch of damage and, this not being Gratuitous Space Battles, it carries on doing that damage until you completely kill the ship its on. Carrier-fighters, by contrast, do a bunch of damage and then progressively less damage during the course of the battle as each fighter gets shot down (in theory at least). They even continue doing damage if their mothership is destroyed first. On the other hand, carrier-fighters magically repair to max hp at the end of each battle (unlike the ship a regular beam weapon is mounted on).
Now the obvious nerf is this last one: just don't let carrier auto-repair at the end of each fight. Unfortunately, this means you don't get to enjoy the carrier-ness so much: one battle, and it's over. As Semipiratical says, it reduces the fun-factor:
The key "fun" feature of carriers is the inherent expendability of the fighters, so I wouldn't want to remove this or require that the fighters be constructed on their own in a shipyard. What carriers need is to cost in proportion to the power of the fighters they field, and to not receive free upgrades as time goes on.
Part of the problem is that (in my experience at least) carrier-fighters don't get shot down easily. This is for a combination of reasons I think we should correct:
- Firstly, a great swarm of fighters blasts everything else out of space before it gets a shot off in return;
- Secondly, they don't get shot, because of a combination of not being targeted and being missed;
- Finally, if they do get shot they survive anyway
So a carrier fleet looks like a very powerful long-range beam weapon that blasts away at the other side. That's not good. In fact, it means carriers are not merely OP, they're not functioning as designed. Carriers are supposed to enter battle as a big glass hammer that quickly gets much weaker over the course of the battle - but the battle isn't lasting long enough for this to happen. First we need to make battles involving carriers work as designed in principle;once that is done, only then start tweaking the numbers for balance.
What does a "good" outcome look like? This is what I'm aiming for: a large swarm of fighters launches at an enemy fleet. The fighters are both very weak and have super-short range weapons, so they're in great peril as they approach the enemy fleet. If the enemy fleet is well prepared, they pick off incoming fighters with low-powered rapid fire from stand-off range, obliterating the fighter swarm; they then close for conventional battle against fundamentally weak carrier motherships. On the other hand, if the enemy fleet is poorly prepared, their slow firing missiles and capital-beam weapons are wasted killing a handful of small fighters, and when the fighter swarm reaches weapons range the enemy is overwhelmed by the sheer volume of incoming fire.
Note that this means I don't want to reduce the number of fighters in the sky (that makes carriers less carrier-like): if anything, I want to increase them.
So what do we need to implement to make carrier battles work that way?
- Firstly, guardian ships should target carrier fighters as their #1 priority. Which will give guardians some reason to exist.
- Secondly, drop the weapons range of carrier-fighters right down. I mean, really low. That will give the other side an opportunity to take out incoming fighters before they get a chance to deliver their payload.
- Thirdly, drop the hp of carrier fighters right down too. A capital-ship weapon hitting a fighter should be a one-shot kill unless you've got shield/armour/point defense, and they shouldn't be big enough to have much of that.
- Finally, we might need some specific anti-fighter tech. I'm thinking something like "Anti-Fighter defense: Increase rate of fire of beam weapons by 200% but reduce accuracy by 50% and damage by 75%". Let's give the player a chance to use a different anti-fighter tactic too; you could also try "Ack-ack fire: Increase rate of fire of kinetic by 100% but reduce both accuracy and range by 50%, and damage by 90%".
With a bit of luck, all the above will mean that carriers are now underpowered, because a fleet with reasonable anti-fighter tech can shoot the incoming fighters all down before they arrive. To balance, increase the number of fighters per carrier module so that large carrier fleets overwhelm the rate-of-fire of traditional fleets.
Strategy-map level changes: hit-points for fighter wings
I wouldn't object to tweaking the "magic auto-repair" of carriers a bit, so that carrier fleets on extended campaigns gradually start to run out of fighters. This would need some experimentation: ideally, I'd say that each carrier had on board a pool of three times as many fighters as it could launch in one battle: magic auto-repairs come from this pool (which gets depleted by fighter deaths); let this pool refill by 10% per turn (not per battle) or 25% per turn while docked at a friendly planet/station.
This is essentially hit points for fighter wings. Thus each carrier has as 3x as many "fighter hp" as it has fighters. It loses one hp per fighter killed. It regenerates 10% of its hp per turn. At the start of each battle, it launches as many fighters as its modules allow, or only as many as it has fighter hp if that is currently lower.
For drone carriers: all the above, only more so. So even more drone fighters per module, a larger pool of drones on board, and a faster pool replenishment rate. But smaller damage output per drone, and no shields/armour/point defense.