Custom Join Items

Cover

This plugin allows to give customized items on join, each one execute a command. This is useful for lobby servers, for example. You can set a permission to receive the item, and you can add infinite items. At the moment is really small, but I'm planning to add more features. Note that the user will receive the item on join, no matter if he was new, or if he stored the item.

You can use this plugin with Chest Commands GUI that allows you to create menus made of items, and each one executes a command.

Features

  • Give items on join, to people with correct permission.
  • If a player already owns the item, it does not give a duplicate.
  • Give items on respawn (configurable)
  • Prevent items from being dropped, even on death.

Commands and permissions

/cji reload - reloads the plugin
/cji update - updates the plugin

The permission is "customjoinitems.admin".

Configuration

In the plugin's folder you find a file named items.yml:

# This is just an internal name, must not be the same of another.
first-item:
    
    id: 352
    # (REQUIRED) The ID of the material.
    
    
    name: '&aTest item'
    # (REQUIRED) The custom name of the item (with formatting codes).
    
    
    data-value: 0
    # This is optional. Can be used for colored wool, and other items
    # with data values.
    
    cooldown-seconds: 5
    # This prevents command spam.
    
    command: 'say Hello world'
    # The command bound to this item. It will be executed when the item
    # is right clicked.
    # There are some prefixes that can give extra functionalities to
    # commands:
    # 
    # 'console: ' (execute the command as console)
    # 'op: ' (execute the command as op)
    # 'server: ' (for BungeeCord)
    # 'tell: ' (sends a message to the player)
    #
    # You can use symbols and the placeholders %player% and %world%.
    #
    # Use multiple commands like this: 'command; command2; command3'
    
    lore:
      - 'Line 1'
      - 'Line 2'
      - '...'
    # The lore of the item (with formatting codes and symbols support).
    
    block-movement: false
    # This prevents players from moving the item at all.
    
    slot: 9
    # If omitted, the item will be placed in the first empty slot.
    # If set, the item will attempt to place in that hotbar's slot,
    # and it will move any existing item that is in that slot,
    # if there's enough space in the inventory.
    
    
    permission: 'customjoinitems.test'
    # The item required to obtain the item on join. If not set,
    # everyone will get the item.
    
    
    first-join-only: false
    # (default = false)
    # If true, the player will get the item only when they join
    # the server the first time.
    # NOTE: give-at-respawn will automatically be set to false,
    # if this node is true.
    
    
    give-at-respawn: true
    # (default = true)
    # If set to true, the player will receive the item when he dies
    # and respawn.
    
    
    allow-drop: false
    # (default = false)
    # Allows players to drop the item.


    give-on-world-change: false
    # (default = false)
    # The plugin will eventually give the item to the players when they
    # change world.
    # Useful if you have Multiverse or similar plugins.
    
    
    disabled-worlds: world_nether, world_the_end
    # a list of disabled worlds separated by commas. If you don't want to
    # disable an item in some worlds, remove this node or set it to ''.


Videos

Spanish - German - Portuguese



Metrics

This plugin uses Metrics-Lite, to track anonymous data about servers using this plugin. It will help the future developement, and has no impact on your server's performance. If you really want to disable it, go to the folder /plugins/PluginMetrics and set opt-out: true.

Updater

You can use "/cji update" in-game to automatically update the plugin. You can disable the update checking at startup by setting update-notifications: false in config.yml.

Future features

  • Restrict crafting and storing items
  • Add right or left click options
  • Add cooldown bypass for admins, through a permisison
  • Add enchantments
  • Add books
  • Add per-world config
  • Command to get an item

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Mikaoy Mikaoy May 25, 2016 at 18:25 UTC - 0 likes

    Great plugin! A great addition would be - as mentioned in the 'Future features' - books. Also, the compass has some weird jump command or something for me that I can't get rid off, and it's only for the compass id :/. However, as I said, great plugin!

  • Avatar of Jeskai_Master Jeskai_Master May 23, 2016 at 18:57 UTC - 0 likes

    For some reason it won't update, even after I have done the /cji update command! When I join, it only gives me the old items and not the new ones. Can anyone fix this?

  • Avatar of kyle201YT kyle201YT May 01, 2016 at 23:10 UTC - 0 likes

    1.8 please!

  • Avatar of U1T1MATE U1T1MATE May 01, 2016 at 03:01 UTC - 0 likes

    @JackAndMC: Go

    I'm having the exact same issue - really do need a fix, thanks!

  • Avatar of JackAndMC JackAndMC Apr 25, 2016 at 01:46 UTC - 0 likes

    I can't get the plugin to give me the item on joining the server. I have to switch worlds in order for it to give it to me. Is there a known fix or update coming?

  • Avatar of fearink fearink Apr 23, 2016 at 22:43 UTC - 0 likes

    is it possible to give yourself a cji configured item?

  • Avatar of RechterApfel RechterApfel Apr 20, 2016 at 18:29 UTC - 0 likes

    Hay,

    the Plugin is nice :)

    Please add Enchantments i need it so much :)

  • Avatar of Gagenkraft Gagenkraft Apr 19, 2016 at 15:11 UTC - 0 likes

    @Azen0x: Go

    To answer your question: Yes, it is possible to execute Bungeecord commands.

    If you want to teleport your own player to a different server by right clicking an item from the Custom Join Items plugin, you have 2 options to do that:

    1. Use the command /send <player/current/all> <target>. Using it in the config would look like this: command: 'send %player% Survival'
    • "%player%" is in this case the variable that you use to obtain the playername that is using the item.
    • "Survival" is in this case the server that you want to teleport to. Keep in mind that the name of the server needs to be exactly the same as the name that you have defined in your BungeeCord Configuration.
    1. Use the command /server [server]. Using it in the config would look like this: command: 'server Survival'
    • "Survival" is in this case the server that you want to teleport to. Keep in mind that the name of the server needs to be exactly the same as the name that you have defined in your BungeeCord Configuration.
    Last edited Apr 19, 2016 by Gagenkraft

    Founder & Owner of the Minecraft Server, the "Falkor Network"

  • Avatar of Gagenkraft Gagenkraft Apr 19, 2016 at 15:00 UTC - 0 likes

    @yama_HD: Go

    Yama_HD the problem that you have is NOT caused by the Custom Join Items plugin, because it only clears your inventory in the world in which you spawn. After that initial clear it doesn't clear your inventory anymore when you join a different world, unless you go back to world in which you spawned.

    Multiverse Inventories is in this case the one that is causing the issue. Multiverse Inventories allows you to have seperate inventories between worlds, which basically means that you will get a different inventory when you are going to a different world.

    Example:

    In your main "world" (in which you spawn when you join the server) you have a diamond sword. If you teleport to a different world like the nether_"world" you will obtain an new empty inventory when you first join that world (unless you configure it differently in the Multiverse Inventories configuration).

    So to solve you problem I highly recommend you to go to this page and post your problem there:

    http://dev.bukkit.org/bukkit-plugins/multiverse-inventories/

    Last edited Apr 19, 2016 by Gagenkraft
  • Avatar of yama_HD yama_HD Apr 19, 2016 at 14:46 UTC - 0 likes

    Hey i have a problem with the plugin: I have installed Multiverse and Multiverse Inventorys.

    When i make "clear Inventory on join" to "true" it works fine BUT When i change the world my Inventory cleared too. and thats the problem. :D

    Please fix that.

Facts

Date created
Sep 03, 2013
Categories
Last update
Mar 08, 2016
Development stage
Release
Language
  • enUS
License
All Rights Reserved
Curse link
Custom Join Items
Downloads
162,361
Recent files

Authors