CoolFace
Modelpublic

thejorseman/CloneCharter

sourceHugging Facemitupdated 5mo agoView on Hugging Face
1likes30downloads
Model Card

AutoCharterModel — Clone Hero Chart Generator

Encoder-decoder Transformer that generates Clone Hero .chart files from raw audio.

Model description

AutoCharterModel takes per-beat audio features (MERT embeddings + Log-Mel spectrogram) and autoregressively generates a tokenised chart for Guitar, Bass and/or Drums at any difficulty level (Easy → Expert+++).

Architecture

HyperparameterValue
Parameters8,038,017
d_model256
Encoder layers4
Decoder layers4
Attention heads8
FFN dim512
Dropout0.2
Vocab size187
Max sequence length8,192 tokens
Max beats1,024
MERT input dim1,024
Log-Mel frames32 × 128

Input features (per beat)

  • —MERT embeddings — [N, 1024] from m-a-p/MERT-v1-330M
  • —Log-Mel spectrogram — [N, 32, 128] (22 050 Hz, 128 mels)
  • —BPM, time signature numerator/denominator, beat duration (scalar per beat)
  • —Instrument ID — guitar=0, bass=1, drums=2
  • —Difficulty ID — Easy=0, Medium=1, Hard=2, Expert=3, Expert+=4 …

Vocabulary (187 tokens)

PAD=0  BOS=1  EOS=2  UNK=3
BEAT_BOUNDARY=4  MEASURE_START=5
INSTR_GUITAR=6  INSTR_BASS=7  INSTR_DRUMS=8
WAIT(1-48)=9-56
GUITAR_NOTE=57-87  MOD_HOPO=88  MOD_TAP=89  MOD_OPEN=90  MOD_FORCE_STRUM=91
DRUM_NOTE=92-122
SUS(0-59)=123-182
STAR_POWER_ON=183  STAR_POWER_OFF=184  SOLO_ON=185  SOLO_OFF=186

Training

  • —Dataset: ~42,600 Clone Hero charts (Guitar, Bass, Drums)
  • —Optimiser: AdamW (lr=3e-4, weight decay=0.01, cosine schedule)
  • —Best validation loss: 1.0534 at step 145,188

Intended use

Use the auto-charter pipeline to generate charts for new songs:

bash
python src/auto_charter/scripts/gradio_multigen.py \\
    --checkpoint path/to/checkpoint \\
    --port 7860

Or programmatically:

python
from auto_charter.model.charter_model import AutoCharterModel
model = AutoCharterModel.from_pretrained("thejorseman/CloneCharter")

License

MIT