Although there are many different ways to get a game started, you have
three main categories of functionality to support: 1) selection of the
game to play, 2) setting of variants, and 3) selection of players. For
command-line-using programs, the file
cmdline.c need only be
linked in to provide all of this functionality. For graphical
interfaces, you will need to design appropriate dialogs. This can be a
lot of work, exacerbated by the fact that these dialogs will be the
first things that new Xconq players see, and will therefore shape
their opinions about the quality of the interface and of the game.
[more detail about what has to be in dialogs?]
Interface code should check all player specs, not proceed with initialization until these are all valid.
Both standard and nonstandard variants should vanish from or be grayed out in dialog boxes if irrelevant to a selected game.