跳到主要内容

抽奖奖池

注册表:system:lottery_pools。一次确认抽取一个完整奖品包,服务端按整数权重采样,模型不选择奖品。

字段类型必填默认值说明
label文本组件否空组件启用时必须非空。
costsSaturn 费用数组否[]空列表表示免费抽取。
entries奖品条目数组否[]启用时至少一项。
enabled布尔值否true可禁用覆盖。

奖品条目​

字段类型必填默认值说明
reward奖励快照对象是—包含 id、label、items;不是另一个奖励表的字符串引用。
weight正整数否1概率为本项权重 / 全部权重之和。
reward.id资源 ID是—奖品快照的标识符。
reward.label文本组件是—奖品名称。
reward.items物品堆模板数组是—1~36 项。

示例​

data/example/system/lottery_pools/supplies.json
{
"label": {
"text": "日常补给"
},
"costs": [
{
"type": "saturn:item",
"items": [
"minecraft:emerald"
],
"amount": 2
}
],
"entries": [
{
"weight": 3,
"reward": {
"id": "example:food",
"label": {
"text": "口粮"
},
"items": [
{
"id": "minecraft:bread",
"count": 8
}
]
}
},
{
"weight": 1,
"reward": {
"id": "example:diamond",
"label": {
"text": "钻石"
},
"items": [
{
"id": "minecraft:diamond"
}
]
}
}
]
}

两个奖品的概率分别为 75% 与 25%。加入 data/system/tags/system/lottery_pools/default.json 的 values,或由抽奖模块的 pools 选择。空 costs 允许重复免费抽取,请按玩法设计费用;entries 和奖品包内容不由客户端决定。