-
Notifications
You must be signed in to change notification settings - Fork 0
VPConfig.yml
In this file you will find various options that can be used with the different plugins using the API.
Here you can configure the loggers for the plugin using the API. Each plugin has its own loggers, they are used to display different information and there are 4 types:
-
DEBUG
that display different information that could generate undesirable behavior, such as a variable configured in several places. -
INFO
that display different information. -
WARN
that display warnings, this can be a recommendation, an unused value or any important but non-blocking information. -
ERROR
that display errors generated by the plugin.
Each of them can be configured with their name as node and the following values :
AMOUNT
is a number from 0 to 32000. This is the number of logs that will be kept in memory. If you don't plan to display them you can put 0 and they will not be stored.
LOG_TO_PLAYER
if true, this type of log will be sent to the players when they connect to the server if they have the requirement for.
LOG_TO_SERVER
if true, will display this type of log on the server log.
Example
LOGGER_SETTINGS:
DEBUG:
AMOUNT: 0
LOG_TO_PLAYER: false
LOG_TO_SERVER: true
INFO:
AMOUNT: 0
LOG_TO_PLAYER: false
LOG_TO_SERVER: true
WARN:
AMOUNT: 100
LOG_TO_PLAYER: true
LOG_TO_SERVER: true
ERROR:
AMOUNT: 100
LOG_TO_PLAYER: true
LOG_TO_SERVER: true
This plugin allow you to create damage, in other word, you can configure all damage node as wanted.
Here you will find the parameters related to damages.
This option allow you to configure a FALLBACK_PLUGIN
, that way if your damage ain't found, the API will search in the fallback plugin's damage. If the fallback plugin doesn't have the damage either, it will look in its fallback plugin if it has one and so on.
FALLBACK_PLUGIN: VanillaPlus
Here you can configure damage that can be reused later. Key can only have latin alphanumeric character, -
or _
up to 24 character.
Common format for a damage is :
`alias`:
AMOUNT: `amount`
#Optional, if not set will be `CLASSIC` type.
TYPE: `damage's type`
AMOUNT
is the amount of hp, it's a double so can be 1,123431234. Nb : 1 heart is 2 hp.
Example
DAMAGES_LIST:
calamity:
TYPE: CLASSIC
AMOUNT: 10000
Type list
It's like you took a hit, armor will reduce amount of damage.
DAMAGE_TYPE
is for versus message, if this damage kill you will display the custom message for this.
Example
...
TYPE: CLASSIC
AMOUNT: 10
DAMAGE_TYPE: hard_training
Will reduce your maximum amount of health. Note, persist after death.
DAMAGE_TYPE
is for versus message, if this damage kill you will display the custom message for this.
MIN
is the minimum amount of max health you can have with this damage. Note, can't be lower or equal to zero. Your max amount of health will not reduce under this value but you'll still take damage.
Example
...
TYPE: EROSION
AMOUNT: 10
MIN: 0.1
DAMAGE_TYPE: hard_training
Will reduce your life to amount.
This type don't have additional fields.
Example
...
TYPE: LIFE
AMOUNT: 10
It's like an damage potion.
DAMAGE_TYPE
is for versus message, if this damage kill you will display the custom message for this.
Example
...
TYPE: MAGIC
AMOUNT: 10
DAMAGE_TYPE: hard_training
Will give you poison. Note, here amount is the amount in second.
ADD
if true will add amount to current effect if already have poison.
Have all node of potion effect except TYPE and DURATION.
Example
...
TYPE: POISON
AMOUNT: 10
LEVEL: 2
Will give you wither. Note, here amount is the amount in second.
DAMAGE_TYPE
is for versus message, if this damage kill you will display the custom message for this.
ADD
if true will add amount to current effect if already have wither caused by same damage type.
Have all node of potion effect except TYPE and DURATION.
Example
...
TYPE: WITHER
AMOUNT: 10
LEVEL: 2
DAMAGE_TYPE: jail
Since this plugin store information, we need to connect to the storage.
Here you can configure connection for storage. These are id, so you'll use them when connection is needed. Key can only have latin alphanumeric character, -
or _
up to 16 character.
Example
CONNECTION_LIST:
main:
TYPE: SQLITE
Type list
Default storage type, not improved for big server.
Main:
TYPE: SQLITE
#Optionnal, will create folder as base.
BASE: VP
The classic MySQL.
Main:
TYPE: MySQL
HOST: localhost
BASE: VP
PORT: 3306
USER: root
PASSWORD: ""
Like the damages, with this plugin you can configure every heal created.
Here you will find the parameters related to heal.
This option allow you to configure a FALLBACK_PLUGIN
, that way if your heal ain't found, the API will search in the fallback plugin's heal. If the fallback plugin doesn't have the heal either, it will look in its fallback plugin if it has one and so on.
FALLBACK_PLUGIN: VanillaPlus
Here you can configure damage that can be reused later. Key can only have latin alphanumeric character, -
or _
up to 24 character.
Common format for a heal is :
`alias`:
AMOUNT: `amount`
#Optional, if not set will be `BASE` type.
TYPE: `healtype`
AMOUNT
is the amount of hp, it's a double so can be 1,123431234. Nb : 1 heart is 2 hp.
Example
HEAL_LIST:
full:
AMOUNT: 100000
Type list
Is the default heal, will heal you.
This type don't have other nodes.
Example
...
TYPE: BASE
AMOUNT: 5
Will increase your maximum amount of life.
MAX
is the maximum of hp you can have ( to avoid to big value )
FILL
is true will heal you
Example
...
TYPE: BUILDUP
AMOUNT: 5
Will give you regeneration. Note, here amount is the amount in second.
ADD
if true will add amount to current effect if already have regeneration.
Have all node of potion effect except TYPE
and DURATION
.
Example
...
TYPE: REGEN
AMOUNT: 5
LEVEL: 2
This plugin allow you to create requirements, for more information see here.
Here you will find the parameters related to requirements. Remember to see here for more options.
This option allow you to configure a FALLBACK_PLUGIN
, that way if your requirement ain't found, the API will search in the fallback plugin's requirement. If the fallback plugin doesn't have the requirements either, it will look in its fallback plugin if it has one and so on.
FALLBACK_PLUGIN: VanillaPlus
Each node represents a simple requirement with message component's path as value, this message component will be used if you want display the requirement with this, like in achievement icon but we'll go back later, and have %state%
and %state_color%
as placeholder.
Example
SIMPLE_REQUIREMENT_FORMAT_LIST:
FALSE: FORMAT.REQUIREMENT.FALSE
ONLINE: FORMAT.REQUIREMENT.ONLINE
VP_NICK: FORMAT.REQUIREMENT.VP_NICK
Here you can configure requirement that can be reused later. Key can only have latin alphanumeric character, -
or _
up to 24 character.
I know you have this feature with almost all components of my plugin but I highly recommend you to use it for one, it'll be this one. That way you can easily find all requirements used by your plugin as well as change them.
This plugin allow you to create reward, in other word, you can configure all reward node as wanted.
Here you will find the parameters related to reward.
This option allow you to configure a FALLBACK_PLUGIN
, that way if your reward ain't found, the API will search in the fallback plugin's reward. If the fallback plugin doesn't have the reward either, it will look in its fallback plugin if it has one and so on.
FALLBACK_PLUGIN: VanillaPlus
Here you can configure reward that can be reused later. Key can only have latin alphanumeric character, -
or _
up to 24 character.
Type list
Note, for smaller explanation, all Reward in this list have :
FORMAT_PATH
is message component's path for the format. Default is FORMAT.REWARD.
+ type, example : for achievements it's FORMAT.REWARD.ACHIEVEMENT
.
ALIAS_ID
is the achievement id.
PlaceHolder
%name%
is the achievement name.
Example
...
TYPE: ACHIEVEMENT
ALIAS_ID: jackpot
FORMAT_PATH: FORMAT.REWARD.ACHIEVEMENT
ALIAS_ID
is the currency id.
AMOUNT
is the currency amount.
FORCE
is boolean, if true will give to player even if he reached the limit.
PlaceHolder
%name%
show the currency name.
%amount%
show the amount formatted.
Example
...
TYPE: CURRENCY
ALIAS_ID: 1
FORCE: false
AMOUNT: 100
FORMAT_PATH: FORMAT.REWARD.CURRENCY
DAMAGE
is the damage.
PlaceHolder
%amount%
the amount you'll be damaged in hp.
%amount_heart%
the amount you'll be damaged in heart.
Example
...
TYPE: DAMAGE
DAMAGE:
TYPE: CLASSIC
AMOUNT: 10
DAMAGE_TYPE: god
FORMAT_PATH: FORMAT.REWARD.DAMAGE
EFFECT
is the effect to give.
NAME_PATH
is the name of effect for translation.
PlaceHolder
%name%
the name defined in NAME_PATH
.
Example
...
TYPE: EFFECT
EFFECT:
TYPE: REGENERATION
DURATION: 120
LEVEL: 2
AMBIANT: false
PARTICLE: false
NAME_PATH: REWARD.REGENERATION
FORMAT_PATH: FORMAT.REWARD.REGENERATION
HEAL
is the heal.
PlaceHolder
%amount%
the amount you'll be healed in hp.
%amount_heart%
the amount you'll be healed in heart.
Example
...
TYPE: HEAL
HEAL:
TYPE: BUILDUP
MAX: 30.0
AMOUNT: 0.5
FILL: true
FORMAT_PATH: FORMAT.REWARD.HEAL
ITEM
is the item to give.
DISPLAY_NAME_PATH
is message component's path of name of item for format.
NAME_PATH
is message component's path of name of item for translation. Will set the name of give item to this value.
LORE_PATH
is message component's path of lore of item for translation. Will set the lore of give item to this value.
PlaceHolder
%name%
the name defined in DISPLAY_NAME_PATH
.
%amount%
is the amount of item you'll receive.
Example
...
TYPE: ITEM
ITEM:
MATERIAL: diamond
AMOUNT: 16
DISPLAY_NAME_PATH: REWARD.DIAMOND
FORMAT_PATH: FORMAT.REWARD.ITEM
AMOUNT
is the amount of level you'll win.
PlaceHolder
%amount%
the amount.
Example
...
TYPE: LEVEL
AMOUNT: 1
FORMAT_PATH: FORMAT.REWARD.LEVEL
Each key ( except TYPE
) will store a reward.
For now the format is only a list ( each line is the format of a reward ).
Example
...
TYPE: MULTI
level:
TYPE: LEVEL
AMOUNT: 1
FORMAT_PATH: FORMAT.REWARD.LEVEL
diamonds:
TYPE: ITEM
ITEM: diamond, 16
DISPLAY_NAME_PATH: REWARD.DIAMOND
FORMAT_PATH: FORMAT.REWARD.ITEM
ALIAS_ID
is the stat id.
AMOUNT
is the increase amount.
PlaceHolder
%name%
the name of stat.
%amount%
is the amount of stat you'll receive.
Example
...
TYPE: STAT
ALIAS_ID: death
AMOUNT: 1
FORMAT_PATH: FORMAT.REWARD.STAT
ALIAS_ID
is the title id.
PlaceHolder
%name%
the name of stat.
Example
...
TYPE: TITLE
ALIAS_ID: immortal
FORMAT_PATH: FORMAT.REWARD.TITLE
This plugin allow you to create icon for menu.
Here you will find the parameters related to icons. Menu are created with Icon in inventory, here you can configure the icons. This file is for optimizing time in menu configuration if you use same icon multiple times.
This option allow you to configure a FALLBACK_PLUGIN
, that way if your icon ain't found, the API will search in the fallback plugin's icon. If the fallback plugin doesn't have the icon either, it will look in its fallback plugin if it has one and so on.
FALLBACK_PLUGIN: VanillaPlus
Here you can configure icon that can be reused later. Key can only have latin alphanumeric character, -
or _
up to 24 character.
Type list
This icon allows you to display achievement.
ALIAS_ID
this is the achievement's id, log if invalid.
DISPLAY
this is display id, you can find it in VPCollectables.yml
file.
SHOW_LOCKED_REQUIREMENT
if true will display requirement on locked achievement with %requirement%
placeholder. Default is true.
SHOW_LOCKED_REWARD
if true will display reward on locked achievement with %reward%
placeholder. Default is true.
SHOW_UNLOCKED_REQUIREMENT
if true will display requirement on owned achievement with %requirement%
placeholder. Default is false.
SHOW_UNLOCKED_REWARD
if true will display reward on owned achievement with %reward%
placeholder. Default is false.
REQUIREMENT_DESCRIPTION_PATH
if SHOW_LOCKED_REQUIREMENT
or SHOW_UNLOCKED_REQUIREMENT
is true, this message will be displayed with %requirement_description%
placeholder in description.
REWARD_DESCRIPTION_PATH
if SHOW_LOCKED_REWARD
or SHOW_UNLOCKED_REWARD
is true, this message will be displayed with %reward_description%
placeholder in description.
Nb : REQUIREMENT_DESCRIPTION_PATH
and REWARD_DESCRIPTION_PATH
was created to simplify configuration and reduce the amount of DISPLAY
to create, but if you want improve performance I recommend you to take the time to create few more DISPLAY
to not use these values.
** Placeholders **
You can add theses placeholders in description.
%description%
to display the achievement description.
%lore_server_date%
to display the date and / or time when you unlocked the achievement.
%requirement_description%
to display REWARD_DESCRIPTION_PATH
.
%requirement%
to display the requirement to unlock the achievement.
%reward_description%
to display REWARD_DESCRIPTION_PATH
.
%reward%
to display the reward when unlock the achievement.
Example
...
TYPE: ACHIEVEMENT
ALIAS_ID: adventurer
DISPLAY: 1
SHOW_LOCKED_REQUIREMENT: true
SHOW_LOCKED_REWARD: true
SHOW_UNLOCKED_REQUIREMENT: false
SHOW_UNLOCKED_REWARD: false
REQUIREMENT_DESCRIPTION_PATH: FORMAT.REQUIREMENT_DESCRIPTION
REWARD_DESCRIPTION_PATH: FORMAT.REWARD_DESCRIPTION
It's the basic icon.
ITEM
under this node you can create your item.
SKULL_SELF
if true and item is player skull, will display menu's owner's skull. Nb : if true will change the item to a player head.
CLOSE
if true will close the menu when click.
BACK_ON_CLOSE
if CLOSE
is true, you can choose to go back when close instead of fully close.
- TOP_FIRST will back top menu if one open, else will back the bottom one.
- BOTTOM_FIRST will back bottom menu if one open, else will back the top one.
- CLICKED_ONLY will back the menu who contain this icon.
- CLICKED_FIRST should be the same as CLICKED_ONLY but exist for support.
- TOP_ONLY Will back only top menu.
- BOTTOM_ONLY Will back only bottom menu.
- BOTH Will go back for top and bottom menu.
USE
You click with this item on hand ? Default is false. Nb : if true, you'll be able to place it in itemframe.
CLICK
if true, allow you to move the item, but slot will still have the same functionality. Default is false.
DROP
if true, allow you to drop the item, but slot will still have the same functionality. Default is false.
NAME_PATH
is message component's path, allow name translation.
DESCRIPTION_PATH
is message component's path, allow lore translation.
Example
ITEM: player_head
SKULL_SELF: true
Extend the basic icon.
NO_VIEW_ICON
this node allow you to create default icon if can't see this one ( see VIEW_REQUIREMENT
). Note, you can crate them in cascade.
VIEW_REQUIREMENT
is the requirement to view this icon. If you don't have the requirement, you'll see the NO_VIEW_ICON
if set or none.
RANDOM
is maximum value of random, if not 0, will randomize the data / damage value of the item. Nb, this option isn't improved for post 1.13.
NO_REQUIREMENT_MESSAGE
is message's path sent if you click but don't have requirement for.
REQUIREMENT
is the requirement to use this icon. Note, if you can't see the icon you can't use it.
REWARD
is the reward for this icon when you use it ( in addition of commands ).
SHOW_REQUIREMENT
if true will display requirement with %requirement%
placeholder. Default is false.
SHOW_REWARD
if true will display reward with %reward%
placeholder. Default is false.
REQUIREMENT_DESCRIPTION_PATH
if SHOW_REQUIREMENT
is true, this message will be displayed with %requirement_description%
placeholder in description.
REWARD_DESCRIPTION_PATH
if SHOW_REWARD
is true, this message will be displayed with %reward_description%
placeholder in description.
Nb : REQUIREMENT_DESCRIPTION_PATH
and REWARD_DESCRIPTION_PATH
was created to simplify configuration and reduce the amount of DESCRIPTION_PATH
to create, but if you want improve performance I recommend you to take the time to create few more DISPLAY
to not use these values.
COMMAND
here are command for click types ( see here, name of command node is the click type.
** Placeholders **
You can add theses placeholders in description.
%requirement_description%
to display REWARD_DESCRIPTION_PATH
.
%requirement%
to display the REQUIREMENT
.
%reward_description%
to display REWARD_DESCRIPTION_PATH
.
%reward%
to display the REWARD
.
Example
...
TYPE: EXTENDED
SHOW_REQUIREMENT: false
SHOW_REWARD: false
REQUIREMENT:
TYPE: CURRENCY
ID: 1
KEEP: false
AMOUNT: 500
REWARD:
TYPE: CURRENCY
ID: 2
KEEP: false
AMOUNT: 1
CLOSE: false
NAME_PATH: MENU.ECHANGE.12.NAME
DESCRIPTION_PATH: MENU.ECHANGE.12.LORE
ITEM:
MATERIAL: diamond
This icon allow you to display title.
ALIAS_ID
this is the title's id, log if invalid.
DISPLAY
this is display id, you can find it in VPCollectables.yml
file.
** Placeholders **
You can add theses placeholders in description.
%description%
to display the title description.
%lore_server_date%
to display the date and / or time when you unlocked the title.
Example
...
TYPE: TITLE
ALIAS_ID: adventurer
DISPLAY: 1
This plugin allow you to create menu.
Here you will find the parameters related to menus.
This option allow you to configure a FALLBACK_PLUGIN
, that way if your menu ain't found, the API will search in the fallback plugin's menu. If the fallback plugin doesn't have the menu either, it will look in its fallback plugin if it has one and so on.
FALLBACK_PLUGIN: VanillaPlus
Menu are created in the menu
folder. The id of the menu is his namepath without .yml
( subfolders with . between them, ex : icon.yml
in test
folder has test.icon
as id ).
The TYPE
of menu is defined at the root of the file.
Types
This is default type of menu.
Here you can configure theses nodes :
NAME_PATH
is message component path of menu name. You can use placeholder in this message.
TYPE
is inventory type, default is CHEST
, list of supported types here.
ROWS
if you use a chest you can chose how many rows you have in this chest. Note if bigger than 6, non modded client will see something weird. Allowed between 0 and 12 inclusive ( bigger than 12 can crash some clients ). Default's value is 3
.
REFRESH
in second, how many second should refresh the menu ? ( if bigger than 30 don't refresh )
Here you can configure some command to perform depending of action.
OPEN
is command performed by player when open the menu.
Example
...
OPEN:
TYPE: MESSAGE_SEND
PRIVATE: true
MESSAGE: SOUND.CHEST_OPEN
CLOSE
is command performed by player when close the menu.
Example
...
CLOSE:
TYPE: MESSAGE_SEND
PRIVATE: true
MESSAGE: SOUND.CHEST_CLOSE
SWITCH
is command performed by player when open an other menu.
Example
...
SWITCH:
TYPE: MESSAGE_SEND
PRIVATE: true
MESSAGE: SOUND.CLICK
Note, if you choose to open menu when player close it, player may rage quit :P.
##€# ICON_LIST
Here you can configure the icons of the menu.
Node is the slot, slot 0 is in fact slot 999 that mean is when you click out of inventory ( allow you to close when click out of inventory or create easter egg in some inventory ).
The slot can be only his number or multiple slots at the same time. You can configure slots in-line with ;
as separator and -
for range.
Example
ICON_LIST:
"1-10;18;19;27-35" : PANNEL_7
36: BACK_MENU
If inventory type is 9 slots per row ( like chests ) you can use the format column:row in addition of the above options ( range in that way will produce a square ).
Example
ICON_LIST:
"1:1-9:2;4:3-6:4;1:5-9:6" : PANNEL_7 #Fill row 1,2,5,6 and middle of 3 and 4.
27: BACK_MENU
This menu is created like BASE
menu. Will refresh menu to all player who have this menu open when one player click on EXTENDED
icon. You can also do something similar by refresh it every second but if this menu isn't clicked each second this type of menu will improve server performance.
- Global configuration
- Translation
- Message component
- Message
- Placeholder
- Channel
- Requirement
- Requirement config
- Currencies
- Statistics
- Titles
- Achievements
- Commands
- Damages
- Heal
- Connection / Storage
- Reward
- Icon
- Menu
- Custom food
- Remove craft
- Add craft
- Customize blocks
- Damage modifier
- Death message
- Generic format
- Logger