Skip to content

团队#

BentoBox 为游戏模式管理团队。团队可以让玩家在一个岛屿上组合在一起。团队有一个所有者或领导者,以及至少一个团队成员。

团队命令#

这是玩家可用的团队命令列表。该命令在主玩家命令之后使用,例如 BSkyBlock 的 /island team

命令 描述 权限
team 管理你的团队 [gamemode].island.team
team accept 接受邀请 [gamemode].island.team
team coop 在你的岛上给玩家合作者权限 [gamemode].island.team.coop
team demote 在你的岛上降低玩家一个等级 [gamemode].island.team
team leave 离开你的岛 [gamemode].island.team
team invite 邀请玩家加入你的岛 [gamemode].island.team
team kick 从你的岛上移除一个成员 [gamemode].island.expel
team promote 在你的岛上提升玩家一个等级 [gamemode].island.team
team reject 拒绝邀请 [gamemode].island.team
team setowner 将你的岛屿所有权转让给一个成员 [gamemode].island.team
team trust 在你的岛上给玩家信任者权限 [gamemode].island.team.trust

主团队命令#

主团队命令是 team。要使用此命令,你必须有一个岛屿。如果单独运行,它将向玩家提供以下信息:

  • 如果玩家是所有者,它会告诉他们可以邀请多少玩家加入团队。
  • 它将显示团队的所有成员。这包括有关玩家等级、在线/离线状态以及他们上次在线的时间的信息。

团队规模#

团队可以是任意大小,最大规模可以在游戏模式的基础上全局设置,或者由给予团队所有者的编号权限确定。默认的最大团队规模为 4。合作者和信任者的最大数量也设置为 4。

团队成员等级#

BentoBox 内置以下团队等级: * 所有者 - 这是岛屿的所有者。只能有一个所有者。 * 副所有者 - 这是一个成员等级,几乎拥有与所有者相同的权限。可以有多个副所有者。 * 成员 - 这是默认的成员等级。

非团队成员等级#

岛屿有其他与团队相关但不是团队成员的等级: * 信任者 - 这是一个在岛上拥有永久权限的非团队成员,即他们拥有这些权限直到被团队成员取消信任。 * 合作者 - 这是一个在岛上拥有临时权限的非团队成员,如果给予他们权限的团队成员下线,或者如果他们被取消合作,这些权限将停止。 * 访客 - 这是任何访问岛屿的玩家的默认等级。 * 封禁 - 这些玩家已被团队成员封禁,不能进入岛屿。

可配置的等级命令#

岛主可以通过游戏内设置菜单中的命令等级菜单授予较低等级的团队管理命令访问权限。这使得所有者能够允许其他成员邀请其他成员,例如。

晋升和降级#

团队成员可以由岛主或具有使用这些命令所需等级的岛成员晋升或降级。

玩家不能自己降级或晋升自己。

目前,唯一可能的晋升或降级是在成员和副所有者等级之间。将来,可能会有额外的等级或自定义等级。

加入团队#

邀请#

可以使用 team invite 命令邀请玩家加入团队。要邀请玩家加入团队,邀请者必须是岛主或具有足够的等级来使用该命令(参见可配置的等级命令)。玩家按名称邀请,必须在线。只能向尚未加入团队的玩家发出邀请。如果玩家想要切换团队,他们必须先离开当前团队,然后才能被邀请。 被邀请的玩家在拒绝邀请之前不能再次被邀请。 被邀请的玩家一次只能有一个有效的邀请。这包括团队、合作和信任邀请。如果玩家在另一个邀请待处理时收到新的有效邀请,旧邀请将被新邀请取代。 如果岛上团队规模已达到最大值,邀请命令将告诉用户岛屿已满。

API: 在完成所有验证检查但在发送邀请之前,将触发 TeamInviteEvent。如果此事件被取消,则不会发送邀请。

冷却#

