I have a bunch of 2d games I use in programmable learning environments. This is the commit that did a lot of the shifting from 3 to 3.0.0-RC1
https://github.com/wbillingsley/lavamaze/commit/0d9aca52e8e8...
A lot of it was just trivia like "it's required to put parentheses around lambda function parameters now", and "if the function is declared with an empty arg list () rather than no arg list, you have to call it with an empty arg list rather than no arg list".
If I recall, there's a compiler plugin they put out that could automatically make many of those changes, but I found it took little enough time just to do them manually that investigating the plugin wasn't necessary.
An example of one of the programmable games in action: https://theintelligentbook.com/thinkingaboutprogramming/#/ch...