记分板
发表时间: 2025-11-12 14:09:38
最后更新: 2025-11-12 14:09:38(7小时前)
本文标签: 游戏记录
介绍
-
记分板(Scoreboard)系统是一个复杂的游戏机制,通过命令来进行操作,主要为地图制作人和服务器管理员所设计。
-
每个记分项(Objective)由名称、显示名称和准则三部分组成,能够监测游戏中的特定对象或事件,并将其某些属性转换为可以存储的分数。
-
在游戏内部,记分板的分数以32位整型数字形式表现,因此不能为小数,且其取值范围为-2,147,483,648至2,147,483,647(闭区间)。
-
记分项名称为每个记分项的唯一标识符,主要用于在命令、目标选择器参数及某些文件格式中引用该项名称,并且在Java版中,名称区分大小写,允许包含字母、数字以及某些符号。
-
显示名称则用于在不同场合展示记分项,同样允许多个记分项具有相同的显示名称,Java版中为文本组件,而基岩版中限制为单一文本。
-
准则(Criterion,复数形式为Criteria)用于决定记分项应该追踪哪些游戏内的对象或事件,从而根据这些准则更新分数。
-
除了只读型记分项外,所有记分项的分数都可以通过命令进行修改,修改时可以指定增减的数值,或直接设置为特定的值。
-
分数持有者(Score Holder)是指那些被记分项记录下的玩家名称或实体UUID,其具有某一确定的分值,但需要注意的是,玩家名不必是实际存在的玩家。
-
对于非玩家实体,其分数只能通过命令进行修改,而不能通过游戏内的系统进行更改,且一旦非玩家实体死亡,其分数会被清除。
-
命令可以通过目标选择器的scores参数来检查实体的分数,语法为scores={<名称>=<最小值>..<最大值>},其中<名称>是记分项的唯一标识符。
-
例如,在命令方块中输入/execute if entity @a[scores={deaths=1..5}]时,比较器或条件制约的命令方块将在有玩家在deaths记分板上拥有1到5分时输出结果。
记分项
一、 准则
Java版
- 准则定义了记分项的记分行为,是记分项必不可少的部分。
- 以下介绍记分项在各类准则约束下的记分行为。
单一准则
| 准则名称 | 描述 | 能否被修改 |
|---|---|---|
| dummy 虚拟型 |
分数只能通过命令修改,不被实体死亡等游戏事件影响。可用作事件标志、状态映射、货币等等。 | 是 |
| trigger 触发器 |
分数只能通过命令修改,不被实体死亡等游戏事件影响。玩家都能够使用/trigger命令对其相关联的触发器准则记分项进行分数增减——前提是该记分项对该玩家“开放”。默认状态下,触发器记分项禁止玩家通过/trigger修改。当玩家成功使用/trigger改变某记分项分数后,该记分项便会回归到“禁止”状态。值得注意的是,/trigger可以在不允许作弊的情况下被非管理员的普通玩家使用。这可配合/tellraw命令实现玩家输入接口。 | 是 |
| deathCount 死亡次数 |
当玩家死亡时,分数会自动增加。 | 是 |
| playerKillCount 杀死玩家总量 |
当玩家杀死其他玩家时分数会自动增加。 | 是 |
| totalKillCount 杀死生物总量 |
当玩家杀死其他生物(包括玩家)时分数会自动增加。 | 是 |
| health 生命值 |
玩家的生命值和伤害吸收值之和。 | 否 |
| xp 经验值 |
对应玩家拥有的经验值。 | 否 |
| level 等级 |
对应玩家当前的经验等级。 | 否 |
| food 饥饿值 |
代表玩家的饥饿值,取值范围0~20。玩家的foodLevel首次变化前可能会显示为0。 | 否 |
| air 空气值 |
代表潜水的玩家剩余的空气,取值范围0~300。对应玩家的 |
否 |
| armor 护甲值 |
代表玩家拥有的护甲值,取值范围0~20。在玩家第一次更换盔甲前可能会显示为0。 | 否 |
复合准则
-
复合准则由多个组成部分构成,各部分之间使用点号(.)进行分隔。
-
例如,表示“玩家被僵尸杀死”的复合准则为 minecraft.killed_by:minecraft.zombie,当玩家遭遇这种情况时,分数才会增加。
-
所有基于复合准则的分数都可以通过特定命令进行修改。
-
任何统计信息的命名空间ID均可作为复合准则使用。
-
玩家自身的统计数据与记分板的分数存储是独立的。
-
当这些统计数据发生更新时,相关的记分项也会随之同步更新。
-
除此之外,还有以下复合准则:
| 准则基础名称 | 描述 | 次级准则数 | ||
|---|---|---|---|---|
| teamkill. |
次级准则是队伍的颜色。玩家杀死特定颜色的队伍成员时增加。 这些准则符合以下完整格式:teamkill.<队伍颜色>,其中<队伍颜色>接受以下列表中的颜色值:
|
16 | ||
| killedByTeam. | 次级准则包括队伍的颜色。玩家被特定颜色队伍的成员杀死时增加。
这些准则符合以下完整格式:killedByTeam.<队伍颜色>,其中<队伍颜色>接受以下列表中的颜色值:
|
16 |
基岩版
- 目前只支持dummy准则,因此分数仅能由命令修改。
显示位置
-
在Minecraft中,“显示位置”(Display Slot)提供了多种方式,用于展示单个或多个记分项的分数信息。
-
玩家可以通过使用“/scoreboard objectives setdisplay”命令,将特定的记分项和相应的分数在游戏中以特定的形式展示出来。
-
此外,若想修改记分项的显示名称,玩家可以使用“/scoreboard objectives modify displayname”命令,该功能仅适用于Java版。
-
对于Java版用户,使用“/scoreboard objectives modify rendertype”命令也可以变更记分项的渲染类型。
| 显示位置 | 描述 | 显示效果 |
|---|---|---|
| list 列表 |
在玩家列表中以黄色文字在玩家名称后显示分数信息(默认为Tab ↹键),并不会显示记分项名称。 在暂停页面的玩家列表显示分数信息。 |
|
| sidebar 侧边栏 |
在屏幕的右侧显示。在列表的最上方显示记分项的显示名称(display name),并显示玩家的高分榜。值得注意的是,即使玩家离线,如果在该记分项下存在一定分数也会在“侧边栏”中进行显示,并且没有痕迹的玩家也不会被显示。除此之外,以“#”开头的伪造的玩家名称在任何情况下都不会在侧边栏可见。 |
|
| sidebar.team.<color> 侧边栏.队伍.<颜色> |
有16个的具体队伍的侧边栏显示形式。它们和标准的侧边栏同样操作,但只有指定颜色的队伍中的玩家可以看见(例如"sidebar.team.green"绿色队伍中的玩家可以看见)。有效的颜色是:"black", "dark_blue", "dark_green", "dark_aqua", "dark_red", "dark_purple", "gold", "gray", "dark_gray", "blue", "green", "aqua", "red", "light_purple", "yellow" 和 "white"。注意,该显示位置的优先级高于sidebar,故会占用原有的sidebar内容。 |
|
| below_name belowname 名称下方 |
在玩家的名称牌之下,在他们的头之上,于记分项的显示名称(display name)前面显示分数。在10个方块以外、玩家潜行时隐藏。这一显示位置在单人游戏中不可见。 |
|
队伍
存储格式
- 记分板数据存储在<存档根目录>/data/scoreboard.dat文件中。
语言
字体
平视显示器
第三人称视角
聊天
弹窗
教学提示
提示框
动作栏
定位栏
Boss栏
灵动视效
记分板
截图
进度
统计信息
队伍
成就
判定箱
东南规则
爆炸
多人游戏
药水效果
游戏事件
世界
难度
极限模式
游戏规则
维度
种子(世界生成)
灾厄巡逻队
袭击
僵尸围城
方块基本属性
挖掘
Java版材料
基岩版材料
含水
方块更新
红石电路
氧化
作物机制
含雪
稀有度
工具材料
盔甲材料
物品耐久
评论( {{ count }})条
{{ item.user_detail["nick_name"] }}
{{ item.user_detail["title"] }}
暂无内容