前言:为什么写这篇帖子
最近太多小白服主问关于权限的问题了
一般都先是:大佬们为什么我玩家输入xxx指令会提示没有权限啊,有办法解决吗
我寻思着,没权限不就给权限吗,我通常都会回答:那你就给权限啊
小白服主:权限是什么?
于是就有了这篇帖子
1.什么是权限
权限,顾名思义:是否具备进行这一操作的能力
例如,你要进入服务器,就需要进入服务器的权限
再在现实举个例子,你用国内机子搭建一个网站,那就需要备案
你也可以把自己当作一个机械系统,
例如,你要举起一个杯子,手就需要大脑发配的权限来举起杯子
若手没有权限(也就是大脑不想举起)那你的手就无法举起杯子
再套回minecraft内,在服务器里,任何操作都需要权限
例如,你需要行走,那就需要行走的权限
你要破坏方块,那就需要破坏方块的权限
因此,正如前言说的,
玩家输入xxx指令,需要相对应的权限
2.权限组插件
目前比较老牌的权限管理插件为以下三个
(均为spigot原帖)
此贴接下来主要讲解lp权限组管理插件
lp的功能比另外两个多,所以较为推荐使用
3.lp的基本使用与介绍
首先,要介绍一个东西
权限节点
权限节点以最简单得来说
就是你要进行什么操作时所要拥有的东西
就比如,拿/tpa来举例子,tpa总知道是什么吧
当你输入/tpa xxx时,他会检测你是否拥有这个权限
那么,他如何检测呢?
例如你安装了lp插件,他会通过lp插件检测你是否拥有essentials.tpa权限节点
没错,这就是权限节点
一些essentials.vanish,essentials.fly之类的这也是权限节点
在平时添加权限或删除权限时,需要用到权限节点
接下来就是重头戏了
添加权限
lp的权限添加指令为/lp user 玩家 permission set 权限节点 true
但玩家没有权限领取,我该如何把权限给玩家呢
第一步,需要寻找相对应的权限节点,既然用的是EasykitsRel插件创建的礼包
那就应该去它的帖子里去寻找相对应的权限节点
所以,玩家领取新手礼包需要的权限为EasyKits.kits.新手礼包
因此,我需要输入指令/lp user 玩家 permission set EasyKits.kits.新手礼包 true
这样就能将礼包的权限给予给玩家了,玩家也可以领取新手礼包了
等等?一条指令只能设置一个玩家,那我岂不是每个玩家都要设置一遍?
有没有简便点的方法?有,那就是涉及权限深处的
权限组系统
权限组的意思是将一堆权限捆绑在一起
这就叫做权限组
然后将权限组用指令给予玩家
这一操作专业术语叫继承权限组
在lp内,继承权限组的指令为/lp user 玩家 parent add 权限组名
创建一个权限组的指令为/lp creategroup 权限组名(自定义)
将权限节点捆绑在权限组里的指令为/lp group 权限组名 permission set 权限 true
小白服主:啊?我现在了解了权限组,但如何一次性将新手礼包的权限给玩家呢
在lp内,有个默认权限组,名叫default,
这个权限组是服务器所有玩家都会继承的权限组
所以,想把新手礼包的权限一次性给予全部玩家,只需要输入
/lp group default permission set EasyKits.kits.新手礼包 true
4.权限高级运用
权限组真正的高级运用在于vip或特殊玩家用户组的运用
下面简单说说vip权限组的运用
创建永久制vip组
首先创建一个vip用户组/lp creategroup vip
然后用/lp group vip permission set 权限 true
比如我可以将飞行隐身权限加进vip用户组
可以输入/lp group vip permission set ssentials.vanish true
/lp group vip permission set ssentials.fly true
然后将玩家继承到vip组里/lp user 玩家 parent add vip
这样,在vip权限组内的玩家即可使用/fly,/v指令
若服务器内存在多个权限组,即可创建多个权限组
如果希望以出售的形式来获取,可以使用cc菜单实现
在cc菜单的执行命令里放上继承权限组的指令即可
创建临时制vip组
这种vip制度一般都是以一个月为限期,
到期则自动回收权限,
那么,权限组可以实现这个功能吗?
在我的认知里,我只知道lp支持临时权限组功能
方法和创建永久制vip组基本一致
但在最后继承权限组时,指令需要用临时权限组的指令
/lp user 玩家 parent addtemp vip 30d
这个指令的意思为:玩家继承vip权限组30天
30d可以换成小时(h)
输入/lp user 玩家 info可以查看拥有的权限组还有多久到期
另外,主要一点,需要延长权限组时间的话
重复上面那条指令是无效的,需要在指令后方加上accumulate
也就是/lp user 玩家 parent addtemp vip 30d accumulate
这条指令的意思为:将玩家的vip权限组到期时间延长30天
若想实现出售,也配合好cc菜单即可
5.后言
所以,看了帖子的应该都懂权限是啥了吧
应该也懂如何给予权限了吧
最后,写教程不易,求评个分