2026:Rhythm Game Chart Generation

From MIREX Wiki
Revision as of 11:58, 7 June 2026 by Ziyunliu (talk | contribs) (Submission Requirements)

Task Description

Rhythm game is a genre of video games that require players to physically react in sync with music. A rhythm game chart contains a time-series sequence of interactive target events mapped directly to an audio track. Rhythm game charting is a difficult task that requires musical expertise, and there is a demand for automatic rhythm game chart generation systems among players. While increasing number of work has been done on this topic in recent years, generating high-quality rhythm game charts that people enjoy playing remains a major challenge. To define the task within the scope of MIREX challenge, we specifically choose the task of generating osu!taiko beatmaps this year. osu!taiko is a game mode in osu! inspired by Taiko no Tatsujin, which features a horizontal conveyor belt of drum notes moving towards a judgment circle. In this game mode, players typically use a keyboard to strike different types of notes with precise timing. A high-quality mapping in osu!taiko involves many different aspects of music, including rhythmic perception, musical structure awareness, pitch awareness, musical instrument awareness, and so on.

In osu!, a beatmapset is a packed archive with .osz extension that contains a song in MP3 or Ogg format, a set of game levels (difficulties), and other audio and visual materials. Each game level is stored in a text file with .osu extension, which includes 7 sections: General, Editor, Metadata, Difficulty, Events, Timing Points, and Hit Objects. This year, we specify the task as predicting hit objects (mandatory) and inherited timing points (optional) based on the audio, difficulty level, and ground truth uninherited timing points. While existing research mostly focuses on hit objects, inherited timing points are also critical factors to carry musical meanings and make a chart feel human-like. Consequently, we include the generation of inherited timing points as an optional task to encourage participants to push the boundaries of current research. To ensure consistency, we restrict the difficulty levels to be Kantan, Futsuu, Muzukashii, Oni, and Inner Oni (Ura Oni).

Evaluation Criteria

While existing research relies on researcher-defined quantitative evaluation methods, we adopt a more user-centered 3-stage approach. The following evaluation will be performed on songs that are not included in the dataset provided to the participants. We will recruit about 5 osu!taiko mappers as the jury, and the jury will also be involved in the test song selection process.

Algorithmic Evaluation

In this stage, we will manually pick 3 songs for evaluation. First, we will use osu! star rating calculator to calculate the star ratings of the generated beatmaps. This allows us to assess whether the model's difficulty conditioning is functioning correctly. Then, we will follow AiMod and MapsetVerifier to detect unplayable placements of objects algorithmically. Models passing this evaluation phase will move on to human evaluation.

Expert Evaluation

In this stage, the jury will rate the generated charts based on musical representation, creativity, and gameplay similar to the Monthly Beatmapping Contest, and we will also introduce a humanity score evaluating how human-like the generated charts are. We will then use the jury's ratings to determine which finalists move on to player evaluation.

Community Evaluation

In this stage, a single showcase song will be selected for community evaluation. Participants will choose a difficulty level aligned with their skill level and playtest charts generated by each model alongside a human-authored chart. Players will vote on musical representation, creativity, gameplay, and they will be asked to identify which chart is authored by human.

Resources

We recommend participants to read this document to get an overall idea of how osu!taiko mapping works from a mapper's perspective. This is especially helpful if you are not familiar with osu!taiko gaming and/or mapping.

Participants are also encouraged to read osu! wiki to gain a clearer understanding of the gameplay, data format, timing, and mapping goals. We hereby list some very useful pages:

List of popular GitHub repositories for osu! beatmap generation models without papers:

List of papers and extended abstracts on osu! beatmap generation:

  • Hanzen, Jonah, Emily Halina, and Matthew Guzdial. "Time-based Chart Partitioning: Improving Local Coherency in Rhythm Game Chart Generation." Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment. Vol. 21. No. 1. 2025.
  • Yi, Jayeon, Sungho Lee, and Kyogu Lee. "Beat-Aligned Spectrogram-to-Sequence Generation of Rhythm-Game Charts." ISMIR LBD. 2023. GitHub repo: https://github.com/stet-stet/goct_ismir2023
  • Lee, Sihun, and Dasaem Jeong. "AutoOsu: Audio-Aware Action Generation for Rhythm Games." ISMIR LBD. 2023. GitHub repo: https://github.com/issyun/AutoOsu
  • Halina, Emily, and Matthew Guzdial. "TaikoNation: Patterning-focused chart generation for rhythm action games." Proceedings of the 16th International Conference on the Foundations of Digital Games. 2021. GitHub repo: https://github.com/emily-halina/TaikoNationV1

