块内存

块内存

方块记忆是一个轻量级、服务端的Forge模组,专为需要清晰、可靠的方块、事件和实时活动警报信息而设计,供模组管理员使用,无需翻阅日志。

本 Mod 由 RoughDayGames 开发组为您呈现。如需获取 Mod 帮助,请加入 Discord:RoughDayGames
BlockMemory

Block Memory 是一款轻量级的 Minecraft 服务端 Mod,专为希望拥有清晰、可靠调查工具,且无需翻阅日志或依赖猜测的管理员和审核员打造。

该 Mod 适用于 Forge 和 Fabric 版本。

Block Memory 记录玩家的直接方块操作,并为工作人员提供多方位的游戏内工具,可用于检查方块、回顾事件、查看玩家活动、分析情境存在性、审阅保存的警报、管理已保存的监控/静默区域、监控实时突发警报,以及使用工作人员队列摘要——所有这些都在游戏内完成。

整个 Mod 围绕一个核心理念构建:

准确第一。

如果 Block Memory 知道某件事,它会告诉你。如果它不确定某件事,它也会明确地告诉你。

无需客户端 Mod。


Block Memory 的功能

追踪方块的放置与破坏

Block Memory 记录玩家对方块的直接放置和破坏行为,并在服务器重启和玩家重连后保留这些数据。

其设计保持轻量且仅限服务端,因此您可以获得有用的调查数据,而不会给服务器带来过多额外负担。

它也能干净地处理重新放置的情况:如果一个被追踪的方块被破坏后又重新放置,记录流程依然清晰合理。


让工作人员在游戏世界中检查方块

方块扫描器为工作人员提供了一种快速检查被追踪方块的方式,无需离开游戏。

检查时可以显示:

  • 放置或破坏方块的玩家
  • 真实世界的时间戳
  • 游戏内的日期和时间
  • 放置或破坏的方式
  • 可信度信息与解释
  • 潜行时可选显示 UUID
  • 可选的工作人员备注

重要的是,当 Block Memory 无法直接确认某件事时,它不会假装知道。它会告诉你,该操作的来源可能未被追踪、来自命令、自然生成,或以其他方式不确定性。

方块扫描器还包含一行辅助副标题:

检查已追踪的方块历史


使目标检查更加可靠

一个最棒的可用性改进是,检查不再仅仅依赖于您准星命中的确切方块。

/blockmemory inspect 和 /blockmemory inspect context 可以自动吸附到您视线附近最近的已记录方块,包括被命中的方块、其相邻面方块以及附近的邻居方块。

这在检查密集建筑、刁钻角度或最近变动区域时效果显著。


通过上下文视图重建局部时间线

Block Memory 包含一个用于调查的情境重建工具:

/blockmemory inspect context [秒数] [半径区块数]

此命令并非仅显示单个方块,而是围绕您正在注视的方块构建一条局部时间线。它以该方块自身被追踪的事件时间为锚点——如果被破坏则使用破坏时间,否则使用放置时间——并显示其附近的跟踪活动。

它会提供:

  • 放置数量
  • 破坏数量
  • 按净活动量排序的主要参与者
  • 从最新到最旧的事件列表

此功能旨在用于重建和提供上下文,而非读心术。

这就是为什么它始终包含免责声明:

存在 ≠ 意图。仅提供上下文参考。


新增工作人员专用的存在魔杖

存在魔杖用于提供上下文,而非指责任何人。

它按区块追踪玩家存在情况,让工作人员可以查看:

  • 访问次数
  • 在区块内的总停留时间
  • 最后出现时间

潜行时会显示更多细节,包括主要访客以及可点击的 UUID 复制支持。

存在数据是持久的、区分维度的,并且设定了上限以防止无限增长。

而且,就像 Mod 的其他部分一样,它对于该数据的含义表述非常明确:

存在 ≠ 意图。包含挂机计时。仅提供上下文参考。

