Classic Missions
📖 Mission Creation Guide for Cobblemissions
This guide will teach you how to create your own custom missions for the Cobblemissions mod. Missions are defined using JSON files located in the config\CobbleMissions\Missions folder.
For example: config\CobbleMissions\Missions\my_custom_mission.json
A mission file has the following general structure:
id
Unique identifier for the mission. Must be different for each mission.
"id": 1
page
The page where the mission appears in the UI menu. Useful for organizing missions by category or pages.
"page": 1
repeatable
Indicates whether the mission can be completed multiple times.
"repeatable": true
cooldown
Indicates whether the mission has a cooldown period after completion.
"cooldown": true
cooldownDuration
Duration of the cooldown. Formats: "15s", "5m", "2h", "1d", "1w". Can be combined: "1d2h30m".
"cooldownDuration": "15s"
{
"id": 1,
"page": 1,
"repeatable": true,
"cooldown": true,
"cooldownDuration": "15s",
"display": { ... },
"id": 15,
"tasks": [ ... ],
"rewards": [ ... ],
"requirement": [ ... ]
}🖥️ Display section: UI visualization
Defines how the mission will appear in the user menu.
material
Item material representing the mission in the UI.
"material": "poke_ball"
title
Title displayed in the menu. Can use placeholders like %status%.
"title": "Capture Mission
[%status%]"
slot
Position in the user interface where the mission will appear (0–53). Assigning a negative slot will prevent it from being displayed in the UI. Example: -1
"slot": 10
lore
Additional text shown on hover. Can include placeholders and color formatting.
See example in JSON
amount
Amount of the item displayed in the UI.
"amount": 1
customModelData
CustomModelData value for custom models.
"customModelData": 0
🎯 Tasks section: Mission Objectives
A mission can have one or more tasks. Each task must be defined within an array.
Capture
Goal: Capture a specific number of Pokémon.
Fields:
mode:"specific"(exact species) or"any"(any Pokémon).spec: Pokémon name (required ifmodeis"specific").amount: Number to capture.
Defeat
Goal: Defeat Pokémon in battle.
Fields:
mode:"specific"or"any".spec: Pokémon name.amount: Number to defeat.
Fish
Goal: Fish a number of Pokémon.
Fields:
mode:"specific"or"any".spec: Pokémon name.amount: Number to fish.
Scanning
Goal: Scan Pokémon entries in the Pokédex.
Fields:
mode:"specific"or"any".spec: Pokémon name (if"specific").amount: Number of scans.
Apricorn
Goal: Harvest Apricorns from trees.
Fields:
apricorn: Apricorn color ("red","blue", etc.) or"any".amount: Number to harvest.
Berry
Goal: Harvest berries from plants.
Fields:
berry: Berry ID (e.g.,"oran","cobblemon:oran_berry") or"any".amount: Number to harvest.
Evolution
Goal: Evolve Pokémon.
Fields:
mode:"specific"or"any".spec: Pre-evolution Pokémon name.evolutionType:"level","trade","item","block", or"any".amount: Number of evolutions.
Fossil
Goal: Revive Pokémon from fossils.
Fields:
mode:"specific"or"any".spec: Resulting Pokémon name.amount: Number to revive.
Held Item
Goal: Give held items to Pokémon
Fields:
mode:"specific"or"any".item: Item ID (e.g.,"rare_candy") or"any".amount: Number of times.
Candy Use
Goal: Use experience candies.
Fields:
candy: Candy ID (e.g.,"exp_candy_s","rare_candy") or"any".amount: Number used.
Hatch
Goal: Hatch eggs.
Fields:
mode:"specific"or"any".spec: Pokémon hatched.amount: Number of eggs.
Level Up
Goal: Raise Pokémon to a specific level.
Fields:
spec: Pokémon name (optional; omit or use"any"for any Pokémon).level: Target level (e.g.,50).amount: Number of Pokémon to level up.
Gained
Goal: Obtain Pokémon through non-capture means (trades, gifts, events, etc.).
Fields:
spec: Pokémon name or"any".amount: Number obtained.
Battle
Goal: Win or lose battles against NPCs or players.
Fields:
battleType:"battle_winners"(wins) or"battle_losers"(losses).mode:"specific"or"any".actor:"npc","player", or"pokemon"(wild).spec: Specific opponent name (if"specific").amount: Number of battles.
Break Block
break_block (Break Blocks)
Goal: Break Minecraft blocks.
Fields:
block: Block ID (e.g.,"minecraft:stone","cobblemon:apricorn_tree_red").amount: Number broken.
🎨 Specs, Further customize and specify your missions
species
Pokémon species name. This is written without a key and should be the first value.
Pikachu
level / lvl
Exact Pokémon level required.
lvl:25
shiny
Whether the Pokémon must be shiny.
shiny:true
move / moves
Pokémon must know all listed moves.
moves:Thunderbolt,Quick Attack
ability
Required active ability.
ability:Static
abilities
Pokémon must have all listed abilities.
abilities:Static,Lightning Rod
friendship
Required friendship value.
friendship:200
gender
Pokémon gender. Automatically capitalized.
gender:Male
type
Pokémon must contain this elemental type.
type:Electric
types
Pokémon must contain all listed types.
types:Electric,Steel
nature
Pokémon nature. Automatically capitalized.
nature:Timid
1. mission (Complete Prior Missions)
Description: Player must have completed one or more prior missions.
Value: Array of mission IDs. Empty (
[]) means no mission requirement.Example:
2. permission (Player Permission)
Description: Player must have specified permission node (requires LuckPerms or similar).
Value: Array of permission strings.
Example:
✔️ Full Example Mission
Last updated