冰与火之舞自制关卡文件格式分析:修订间差异
来自 LNN的:not(博客)?
更多操作
小无编辑摘要 |
小 →关卡事件 |
||
| 第109行: | 第109行: | ||
待补完……2020年8月22日 (六) 10:48 (CST) | 待补完……2020年8月22日 (六) 10:48 (CST) | ||
[[分类:待填坑]] | |||
<html><style> | <html><style> | ||
2020年9月1日 (二) 00:48的版本
截图来自网络 |
前段时间在Steam上买了冰与火之舞。这是一款节奏类游戏,它的玩法比较独特,把音符的时值映射成了路径的夹角。(具体玩法不在此赘述。)此游戏具有内置关卡编辑器,并且可以通过Steam创意工厂分享自制关卡。
编辑器会将关卡保存为.adofai文件,音频和图像、视频等放在同一目录下。用文本编辑器打开.adofai文件,发现是JSON格式。这样就好办了,我会用树形图来表示这些数据的结构。
格式示例
节点格式:类型 键: 说明
类型:N=数字 S=字符串 A=数组 O=对象
- O: 根对象
- S code: 一个数字
- A settings: 数组可能代表列表或矢量;出现列表时,只举其中一项为例
- O: 列表里的一个对象
- N name: 一个字符串
- O: 列表里的一个对象
注意:.adofai文件目前不使用布尔值,而是用字符串Enabled或Disabled代替。
主体格式
- O: 根对象
- S pathData: 路径信息(后文会详细讲解)
- O settings: 关卡设置
- N version: 格式版本号。目前的版本号是2
- 关卡设置:
- S artist: 音乐作者
- S song: 标题
- S author: 关卡作者
- S separateCountdownTime: ?疑似未使用(
Enabled或Disabled) - S previewImage: 关卡传送门图片
- S previewIcon: 关卡图标
- S previewIconColor: 关卡图标颜色(HEX色号不含井号)
- S previewSongStart: 音乐预览开始时间(秒)
- S previewSongDuration: 音乐预览持续时间(秒)
- S seizureWarning: 癫痫警告(
Enabled或Disabled) - S levelDesc: 关卡描述
- S levelTags: 关卡标签(半角逗号分隔)
- S artistPermission: 艺术家授权证明图片(相对路径)
- S artistLinks: 艺术家链接
- N difficulty: 难度星级(1到10的整数)
- 歌曲设置:
- S songFilename: 音乐文件(相对路径)
- N bpm: 初始BPM(每旋转180°算作一拍)
- N volume: 音量%
- N offset: 音乐偏移量(第一次点击时音乐已播放的毫秒数)
- N pitch: 音乐播放速率/音高%
- S hitsound: 打拍声(可能的值:
Hat,Kick,Shaker,Sizzle,Chuck,ShakerLoud,None) - N hitsoundVolume: 打拍声音量%
- N countdownTicks: 倒数拍数
- 初始轨道设置:
- N trackColorType: 轨道颜色模式(可能的值:
Single,Stripes,Glow,Blink,Switch,Rainbow) - S trackColor: 轨道色调(HEX色号不含井号;
Rainbow模式忽略此项) - S secondaryTrackColor: 轨道副色调(HEX色号不含井号;
Single、Rainbow模式忽略此项)- (
Single、Stripes模式忽略以下三项)
- (
- N trackColorAnimDuration: 色彩动画持续时间(秒)
- S trackColorPulse: 颜色脉冲类型(可能的值:
None、Forward、Backward) - N trackPulseLength: 颜色脉冲持续时间(秒)
- S trackStyle: 轨道风格(可能的值:
Standard,Neon,NeonLight,Basic,Gems) - S trackAnimation: 轨道出现动画(可能的值:
None,Assemble,Assemble_Far,Extend,Grow,Grow_Spin,Fade,Drop,Rise) - N beatsAhead: 方块提前几拍出现(至少为1)
- S trackDisappearAnimation: 轨道消失动画(可能的值:
None,Scatter,Scatter_Far,Retract,Shrink,Shrink_Spin,Fade) - N beatsBehind: 星球离开方块几拍后方块开始消失
- 背景设置:
- S backgroundColor: 背景颜色(HEX色号不含井号)
- S bgImage: 背景图片(相对路径)
- S bgImageColor: 图片上色(HEX色号不含井号)
- A parallax: 背景图片随前景移动的比率%(二维矢量;例如设为[100,100]即背景和前景同步运动,[0,0]即前景移动,背景不动)
待补完……2020年8月22日 (六) 10:48 (CST)
路径信息
这是一个字符串,每个字符代表一块轨道的方向。下图是字符和实际方向的对照表,例如一个字母R即代表向当前方块的右侧搭一个方块。
文件:Adofai-path-info-legend.bmp
360°轨道块直接用反方向的字母表示;字母后加叹号可以使这个轨道块成为中旋方块。
此外还有一些特殊方向:
- 5: 向左转72°
- 6: 向右转72°
- 7: 向左转(360/7)°
- 8: 向右转(360/7)°
注意轨道块之间的夹角必须是15°的整数倍、108°或(900/7)°,否则会有奇怪的显示bug……
关卡事件
待补完……2020年8月22日 (六) 10:48 (CST)