作者:rebot | 分类:模组
Minecraft 版本: 1.21.1
平台: neoforge
标签: adventure game-mechanics utility
CobbleBoss data packs use the cobbleboss namespace.
Normal Boss files are placed in:
data/cobbleboss/bosses/
Paid multiplayer Boss team files are placed in:
data/cobbleboss/boss_teams/
Main structure:
pack.mcmeta
data/cobbleboss/bosses/
data/cobbleboss/boss_teams/
Recommended file naming:
A Boss JSON controls:
For beginners, understand these parts first:
Most important fields:
unique_idspecies_idrandom_configsRecommended fields:
display_nameglowmovesbattle_modeactions_per_turnscaleOptional fields:
spawn_rulereward_rulepunish_ruleeffort_valuescustom_battle_statsphase_skillsheld_itemsnatureabilityformshield_layersshield_recover_per_turnshield_weaken_turnsunique_idPurpose:
The unique internal ID of the Boss.
Recommendation:
Required.
Notes:
display_namePurpose:
The name shown to players in game.
Recommendation:
Recommended.
Notes:
species_idPurpose:
Defines which Pokemon species the Boss is.
Recommendation:
Required.
Notes:
cobblemon namespace.glowPurpose:
Controls the Boss glowing outline color after it spawns.
Position:
Top-level field.
Recommendation:
Optional.
How it works:
Available colors:
blackdark_bluedark_greendark_aquadark_reddark_purplegoldgraydark_graybluegreenaquaredlight_purpleyellowwhiteNotes:
spawn_rulePurpose:
Controls natural spawning rules.
Recommendation:
Optional.
Important:
For natural spawning, a Boss usually needs:
spawn_locationsspawn_timesspawn_biomes or spawn_structuresspawn_weightNotes:
spawn_biomes and spawn_structures are checked as biome-or-structure matching.reward_rulePurpose:
Controls rewards after players defeat the Boss.
Recommendation:
Optional.
Can contain:
punish_rulePurpose:
Controls punishments after players lose to the Boss.
Recommendation:
Optional.
Can contain:
random_configsPurpose:
Defines one or more possible battle configurations for this Boss.
Recommendation:
Required.
How it works:
spawn_locationsPurpose:
Restricts where the Boss can spawn.
Available values:
landwater_surfaceunderwatercaveskylavaNotes:
spawn_timesPurpose:
Restricts the time period when the Boss can spawn.
Available values:
all_dayearly_morningmorningnoonafternoondusknightmidnightTime mapping:
early_morning: 0 - 2999 ticksmorning: 3000 - 5999 ticksnoon: 6000 - 11999 ticksafternoon: 12000 - 14999 ticksdusk: 15000 - 17999 ticksnight: 18000 - 20999 ticksmidnight: 21000 - 23999 ticksall_day: no time restrictionNotes:
all_day means the Boss can spawn at any time.spawn_biomesPurpose:
Restricts which biomes the Boss can spawn in.
How it works:
# allows all biomes in that tag.Notes:
spawn_structures.spawn_structuresPurpose:
Allows Boss spawning when the player is inside specific structures.
How it works:
Notes:
spawn_weightPurpose:
Controls natural spawn selection weight.
How it works:
Notes:
reward_itemsPurpose:
List of direct reward entries.
How it works:
chance: 0.1, each one has its own 10% chance.reward_items list.Each reward entry can contain:
item_idcountcommandchanceweightweight is only used when the same reward entry is placed inside reward_pools.entries. It is harmless but unnecessary in direct reward_items.
reward_poolsPurpose:
List of reward pools.
How it works:
chance.entries.rolls is greater than 1, the pool chooses that many entries.weight.rolls is greater than 1.Each reward pool can contain:
chancerollsentriesEach pool entry can contain:
item_idcountcommandchanceweightImportant:
chance controls whether the pool gives anything.chance is parsed for compatibility, but pool entries are selected by random weight after the pool succeeds.reward_items.reward_pools.item_idPurpose:
The item given to the player.
Notes:
countPurpose:
The number of items given.
Notes:
commandPurpose:
Executes a command as a reward.
Notes:
{player} placeholder.chancePurpose:
Controls probability.
For direct reward_items:
chance is greater than 0, that custom chance is used.chance is missing or 0, the reward uses the default drop rate from boss-reward.toml.For reward_pools:
chance is greater than 0, that custom chance is used.chance is missing or 0, the pool uses the default drop rate from boss-reward.toml.Meaning:
1 means 100%.0.5 means 50%.0.1 means 10%.rollsPurpose:
Controls how many entries are selected from a successful reward pool.
Notes:
weightPurpose:
Controls selection chance inside a reward pool.
How it works:
Example:
Independent rewards:
"reward_rule": {
"reward_items": [
{
"item_id": "cobblemon:poke_ball",
"count": 3,
"chance": 0.1
},
{
"item_id": "cobblemon:great_ball",
"count": 2,
"chance": 0.1
},
{
"item_id": "cobblemon:ultra_ball",
"count": 1,
"chance": 0.1
}
]
}
One reward from a pool:
"reward_rule": {
"reward_pools": [
{
"chance": 0.1,
"rolls": 1,
"entries": [
{
"item_id": "cobblemon:poke_ball",
"count": 3
},
{
"item_id": "cobblemon:great_ball",
"count": 2
},
{
"item_id": "cobblemon:ultra_ball",
"count": 1
}
]
}
]
}
Weighted pool:
"reward_rule": {
"reward_pools": [
{
"chance": 0.25,
"rolls": 1,
"entries": [
{
"item_id": "minecraft:diamond",
"count": 1,
"weight": 1
},
{
"item_id": "minecraft:emerald",
"count": 3,
"weight": 3
},
{
"command": "give {player} minecraft:gold_ingot 8",
"weight": 5
}
]
}
]
}
Direct rewards and pools can be used together:
"reward_rule": {
"reward_items": [
{
"item_id": "minecraft:gold_ingot",
"count": 2,
"chance": 1.0
}
],
"reward_pools": [
{
"chance": 0.1,
"entries": [
{
"item_id": "cobblemon:poke_ball",
"count": 3
},
{
"item_id": "cobblemon:great_ball",
"count": 2
},
{
"item_id": "cobblemon:ultra_ball",
"count": 1
}
]
}
]
}
punish_itemsPurpose:
List of punishment entries.
Each punishment entry can contain:
levelevsivscommandchancelevelPurpose:
Reduces Pokemon level after losing.
Notes:
evsPurpose:
Reduces effort values.
Available stats:
hpattackdefensespecial_attackspecial_defensespeedNotes:
ivsPurpose:
Reduces individual values.
Available stats:
hpattackdefensespecial_attackspecial_defensespeedNotes:
commandPurpose:
Executes a command as punishment.
Notes:
{player} placeholder.chancePurpose:
Controls the probability of this punishment.
Important:
chance is greater than 0, that custom chance is used.chance is missing or 0, the punishment uses the default penalty chance from boss-penalty.toml.shinyPurpose:
Controls whether the Boss is shiny.
Notes:
true makes the Boss shiny.false makes it normal.effort_valuesPurpose:
Sets the Boss EV spread.
Available stats:
hpattackdefensespecial_attackspecial_defensespeedRules:
custom_battle_statsPurpose:
Overrides or limits Boss battle stats.
Available stats:
hpattackdefensespecial_attackspecial_defensespeedEach stat rule uses:
valuemodevaluePurpose:
The target stat value.
Notes:
modePurpose:
Controls how the stat value is applied.
Available values:
exactminimummaximumMeanings:
exact: use this value directly.minimum: stat will be at least this value.maximum: stat will be at most this value.movesPurpose:
Sets the Boss moves.
Notes:
naturePurpose:
Sets the Boss nature.
Notes:
abilityPurpose:
Sets the Boss ability.
Notes:
formPurpose:
Sets the Boss form.
Notes:
held_itemsPurpose:
Sets possible held items for the Boss.
Notes:
battle_modePurpose:
Sets the Boss battle mode and battle layout.
Available values:
1v1 / one_vs_one2v1 / two_vs_one3v1 / three_vs_one4v1 / four_vs_one5v1 / five_vs_one6v1 / six_vs_oneImportant:
battle_mode does not limit actions_per_turn.
Notes:
actions_per_turn.actions_per_turnPurpose:
Sets how many actions the Boss can take each turn.
Rules:
battle_mode.Notes:
scalePurpose:
Sets the Boss size.
Position:
Inside random_configs.
How it works:
Rules:
Notes:
Purpose:
The Boss shield system gives a Boss extra protection during battle.
How it works:
Important:
The global shield switch in boss-shield.toml must be enabled.
The Boss also needs shield fields inside random_configs.
shield_layersPurpose:
Sets the Boss initial shield layers.
Position:
Inside random_configs.
How it works:
0 means this Boss has no shield.Rules:
Notes:
shield_recover_per_turnPurpose:
Controls how many shield layers the Boss recovers each turn after shield break and weakened state.
Position:
Inside random_configs.
How it works:
0 means shield does not recover.Rules:
Notes:
shield_weaken_turnsPurpose:
Controls how many turns the Boss stays weakened after shield breaks.
Position:
Inside random_configs.
How it works:
Rules:
Notes:
0 means no weakened delay.phase_skillsPurpose:
Changes Boss moves based on HP percentage.
How it works:
Notes:
hp_percentPurpose:
The HP percentage that triggers the phase.
Rules:
Notes:
movesPurpose:
The moves used in this phase.
Notes:
The following stat keys are used in effort_values, evs, ivs, and custom_battle_stats:
hpattackdefensespecial_attackspecial_defensespeedAll configuration files are placed under:
config/cobbleboss/
Unified config files:
level-mapping.jsonpokemon-max-level.jsonboss-spawn.tomlboss-level.tomlboss-reward.tomlboss-penalty.tomlboss-battle-check.tomlboss-capture.tomlboss-immune.tomlboss-music.tomlboss-shield.tomlplayer-level-limit.tomlImportant:
Fabric and NeoForge use the same field names and top-level TOML structure.
If an old NeoForge config was generated before this unified version, delete the old config file or manually move values to the top level.
level-mapping.jsonPurpose:
Maps player Pokemon level to Boss level.
Notes:
pokemon-max-level.jsonPurpose:
Controls Cobblemon's global maximum Pokemon level.
Fields:
configNamemaxPokemonLeveldescriptionNotes:
boss-spawn.tomlPurpose:
Controls natural Boss spawning.
Fields:
enableBossSpawncheckIntervalTicksspawnChanceenableSpawnTimeRandomrandomValueMinrandomValueMaxspawnFrequencyNotes:
checkIntervalTicks range is 100 to 72000.spawnChance range is 0 to 1.randomValueMin and randomValueMax range is 1 to 10000.spawnFrequency range is 0 to 100.boss-level.tomlPurpose:
Controls Boss level calculation.
Fields:
bossLevelMultiplierminBossLevelmaxBossLevelincludePCPokemonscaleByMaxLevelenableCustomLevelMappingenableLevelRandomrandomMinrandomMaxNotes:
bossLevelMultiplier range is 1.0 to 10.0.minBossLevel range is 1 to 100.maxBossLevel range is 50 to 200.enableCustomLevelMapping controls whether level-mapping.json is used.boss-reward.tomlPurpose:
Controls default Boss reward chance.
Fields:
minDropRatemaxDropRatelevelScaleImportant:
Direct reward entries and reward pools with chance greater than 0 use their own chance.
Direct reward entries and reward pools without chance, or with chance 0, use the default drop rate from this config.
Notes:
minDropRate and maxDropRate range is 0 to 1.levelScale range is 1 to 1000.boss-penalty.tomlPurpose:
Controls default punishment chance.
Fields:
enablePenaltyminPenaltyChancemaxPenaltyChancepenaltyLevelScaleImportant:
Punish entries with chance greater than 0 use their own chance.
Punish entries without chance, or with chance 0, use the default penalty chance from this config.
Notes:
minPenaltyChance and maxPenaltyChance range is 0 to 1.penaltyLevelScale range is 1 to 1000.boss-battle-check.tomlPurpose:
Controls Boss battle restriction checks.
Fields:
enableBattleCheckcancelBattleenablePokemonCheckbannedPokemonListenableItemCheckbannedItemsListenableMoveCheckbannedMovesListNotes:
enableBattleCheck is the main switch.cancelBattle controls whether battle is cancelled when banned content is detected.bannedPokemonList uses Pokemon species IDs.bannedItemsList uses item IDs.bannedMovesList uses move IDs.boss-capture.tomlPurpose:
Controls whether Boss Pokemon can be captured.
Fields:
preventBossCaptureshowCaptureMessageNotes:
preventBossCapture should usually stay enabled.showCaptureMessage controls whether players see a message when capture is blocked.boss-immune.tomlPurpose:
Controls whether Boss entities are invulnerable in the world.
Fields:
enableBossImmuneImportant:
This mainly protects Boss entities outside normal battle damage.
It does not mean the Boss is immune to every move inside battle.
Notes:
boss-music.tomlPurpose:
Controls Boss battle music.
Fields:
enableBossBattleMusicstopOnBattleEndImportant:
The music system no longer uses bossBattleMusicSoundId.
When a Boss battle starts, the mod randomly selects a music sound event from:
assets/cobbleboss/sounds.json.sounds.json.Resource packs that are only placed in the resourcepacks folder but not enabled in the client resource pack menu are ignored.
Notes:
cobbleboss:boss_battle_theme.bossBattleMusicSoundId should be regenerated or cleaned up.boss-shield.tomlPurpose:
Controls the global Boss shield system.
Fields:
enableBossShieldsuperEffectiveLayersmoveLayerOverridesMeaning:
enableBossShield: enables or disables Boss shield behavior.superEffectiveLayers: shield layers consumed by super-effective damaging moves.moveLayerOverrides: special move-to-shield-layer rules.Notes:
enableBossShield is false, Boss JSON shield fields will not work.moveLayerOverrides uses move IDs and shield layer values.player-level-limit.tomlPurpose:
Controls player Pokemon level limit.
Fields:
enableLevelLimitmaxPlayerPokemonLevelNotes:
enableLevelLimit enables the player Pokemon level cap.maxPlayerPokemonLevel sets the maximum allowed player Pokemon level.Boss battle music can be customized through resource packs.
How it works:
assets/cobbleboss/sounds.json.Resource pack paths:
pack.mcmeta
assets/cobbleboss/sounds.json
assets/cobbleboss/sounds/music/
Example structure:
my_boss_music_pack.zip
pack.mcmeta
assets/cobbleboss/sounds.json
assets/cobbleboss/sounds/music/boss_1.ogg
assets/cobbleboss/sounds/music/boss_2.ogg
assets/cobbleboss/sounds/music/boss_3.ogg
Example sounds.json:
{
"music.boss_1": {
"category": "music",
"sounds": [
{
"name": "cobbleboss:music/boss_1",
"stream": true
}
]
},
"music.boss_2": {
"category": "music",
"sounds": [
{
"name": "cobbleboss:music/boss_2",
"stream": true
}
]
}
}
Matching files:
assets/cobbleboss/sounds/music/boss_1.ogg
assets/cobbleboss/sounds/music/boss_2.ogg
Sound ID examples:
music.boss_1 in assets/cobbleboss/sounds.json becomes cobbleboss:music.boss_1.music.boss_2 in assets/cobbleboss/sounds.json becomes cobbleboss:music.boss_2.Music detection:
The mod treats a sound event as Boss music if one of these is true:
music..music."category": "music".music/ folder.Notes:
stream: true for music.Main command:
/spawnpokemonbossat
Permission:
Requires administrator permission.
Functions:
createaddbossremovebosssetweightremovelistinfotriggersettextcleartextannouncement enableannouncement textannouncement colorannouncement clearcreatePurpose:
Creates a fixed Boss spawn point.
Parameters:
Notes:
addbossPurpose:
Adds a Boss to a fixed spawn point pool.
Parameters:
Notes:
removebossPurpose:
Removes a Boss from a fixed spawn point pool.
setweightPurpose:
Changes the weight of a Boss in a fixed spawn point pool.
removePurpose:
Deletes a fixed spawn point.
Notes:
listPurpose:
Lists all fixed spawn points.
Shows:
infoPurpose:
Shows detailed information for one spawn point.
Shows:
triggerPurpose:
Manually makes a spawn point ready to spawn again.
Notes:
settextPurpose:
Sets fixed spawn point hologram text.
Supported placeholders:
{id}{level}{time}{x}{y}{z}{dimension}{boss_count}{boss_pool}{active_boss_id}{active_boss}{active_weight}Notes:
| to separate multiple hologram lines.cleartextPurpose:
Clears custom hologram text and restores default hologram behavior.
announcement enablePurpose:
Enables or disables fixed spawn point announcement.
How it works:
true enables announcement.false disables announcement.Notes:
announcement enable with true or false.announcement textPurpose:
Sets custom announcement text.
Supported placeholders:
{boss}{boss_id}{species}{point}{dimension}{x}{y}{z}{position}announcement colorPurpose:
Sets announcement message color.
Available colors:
blackdark_bluedark_greendark_aquadark_reddark_purplegoldgraydark_graybluegreenaquaredlight_purpleyellowwhiteNotes:
gold.announcement clearPurpose:
Restores the default announcement text.
Notes:
Purpose:
Controls selection chance inside one fixed spawn point.
Rules:
Notes:
spawn_rule.spawn_weight.checkpokemonbossPurpose:
Checks which Bosses can spawn at the player's current location.
Shows:
Permission:
Usually available to normal players.
spawnpokemonbossPurpose:
Directly spawns a Boss near the player.
Parameters:
Permission:
Requires administrator permission.
Notes:
spawnpokemonbossatPurpose:
Manages fixed Boss spawn points.
Permission:
Requires administrator permission.
For the simplest setup:
For stricter Boss servers:
custom_battle_stats.actions_per_turn carefully.For casual servers:
actions_per_turn.Possible reasons:
unique_id.species_id.reward_pools.entries.rolls.weight.Possible reasons:
spawn_weight is missing or too low.Possible reasons:
Important:
The mod randomly chooses from built-in music and enabled resource packs.
It does not use bossBattleMusicSoundId.
Possible reasons:
shield_layers is 0 or missing.superEffectiveLayers is set to 0.moveLayerOverrides.Possible reasons:
scale is set too low or too high.Possible reasons:
glow is not set.Possible reasons:
Possible reasons:
bossBattleMusicSoundId is still present.Fix:
CobbleBoss configuration can be understood like this:
unique_id, species_id, display_name, and glow to define Boss identity and appearance.spawn_rule to define where and when it appears.reward_rule and punish_rule to define win and loss results.reward_items for independent reward rolls.reward_pools for "roll once, then choose one reward from this list".random_configs to define stats, moves, battle mode, action count, shield, phase skills, held items, form, ability, shiny state, and size.This is an advanced paid feature.
Data pack path:
data/cobbleboss/boss_teams/
A Boss team file defines a group Boss battle.
Fields:
team_idpokemon_unique_idsspawn_structuresdefeat_rewardspunish_ruleteam_idPurpose:
The unique ID of the Boss team.
Notes:
cobbleboss is used.pokemon_unique_idsPurpose:
The Boss Pokemon unique IDs used by this team.
Notes:
unique_id values.spawn_structuresPurpose:
Controls which structures can trigger this Boss team.
Notes:
defeat_rewardsPurpose:
Rewards after defeating the Boss team.
Fields:
reward_itemsreward_poolsitem_idcountcommandchancerollsweightHow it works:
reward_items behave as independent reward rolls.reward_pools roll once, then randomly choose entries from the pool.Chance note:
If chance is greater than 0, that custom chance is used.
If chance is missing or 0, the default reward chance can be used.
Example:
"defeat_rewards": {
"reward_items": [
{
"item_id": "minecraft:gold_ingot",
"count": 4,
"chance": 1.0
}
],
"reward_pools": [
{
"chance": 0.1,
"rolls": 1,
"entries": [
{
"item_id": "cobblemon:poke_ball",
"count": 3
},
{
"item_id": "cobblemon:great_ball",
"count": 2
},
{
"item_id": "cobblemon:ultra_ball",
"count": 1
}
]
}
]
}
punish_rulePurpose:
Punishments after losing to the Boss team.
Fields:
punish_itemslevelevsivscommandchanceChance note:
If chance is greater than 0, that custom chance is used.
If chance is missing or 0, the default penalty chance can be used.
spawnpokemonbossteamPurpose:
Manually starts a Boss team battle for a player.
Command meaning:
/spawnpokemonbossteam <player> <bossTeamId>
Permission:
Requires administrator permission.
Notes:
bossTeamId can be written with or without namespace.cobbleboss is used.How it works:
Notes:
actions_per_turn should be balanced carefully for team battles.请登录后举报
暂无评论,抢个沙发吧~