新增规则
方块硬度同步协议(blockHardnessSyncProtocol)
将服务端的方块硬度同步给客户端,让客户端的挖掘进度能够跟随服务端修改后的硬度。
需要开启 AMS网络协议(amsNetworkProtocol),且客户端安装支持当前协议的 Carpet AMS Addition。位置标记指令(commandLocationTag)
启用
/amsloc,用告示牌记录并查询跨维度位置,不需要客户端安装模组。
默认识别普通橡木告示牌正面第一行为amsloc的标记,第二至第四行分别去掉首尾空白后,按顺序直接拼接为名称,不添加分隔符。
支持分页查看、按维度筛选、查询标记详情,以及自定义识别文本和告示牌类型。编辑或拆除告示牌后会自动更新记录,已有告示牌会随区块加载被发现,也可以使用/amsloc rescan分批检查已加载区块。真玩家控制保护(realPlayerControlDisabled)
禁止通过 Carpet 的
/player指令操作任何真玩家。禁用网络协议不兼容警告(incompatibleNetworkProtocolWarningDisabled)
禁用发送给使用不兼容 AMS 网络协议的客户端的警告,仅在
amsNetworkProtocol开启时生效。
该规则只控制警告消息,不会使不兼容的客户端获得协议支持。禁用方块破坏位置警告(destroyBlockPosWarningDisabled)
默认关闭。开启后抑制服务端发出的
Mismatch in destroy block pos警告。
仅控制这条警告的日志输出,不改变原版挖掘处理逻辑,其他警告仍正常输出。
变化
音符盒、活塞和钟区块加载器改为指令配置
原有的固定触发条件改为可自定义的条件组,每种加载器可以分别设置启用状态、加载时长和强加载范围,配置会保存到存档。
开启对应规则后,使用/blockChunkloader配置加载器,使用/blockChunkloader help查看说明。原规则 新规则 noteBlockChunkLoadercommandNoteblockChunkloaderpistonBlockChunkLoadercommandPistonChunkloaderbellBlockChunkLoadercommandBellChunkloader加载时长支持
1~300游戏刻,强加载范围支持1x1、3x3、5x5、7x7、9x9,默认分别为300游戏刻和3x3。
条件可以按方向和距离或相对坐标偏移设置,支持匹配或排除指定方块。组内可以选择全部满足或至少一条满足,多个已启用的非空组之间要求全部满足。
还可以使用test子指令检测指定位置的条件,不需要反复改动装置来排查配置。例如,配置上方有骨块时触发的音符盒加载器:
1
2
3
4
5
6/carpet setDefault commandNoteblockChunkloader ops
/blockChunkloader noteblock reset
/blockChunkloader noteblock time 200
/blockChunkloader noteblock range 3x3
/blockChunkloader noteblock condition add default direction up 1 is minecraft:bone_block
/blockChunkloader noteblock enabled true新加载器默认停用,配置完成后需要执行
enabled true。活塞加载器仍以活塞头到达的区块为加载中心。
完整参数和条件组用法见指令文档。移除旧的方块加载控制规则
移除
blockChunkLoaderTimeController和blockChunkLoaderRangeController,改为通过/blockChunkloader <type> time和range分别设置。
移除blockChunkLoaderKeepWorldTickUpdate,需要在维度无人时保持实体更新的存档,请使用 保持实体更新(keepWorldTickUpdate)。
升级后请按新规则和指令重新配置原有方块加载器。大潜影盒(largeShulkerBox)支持热切换
修改规则后无需重启即可调整容量,并同步容器内容与比较器信号。
关闭规则会清空本次扩容增加的槽位,请先取出其中的物品。大末影箱(largeEnderChest)支持热切换
开启后会在需要时扩展玩家末影箱容量,读取存档时也会预先扩容,打开界面不再要求重新进入游戏。
升级至 AMSP v2
调整网络通道、握手与数据包分发,将数据包的主线程调度集中到分发层处理。
客户端协议不兼容时会收到提示,使用方块硬度同步、获取客户端 FPS 等网络功能时,请同步更新服务端和客户端模组。移除更新抑制崩溃修复(amsUpdateSuppressionCrashFix)
同时移除
/amsUpdateSuppressionCrashFixForceMode指令及其配置读写。移除自定义方块更新抑制器(customBlockUpdateSuppressor)
移除增强型世界吞噬者(enhancedWorldEater)
自定义方块爆炸抗性(commandCustomBlockBlastResistance) 不再受
enhancedWorldEater限制。
修复
- 修复最大玩家方块交互距离(maxPlayerBlockInteractionRange)可被Carpet的antiCheatDisabled绕过的问题。
- 修复最大玩家实体交互距离(maxPlayerEntityInteractionRange)可被Carpet的antiCheatDisabled绕过的问题。
- 调整客户端最大交互距离(maxClientInteractionReachDistance)的注入位置,在射线检测使用距离时应用规则值。
- 修复服务端转换翻译文本时父子样式继承丢失,导致维度名称等文本颜色异常的问题,同时处理悬浮文本中的翻译。
- 修复客户端语言既不是中文也不是英文时的翻译回退,使用英文翻译。
- 修复 Minecraft >= 1.21.11 中配方规则不可用的问题,并调整配方重载与玩家配方同步。
- 重构 伪和平(fakePeace) 的实现方式。
- 重构 可施肥小花(fertilizableSmallFlower) 的实现方式。
- 调整 幻翼生成警告(phantomSpawnAlert),在实体实际加入世界后发送消息。
- 补齐 Minecraft 1.16.5 的 强效经验修补(powerfulExpMending) 实现。
其他
- 重构指令注册模块和配方 API,统一命令参数、权限检查与配方管理。
- 更新 MixinExtras 至
0.5.5。 - 调整网站主题、搜索和页面目录等功能。
New Rules
blockHardnessSyncProtocol
Synchronizes server-side block hardness to the client so that mining progress follows the hardness configured on the server.
Requires amsNetworkProtocol and a client installation of Carpet AMS Addition that supports the current protocol.commandLocationTag
Enables
/amslocto record and query locations across dimensions using signs. No client mod is required.
By default, it recognizes regular oak signs withamslocon the first line of the front side. Lines two through four are trimmed individually and joined directly to form the name, without separators.
Supports paginated lists, dimension filters, marker details, and configurable marker text and sign types. Records update when signs are edited or removed. Existing signs are discovered as chunks load;/amsloc rescanchecks loaded chunks in batches.realPlayerControlDisabled
Prevents Carpet’s
/playercommand from controlling any real player.incompatibleProtocolWarningDisabled
Disables warnings sent to clients using an incompatible AMS network protocol. Only takes effect while
amsNetworkProtocolis enabled.
This only hides the warning; it does not make incompatible clients support the protocol.destroyBlockPosWarningDisabled
Disabled by default. Suppresses the server-side
Mismatch in destroy block poswarning when enabled.
Only controls this warning in the server log. Vanilla block breaking logic and other warnings are unaffected.
Changes
Command-based configuration for note block, piston, and bell chunk loaders
Fixed activation conditions have been replaced with configurable condition groups. Each loader type has its own enabled state, loading duration, and entity-ticking area, saved in the world.
Enable the corresponding rule, then configure the loader with/blockChunkloader. Use/blockChunkloader helpfor instructions.Previous rule Replacement noteBlockChunkLoadercommandNoteblockChunkloaderpistonBlockChunkLoadercommandPistonChunkloaderbellBlockChunkLoadercommandBellChunkloaderLoading duration supports
1–300game ticks. Available entity-ticking areas are1x1,3x3,5x5,7x7, and9x9; the defaults are300ticks and3x3.
Conditions can match or exclude blocks at a direction and distance or a relative coordinate offset. Groups supportalloranymatching; all enabled, non-empty groups must pass.
Thetestsubcommand checks conditions at a given position, helping diagnose configurations without repeatedly rebuilding a contraption.For example, configure a note block loader that activates with a bone block above it:
1
2
3
4
5
6/carpet setDefault commandNoteblockChunkloader ops
/blockChunkloader noteblock reset
/blockChunkloader noteblock time 200
/blockChunkloader noteblock range 3x3
/blockChunkloader noteblock condition add default direction up 1 is minecraft:bone_block
/blockChunkloader noteblock enabled trueNew loaders are disabled by default. Run
enabled trueafter configuration. Piston loaders still center their loading area on the chunk reached by the piston head.
See the command documentation for all parameters and condition-group operations.Removed the previous block loader control rules
Removed
blockChunkLoaderTimeControllerandblockChunkLoaderRangeController. Set them separately for each type with/blockChunkloader <type> timeandrange.
RemovedblockChunkLoaderKeepWorldTickUpdate. Use keepWorldTickUpdate when entity ticking must continue in dimensions without players.
Reconfigure existing block loaders using the new rules and commands after upgrading.largeShulkerBox now supports changing the rule without restarting
Capacity can now be changed without restarting, with container contents and comparator signals updated accordingly.
Disabling the rule clears slots added by the current expansion. Remove their contents first.largeEnderChest now supports changing the rule without restarting
Expands the player’s Ender Chest inventory when needed, including before reading its saved contents. Players no longer need to rejoin to open the expanded interface.
Upgraded to AMSP v2
Updated the network channel, handshake, and packet dispatching. Main-thread scheduling is now handled centrally by the dispatcher.
Clients receive a warning when their protocol is incompatible. Update both server and client installations when using features such as block hardness synchronization and client FPS queries.Removed amsUpdateSuppressionCrashFix
Also removed
/amsUpdateSuppressionCrashFixForceModeand its configuration loading and saving.Removed customBlockUpdateSuppressor
Removed enhancedWorldEater
commandCustomBlockBlastResistance is no longer restricted by
enhancedWorldEater.
Fixes
- Fixed Carpet antiCheatDisabled bypassing maxPlayerBlockInteractionRange.
- Fixed Carpet antiCheatDisabled bypassing maxPlayerEntityInteractionRange.
- Updated maxClientInteractionReachDistance to apply its configured value where raycasting consumes the distance.
- Fixed lost parent-to-child style inheritance during server-side translation, which could cause incorrect colors in dimension names and other text. Hover text translation is also handled.
- Fixed translation fallback for client languages other than Chinese or English; English is now used.
- Fixed recipe rules not working in Minecraft >= 1.21.11, and updated recipe reloading and player recipe synchronization.
- Reworked the implementation of fakePeace.
- Reworked the implementation of fertilizableSmallFlower.
- Updated phantomSpawnAlert to send messages after entities are actually added to the world.
- Added the missing Minecraft 1.16.5 implementation of powerfulExpMending.
Other
- Refactored command registration and the recipe API, consolidating command arguments, permission checks, and recipe management.
- Updated MixinExtras to
0.5.5. - Updated the website theme, search, and page contents navigation.