I think it’s pretty clear deciding on the character you’re going to play before there’s even a game to play is a mistake. It’s the player assuming all options are on the table. That might be the case, but it might not. Then the player gets mad about some options being restricted. It’s the definition of a self-inflicted wound.
The two solutions to this are: 1) referees never restrict player options, which is a non-starter for a lot of games, referees, and settings, or; 2) players never decide on a character before there’s a game to play them in.
Note that second one is not “do not make characters” nor is it “do not fiddle with character creation” nor is it “do not daydream about characters.” It is do not decide on a character before there’s a game to play them in.” Just like you wouldn’t bring a social-focused fast-talker to a dungeon crawl or a noble with lots of city connections to a hex crawl, don’t decide on a character before you know what game they’ll be in.