Training Dataset

To ensure data quality and fairness, we require all participants to use beatmaps ranked from May 5, 2019 to December 31, 2025 for training and validation. We recommend using this website and filter for "ranked>=2019-05-05 and ranked<2026-01-01 and mode=t", which yields 727 beatmapsets. To minimize legal risks and save resources, we also encourage participants to alternatively filter for "ranked>=2019-05-05 and ranked<2026-01-01 and mode=t and featured artist", which yields 174 beatmapsets. For more information on featured artists, see this page.

In osu!taiko, there are usually Kantan, Futsuu, Muzukashii, Oni, and Inner Oni difficulty levels. However, sometimes people may use different names for them, and there also exist levels that are higher than Inner Oni. To ensure consistency, we recommend using the following tier classification logic:

function get_tier(osu_file):   
    
    raw_name = osu_file.version_name.lower()
    
    # Keep only a-z and '
    clean_name = RegexReplace(raw_name, "[^a-z']", "") 
    
    if "kantan" in clean_name:
        return 1
        
    elif "futsuu" in clean_name:
        return 2
        
    elif "muzukashii" in clean_name:
        return 3
        
    elif "oni" in clean_name:
        if "inner" in clean_name or "ura" in clean_name:
            return 5
            
        elif "hell" in clean_name:
            return 6
            
        elif clean_name == "oni" or clean_name matches "^.+'soni$":
            return 4
            
    return None  # Discard non-standard variants

Submission Requirements

Participants are required to submit the source code and model checkpoints of their systems via a link to a Git repository (specifying a unique commit hash) or a Docker image digest by September 11, 2026 (AoE). Participants are free to convert the raw data into any internal format that best suits their model architecture, provided the complete pipeline is included in the submission. Submissions must be accompanied by a technical report in PDF format (2--4 pages) detailing the model architecture, dataset, and training process.

Immediately following the system submission deadline, the hidden test set will be released. This set will be include 3 template .osz files, each containing an audio file and a template \texttt{.osu} file with ground truth uninherited timing points. Participants will have a 48-hour window to execute their frozen systems on their own hardware of choice to generate the required outputs. For each song in the test set, the system should generate hit objects (mandatory) and inherited timing points (optional) for all 5 difficulty levels (Kantan, Futsuu, Muzukashii, Oni, Inner Oni). By the end of the 48-hour window, participants should submit a compressed archive containing all generated beatmaps in \texttt{.osu} files. Each file should use the following naming convention: \[\texttt{[TeamName]\_[SongName]\_[Difficulty].osu} \]

Note that some attributes (such as x and y axes) in hit objects are not relevant to osu!taiko gameplay, and therefore should not be predicted (see \url{https://osu.ppy.sh/wiki/en/Client/File_formats/osu_%28file_format%29} for details). In the submission, participants can set these attributes to default values (e.g. 256 for x and 192 for y).

Also note that for the optional prediction of inherited timing points, participants should standardize velocity multiplier calculation to account for the relationship between the global multiplier in the Difficulty section and local multipliers in inherited timing points. Template \texttt{.osu} files usually have a global multiplier of 1.4.


The organizers reserve the right to verify the integrity of any submission by performing a local execution of the provided Docker digest or Git commit hash to ensure bit-perfect or functionally equivalent reproduction of the submitted maps.

Timeline

  • July 1, 2026: Submission system opens
  • Sep 11, 2026: Submission deadline for the generation system
  • Oct 15, 2026: Results published

Organizers

Long-term Plan

We are committed to maintaining and expanding this task in the coming years. Our long-term roadmap includes the introduction of additional osu! modes and other open-access rhythm games, as well as other research objectives such as cross-mode/cross-game transfer learning ability and fine-grained generation controllability.