boardgame
boardgame copied to clipboard
Have game variants be handled entirely in the server layer, not the core library
Discovered while pulling on #752, player group selection.
The core engine has a lot of logic exposed about variants, because they have to be decided before the actual game is set up.
But if we have player/team selection and validation within the custom game logic (as far as the core engine is concerned) then we should have variant logic in the same layer, because you might want to run it at the same time as player selection, or after, or before.
That would allow us to get rid of lots of Variants logic and put them in a sub library