#mpq #warcraft #blizzard #命令行工具 #mopaq

app mpqtool

一个用于读取和创建暴雪 MPQ 归档的工具

5 个版本

0.1.4 2020年2月20日
0.1.3 2020年2月1日
0.1.2 2020年1月31日
0.1.1 2019年12月27日
0.1.0 2019年8月21日

#1883解析实现

MIT 许可证

19KB
371

关于

mpqtool 是一个用于读取和写入暴雪 MPQ 归档文件的命令行实用程序。

它基于 ceres-mpq 构建。请参阅它以获取支持和不支持的 MPQ 功能的详细列表。

路线图

  • 将存档提取到磁盘上的目录,可选地通过 glob 表达式过滤
  • 列出存档中包含的文件,可选地通过 glob 表达式过滤
  • 查看存档中的单个文件,将其内容输出到 stdout(可能对与其他命令行工具链式使用很有用)
  • 从目录内容创建新的存档
  • 在提取和创建应具有文件头部的存档时保留文件头部,例如 WC3 地图
  • 从现有存档中删除和添加文件

安装

注意:此工具没有 GUI 界面。如果您需要可视 MPQ 编辑器,请参阅 MPQ 编辑器

Cargo

如果您已安装 rustupcargo,只需运行

cargo install mpqtool

这是在 Linux 和 Mac 系统上安装工具的推荐方法,因为它会在您通过包管理器安装 Cargo 时自动将工具添加到您的 PATH

独立版

发布部分 下载最新版本。可选地将工具添加到您的 PATH,这样您就可以在任何命令行上调用它。

用法

mpqtool 目前有 4 个命令

  • new - 创建新存档
  • extract - 将现有存档的内容提取到目录
  • view - 查看(打印到 stdout)存档中的单个文件内容
  • list - 列出存档中包含的文件

一些命令还支持指定 --filter/-f 参数,使用 glob 模式 过滤输出。

要获取特定命令的用法帮助,请使用 mpqtool <command> -h。例如

$ mpqtool extract --help
mpqtool-extract 0.1.0
extracts files from an archive

USAGE:
    mpqtool extract [OPTIONS] <archive>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -f, --filter <pattern>    if specified, will only extract files which match the specified glob-pattern
    -o, --output <dir>        directory where to output extracted files [default: ./]

ARGS:
    <archive>    archive file to extract from

示例

将名为 myarchive.mpq 的存档提取到目录 ./out

$ mpqtool extract myarchive.mpq -o ./out

查看名为 war3map.j 的文件,位于名为 myarchive.mpq 的存档中

$ mpqtool view myarchive.mpq war3map.j

从目录 mydir 创建一个名为 myarchive.mpq 的新存档

$ mpqtool new ./mydir myarhive.mpq 

列出存档中所有 .mdx 文件

$ mpqtool list myarchive.mpq -f "*.mdx"

依赖项

~4–12MB
~126K SLoC