songlist
在开始阅读之前
总论
歌曲信息都包含在一个叫做songlist的文件里。位置为\assets\songs
这个页面是关于更改歌曲信息的,如果想更改谱面本身,请移步谱面格式
如果想更改关于解歌条件的部分,请移步unlocks
如果想更改曲包相关内容请移步packlist
阅读总论
songlist是按照json格式编写的,有大量花括号与中括号,中间的回车与制表符除了整理版面之外没有任何意义。总之不该你改的东西你不要改就行了。
代码解析
框架
本文件总体框架如下。每一首歌曲的信息互不干扰。
{
"songs": [
{
// song 1
},
{
// song 2
} ...
]
}
细节解析
- 数据格式:
- string -- 字符串 例:"brandnewworld"
- int -- 整数 例:54401
- boolean -- 布朗值 例:true(是), false(否)
- localized字段可选属性:
- "en" -- 英文 默认语言
- "ja" -- 日文
- "ko" -- 韩文
- "zh-Hans" -- 简体中文
- "zh-Hant" -- 繁体中文
以下为歌曲信息最完整的格式。
{
"id": string (ASCII),
"title_localized": {
"en": string ...
},
"artist": string,
"artist_localized": {
"en": string ...
},
"bpm": string,
"bpm_base": int,
"set": string,
"purchase": string,
"audioPreview": int,
"audioPreviewEnd": int,
"side": int (0, 1),
"bg": string (ASCII),
"bg_daynight": {
"day": string (ASCII),
"night": string (ASCII)
},
"date": int (timestamp),
"version": string,
"world_unlock": boolean,
"remote_dl": boolean,
"byd_local_unlock": boolean,
"songlist_hidden": boolean,
"no_pp": boolean,
"source_localized": {
"en": string ...
},
"source_copyright": string,
"jacket_localized": {
"ja": boolean ...
},
"difficulties": [
{
"ratingClass": int (0, 1, 2, 3),
"chartDesigner": string,
"jacketDesigner": string,
"rating": int,
"ratingPlus": boolean,
"plusFingers": boolean,
"jacket_night": string (ASCII),
"jacketOverride": boolean,
"hidden_until_unlocked": boolean,
"bg": string (ASCII),
"world_unlock": boolean
} ...
]
}
综合
如果你在做完自制谱之后,采取的是替换原信息(不改ID)的方式导入的话,你也许还能登录游玩。
如果你采取了添加的方式,那么你的arc绝对不能登录,因为arc登录后会校验歌单,进而导致封号风险。
从这里开始就会涉及到危险操作了,请为自己的行为负责!