邀请可能被玩家滥用,因此 BentoBox 防止在冷却期内邀请同一玩家到岛上。冷却是对整个岛屿实施的,因此岛上的各个成员不可能向另一个玩家发送邀请垃圾邮件。各种邀请的默认冷却时间为: * 团队成员 - 60 分钟 * 合作邀请 - 5 分钟 * 信任邀请 - 5 分钟 请参阅游戏模式的 config.yml 进行更改。

检查邀请#

玩家可以使用不带参数的 invite 命令检查谁邀请了他们。这将显示任何当前的团队、合作或信任邀请。

接受邀请#

玩家通过发出 team invite accept 命令接受邀请。

确认#

管理员可以决定是否需要对此命令进行确认。默认情况下,团队成员资格需要确认,但合作或信任状态不需要确认。这是因为团队成员在加入另一个团队时会失去他们的岛屿。如果需要确认,玩家将收到警告,如果他们有一个岛屿,那么它将丢失。一旦玩家第二次接受邀请,他们将成为团队成员并传送到团队岛屿。

邀请者在玩家接受邀请之前失去邀请玩家所需的等级的可能性很小。在这种情况下,接受将不会处理,用户将被告知邀请不再有效。

无障碍性: 默认冷却响应时间在 BentoBoxconfig.yml 中为所有游戏模式全局设置,为 10 秒。如果您的玩家需要更多时间来确认命令,请延长此值。请记住,在命令模式下按向上箭头将显示上一个命令,因此无需再次输入整个命令来确认。

API: 在完成所有验证检查但在发送邀请之前,将触发 TeamJoinEvent。如果此事件被取消,则不会发送邀请。一旦玩家加入岛屿,将根据邀请类型触发后续事件: * TeamJoinedEvent 在玩家加入岛屿团队时触发。 * IslandRankChange 在表示玩家新等级为成员、信任或合作时触发。 这些后续事件用于通知,不能取消。

成为团队成员的过程#

