命令助手作者 ProjectXero 使用此工具生成ID表。
MCBEID表(仓库)是基于此工具的数据制作的可离线使用的ID表查询网站。
MCBEID表 在线搜索API 是基于此工具的数据制作的在线ID表搜索接口。
本仓库中包含了用于生成ID表的原始数据与部分导出数据,请参见目录结构。
如果您希望使用此工具生成特定版本的数据,请参见 工作流。
如果您希望改善此工具的数据中的翻译部分,请参见 翻译指南。
如果您希望数据中包含更多的内容或版本,欢迎提出 Issue。
原始数据均存储在 version
目录中。
version/common
目录下存储了与工作流无关的数据。
路径 | 内容 |
---|---|
version/common/wiki/standardized_translation.json |
Minecraft Wiki 与 基岩版开发Wiki 中的标准译名表。 |
version/java/lang.json |
最新Java版(含快照)的简体中文与英文语言文件。 |
version/documentation/ |
基岩版官方内容包文档,提取自官方示例内容包仓库。 |
version/documentation/<edition>.json |
从对应版本的文档中提取的数据。 |
version/documentation/<edition>/<name>.json |
文档解析成的 JSON。 |
version/<edition>
目录下存储了可通过 data/config.js
配置版本的相关数据。
路径 | 内容 |
---|---|
version/<edition>/autocompletion/ |
通过扫描自动补全列表获取的数据。 |
version/<edition>/autocompletion/<branch>.json |
在对应分支下扫描自动补全列表的结果。 |
version/<edition>/autocompletion/<branch>/<id>.json |
对上一条的细分。 |
version/<edition>/autocompletion/<branch>/mcpews.json |
通过 mcpews 获取的数据。 |
version/<edition>/gametest/ |
通过 quickjs-debugger 从 Script API 获取的数据。 |
version/<edition>/package/ |
对安装包进行静态分析所获得的数据。 |
version/<edition>/package/info.json |
安装包的基础信息。 |
version/<edition>/package/lang.json |
安装包的简体中文与英文语言文件。 |
version/<edition>/package/data.json |
对安装包的内置内容包进行分析所获得的数据。 |
导出数据均存储在 output
目录中。
路径 | 内容 |
---|---|
output/clib/<edition>/<branch>.json |
对应分支的命令库。 |
output/clib/<edition>/patch/<branch>.json |
对应分支在原版分支基础上的增量命令库。 |
output/langParity/<edition>/difference.json |
列出同一个英文在Java版与基岩版对应的不同英文。 |
output/langParity/<edition>/output.lang |
基于上述分析制作的译名修正语言文件。 |
output/langParity/<edition>/output.mcpack |
基于上述分析制作的译名修正语言包。 |
output/translation/<edition>/<branch>.json |
列出对应分支下的翻译状态。 |
output/translation/<edition>/<branch>.xlsx |
列出对应分支下的翻译状态。 |
output/web/ |
由MCBEID表与在线搜索API使用的数据。 |
请参见 翻译指南。
<edition> |
名称 | 备注 |
---|---|---|
beta | 测试版/预览版 | 更新速度快,包含较多不稳定的新特性的版本。 |
release | 正式版 | 更新速度慢,向所有人开放的稳定版本。 |
netease | **版 | 由网易推出的**本地化版本,通常落后于正式版。 |
netease_dev | **版测试版 | 面向**版开发者开放的测试版本。 |
education | 教育版 | 为教室使用而设计的教学版本。 |
preview_win | 预览版(Windows) | Windows 10/11 上的预览版。 |
bds_preview | 专用服务器预览版 | 预览版的专用服务器版本。 |
bds | 专用服务器正式版 | 正式版的专用服务器版本。 |
dev | 预览版开发版 | 同预览版,但包含部分开发者独有功能与开发中的新功能。 |
release_dev | 正式版开发版 | 同正式版,但包含部分开发者独有功能与开发中的新功能。 |
education_dev | 教育版开发版 | 同教育版,但包含部分开发者独有功能与开发中的新功能。 |
bds_dev | 专用服务器预览版开发版 | 同专用服务器预览版,但包含部分开发者独有功能与开发中的新功能。 |
bds_release_dev | 专用服务器正式版开发版 | 同专用服务器预览版,但包含部分开发者独有功能与开发中的新功能。 |
<branch> |
名称 | 类型 | 备注 |
---|---|---|---|
vanilla | 原版 | 自动补全 | 使用默认设置创建的世界 |
education | 教育版 | 自动补全 | 启用了教育版选项后创建的世界 |
experiment | 实验性玩法 | 自动补全 | 启用了所有实验性玩法选项后创建的世界 |
gametest | Script API | Script API | 启用了教育版选项与所有实验性玩法选项后创建的世界 (开发版中需要打开“显示所有命令”,Windows 10 版上仅开启“测试版 API”实验性玩法) |
translator | 翻译专用 | 翻译专用 | 标准译名表与两个版本的双语语言文件 |
documentation | 文档 | 文档 | 开发者文档中出现的ID及其描述 |
langParity | 译名比较 | 语言包修正 | 比较基岩版翻译与标准化译名,生成语言修正包 |
<id> |
名称 | 备注 |
---|---|---|
blocks | 方块 | 用于 setblock、fill 等命令的方块 ID。 |
items | 物品 | 用于 give、clear 等命令的物品 ID。 |
entities | 实体 | 用于 type 选择器的实体 ID。 |
summonable_entities | 可召唤实体 | 用于 summon 命令的实体 ID。 |
effects | 状态效果 | 用于 effect 命令的状态效果 ID。 |
enchantments | 魔咒 | 用于 enchant 命令的魔咒 ID。 |
gamerules | 游戏规则 | 用于 gamerule 命令的游戏规则 ID。 |
locations | 结构 | 用于 locate 命令的结构 ID。 |
biomes | 生物群系 | 用于 locate 命令的生物群系 ID。 |
mobevents | 生物事件 | 用于 mobevent 命令的生物事件 ID。 |
entity_slots | 槽位 | 用于 replaceitem 命令等的槽位 ID。 |
selectors | 目标选择器参数 | 用于选择实体时指定条件。 |
loot_tools | 战利品工具表 | 用于 loot 命令的工具选项。 |
damage_causes | 伤害类型 | 用于 damage 命令的伤害类型 ID。 |
item_with_aliases | 物品 | 包含别名,可用于 give、clear 等命令。 |
features_and_rules | 地物与地物规则 | 用于 placefeature 命令的地物 ID 和地物规则 ID。 |
input_permissions | 操作输入权限 | 用于 inputpermission 命令的输入权限 ID。 |
camera_presets | 摄像机预设 | 用于 camera 命令的摄像机预设 ID。 |
recipes | 配方 | 用于 recipe 命令的配方 ID。 |
hud_elements | HUD界面元素 | 用于 hud 命令的界面元素 ID。 |
entity_properties | 实体属性 | 用于 has_property 选择器的实体属性 ID。 |
abilities | 能力 | 用于教育版 ability 命令的能力 ID。 |
options | 选项 | 仅开发版 |
particle_types | 粒子类型 | 仅开发版 |
features | 地物 | 仅开发版 |
feature_rules | 地物规则 | 仅开发版 |
server_tests | 服务器测试 | 仅开发版 |
unit_tests | 单元测试 | 仅开发版 |
functional_tests | 功能测试 | 仅开发版 |
请视情况选择工作流。
- 仅导出自带版本:准备、运行、校对
- 导出任意版本:准备、准备 OCR、运行(仅OCR)、运行、校对
- 确认已安装 Node.js 最新版。
- 运行命令
npm install
开始安装。
- 确认已安装 ffmpeg、Tesseract 与 adb,并已将 ffmpeg 可执行文件所在目录设为路径环境变量。
- 将支持 USB 调试的手机连接至电脑。
- 从 Genymobile/scrcpy Release 页面下载对应的 server,放入
data/scrcpy-server
文件夹,并修改data/scrcpy-server/index.js
。 - 准备一个 Minecraft 安装包(支持 apks 格式和 apk 格式)。
- 将上述 Minecraft 安装包安装到手机上。
- 从安装包中找到 Mojangles 字体,使用 Tesseract 训练出模型(如已训练过可直接使用训练过的模型)。
- 如果您的 Minecraft 使用的字体不是默认的像素字体(即 Mojangles / Minecraft Seven),请使用 Minecraft 正在使用的字体进行训练。
- 按文件中的注释修改
data/config.js
。
- 运行
npm run generate-release
或npm run generate-beta
,取决于你要生成哪种版本的数据。
- 运行
npm run generate-release
或npm run generate-beta
。 - 打开 Minecraft,进入一个已开启作弊的单人世界,等待游戏进入HUD界面。在终端出现
Press <Enter> if the device is ready
提示且游戏已进入HUD界面时,按下回车。出现Please switch to branch: education
提示时,进入一个已开启作弊的教育版世界。出现Please switch to branch: experiment
提示时,进入一个已开启作弊与所有实验性功能的单人世界。 - 此过程中如果终端没有提示要求操作,请不要控制手机,也不要让 Minecraft 切至后台,否则可能导致流程失败。如果遵守上述要求后仍然出现提示
Auto-completed command test failed
,可能为 Tesseract 识别出错,您需要将错误的条目和对应正确的条目手动保存到data/config.js
以便让本工具手动纠正。
- 检查输出的
output/xxx/clib/xxx.json
(拓展包)与output/xxx/translation/xxx.xlsx
(ID-翻译对照表)。发现错译、漏译时请修改对应的translation/xxx.json
,随后从“运行”工作流继续。 translation/xxx.json
支持引用标准化译名表数据与Java版语言数据,并且支持从其他译名拼接出新的译名。请尽量使用标准化译名或者由标准化译名拼接而来的翻译。具体格式请参见 翻译流程。