Configurationπ
The configuration of BetonQuest is mainly done in the config.yml
file. All of its options are described on this page.
There is also additional information about backups, updates and database transfers.
If you fail to understand options just keep their default values. You can always change them when
you have gained a more complete understanding of this plugin.
Config Optionsπ
Warning
Do not touch version:
option! It may corrupt your files!
MySQL Databaseπ
Setupπ
In order to use a MySQL Database for saving all the data you need to fill out the mysql config section.
1 2 3 4 5 6 7 8 9 |
|
Migrating a database from SQLite to MySQL and backπ
Follow these few simple steps to migrate your database easily:
- Create a backup with /q backup command.
- Extract database backup from it.
- Turn the server off.
- Place the database-backup.yml file inside the plugin's directory.
- Edit which database type you want to use by setting the
enabled
option in themysql
section to true or false. - Start the server.
- Check for errors.
- If there are no errors, enjoy your migrated database.
- If there are any errors, post them to the developer or try to fix them if you know how.
Default Languageπ
language:
is the default translation of the plugin for every new player. Currently, there are 9 languages available:
English (en), Polish (pl), German (de), French (fr), Spanish (es), Chinese (cn), Dutch (nl), Italian (it) and Hungarian (hu).
Updatingπ
The update
section controls the Auto-Updater. It has the following settings:
enabled
(defaulttrue
). Enables or disables the Updater. If set to false, it is not possible to update with the updater and no version checks are executed.strategy
(defaultMINOR
). The update strategy is the most important feature of the Auto-Updater. An explanation is available here.automatic
(defaulttrue
). If true the updater will download new Versions automatically. Otherwise, the updater will only download new versions when the update command is executed. Advice is available here.
Journal slotsπ
default_journal_slot
is the inventory slot in which the journal will appear after using the /journal
command.
BetonQuest will try to move items out of the way if the slot is occupied. If the inventory is full the journal will not
be added. You can disable this behaviour by setting the option to -1
. BetonQuest will then just use any free slot.
Citizens identifierπ
citizens_npcs_by_name
sets whether NPCs from Citizens 2 should be identified in package.yml by their name instead of
their id. This is a dangerous setting as two different NPC's at the opposite edges of your world that share the same
name by accident will trigger the same quest.
Citizens left clickπ
acceptNPCLeftClick
activates that a conversation with an NPC can also be started by left clicking the NPC and not only
by right clicking the NPC.
Citizens interact limitπ
npcInteractionLimit
prevents NPC / BetonQuest conversation click spamming. The time's unit is milliseconds. Default
value: 500
Conversation End Distanceπ
max_npc_distance
is the distance you need to walk away from the NPC for the conversation to end (in the case of using
chat-based conversation interface).
Default Conversation Styleπ
default_conversation_IO
is a comma-separated list of conversation styles. The first one that is loaded
(depending on the available 3rd party plugin integrations) is used.
See conversation styles for supported styles.
Default Chat interceptorπ
default_interceptor
is a comma-separated list of chat interceptors. The first one that is loaded
(depending on the available 3rd party plugin integrations) is used.
See chat interceptors for supported chat interceptors.
Default Hologram Pluginπ
The holograms related features work with multiple plugins.
You can use the default_hologram
option to set which plugin should be used.
default_hologram: DecentHolograms,HolographicDisplays
will make DecentHolograms the default hologram plugin. If it is not installed,
HolographicDisplays will be used instead. If you want to use HolographicDisplays as the default, you can use default_hologram: HolographicDisplays
Conversation Chat Display optionsπ
display_chat_after_conversation
this will prevent all chat messages from displaying during a conversation and it will show them once it's finished.
Combat Delayπ
combat_delay
is a delay (in seconds) the player must wait before starting a conversation after combat.
Conversation pullback messageπ
notify_pullback
will display a message every time the player is pulled back by the stop
option in conversations (in the case of chat-based conversations).
It notifies players that they are in a conversation, and the pullback is not a bug.
Adjusting the backpack to the KeepInventory gameruleπ
remove_items_after_respawn
option should be turned on if "keepInventory" gamerule is not being used.
It prevents other plugins from duplicating quest items after death.
When a player dies, their quest items are removed from drops and stored in the backpack, but some plugins may try to restore all items to the player (for example WorldGuard custom flag keep-inventory). That is why BetonQuest removes the quest items that are in a player's inventory after they respawn again, to be sure they were not re-added. The "keepInventory" gamerule, however, works differently - the items are never dropped, so they cannot be added to backpack. Removing them from the inventory would destroy them forever. Sadly, Bukkit does not allow for gamerule checking, so it is up to you to decide.
Once again, if you have "keepInventory" gamerule true, this setting has to be false and vice versa.
Quest Items break behaviourπ
quest_items_unbreakable
controls whether quest items can be broken by using them.
This was used in the past when the unbreakable
tag couldn't be added to items.
Turn it off and make your quest items unbreakable by vanilla means.
Player Hider intervalπ
player_hider_check_interval
the interval in which the PlayerHider checks the conditions and updates the player's visibility.
Cannot be disabled currently. If you want this to be semi-disabled set a very high value.
NPC Hider intervalπ
npc_hider_check_interval
is the interval in which the NPCHider checks the conditions and updates the NPC's visibility.
Cannot be disabled currently. If you want this to be semi-disabled set a very high value.
Hologram update intervalπ
hologram_update_interval
is the interval in which the holograms check the conditions and update content and visibility.
Cannot be disabled currently. If you want this to be semi-disabled set a very high value.
Soundsπ
This section defines what sounds will be played on these occasions:
start
when a conversation startsend
when a conversation ends
A list of all possible sounds for the latest Minecraft version can be found here.
And sounds can be disabled by setting them to false
.
Conversation Command Banlistπ
cmd_blacklist
is a list of commands that cannot be used during a conversation. Remember that you can only type single words (command names) here!
Compatibility Hooksπ
hook
controls compatibility with other plugins. You can turn off each hook here.
Journalπ
journal
controls various settings of the journal:
chars_per_page
is the number of characters before a page break. If it is set too high, the text on a journal page can overflow and become invisible. This was replaced bychars_per_line
andlines_per_page
and is only required if you don't like the new behaviour.chars_per_line
is the number of characters before a line break. If it is set too high, the text on a journal page can overflow and become invisible. If this is not set, BQ will fall back on the old page wrapping behaviour configured throughchars_per_page
.lines_per_page
is the number of lines before a new page. If it is set too high, the text on a journal page can overflow and become invisible. This is only required ifchars_per_line
is set.one_entry_per_page
makes each entry take a single page. Note that it will not expand to other pages even if it overflows, so keep your entries short.reversed_order
controls the chronological order of entries in the journal. By default, the entries are ordered from newest to oldest. It is reversible, but this will force players to click through many pages to get to the most recent entry.hide_date
hides the date of each entry. Set it to true if you don't want this functionality.full_main_page
makes the main page always take a full page. If a lot of information is being displayed, it is advised to make this true. If you use the main page only for small notifications, set it to false, so the entries can follow immediately.show_separator
shows a separator between journal entries (default: true). Customize the separator inmessages.yml
with the keyjournal_separator
.show_in_backpack
whether to display the journal in the backpack when there is no journal in the player's inventory.lock_default_journal_slot
locks the journal to thedefault_journal_slot
.give_on_respawn
adds the journal to the player inventory.custom_model_data
sets the custom model data of the journal item.
Journal Colorsπ
journal_colors
controls the colors used in the journal. It takes color codes without the &
character.
date.day
is the day numberdate.hour
is the hour numberline
is the delimiter between entriestext
is the text of the entry
Conversation Colorsπ
conversation_colors
controls the colors of the conversation. It takes color names.
If you want to add a font style (bold, italic etc.) do so after placing a comma.
npc
is the name of the NPCplayer
is the name of the playertext
is the NPC's textanswer
is the text of player's answer (after choosing it)number
is the option numberoption
is the text of an option
Conversation Settings: ChestIO & SlowTellrawIOπ
conversation_IO_config
manages settings for individual conversation IO's:chest
manages settings for the chest conversation IOshow_number
will show the player number option if true (default: true)show_npc_text
will show the npc text in every player option if true (default: true)
slowtellraw
manages settings for the slowtellraw conversation IOmessage_delay
is the delay ticks between each message (default: 2)
Quest downloaderπ
download
controls security restrictions for the /q download
command:
pullrequests
defines if pull requests may be downloaded. Only enable this if you really know what you are doing! Everyone can open pull requests that could contain malicious files and if a permission misconfiguration occurs this will make your server vulnerable to attacks.repo_whitelist
is a list of trusted github repositories from which quests and templates can be downloaded.
By default only or official tutorial repo BetonQuest/Quest-Tutorials is on this list.
Itemsπ
The items section allows you to override the default items that are displayed across BetonQuest's GUIs. All items you specify here need to be defined in a package. You need to reference the item with a full path.
The cancel_button
and compass_button
can be removed from the backpack by setting their values to ""
.
items:
backpack: #(1)!
previous_button: "my_package.backpack_previous_button" #(2)!
next_button: "my_package.backpack_next_button" #(3)!
cancel_button: "my_package.backpack_cancel_button" #(4)!
compass_button: "my_package.backpack_compass_button" #(5)!
- All items that are used by the backpack.
- The button to go to the previous backpack page.
- The button to go to the next backpack page.
- The quest cancelers. Can be removed from the backpack by setting the value to
""
. - The quest compass. Can be removed from the backpack by setting the value to
""
.
Misc settingsπ
date_format
is the Java date format used in journal dates. It needs to have a space between the day and hour.debug
is responsible for logging the plugin's activity to debug.log file in logs directory. Turning this on can slow your server down. However, if you experience any errors, turn this on and let the plugin gather the data and send logs to the developer. Note that the first run of the plugin will be logged anyway, just as a precaution.