Good feedback and discussion, thanks folks!
Sorry OP, but I have to be against forced limitations. What happens if someone drops out?
Same as now - there's an empty slot and some one already in the server (or just joining) can take it.
What happens if an idiot is the first one in and gets Squad Leader but never throws smoke? What happens if the Team Leader just wants another auto and never uses forced respawn or artillery? Your sniper just wanted a slot with a pistol, and fights QCB?
All of these already happen. The only way to prevent them is to have no limits on class selection at all. How well the map will work with half a dozen team leaders running around calling forced respawns I don't know though. Perhaps the fact that Firefight servers always seem to be empty is a clue that it doesn't go too well?
Then there are the implementation questions: How are mid-round drop outs handled? Latecomers? Disconnects?
As for your first question. Slot is opened up, anyone can take it.
Given the stated intention is fairness, what happens to someone who through a string of random fates never manages to get anything other than bolts?
Fairness is only half the stated intention. A more enjoyable experience thanks to better class limits is also part of it. Note that since the autos were reduced the game has seen more players... It is just more fun for most people with fewer auto weapons. As it happens a more historically accurate set of class limits does this, and provides some players with extra satisfaction purely by being more historical.
As for someone always getting stuck with a bolt - if you have a slower computer, this happens to you now - every time. At least with my suggestion you would have a very good chance of getting something else.
As much as I can appreciate what you're aiming to do, there are too many uncontrolled variables that make it unfeasible. It's best left to the server being polite. If you're jonesing to try a class you haven't had a chance to yet, ask. Swapping roles is all in the nature of sportsmanship. It worked in ROOst, there's no reason it shouldn't work in RO2. We don't have enough population to be forcing artificial restrictions on players.
None of this is inconsistent with what I am proposing. Remember that class selection already works this way to some extent, but the way it's implemented is inconsistent, buggy and allows too many more powerful weapons.
In fact, having a class swap request system as I suggested in response to earlier feedback actually makes your ideas about sportsmanship easier as it provide a concrete framework to support them.
What I could support (and I think was the original intent of the character profile ranking) is a player rank based role selection system, with ranks set by the server. You still end up putting in your time with the bolt before you get a shot at the 'good' classes, but it's a surmountable obstacle based on player skill (or at least dedication) instead of a random (or hardware performance based) obstacle. Hopefully, by the time you're profile level XX you've learned a bit about team play and proper playing of the role.
Possibly. Quite a bit more complex than what I'm suggesting with a fairly similar outcome I suspect, but fundamentally ok as long as there are still class limits to reduce the number of powerful weapons on the field.
As for letting the mapper set the class counts on the map, I would love to see that. It's still consistent with what I am suggesting, the mapper just sets what rules he wants in each squad and players get access to those rules as the server fills up. If the mapper wants lots of SMGs, (s)he just sets each squad to have more Sessile rules than what I suggested in the OP.