BentoBox 执行以下步骤以使玩家成为团队成员:

  1. 删除邀请。
  2. 删除玩家作为旧岛屿的所有者(请记住,团队成员不能加入另一个团队,因此只有所有者或没有岛屿的人才能成为成员)。
  3. 根据设置清理玩家 - 请参阅游戏模式的 config.yml
    • 末影箱物品栏(默认:不做任何事情)
    • 玩家物品栏(默认:不更改 请参阅下面的注释!
    • 金钱(默认:不清零)
    • 恢复健康(默认:恢复所有健康)
    • 恢复饥饿(默认:消除所有饥饿)
    • 清零经验点(默认:不清零)
  4. 将玩家添加为新岛屿的团队成员。
  5. 清除旧的家位置。
  6. 将玩家传送到他们的新岛屿家。
  7. 开始删除旧岛屿。
  8. 如果管理员设置了该设置,则重置他们的死亡计数器。
  9. 告诉玩家他们已加入新的岛屿。
  10. 告诉邀请者玩家已加入团队岛屿。
  11. 将岛屿保存到数据库。
  12. 触发通知事件。

重置玩家物品栏 管理员应将此设置更改为在玩家加入团队时清除玩家的物品栏!之所以不设置它,是为了避免在安装过程中发生事故。一些管理员不明白加入岛屿会清除他们的物品栏,因此我们决定采取"不造成伤害"的方法,让物品栏保持原样。但是,为了避免漏洞,应该清除它。

拒绝邀请#

玩家通过发出 team invite reject 命令拒绝邀请。

玩家必须有有效的邀请才能拒绝,否则他们只会收到错误。

API: 如果玩家有待处理的有效邀请,则将触发 TeamRejectEvent。如果此事件被取消,则邀请不会被拒绝,命令将静默失败。建议取消代码通知用户为什么拒绝没有发生。

一旦验证检查完成,邀请将被拒绝,邀请者将被通知。

更改团队所有权#

所有者可以使用 team setowner 命令并将新所有者的名称作为参数来使另一个团队成员成为所有者。

API: 在完成各种检查以确认可以执行命令但在执行命令之前,将触发 TeamSetownerEvent。如果此事件被取消,则所有权更改不会发生,命令将静默失败。建议取消代码通知用户为什么更改没有发生。

一旦所有权发生变化,就会触发两个 IslandRankChange 事件:一个用于新所有者,一个用于旧所有者。

所有者在离开团队之前必须选择新的所有者。

踢出玩家#

有时需要将团队成员强制踢出团队。这是使用 team kick 命令完成的。所有者总是可以踢出玩家,所有者还可以通过岛屿设置中的命令等级菜单允许较低等级的团队成员踢人。被踢出的团队成员不必在线。

默认情况下,该命令需要确认。可以在 BentoBox 的 config.yml 中进行配置。

当玩家被踢出时,会发生以下情况:

  1. 被踢出的玩家被通知(如果在线)
  2. 玩家被从岛上移除
  3. 如果有任何配置为在玩家离开岛屿时运行的命令(请参阅游戏模式的 config.yml),那么它们将在此时执行。
  4. 根据配置设置"清理"玩家:
  5. 末影箱被重置(默认:不重置)。如果玩家离线并且需要重置,则会在玩家下次登录时将其排队。
  6. 物品栏重置(默认:不清除)。如果玩家离线并且需要重置,则会在玩家下次登录时将其排队。
  7. 金钱重置(默认:不重置)。即使玩家离线也可以发生这种情况。
  8. 将健康设置为最大值(默认:不做任何事情)。仅在玩家在线时发生。
  9. 将食物等级设置为最大值(默认:不做任何事情)。仅在玩家在线时发生。
  10. 清零经验点(默认:不做任何事情)。仅在玩家在线时发生。
  11. 踢人者被告知踢出成功。
  12. 触发通知事件。 API: 触发两个事件 - TeamKickEventIslandRankChangeEvent。后者通知玩家现在具有访客等级。
  13. 对踢人者和被踢出的玩家都应用邀请冷却。这有助于限制任何可能涉及团队成员踢出玩家然后立即再次邀请他们的漏洞。

离开团队#

玩家可以使用 team leave 命令自愿离开团队。默认情况下,该命令需要确认,但可以在 BentoBox 的配置中关闭它。自愿离开团队时,玩家可能会使用他们允许的岛屿重置之一。这在游戏模式的配置中设置,默认是不损失重置。如果玩家将失去重置,如果离开命令有确认要求,他们将被警告。注意: 玩家有可能通过离开团队用完所有重置,因此无法建立自己的新岛屿。这是管理员必须考虑的问题。

当玩家离开岛屿时,顺序和过程与玩家被踢出时相同,只是玩家可能会失去重置。

API: 在玩家离开团队后,会触发两个通知事件:TeamLeaveEventIslandRankChangeEvent。后者通知玩家现在具有访客等级。

信任和合作其他玩家#

有时玩家想要在其他岛屿上提供帮助,而不必作为正式成员加入团队。这可以通过信任玩家或与在线玩家合作来完成:

  • team trust <player>:玩家在低于成员等级的岛上成为永久成员
  • team coop <player>:玩家在低于信任者等级的岛上成为临时成员

岛主可以信任或与玩家合作,还可以通过岛屿设置中的命令等级页面让较低等级的玩家使用这些命令。

这些命令实际上会向玩家发送一个邀请,他们可以接受或拒绝,就像团队加入命令一样。如果邀请被拒绝,在冷却期内将无法发送另一个邀请,默认设置为 5 分钟。这可以保护玩家免受邀请垃圾邮件的侵扰。

如果玩家已经有来自其他人或不同等级的待处理邀请,则该邀请将被这个邀请取代。

一旦接受,玩家将获得新岛屿的给定等级。邀请者被通知接受。

API: 触发一个通知事件:IslandRankChangeEvent,表示新的信任者或合作者等级。

合作玩家保持其等级,直到邀请他们的玩家注销,或者直到服务器关闭,以先发生者为准。

取消信任或取消合作玩家#

岛主或具有足够高等级的玩家可以发出 team untrustedteam uncoop 命令从团队中移除具有这些等级的玩家。

API: 如果成功,将为受影响的玩家触发 IslandRankChangeEvent 事件,标记他们现在具有访客等级。


Last update: April 4, 2024 02:05:45