OCE: Osu Collection Editor
Published on May 9, 2016
OCE is a small management program for collections of songs in the rhythm game osu!. The program can edit the collection.db file from the game directly, using the player's own osu! song database. The program retrieves information for any songs that are missing from the song database using the osu! API.
OCE is written in Python using PyQt5 as a binding to the Qt5 GUI framework. The Model-View-Controller pattern is used to separate program logic from GUI management code. The GUI's are designed using Qt Designer, then converted to python using pyuic5. The resulting generated code is linked to a controller to make it actually do stuff. The information is loaded directly from the game's custom binary database format, detailed on their wiki. Missing information is collected using the game's API. Users can then download the missing songs via the appropriate dialog in OCE.