[PEX 1.9] PermissionsEx permissions not working when changing world directory
HMlol opened this issue · 21 comments
I've been trying to set up PermissionsEx for 1.9, but I can't seem to get it working.
For instance: I can't acces any of the PEX commands, altough all the permissions are given to the 'Owner' rank. It also won't register any other permission of these mods:
- UltimatePluginHider
- Vault
The only permission that does work is - modifyworld.*...
I linked a .zip file with the server log and the permissions.yml file, is there something I did wrong or something?
You can massively reduce the overall length of your file by using global permissions instead of giving the same permission nodes to every group on every world, and by giving your staff ranks permissions.* instead of trying to list all of the PEX nodes.
Use Debug Mode to find out where you're missing permissions.
Thanks for the tips, cleaned the permissions file up with inheritance and such, but haven't tested anything yet
I've just tested the new permissions.yml... The debug mentions a so called "Cache Miss" with about every command I try... The commands also don't work, unless you're in OP.
Am I doing something wrong here or?
Help (08032016).zip
Where did you get your "Essentials" download? It could be a version compatibility issue since the 'real' (original) "Essentials" was discontinued at version 1.8.1 because "bukkit is dead".
Yep. That looks like the problem. You're running CraftBukkit as your server wrapper (line 7 of latest.log) and Spigot's version of Essentials ("EssentialsX", line 11 of latest.log). If you get Spigot for 1.9, I bet the errors will go away.
Dear Stormbow,
I've just switched to spigot 1.9, but PermissionsEx is still giving the 'Cache Miss' problem...
Ok, let me see your new console log and your permissions.yml that uses the condensed permission lists.
The latest permissions.yml file you posted doesn't have any permissions set globally, so unless you're on "Survival", "Survival_nether", or "Survival_the_end" you won't have any permissions at all. (And that includes if you're in some sort of lobby or hub world.)
This link will show and explain multiworld permissions.
I only have the worlds Survival, Survival_the_end and Survival_nether as of right now, and i'm planning to add more worlds, so that's why there are no global permissions set.
Also, does it matter that the location of the world is changed? (not in the server folder itself, but in my C:\Users\Install\AppData\Roaming.minecraft\saves folder)
I've added the permission.yml file, together with the latest.log file, as per your request.
Help (10032016).zip
I've never moved the world folders, so I'm not sure that's a good idea at all. I've even less of an idea on how that could impact all of your plugins...
The 'latest.log' in your zip file is corrupted and can't be extracted. I tried downloading it a few times.
One thing I need to make sure of here, now that I thought of it, you're getting your permissions.yml file from inside the PermissionsEx folder, right? Not using the permissions.yml file in your server's root directory, right?
Okay, I'll send the files again later, because I'm away now...
I am getting the permissions.yml file from /plugins/PermissionsEx/permissions.yml
The server is setup like this:
The folder:
---> One map which contains the worlds for this server.
---> One map which contains the server its self
This is done by changing the path in the server.properties file from:
world: World
to
world: D:/storage/[my name]/Minecraft/Servers/Spigot 1.9/Worlds
The directory for my server is: D:/storage/[my name]/Minecraft/Servers/Spigot 1.9/Server
Hope this clears some things up... This setup does work with all the plugins, only permissionsEx seems to struggle with it... It could also be a problem with EssentialsEx, but I can't test that as of right now... The soonest I can test it is this weekend...
Which chat management plugin are you using to get your prefixes/suffixes displayed in-game?
Ahhhhh! You don't have a chat management plugin in your server's plugins folders (beta or otherwise), so you don't have one at all.
Most people use Essentials, so EssentialsChat is their chat management plugin. Since you're using Spigot, you'd want EssentialsX (and the Spigot version of EssentialsChat) which is specifically for Spigot. Once you get a chat management plugin installed, we can work out the prefix issue.
(PEX itself doesn't display them, just gives you a place to store the info for other plugins to access.)
You can also read the Basic Prefix/Suffix Guide for more info on getting the prefixes working. (I know I'm slower to reply here than in the actual PEX forums.)
Come to think of it... I don't see Modifyworld at all in your plugins folders either... Did you remove all your plugins from the zip file?
Sooo, just tested a few things on my server and there seems to be a problem with the inheritance system in PermissionsEx.
I've updated my file and it should theoretically work... But it doesn't...
PermissionsEx notes in the log that it started successfully and that there are no problems to report...
But all the prefixes and suffixes are gone...
Here are the maps which contain the server and the worlds, to give you guys an overview in how my server is currently set up. That will also give you the latest.log and the permissions.yml file.
NOTE: The latest test was done on the 'normal' server, NOT the 'beta' one...
NOTE 2: I've gotten rid of the actual files inside the worlds folder, otherwise I couldn't upload the file.
Help (16032016).zip
Vault is installed as a Chat manager, so that should be alright.
I did also delete the plugin jars to make the file lighter to make it able to upload.
The installed plugins are:
(- Essentials on the Beta one)
- PasswordProtect
- PermissionsEx
- Vault
Not only the prefixes and the suffixes are broken in the permissions file as given in my last post, but the whole permissions system isn't working...
Did some more tests, and it seems that the group inheritance doesn't work... Don't know why tough...
Also, the prefixes and suffixes don't work if there is no EssentialsX, which is weird, because Vault is the current chat manager...........
Added some more logs which show the problem, the 17_1.log.gz is with the group inheritance, the rest of the logs without the group inheritance system.
The old problem still remains, no permissions are granted, even tough they are listed...
The most common debug it's giving me is this:
[17:40:38] [Server thread/INFO]: Tml32 issued server command: /help
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.chat.spy.exempt', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.mail', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission '', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.help', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission '', regex-matched a value of undefined from cache.
[17:40:38] [Server thread/INFO]: §cTml32 §4was denied access to command.
[17:40:44] [Server thread/INFO]: Tml32 issued server command: /helpop
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.chat.spy.exempt', regex-matched a value of undefined from cache.
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.mail', regex-matched a value of undefined from cache.
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.', regex-matched a value of undefined from cache.
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission '', regex-matched a value of undefined from cache.
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.helpop', no match found (CACHE MISS)
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.', regex-matched a value of undefined from cache.
[17:40:44] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission '', regex-matched a value of undefined from cache.
[17:40:44] [Server thread/INFO]: §cTml32 §4was denied access to command.
[17:43:19] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.sethome.bed', no match found (CACHE MISS)
[17:43:19] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.sethome.', no match found (CACHE MISS)
[17:43:19] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission 'essentials.', regex-matched a value of undefined from cache.
[17:43:19] [Server thread/INFO]: [PermissionsEx] User Tml32 checked for permission '*', regex-matched a value of undefined from cache.
The error codes switch between "regex-matched a value of undefined from cache" and "no match found (CACHE MISS)"
Does this "(CACHE MISS)" error mean that I first have to put in all of the essentials permissions first with ether a true (-essentials.[randompermission]) or false (- -essentials.[randompermission])?
Ok.. I've never seen anyone at all that uses Vault as their chat manager, so I don't know anything about that or if it even works anywhere on any server. Since it's not functional as a chat manager on your server, I'm guessing you'll need a different chat manager.
Did you move your world folders back into their original/regular location before this testing?
Your "not working" permissions.yml file has no global permissions at all for the "Owner" group, and essentials.help
on the world named "Survival" only, and the debug output doesn't show me which world you're on when attempting the command. Same for Tml32 and being in the "Friend" group.
So, you're probably gong to need @zml2008 to come in here and troubleshoot this because I personally don't think PEX is functional on 1.9 servers. I haven't seen any servers running 1.9 and a fully functional (or even partly functional) PEX yet.
(Damn ticket wouldn't update properly. Had to close/open/reassign it multiple times to get it listed correctly.)
On March 18, 2016 9:16:01 AM PDT, Harm [email protected] wrote:
Reopened #2348.
You are receiving this because you were assigned.
Reply to this email directly or view it on GitHub:
#2348 (comment)
This seems like a spigot bug - I'm travelling, could you report it to them? (Link to this issue when you do).
I've just reported it:
https://hub.spigotmc.org/jira/browse/PLUG-134
Vault functions fine, its definitely Pex messing things up.
We test all the commands on the "Survival" world, so that should be fine.
Also, Pex functions fine on 1.9 servers, it only messes up big time when changing the location of the worlds folder.
Now, I've got the worlds setup on a different location so my beta and normal server can run the same worlds without copy and pasting...
So, once again, the server runs fine as long as you don't change the location of the worlds folder.
@zml2008, it's almost like Pex doesn't find the worlds its self, but I cant set it up properly.
Here's how I've done it in the server.properties file:
world: ../Server (Spigot 1.9) Worlds/Surival
(the ../ stands for going to the directory before)
Now,for Pex this doesn't work,so IMO there are two main thing to consider:
- Either make a way to follow a path to the right directory like in the server.properties file:
worlds
--> ../../Server (Spigot 1.9) Worlds/Surival
- Or make an option in the config where you can change the target folder like this:
World directory:
- standard
or
- ../../Server (Spigot 1.9) Worlds/Surival
The bug reported to spigot is closed, saying that the system is faulty on the plugin side...
The problem is --> The PermissionsEx per world permissions stop working as soon as you change the file locations of the worlds. The spigot team says this the plugin's fault, and that it doesn't have anything to do with the spigot builds.
Unfortunately PermissionsEx is currently unmaintained and no further updates are planned. Because of this, all pull requests are being closed. If you are looking for an actively maintained permissions plugin, take a look at LuckPerms. It is compatible with major server platforms and can import data from PEX.