Open HelenaKitty opened 7 years ago
So you believe, the core.changegm
node should be more fine-grained?
Only to the extent that spectator mode uses a seperate permission node.
So how would you like the permissions to work? What permission nodes should there be, and what would their combination mean for the command? Ideally write out an entire table having all possible combinations of all the permissions involved, and the effects on the command.
In order to keep to tradition with how Vanilla and Bukkit works...
If core.gamemode.spectator
is specified to a player, but core.gamemode
isn't then they are only allowed to change to spectator mode.
If core.gamemode
is specified to a player, but core.gamemode.spectator
isn't then they are allow to change to survival, adventure, or creative mode but not spectator mode.
And so on...
I think there should also be core.gamemode.creative, core.gamemode.survival and core.gamemode.adventure.
What @mohe2015 suggested could come in useful too, for those who want to be even more explicit on which modes a player is allowed to use.
Plus, if you assign permission node core.gamemode.*
to a player, then they have access to all modes, this is not traditional, however it is an advancement over what Bukkit and Vanilla have to offer in regards to gamemode permission nodes.
The only problem with this is that there's now no single permission that would grant the /gm
command. This means that the command will be visible (in /help
) and available to all players, but only those with the proper permissions will be able to change their gamemode.
Is there a workaround, or is this something for later?
Why do we want more fine grained permissions anyway? I understand the appeal, but in what case would a player need to manually change their game mode to spectator? In a minigame, a plugin or command block can do it for players without any permissions needed.
I highly believe that there should be a permission node for spectator mode, I have had situations where I am comfortable with giving someone access to /gamemode, but not spectator mode as they can go through walls, floors, anything!
The permission node should be
core.changegm.spectator
, however to be more tradition, you should change thecore.changegm
permission node tocore.gamemode
as it is more understandable.