Chart information format

Beat information is a kind of metadata, used to describe basic information other than chart data, such as charter, illustration, music information, etc.

There are two variants of chart information, ChartInfo and BriefChartInfo, Chart information (ChartInfo) is stored in YAML format, and the chart's info.yml file is an example of ChartInfo.

All fields of ChartInfo will be automatically filled in when imported locally, but the YAML format itself is not difficult to understand. If you want to save time by filling in the fields and then packaging and importing them together, you need to pay attention to filling in the following fields.

ChartInfo

Please refer to the definition in the source code as there may be updates to it.

Chart ID id

Not required, i32 integer, empty by default

A unique ID that identifies the chart, it is consistent with the ID in the server, and is used by the Phira client to determine if the chart needs to be updated.

This field should be left empty if the chart is local.

Uploader ID uploader

Not required, i32 integer, empty by default

A unique ID that identifies the uploader, consistent with the ID in the server, and is used to display information about the uploader of an online chart.

This field should be left empty if the chart is local.

Chart name name

Required, String string, default is "UK"

The name of the chart

Difficulty difficulty

Required, f32 float, default is 10.0

The difficulty of the chart, do not go crazy with this

Difficulty level level

Required, String string, default is "UK Lv.10"

Displays the difficulty level in the lower right corner of the screen during play.

Charter charter

Required, String string, default is "UK"

who_wrote_this_chart.jpg

Composer composer

Required, String string, default is "UK"

The music composer

Illustrator illustrator

Required, String string, default is "UK"

The illustrator of the chart's illustration

Chart file name chart

Required, String string, default is "chart.json"

The name of the chart file, chart generated by RPE is usually chart.json, chart generated by PE is usually xxx.pec

Chart format format

Not required, ChartFormat enum, empty by default

The format of the chart, which should not be filled in manually. It is automatically recognized and written by the Phira client, and is listed here for completeness.

Music file name music

Required, String string, default is "song.mp3"

The name of the music file

Illustration file name illustration

Required, String string, default is "background.png"

The name of the illustration file

Unlock video unlockVideo

Not required, String string, empty by default

The name of the video file that unlocks the chart

Preview start time previewStart

Required, f32 float, default is 0.0

The start time of the music preview in seconds

Preview end time previewEnd

Not required, f32 float, empty by default

The end time of the music preview in seconds, if left empty, the end time will be set to 15.0 seconds after the preview start time. If the end time exceeds the song length, the preview will be truncated.

Source code: Truncate

Aspect ratio aspectRatio

Required, f32 float, default is 16.0 / 9.0

Note: The aspect ratio of the chart display. Devices with aspect ratios greater than this value (e.g., some elongated cell phones, or 4:3 on a typical cell phone) will ensure that the chart display is at this value of aspect ratio, while devices with aspect ratios less than this will stretch the chart display to ensure that the chart display fills the screen (Source: TBD).

Background dimming level backgroundDim

Required, f32 float, default is 0.6

The dimming level of the background. Unit to be added later.

Judgement line length lineLength

Required, f32 float, default is 6.0

The length of the lines in the chart. Unit to be added (This involves rendering details, documentation to be added).

Chart offset offset

Required, f32 float, default is 0.0

The time delay (in seconds) between the chart and the music, that is, when the value is positive compared to when the value is zero:

  • If the music starts at the same time in both cases, the chart starts later when offset is positive.
  • If the chart start at the same time in the two cases, the music starts earlier when offset is positive.

Tip tip

Not required, String string, empty by default

Tip: If left empty, you'll get a different tip.

Tags tags

Required, String string array, empty by default

Tags for a chart, used for categorization and searching, tags related documentation to be added

Introduction intro

Required, String string, empty by default

The introduction to the chart

长条选项 holdPartialCover

Required, bool boolean, false by default

A rendering option for Hold notes, behavior to be added.

Creation time created

Not required, DateTime<Utc> optional UTC time, empty by default

The time when the chart was created, which should not be filled in manually, it will be automatically written by the Phira client.

Update time updated

Not required, DateTime<Utc> optional UTC time, empty by default

The last update time of the local chart, which should not be filled in manually, it will be automatically written by the Phira client.

Chart update time chartUpdated

Not required, DateTime<Utc> optional UTC time, empty by default

The last update time of the chart in the cloud, which should not be filled in manually, but is automatically written by the Phira client. This is used to determine if the spectrum needs to be updated

BriefChartInfo

BriefChartInfo is a simplified version of ChartInfo, intended for use in scenarios where detailed information is not required. The following are the main fields of BriefChartInfo:

TBD