All right, here's my idea of how proton torpedoes (and probably bombs and rockets, too, but I'm gonna refer only to torps here) could work in a canonical manner while remaining useful in some circumstances.
Torps would be unguided. The sole purpose of the targeting computer would be to override the regular directional flight controls of your ship and aim it directly towards the target, taking lead into account. So, if you were flying towards an ISD and were intending on launching your torps at one of its domes, the following would happen:
1. You'd target the dome
2. You'd switch to targeting computer by pressing some button
3. You'd let go of your directional flight controls and let the targeting computer slowly turn your ship to point exactly at the center of your targeting reticle
4. When you'd be close enough that your field of fire would be entirely (or mostly) within the dome, you'd get that familiar locking sound
5. You'd launch your torps, which would automatically switch your targeting computer off
For point 4 to work, the torps would need to be given a smallish field of fire so that you couldn't get a lock from too far away.
Of course, you would be able to turn off the targeting mode without firing the torps with that same button which activated it. Also, you would be able to fire the torps before you gain the final lock if you'd want to.
In terms of gameplay, this would make the targeting computer useful only when the target is small and far enough that your lasers won't do (or if their damage is too low). For example against the subsystems and turrets of a bigger capship it'd be a good choice, which to me sounds about how it should be. Use of the targeting computer would be a special occasion for those relatively rare shots which require extra accuracy, not something you'd use every mission.
I think this kind of a system would make quite a lot of sense considering how the targeting computer was used in the trench runs.
So, what I'm interested in is:
1. Would there be any gameplay problems with this that I missed?
2. Would this be feasible to implement at all? Obviously the engine doesn't support this kind of stuff directly, so it'd have to be a new feature or scripted somehow.