HASH

写入 HASH 数据

向 HASH 中写入指定键值,可选过期时间、过期触发和执行范围,适用于全局缓存、运行时状态和快速查表场景。

命令用途

Hash-Set 对应的实际命令写法是 HASH <标识> Set,用于向 HASH 容器写入指定键值。

它通常用于运行时缓存、全局状态记录、玩家标记、冷却记录和临时查表数据维护。

命令名

Hash-Set

调用格式

HASH <标识> Set <KEY> [VALUE] [过期时间(秒)] [过期触发标签] [执行者]

参数说明

参数必填说明
标识是HASH 容器标识,类似一个命名空间。
Set是固定子命令,表示写入或更新指定键值。
KEY是要写入的键名。
VALUE否键对应的值。省略时通常用于只记录键存在。
过期时间(秒)否键值的生存时间,省略时通常表示不过期。
过期触发标签否到期后触发的标签。
执行者否执行范围。已知 G 表示全局。

返回或影响

  • 该命令会向指定 HASH 中写入或更新一个键值。
  • 可以只记录某个键存在,也可以同时记录对应值。
  • 可选过期时间与过期触发,适合做临时状态或冷却控制。
  • 该命令本身不是检查命令;是否存在通常要交给 HashExists 或其它读取命令判断。
  • 过期触发标签执行时,可使用 $PARAM(0)(标识)、$PARAM(1)(key)、$PARAM(2)(value)、$PARAM(3)(执行者名称)读取触发参数。

示例

基础用法

#ACT
HASH <$USERNAME> Set 新人礼包 1 86400 @GiftExpired

这段写法用于给当前角色记录一个名为“新人礼包”的 HASH 标记,值为 1,有效期 86400 秒,并在到期后进入指定标签处理。

常见变体

#ACT
HASH 活动状态 Set 跨服开关 1 0 @None G

这类写法用于记录全局活动状态。最后一个参数写 G 时,表示这个 HASH 以全局范围维护,而不是跟随单个执行者。

注意事项

  • Hash-Set 是文档里的速查名,真正执行时写法是 HASH <标识> Set ...。
  • 如果业务只需要判断某个键是否存在,通常应配合 HashExists,不要把写入命令当成检查命令使用。
  • 涉及过期触发时,要提前确认触发标签和执行上下文是否已经准备好。

相关命令