Skip to content

MaybeMaru/moonchart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Moonchart

What is Moonchart?

Moonchart is a Haxelib backend tool designed to manage the chart file formats of various rhythm games at the same time.
It can be used to load, parse and convert between multiple formats efficiently.

How to use Moonchart

Here's an example in pseudo haxe code of how to convert 2 basic formats between eachother, it works about the same between all formats. Some may need a metadata file (like the FNF (V-Slice) Format) to work.

import moonchart.formats.fnf.legacy.FNFLegacy;
import moonchart.formats.fnf.FNFVSlice;

// Load an FNF (Legacy) chart and set the difficulty level to "hard"
var funkinLegacy = new FNFLegacy().fromFile("path/to/chart.json", null, "hard");

// Convert the FNF (Legacy) chart format to the FNF (V-Slice) format
var funkinVSlice = new FNFVSlice().fromFormat(funkinLegacy);

// Access the converted FNF (V-Slice) format data using the following variables
var vSliceData = funkinVSlice.data; // Contains the chart data
var vSliceMeta = funkinVSlice.meta; // Contains the metadata

// To save the chart in its original file format, use the stringify method to generate the file strings
var vsliceChart = funkinVSlice.stringify();
var chart:String = vsliceChart.data; // String containing the FNF (V-Slice) chart data
var meta:String = vsliceChart.meta;  // String containing the FNF (V-Slice) metadata

Available formats

Format File Extension
FNF (Legacy) json
FNF (Psych Engine) json
FNF (FPS +) json
FNF (Kade Engine) json
FNF (Maru) json
FNF (Codename) json
FNF (Ludum Dare) json / png
FNF (V-Slice) json
Guitar Hero chart
Osu! Mania osu
Quaver qua
StepMania sm
StepManiaShark ssc

About

An easy way to manage rhythm game chart formats

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages