动态NBT编辑器

动态NBT编辑器

动态编辑NBT并支持多屏显示。

管理

动态游戏内 NBT 编辑器(DINE)允许你动态修改实体和方块实体的 NBT。

此模组仅客户端可用。将其安装到专用服务器可能会导致问题。

此模组通过向服务器发送 data 命令来修改 NBT。请确保你拥有足够的权限。

Dynamic In-Game NBT Editor

功能

动态:编辑器会每刻获取并更新 NBT。你可以观察实体的动态变化。

多屏幕:你可以打开 1 个或多个屏幕(标签页)。

简单且用户友好:在保持完整功能的同时,尽可能减少屏幕上任意时刻显示的图标数量。

操作指南

多屏幕标签栏

所有已打开的屏幕都会列在顶部的标签栏中。

标签栏可以水平滚动。

按键 功能
鼠标左键单击 切换到选中的标签页
鼠标中键单击 关闭悬停的标签页屏幕
鼠标右键单击 调出上下文菜单

NBT 树

NBT 以树状结构显示。你可以展开/折叠部分节点,以获得更好的可视化效果。

NBT 树可以垂直滚动。

按键 功能
鼠标单击 切换到选中的标签页
鼠标双击 关闭悬停的标签页屏幕
鼠标右键单击 调出上下文菜单
Enter 编辑选中的节点
Delete 删除选中的节点
Ctrl + C 将节点复制到剪贴板(不是系统剪贴板,下同)
Ctrl + X 将节点剪切到剪贴板
Ctrl + V 从剪贴板粘贴节点

查询服务器

你可以在右键上下文菜单中开启查询服务器。

开启后,此屏幕将不会使用客户端本地存储的 NBT 数据,而是尝试查询服务器以获取 NBT。此行为的功能与 F3+I 相同。

在此状态下,显示的 NBT 数据保证始终与服务器保持同步,但会有 1 刻的延迟。

默认情况下,服务器端会检查你的权限。如果你没有足够的权限等级,查询将会失败。

按键绑定

名称 默认值 功能
打开 DINE 编辑器 未绑定 打开编辑器
编辑目标 未绑定 为目标实体或方块实体打开一个新屏幕

命令

所有这些命令都是客户端命令,不会由服务器处理。

  • dine 打开编辑器
    • target 为目标实体或方块实体打开一个新屏幕
    • entity [uuid] 查找具有指定 UUID 的实体,并为其打开一个新屏幕
    • block [pos] 查找指定位置的方块实体,并为其打开一个新屏幕

配置

配置文件位于 [gameroot]/config/dine.prop。

配置文件使用 Java Properties 语言。

所有配置都会在客户端重新加载资源时加载/重新加载(你可以通过 F3+T 触发)。

配置项 类型 默认值 功能
defaultTryPauseGame boolean false 新屏幕是否尝试暂停游戏
entityDefaultFromServer boolean false 新的实体屏幕是否查询服务器
blockEntityDefaultFromServer boolean false 新的方块实体屏幕是否查询服务器
checkPermissionWhenFromServer boolean true 查询服务器前是否应检查权限
logSentCommand boolean false 是否将已发送命令的内容放入客户端日志
dataCommand string data 具有原版命令 data 功能的命令名称

常见问题

  • 为什么没有物品的 nbt/数据组件?

物品的 nbt/数据组件在代码中具有不同的处理逻辑。而在原版中,也没有可以轻松修改它们的命令。

如果你确实需要,可以尝试使用一些实体/方块实体,例如物品展示框。

  • NBT 树没有更新/与实际效果不匹配。

这经常出现在某些方块实体上。原因是服务器尚未同步它们的 NBT。

你可以在右键上下文菜单中开启查询服务器来解决此问题。

  • 我可以在别人的服务器上使用此模组吗?

由于这是一个仅客户端模组,安装了此模组后,通常你可以加入任何服务器而不会遇到问题。

然而,这并不意味着这样做是正确的。我不会对此作出任何保证。