2022-08-05 18:43:08 +00:00
|
|
|
import java.nio.file.Path;
|
2022-08-05 19:34:17 -05:00
|
|
|
|
2022-08-09 17:25:27 +00:00
|
|
|
import readers.DDRReader;
|
2022-08-12 17:58:20 +00:00
|
|
|
import readers.ITGReader;
|
2022-08-10 18:18:51 +00:00
|
|
|
import readers.LoveLiveReader;
|
2022-08-09 15:40:26 +00:00
|
|
|
import readers.PopnReader;
|
2022-08-11 18:49:09 +00:00
|
|
|
import readers.SoundVoltexReader;
|
2022-08-04 13:32:00 +00:00
|
|
|
|
2022-08-03 17:56:35 +00:00
|
|
|
public class ArcadeReader {
|
2022-08-05 09:49:59 -05:00
|
|
|
/*
|
|
|
|
* Important data we would like to know for all games:
|
|
|
|
* Score
|
|
|
|
* Rank (Probably implementation-specific)
|
|
|
|
* Note accuracy [List]
|
|
|
|
* Marvelous
|
|
|
|
* Perfect
|
|
|
|
* Great
|
|
|
|
* Good
|
|
|
|
* Bad
|
|
|
|
* OK
|
|
|
|
* Miss
|
|
|
|
* Difficulty
|
|
|
|
* Song Name / Title
|
|
|
|
* Percentage (Can be EX Score, a percentage accuracy or survival percent)
|
|
|
|
* Max Combo
|
|
|
|
* Other (Not used by the auto detecter, used for storing misc. data.)
|
|
|
|
*
|
|
|
|
* Notes about Readers:
|
|
|
|
* Love Live
|
|
|
|
* - Does not use: Marvelous, OK
|
|
|
|
* Project Diva
|
|
|
|
* - Does not use: Marvelous, OK
|
|
|
|
* - Fail condition is MISSxTAKE
|
|
|
|
* DDR
|
|
|
|
* - Does not use: Max Combo (Cannot calculate in combo carryover mode), Bad
|
|
|
|
* - Fail condition is E rank.
|
|
|
|
* Pop'n Music
|
|
|
|
* - Does not use: Marvelous, Bad, OK
|
|
|
|
* - Stores number of bars filled in Percentage.
|
|
|
|
* - Fail condition is <17 in the meter (max is 24)
|
|
|
|
* Sound Voltex
|
|
|
|
* - Sound Voltex uses the note accuracy list slots as follows:
|
|
|
|
* Early:
|
|
|
|
* Error - Marvelous
|
|
|
|
* Near - Perfect
|
|
|
|
* Critical - Great
|
|
|
|
* S-Critical - Good
|
|
|
|
* Critical - Bad
|
|
|
|
* Near - OK
|
|
|
|
* Error - Miss
|
|
|
|
* - Sound Voltex stores EX score in Percentage.
|
|
|
|
* - Max Combo is Max Chain
|
|
|
|
* - Sound Voltex will store additional data about accuracy of note types as such:
|
|
|
|
* {"chip":{"scritical":0,"critical":0,"near":0,"error":0},"long":{"scritical":0,"error":0},"vol":{"scritical":0,"error":0},"gauge":<excessive|normal>,"gauge_pct":100}
|
|
|
|
* //Also storing what type of clear gauge was met and the % of the gauge.
|
|
|
|
* - Fail condition is <70% normal gauge.
|
|
|
|
* IIDX
|
|
|
|
* - Not going to support right now.
|
|
|
|
*
|
|
|
|
*/
|
2022-08-05 18:43:08 +00:00
|
|
|
public static void retrieveData(Path img) {
|
2022-08-14 00:09:20 -05:00
|
|
|
new SoundVoltexReader().interpretBoxes(img);
|
2022-08-05 20:01:08 +00:00
|
|
|
}
|
2022-08-03 17:56:35 +00:00
|
|
|
}
|