Block Memory 在以下两者之间保持清晰的界限:

  • 事实 → 方块的放置与破坏
  • 上下文 → 存在历史

这种分离是有意为之。

存在魔杖还包含一行辅助副标题:

显示情境性的玩家存在情况


包含一个基于事实的玩家摘要命令

Block Memory 还包含一个玩家调查摘要命令:

/blockmemory player <玩家名> [时间窗口]

默认时间窗口:7d(7天)

此命令适用于:

  • 在线玩家
  • 离线玩家
  • 通过存储的 UUID/名称查找的历史玩家

它会先检查精确的在线名称,然后检查存储的历史数据。如果结果不明确,它宁可干净地失败,也不会进行猜测。

摘要可以包含:

  • 被追踪的放置次数
  • 被追踪的破坏次数
  • 净活动量
  • 主要活动区块
  • 最近被追踪的操作
  • 带有精确角色标签的事件链接
  • 关于该玩家放置的方块的最近工作人员备注

再次强调:仅限事实。不推断意图。

 

工作人员队列,用于更快速的审核检查

Block Memory 包含一个工作人员队列命令:

/Blockmemory Queue

该队列为工作人员提供了一个需要关注的待处理审核工作的快速概览。

它可以显示:

事件总数
警报总数
未审阅事件计数
未认领警报计数
已认领警报计数
未认领未审阅事件计数
已认领但未审阅事件计数
最旧的未审阅事件
最新的未认领警报

队列还包含可点击的快捷按钮,用于常见的工作人员后续操作,例如打开未审阅事件、警报以及事件列表。

工作人员加入通知也可以在有待处理的队列工作时发出警告,使团队在登录后更容易注意到未解决的警报或事件。


事件追踪

TNT 事件

Block Memory 使用与其方块系统相同的“准确第一”方法来追踪 TNT 爆炸和 TNT 导致的死亡。

它可以:

  • 追踪 TNT 爆炸及导致的死亡
  • 在数据可用时归因 TNT 的拥有者
  • 尽最大努力处理链条式或间接的 TNT 情况
  • 记录最多两名协助玩家
  • 通过快速传送访问来提醒工作人员

窒息事件

它同样追踪 inWall 窒息死亡。

这包括:

  • 在可用时归因直接放置者
  • 对封闭环境的设置进行协助归因
  • 尽最大努力处理下落的方块(如沙子、砂砾)
  • 当归因不可靠时,明确输出 UNKNOWN(未知)
  • 当 Mod 无法自信地进一步说明时,提供清晰的解释

统一的事件工作流程

Block Memory 为 TNT 和窒息案件提供了一个完整的事件系统。

这包括:

  • 一个统一的事件列表
  • 最新优先排序
  • 稳定的事件 ID
  • 审阅状态
  • 工作人员备注
  • 用于工作人员协调的认领/取消认领工作流程
  • 检查视图
  • 硬删除支持
  • 在重连和重启后保持持久化

事件输出可以显示:

  • 受害者
  • 归因者和协助者
  • 时间戳
  • 审阅状态
  • 审阅元数据
  • 认领状态
  • 工作人员备注
  • 明确的 UNKNOWN(未知)解释
  • 可点击的操作

快速操作包括:

  • [TP] 传送至事件地点
  • [COPY] 将简洁摘要复制到剪贴板
  • [REPORT] 复制一份完整的工作人员交接报告

事件认领命令允许工作人员标记某个事件正在处理中:

  • /blockmemory incidents claim <id>
  • /blockmemory incidents unclaim <id>

这在拥有多名工作人员的服务器上非常有用,因为它能清晰地表明某事件已有人在查看。

您还可以通过配置控制每页显示的事件数量。


中立的破坏突发警报

Block Memory 包含仅工作人员可见的实时破坏突发警报,用于异常的追踪破坏活动。

这些警报是刻意中立的。它们的作用仅仅是告诉工作人员,在某个配置的时间窗口内,某个区块区域发生了大量被追踪的破坏行为——仅此而已,不多也不少。

