Skip to content

Global Tasks

Global tasks are server-wide objectives where every player contributes to the same shared progress. Instead of each player having their own copy of a quest, there’s one goal that the entire server works toward together.

“Catch 1000 Pokemon as a community.” “Win 500 battles together.” “Harvest 10,000 berries.” When the server hits the target, everyone gets rewarded.


  1. An admin starts a global task with /globaltask start <task_id>
  2. Boss bars appear for all online players showing progress
  3. Any player’s matching actions contribute to the shared total
  4. When the goal is reached, all online players receive the rewards
  5. Boss bar colors change as progress increases (Blue → Yellow → Green)

Global tasks are displayed via boss bars, not the sidebar tracker used by personal tasks.


Enable in config/journey/config.json:

{
"global_tasks_enabled": true,
"global_tasks_central_server": "survival",
"is_global_tasks_central_server": true
}
SettingDescription
global_tasks_enabledEnable/disable global tasks
global_tasks_central_serverName of the authoritative server
is_global_tasks_central_servertrue on the central server, false on others

For multi-server setups, designate one server as central to prevent conflicts. Other servers set is_global_tasks_central_server: false.


Global tasks go in config/journey/global_tasks/ and use the same format as regular tasks with "global": true.

File: config/journey/global_tasks/community_hunt.json

{
"name": "<gold>Community Pokemon Hunt",
"description": [
"<gray>Work together with all players!",
"<gray>Every catch counts toward the goal."
],
"global": true,
"sequential": "linear",
"repeat_type": "NONE",
"icon": {
"item_id": "minecraft:nether_star"
},
"rewards": [
{
"type": "currency",
"data": {
"currency_id": "impactor:pokedollars",
"amount": 5000
}
}
],
"tasks": [
{
"id": "catch_pokemon",
"name": "<yellow>Catch 100 Pokemon Together",
"event": "POKEMON_CAPTURE",
"filter": "1.0",
"target": 100
},
{
"id": "win_battles",
"name": "<yellow>Win 50 Battles Together",
"event": "BATTLE_VICTORY",
"filter": "q.battle.is_pvw",
"target": 50
}
]
}
{
"name": "<yellow>Daily Community Challenge",
"description": [
"<gray>A new challenge every day!"
],
"global": true,
"repeat_type": "DAILY",
"sequential": "linear",
"icon": {
"item_id": "minecraft:clock"
},
"rewards": [
{
"type": "currency",
"data": {
"currency_id": "impactor:pokedollars",
"amount": 1000
}
}
],
"tasks": [
{
"id": "harvest_berries",
"name": "<yellow>Harvest 200 Berries Together",
"event": "BERRY_HARVESTED",
"filter": "1.0",
"target": 200
}
]
}

Global tasks sync across all servers connected via NATS or Redis (configured through Ceremony). When a player catches a Pokemon on Server A, the progress updates on Server B too.

See Ceremony Integration for NATS/Redis setup.


CommandPermissionDescription
/globaltask start <task_id>journey.globaltaskStart a global task
/globaltask stop <task_id>journey.globaltaskStop a global task
/globaltask listjourney.globaltaskList all global tasks
/globaltask activejourney.globaltaskShow active tasks with progress

  • Keep 2-3 global tasks active at most — too many boss bars clutter the screen
  • Set targets based on your player count (10 active players need different targets than 100)
  • Use DAILY repeat type for regular engagement
  • Announce global tasks in Discord or chat so players know to participate