Skip to main content

This project streamlines charting for Clone Hero, the free PC rhythm game inspired by Guitar Hero/Rock Band. It generates highly accurate, playable charts directly from audio tracks using advanced extraction techniques like isolating drum tracks from MIDI and extracting precise note data. The engine dramatically reduces the time and effort needed to create custom song charts, enabling efficient creation of multiple songs.

Project description

Auto-Chart Engine (ACE)

Overview

Clone Hero is a free rhythm game for PC, inspired by Guitar Hero and Rock Band, that allows players to create and play custom charts for any song. This project seeks to streamline and elevate the charting process by leveraging advanced extraction techniques to generate playable chart files directly from audio tracks. By isolating drum tracks from MIDI files and extracting precise note data, the engine produces highly accurate Clone Hero charts that accurately represent the original MIDI composition. This engine reduces the time required to chart a song, streamlining the creation of multiple songs in Clone Hero.

Links

Install Instructions

Dependencies:

  1. In the terminal, enter in the following command:
pip install -r requirements.txt
  1. Install fluidsynth with chocolatey (Windows) or homebrew (Mac) or your Linux package manager:
choco install fluidsynth

Software:

CLI Usage

The Auto-Chart Engine CLI allows you to extract drum tracks from MIDI files and convert them into .chart files compatible with Clone Hero.

Basic Usage

python -m ace -i /path/to/your/midi/file.mid -o /optional/output/directory

Required Arguments:

  • -i, --input_dir: Path to the MIDI file you want to convert

Optional Arguments:

  • -o, --output_dir: Directory where output files will be saved (defaults to your Downloads folder)

Example

python -m ace -i "C:/Users/username/Music/my_song.mid" -o "C:/Users/username/Documents/CloneHero"

How It Works

  1. The CLI extracts the drum tracks from your MIDI file
  2. Generates a new MIDI file containing only the drum tracks (saved with suffix "_DRUMS")
  3. Based on the MIDI with the extracted drums, a .ogg version of the midi is generated
  4. Converts this drum-only MIDI file into a Clone Hero compatible .chart file

Generated Files

When you run the CLI, it produces 3 outputs:

  1. A MIDI file containing only the drum tracks (named <original_filename>_DRUMS.mid)
  2. A .chart file (named <original_filename>_DRUMS.chart)
  3. A folder named artist - <song_name> (ACE)
    • Contains notes.chart and song.ogg files for Clone Hero

Drum Mapping

The CLI maps standard drum notes to Clone Hero's drum notes:

  • Kick → Line
  • Snare → Red note
  • Hi-Hat → Yellow cymbal
  • 1st Tom → Yellow note
  • 2nd Tom → Blue note
  • 3rd Tom → Green note
  • Crash → Green cymbal
  • Ride → Blue cymbal

Troubleshooting

  • For best results, use standard MIDI files with proper drum channel mapping (channel 10/9)

Import to Clone Hero Instructions

  1. Locate the generated folder titled artist - <song> (ACE)
  2. Copy/cut and paste into your Clone Her songs path
  3. In Clone Hero, go to SettingsGeneralScan SongsYes
    • This should create a song.ini file in the folder that was copied into the Clone Hero songs path
  4. In the song.ini file is more metadata you can edit, but the important one to edit is the diff_drums which categorizes the song based on drumming difficulty
  5. Repeat the process in step 3 to see the drum difficulty change
  6. You are now ready to play your newly imported song!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

auto_chart_engine-2.0.0.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

auto_chart_engine-2.0.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file auto_chart_engine-2.0.0.tar.gz.

File metadata

  • Download URL: auto_chart_engine-2.0.0.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for auto_chart_engine-2.0.0.tar.gz
Algorithm Hash digest
SHA256 7f92804ec98331436122e2ee94c78be88a9d7349d4236ff62c71d673b67b051a
MD5 9fab152530d58b08699d06064d6f78b8
BLAKE2b-256 6575745f99313867da80893911ad0d1b1fa8ed65337160af2a479c747de709d4

See more details on using hashes here.

File details

Details for the file auto_chart_engine-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for auto_chart_engine-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e5750772b523fd534d5f6d3750437b6fc8ad6a489e4e3c6e993f2cebda3cb30
MD5 27bd05db22f46651a34bb2941151d726
BLAKE2b-256 4d4c8700df08d746a249011920002791f12bfc40b1dec495941dbd13b5347c51

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page