石墩子快跑
欢迎游玩!
游戏获取:
交流分享平台:
- 石墩子快跑吧
- 坏枪的石墩子 QQ 群
- 答案是什么?希腊奶。
游戏已经开源在 GitHub 上。 对游戏的 BUG 等反馈,请在 Issue 上发起。
这里是说明文档!
石墩子快跑 · 谱面制作说明
欢迎游玩本游戏!这篇文章将告诉你如何制作自己的谱面!
谱面文件结构
石墩子谱面文件 (.sdx) 本质上是一个 zip 压缩包,里面包含四份文件与一个子文件夹。
data.sdz
music.mp3
/music.wav
bg.png
bg.mp4
(可选)skin
(文件夹)(可选)
其中:
music.mp3
即谱面音频文件,可以是 mp3,也可以是 wav。bg.png
是谱面背景图片。bg.mp4
是谱面背景视频。data.sdz
是谱面的数据,接下来你的音符信息将存进这个文件里。skin
是谱面自带皮肤文件夹,具体结构请参考 皮肤制作说明。
data.sdz
的 [Meta] 结构
data.sdz
可以通过使用各种文本编辑器进行编辑。在最开头的结构如下:
[Meta]
title = 曲目名称
author = 曲师
mapper = 谱师
level = 谱面定数
bpm = 曲目的BPM
offset = 第 0 拍相对于音频开始播放的后移量(秒)
bg_offset = 视频相对于音频开始播放的偏移量(秒)
[Data]
...
在这一部分请填入曲目的相关信息。
data.sdz
的 [Data] 结构
在这一部分将是石墩子的音符信息。
在相同 BPM 下,你可以任意交换其它音符行的顺序。
普通石墩子音符
单个 普通石墩子音符 的结构如下:
D,拍子数,分子,分母,所在轨道,堆叠数量,剔除数量,缩放大小,Y轴偏移量
谱面从第 0 拍算起。
分子和分母可以为 0。如果分母为 0,那么分数值为 0。
轨道共 3 条,分别对应数字 1、2、3。在 1.5.0 版本过后,此项可以为小数。
堆叠数量即石墩子堆起来的个数,最少为 1。
「剔除数量」项可以剔除已经堆叠的石墩子数,从而实现部分石墩子悬空的效果。例如,如果你已经堆了 8 个石墩子,那么你可以在此处填写 1-7 的任意数字。如果你填写了 7,那么底下的 7 个石墩子都会被剔除,只剩下第 8 个石墩子悬浮在空中。
「缩放大小」项可以缩放石墩的大小,其相应可以被触发的轨道范围也会变化。例如,如果你想把石墩子放大 2 倍,则此项处填 2。
「Y轴偏移量」项可以直接让音符在 Y 轴上进行偏移,即改变石墩子所在的高度。例如,如果你想把石墩子升高 1 格,则此项处填 1。
例如,如果你想在第 32 拍的 1 / 4 处,在 2 号轨道放 1 个普通石墩子,那么这个音符就该这样写:
D,32,1,4,2,1,0,1,0
分子是可以大于等于分母的,例如,下面几个音符就是等价的:
D,32,4,4,2,1,0,1,0
D,33,0,4,2,1,0,1,0
D,33,0,0,2,1,0,1,0
但为了方便检阅,建议依然写作真分数形式。
绝赞石墩子音符
所有绝赞石墩子音符的总和占据额外 1% 的进度。
单个 绝赞石墩子音符 的结构如下:
X,拍子数,分子,分母,所在轨道,堆叠数量,剔除数量,缩放大小,Y轴偏移量
用法和普通石墩子音符相同。
表演石墩子音符
表演石墩子音符会被自动触发爆炸,无论击中与否,但并不会计入击打总数中,仅作装饰用。
单个 表演石墩子音符 的结构如下:
S,拍子数,分子,分母,所在轨道,堆叠数量,剔除数量,缩放大小,Y轴偏移量
用法和普通石墩子音符相同。
变化 BPM 音符
变化 BPM 音符必须严格按照顺序排列。一个变化 BPM 音符就相当于一个区域标志,它管辖以它开始直到下一个变化 BPM 音符之间的所有音符。
在区域内的其它音符可以任意交换行位置,只要保证拍子数正确。
单个 变化 BPM 音符 的结构如下:
B,拍子数,分子,分母,BPM
例如,如果你想在第 32 拍的 1 / 4 处,把 BPM 调整为 120,那么这个音符就该这样写:
B,32,1,4,120
这个用法将重置先前的拍子数,因此在 BPM 变化后的音符将重新从第 0 拍开始算起。
也可以使用这个特性,来重置固定 BPM 曲子的拍子数。如:
...
D,116,1,4,2,1,0,1,0
D,116,2,4,2,1,0,1,0
X,117,0,0,2,8,0,1,0
// 第二段
B,118,0,0,117.5
D,0,0,4,1,1,0,1,0
D,0,1,4,2,1,0,1,0
D,0,2,4,3,1,0,1,0
D,0,3,4,2,1,0,1,0
...
背景前显音符
背景的图片 / 视频可以通过这个音符覆盖在游戏画面上。
若要取消显示,则只需再放置此音符即可。
H,拍子数,分子,分母
测试谱面 / 打包
对于 Windows 用户,你的谱面文件会存储在 C:\Users\*你的用户名*\AppData\LocalLow\MixBadGun\石墩子快跑\music\
中。
对于 MacOS 用户,则是 /Users/*你的用户名*/Library/Caches/com.mixbadgun.shidunzi/music/
。
对于 Andriod 用户,则是 /Android/data/com.mixbadgun.shidunzi/files/music/
。
在编写谱面或进行测试时,可以直接在这个目录下建立文件夹。
在谱面编写完成后,请将最上面提到的四个文件打成压缩包。四个文件必须处于压缩包的根目录下。随后,请将后缀名修改为.sdx
。
这样你的谱面就制作完成了!可以发布给你的朋友进行游玩了!
编写谱面的一些小建议
谱面若包含视频文件,请尽可能压缩其文件体积,因为视频文件体积往往比音频、谱面本身大得多。
在编写谱面时,你可以使用一些其它工具来辅助进行制作。例如,可以使用 Excel 来进行表格上的对齐,在表格里编写完成后,再全部复制回文本编辑器,并将 Tab
分隔符全部替换成 ,
即可。
同时,你还可以使用类似 FL Studio、REAPER 等 DAW 来辅助找到对应音符的位置。
结束语
祝各位玩得愉快!
石墩子快跑 · 多人游戏说明
石墩子快跑的普通跑酷可开启多人模式,前提是需要有能通过 IP 地址访问的运行着本游戏服务端的主机。
服务端启动方法
游戏的客户端即为服务端,只需通过命令行添加 -S
参数启动即可。
石墩子快跑.exe -S -ip {服务器地址} -port {端口} -batchmode -nographics
其中,不填入 -ip
参数则默认为 localhost,不填入 -port
参数则默认为 7892。
石墩子快跑 · 皮肤说明
游戏自带预制皮肤「Black and White」与「Chess Board」,它储存在游戏持久化数据目录的 skin
文件夹里。
皮肤结构
对应皮肤名的文件夹里包含以下几个资源,以下内容均不是必须包含的,缺省则为游戏默认值。
obstacle.png
- 该项为普通石墩子的纹理,不支持透明度。
main_obstacle.png
- 该项为玩家石墩子的纹理,不支持透明度。
golden_obstacle.png
- 该项为绝赞石墩子的纹理,不支持透明度。
show_obstacle.png
- 该项为表演石墩子的纹理,不支持透明度。
side_building.png
/side_building_[0-8].png
- 该项为两侧板凳的纹理。如果需要多种纹理,请使用后者的命名方式,如
side_building_2.png
。最大支持 0-8,共 9 项。 - 该项支持透明度,但在完全透明的情况下仍会存在白色光泽。
- 该项为两侧板凳的纹理。如果需要多种纹理,请使用后者的命名方式,如
side_edge.png
- 该项为轨道两侧边缘台阶的纹理,支持透明度。
side_floor.png
- 该项为轨道两侧的地板的纹理,支持透明度。
track.png
- 该项为轨道的纹理,支持透明度。
crash.wav
- 该项为石墩子被撞击的声音。
golden.wav
- 该项为绝赞石墩子被撞击的声音。