Task Items
Task Items
Section titled “Task Items”Task Items are items with embedded quest tracking. Give a player a piece of paper that tracks “Catch 5 Pokemon” and it updates automatically as they play. When the task completes, the item can be removed, kept as a trophy, or transformed into a reward.
How They Work
Section titled “How They Work”- You create a normal task in
config/journey/tasks/ - You give it to a player as a task item using a command
- The item tracks progress using Journey’s event system — same events, same filters
- The item’s name and lore update automatically to show progress
- When complete, the item behaves according to its completion behavior
Giving Task Items
Section titled “Giving Task Items”/journey taskitem give <player> <task_id> <item> [completion_behavior]Examples:
/journey taskitem give @p journey:catch_5_pokemon minecraft:paper/journey taskitem give @p journey:gym_challenge minecraft:diamond KEEP_ITEM/journey taskitem give @p journey:exploration cobblemon:poke_ball REMOVE_ITEM| Parameter | Description |
|---|---|
player | Target player |
task_id | ID of an existing task (must be in config/journey/tasks/) |
item | Base item to use (e.g., minecraft:paper) |
completion_behavior | What happens when the task finishes (default: REMOVE_ITEM) |
Completion Behaviors
Section titled “Completion Behaviors”REMOVE_ITEM (Default)
Section titled “REMOVE_ITEM (Default)”The item is removed from the player’s inventory when the task completes.
Best for: Daily quests, consumable challenges, one-time objectives.
KEEP_ITEM
Section titled “KEEP_ITEM”The item stays in the player’s inventory, marked as completed. The name shows [COMPLETED] and lore shows 100% Complete.
Best for: Achievement trackers, collectibles, trophies.
TRANSFORM_ITEM
Section titled “TRANSFORM_ITEM”The item is replaced with the task’s first reward item (configured via command rewards in the task).
Best for: Progressive items that “evolve” on completion.
Creating Tasks for Task Items
Section titled “Creating Tasks for Task Items”Task items use the same task format as regular tasks. Create the task file first, then give it as an item.
File: config/journey/tasks/catch_5_pokemon.json
{ "name": "<gold>Catch 5 Pokemon", "description": ["<gray>Capture any 5 Pokemon"], "sequential": "linear", "rewards": [], "tasks": [ { "id": "capture_5", "name": "Capture Pokemon", "event": "POKEMON_CAPTURE", "filter": "1.0", "target": 5, "rewards": [] } ]}Then give it:
/journey taskitem give @p journey:catch_5_pokemon minecraft:paper REMOVE_ITEMVisual Display
Section titled “Visual Display”Task items automatically update their name and lore as progress changes:
In-Progress:
§6[Quest] Catch 5 Pokemon§7Progress: §e2/5 §7(§e40%§7)Completed (KEEP_ITEM):
§a[COMPLETED] Catch 5 Pokemon§7Progress: §a5/5 §7(§a100%§7)Updates happen whenever progress changes, subtasks complete, or the task finishes.
Examples
Section titled “Examples”Battle Achievement Tracker
Section titled “Battle Achievement Tracker”Track 100 battle victories, kept as a diamond trophy:
Task: config/journey/tasks/battle_achievement.json
{ "name": "<red>Battle Master", "description": ["<gray>Win 100 battles"], "sequential": "linear", "rewards": [ { "type": "currency", "data": { "currency_id": "impactor:pokedollars", "amount": 5000 } } ], "tasks": [ { "id": "win_battles", "name": "Win Battles", "event": "BATTLE_VICTORY", "filter": "1.0", "target": 100, "rewards": [] } ]}Command:
/journey taskitem give @p journey:battle_achievement minecraft:diamond KEEP_ITEMMulti-Step Gym Quest
Section titled “Multi-Step Gym Quest”Sequential gym challenge that transforms into a badge:
Task: config/journey/tasks/gym_quest.json
{ "name": "<blue>Gym Challenge", "description": ["<gray>Complete the gym challenge"], "sequential": "sequential", "rewards": [ { "type": "command", "data": { "command": "give {player} cobblemon:gym_badge 1" } } ], "tasks": [ { "id": "defeat_trainers", "name": "Defeat 3 Trainers", "event": "BATTLE_VICTORY", "filter": "q.battle.is_pvw == 0.0", "target": 3, "rewards": [] }, { "id": "defeat_leader", "name": "Defeat Gym Leader", "event": "BATTLE_VICTORY", "filter": "q.entity.uuid == 'gym-leader-uuid'", "target": 1, "rewards": [] } ]}Command:
/journey taskitem give @p journey:gym_quest cobblemon:poke_ball TRANSFORM_ITEMZone Exploration Compass
Section titled “Zone Exploration Compass”Track visits to multiple regions in any order:
Task: config/journey/tasks/explore_regions.json
{ "name": "<green>Explorer", "description": ["<gray>Visit all major regions"], "sequential": "linear", "rewards": [], "tasks": [ { "id": "visit_kanto", "name": "Visit Kanto", "event": "ENTER_ZONE", "filter": "q.zone.uuid == 'kanto-zone-uuid'", "target": 1, "rewards": [] }, { "id": "visit_johto", "name": "Visit Johto", "event": "ENTER_ZONE", "filter": "q.zone.uuid == 'johto-zone-uuid'", "target": 1, "rewards": [] } ]}Command:
/journey taskitem give @p journey:explore_regions minecraft:compass KEEP_ITEMCommands
Section titled “Commands”| Command | Permission | Description |
|---|---|---|
/journey taskitem give <player> <task_id> [item] [behavior] | journey.command.taskitem | Create a task item |
/journey taskitem list | journey.command.taskitem | List available task items |
/givetaskitem <player> <item> <task> [behavior] | journey.command.givetaskitem | Simplified task item command |
- Task items must be in the player’s inventory to track progress (not in chests or storage)
- All progression types work:
linear,sequential, andrandomized - All event types and filters work the same as regular tasks
- Keep subtask counts reasonable (3-5) for a good item lore display
- Choose meaningful base items: paper for quests, diamonds for achievements, compasses for exploration
- The task must exist in
config/journey/tasks/before you can give it as an item