Skip to main content
The config.yml file is the primary configuration file for Hubbly. It controls all aspects of your hub server including movement features, player settings, world events, and more.

General Settings

debug
boolean
default:"false"
Enables debug mode for troubleshooting issues. Set to true to see detailed console logs.
prefix
string
default:"&e&lHubbly &7&l>&r"
The plugin prefix used in messages sent to players. Supports color codes and hex colors.
check_for_update
boolean
default:"true"
Checks for plugin updates on server startup.
notify_on_no_update
boolean
default:"false"
Send a message if no update is available.
default_language
string
default:"en"
The default language for plugin messages. Available: en, pt

Database Configuration

database.enabled
boolean
default:"true"
Enable MySQL database storage for player data.
database.host
string
default:"localhost"
Database host address.
database.port
integer
default:"3306"
Database port number.
database.database
string
default:"minecraft"
Database name.
database.username
string
default:"hubbly"
Database username for authentication.
database.password
string
default:"hubblypassword"
Database password for authentication.
Always use a strong password for your database and never share your credentials.

Movement Features

Launchpad

launchpad.enabled
boolean
default:"true"
Enable launchpad functionality.
launchpad.type
material
default:"SLIME_BLOCK"
The block type that acts as a launchpad.
launchpad.power
double
default:"2"
Horizontal launch power multiplier.
launchpad.power_y
double
default:"0.5"
Vertical launch power multiplier.
launchpad.cooldown
integer
default:"2"
Cooldown in seconds between launchpad uses.
launchpad.sound
string
default:"entity.firework_rocket.blast"
Sound effect played when using a launchpad.

Double Jump

double_jump.enabled
boolean
default:"true"
Enable double jump ability for players.
double_jump.power
double
default:"1.5"
Horizontal power of the double jump.
double_jump.power_y
double
default:"0.5"
Vertical power of the double jump.
double_jump.cooldown
integer
default:"2"
Cooldown in seconds between double jumps.
Cooldown values must be integers only.

Player Visibility

playervisibility.enabled
boolean
default:"true"
Enable the player visibility toggle feature.
playervisibility.visible.item
material
default:"LIME_DYE"
Item material when players are visible.
playervisibility.visible.text
string
default:"&rPlayers: &aVisible"
Display text when players are visible.
playervisibility.hidden.item
material
default:"GRAY_DYE"
Item material when players are hidden.
playervisibility.hidden.text
string
default:"&rPlayers: &cHidden"
Display text when players are hidden.

Movement Items

Enderbow

movementitems.enderbow.material
material
default:"BOW"
Material for the enderbow. Do not change this.
movementitems.enderbow.enabled
boolean
default:"false"
Enable the enderbow item.
movementitems.enderbow.name
string
default:"<#A020F0>Enderbow"
Display name of the enderbow. Supports hex colors.
movementitems.enderbow.cooldown
integer
default:"3"
Cooldown in seconds.

Trident

movementitems.trident.material
material
default:"TRIDENT"
Material for the trident. Do not change this.
movementitems.trident.enabled
boolean
default:"true"
Enable the trident movement item.
movementitems.trident.name
string
default:"<#40E0D0>Trident"
Display name of the trident.
movementitems.trident.cooldown
integer
default:"3"
Cooldown in seconds.

Grappling Hook

movementitems.grappling_hook.material
material
default:"FISHING_ROD"
Material for the grappling hook. Do not change this.
movementitems.grappling_hook.enabled
boolean
default:"true"
Enable the grappling hook.
movementitems.grappling_hook.name
string
default:"<#FFFF00>Grappling Hook"
Display name of the grappling hook.
movementitems.grappling_hook.cooldown
integer
default:"3"
Cooldown in seconds.

Aspect of the End (AOTE)

movementitems.aote.material
material
default:"DIAMOND_SWORD"
Material for the AOTE. You can change this.
movementitems.aote.enabled
boolean
default:"true"
Enable the Aspect of the End teleport ability.
movementitems.aote.name
string
default:"<#2d0043>Aspect of the End"
Display name of the AOTE.
movementitems.aote.cooldown
integer
default:"1"
Cooldown in seconds.

