I had been itching for the favorites feature since I'm bad with japanese so figured I'd go ahead and add it. I've included a few pics to help visualize the changes. ### Summary of user-facing changes: - New Favorites frontend page that itemizes favorites by genre for the current version (as selected on the Profile page). Favorites can be removed from this page via the Remove button - Updated the Records page so that it only shows the playlog for the currently selected version and includes a "star" to the left of each title that can be clicked to add/remove favorites. When the star is yellow, its a favorite; when its a grey outline, its not. I figure its pretty straight forward - The Records and new Favorites pages show the jacket image of each song now (The Importer was updated to convert the DDS files to PNGs on import) ### Behind-the-scenes changes: - Fixed a bug in the chuni get_song method - it was inappropriately comparing the row id instead of the musicid (note this method was not used prior to adding favorites support) - Overhauled the score scheme file to stop with all the hacky romVersion determination that was going on in various methods. To do this, I created a new ChuniRomVersion class that is populated with all base rom versions, then used to derive the internal integer version number from the string stored in the DB. As written, this functionality can infer recorded rom versions when the playlog was entered using an update to the base version (e.g. 2.16 vs 2.15 for sunplus or 2.22 vs 2.20 for luminous). - Made the chuni config version class safer as it would previously throw an exception if you gave it a version not present in the config file. This was done in support of the score overhaul to build up the initial ChuniRomVersion dict - Added necessary methods to query/update the favorites table. ### Testing - Frontend testing was performed with playlog data for both sunplus (2.16) and luminous (2.22) present. All add/remove permutations and images behavior was as expected - Game testing was performed only with Luminous (2.22) and worked fine Reviewed-on: https://gitea.tendokyu.moe/Hay1tsme/artemis/pulls/176 Co-authored-by: daydensteve <daydensteve@gmail.com> Co-committed-by: daydensteve <daydensteve@gmail.com>
ARTEMiS
A network service emulator for games running SEGA'S ALL.NET service, and similar.
Supported games
Games listed below have been tested and confirmed working. Only game versions older then the version currently active in arcades, or games versions that have not recieved a major update in over one year, are supported.
-
Card Maker
- 1.30
- 1.35
-
CHUNITHM INTL
- SUPERSTAR
- SUPERSTAR PLUS
- NEW
- NEW PLUS
- SUN
- SUN PLUS
-
CHUNITHM JP
- AIR
- AIR PLUS
- AMAZON
- AMAZON PLUS
- CRYSTAL
- CRYSTAL PLUS
- PARADISE
- PARADISE LOST
- NEW
- NEW PLUS
- SUN
- SUN PLUS
- LUMINOUS
-
crossbeats REV.
- Crossbeats REV.
- Crossbeats REV. SUNRiSE S1
- Crossbeats REV. SUNRiSE S2 + omnimix
-
Hatsune Miku: Project DIVA Arcade
- Future Tone Arcade - All versions
-
Initial D THE ARCADE
- Season 2
-
maimai DX
- Splash
- Splash Plus
- UNiVERSE
- UNiVERSE PLUS
- FESTiVAL
- FESTiVAL PLUS
- BUDDiES
- BUDDiES PLUS
-
O.N.G.E.K.I.
- SUMMER
- SUMMER PLUS
- R.E.D.
- R.E.D. PLUS
- bright
- bright MEMORY
-
POKKÉN TOURNAMENT
- Final Online
-
Sword Art Online Arcade
- Final (Single player only)
-
WACCA
- Lily R
- Reverse
Requirements
- python 3 (tested working with 3.9 and 3.10, other versions YMMV)
- pip
- memcached (for non-windows platforms)
- mysql/mariadb server
Setup guides
Follow the platform-specific guides for windows, linux (Debian 12 or Rasperry Pi OS recomended, but anything works) or docker to setup and run the server.
Game specific information
Read Games specific info for all supported games, importer settings, configuration option and database upgrades.
Production guide
See the production guide for running a production server.