Regarding ship swapping prior to the lock, I'll try to explain clearly:
What generally happens in lobby is teams swap ships and weapons back and forth till they're satisfied that they at least have a decent chance, they might settle for something slightly out of their favour, this all depends on the 'meta', and also how their opponents compare.
Then selecting prior to the lock (say 10 seconds before, or some time period that doesn't allow a decently thought out response by the opposition), is the cause of our (your) concern. There are four main cases where this may occur.
- The pilot that changes realises that they in fact don't have as good a chance as they originally expected resulting in a late change
- The teams keep changing their ships/weapons in turn, both teams not satisfied after each pass of changes
- The team that changes doesn't realise that it's not polite to do so at such a late point, and changes, since they've forgotten about the existence of the enemy team
- A team intends to use this as a 'sly' tactic to counter the enemy and attempt to vastly improve their chances (in theory, if they're doing this, they're probably bad at the game, but that's relative, I suppose)
The problem you'll encounter with discussing this issue is that any solution would need to appropriately deal with all 4 of these cases, and although there are many solutions in this class, many are unsatisfactory for other reasons. Should we perhaps not consider one of these cases to increase the elements in our solution space? That depends on how important or frequently occurring the case is (Or more precisely, how frequent it will be. If everyone stops playing this game, it won't occur at all, and we won't have any problems here.) Whether or not we should consider cases is another matter, and whilst people will have their opinions on this (as with most things, apparently- so long as they're reminded that its something to consider), for simplicity I'll provide a solution where we prevent all 4 of these cases.
One might notice that a sufficient condition for preventing them, is making a change that always allows the enemy team to respond to a change. I referred to a 'time period that doesn't allow a decently thought out response by the opposition'- this will have a maximum, call it 20 seconds. So we'll use that, and say that if a team changes, the opposition will always have 20 seconds to respond (this can be negotiated via party chat or something). The problem with this is that it allows an infinite lobby time (well, till one of the pilots falls asleep, but that's close enough to infinity).
I believe you're old enough to come to sensible conclusions on the other topics, I just thought I'd give some notion of form to the approach to such concerns.
TL;Dr: Don't bother reading it