custom permissions arent working

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the comminuty!

    Now, what are you waiting for? Join the community now!

  • LOOKING FOR A VERSION OF SKRIPT?

    You can always check out skUnity Downloads for downloads and any other information about Skript!

Status
Not open for further replies.

K9Lil

Member
May 26, 2019
11
1
0
24
heres my code when i do /rankset (player) (rank) i set myself to member and i wanna make it you have to be rank.owner to set ranks but when im rank.member is says An Internal error has occured and it sets my rank even tho i set my perms to rank.member
Code:
script options:
    $ use permissions
on join:
    if {rank::%player%} is not set:
        set {rank::%player%} to "&7Member"
        add "rank.member" to player's permissions
on chat:
    cancel event
    broadcast "&9&l[&f&lP%{prestige::%player%}%&9&l]&3&l[&f&lM%{mine::%player%}%&3&l]% {rank::%player%}% &f&l%player% &f&l> &7%message%"
command /rankset [<offline player>] [<text>]:
    permission: rank.owner
    permission message: &4&lNo Perms
    trigger:
        if arg 1 is not set:
                send "&9&lA&3&lM &l&f>> do /rankset (player) (rank)"
                send "&9&lA&3&lM &l&f>> Ranks: Owner, Admin, Mod, Builder, Member"
       if arg 1 is set:
                if arg 2 is "owner":
                          send "&9&lA&3&lM &l&f>> Set %arg 1%'s Rank to %arg 2%"
                          set {rank::%arg 1%} to "&c&lOwner"
                          add "rank.owner" to arg 1's permissions
                          add "rank.admin" to arg 1's permissions
                          add "rank.mod" to arg 1's permissions
                          add "rank.builder" to arg 1's permissions
                if arg 2 is "admin":
                          send "&9&lA&3&lM &l&f>> Set %arg 1%'s Rank to %arg 2%"
                          set {rank::%arg 1%} to "&4&lAdmin"
                          add "rank.admin" to arg 1's permissions
                          add "rank.mod" to arg 1's permissions
                          add "rank.builder" to arg 1's permissions
                          remove "rank.owner" from arg 1's permissions
                if arg 2 is "mod":
                         send "&9&lA&3&lM &l&f>> Set %arg 1%'s Rank to %arg 2%"
                          set {rank::%arg 1%} to "&e&lMod"
                          add "rank.mod" to arg 1's permissions
                          add "rank.builder" to arg 1's permissions
                          remove "rank.owner" from arg 1's permissions
                          remove "rank.admin" from arg 1's permissions
                 if arg 2 is "builder":
                          send "&9&lA&3&lM &l&f>> Set %arg 1%'s Rank to %arg 2%"
                          set {rank::%arg 1%} to "&9&lBuilder"
                          add "rank.builder" to arg 1's permissions
                          remove "rank.owner" from arg 1's permissions
                          remove "rank.admin" from arg 1's permissions
                          remove "rank.mod" from arg 1's permissions
                 if arg 2 is "member":
                         send "&9&lA&3&lM &l&f>> Set %arg 1%'s Rank to %arg 2%"
                         set {rank::%arg 1%} to "&7Member"
                         add "rank.member" to arg 1's permissions
                         remove "rank.builder" from arg 1's permissions
                         remove "rank.mod" from arg 1's permissions
                         remove "rank.admin" from arg 1's permissions
                         remove "rank.owner" from arg 1's permissions
                else:
                         send "&9&lA&3&lM &l&f>> Thats Not A Rank"
 
Last edited:
I'm pretty sure it's because you need to set the permission node in quotation marks.

Change
permission: rank.owner

To
permission: "rank.owner"

Also might be because [<offline player>] should be [<offline players>]
 
Last edited:
When an internal error occurs, it's printed to console. Send the error
 
nope
thats not it and i dont know how to grt into minehut.com console
First: don't use minehut.
Second: to access console log on minehut, go to File Manager -> logs -> latest.log and scroll down
 
