bentobox/src/main/resources/config.yml

218 lines
12 KiB
YAML
Raw Normal View History

# BentoBox {$version} configuration file.
#
# This configuration file contains settings that mainly apply to or manage the following elements:
# * Data storage
# * Gamemodes (commands, ...)
2020-03-21 13:10:51 +01:00
# * Internet connectivity (web-based content-enriched features, ...)
#
# Note that this configuration file is dynamic:
# * It gets updated with the newest settings and comments after BentoBox loaded its settings from it.
# * Upon updating BentoBox, new settings will be automatically added into this configuration file.
# * Said settings are distinguishable by a dedicated comment, which looks like this:
# Added since X.Y.Z.
# * They are provided with default values that should not cause issues on live production servers.
# * You can however edit this file while the server is online.
# You will therefore need to run the following command in order to take the changes into account: /bentobox reload.
#
# Here are a few pieces of advice before you get started:
# * You should check out our Wiki, which may provide you useful tips or insights about BentoBox's features.
# Link: https://github.com/BentoBoxWorld/BentoBox/wiki
# * You should edit this configuration file while the server is offline.
# * Moreover, whenever you update BentoBox, you should do so on a test server first.
# This will allow you to configure the new settings beforehand instead of applying them inadvertently on a live production server.
general:
# Default language for new players.
# This is the filename in the locale folder without .yml.
# If this does not exist, the default en-US will be used.
default-language: en-US
2020-01-26 13:46:46 +01:00
# Use economy or not. If true, an economy plugin is required. If false, no money is used or given.
# If there is no economy plugin present anyway, money will be automatically disabled.
use-economy: true
database:
# JSON, MYSQL, MARIADB, MONGODB, SQLITE, POSTGRESQL and YAML(deprecated).
Database transition (#662) - JSON is now the default database type - JSON database files are now pretty-printed - It is now possible to migrate from a database type to another through the use of a command and specific transition database types - It is recommended to move from YAML to JSON. = Commits breakdown = * Proposal to make JSON the default database and retire YAML. * Make JSON file format easier to read. * Fix tests. * Adds a hybrid Yaml2Json database type. This database always tries to use JSON if it is available. If a YAML file is found, it will be loaded and replaced with a JSON file. * Move to generic database transition code * Better comments * Adds transitional database options so admins can choose. Adds Yaml2MySQL option and changes config.yml to add instructions. * Enables full database migration between databases. Adds /bbox migrate command. Adds a number of transition databases. DB starts transition when the server boots up and will migrate organically. The admin can force an immediate update using the bbox migrate command. This operation requires an API breaking change: Addons that use the Config API must now implement ConfigObject in their config class instead of DataObject. This is to differentiate YAML config classes from YAML database classes. If a class is already implements WorldSettings (GameModeAddons), then no change is required because WorldSettings implements ConfigObject now. If an old addon is used that does not implement ConfigObject, BentoBox will not load. * Added null check to YAML deletion * Removed the 2YAML transition dbs because YAML is deprecated. YAML does not support some data structures so conversion could corrupt data. * Fixed some javadoc and added missing DatabaseType#JSON2MARIADB * Renamed package database/transitiondb to database/transition
2019-05-08 21:15:22 +02:00
# Transition database options are:
# YAML2JSON, YAML2MARIADB, YAML2MYSQL, YAML2MONGODB, YAML2SQLITE
# JSON2MARIADB, JSON2MYSQL, JSON2MONGODB, JSON2SQLITE, JSON2POSTGRESQL
# MYSQL2JSON, MARIADB2JSON, MONGODB2JSON, SQLITE2JSON, POSTGRESQL2JSON
2019-06-09 09:37:46 +02:00
# If you need others, please make a feature request.
# Minimum required versions:
# MySQL versions 5.7 or later
# MariaDB versions 10.2.3 or later
# MongoDB versions 3.6 or later
# SQLite versions 3.28 or later
# PostgreSQL versions 9.4 or later
Database transition (#662) - JSON is now the default database type - JSON database files are now pretty-printed - It is now possible to migrate from a database type to another through the use of a command and specific transition database types - It is recommended to move from YAML to JSON. = Commits breakdown = * Proposal to make JSON the default database and retire YAML. * Make JSON file format easier to read. * Fix tests. * Adds a hybrid Yaml2Json database type. This database always tries to use JSON if it is available. If a YAML file is found, it will be loaded and replaced with a JSON file. * Move to generic database transition code * Better comments * Adds transitional database options so admins can choose. Adds Yaml2MySQL option and changes config.yml to add instructions. * Enables full database migration between databases. Adds /bbox migrate command. Adds a number of transition databases. DB starts transition when the server boots up and will migrate organically. The admin can force an immediate update using the bbox migrate command. This operation requires an API breaking change: Addons that use the Config API must now implement ConfigObject in their config class instead of DataObject. This is to differentiate YAML config classes from YAML database classes. If a class is already implements WorldSettings (GameModeAddons), then no change is required because WorldSettings implements ConfigObject now. If an old addon is used that does not implement ConfigObject, BentoBox will not load. * Added null check to YAML deletion * Removed the 2YAML transition dbs because YAML is deprecated. YAML does not support some data structures so conversion could corrupt data. * Fixed some javadoc and added missing DatabaseType#JSON2MARIADB * Renamed package database/transitiondb to database/transition
2019-05-08 21:15:22 +02:00
# Transition options enable migration from one database type to another. Use /bbox migrate.
2019-06-09 09:37:46 +02:00
# YAML and JSON are file-based databases.
2019-01-20 10:10:29 +01:00
# MYSQL might not work with all implementations: if available, use a dedicated database type (e.g. MARIADB).
2019-01-01 21:00:21 +01:00
# If you use MONGODB, you must also run the BSBMongo plugin (not addon).
2018-10-30 17:59:11 +01:00
# See https://github.com/tastybento/bsbMongo/releases/.
2019-06-21 18:46:17 +02:00
# You can find more details in this video: https://youtu.be/FFzCk5-y7-g
Database transition (#662) - JSON is now the default database type - JSON database files are now pretty-printed - It is now possible to migrate from a database type to another through the use of a command and specific transition database types - It is recommended to move from YAML to JSON. = Commits breakdown = * Proposal to make JSON the default database and retire YAML. * Make JSON file format easier to read. * Fix tests. * Adds a hybrid Yaml2Json database type. This database always tries to use JSON if it is available. If a YAML file is found, it will be loaded and replaced with a JSON file. * Move to generic database transition code * Better comments * Adds transitional database options so admins can choose. Adds Yaml2MySQL option and changes config.yml to add instructions. * Enables full database migration between databases. Adds /bbox migrate command. Adds a number of transition databases. DB starts transition when the server boots up and will migrate organically. The admin can force an immediate update using the bbox migrate command. This operation requires an API breaking change: Addons that use the Config API must now implement ConfigObject in their config class instead of DataObject. This is to differentiate YAML config classes from YAML database classes. If a class is already implements WorldSettings (GameModeAddons), then no change is required because WorldSettings implements ConfigObject now. If an old addon is used that does not implement ConfigObject, BentoBox will not load. * Added null check to YAML deletion * Removed the 2YAML transition dbs because YAML is deprecated. YAML does not support some data structures so conversion could corrupt data. * Fixed some javadoc and added missing DatabaseType#JSON2MARIADB * Renamed package database/transitiondb to database/transition
2019-05-08 21:15:22 +02:00
type: JSON
host: localhost
# Port 3306 is MySQL's default. Port 27017 is MongoDB's default.
2017-07-08 02:12:14 +02:00
port: 3306
name: bentobox
2017-07-08 02:12:14 +02:00
username: username
password: password
# How often the data will be saved to file in mins. Default is 5 minutes.
# This helps prevent issues if the server crashes.
# Data is also saved at important points in the game.
backup-period: 5
# How many players will be saved in one tick. Default is 200
# Reduce if you experience lag while saving.
# Do not set this too low or data might get lost!
max-saved-players-per-tick: 20
# How many islands will be saved in one tick. Default is 200
# Reduce if you experience lag while saving.
# Do not set this too low or data might get lost!
max-saved-islands-per-tick: 20
2020-03-21 13:10:51 +01:00
# Enable SSL connection to MongoDB, MariaDB, MySQL and PostgreSQL databases.
# Added since 1.12.0.
use-ssl: false
2020-07-07 22:16:47 +02:00
# Database table prefix. Adds a prefix to the database tables. Not used by flatfile databases.
# Only the characters A-Z, a-z, 0-9 can be used. Invalid characters will become an underscore.
# Set this to a unique value if you are running multiple BentoBox instances that share a database.
2020-07-07 22:16:47 +02:00
# Be careful about length - databases usually have a limit of 63 characters for table lengths
2020-05-01 18:14:03 +02:00
# Added since 1.13.0.
prefix-character: ''
2020-07-07 22:16:47 +02:00
# MongoDB client connection URI to override default connection options.
# See: https://docs.mongodb.com/manual/reference/connection-string/
# Added since 1.14.0.
mongodb-connection-uri: ''
# Allow FTB Autonomous Activator to work (will allow a pseudo player [CoFH] to place and break blocks and hang items)
# Add other fake player names here if required
2018-10-30 17:59:11 +01:00
# /!\ This feature is experimental and might not work as expected or might not work at all.
fakeplayers:
- '[CoFH]'
2018-07-29 22:21:46 +02:00
panel:
2020-07-07 22:16:47 +02:00
# Toggle whether panels should be closed or not when the player clicks anywhere outside of the inventory view.
2018-07-29 22:21:46 +02:00
close-on-click-outside: true
2020-07-07 22:16:47 +02:00
# Defines the Material of the item that fills the gaps (in the header, etc.) of most panels.
# Added since 1.14.0.
filler-material: LIGHT_BLUE_STAINED_GLASS_PANE
# Toggle whether player head texture should be gathered from Mojang API or mc-heads.net cache server.
# Mojang API sometime may be slow and may limit requests to the player data, so this will allow to
# get player heads a bit faster then Mojang API.
# Added since 1.16.0.
use-cache-server: true
# Defines how long player skin texture link is stored into local cache before it is requested again.
# Defined value is in the minutes.
# Value 0 will not clear cache until server restart.
# Added since 1.14.1.
head-cache-time: 60
# Defines a number of player heads requested per tasks.
# Setting it too large may lead to temporarily being blocked from head gatherer API.
# Added since 1.16.0.
heads-per-call: 9
# Defines a number of ticks between each player head request task.
# Setting it too large may lead to temporarily being blocked from head gatherer API.
# Added since 1.16.0.
# /!\ In order to apply the changes made to this option, you must restart your server. Reloading BentoBox or the server won't work.
ticks-between-calls: 10
2019-01-27 10:24:01 +01:00
logs:
# Toggle whether superflat chunks regeneration should be logged in the server logs or not.
# It can be spammy if there are a lot of superflat chunks to regenerate.
# However, as superflat chunks regeneration can be performance-intensive, it is recommended to keep
# this setting set to true, as it will help you know if there are regenerations taking place.
2019-02-22 11:25:39 +01:00
# Added since 1.2.0.
2019-01-27 10:24:01 +01:00
clean-super-flat-chunks: true
2019-06-09 09:37:46 +02:00
# Toggle whether downloading data from GitHub should be logged in the server logs or not.
# Added since 1.5.0.
github-download-data: true
island:
2018-10-25 10:30:27 +02:00
cooldown:
2019-01-27 10:24:01 +01:00
time:
# How long a player must wait until they can rejoin a team island after being kicked in minutes.
# This slows the effectiveness of players repeating challenges
# by repetitively being invited to a team island.
invite: 60
# How long a player must wait until they can coop a player in minutes.
coop: 5
# How long a player must wait until they can trust a player in minutes.
trust: 5
# How long a player must wait until they can ban a player after unbanning them. In minutes.
ban: 10
# How long a player must wait before they can reset their island again in seconds.
reset: 300
options:
# Whether the reset cooldown should be applied when the player creates an island for the first time or not.
2019-02-22 11:25:39 +01:00
# Added since 1.2.0.
2019-01-27 10:24:01 +01:00
set-reset-cooldown-on-create: true
2018-10-25 10:30:27 +02:00
confirmation:
2019-01-27 10:24:01 +01:00
# Time in seconds that players have to confirm sensitive commands, e.g. island reset.
2018-10-25 10:30:27 +02:00
time: 10
commands:
# Ask the player to confirm the command he is using by typing it again.
kick: true
leave: true
reset: true
2019-10-20 15:15:18 +02:00
# Ask the recipient to confirm trust or coop invites.
# Team invites will always require confirmation, for safety concerns.
# Added since 1.8.0.
invites: false
delay:
# Time in seconds that players have to stand still before teleport commands activate, e.g. island go.
2019-08-14 10:11:57 +02:00
time: 0
2018-07-29 22:21:46 +02:00
name:
2019-09-08 16:22:14 +02:00
# Sets the minimum length an island custom name is required to have.
2018-07-29 22:21:46 +02:00
min-length: 4
2019-09-08 16:22:14 +02:00
# Sets the maximum length an island custom name cannot exceed.
2018-07-29 22:21:46 +02:00
max-length: 20
2019-09-08 16:22:14 +02:00
# Requires island custom names to be unique in the gamemode the island is in.
# As a result, only one island per gamemode are allowed to share the same name.
# Note that island names are purely cosmetics and are not used as a way to programmatically identify islands.
# Added since 1.7.0.
uniqueness: false
# Remove hostile mob on teleport box radius
# If hostile mobs are cleared on player teleport, then this sized box will be cleared
# around the player. e.g. 5 means a 10 x 10 x 10 box around the player
# Be careful not to make this too big. Does not cover standard nether or end teleports.
2019-09-08 16:22:14 +02:00
# Added since 1.6.0.
clear-radius: 5
2021-04-25 18:35:45 +02:00
# Minimum nether portal search radius. If this is too low, duplicate portals may appear.
# Vanilla default is 128.
# Added since 1.16.2.
portal-search-radius: 64
2019-09-08 16:22:14 +02:00
# Number of blocks to paste per tick when pasting blueprints.
# Smaller values will help reduce noticeable lag but will make pasting take slightly longer.
# On the contrary, greater values will make pasting take less time, but this benefit is quickly severely impacted by the
# resulting amount of chunks that must be loaded to fulfill the process, which often causes the server to hang out.
2019-12-01 14:10:18 +01:00
paste-speed: 64
# Island deletion: Number of chunks per world to regenerate per second.
# If there is a nether and end then 3x this number will be regenerated per second.
# Smaller values will help reduce noticeable lag but will make deleting take longer.
# A setting of 0 will leave island blocks (not recommended).
2019-09-08 16:22:14 +02:00
# Added since 1.7.0.
delete-speed: 100
2020-05-01 18:14:03 +02:00
deletion:
# Toggles whether islands, when players are resetting them, should be kept in the world or deleted.
# * If set to 'true', whenever a player resets his island, his previous island will become unowned and won't be deleted from the world.
# You can, however, still delete those unowned islands through purging.
# On bigger servers, this can lead to an increasing world size.
# Yet, this allows admins to retrieve a player's old island in case of an improper use of the reset command.
# Admins can indeed re-add the player to his old island by registering him to it.
# * If set to 'false', whenever a player resets his island, his previous island will be deleted from the world.
# This is the default behaviour.
# Added since 1.13.0.
keep-previous-island-on-reset: false
# By default, If the destination is not safe, the plugin will try to search for a safe spot around the destination,
# then it will try to expand the y-coordinate up and down from the destination.
# This setting limits how far the y-coordinate will be expanded.
# If set to 0 or lower, the plugin will not expand the y-coordinate.
# Added since 1.19.1.
safe-spot-search-vertical-range: 400
2019-02-22 11:25:39 +01:00
web:
github:
# Toggle whether BentoBox can connect to GitHub to get data about updates and addons.
# Disabling this will result in the deactivation of the update checker and of some other
# features that rely on the data downloaded from the GitHub API.
# It does not send any data.
# Added since 1.5.0.
download-data: true
# Time in minutes between each connection to the GitHub API.
# This allows for up-to-the-minute information gathering.
2019-08-14 10:11:57 +02:00
# However, as the GitHub API data does not get updated instantly, this value cannot be set to less than 60 minutes.
# Setting this to 0 will make BentoBox download data only at startup.
# Added since 1.5.0.
2020-03-21 13:10:51 +01:00
connection-interval: 120