Beams currently have three properties relevant to firing: Delay, warmup, and duration. However, warmup has been a to-do since 2008, so I suppose beams only have two properties.
Beams currently fire for anywhere between 1 frame and their full duration, depending on how long the fire button is held. The delay begins counting down the moment firing begins, and is always set to the full value.
Using the Ragnarok beam as an example (5 duration, 10 delay): If fired for its full duration, it's on for 5 seconds, by which point 5 seconds of the delay have elapsed, and then it turns on again five seconds later. In effect, it's on half the time instead of the third it ought to be. Conversely, if fire is tapped momentarily, it's on for a fraction of a second and has the full ten-second delay before firing again.
These are the changes I'd like to make to hopefully make beams a viable option for players:
- Only add delay once the beam stops firing
- Scale delay based on duration used
- Active outfits use this model presently
- Add an optional minimum duration
My second change would inherently make all beams pulse-capable. Heavy beams like the Ragnarok could be rapidly cycled to circumvent their slow turning, turning them into potent anti-fighter weapons when they're meant for use against heavier ships. The third change would prevent that, as heavy beams could specify a minimum duration around half (or more) of their total, giving agile ships plenty of time to attack between beams.
I prefer to see beams as being capacitor-based, and these changes ought to approximate that decently without requiring the complexity of a full-blown per-slot energy system.