「解锁条件(unlocks)格式」:修訂間差異
(以“{{技术型}} * '''本页面内容保持孤立!''' == 总论 == 文件在\assets\songs下 打开文件大概是这样的画风: {| class="wikitable" |- | <now...”为内容创建页面) |
小無編輯摘要 |
||
(未顯示由 8 位使用者於中間所作的 21 次修訂) | |||
行 1: | 行 1: | ||
{{技术型}} | <!--如果你通过查看源代码发现了这里,那么恭喜你发现了查看内容的第二种方法。 | ||
-->{{技术型}} | |||
__NOINDEX__ | |||
{{Usercheck}} | |||
{{特殊页面导航}} | |||
* '''本页面内容保持孤立!''' | * '''本页面内容保持孤立!''' | ||
行 7: | 行 12: | ||
打开文件大概是这样的画风: | 打开文件大概是这样的画风: | ||
{ | |||
"unlocks": [ | |||
"unlocks": [ | |||
{ | { | ||
"songId": …, | "songId": …, | ||
"ratingClass": …, | "ratingClass": …, | ||
"conditions": [ | "conditions": [ | ||
… | |||
], | |||
… | |||
}, | }, | ||
… | |||
] | ] | ||
} | } | ||
整个文件以一个大括号和一个”unlocks”字符串开头,大体结构如下 | 整个文件以一个大括号和一个”unlocks”字符串开头,大体结构如下 | ||
{ | { | ||
"unlocks":[ | |||
//all contents… | //all contents… | ||
] | ] | ||
行 67: | 行 66: | ||
} | } | ||
从上到下依次解析如下: | 从上到下依次解析如下: | ||
songId (String):双引号包含的字符串,代表了欲限定条件的歌曲名称 | *songId (String):双引号包含的字符串,代表了欲限定条件的歌曲名称 。'''至关重要''',所引用歌曲对应谱面文件夹也必须是id名,不能出现非ASCII字符 | ||
*ratingClass (int):代表了欲限定条件的歌曲难度,取值只能为0,1,2 。0 为PST难度,1为PRS难度,2为FTR难度。 | |||
*conditions:unlocks文件中的核心,以一对英文方括号包裹,每一个condition语句组以一对大括号包含。一个歌曲的一个难度可以有很多个condition语句组,它们之间以英文逗号分开。 | |||
ratingClass (int):代表了欲限定条件的歌曲难度,取值只能为0,1,2 | |||
conditions:unlocks文件中的核心,以一对英文方括号包裹,每一个condition语句组以一对大括号包含。一个歌曲的一个难度可以有很多个condition语句组,它们之间以英文逗号分开。 | |||
每一个语句组中一定有一个type语句,根据type的取值不同,其中会有不同的呈现。 | 每一个语句组中一定有一个type语句,根据type的取值不同,其中会有不同的呈现。 | ||
==== | ==== 残 片型解锁==== | ||
{ | { | ||
行 82: | 行 77: | ||
"credit": frag_needed_to_unlock | "credit": frag_needed_to_unlock | ||
} | } | ||
当type取0时,为 | 当type取0时,为 残 片型解锁。玩家需要花 费残片 来开启当前歌曲的游玩权限。credit的取值是一个整数,代表了解锁当前难度歌曲需要花费 的残片 数量。 | ||
====先行通过歌曲型解锁==== | ====先行通过歌曲型解锁==== | ||
{ | { | ||
"type":1, | "type":1, | ||
行 93: | 行 87: | ||
} | } | ||
type取1时,为先行通过歌曲型解锁,玩家需要在其前置歌曲中达到相应要求。 | type取1时,为先行通过歌曲型解锁,玩家需要在其前置歌曲中达到相应要求。 | ||
*song_id (String):指在游玩本难度的歌曲时,需要先行通过的歌曲名称,引用要求与songId相同。 | |||
*song_difficulty (int):取值为0,1,2,与ratingClass含义相同。 | |||
*grade (int):限定先行通过的歌曲需要达到的评级,0为不限定,1为达到C,2为达到B,3为达到A,4为达到AA,5为达到EX。 | |||
====先行游玩歌曲型解锁==== | |||
{ | |||
"type":2, | |||
"song_id": songname, | |||
"song_difficulty": difficulty | |||
} | |||
type取2时,为先行游玩歌曲型解锁,与[[#先行通过歌曲型解锁|先行通过歌曲型解锁]]类似,不过对应结果为游玩相应曲目即可。变量不再赘述。 | |||
song_id | ====多次通过歌曲型解锁==== | ||
{ | |||
"type":3, | |||
"song_id": songname, | |||
"song_difficulty": difficulty, | |||
"grade": gradeNum, | |||
"times": timesNum | |||
} | |||
type取3时,为多次通过歌曲型解锁,与[[#先行通过歌曲型解锁|先行通过 歌曲 型解锁]]类似 , 不过 需要 多次通过相应曲目并达到给定评级。 | |||
*times (int):指 先行通过的歌曲 需 要 达到限定评级的次数。 | |||
其他变量不再赘述 。 | |||
====选择任务型解锁==== | |||
{ | |||
"type":4, | |||
"conditions": [ | |||
{ | |||
//condition 1 | |||
}, | |||
{ | |||
//condition 2 | |||
} | |||
] //end of condition(s) | |||
} | |||
type取4时 , 为选择任务型解锁。其中conditions类似最外侧的conditions,可填入不 同 的condition语句组。玩家只需挑选其中任意一个任务完成即可解锁 。<s>套娃警告</s> | |||
====个人游玩潜力值型解锁==== | |||
{ | |||
"type":5, | |||
"rating": potentialNum | |||
} | |||
type取5时,为个人游玩潜力值型解锁,玩家需要取得或超过限定的潜力值即可解锁。 | |||
*rating (int): 指 限定的 个人游玩潜力值乘以100后 的 整数 。<s> 可以随便填 , 负数都行</s> | |||
====特殊解锁类型==== | ====特殊解锁类型==== | ||
行 107: | 行 140: | ||
"max": maxNum | "max": maxNum | ||
} | } | ||
type取101时,为特殊解锁类型,通常用于解锁 | type取101时,为特殊解锁类型,通常用于解锁 隐藏 歌曲。 | ||
*min (int):解锁anomaly失败时获得的最小进度数。 | |||
min (int):解锁anomaly失败时获得的最小进度数。 | *max (int):解锁anomaly失败时获得的最大进度数。 | ||
{{Usercheck-end}} | |||
max (int):解锁anomaly失败时获得的最大进度数。 |
於 2020年12月30日 (三) 02:52 的修訂
此頁面本頁面為技術型隱藏頁面 |
已確認。
- 本頁面內容保持孤立!
總論
文件在\assets\songs下
打開文件大概是這樣的畫風:
{ "unlocks": [ { "songId": …, "ratingClass": …, "conditions": [ … ], … }, … ] }
整個文件以一個大括號和一個」unlocks」字符串開頭,大體結構如下
{ "unlocks":[ //all contents… ] }
細節解析
例子
{ "songId": "chronostasis", "ratingClass": 1, "conditions": [ { "type": 1, "song_id": "infinityheaven", "song_difficulty": 1, "grade": 0 }, { "type": 0, "credit": 80 } ] }
歸納
{ "songId": this.songname, "ratingClass": classNum, "conditions": [ { //condition 1 }, { //condition 2 } ] //end of condition(s) }
從上到下依次解析如下:
- songId (String):雙引號包含的字符串,代表了欲限定條件的歌曲名稱。至關重要,所引用歌曲對應譜面文件夾也必須是id名,不能出現非ASCII字符
- ratingClass (int):代表了欲限定條件的歌曲難度,取值只能為0,1,2。0為PST難度,1為PRS難度,2為FTR難度。
- conditions:unlocks文件中的核心,以一對英文方括號包裹,每一個condition語句組以一對大括號包含。一個歌曲的一個難度可以有很多個condition語句組,它們之間以英文逗號分開。
每一個語句組中一定有一個type語句,根據type的取值不同,其中會有不同的呈現。
殘片型解鎖
{ "type": 0, "credit": frag_needed_to_unlock }
當type取0時,為殘片型解鎖。玩家需要花費殘片來開啟當前歌曲的遊玩權限。credit的取值是一個整數,代表了解鎖當前難度歌曲需要花費的殘片數量。
先行通過歌曲型解鎖
{ "type":1, "song_id": songname, "song_difficulty": difficulty, "grade": gradeNum }
type取1時,為先行通過歌曲型解鎖,玩家需要在其前置歌曲中達到相應要求。
- song_id (String):指在遊玩本難度的歌曲時,需要先行通過的歌曲名稱,引用要求與songId相同。
- song_difficulty (int):取值為0,1,2,與ratingClass含義相同。
- grade (int):限定先行通過的歌曲需要達到的評級,0為不限定,1為達到C,2為達到B,3為達到A,4為達到AA,5為達到EX。
先行遊玩歌曲型解鎖
{ "type":2, "song_id": songname, "song_difficulty": difficulty }
type取2時,為先行遊玩歌曲型解鎖,與先行通過歌曲型解鎖類似,不過對應結果為遊玩相應曲目即可。變量不再贅述。
多次通過歌曲型解鎖
{ "type":3, "song_id": songname, "song_difficulty": difficulty, "grade": gradeNum, "times": timesNum }
type取3時,為多次通過歌曲型解鎖,與先行通過歌曲型解鎖類似,不過需要多次通過相應曲目並達到給定評級。
- times (int):指先行通過的歌曲需要達到限定評級的次數。
其他變量不再贅述。
選擇任務型解鎖
{ "type":4, "conditions": [ { //condition 1 }, { //condition 2 } ] //end of condition(s) }
type取4時,為選擇任務型解鎖。其中conditions類似最外側的conditions,可填入不同的condition語句組。玩家只需挑選其中任意一個任務完成即可解鎖。套娃警告
個人遊玩潛力值型解鎖
{ "type":5, "rating": potentialNum }
type取5時,為個人遊玩潛力值型解鎖,玩家需要取得或超過限定的潛力值即可解鎖。
- rating (int):指限定的個人遊玩潛力值乘以100後的整數。
可以隨便填,負數都行
特殊解鎖類型
{ "type": 101, "min": minNum, "max": maxNum }
type取101時,為特殊解鎖類型,通常用於解鎖隱藏歌曲。
- min (int):解鎖anomaly失敗時獲得的最小進度數。
- max (int):解鎖anomaly失敗時獲得的最大進度數。