7.1 KiB
音·创 Musicreater
演示程序使用教程
由于先前的 读我文件(README.md) 过于冗杂,现另辟蹊径来给大家全方位的教程。
这是演示程序的使用教程,将在这里提供演示程序的相应的使用教程
视窗(Windows)操作系统
运行环境安装
-
安装 Python3.6+
首先需要下载Python的安装包
在安装时,最好需要勾选
Add Python 3.X to PATH
,如下图所示,当然,如果您对自己非常自信,您也可以手动设置此项目:若您对Python一知半解或者不怎么了解、并对自己的系统盘(通常是C盘)有大约150兆字节(MB)的信心的话,您可以在安装时直接选择快速安装(Install Now)
若您选择了自定义安装(Customize Installation),请务必勾选
pip
和py launcher
便于后续安装依赖,如下图:安装结束之后可以在终端(命令行/PowerShell/Bash/etc)中输入:python 试试是否安装成功,成功安装之后,在终端中输入python会显示诸如如下图片的提示:
-
安装依赖
请以管理员模式打开您的终端(命令行/PowerShell/Bash/etc)
例如,命令行,可以如此打开:在视窗开始菜单(Windows开始)中搜索
cmd
, 并以管理员身份运行打开了终端之后,请在终端中输入以下指令
pip install mido -i https://mirrors.aliyun.com/pypi/simple/
pip install brotli -i https://mirrors.aliyun.com/pypi/simple/
安装成功后您可能会见到类似下图的提示:
-
下载本代码库以及演示程序
- 若您使用git,请直接克隆本仓库:
git clone -b pkgver https://gitee.com/EillesWan/Musicreater.git
- 若您不使用git,可以在码云(Gitee)或GitHub下载zip包,或者加入QQ群聊861684859,在群文件中获取。
-
开始使用
在目录下打开终端,例如,打开命令行,请进入到目录下,在地址框内输入
cmd
:执行以下命令:(选择你需要的)
python demo_convert.py
python demo_convert_bdx_byDelay.py
补充错误说明
-
Microsoft Visual C++ Redistributable 环境出错
如果你遇到了以下这种情况
请下载最新的VCREDIST安装包,可以参照这个网页的说明,也可以在这直接选择你需要的安装包下载:
感谢群友Mono帮我们发现这个问题
-
参数补充说明
-
midi路径:含有mid文件路径、文件名、后缀的完整文件路径,或者一个目录(demo可接受批量转换)。可以使用相对或绝对路径皆可
-
输出路径:输出文件夹的路径,不需要指示文件名
-
是否重置计分板:1或0(歌曲放完是否重置,推荐1)
-
*进度条:是否启用进度条,以及自定义进度条样式。输入0或False表示不启用进度条,输入1或True表示使用默认进度条,其余的输入均表示使用输入的格式作为自定义的进度条样式
-
计分板名称:游戏内的计分板名称
-
音量:0-1之间的小数(含0,1)正常来说推荐1
-
速度倍率:小数数据,不可为0,一般写1
-
玩家选择器:包括
@x
在内的全部选择器,即若要选择全部标签为Holo
的玩家,则需要如此输入:@a[tag=Holo]
-
没有报错且在输出路径下找到mcpack或bdx即为生成成功:
-
对于 进度条自定义 功能的说明
因为我们提供了可以自动转换进度条的功能,因此在这里给出进度条自定义参数的详细解释。
一个进度条,明显地,有固定部分和可变部分来构成。而可变部分又包括了文字和图形两种(当然,《我的世界》里头的进度条,可变的图形也就是那个“条”了)。这一点你需要了解,因为后文中包含了很多这方面的概念需要你了解。
进度条的自定义功能使用一个字符串来定义自己的样式,其中包含众多标识符来表示可变部分。
标识符如下(注意大小写):
标识符 | 指定的可变量 |
---|---|
%%N |
乐曲名(即传入的文件名) |
%%s |
当前计分板值 |
%^s |
计分板最大值 |
%%t |
当前播放时间 |
%^t |
曲目总时长 |
%%% |
当前进度比率 |
_ |
用以表示进度条占位 |
表示进度条占位的 _
是用来标识你的进度条的。也就是可变部分的唯一的图形部分。
样式定义字符串的样例如下,这也是默认的进度条的样式:
▶ %%N [ %%s/%^s %%% __________ %%t|%^t]
这是单独一行的进度条,当然你也可以制作多行的,如果是一行的,输出时所使用的指令便是 title
,而如果是多行的话,输出就会用 titleraw
作为进度条字幕。
哦对了,上面的只不过是样式定义,同时还需要定义的是可变图形的部分,也就是进度条上那个真正的“条”。
对于这个我们就采用了固定参数的方法,对于一个进度条,无非就是“已经播放过的”和“没播放过的”两种形态,所以,使用一个元组来传入这两个参数就是最简单的了。元组的格式也很简单:(str: 播放过的部分长啥样, str: 没播放过的部分长啥样)
。例如,我们默认的进度“条”的定义是这样的:
('§e=§r', '§7=§r')
综合起来,把这些参数传给函数需要一个参数整合,你猜用的啥?啊对对对,我用的还是元组!
我们的默认定义参数如下:
(r'▶ %%N [ %%s/%^s %%% __________ %%t|%^t]',('§e=§r', '§7=§r'))
对了!为了避免生成错误,请尽量避免使用标识符作为定义样式字符串的其他部分