Re:PhiEdit 谱面格式说明
Re:PhiEdit 谱面采用 JSON 格式,可以使用任何文本编辑器进行编写。
我们约定,备注的-
表示该版本及以前不支持,+
表示该版本及以后支持。
概念
Beat
由[int,int,int]
组成,RPE 显示[0]:[1]/[2]
;
其节拍值可以表示为Beat[0] + Beat[1] / Beat[2]
。
结构
根结构 root
META
MetaData
81+
:谱面信息。BPMList
Array<BPMEvent>
81+
:BPM 事件列表。judgeLineList
Array<JudgeLine>
81+
:判定线列表。judgeLineGroup
Array<string>
99-100+
:判定线分组。- 用于 RPE 标记,谱面读取时不会使用这个属性。
谱面信息 MetaData
该属性在 RPE 版本 81 前位于根结构,RPE 版本 99 后位于META
。
RPEVersion
int
81+
:RPE 版本,如113
表示v1.1.3
。offset
float
81+
:谱面偏移(ms)。name
string
81+
:音乐名称(谱面名称)。id
string
81+
:唯一标识(标识名)。song
string
81+
:音乐文件路径。background
string
81+
:背景文件路径。composer
string
81+
:音乐作者(作曲者)。charter
string
81+
:谱面作者(谱面设计)。level
string
81+
:难度等级(谱面难度)。
BPM 事件 BPMEvent
startTime
Beat
81+
:开始时刻。bpm
float
81+
:BPM(每分钟拍数)。
判定线 JudgeLine
numOfNotes
int
81+
:音符数目。isCover
int
81+
:遮罩(0-UnCover,1-Cover,默认1
)。Texture
string
81+
:判定线材质文件(默认line.png
)。eventLayers
Array<EventLayer>
81+
:事件层。extended
Extended
81+
可选
:扩展。notes
Array<Note>
81+
:音符列表。Group
int
81-99+
:未知。Name
string
81-99+
:判定线名称。zOrder
int
100-105+
:Z 轴坐标。bpmfactor
float
100-105+
:?。father
int
100-105+
:?。posControl
Array<PosControl>
105-113+
:?。alphaControl
Array<AlphaControl>
105-113+
:?。sizeControl
Array<SizeControl>
105-113+
:?。skewControl
Array<SkewControl>
105-113+
:?。yControl
Array<YControl>
105-113+
:?。
音符 Note
type
int
81+
:音符类型。startTime
Beat
81+
:开始时刻。endTime
Beat
81+
:结束时刻。positionX
float
81+
:X 坐标。above
int
81+
:下落朝向(Up/Down)。isFake
int
81+
:真值(Real/Fake)。speed
float
81+
:速度。size
float
81+
:宽度。yOffset
float
81+
:Y 值偏移。visibleTime
float
81+
:可视时间/秒。alpha
int
99-100+
:不透明度(透明度)。
事件层 EventLayer
请注意:该对象实际可能为null
,属性均为可选项!
speedEvents
Array<LineEvent>
81+
可选
:速度事件。moveXEvents
Array<LineEvent>
81+
可选
:X 坐标事件。moveYEvents
Array<LineEvent>
81+
可选
:Y 坐标事件。rotateEvents
Array<LineEvent>
81+
可选
:旋转事件。alphaEvents
Array<LineEvent>
81+
可选
:不透明度事件。
扩展 Extended
inclineEvents
Array<LineEvent>
81-
:倾斜事件。scaleXEvents
Array<LineEvent>
81+
可选
:X 缩放事件。scaleYEvents
Array<LineEvent>
81+
可选
:Y 缩放事件。colorEvents
Array<LineEvent>
81+
可选
:颜色事件。
事件 LineEvent
startTime
Beat
81+
:开始时刻。endTime
Beat
81+
:结束时刻。start
float
81+
:开始值。end
float
81+
:结束值。easingType
int
81+
可选
:缓动类型,SpeedEvent
无此项。linkgroup
int
99-100+
:绑定组(用于 RPE 标记,对谱面读取无影响)。easingLeft
float
100-105+
可选
:缓动切割左值,SpeedEvent
无此项。easingRight
float
100-105+
可选
:缓动切割右值,SpeedEvent
无此项。bezier
int
113-123+
:贝塞尔(0-关闭,1-开启,默认0
),SpeedEvent
无此项。bezierPoints
Array<float>
113-123+
:贝塞尔点,SpeedEvent
无此项。- 长度为 4,等价于
cubic-bezier(p1,p2,p3,p4)
,默认值[0.0,0.0,0.0,0.0]
。
- 长度为 4,等价于
PosControl
x
float
105-113+
:X 坐标。easing
int
105-113+
:缓动类型。pos
float
105-113+
:位置。
AlphaControl
x
float
105-113+
:X 坐标。easing
int
105-113+
:缓动类型。alpha
float
105-113+
:不透明度。
SizeControl
x
float
105-113+
:X 坐标。easing
int
105-113+
:缓动类型。size
float
105-113+
:宽度。
SkewControl
x
float
105-113+
:X 坐标。easing
int
105-113+
:缓动类型。skew
float
105-113+
:倾斜。
YControl
x
float
105-113+
:X 坐标。easing
int
105-113+
:缓动类型。y
float
105-113+
:Y 坐标。