Skip to content
On this page

SearchingKeycard 房卡附属

SearchingKeycard 是 Searching 的房间门禁附属插件。它适合用在城市建筑、警局、宿舍、公寓、实验室、地堡、商店仓库等场景:玩家需要持有指定房卡才能开门进入房间,房间内的 Searching 搜刮箱只会在房卡开门后刷新。

它解决的是“房间权限”和“室内搜刮刷新”两个问题:

  • 没有房卡,玩家不能开门。
  • 没有房间搜刮权限,玩家不能打开室内搜刮箱。
  • 室内搜刮箱可以配置为平时不自动刷新,只在合法开门时刷新。
  • 同一个房间在一轮开启期间只刷新一次,避免玩家反复刷门重置奖励。

适合的玩法

房卡搜刮房

管理员把一间房配置为房卡房,玩家拿到对应房卡后才能进入。开门成功时,房间内的搜刮箱刷新一次,玩家可以在房间访问时间内搜刮。

常见例子:

  • 警局证物室
  • 医院药房
  • 酒店客房
  • 军事仓库
  • 实验室物资间

高价值限次房间

房卡可以设置为消耗品。这样每张房卡就相当于一次进入房间的机会,适合高价值房间或副本奖励房。

如果不想消耗房卡,也可以把房卡当作长期门禁卡使用。

多人共享房间

房卡支持两种搜刮权限模式:

模式效果
opener只有本轮刷过房卡的玩家可以搜刮
all房间开启期间所有玩家都可以搜刮

如果你的服务器强调“谁刷卡谁收益”,用 opener。如果房卡只是开门工具、队友都能进去搜,用 all

基本流程

  1. 管理员先在 Searching 中创建室内搜刮箱。
  2. 室内搜刮箱建议使用 never 刷新策略。
  3. 管理员在 SearchingKeycard 中创建房间实例,并登记门和室内节点。
  4. 管理员用 give 命令发放房卡。
  5. 玩家右键门。
  6. 插件检查玩家手上的房卡。
  7. 房卡有效时,房间进入开启周期,并刷新室内 Searching 节点。
  8. 玩家进入房间搜刮。
  9. 门会按配置自动关闭,访问权限到期后房间周期结束。

房卡

房卡不是只看物品名字。插件会把房卡身份写进物品 PDC 数据,因此更适合正式服务器使用。

一张房卡可以同时拥有:

  • 材质
  • 显示名
  • lore
  • CustomModelData
  • PDC 身份标记

这些属性都是可选识别条件。没有写的条件不会参与判断;写了的条件必须匹配。至少要写一个识别条件,否则这张房卡不会被加载。高价值房卡建议配置 PDC,服主可以用显示名、lore 和模型数据做外观,用 PDC 保证它确实是插件认可的房卡。

发放房卡命令:

text
/skc give <玩家> <房卡ID> [数量]

give 需要房卡配置了材质。如果你想把手上的现有物品设置成房卡,可以使用:

text
/skc set <房卡ID>

set 会根据配置文件把已配置的材质、显示名、lore、CustomModelData 和 PDC 写到主手物品上,配置里没写的属性不会改动。

房间

SearchingKeycard 把“房间类型”和“实际房间数据”分开。

房间类型负责定义规则,例如:

  • 允许哪些房卡打开
  • 门打开多久后自动关闭
  • 关门前如果附近有人,多久后重试
  • 房间开启周期的空闲保留时间
  • 额外的室内节点区域

实际房间数据负责记录世界里的真实位置,例如:

  • 房间 ID
  • 房间类型
  • 门的位置
  • 室内 Searching 节点位置
  • 已缓存的节点 ID

这种拆分适合大地图:同一种“警局房卡房”规则可以复用到多个实际房间,每个房间只记录自己的门和箱子位置。

刷新规则

推荐把室内 Searching 节点配置成 never 刷新策略。

这样节点平时不会自己刷新,也不会在创建后自动塞入奖励。只有玩家用房卡成功开启房间时,SearchingKeycard 才会让该房间的室内节点刷新。

一轮房间开启周期内,节点只刷新一次。玩家反复右键门、队友重复刷卡,都不会继续重置奖励。

自动关门

门不会一直保持打开。开门后插件会按配置自动关闭。

关门前会检查门附近是否有玩家,避免把玩家卡在门里。如果有人站在门附近,插件会延迟一段时间后再尝试关闭。

玩家退出、死亡、切换世界或插件关闭时,插件会清理对应的房间访问状态。

与 SearchingSafeBox 联动

SearchingKeycard 可以和 SearchingSafeBox 一起使用。

推荐顺序是:

  1. 玩家先用房卡获得房间权限。
  2. 进入房间后右键保险箱类型的 Searching 节点。
  3. SearchingSafeBox 要求玩家完成破译。
  4. 破译完成后,仍会继续校验房卡房间权限。
  5. 权限有效时才会真正进入 Searching 搜刮界面。

这意味着:玩家不能只靠破译保险箱绕过房卡权限。

管理命令

主命令:

text
/searchingkeycard
/skc

常用命令:

命令用途
/skc reload重载房卡、房间规则和房间数据
/skc give <玩家> <房卡ID> [数量]给予玩家指定房卡
/skc set <房卡ID>根据房卡配置把主手物品设置成房卡
/skc room create <房间类型> <房间ID>创建一个实际房间
/skc room adddoor <房间ID>把当前看着的门加入房间
/skc room addnode <房间ID>把当前看着的 Searching 节点加入房间
/skc room info <房间ID>查看房间已登记的信息

管理权限:

text
searchingkeycard.admin

配置规划建议

小型服务器可以按建筑用途做房卡,例如:

  • apartment_keycard
  • police_room
  • hospital_pharmacy
  • lab_storage

大型服务器建议按区域和等级拆分,例如:

  • city_a_room_low
  • city_a_room_high
  • military_bunker_tier_1
  • military_bunker_tier_2

如果房间奖励价值很高,建议:

  • 房卡设置为消耗品。
  • 搜刮权限使用 opener
  • 房间开启时间不要太长。

如果房间只是普通探索内容,建议:

  • 房卡可以不消耗。
  • 搜刮权限可以使用 all
  • 开门时间稍长,减少玩家进出时的不适。