Teleportation

Anti-Void

antivoid.enabled
boolean
default:"true"
Automatically teleport players to spawn when they fall into the void.

Spawn Location

spawn.world
string
default:"world"
World name for the spawn location.
spawn.x
double
default:"0"
X coordinate of spawn.
spawn.y
double
default:"200"
Y coordinate of spawn.
spawn.z
double
default:"0"
Z coordinate of spawn.
spawn.yaw
float
default:"0"
Yaw rotation of spawn. Auto-rounds to: -135, -90, -45, 0, 45, 90, 135 when using /setspawn.
spawn.pitch
float
default:"0"
Pitch rotation of spawn.
spawn.timer
integer
default:"2"
Delay in seconds before teleporting to spawn.
spawn.sound
string
default:"entity.firework_rocket.blast"
Sound played when teleporting to spawn.
Yaw and pitch will round to specific values when using /setspawn, but you can manually override this in the config.

Player Settings

player.forceinventory
boolean
default:"true"
Force players to have a specific inventory on join.

Experience Bar

player.experience.enabled
boolean
default:"true"
Enable custom experience level display.
player.experience.level
integer
default:"2025"
The experience level to display.
player.experience.progress
float
default:"1.0"
Experience bar progress (0.0 - 1.0). Set to "YEAR" to base progress on time elapsed in the year.

Flight

player.fly.enabled
boolean
default:"true"
Allow players to fly in the hub.

Join/Leave Messages

player.join_message.enabled
boolean
default:"true"
Enable custom join messages.
player.join_message.message
string
default:"%name% joined"
Join message format. Use %name% for player name.
player.leave_message.enabled
boolean
default:"true"
Enable custom leave messages.
player.leave_message.message
string
default:"%name% left"
Leave message format. Use %name% for player name.

Boss Bar

player.bossbar.enabled
boolean
default:"true"
Enable animated boss bar display.
player.bossbar.color
string
default:"PURPLE"
Boss bar color. Available: BLUE, GREEN, PINK, PURPLE, RED, WHITE, YELLOW.
player.bossbar.animation.change-interval
integer
default:"40"
Interval in ticks between text changes (20 ticks = 1 second).
player.bossbar.animation.texts
array
List of texts to cycle through. Supports color codes and hex colors.
texts:
  - '&6&lWelcome'
  - '<#69b320>&lHello!'

Actions on Join

Define actions that execute when players join the server.
  • [TITLE] - Display title to player: [TITLE] <title>;<subtitle>;<fadeIn>;<stay>;<fadeOut>
  • [SOUND] - Play sound: [SOUND] <sound_name>
  • [FIREWORK] - Spawn firework: [FIREWORK] <type>;<red>;<green>;<blue>;<power>
  • [ITEM] - Give item: [ITEM] <item_id>;<slot>
actions_on_join:
  - '[TITLE] <#FFDF00>Hubbly;configure me;20;70;20'
  - '[SOUND] block.note_block.chime'
  - '[FIREWORK] BALL;255;0;255;2'
  - '[ITEM] socials;1'
  - '[ITEM] compass;5'
  - '[ITEM] shop;9'

World Event Manager

Control which events are cancelled in your hub world.
cancel_events.block_place
boolean
default:"true"
Cancel block placement.
cancel_events.block_break
boolean
default:"true"
Cancel block breaking.
cancel_events.interact
boolean
default:"true"
Cancel block/entity interactions.
cancel_events.damage
boolean
default:"true"
Cancel player damage.
cancel_events.weather
boolean
default:"true"
Cancel weather changes.
cancel_events.item_drop
boolean
default:"true"
Cancel item dropping.
cancel_events.item_pickup
boolean
default:"true"
Cancel item pickup.
cancel_events.item_throw
boolean
default:"true"
Cancel item throwing.
cancel_events.hunger
boolean
default:"true"
Cancel hunger depletion.
cancel_events.mob_spawn
boolean
default:"true"
Cancel mob spawning.
cancel_events.block_burn
boolean
default:"true"
Cancel block burning.
cancel_events.death_messages
boolean
default:"true"
Cancel death messages.
cancel_events.leaf_decay
boolean
default:"true"
Cancel leaf decay.
cancel_events.projectiles
boolean
default:"false"
Cancel projectile usage.
cancel_events.animal_eat
boolean
default:"false"
Cancel animals eating grass.

