In our local speed tournaments we are using 20+5 Fischer time control. Unfortunately we cannot train with this time control on OGS since you cannot choose 5 seconds increment for live games and you cannot choose 20 minutes of main time for blitz games.
It would be great if that time control could be accommodated by OGS somehow. The precise implementation is not particularly important, but I would make it so that you can choose the main time and increment freely and it is afterwards classified as live or blitz based on some equation, e.g. maintime + 1/2 board size x increment < 10 minutes for blitz games.
Time control constraints are on the front end, interestingly, and it could be as easy as changing a 10 to a 5:
The big issue with this simple change is that 30s+5s would become a valid Live setting. (Unpopular opinion: OGS should remove the distinction between blitz and live because the line is so blurry anyway )
It would be a valid setting under the live category, but it would probably be classified as a Blitz game by the classifyGameSpeed function, so that might produce bugs. However, since this function already exists, the choice between Blitz/Live/Correspondence could be removed and the time control chosen freely as mentioned above. The classification follows from that function.