I figured it out its not setting the permissions but anyways here
this is what happens when i do /rankset k9lil owner and perms are rank.owner
Code:
[23:55:39] [Server thread/INFO]: K9Lil issued server command: /rankset k9lil owner
[23:55:39] [Server thread/INFO]: K9Lil [bd91f57a-abb2-464d-93ec-d1f7cce54646]: /rankset k9lil owner
[23:55:39] [Server thread/ERROR]: Could not pass event PlayerCommandPreprocessEvent to Skript v2.4-alpha1
org.bukkit.event.EventException: null
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:320) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:520) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:505) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PlayerConnection.handleCommand(PlayerConnection.java:1662) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1510) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PacketPlayInChat.a(PacketPlayInChat.java:47) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:13) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFile:135) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFile:114) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.aW(MinecraftServer.java:895) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:888) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(SourceFile:123) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:872) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:805) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_191]
Caused by: java.lang.NoClassDefFoundError: net/milkbowl/vault/permission/Permission
    at tk.shanebee.skperm.vault.elements.expressions.ExprPlayerPerm.change(ExprPlayerPerm.java:71) ~[?:?]
    at ch.njol.skript.effects.EffChange.execute(EffChange.java:284) ~[?:?]
    at ch.njol.skript.lang.Effect.run(Effect.java:52) ~[?:?]
    at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:61) ~[?:?]
    at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:89) ~[?:?]
    at ch.njol.skript.lang.Trigger.execute(Trigger.java:57) ~[?:?]
    at ch.njol.skript.command.ScriptCommand.execute2(ScriptCommand.java:290) ~[?:?]
    at ch.njol.skript.command.ScriptCommand.execute(ScriptCommand.java:249) ~[?:?]
    at ch.njol.skript.command.Commands.handleCommand(Commands.java:254) ~[?:?]
    at ch.njol.skript.command.Commands$1.onPlayerCommand(Commands.java:169) ~[?:?]
    at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_191]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_191]
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:316) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    ... 18 more
[23:55:39] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'rankset' in plugin Skript v2.4-alpha1
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at org.bukkit.craftbukkit.v1_14_R1.CraftServer.dispatchCommand(CraftServer.java:707) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PlayerConnection.handleCommand(PlayerConnection.java:1670) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1510) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PacketPlayInChat.a(PacketPlayInChat.java:47) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:13) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(SourceFile:135) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(SourceFile:114) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.aW(MinecraftServer.java:895) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:888) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(SourceFile:123) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:872) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:805) [spigot.jar:git-Spigot-01d0f04-b7fea42]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_191]
Caused by: java.lang.NoClassDefFoundError: net/milkbowl/vault/permission/Permission
    at tk.shanebee.skperm.vault.elements.expressions.ExprPlayerPerm.change(ExprPlayerPerm.java:71) ~[?:?]
    at ch.njol.skript.effects.EffChange.execute(EffChange.java:284) ~[?:?]
    at ch.njol.skript.lang.Effect.run(Effect.java:52) ~[?:?]
    at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:61) ~[?:?]
    at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:89) ~[?:?]
    at ch.njol.skript.lang.Trigger.execute(Trigger.java:57) ~[?:?]
    at ch.njol.skript.command.ScriptCommand.execute2(ScriptCommand.java:290) ~[?:?]
    at ch.njol.skript.command.ScriptCommand.execute(ScriptCommand.java:249) ~[?:?]
    at ch.njol.skript.command.ScriptCommand.onCommand(ScriptCommand.java:195) ~[?:?]
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot.jar:git-Spigot-01d0f04-b7fea42]
    ... 17 more
 
@ShaneBee seems like SkPerm is loaded when Vault isn't installed (I could be wrong and I probably am wrong)
 
