Troubleshooting - RockinChaos/ItemJoin GitHub Wiki
Bugs or issues left in a review will not be answered.
If you open a bug report I will work to resolve it and get back to you ASAP.
Index:
- Item Permission Issues
- Config File(s) Resetting/Not Saving
- Placeholder Issues
- Chest Commands GUI Issues
- MyCommand Issues
- Placeholder Issues
- Compass Warp Issues
- Item Overwrite Issues
- Knowledge Book Issues
- CMI Issues
Scenario: I installed the plugin but I am not receiving any of the items.
Solution: This is most likely happening because you didn't set up the permissions correctly. If you defined custom permission-nodes for your item(s) you must use the permission you defined in your items.yml in the group(s) of your permissions plugin. If you did not, you have to use one of the two default permissions;
itemjoin.WorldName.Name:
description: Replace Name with the name of the specified item and WorldName with the name of the world to receive that item.
itemjoin.WorldName.*:
description: Gives permission to get all the items from the specified world.
(I recommend itemjoin.worldname.*
as it would be easier)
Remember permissions are also case sensitive, even the world name! This is because of java restrictions and hopefully will change in the future. Sometimes certain permissions plugins fix this but in reality, it depends on the permissions plugin you use.
Scenario: I installed the plugin but all players are getting items regardless of permissions.
Solution: This is most likely happening because you have permissions disabled in your config.yml.
Simply set Obtain-Items:
to true for non-OP players to require permissions for the items and set Obtain-Items-OP:
to true for OP players to require permissions for the items as well.
Scenario: I modified one of my config files, but it keeps resetting itself.
Solution: This can happen if you modify either config-version:
or items-version:
in your config files. Make sure that those values are never touched.
Scenario: I modified one of my config files, it doesn't save.
Solution: If it seems like the item is not saved, it may be because, when you modified the config file you lost some spacing. YAML files are very, VERY specific and if there is a single missed space it won't be happy and it will throw a lot of errors.
An easy fix for this is to:
1.) Copy your modified YAML file (it should have been saved with a name such as items231233.yml
).
2.) Paste the copied config file into the box from the following link*; https://codebeautify.org/yaml-validator
3.) Then click Validate and it will tell you exactly where the issue exists.
*It is possible that code-beautify will miss certain errors so try this link; http://yaml-online-parser.appspot.com/ if you are still having issues
Scenario: I am having issues with PlaceholderAPI and placeholders not formatting correctly.
Solution: In case you are seeing something like this when using a Placheholder, which is the most likely scenario;
You are having this issue because you need to download the corresponding (vault in this case) extension from the PlaceHolderAPI "cloud". You can do this by typing /papi ecloud download Vault
in the chat/console. PlaceholderAPI will then download this extension and you will need to reload PlaceHolderAPI with /papi reload
. Depending on your PlacehodlerAPI version you might need to fully restart your server instead.
If you need other extensions just look through the list /papi ecloud list all
.
Scenario: I am having issues with Chest Commands GUI. I have a custom command bound to a menu but when I execute the command using an ItemJoin item it says unknown command!
Solution: The best way I can explain it is, that the custom commands from this plugin are not real. They are "ghost" commands that are registered after ALL of your plugins are done being enabled. Normally plugin commands are being "registered" when they load, and this is needed for other plugins to use them, but ChestCommands does not do that with custom commands. Therefore we cannot grab the command or communicate with it in any way.
The easy solution though is to use ChestCommands RAW commands. You would want to use /cc open [file] and [file] is the name of the file in the ChestCommandsGUI folder, such as I named this menu options. So as shown below I would replace [file] with my options menu;
interact:
- 'player: cc open options'
or
interact:
- 'cc open options'
As long as its not a custom command you created within ChestCommands, it will work.
Scenario: I am having issues with MyCommand. I have created a custom command but when I execute the command using an ItemJoin item it says unknown command!
Solution: Custom commands from MyCommand are not actually being "registered" to the server preventing other plugins from using them. However, the author implemented a way for other plugins to use their commands via so-called raw commands.
Use this;
interact:
- 'console: mycmd-runas player %player% /putcommandhere'
replace putcommandhere with the name of the command in the MyCommand file, not the header but the actual command such as;
gamemode_alias:
command: /gm
type: ALIAS
alias: /gamemode
permission-required: true
I created this in the MyCommands.yml. I need the /gm part.
So I would put it in my ItemJoin items.yml like this;
interact:
- 'console: mycmd-runas player %player% /gm %player% 1'
This will set the user who ran the item command to creative.
Scenario: I am having issues with my compass item. It will warp me to another location when left- or right-clicking it.
Solution: This is most likely happening because of WorldEdit. The compass is the standard item defined by WorldEdit to allow warping quickly. Only Operators and users with permission will have this issue. If you wish to change the standard item, navigate to your WorldEdit plugin folder, and open your config.yml file. Look for Line 123, and change the item ID compass
to another item's ID. Suggestion: knowledge-book
as it can't be used with ItemJoin properly because of how it works.
Scenario: I am getting an error that my item can't be overwritten. What should I do?
Solution: This usually means that either your inventory is full, or the slot where your custom item is suppused to be is occupied. To prevent this from happening you have three options in form of itemflags. Use either Overwrite
, give-next
or move-next
. Click the blue "itemflags" link to navigate to the itemflag section to find out what each flag does, and how to use them.
Scenario: I am trying to use the knowledge book as a custom item, but the server console is getting spammed by a tag not valid
error.
Solution: The knowledge book is known to cause errors with ItemJoin. Unfortunately, there is nothing we can do about it, because of how the book is coded by Mojang. This is because consuming an empty knowledge book throws this error. Still, it should not cause any game-breaking problems using it. If you do not want the item to be consumed use the cancel-events
itemflag as this will prevent consumption and also prevent the tag not valid
error since the book is not consumed.
Scenario: I am trying to use /clear with CMI, but ItemJoin items won't be removed.
Solution: By default, CMI will ignore any ItemJoin item from the /clear command. If you want the items to be clearable with CMI, you need to edit your CMI config.yml. Simply find the lines - NBT:ItemJoin.Name
and - NBT:ItemJoin Name
and remove them. Save the config and use /cmi reload
. ItemJoin items will now be included in the /clear command.
Trivia:
1.) %player% gets the user who ran the item command.
2.) Make sure you include a / when you type the command from MyCommands.
3.) console: mycmd-runas player %player% /
is required, after that you can use your custom command.
4.) So basically console: mycmd-runas player %player% /putcommandhere
If your issue is not listed please send me a direct message on Spigot or open a bug report on ItemJoin's Github Repository and I will get back to you ASAP. If you need to get a hold of me quickly, feel free to join the Discord Server!