原文档仅列出 create/release 两个命令且标注 WIP, 现覆盖 create/init/debug/release/components 五个子命令, 补充参数表、用法示例、项目结构和开发指南。
115 lines
2.7 KiB
Markdown
115 lines
2.7 KiB
Markdown
# emod-cli
|
||
|
||
网易我的世界 Bedrock 组件开发 CLI 工具,用于项目创建、初始化、调试与打包发布。
|
||
|
||
## 安装
|
||
|
||
```bash
|
||
cargo build --release
|
||
# 产物位于 target/release/emod-cli
|
||
```
|
||
|
||
## 命令
|
||
|
||
### create
|
||
|
||
从内置模板创建新的 Addon 项目。
|
||
|
||
```bash
|
||
emod-cli create --name <项目名>
|
||
emod-cli create --name <项目名> --target <模板名>
|
||
```
|
||
|
||
| 参数 | 说明 |
|
||
|------|------|
|
||
| `-n, --name` | 项目名(必填) |
|
||
| `-t, --target` | 模板名,默认 `default` |
|
||
|
||
### init
|
||
|
||
为已有项目补齐模板中的空目录(基于 `.empty-dirs` 清单)。
|
||
|
||
```bash
|
||
emod-cli init
|
||
emod-cli init --path <项目路径> --target <模板名>
|
||
```
|
||
|
||
### debug
|
||
|
||
启动网易 MC 并加载调试 MOD,支持 IPC 日志和热重载。
|
||
|
||
```bash
|
||
emod-cli debug
|
||
emod-cli debug --path <项目路径>
|
||
emod-cli debug --new # 创建全新调试存档
|
||
```
|
||
|
||
| 参数 | 说明 |
|
||
|------|------|
|
||
| `-p, --path` | 项目路径,默认当前目录 |
|
||
| `-n, --new` | 创建带时间戳的新存档并持久化到 `.mcdev.json` |
|
||
|
||
调试流程:
|
||
1. 读取/生成 `.mcdev.json` 配置
|
||
2. 清理运行时旧包链接
|
||
3. 注册调试 MOD 并链接用户 MOD 目录
|
||
4. 准备开发世界(含自动加入游戏配置)
|
||
5. 启动游戏进程,挂载 IPC 日志与热重载
|
||
|
||
### release
|
||
|
||
打包 Addon 为可发布的 ZIP 产物。
|
||
|
||
```bash
|
||
emod-cli release
|
||
emod-cli release --path <项目路径>
|
||
emod-cli release --ver 1.2.0
|
||
emod-cli release --pin
|
||
```
|
||
|
||
| 参数 | 说明 |
|
||
|------|------|
|
||
| `-p, --path` | 项目路径,默认当前目录 |
|
||
| `-v, --ver` | 指定发布版本(与 `--pin` 互斥) |
|
||
| `-P, --pin` | 锁定当前版本不变,适用于重试失败打包 |
|
||
|
||
支持通过环境变量 `EMOD_ARTIFACTS_DIR` 指定产物输出目录。
|
||
支持 `.emod-ignore` 和 `.emod-package` 自定义打包规则。
|
||
|
||
### components
|
||
|
||
创建组件资源(如 3D 物品模型)。
|
||
|
||
```bash
|
||
emod-cli components --component 3ditem
|
||
emod-cli components --component 3ditem --geo ./model.geo.json --texture ./texture.png
|
||
```
|
||
|
||
| 参数 | 说明 |
|
||
|------|------|
|
||
| `-p, --path` | 项目路径 |
|
||
| `-c, --component` | 组件类型,当前支持 `3ditem` |
|
||
| `-g, --geo` | geo 文件路径 |
|
||
| `-t, --texture` | 贴图文件路径 |
|
||
| `-i, --identifier` | 组件标识符 |
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
<项目根目录>/
|
||
├── behavior_pack/ # 行为包
|
||
├── resource_pack/ # 资源包
|
||
├── template.toml # 项目模板配置
|
||
├── .mcdev.json # 调试配置(debug 自动生成)
|
||
├── .emod-ignore # 打包排除规则(可选)
|
||
└── .emod-package # 打包包含规则(可选)
|
||
```
|
||
|
||
## 开发
|
||
|
||
```bash
|
||
cargo build
|
||
cargo test
|
||
cargo fmt --check
|
||
```
|