MessMod

MessMod

一个包含世界操作、信息提供、漏洞修复等多种功能的我的世界模组,让你能更好地掌控游戏、查看更多信息,并更轻松地完成一些工作。

游戏机制

MessMod

一个包含多种功能的 Minecraft 模组,涵盖世界操作、信息提供、漏洞修复等方面,让你能更好地控制游戏、查看更多信息,并更轻松地完成一些工作。

  • 不想用“/data”获取实体速度?有了这个模组,按下 F3 + E 并瞄准实体,你就能在屏幕角落找到想要的东西。(或者试试侧边栏)

  • 厌烦了飞行中的 TNT 被渲染在错误位置?有了这个模组,你就能看到这些实体的正确边界框。

  • 厌倦了一遍又一遍地输入“/tick freeze”和“/tick step 1”?有了这个模组,如果你手持砖块或骨头,只需右键点击就能完成这些操作。

  • 不小心破坏了一些方块?有了这个模组,可以用快捷键 Ctrl + Z 轻松撤销。

不过,这还不是全部,详细文档在 Github 上。

这里是完整文档的一个相当简化的版本(可能语法也更规范一些)。

亮点

  • 比原版客户端更精确的碰撞箱。
  • 让使用 /tick 更方便的工具物品。
  • 实时显示实体信息。
  • 在源代码层面控制游戏。
  • 多功能访问路径。
  • 8 个易于使用的渲染器(见下文)。
  • 将指定区域导出为新的存档。
  • 用 Ctrl + Z 和 Ctrl + Y 撤销/重做对 blocks 的更改。
  • 区块网格。
  • 延迟加载的区块模拟。
  • 以及更多……

需求

  • Fabric Loader 0.8.0+。
  • gnembon 的 fabric-carpet。(强烈推荐,但非必需)
  • Minecraft 1.16.4/1.16.5/1.17.1/1.18.2
  • Minecraft 所需的一切。

命令列表

/accessingpath

管理访问路径中的自定义节点。(未来可能引入其他功能。)

/countentity

以更简便的方式统计实体,尤其是堆叠的实体。

/ensure

一个方块状态检查器,用于检查方块是否渲染错误。如果你被“幽灵方块”困扰,它可能会有所帮助。

/entityconfig

目前,该命令只能让某些实体可以/不可以直接踩在方块上,后续版本可能会引入更多功能。

/entityfield

使用反射访问实体的一些 Java 字段。如果加载了映射,则支持反混淆。

/entitylog

实体记录器,换句话说,是一个简单的工具,用于从一些指定实体获取一些数据并将其写入文件。

/entitysidebar

管理实体侧边栏中的信息行,你可以在那里看到所订阅的内容如何变化。

/explode

一些更有趣但没什么用的东西,它除了制造一些爆炸什么也做不了。

/exportsave

将一些给定区域导出为新的存档。

/freezentity

暂停|继续处理选定的实体。可用于模拟延迟加载的区块。

/hud

管理 HUD 中的自定义行。

/lag

冻结游戏。

/lazyload

模拟延迟加载的区块。

/logmovement

订阅一些实体,以查看它们如何被活塞、潜影盒和潜影贝推动。

/logchunkbehavior

记录与区块相关的一些事件(例如加载、卸载和生成),这在某些特殊研究中可能有用。

/logpacket

监听服务器与客户端之间的数据包。

/messcfg

配置模组的一些功能(支持的选项详细列表可在下一节找到)。

/modify

修改实体的一些属性。这与 /data 和 /entityfield 类似,但更易于使用。

/moventity

以任何你想要的方式移动实体。

/namentity

无需铁砧和命名牌即可命名或重命名一些实体。

/partlykill

杀死选定实体的一部分,而不是全部。

/poi

一个 POI(即兴趣点)扫描器和编辑器。

/raycast

显示射线检测的详细信息,如果你愿意,可以可视化。如果你想知道末影珍珠掠过方块表面时会发生什么,它可能会很有用。

/repeat

将一条命令重复执行若干次。

/ride

让一些实体骑乘一个载具。

/rng

进行一些随机数生成操控。

/setexplosionblock

如果爆炸将破坏的方块替换为钻石块而不是空气,会是什么样子?它会给你答案。

/tileentity

访问方块实体的数据,包括添加、移除、读取和编辑(在这种情况下 /data 更合适)。如果一个投掷器拥有营火的方块实体会怎样?

选项(或规则)

