In this post I'll be sharing the design of the league structures in Manager.Soccer.
How do leagues work in real life?
Real life leagues have two characteristics: they're usually flat and rigid.
By flat I mean that teams are relegated or promoted from a single league into another league. There is no pyramid structure. Teams from the English Premier League are relegated into The Championship and teams from The Championship are promoted to the English Premier League.
By rigid I mean that the size of the leagues does not usually change from season to season. The number of leagues does not usually change either - the English Football League has 3 leagues for example.
How can that be applied to a multiplayer game?
This structure is not suitable for a multiplayer game because the number of players is always changing. The league structure must be dynamic in order to scale up and down with the player base.
This leaves us with a number of challenges:
- How can we ensure the league structure is competitive? i.e. there is always a top league to aim for
- How can we ensure the league structure is fluid enough to be able to add leagues mid-way through a season?
Manager.Soccer will have a pyramid-based league structure. Each level of the pyramid will be referred to as a division with several leagues in it. Clubs will be promoted and relegated from each level of the division at the end of the season. The top division, division A, will have a single league, league A1 and this will be the best league in the game.
Initially, each league will have 12 clubs in it (seasons should be quite short). New clubs (and their leagues, fixtures and divisions) will be automatically created on-the-fly during the season as more players join the game.