Interactive Bounty Board Builder
Interactive Bounty Board Builder
Section titled “Interactive Bounty Board Builder”Create Journey bounty board configurations without writing JSON manually. This interactive builder helps you create command-accessed rotating task boards through an easy-to-use form.
Board Information
Task Pool
Tasks are selected randomly from the poolRotation Settings
JSON Preview
How to Use
Section titled “How to Use”- Fill in board details - ID, display name, description
- Add tasks to pool - list task IDs
- Set rotation interval - in ticks (20 ticks = 1 second)
- Configure display settings - how many tasks to show
- Copy the generated JSON to your clipboard
- Save to
config/journey/bounty_boards/your-board-name.json
Bounty Board Configuration Tips
Section titled “Bounty Board Configuration Tips”Board IDs
Section titled “Board IDs”- Use lowercase with underscores:
town_board - Keep it descriptive and unique
- No namespacing needed (just the ID)
Task Pools
Section titled “Task Pools”Task pools are simple arrays of task IDs:
{ "taskPool": [ "journey:catch_pokemon", "journey:win_battles", "journey:harvest_berries" ]}Pool Guidelines:
- Pool should be 2-3x larger than displayed tasks
- All tasks have equal chance of appearing
- Tasks are selected randomly on rotation
Rotation Intervals
Section titled “Rotation Intervals”Common interval values (in ticks, 20 ticks = 1 second):
// 1 hour"rotationInterval": 72000
// 6 hours"rotationInterval": 432000
// 12 hours"rotationInterval": 864000
// 24 hours (daily)"rotationInterval": 1728000
// 7 days (weekly)"rotationInterval": 12096000Display Settings
Section titled “Display Settings”Configure how many tasks appear at once:
{ "displayedTasks": 3 // Show 3 tasks at a time}Recommendations:
- Small boards: 1-3 tasks
- Medium boards: 3-5 tasks
- Large boards: 5-10 tasks
Complete Examples
Section titled “Complete Examples”Town Daily Board
Section titled “Town Daily Board”{ "id": "town_board", "name": "<gold>Town Bulletin Board", "description": [ "<gray>Daily tasks from the townspeople", "<gray>Refreshes every 24 hours" ], "displayedTasks": 3, "rotationInterval": 1728000, "lastRotation": 1761311119724, "taskPool": [ "journey:catch_any_pokemon", "journey:harvest_oran_berries", "journey:win_wild_battles", "journey:level_up_pokemon", "journey:heal_pokemon", "journey:explore_zones" ]}Weekly Challenge Board
Section titled “Weekly Challenge Board”{ "id": "weekly_challenge_board", "name": "<light_purple>Weekly Challenges", "description": [ "<gray>Difficult challenges with great rewards", "<gray>Refreshes every 7 days" ], "displayedTasks": 2, "rotationInterval": 12096000, "lastRotation": 1761311119724, "taskPool": [ "journey:legendary_hunt", "journey:master_battles", "journey:shiny_collection", "journey:raid_completion" ]}Quick Tasks Board
Section titled “Quick Tasks Board”{ "id": "quick_tasks_board", "name": "<green>Quick Tasks", "description": [ "<gray>Simple tasks that refresh every 6 hours", "<gray>Perfect for quick rewards!" ], "displayedTasks": 5, "rotationInterval": 432000, "lastRotation": 1761311119724, "taskPool": [ "journey:catch_5_pokemon", "journey:win_3_battles", "journey:harvest_10_berries", "journey:heal_pokemon", "journey:talk_to_npc", "journey:visit_zone", "journey:break_100_blocks", "journey:place_100_blocks", "journey:fish_10_items", "journey:trade_with_villager" ]}Accessing Boards
Section titled “Accessing Boards”Bounty boards are command-accessed. Servers can hook these commands to any trigger:
Built-in Commands
Section titled “Built-in Commands”# Open a specific board/journey bountyboard open <board_id>
# List available boards/journey bountyboard listServer Integration Examples
Section titled “Server Integration Examples”NPC Integration:
{ "right_click_script": [ "q.player.execute_command('/journey bountyboard open town_board');" ]}Sign Integration:
- Use clickable sign mod/plugin
- Trigger command:
/journey bountyboard open town_board
GUI Button:
- Add button action
- Command:
/journey bountyboard open town_board
Commands
Section titled “Commands”Board Management
Section titled “Board Management”# Reload bounty boards/journey bountyboard reload
# Force rotate a board/journey bountyboard rotate <board_id>
# View board info/journey bountyboard info <board_id>
# List all boards/journey bountyboard listTips & Best Practices
Section titled “Tips & Best Practices”✅ Varied task pool: Include tasks of different types and difficulties
✅ Appropriate rotation: Match rotation frequency to task difficulty
- Quick tasks: 6h-12h rotations (432000-864000 ticks)
- Medium tasks: Daily rotations (1728000 ticks)
- Hard tasks: Weekly rotations (12096000 ticks)
✅ Clear access: Make it obvious how players access the board (NPC, sign, etc)
✅ Test rotation: Verify rotation timing works as expected
✅ Balance pool size: Ensure pool is 2-3x larger than displayed tasks
Troubleshooting
Section titled “Troubleshooting”Board Not Opening
Section titled “Board Not Opening”- Check board ID matches exactly (case-sensitive)
- Verify config file exists and is valid JSON
- Ensure player has required permissions
Tasks Not Rotating
Section titled “Tasks Not Rotating”- Verify rotation interval is in ticks (20 ticks = 1 second)
- Check server has been running long enough
- Use
/bountyboard rotateto manually trigger - Check server logs for errors
Players Can’t Access Board
Section titled “Players Can’t Access Board”- Verify the command trigger is set up correctly
- Check server has properly hooked the access method (NPC, sign, etc)
- Ensure players know how to access the board
Storage Location
Section titled “Storage Location”Board Definitions:
config/journey/bounty_boards/<name>.jsonImportant: The lastRotation field is auto-generated by the server. You don’t need to include it when creating new boards - it will be added automatically.