pack.mcmeta
data/
└─ cobblemonboss/
└─ bosses/
├─ blastoise.json
├─ charizard.json
└─ venusaur.json
这个数据包包含以下文件:
pack.mcmetadata/cobblemonboss/bosses/blastoise.jsondata/cobblemonboss/bosses/charizard.jsondata/cobblemonboss/bosses/venusaur.json其中:
pack.mcmeta:数据包元数据文件blastoise.json:水箭龟 Boss 数据charizard.json:喷火龙 Boss 数据venusaur.json:妙蛙花 Boss 数据
一个 Boss JSON 定义了 一个 Boss 宝可梦 的完整数据。
它主要控制以下内容:
创建 Boss 时,最重要的是先想好这 4 个部分:
unique_idspecies_iddisplay_namespawn_rulereward_rulepunish_rulerandom_configsmovescustombattlestatsphase_skillsbattle_modeactionsperturnunique_idspecies_idrandom_configsdisplay_namemovesspawn_rulereward_rulepunish_ruleeffort_valuescustombattlestatsphase_skillsbattle_modeactionsperturnheld_itemsnatureabilityform{
"unique_id": "blastoise_water_boss",
"display_name": "§9Boss",
"species_id": "cobblemon:blastoise",
"spawn_rule": {
"spawn_locations": ["cave"],
"spawn_times": ["all_day"],
"spawn_biomes": [
"minecraft:dripstone_caves",
"#minecraft:is_ocean"
],
"spawn_weight": 4
},
"reward_rule": {
"reward_items": [
{
"item_id": "cobblemon:rare_candy",
"count": 10
},
{
"item_id": "cobblemon:rare_candy",
"count": 10,
"chance": 0.1
},
{
"command": "givepokemonother {player} squirtle",
"chance": 0.1
},
{
"command": "givepokemonother {player} squirtle"
}
]
},
"punish_rule": {
"punish_items": [
{
"level": 5,
"chance": 1
},
{
"evs": {
"hp": 1,
"attack": 1,
"defense": 1,
"special_attack": 1,
"special_defense": 1,
"speed": 1
},
"chance": 1
},
{
"ivs": {
"hp": 1,
"attack": 1,
"defense": 1,
"special_attack": 1,
"special_defense": 1,
"speed": 1
},
"chance": 0.01
},
{
"command": "effect give {player} minecraft:hunger 60 0 true",
"chance": 1
}
]
},
"random_configs": [
{
"shiny": false,
"effort_values": {
"hp": 252,
"attack": 0,
"defense": 252,
"special_attack": 0,
"special_defense": 4,
"speed": 0
},
"custom_battle_stats": {
"hp": {
"value": 5000,
"mode": "exact"
},
"attack": {
"value": 1000,
"mode": "maximum"
},
"defense": {
"value": 1000,
"mode": "maximum"
},
"special_attack": {
"value": 1000,
"mode": "maximum"
},
"special_defense": {
"value": 1000,
"mode": "maximum"
},
"speed": {
"value": 1000,
"mode": "minimum"
}
},
"battle_mode": "6v1",
"actions_per_turn": 6,
"moves": ["scald", "icywind", "yawn", "protect"],
"nature": "bold",
"ability": "torrent",
"form": "",
"held_items": ["cobblemon:leftovers"],
"phase_skills": [
{
"hp_percent": 90,
"moves": ["scald", "icywind", "yawn", "toxic"]
},
{
"hp_percent": 80,
"moves": ["waterpulse", "flashcannon", "rest", "protect"]
},
{
"hp_percent": 70,
"moves": ["surf", "darkpulse", "irondefense", "amnesia"]
},
{
"hp_percent": 60,
"moves": ["hydropump", "aurasphere", "protect", "raindance"]
},
{
"hp_percent": 50,
"moves": ["hydrocannon", "blizzard", "shellsmash", "focusenergy"]
}
]
},
{
"shiny": false,
"effort_values": {
"hp": 252,
"attack": 0,
"defense": 252,
"special_attack": 0,
"special_defense": 4,
"speed": 0
},
"custom_battle_stats": {
"hp": {
"value": 5000,
"mode": "exact"
},
"attack": {
"value": 1000,
"mode": "maximum"
},
"defense": {
"value": 1000,
"mode": "maximum"
},
"special_attack": {
"value": 1000,
"mode": "maximum"
},
"special_defense": {
"value": 1000,
"mode": "maximum"
},
"speed": {
"value": 1000,
"mode": "minimum"
}
},
"battle_mode": "5v1",
"actions_per_turn": 5,
"moves": ["rapidspin", "brine", "toxic", "yawn"],
"nature": "bold",
"ability": "torrent",
"form": "",
"held_items": ["cobblemon:leftovers"],
"phase_skills": [
{
"hp_percent": 90,
"moves": ["rapidspin", "brine", "toxic", "yawn"]
},
{
"hp_percent": 80,
"moves": ["waterpulse", "flashcannon", "rest", "protect"]
},
{
"hp_percent": 70,
"moves": ["surf", "dragonpulse", "raindance", "irondefense"]
},
{
"hp_percent": 60,
"moves": ["hydropump", "darkpulse", "protect", "haze"]
},
{
"hp_percent": 50,
"moves": ["hydrocannon", "focusblast", "shellsmash", "focusenergy"]
}
]
},
{
"shiny": false,
"effort_values": {
"hp": 252,
"attack": 0,
"defense": 0,
"special_attack": 252,
"special_defense": 4,
"speed": 0
},
"custom_battle_stats": {
"hp": {
"value": 5000,
"mode": "exact"
},
"attack": {
"value": 1000,
"mode": "maximum"
},
"defense": {
"value": 1000,
"mode": "maximum"
},
"special_attack": {
"value": 1000,
"mode": "maximum"
},
"special_defense": {
"value": 1000,
"mode": "maximum"
},
"speed": {
"value": 1000,
"mode": "minimum"
}
},
"battle_mode": "4v1",
"actions_per_turn": 4,
"moves": ["hydropump", "flashcannon", "shellsmash", "focusenergy"],
"nature": "modest",
"ability": "torrent",
"form": "",
"held_items": ["cobblemon:wise_glasses"],
"phase_skills": [
{
"hp_percent": 90,
"moves": ["icywind", "darkpulse", "yawn", "taunt"]
},
{
"hp_percent": 80,
"moves": ["scald", "flashcannon", "rest", "protect"]
},
{
"hp_percent": 70,
"moves": ["surf", "icebeam", "shellsmash", "raindance"]
},
{
"hp_percent": 60,
"moves": ["hydropump", "dragonpulse", "protect", "focusenergy"]
},
{
"hp_percent": 50,
"moves": ["hydrocannon", "aurasphere", "blizzard", "nastyplot"]
}
]
}
]
}
unique_id用途
Boss 的唯一 ID。
如何理解
这是用于区分此 Boss 与其他 Boss 的内部名称。
建议
必填。
示例
"unique_id": "blastoise_dripstone_caves_boss"
建议
display_name用途
向玩家显示的 Boss 名称。
如何理解
这是玩家在游戏中会看到的名称。
建议
推荐填写。
示例
"display_name": "§9Boss"
注意
species_id用途
Boss 的宝可梦物种 ID。
如何理解
这决定了 Boss 实际上是哪个宝可梦物种。
建议
必填。
示例
"species_id": "cobblemon:blastoise"
spawn_rule用途
定义 Boss 的生成规则。
如何理解
控制 Boss 可以在哪里、何时、在哪些生物群系中生成。
建议
可选。
示例
"spawn_rule": { ... }
reward_rule用途
定义击败 Boss 后的奖励。
建议
可选。
示例
"reward_rule": { ... }
punish_rule用途
定义挑战失败后的惩罚。
建议
可选。
示例
"punish_rule": { ... }
random_configs用途
Boss 的随机战斗配置列表。
如何理解
同一个 Boss 可以有多个变体,生成时会随机选择一个。
建议
必填。
示例
"random_configs": [ ... ]
spawn_rule 生成规则spawn_locations用途
限制 Boss 可以生成的位置类型。
建议
可选。
示例
"spawn_locations": ["cave"]
可用值
| 值 | 含义 |
|---|---|
land |
陆地 |
water_surface |
水面 |
underwater |
水下 |
cave |
洞穴 |
sky |
天空 |
lava |
熔岩区域 |
spawn_times用途
限制 Boss 可以生成的时间段。
建议
可选。
示例
"spawn_times": ["all_day"]
或
"spawn_times": ["night", "midnight"]
时间段由 Minecraft 服务器世界时间决定。
当前实现使用以下逻辑:
long dayTime = level.getDayTime() % 24000;
if (dayTime >= 0 && dayTime = 3000 && dayTime = 6000 && dayTime = 12000 && dayTime = 15000 && dayTime = 18000 && dayTime < 21000) {
return night;
} else {
return midnight;
}
这意味着实际的时间映射是:
| 值 | 游戏刻范围 | 含义 |
|---|---|---|
all_day |
特殊值 | 任何时间均可生成 |
early_morning |
0 - 2999 |
清晨 |
morning |
3000 - 5999 |
早晨 |
noon |
6000 - 11999 |
中午 / 白天 |
afternoon |
12000 - 14999 |
下午 |
dusk |
15000 - 17999 |
黄昏 |
night |
18000 - 20999 |
夜晚 |
midnight |
21000 - 23999 |
午夜 |
spawn_times 的重要说明24000 游戏刻level.getDayTime() % 24000 检查当前时间all_day 是一个特殊值,表示没有时间限制morning、night、midnight 等真实时间段之一all_day 通常在生成规则检查逻辑中被处理为“始终允许”仅在夜晚生成:
"spawn_times": ["night"]
仅在深夜生成:
"spawn_times": ["midnight"]
在黄昏和夜晚都生成:
"spawn_times": ["dusk", "night"]
任何时间都生成:
"spawn_times": ["all_day"]
spawn_biomes用途
限制 Boss 可以生成的生物群系。
建议
可选。
示例
"spawn_biomes": [
"minecraft:dripstone_caves",
"#minecraft:is_ocean"
]
两种写法
普通生物群系:
"minecraft:dripstone_caves"
生物群系标签:
"#minecraft:is_ocean"
注意
# 开头的生物群系标签表示可以在该标签下的所有生物群系生成spawn_weight用途
控制此 Boss 的生成权重。
建议
可选。
示例
"spawn_weight": 4
注意
reward_rule 奖励规则reward_items用途
奖励条目列表。
建议
如果需要奖励,请填写此项。
示例
"reward_items": [
{
"item_id": "cobblemon:rare_candy",
"count": 10
}
]
item_id用途
奖励物品。
示例
{
"item_id": "cobblemon:rare_candy"
}
注意
count用途
物品数量。
示例
{
"item_id": "cobblemon:rare_candy",
"count": 10
}
注意
command用途
执行一个命令作为奖励。
示例
{
"command": "givepokemonother { 友情链接: 网易我的世界 | 泰拉瑞亚 | ocent云计算 | 米饭Minecraft插件文档 | 友链合作
历史访问人数:176,173 | 历史访问人次:277,257
今日访问人数:13,211 | 今日访问人次:15,150
昨日访问人数:23,567 | 昨日访问人次:27,193
Copyright © 2019-2026 我的世界服务器列表站. All rights reserved.
❤ Powered by GermMC 京ICP备17023959号-6