这意味着:

  • 没有怀疑分值
  • 没有归咎性用语
  • 没有“检测到恶意破坏”的措辞
  • 没有虚假的确定性

只有事实。

突发警报支持:

  • 被追踪的破坏阈值检查
  • 滚动时间窗口
  • 基于区块区域的匹配
  • 冷却时间以减少刷屏
  • [TP] 快速操作
  • [COPY] 剪贴板摘要操作
  • 配置定义的监控区域
  • 配置定义的静默区域
  • 已保存的监控区域
  • 已保存的静默区域
  • 支持 Y 轴感知的区域匹配,适用于地下建筑、高塔、浮空建筑和多层结构

如果匹配到某个监控区域,警报可以显示该区域的名称,而不仅仅是原始的区块数据。

静默区域的优先级高于监控命名,这有助于避免在已知的高活动区域产生误导性的误报。


已保存的警报和已保存的区域

Block Memory 还会保存警报历史,因此突发警报不仅仅是一个实时功能。

已保存警报的命令:

  • /blockmemory alerts
  • /blockmemory alerts inspect <id>
  • /blockmemory alerts claim <id>
  • /blockmemory alerts unclaim <id>
  • /blockmemory alerts delete <id>

警报检查输出包含快速工作人员操作:

  • [TP] 传送至警报地点
  • [COPY] 复制简洁的警报摘要
  • [REPORT] 复制一份完整的工作人员交接报告

警报也可以被认领和取消认领,方便工作人员团队查看某警报是否已在处理中。

已保存的警报 ID 保持稳定且不会重复使用,因此工作人员可以在之后可靠地引用特定的警报。

已保存的区域直接集成到突发警报工作流程中。

您可以使用完整的游戏内命令创建和管理监控区域与静默区域:

  • /blockmemory area watch add <名称> <x1> <y1> <z1> <x2> <y2> <z2>
  • /blockmemory area watch list
  • /blockmemory area watch remove <id或名称>
  • /blockmemory area suppress add <名称> <x1> <y1> <z1> <x2> <y2> <z2>
  • /blockmemory area suppress list
  • /blockmemory area suppress remove <id或名称>
  • /blockmemory area inspect <id或名称>

已保存的区域支持:

  • 列出
  • 检查
  • 移除
  • 精确名称查找
  • 数字 ID 查找
  • 自动补全建议
  • Y 轴范围支持

这使得它们在具有垂直建筑、地下空间、浮空基地和堆叠式结构的真实服务器上更加实用。


工作人员交接报告和认领

Block Memory 1.7 为警报和事件添加了更强的工作人员交接工具。

事件和警报的检查视图现在包含一个 [REPORT] 操作。它会将一份完整的多行报告复制到剪贴板,专为 Discord 工单、工作人员日志、审核备注或工作人员之间的交接而设计。

报告可以包含以下详细信息:

  • ID
  • 类型
  • 时间
  • 世界
  • 坐标
  • 审阅状态
  • 审阅元数据
  • 认领元数据
  • 受害者或行为者信息
  • 工作人员备注
  • 警报区域和触发详情

Block Memory 还支持对警报和事件进行工作人员认领。

认领不会改变事件或警报的结果。它们仅仅标记某个工作人员当前正在处理该事项。

这保持了系统的事实性和轻量性,同时使工作人员协作更加容易。


扫描与报告

Block Memory 包含区域扫描功能,用于快速审核检查。

扫描输出可以包含:

  • 附近被追踪方块的数量
  • 操作方式比例
  • 附近实体统计数据
  • 快速剪贴板摘要
  • TXT 导出
  • JSON 导出
  • 可选的 Spark 友好工作流支持

扫描输出还包含一个 [COPY] 操作,用于快速共享紧凑摘要。

扫描导出现在包含额外对工作人员有用的细节,例如命令计数、主要参与者和最近操作,使得扫描结果更容易在工单、工作人员聊天或审核备注中分享。

