Skip to content

Installation Guide

This guide will walk you through installing Journey on your Fabric server and getting it configured for first use.

Before installing Journey, ensure your server meets these requirements:

  • Minecraft Server: 1.21 or higher
  • Fabric Loader: Latest stable version
  • Fabric API: Compatible with your Minecraft version
  • Cobblemon: Latest compatible version
  • Java: 21 or higher
  • Impactor: For economy integration and currency rewards
  • Polymer: For enhanced client-side resource pack management

Download the latest Journey JAR file.

  1. Stop your Fabric server
  2. Place the Journey JAR file in your server’s mods/ directory
  3. Ensure all dependencies are also in the mods/ directory
  4. Start your server

After starting your server, check the console for Journey initialization messages:

[Server thread/INFO] [Journey]: Journey mod loading...
[Server thread/INFO] [Journey]: Event system initialized
[Server thread/INFO] [Journey]: Configuration manager loaded
[Server thread/INFO] [Journey]: Journey mod loaded successfully

You can also verify installation by running:

/journey version

When Journey first starts, it will create the configuration directory structure:

config/
└── journey/
├── config.json # Main configuration
├── tasks/ # Task definitions
├── zones/ # Zone configurations
├── levelables/ # Skill definitions
├── timelines/ # Timeline sequences
└── sources/ # Task source configs

Edit config/journey/config.json to configure basic settings:

{
"version": "1.0.0",
"settings": {
"enable_debug_logging": false,
"task_update_interval": 20,
"zone_check_interval": 10,
"max_concurrent_timelines": 50,
"enable_sidebar": true,
"sidebar_update_interval": 40
},
"database": {
"type": "json",
"auto_save": true,
"save_interval": 300
},
"integrations": {
"cobblemon": {
"enabled": true,
"hook_battles": true,
"hook_captures": true,
"hook_evolutions": true
},
"impactor": {
"enabled": true,
"default_currency": "impactor:pokedollars"
}
}
}

General Settings

  • enable_debug_logging: Show detailed debug information in console
  • task_update_interval: How often to check task progress (in ticks)
  • zone_check_interval: How often to check player zone positions (in ticks)
  • max_concurrent_timelines: Maximum number of timelines that can run simultaneously
  • enable_sidebar: Show task progress in player sidebar
  • sidebar_update_interval: How often to update the sidebar (in ticks)

Database Settings

  • type: Storage type (json or sqlite - JSON recommended for most servers)
  • auto_save: Automatically save player data periodically
  • save_interval: How often to auto-save (in seconds)

Integration Settings Configure which external mods Journey should integrate with and how.

Journey uses Minecraft’s permission system. Set up permissions for your server:

All Journey commands require operator permissions by default. For permission management plugins:

# Example for LuckPerms
journey.admin: true # Full admin access
journey.command.reload: true # Can reload configs
journey.command.give: true # Can give tasks/items
journey.command.debug: true # Access debug commands

Most Journey features work automatically for players, but you may want to restrict certain items:

journey.use.taskitem: true # Can use task items
journey.use.pathfinding: true # Can see pathfinding

Create a simple test task in config/journey/tasks/test_task.json:

{
"name": "<gold>Welcome to Journey!",
"description": ["<gray>This is a test task to verify your installation."],
"sequential": "linear",
"start_requirement": "",
"rewards": [
{
"type": "command",
"data": {
"command": "tellraw {player} {\"text\":\"Journey is working correctly!\",\"color\":\"green\"}"
}
}
],
"icon": {
"item_id": "minecraft:compass"
},
"repeat_type": "NONE",
"tasks": [
{
"id": "say_hello",
"name": "Say Hello",
"description": "Type 'hello' in chat",
"event": "CHAT_MESSAGE",
"event_data": {},
"filter": "q.message.toLowerCase().contains('hello')",
"target": 1,
"rewards": []
}
]
}
  1. Reload Journey: /journey reload
  2. Give yourself the test task: /givetask @s journey:test_task
  3. Type “hello” in chat
  4. You should receive the completion message

Remove the test task file after confirming everything works.

Journey commands not working

  • Verify you have operator permissions
  • Check console for error messages during startup
  • Ensure Fabric API is installed

Config files not generating

  • Check server has write permissions in the config directory
  • Verify Java version is 21 or higher
  • Look for startup errors in console

Tasks not triggering

  • Check task JSON syntax with a JSON validator
  • Verify event filters are correctly formatted
  • Enable debug logging to see event processing

Performance issues

  • Reduce update intervals in config
  • Limit concurrent timelines
  • Check for excessive zone overlap

With Journey installed and tested, you’re ready to:

  1. Learn the configuration structure
  2. Create your first real task
  3. Set up zones for your world
  4. Explore advanced scripting

Journey is now ready to transform your server into an immersive quest experience!