In our game club we use the following variant for auctioning the characters at game start:
A random character is drawn. All players who don't yet have a character may bid for it. The starting bid is the printed amount of starting money for the character. Players bid lower amounts, the last one to bid gets the character with that amount of starting money.
If no bids are placed for a character card, it's simply placed at the bottom of the draw pile.
Starting order is determined randomly.
On the games home site they propose the following character and starting order auctioning variant:
Each player gets 20 money. The player with the most magic stare gets the "one" position tile. In each auctioning round:
- the player with the current position tile says a number not higher than in the previous round (max 20 in the first round). Starting with the player to the left and going clockwise, all other players state wether they want to take for that amount of money one of the remaining characters, or not.
- if all players say "no", the position tile is passed to the player to the left, and a new round begins
- if a player takes a character, he gets the position tile and character, and pays the said amount to the bank. The next player to the left of the guy who had the position tile this turn gets the next lower position tile.
- the last player may pick a character for 0 cost.
- the position tiles are kept (turn order does not change) for the first three game turns
- if more characters remain than players needing one, a player who just bought one may remove characters not yet taken from the game by paying 1 for each (of course enough characters must remain so that each player still may get one).
I haven't played either of these variants, so I can't say anything about them.