Configurations

Jun 21, 2019
Configurations
  • [​IMG]
    [​IMG]
    Here is an overview of each YAML file, this should give you the need-to-know about the options in each file.
    If you feel like something is missing and needs to be added or clarified please Direct Message me and I will add it.

    Notice; All data that ItemJoin accumulates will be stored in a database.db file located in the ItemJoin folder, this database will contain all needed info such as first-join, ip-limit, global message first-join usages, and first command uses for items.

    If you are looking for features that have to do with hooking plugins into ItemJoin they have been moved,
    click here; https://www.spigotmc.org/wiki/api-hooks
    [​IMG]
    [​IMG]

    This is a quick overview of the;
    Default Items.yml Configuration

    items-Version: 6
    • This should never be touched, modifying this will cause the items.yml file to break and regenerate.


    items-Delay: 2

    • This is the delay in half-seconds that ItemJoin will wait to give you the items. 1 = 0.5 seconds.
    • This is useful if you have another plugin that clears the player's inventory, you can set the delay long enough that the items are given after the other plugins clear the player's inventory. Usually 2-3 seconds at the most.
    • It is not recommended to set this any lower than 2 half-seconds as it can result in issues with giving the items.


    items-Overwrite: false

    • Setting this to true will allow ItemJoin items to overwrite any items (if any) that are in the dedicated slot for the ItemJoin item.
    • Setting this to false will prevent ItemJoin from accidentally removing items if they are in the dedicated slot for an item. Therefore, the ItemJoin item will not be given.
    • If you wish to you can specify per-world instead of globally. Simply remove the true/false statement and put the name or world or world(s) separated by a comma.
      • All the worlds that are defined will be the worlds that ItemJoin can overwrite items in.
    Example of overwriting in specific worlds;
    Code (Text):
    items-Overwrite: world, world_the_end
    Example of disabling all item overwrites in all worlds;
    Code (Text):
    items-Overwrite: false
    Example of enabling all item overwrites in all worlds;
    Code (Text):
    items-Overwrite: true


    items-Spamming: false
    • Setting this to false will prevent players from rapidly spamming the use of Item's Commands. It is recommended to leave this to false.


    items-RestrictCount : false
    • Setting this to false will prevent players from being given more of an item if it is not the same count as in the items.yml, saying you ate 3 out of the 4 bread you would not receive any more bread until you ate all of it.
    • Setting this to true will give the player more of the item if the stack/count size is not the same as the items.yml.
    • To sum this up, setting this to true will allow the player to have their items refreshed (topped up) if they have used some of the stacks of the item they were given.


    If you are looking for help on how to create custom ItemJoin items, please view this section of the wiki; https://www.spigotmc.org/wiki/learning-the-items-yml/


    [​IMG]

    This is a quick overview of the;
    Default Config.yml Configuration


    config-Version: 7
    • This should never be touched, modifying this will cause the config.yml file to break and regenerate.


    Language: 'English'
    • This identifies the language that ItemJoin will use as well as the lang file that it will generate.
    • Current English is the only language currently supported, however, editing the en-lang.yml can allow you to modify the English language to what you prefer.


    General: # These are typically general maintenance settings that do not affect functionality.

    CheckForUpdates: true
    • Setting this to false will stop ItemJoin from checking for updates and notifying you if an update has been found upon starting the server, or reloading the server.


    Metrics-Logging: true
    • This should always be kept true, this simply allows ItemJoin to anonymously send data of your item count, server version, most used dependencies, java version, etc. A way to think of this is it being a statistics page. If you wish to not be included set this to false. This tool will be really useful in allowing me to increase the quality of the ItemJoin updates as well as supported Minecraft Versions.
    • You can see the ItemJoin stats page here; https://bstats.org/plugin/bukkit/ItemJoin


    Log-Coloration: true

    • Setting this to false will simply make all text output from ItemJoin into console be in simple black and white, rather than the magical colors I have chosen.


    Log-Commands: true
    • Setting this to false will stop the console from logging any of the commands that are executed from ItemJoin items.


    Debugging: false
    • Setting this to true may help identify a bug you found when reporting it to the developer, it creates more detailed logs and outputs in the console window for debugging later on.
    • It is recommended to keep this false unless you are experiencing issues with ItemJoin and need help.



    Settings: # These settings will take effect globally throughout the plugins system.

    HeldItem-Slot: DISABLED
    • This works in a fairly simple way, this option is meant for you to be able to define what slot you want the player that logs in and changes worlds to be selected on.
    • So say you define slot 3 to be what you want the players to be selected on when joining and switching worlds this will be the slot selected, usually great to use if you have a special item in that slot.
    • So simply put, this option forces the players to have this specific slot as their selected slot.
    • You may only define slots 0-8, as you only have 9 slots in your hot-bar. If you wish for it to be disabled, set it to None.


    DataTags: true
    • Setting this from true to false or vice versa will require you to fully clear the player's inventory, old items will break. When this is set to true ItemJoin will give items NBTTags to help identify them as ItemJoin items, if this is set to false it will simply define it within the items name in a way that you won't see it. Keeping this set to true will allow some ItemJoin features to work better so it is best to keep this set to true by default.
    • If you don't understand what this does please do not touch it, there should be no change when setting this to false that you would notice.



    Permissions: # These permissions if enabled, determine whether the permission(s) is/are applied to certain players.

    Obtain-Items: false
    • Setting this to false will allow all players to get any and all items regardless of what permissions they have.
    • Setting this to true will enable ItemJoin permissions for items.


    Obtain-Items-OP: false
    • Setting this to true will require ops to have each item's permissions in order to receive them, rather than getting all items by default.
    • Keeping this false will allow ops to bypass all Item permissions and receive every item.


    Commands-Get: false
    • Setting this to true will require players to have the item's permission when receiving an item that is being given via /itemjoin get <item> or /itemjoin get <item> <player>.
    • If the player lacks the specific item's permission, an error message will be sent to both parties that yourself or the specified is lacking the permission. Obviously depending on which of the two commands are executed.
    • Note this does not give or revoke any permissions for a player to run this command, that is still linked to the itemjoin.get and itemjoin.get.others permission nodes.


    Commands-OP: false
    • Setting this to true will require ops to have each commands permissions or itemjoin.all or itemjoin.* in order to use each command. Ops will not get each command by default if this is set to true.
      • itemjoin.(reload, updates, autoupdate, creator, purge, save, get, get.others, remove, remove.others, enable, enable.others, disable, disable.others, list) are no longer given to Opped players by default, you will now have to set Commands-OP in the config.yml to false to allow ops to get these commands by default (however this is the default selected setting, setting it to true will require ops to be given these permissions).
    • Keeping this false will allow ops to execute the following commands by default, without permissions.
      • itemjoin.(reload, updates, autoupdate, creator, purge, save, get, get.others, remove, remove.others, enable, enable.others, disable, disable.others, list).


    Movement-Bypass: false
    • Setting this to true will enable the use of the itemjoin.bypass.inventorymodify permission node. If this is kept false simply giving the player the permission node will not allow them to bypass the inventory modification itemflag.
    • This was implemented because some server owners were using the * permission node which would force the server to give the player every single permission node on the server...


    Clear-Items: # If enabled this will clear items from their inventory upon performing the specified action for the specified type. The available types(s) are ALL for all items or ITEMJOIN for only the ItemJoin items.

    Type: ItemJoin
    • There are two options for this, either ItemJoin or All.
    • ItemJoin - Specifies only ItemJoin items to be the items cleared.
    • All - Specifies any item within the player's inventory to be cleared.


    Delay-Tick: 2
    • This is the time in half-seconds before the items will be cleared from the player's inventory. This is useful to combat other plugins giving after the inventory is cleared or restoring a players inventory.
    • If this is set equal to or higher than the items-Delay value in the items.yml it will automatically increase the items-Delay by one half-second to prevent the items from being removed after they are given.


    Join: DISABLED
    • Setting this to true will either clear All Items or Only ItemJoin items upon joining the server, depending on what the Clear-Items option is set to do.
    • Also, instead of setting this to true you can define specific worlds that you wish to clear in if a player joins within that world.
    • Example of specific worlds defined;
    Code (Text):
    Join: world, world_nether, world_the_end


    World-Switch: DISABLED
    • Setting this to true will either clear All Items or Only ItemJoin items upon switching to a different world, depending on what the Clear-Items option is set to do.
    • Also, instead of setting this to true you can define specific worlds that you wish to clear in if a player switches to that specific world(s).
    • Example of specific worlds defined;
    Code (Text):
    World-Switch: world, world_nether, world_the_end


    Options: PROTECT
    • Currently, there is only one Option, that being PROTECT.
    • PROTECT - will protect ALL ItemJoin items that are First-World or First-Join items so they will not be cleared upon world-switch or join.
    • To disable this simply set it to DISABLED.


    Bypass: OP, CREATIVE
    • Currently, there is only OP and CREATIVE for this, adding CREATIVE will allow players that are in creative-mode to not be affected by Clear-Items, meaning their inventory will not be cleared.
    • Adding OP will allow players that are Op'ed to not be affected by Clear-Items, meaning their inventory will not be cleared.



    Active-Commands: # This is the command(s) executed upon the player performing the defined trigger(s), for the specified world(s).

    commands:
    - 'itemjoin get <item> <player>'
    - 'first-join: say This is a command only executed once per world, per player.'
    • This is where you list the commands you wish to execute, keep in mind these are executed as console so if you wish for them to relate to a specific player you will have to use %player% and other placeholders.
    • There is also the option to execute these commands only once per player, via; first-join.

    trigger: JOIN
    • Currently, there is only one trigger, that being JOIN.
    • This will execute the command(s) upon the player performing the trigger.

    enabled-worlds: world, world_nether
    • These are the list of the worlds separated by commas to execute the commands upon joining the server.



    Prevent: # This determines if the action is allowed for all items in the specified worlds. To disable an action, simply set the action to true for all worlds or list each world separated by a comma.

    Pickups: DISABLED
    • Setting this to true will prevent players from picking up any items on the server.


    itemMovement: DISABLED
    • Setting this to true will prevent players from moving around any items in their inventory on the server.

    Bypass: CREATIVE, OP
    • Currently, there is only OP and CREATIVE for this, adding CREATIVE will allow players that are in creative-mode to not be affected by the pickups or item movement restrictions, meaning players in creative or op'ed players will be able to move and pickup items dispite the defined setting.


    softDepend: # These are optional dependencies, only enable these if you want to use them.

    AuthMe: false
    • If you have AuthMe already on your server it is recommended to set this to true.
    • This will allow ItemJoin Items to be given after the player types the login command and fully registers to AuthMe.


    BetterNick: false
    • If you have BetterNick already on your server it is recommended to set this to true.
    • If items for some reason end up breaking and you use this plugin, setting this to true could resolve issues with items not working properly. This allows ItemJoin to easily find your original player name and UUID if you are nicknamed using BetterNick.


    HeadDatabase: false
    • If you have HeadDatabase already on your server it is recommended to set this to true.
    • This allows ItemJoin Items to be able to hook into HeadDatabase and fetch player heads from there using <hdb-head id>.


    Multiverse-Core: false
    • If you have Multiverse-Core already on your server it is recommended to set this to true.
    • This is only used for Multiverse-Inventories as ItemJoin already has multi-world support without this.
    Multiverse-Inventories: false
    • If you have Multiverse-Inventories already on your server it is recommended to set this to true.
    • Easily set world inventories using ItemJoin. You can make it so you get the items on join and world change without clearing the player's inventory! Very helpful with ItemJoin inventory management.


    MyWorlds: false
    • If you have MyWorlds already on your server it is recommended to set this to true.
    • This allows ItemJoin to have easy multi-world support.


    PerWorldInventory: false
    • If you have PerWorldInventory already on your server it is recommended to set this to true.
    • Easily set world inventories using ItemJoin. You can make it so you get the items on join and world change without clearing the player's inventory! Very helpful with ItemJoin inventory management. I have recently seen this plugin start to pop up everywhere and it seems like an amazing alternative to Multiverse-Inventories.
    PerWorldPlugins: false
    • If you have PerWorldPlugins already on your server it is recommended to set this to true.
    • This currently provides no benefit and it really isn't recommended to use PerWorldPlugins with ItemJoin as you can already restrict its usage per-world, however, ItemJoin will obey by the rules set in PerWorldPlugins. As it is not recommended since ItemJoin is disabled in any world that is not defined under world-list but, ItemJoin does support PerWorldPlugins if you happen to have it running on your server for some reason and ItemJoin will be disabled in worlds that are not allowed by PerWorldPlugins.


    PlaceholderAPI: false
    • If you have PlaceholderAPI already on your server it is recommended to set this to true.
    • You can use all of these placeholders on any part of ItemJoin, whether its commands, name, lore, skull-owner, book-lore, authors, etc! All parts of ItemJoin are hooked into PlaceholderAPI. This will allow the usage of every single PlaceholderAPI placeholder that you wish to use in any aspect of ItemJoin, such as; lang messages, Items Name, Items Lore, Items Commands, and more.
    • Example placeholder such as; %player%.


    TokenEnchant: false
    • If you have TokenEnchant already on your server it is recommended to set this to true.
    • This allows ItemJoin Items to be able to be given specific TokenEnchantments when receiving them.


    Vault: false
    • If you have Vault already on your server it is recommended to set this to true.
    • You can hook into the vault to use your economy on ItemJoin's commands, this will allow the use of command-cost for items with it defined, so you can charge players to execute a command.


    WorldGuard: false
    • If you have WorldGuard already on your server it is recommended to set this to true.
    • Items will be given after the player enters the specified region defined under each item, upon leaving the region the items will be revoked. This allows the creation of region only items and can only be used in the specified regions unless defined otherwise.


    xInventories: false
    • If you have xInventories already on your server it is recommended to set this to true.
    • Easily set world inventories using ItemJoin. You can make it so you get the items on join and world change without clearing the player's inventory! Very helpful with ItemJoin inventory management.


    [​IMG]

    This is a quick overview of the;
    Default En-Lang.yml Configuration

    Notes: If you don't want a message to be sent, fully remove it from below or make it blank. The information below will be listed without any message text so you can be shown exactly what each identifier means.

    en-Version: 7
    • This should never be touched, modifying this will cause the en-lang.yml file to break and regenerate.


    Prefix: '&7[&eItemJoin&7]'
    • This is the prefix that will be sent at the beginning of every single message sent in the language file.

    General: # These are simply general messages sent from the plugin item usages.

    failedOverwrite: ''
    • This is the message that is sent when the player has an item in the slot designated for an ItemJoin item, causing the item to not be given because items-Overwrite is set to false in the items.yml, failing to give %failcount% items.

    failedInventory: ''
    • This is the message that is sent when there are no available slots in the players inventory, failing to give %failcount% items.

    itemChargeSuccess: ''
    • This is the message sent once an ItemJoin command is successfully executed by an ItemJoin item and charged for by being hooked into the Vault economy, being charged %cost%.

    itemChargeFailed: ''
    • This is the message sent once an ItemJoin command is attempted to be executed by an item but the player does not have the %cost% to be able to afford it from their %balance%.


    Commands: # These messages are specific to the plugin commands.
    Default: # These are general messages sent from various command actions.
    unknownCommand: ''
    • This is the message sent when the executing user did not sent a proper plugin command, meaning the command does not exist.

    noPermission: ''
    • This is the message sent when the executing user is lacking the proper permissions for the plugin command.

    configReload: ''
    • This is the message sent when the plugin configuration files are successfully reloaded.

    notPlayer: ''
    • This is the message that is sent when the executor is not a player, which means this command is not available for the console window.

    targetNotFound: ''
    • This is the message sent when the %targetplayer% does not exist or was misspelt.

    creatorLaunched: ''
    • This is the message sent when the /itemjoin creator is successfully launched.


    Item: # These are general messages sent from various command actions.
    notInHand: ''
    • This is the message sent when the executing player is not holding an item in their hand.

    invalidItem: ''
    • This is the message sent when the ItemJoin item does not exist.

    Info: # These messages are sent in relation to the /itemjoin info command.
    material: ''
    • This is the message sent for the %item% material.

    dataValue: ''
    • This is the message sent (if a data-value exists) for %item%.

    Save: # These messages are sent in relation to the /itemjoin save command.

    playerSavedItem: ''
    • This is the message sent when the executing player successfully saves the item they are holding as %item%.

    playerFailedSavedItem: ''
    • This is the message sent when the executing player tries to save the custom item as %item% while not holding an item.

    invalidSyntax: ''
    • This is the message sent when the executing player fails to properly identify the /itemjoin save command.

    List: # These messages are sent in relation to the /itemjoin list command.
    worldHeader: ''
    • This is the message sent to identify the %world% that becomes before the itemRow (or noItemsDefined).

    itemRow: ''
    • This is the message sent for the worldHeader if the %item% exists in the world.

    noItemsDefined: ''
    • This is the message sent when there are no item specified for the specific world.

    World: # These messages are sent in relation to the /itemjoin world command.
    worldHeader: ''
    • This is the message sent before worldRow and worldsFoundHeader to identify that you are in the world, (worldRow).

    worldRow: ''
    • This is the message sent after the worldHeader to show that the executing player is in %world%.

    worldsFoundHeader: ''
    • This is the message sent to identify the found worlds.

    Updates: # These messages are sent in relation to the /itemjoin updates command.
    checking: ''
    • This is the message sent to the console window to log the %player% that requested to check for plugin updates.

    forcing: ''
    • This is the message sent to the console window to log the %player% that requested to force update the plugin.

    Get: # These messages are sent in relation to the /itemjoin get, /itemjoin getOnline command(s).
    toYou: ''
    • This is the message the recipient recieves when they are succesfully given the %amount% of an %item%.

    toTarget: ''
    • This is the message sent to the %targetplayer% when they are successfully given the %amount% of an %item%.

    youHaveItem: ''
    • This is the message sent when the player already has the %item%.

    triedGive: ''
    • This is the message sent when the %player% tried to give the %item% to the %targetplayer% but it already exists in their inventory.

    targetHasItem: ''
    • This is the message sent when the %targetplayer% already has the %item%.

    noPermission: ''
    • This is the message sent if the Commands-Get in the config.yml is set to true and the player does not have the proper permissions to recieve the item such as itemjoin.ultra, given a custom or default permission node.

    targetNoPermission: ''
    • This is the message sent if the Commands-Get in the config.yml is set to true and the %targetplayer% does not have the proper permissions to recieve the item such as itemjoin.ultra, given a custom or default permission node.

    invalidSyntax: ''
    • This is the message sent when the executing player fails to use the /itemjoin get commands correctly.

    usageSyntax: ''
    • This is the message sent after the invalidSyntax to show the executing player the proper usage.

    toOnlinePlayers: ''
    • This is the message sent when the executing player has successfully given the %amount% of the %item% to the %players%.

    onlinePlayersHaveItem: ''
    • This is the message sent if all the online players already have the %item%.

    invalidOnlineSyntax: ''
    • This is the message sent when the executing player fails to use the /itemjoin getOnline command correctly.

    GetAll: # These messages are sent in relation to the /itemjoin getAll command(s).
    toYou: ''
    • This is the message sent to the player when the items are successfully given.

    toTarget: ''
    • This is the message sent to you when the items are successfully given to the %targetplayer%.

    noPermission: ''
    • This is the message sent if the Commands-Get in the config.yml is set to true and the player does not have the proper permissions to recieve the item such as itemjoin.ultra, given a custom or default permission node.

    targetNoPermission: ''
    • This is the message sent if the Commands-Get in the config.yml is set to true and the %targetplayer% does not have the proper permissions to recieve the item such as itemjoin.ultra, given a custom or default permission node.

    triedGive: ''
    • This is the message sent to the %targetplayer% when it returns that their inventory already has all the items and the %player% tried to give them.

    youHaveItems: ''
    • This is the message sent to the player when it returns that their inventory already has all the items.

    targetHasItems: ''
    • This is the message sent to the %targetplayer% when it returns that their inventory already has all the items.

    Remove: # These messages are sent in relation to the /itemjoin remove, /itemjoin removeOnline command(s).
    fromYou: ''
    • This is the message the recipient recieves when they succesfully have had the %item% removed.

    fromTarget: ''
    • This is the message the %targetplayer% recieves when they succesfully have had the %item% removed.

    triedRemove: ''
    • This is the message sent when the %targetplayer% tried to remove the %item% but it doesn't exist in their inventory.

    invalidSyntax: ''
    • This is the message sent when the executing player fails to use the /itemjoin remove commands correctly.

    usageSyntax: ''
    • This is the message sent after the invalidSyntax to show the executing player the proper usage.

    notInInventory: ''
    • This is the message sent when the %item% does not exist in the inventory.

    notInTargetInventory: ''
    • This is the message sent when the %targetplayer% does not have the %item% in their inventory.

    fromOnlinePlayers: ''
    • This is the message sent when the executing player has successfully removed the %amount% of the %item% from the %players%.

    notInOnlinePlayersInventory: ''
    • This is the message sent if all the online players do not have the %item% in their inventory.

    invalidOnlineSyntax: ''
    • This is the message sent when the executing player fails to use the /itemjoin removeOnline command correctly.'

    RemoveAll: # These messages are sent in relation to the /itemjoin removeAll command(s).
    fromYou: ''
    • This is the message sent to the player when the items are successfully removed from their inventory.

    fromTarget: ''
    • This is the message sent to you when the items are successfully removed from the %targetplayer%.

    triedRemove: ''
    • This is the message sent to the %targetplayer% when it returns that their inventory is empty.

    noItemsInInventory: ''
    • This is the message sent to the player when there are no items in the inventory.

    noItemsInTargetInventory: ''
    • This is the message sent when the %targetplayer%'s inventory is empty. The target player is the player identified via /itemjoin removeAll <player>.

    Database: # These messages are sent in relation to the /itemjoin purge command(s).
    purgeWarn: ''
    • This is the warning message sent upon the first time typing the purge command for the %purgedata% for the %targetplayer%. This comes before the purgeConfirm message.

    purgeSuccess: ''
    • This is the message sent once the executor successfully purges the information from the database file.
    purgeConfirm: ''
    • This is the message sent after the executor tries to execute the purge command %command%.

    purgeTimeOut: ''
    • This is the message sent when the executor fails to confirm the database information purge with in five seconds.

    Enabled: # These messages are sent in relation to the /itemjoin enable, /itemjoin enable command(s).
    forPlayer: ''
    • This is the message sent when the %player% has been successfully enabled.

    forTarget: ''
    • This is the message sent when the %player% has successfully enabled items for targetPlayer.

    forPlayerFailed: ''
    • This is the message sent when the %player% already has been enabled.

    forPlayerWorld: ''
    • This is the message sent when the %player% has been successfully enabled in %world%.

    forTargetWorld: ''
    • This is the message sent when the %player% has been successfully enabled in %world% for the targetPlayer.

    forPlayerWorldFailed: ''
    • This is the message sent when the %player% already has been enabled in %world%.

    globalPlayers: ''
    • This is the message sent when all players are successfully enabled.

    globalPlayersFailed: ''
    • This is the message sent when all players are already enabled.

    Disabled: # These messages are sent in relation to the /itemjoin disable command(s).
    forPlayer: ''
    • This is the message sent when the %player% has been successfully disabled.

    forTarget: ''
    • This is the message sent when the %player% has successfully disabled items for targetPlayer.

    forPlayerFailed: ''
    • This is the message sent when the %player% already has been disabled.

    forPlayerWorld: ''
    • This is the message sent when the %player% has been successfully disabled in %world%.

    forTargetWorld: ''
    • This is the message sent when the %player% has been successfully disabled in %world% for the targetPlayer.

    forPlayerWorldFailed: ''
    • This is the message sent when the %player% already has been disabled in %world%.

    globalPlayers: ''
    • This is the message sent when all players are successfully disabled.

    globalPlayersFailed: ''
    • This is the message sent when all players are already disabled.
  • Loading...
  • Loading...