Global Tasks
Global Tasks
Section titled “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.
How They Work
Section titled “How They Work”- An admin starts a global task with
/globaltask start <task_id> - Boss bars appear for all online players showing progress
- Any player’s matching actions contribute to the shared total
- When the goal is reached, all online players receive the rewards
- 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.
Configuration
Section titled “Configuration”Enable in config/journey/config.json:
{ "global_tasks_enabled": true, "global_tasks_central_server": "survival", "is_global_tasks_central_server": true}| Setting | Description |
|---|---|
global_tasks_enabled | Enable/disable global tasks |
global_tasks_central_server | Name of the authoritative server |
is_global_tasks_central_server | true 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.
Creating Global Tasks
Section titled “Creating Global Tasks”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 } ]}Daily Community Challenge
Section titled “Daily Community Challenge”{ "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 } ]}Cross-Server Sync
Section titled “Cross-Server Sync”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.
Commands
Section titled “Commands”| Command | Permission | Description |
|---|---|---|
/globaltask start <task_id> | journey.globaltask | Start a global task |
/globaltask stop <task_id> | journey.globaltask | Stop a global task |
/globaltask list | journey.globaltask | List all global tasks |
/globaltask active | journey.globaltask | Show 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
DAILYrepeat type for regular engagement - Announce global tasks in Discord or chat so players know to participate