@ShaneBee seems like SkPerm is loaded when Vault isn't installed (I could be wrong and I probably am wrong)
Ill have to double check the could but I was pretty sure Sk-Perm wouldn't load if Vault was absent.
Anyways, if Vault is absent, Sk-Perm should not be installed on the server since it would do absolutely nothing.
[doublepost=1559668754,1559668617][/doublepost]Yeah, its not supposed to load, my guess is the user has Vault for economy, but Permissions is not set up with Vault, therefor the plugin is failing to find Vault's permission classes
Screen Shot 2019-06-04 at 10.18.29 AM.png

[doublepost=1559670389][/doublepost]I did some testing, I ran a test server with Skript, Sk-Perm and Vault.

It registers the plugin on load, it also allows me to add to my permissions and see a list of them, even though I have no permission plugin, therefor Im assuming vault will default hook into Bukkit perms:
Code:
[10:41:52 INFO]: [Sk-Perm] [Skript] Dependency found, loading Skript syntaxes
[10:41:52 INFO]: [Sk-Perm] [Vault] Dependency found, Vault syntaxes loaded
[10:41:52 INFO]: [Sk-Perm] [PermPlugin] No permission plugin found, ignoring PermPlugin syntaxes
[10:41:52 INFO]: [Sk-Perm] Add-on loaded successfully
[10:41:52 INFO]: CONSOLE: Reload complete.
[10:41:52 INFO]: Timings Reset
[10:41:52 INFO]: [Skript] Loading variables...
[10:41:52 INFO]: [Skript] Loaded 8202 variables in 0.5 seconds
[10:41:53 INFO]: [Skript] All scripts loaded without errors.
[10:41:53 INFO]: [Skript] Loaded 1 script with a total of 1 trigger and 1 command in 0.11 seconds
[10:41:53 INFO]: [Skript] Finished loading.
[10:41:53 INFO]: [Vault] Checking for Updates ...
[10:41:53 INFO]: [Vault] No new version available
[10:41:55 INFO]: [Skript] ShaneBee issued effect command: send "Perm: %player's permissions%"
[10:41:57 INFO]: [Skript] ShaneBee issued effect command: add "test" to player's permissions
[10:42:14 INFO]: [Skript] ShaneBee issued effect command: send "Perm: %player's permissions%" to console
[10:42:14 INFO]: Perm: minecraft, craftbukkit, bukkit.broadcast.user, minecraft.command.stop, vault.admin, minecraft.admin.command_feedback, minecraft.command.say, minecraft.nbt.place, minecraft.command.teleport, minecraft.command.msg, minecraft.command.me, bukkit.command.plugins, minecraft.command.gamemode, bukkit.broadcast.admin, minecraft.command.selector, minecraft.command.kill, bukkit.command.help, minecraft.command.list, minecraft.command.trigger, bukkit.command.version, minecraft.command.defaultgamemode, minecraft.debugstick, vault.update, bukkit.command, minecraft.command.give, minecraft.nbt.copy, minecraft.command.xp, skript.admin, minecraft.command.kick, minecraft.command, bukkit.command.reload, bukkit.broadcast, minecraft.command.seed, minecraft.command.help, minecraft.command.effect and minecraft.command.toggledownfall
> pl
[10:42:26 INFO]: Plugins (3): Sk-Perm*, Skript, Vault

My guess is its an issue with Vault + SkQuery's permission system, which even Limeglass has stated not to use SkQuery's permission system as it is very very broken.

ANYONE in their right mind will recommend to the OP to use a real perm system, even PEX is better than SkQuery's perm system.
There is absolutely zero reason to ever use SkQuery's perm system.
If you want to say to me "But I want a fully scripted server", sorry but my reply is, that is just stupid for many reasons. To have a scripted perm system you still need vault and SkQuery so why not just use PEX or LuckPerms or anything really?

Stop trying to re-invent the wheel.
 
  • Like
Reactions: TPGamesNL
so i should just use LuckPerms or PEX
[doublepost=1559698095,1559697813][/doublepost]cause i want to creak my own custom permissions but if i can do it with those i will
[doublepost=1559699356][/doublepost]Nvm i just create a varible XD
 
Status
Not open for further replies.