以下选项可以使用命令 /messcfg <option> <value> 设置。希望它们的名称足够易懂。

  • accessingPathInitStrategy
  • allowSelectingDeadEntities
  • allowTargetingSpecialEntities
  • antiHostCheating
  • attackableTnt
  • blameThreshold
  • blamingMode
  • blockPlacementHistory
  • blockShapeToBeRendered
  • commandExecutionRequirment
  • chunkLoadingInfoRenderer
  • chunkLoadingInfoRenderRadius
  • craftingTableBUD
  • creativeUpwardsSpeed
  • debugStickSkipsInvaildState
  • dedicatedServerCommands
  • disableChunkLoadingCheckInCommands
  • disableEnchantCommandRestriction
  • disableExplosionExposureCalculation
  • disableProjectileRandomness
  • enabledTools
  • endEyeTeleport
  • entityExplosionInfluence
  • entityExplosionRaysLifetime
  • entityExplosionRaysVisiblity
  • entityLogAutoArchiving
  • fillHistory
  • fletchingTablePulseDetectingMode
  • fletchingTablePulseDetector
  • generateChunkGrid
  • hideSurvivalSave
  • hotbarLength
  • hudAlignMode
  • hudStyles
  • hudTextSize
  • interactableB36
  • language
  • maxClientTicksPerFrame
  • maxEndEyeTpRadius
  • minecartPlacementOnNonRailBlocks
  • mobFastKill
  • optimizedEntityPushing
  • projectileChunkLoading
  • projectileChunkLoadingPermanentence
  • projectileChunkLoadingRange
  • projectileRandomnessScale
  • quickMobMounting
  • railNoAutoConnection
  • rejectChunkTicket
  • renderBlockShape
  • renderFluidShape
  • renderRedstoneGateInfo
  • serverSyncedBox
  • serverSyncedBoxRenderRange
  • skippedGenerationStages
  • skipUnloadedChunkInRaycasting
  • stableHudLocation
  • strictAccessingPathParsing
  • superSuperSecretSetting
  • tntChunkLoading
  • tntChunkLoadingPermanence
  • tntChunkLoadingRange
  • vanillaDebugRenderers

按键绑定

F3 + E:切换 HUD,显示玩家正在注视的实体的信息。

F3 + M:切换 HUD,显示本地玩家的信息。

F3 + S:切换 HUD,显示服务端玩家的信息。

Ctrl + Z:撤销放置或破坏方块。(需要 blockPlacementHistory)

Ctrl + Y:重做放置或破坏方块。(需要 blockPlacementHistory)

渲染器

实体信息 HUD:玩家正在注视的实体的信息在服务端 tick 结束时获取,本地玩家的信息在客户端 tick 结束时获取。更多相关信息见下文。

爆炸射线:渲染爆炸中心与受爆炸影响的实体碰撞箱中一些选定点之间的连线,这些线决定了实体将受到多少伤害,以及实体速度将如何变化等。

服务端碰撞箱:不要总是相信 F3 + B 提供的碰撞箱,因为它们被客户端调整过,以使移动更平滑,并且当实体移动时,比服务端的碰撞箱移动得“更慢”。有时如果服务端经历了一个非常长的 tick 而客户端没有,原版碰撞箱甚至可能会缺失。

流体方块数据:显示所瞄准的流体方块的边界框、高度、液位,以及一个描述流动方向的向量。

方块的边界箱:显示所瞄准方块的边界框。

红石门的输出等级:显示所瞄准的红石门(即中继器和比较器)的红石信号等级。

工具物品(需要 fabric-carpet 并启用选项 enabledTools)

砖块:使用 Carpet 提供的 /tick freeze 暂停或继续 tick。

骨头:当 tick 被 /tick freeze 暂停时,继续 tick 若干刻。刻数等于骨头堆叠的数量。

下界合金锭:移除所有非玩家实体。

访问路径

参见 wiki。

实体选择器中的选项

id

选择具有给定数字 ID 的实体(字段 entityId、networkId)。

side

从客户端还是服务端选择实体。

typeRegex

可能的值:一个带引号的正则表达式。

指定一个正则表达式,匹配所选实体的 ID(包括命名空间)。

nameRegex

可能的值:一个带引号的正则表达式。

指定一个正则表达式,匹配所选实体的名称。

class

可能的值:一个带引号的正则表达式。

指定一个正则表达式,匹配所选实体的类(包名可选)。

其他功能

  • 当玩家距离结构方块很远时,也能看到结构方块。
  • 当未加载 Carpet 模组时,将打印堆栈跟踪。如果加载了 Carpet 模组,启用 superSecretSetting 具有相同的效果。
  • 首次尝试打开安装了 MessMod 的生存存档时,会弹出一个警告屏幕。

注意

  • 该模组仍在开发中,一些功能不可用或有缺陷,如果你发现问题请告诉我。
  • 目前对专用服务器的支持不佳,并且存在许多与服务器和客户端之间连接相关的未解决缺陷,因此请仅在单人模式或局域网服务器的主机客户端中使用该模组。
  • 一些命令如 /explode ~ ~ ~ 2147483647 true 可能会冻结服务器,请小心。
  • 该模组不打算用于生存存档,因为它可能会意外地让玩家作弊。为确保这一点,可以启用选项 hideSurvivalSaves。

关于

最初,我在 2021 年 2 月开始制作这个模组,是为了对实体的运动进行一些研究,因此 HUD、边界框渲染器、工具物品和命令 /entityfield 是这个模组最早的功能。后来,如果需要,会逐渐引入更多功能。

2022 年 4 月之后,我加快了模组的开发速度,增加了更多功能,同时许多之前添加的功能被完全重构。到 2023/08/23,已有 28 个命令、70 个选项(或规则)和 9 个渲染器可用。

Page Views Count