The following change notes are a summary of changes between git hash 8482d6009a3b81f8624e and 8a769c077d1c184f5dcd:
Reorganized pyprocgame module source into separate files but consolidated submodules. Most classes are still at the same module path externally, but the following have moved:
Most of the changes can be seen in commit c06a031d1505c30a86b4.
Mode switch handlers should now return procgame.game.SwitchStop or SwitchContinue, instead of True or False. Although the values are the same the meaning is much clearer.
Added procgame.game.BasicGame, a new subclass of procgame.game.GameController that comes with helpful classes like procgame.modes.ScoreDisplay already installed. Recommended for new game development.
Added procgame.config module to facilitate system-wide configuration such as the path to DMD files (used to populate procgame.dmd.font_path and used within procgame.dmd.font_named()).
Added procgame.desktop.Desktop which provides a virtual DMD and incorporates keyboard-to-event features previously in procgame.keyboard. Both are demonstrated in the source code to procgame.game.BasicGame.
Removed procgame.game.Player.info_record. Devs should use a game-specific subclass of Player with the new method procgame.game.GameController.create_player().
Added procgame.fakepinproc.FakePinPROC, a pinproc.PinPROC stand-in.
Added procgame.game.GameController.create_pinproc() to enable subclassing or replacing pinproc.PinPROC.
The procgame.sound.SoundController will disable itself if it cannot initialize pygame.mixer.
Added procgame.game.GameController.get_events() and procgame.game.GameController.tick().
Renamed machineType variables to the more Pythonic machine_type.
Renamed procgame.game.GameController.write_settings() to save_settings(). Renamed write_game_data() to save_game_data().