它是一个有用的“这里发生了什么?”工具,而不会试图成为一个完整的回滚系统。


命令

调查

  • /blockmemory Inspect
  • /blockmemory Inspect context [秒数] [半径区块数]
  • /blockmemory History [半径] [限制]
  • /blockmemory Player <玩家名> [时间窗口]
  • /Blockmemory Queue
  • /blockmemory Scan [半径]

警报

  • /blockmemory Alerts
  • /blockmemory Alerts inspect <id>
  • /blockmemory Alerts claim <id>
  • /blockmemory Alerts unclaim <id>
  • /blockmemory Alerts delete <id>

已保存的监控/静默区域

  • /blockmemory Area watch add <名称> <x1> <y1> <z1> <x2> <y2> <z2>
  • /blockmemory Area watch list
  • /blockmemory Area watch remove <id或名称>
  • /blockmemory Area suppress add <名称> <x1> <y1> <z1> <x2> <y2> <z2>
  • /blockmemory Area suppress list
  • /blockmemory Area suppress remove <id或名称>
  • /blockmemory Area inspect <id或名称>

事件

  • /blockmemory Incidents
  • /blockmemory Incidents tnt
  • /blockmemory Incidents suffocation
  • /blockmemory Incidents unreviewed
  • /blockmemory Incidents reviewed
  • /blockmemory Incidents false_positive
  • /blockmemory Incidents action_taken
  • /blockmemory Incidents inspect <id>
  • /blockmemory Incidents claim <id>
  • /blockmemory Incidents unclaim <id>
  • /blockmemory Incidents review <id> <状态>
  • /blockmemory Incidents note <id> <文本>
  • /blockmemory Incidents note clear <id>
  • /blockmemory Incidents delete <id>

方块备注

  • /blockmemory Note <文本>
  • /blockmemory Clearnote

时区/时间戳偏好

  • /blockmemory Tz <时区>
  • /blockmemory Tzclear
  • /tz <时区>
  • /tz clear

物品与界面

Block Memory 当前包含:

  • 方块扫描器
  • 存在魔杖
  • 一个自定义创造模式标签页
  • 调查工具上的辅助副标题行
  • 改进的 UUID 复制支持和检查体验优化

近期的大量工作一直专注于让 Mod 在实际审核过程中使用起来更快捷,而不仅仅是技术功能上的完善。


配置

Block Memory 使用一个服务端配置文件:

blockmemory-server.toml

一个重要的细节:

活动配置是按世界存储在该世界的 serverconfig 文件夹中的。

BlockMemory 还会在那里生成一个 blockmemory-readme.txt 文件,以便于理解,特别是对于想知道为什么配置不在 Mod jar 旁边的服务器管理员。

生成的说明文档解释了:

  • 活动配置文件的位置
  • 主要的 BlockMemory 系统的功能
  • 突发警报如何调整
  • 监控/静默区域格式如何工作
  • 配置定义区域与游戏内保存区域的区别
  • 生成的数据与用户编辑的配置之间的区别

配置涵盖的内容包括:

  • UUID 显示
  • 备注
  • 检查日志
  • 每页事件数
  • 用于事件归因的生物过滤
  • 突发警报调整
  • 监控区域
  • 静默区域
  • 用于区域匹配的 Y 轴范围支持

配置中定义的监控/静默突发区域也支持Y 轴感知的垂直范围字段,因此基于配置的警报规则可以恰当地限定在堆叠式或多层建筑中。


设计理念

Block Memory 围绕着一个相当简单的理念构建:

  • 准确胜于假设
  • 透明胜于虚假的确定性
  • 有用的上下文,不妄断意图
  • 轻量化系统胜于臃肿的复杂性

它报告它所知道的,并诚实地告知它所不知道的。

这就是全部要旨。
(如果您希望此 Mod 出现在其他 Mod 加载器或 Minecraft 版本上,请在评论区说明)

祝您愉快,我也一直在寻找评论区和其他地方的反馈!


当前版本

1.7.2


许可证

MIT