Skip to main content

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 for your platform:

Windows (Chocolatey):

choco install fluidsynth

Mac (Homebrew):

brew install fluid-synth

Linux (apt):

sudo apt 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 .wav 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.wav 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!

Release files for auto-chart-engine 2.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for auto-chart-engine 2.0.1
File Size Uploaded
auto_chart_engine-2.0.1.tar.gz 8.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for auto-chart-engine 2.0.1
File Interpreter ABI Platform
auto_chart_engine-2.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 16.6 kB

Release files / auto_chart_engine-2.0.1.tar.gz

Download URL auto_chart_engine-2.0.1.tar.gz
Size 8.2 kB
Tags Source
SHA-256 checksum
How to use checksums
39d1dfce6cb31a1d5dffcaac5bc4d0ac823bc6c57acd0df99a7f708101a67902
BLAKE2b-256 checksum
How to use checksums
71c6b8df98e0e1551d0dd9bd11f40d745e70e761e52347c7db46ac180ff67209
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / auto_chart_engine-2.0.1-py3-none-any.whl

Download URL auto_chart_engine-2.0.1-py3-none-any.whl
Size 8.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
77be3ef15215f3d97fd5f2c966e9e2d3afcb88bca646cba23de376838ed67a0d
BLAKE2b-256 checksum
How to use checksums
104d69a83ec7fece843fbb5ee9805d8afa52ee9156f021ec6a6f09e3ceb21053
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

2.0.1 This release

2 release files

2.0.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page