Anti World Download

anti_world_download.enabled
boolean
default:"true"
Enable protection against world download mods.
anti_world_download.notify_admin
boolean
default:"true"
Notify admins when a world download attempt is detected.

Chat Management

lock_chat
boolean
default:"false"
Lock the chat so only operators can send messages.

Blocked Words

blocked_words.enabled
boolean
default:"false"
Enable word filtering.
blocked_words.method
string
default:""
Filter method: STAR (replace with ****) or CANCEL (block message).
blocked_words.words
array
List of words to filter.
words:
  - 'Fuck'

Blocked Commands

blocked_commands
array
List of commands to block for non-operators.
blocked_commands:
  - 'pl'
  - 'plugins'
  - 'op'
  - 'stop'
  - 'reload'

Announcements

announcements.enabled
boolean
default:"true"
Enable automatic announcements.
announcements.interval
integer
default:"30"
Interval in seconds between announcements.
announcements.global
boolean
default:"true"
Send announcements even if the player is in a disabled world.
announcements.messages
object
Define announcement messages. Each message is an array of lines.
messages:
  message1:
    - '<#FF00FF><center> Test</center>'
    - '<center><#084CFB>This is an announcement</center>'
  message2:
    - 'Test2'
    - 'This is a second announcement'
You can use BirdFlop RGB to create cool gradient text!

Complete Example

debug: false
prefix: '&e&lHubbly &7&l>&r'
check_for_update: true
notify_on_no_update: false
default_language: en

database:
  enabled: true
  host: localhost
  port: 3306
  database: minecraft
  username: hubbly
  password: hubblypassword

disabled-worlds:
  - 'world_nether'

invert: false

launchpad:
  enabled: true
  type: "SLIME_BLOCK"
  power: 2
  power_y: 0.5
  cooldown: 2
  sound: entity.firework_rocket.blast

double_jump:
  enabled: true
  power: 1.5
  power_y: 0.5
  cooldown: 2

playervisibility:
  enabled: true
  visible:
    item: 'LIME_DYE'
    text: '&rPlayers: &aVisible'
  hidden:
    item: 'GRAY_DYE'
    text: '&rPlayers: &cHidden'

antivoid:
  enabled: true

spawn:
  world: "world"
  x: 0
  y: 200
  z: 0
  yaw: 0
  pitch: 0
  timer: 2
  sound: entity.firework_rocket.blast

player:
  forceinventory: true
  experience:
    enabled: true
    level: 2025
    progress: 1.0
  fly:
    enabled: true
  join_message:
    enabled: true
    message: "%name% joined"
  leave_message:
    enabled: true
    message: "%name% left"
  bossbar:
    enabled: true
    color: "PURPLE"
    animation:
      change-interval: 40
      texts:
        - '&6&lWelcome'
        - '<#69b320>&lHello!'

actions_on_join:
  - '[TITLE] <#FFDF00>Hubbly;configure me;20;70;20'
  - '[SOUND] block.note_block.chime'
  - '[FIREWORK] BALL;255;0;255;2'
  - '[ITEM] socials;1'
  - '[ITEM] compass;5'

cancel_events:
  block_place: true
  block_break: true
  interact: true
  damage: true
  weather: true
  item_drop: true
  item_pickup: true
  item_throw: true
  hunger: true
  mob_spawn: true
  block_burn: true
  death_messages: true
  leaf_decay: true
  projectiles: false
  animal_eat: false

anti_world_download:
  enabled: true
  notify_admin: true

lock_chat: false

blocked_words:
  enabled: false
  method: ''
  words:
    - 'Example'

blocked_commands:
  - 'pl'
  - 'plugins'
  - 'op'

announcements:
  enabled: true
  interval: 30
  global: true
  messages:
    message1:
      - '<#FF00FF><center>Welcome!</center>'

Build docs developers (and LLMs) love