解析和转换 Maimai 图表格式
项目描述
麦转换器
一个用于解析和转换 Maimai 图表的 Python 程序。由两部分组成:
- 用于解析、创建、导出和转换 SDT、Ma2 和 3Simai 图表的可导入包。和
- 用于解析和转换 3 种格式的命令行脚本。
如果您不熟悉这些文件格式,那么您可以在这里阅读 sdt 文件和simai文件。你可以在这里阅读我的博客文章
如果您对任何与 MaiMai 改装相关的内容感兴趣,请加入Discord 中的MaiMai TEA。
依赖项
命令行
作为软件包的一部分安装的命令行脚本可以解析、转换、加密或解密 MaiMai 图表格式。一般形式为:
maiconverter COMMAND /path/to/file/or/directory
COMMAND可以是以下,后面有描述:
- 加密
- 解密
- ma2tosdt
- ma2tosimai
- sdttoma2
- sdttosimai
- simaifiletoma2
- simaifiletosdt
- 司迈托马2
- 西梅托斯
第二个位置参数是图表文件或目录的路径。如果给定一个目录,它将转换目录中找到的所有相关文件。
程序会将所有转换后的文件保存在输入文件的父目录或输入目录的“输出”文件夹中。如果没有现有文件夹,它将创建一个“输出”文件夹。
加密,解密
这些命令要么将 S*T 图表文件加密为其等效的 S*B 文件,反之亦然。 要求:-k 或 --key 参数后跟十六进制 AES 密钥。该程序可以通过添加 -db 或 --database 切换参数来加密或解密表。
例子
将 SDT 转换为 SDB:
maiconverter encrypt --key 0xFEDCBA9876543210 100_songname_02.sdt
将 SCB 转换为 SCT:
maiconverter decrypt --key 0xFEDCBA9876543210 252_donmaime_05.scb
解密一个加密表:
maiconverter decrypt --key 0xFEDCBA9876543210 mmtablename.bin
sdttoma2, sdttosimai
这些命令将分别将 S*T 文件转换为 ma2 或 Simai。需要-b 或 --bpm 参数,后跟歌曲的 BPM 作为 int 或 float。 注意:对于 sdttosimai,它不会生成完整的 Simai 文件。sdttosimai 只生成一个 Simai 图表。
例子
将 200 bpm SRT 文件转换为 Simai:
maiconverter sdttosimai --bpm 200 300_segapls.srt
将 130 bpm SDT 文件转换为 Ma2:
maiconverter sdttoma2 --bpm 130 301_dontsue.sdt
ma2tosdt, ma2tosimai
这些命令将分别将 Ma2 文件转换为 SDT 或 Simai。 注意:对于 ma2tosimai,它不会生成完整的 Simai 文件。ma2tosimai 只生成一个 Simai 图表。
例子
将 Ma2 文件转换为 SDT:
maiconverter ma2tosdt 000404_02.ma2
将 Ma2 文件转换为 Simai:
maiconverter ma2tosimai 001401_04.ma2
simaitoma2, simaitosdt
这些命令将仅包含 Simai 图表文件的文本文件分别转换为 Ma2 或 SDT。
simaifiletoma2, simaifiletosdt
这些命令与之前的不同之处在于解析整个 madata.txt。所有图表都分别单独转换为 Ma2 或 SDT。
其他命令行参数
-o,--输出
指定输出目录,或者默认为输入目录。
-d,--延迟
如果您想对每个转换后的图表注释应用偏移量,您可以使用此参数来实现。它在措施方面接受负抵消和正抵消。
-ct, --convert_touch
如果从 Ma2 或 Simai 转换为 SDT,您可以添加此切换以(天真地)将触摸笔记转换为常规点击并按住笔记。当您想要手动将触摸笔记转换为点击并按住笔记时很有用。你只需要修改note的按钮,不需要搞清楚时间。
-md,--最大除数
设置导出 Simai 图表时允许的最大 Simai 除数 ("{}")。如果您想要更易读的输出,请将其设置为 128 等较低的数字。默认为 1000。
Python 包
如果你安装了 wheel 文件,你可以像标准 Python 包一样导入程序。如果您想为此转换器制作图表制作器或 GUI 前端,请使用它。有关how_to_make_charts.md使用 MaiConverter 制作图表的介绍性指南,请参阅。包中还有(不完整的)类和函数的文档。请参阅下面的许可。
待办事项
- 文档
TODO做散落在包里的所有s- 减少卡顿
接触
如果您有问题或错误报告,并且由于某种原因不想在 GitHub 上提出问题,请给我发送 DM 或在 MaiTea Discord 服务器上联系我。
- 不和谐:donmai#1493
- 推特:@donmai_me
- GitHub: donmai-我
- Listed.to:@donmai
执照
这是一个在 MIT 许可下许可的开源应用程序
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
内置分布
MaiConverter -0.14.5-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 6b568ec69ab7b81af694e9d78f64fb1cd4473c14a20350d4787add34f0a971dc |
|
| MD5 | 152216b9415612392ff2269142048bba |
|
| 布莱克2-256 | 523654fc5037be4907cd539d11e59f69b0019f1b72aa3d9348ab011d7cc4d434 |