狡诈师
本帖最后由 爱国民主 于 2018-3-31 16:14 编辑

插件信息
内容介绍

    PermissionsEX(简称PEX)是一款权限管理系统,基于普通权限插件而对其进行扩展开发
    使PEX拥有更多更好的特征功能
    它还支持选择存储方式类型,作为强大的权限管理系统,还支持每个世界独立权限限制

功能特征

  • 支持UUID(从插件版本v1.21开始)
  • 支持不同存储方式(文本YAML 数据库MySQL、SQLite 其它)
  • 灵活API
  • 多世界权限
  • 权限组继承
  • 计时权限
  • 轻松迁移(YAML和数据库之间转换)
  • 良好优化(避免在拥有大量用户而导致卡顿)
  • 更多功能...

特别注意
    方法一:
    在 config.yml 将 allowOps: false 修改为 allowOps: true
    并重新加载插件

    方法二:
    如果你是OP管理员,发现自己依然没有权限执行命令
    请在后台输入
  1. pex user 用户名 add permissions.* *
复制代码

2021.12 数据,可能有更多内容
插件信息
内容介绍

    PermissionsEX(简称PEX)是一款权限管理系统,基于普通权限插件而对其进行扩展开发    使PEX拥有更多更好的特征功能    它还支持选择存储方式类型,作为强大的权限管理系统,还支持每个世界独立权限限制
功能特征

  • 支持UUID(从插件版本v1.21开始)
  • 支持不同存储方式(文本YAML 数据库MySQL、SQLite 其它)
  • 灵活API
  • 多世界权限
  • 权限组继承
  • 计时权限
  • 轻松迁移(YAML和数据库之间转换)
  • 良好优化(避免在拥有大量用户而导致卡顿)
  • 更多功能...

特别注意
    方法一:    在 config.yml 将 allowOps: false 修改为 allowOps: true    并重新加载插件
    方法二:    如果你是OP管理员,发现自己依然没有权限执行命令    请在后台输入

代码:

  1. pex user 用户名 add permissions.* *

下载地址
原贴下载

    https://dev.bukkit.org/projects/permissionsex/files
站内下载

    考虑到原贴链接慢、甚至无法访问问题,我将前面三个插件版本上传到网盘    1.12不知道能否正常使用
    1.9-1.11:链接:https://pan.baidu.com/s/1PbA5EqQkSeryjPaKHt6BBQ 密码:jv0m    1.8:链接:https://pan.baidu.com/s/1hivRrHC7PnlSJJFLWL9-EQ 密码:v5bm    1.7:链接:https://pan.baidu.com/s/1HA1IUuniN1WKDQ5evABGew 密码:ijls


符号说明
  • <> 的是必填
  • [] 的是参数(可选)

实用命令
命令
权限
描述
pex
permissions.manage
显示帮助
pex toggle debug
permissions.debug
开关调试模式
pex user <用户名> toggle debug
permissions.debug.<游戏名>
开关调试指定用户模式
pex user <用户名> check <权限>
permissions.manage.<用户名>
检查指定用户的指定权限
pex reload
permissions.manage.reload
重新加载插件
pex config <节点> [值]
permissions.manage.config
设置config配置
pex backend
permissions.manage.backend
查看当前使用的存储方式
pex backend <存储方式>
permissions.manage.backend
更改存储方式(谨慎使用)
pex hierarchy
permissions.manage.users
显示全部用户/组的体系
pex import <存储方式>
permissions.manage.dump
导入用户/组到选择的存储方式
pex users cleanup <组> [天数]
permissions.manage.users.cleanup
删除长期不在线用户(默认30天)

世界相关命令
命令
权限
描述
pex worlds
permissions.manage.worlds
显示全部世界权限信息
pex world <世界>
permissions.manage.worlds
显示直到世界权限信息
pex world <世界> inherit <父世界>
permissions.manage.worlds.inheritance
让<世界>拥有<父世界>的权限
(<父世界>可以多世界,用逗号,隔开)

用户相关命令
命令
权限
描述
pex users list
permissions.manage.users
列出已有用户列表
pex users
permissions.manage.users
列出已有用户列表
pex user
permissions.manage.users
列出已有用户列表

用户权限管理
命令
权限
描述
pex user
permissions.manage.users
列出已有玩家
pex user <用户>
permissions.manage.users.permissions.<用户>
列出用户权限
pex user <用户> prefix [新前缀]
permissions.manage.users.prefix.<用户>
获得/设置用户前缀
pex user <用户> suffix [新后缀]
permissions.manage.users.suffix.<用户>
获得/设置用户后缀
pex user <用户> delete
permissions.manage.users.<用户>
从权限文件删除指定用户
pex user <用户> list [世界]
permissions.manage.users.permissions.<用户>
列出指定玩家的所有权限
列出指定用户的某世界所有权限
pex user <用户> add <权限> [世界]
permissions.manage.users.permissions.<用户>
给予用户权限
给予用户在某世界权限
pex user <用户> remove <权限> [世界]
permissions.manage.users.permissions.<用户>
删除用户权限
删除用户的某世界权限
pex user <用户> timed add <权限> <秒> [世界]
permissions.manage.users.permissions.timed.<user>
给予用户限时权限
给予用户的某世界限时权限
pex user <用户> timed remove <权限> <秒> [世界]
permissions.manage.users.permissions.timed.<user>
删除用户限时权限
删除用户的某世界限时权限
pex user <用户> set <节点> <值> [世界]
permissions.manage.users.permissions.<用户>
将<节点>设置为<值>
如果要删除<节点>,请将值设置为""(两个双引号)
仅指定[世界]在[世界]中设置<节点>
(翻译无能)

用户的组管理
命令
权限
描述
pex user <用户> group list
permissions.manage.membership.<用户>
显示用户所在的所有组
pex user <用户> group add <组> [世界] [秒]
permissions.manage.membership.<组>
给予用户一个某用户组
如果不填世界,则请填""(两个双引号)
如果要限时,可以加秒
pex user <用户> group set <组> [世界]
permissions.manage.membership.<组>
设置用户当前所在组
pex user <用户> group remove <组> [世界]
permissions.manage.membership.<组>
删除用户的某组

默认组管理
命令
权限
描述
pex default group [世界]
permissions.manage.groups.inheritance
列出全局的默认组(如果[世界]为空)
列出某世界的默认组
pex set default group <组> <值> [世界]
permissions.manage.groups.inheritance
设置全局的默认组(如果[世界]为空)
设置某世界的默认组

用户组命令
命令
权限
描述
pex group
permissions.manage.groups.list
列出已有的组
pex groups
permissions.manage.groups.list
列出已有的组
pex groups list
permissions.manage.groups.list
列出已有的组
pex group <组> prefix [新前缀]
permissions.manage.groups.prefix.<组>
设置指定组的前缀
pex group <组> suffix [新后缀]
permissions.manage.groups.suffix.<组>
设置指定组的后缀
pex group <组> create [父组]
permissions.manage.groups.create.<组>
创建新的组
如果[父用户组]不为空,则创建新的组并继承父组的权限
pex group <组> delete
permissions.manage.groups.remove.<组>
删除指定组
pex group <组> parents list
permissions.manage.groups.inheritance.<组>
列出已继承父组的组
pex group <组> parents set <父权限组>
permissions.manage.groups.inheritance.<组>
让<租>拥有<父组>的权限
(多组的用逗号,隔开)
pex group <组>
permissions.manage.groups.permissions.<组>
列出指定组的信息
pex group <组> list [世界]
permissions.manage.groups.permissions.<组>
列出指定组的某世界的信息
pex group <组> add <权限> [世界]
permissions.manage.groups.permissions.<组>
给予组权限
给予组在某世界权限
pex group <组> remove <权限> [世界]
permissions.manage.groups.permissions.<组>
删除组权限
删除组在某世界权限
pex group <组> timed add <权限> [秒] [世界]
permissions.manage.groups.permissions.timed.<组>
给予组限时权限
给予组的某世界限时权限
pex group <组> timed remove <权限> [世界]
permissions.manage.groups.permissions.timed.<组>
删除组限时权限
删除组的某世界限时权限
pex group <组> set <节点> <值> [世界]
permissions.manage.groups.permissions.<组>
为<组>设置<节点> <值>。如果要删除<节点>,请将值设置为""(两个双引号)。指定[世界]是否应该仅在[世界]中设置该节点
pex group <组> weight [优先级]
permissions.manage.groups.weight.<组>
设置组的优先级
如果有1,2,3,则1比2,3高,2比3高
(翻译无能)

组的用户管理
命令
权限
描述
pex group <组> users
permissions.manage.membership.<组>
显示指定组的所有用户
pex group <组> user add <用户>
permissions.manage.membership.<组>
添加指定用户到指定组
(可以多个组用逗号,隔开)
pex group <组> user remove <用户>
permissions.manage.membership.<组>
删除指定组的指定用户
(可以多个组用逗号,隔开)
pex promote <用户> <ladder>
permissions.user.promote.<ladder>
Promote <user> on <ladder>. If <ladder> is not specified, the default ladder (named default) will be used.
(翻译无能)
pex demote <用户> <ladder>
permissions.user.demote.<ladder>
Demote <user> on <ladder>. If <ladder> is not specified, the default ladder (named default) will be used.
(翻译无能)


默认配置

代码:

  1. #是否关联NetEvents(需要安装NetEvents插件才能使用)
  2. multiserver:
  3. use-netevents: true
  4. permissions:
  5. #是否启用调试模式
  6. debug: false
  7. #OP管理员是否拥有所有权限
  8. allowOps: false
  9. #翻译无能
  10. user-add-groups-last: false
  11. log-players: false
  12. createUserRecords: false
  13. #存储方式以及设置
  14. backend: file
  15. informplayers:
  16.     changes: false
  17. basedir: plugins/PermissionsEx
  18. backends:
  19.     file:
  20.    type: file
  21.    file: permissions.yml
  22. #检查更新
  23. updater: true
  24. alwaysUpdate: false

MySQL

代码:

  1. #是否关联NetEvents(需要安装NetEvents插件才能使用)
  2. multiserver:
  3. use-netevents: true
  4. permissions:
  5. #是否启用调试模式
  6. debug: false
  7. #OP管理员是否拥有所有权限
  8. allowOps: false
  9. #翻译无能
  10. user-add-groups-last: false
  11. log-players: false
  12. createUserRecords: false
  13. #存储方式以及设置
  14. backend: sql
  15. informplayers:
  16.     changes: false
  17. basedir: plugins/PermissionsEx
  18. backends:
  19.     sql:
  20.    uri: mysql://数据库地址/数据库名称
  21.    user: 数据库账号
  22.    password: 数据库密码
  23.    type: sql
  24. #检查更新
  25. updater: true
  26. alwaysUpdate: false
另外还支持设置别名表名

代码:

  1. #是否关联NetEvents(需要安装NetEvents插件才能使用)
  2. multiserver:
  3. use-netevents: true
  4. permissions:
  5. #是否启用调试模式
  6. debug: false
  7. #OP管理员是否拥有所有权限
  8. allowOps: false
  9. #翻译无能
  10. user-add-groups-last: false
  11. log-players: false
  12. createUserRecords: false
  13. #存储方式以及设置
  14. backend: sql
  15. informplayers:
  16.     changes: false
  17. basedir: plugins/PermissionsEx
  18. backends:
  19.     sql:
  20.    uri: mysql://数据库地址/数据库名称
  21.    user: 数据库账号
  22.    password: 数据库密码
  23.    type: sql
  24.    aliases:
  25.     permissions: pex_permissions
  26.     permissions_inheritance: pex_inheritance
  27.     permissions_entity: pex_entity
  28. #检查更新
  29. updater: true
  30. alwaysUpdate: false

SQLite

代码:

  1. #是否关联NetEvents(需要安装NetEvents插件才能使用)
  2. multiserver:
  3. use-netevents: true
  4. permissions:
  5. #是否启用调试模式
  6. debug: false
  7. #OP管理员是否拥有所有权限
  8. allowOps: false
  9. #翻译无能
  10. user-add-groups-last: false
  11. log-players: false
  12. createUserRecords: false
  13. #存储方式以及设置
  14. backend: sql
  15. informplayers:
  16.     changes: false
  17. basedir: plugins/PermissionsEx
  18. basedir: plugins/PermissionsEx
  19.     backend: sql
  20.     backends:
  21.   sql:
  22.    uri: sqlite:plugins/PermissionsEx/permissions.db
  23.    user: username
  24.    password: password
  25. #检查更新
  26. updater: true
  27. alwaysUpdate: false

常见问题

如果各位遇到什么常见问题可以反馈给我,我会答复
  • 为什么这插件装在Sponge没用?
    请去Sponge专用版
    原贴:https://forums.spongepowered.org ... ission-plugin/12310
    站内:http://www.mcbbs.net/thread-664180-1-1.html






海贼王#
看似很有用,占个位置

_DIM_
也有Sponge版的,不过已经弃坑了

狡诈师
酷车手BB弹 发表于 2018-3-31 16:09
也有Sponge版的,不过已经弃坑了

是的2333,不知道这插件有没有弃坑了(2016最新插件)

叽叽小石头
这个权限组挺好用

INKDRRAK
pex不是停更了么.

狡诈师
Art1900 发表于 2018-3-31 16:52
pex不是停更了么.

能正常使用不就好了吗~~~

叽叽小石头
能不能同时使用PEX和GM两个权限组

love12138
貌似有点不全。

Cuki
dalao  能提供下papi变量吗

P_Hao
为何这个插件只能用/pex user 给个人称号有效果用组指令给称号没有效果

zishibudui233
重启一下服务器直接变成0kb文件。。。。。。。。

CarbonPaper99
这插件第一次使用还好,第二次重启直接不能使用了!

Jklhgf
怎么给予限时权限

Not102
我输入这个指令pex group builder parents set jichu
jichu这个权限组里面有很多指令
我想builder去继承他 我输入后 为啥还是不能使用指令
配置里面都写着
inheritance:
- jichu

21504010
貌似有点不全

@TGL
pex users cleanup <组> [天数]
这条指令没用

狡诈师
PY狗 发表于 2018-4-1 08:50
能不能同时使用PEX和GM两个权限组

答案很明显(并不能)

狡诈师
Jklhgf 发表于 2018-6-14 02:54
怎么给予限时权限

认真看帖子

用户限时权限:pex user <用户> timed add <权限> <秒> [世界]

神奇威廉
玩家进服没有权限是什么鬼, 再一次进服又有权限了。。。

q23223514
[15:07:22 INFO]: [PermissionsEx] Enabling PermissionsEx v1.21.3
[15:07:23 INFO]: [PermissionsEx] Initializing sql backend
[15:07:25 INFO]: [PermissionsEx] Successfully connected to SQL database
[15:07:26 INFO]: [PermissionsEx] Disabling PermissionsEx v1.21.3
[15:07:26 INFO]: Server permissions file permissions.yml is empty, ignoring it
[15:07:26 INFO]: Done (18.416s)! For help, type "help" or "?"
[控制台] 服务器已启动
[15:07:26 INFO]: Registered command forge with permission node net.minecraftforge.server.command.ForgeCommand
[15:07:33 WARN]: java.io.IOException: Server returned HTTP response code: 401 for URL: https://api.github.com/gists
[15:07:33 WARN]: at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown Source)
[15:07:33 WARN]: at sun.net.www.protocol.http.HttpURLConnection.access$200(Unknown Source)
[15:07:33 WARN]: at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
[15:07:33 WARN]: at sun.net.www.protocol.http.HttpURLConnection$9.run(Unknown Source)
[15:07:33 WARN]: at java.security.AccessController.doPrivileged(Native Method)
[15:07:33 WARN]: at java.security.AccessController.doPrivilegedWithCombiner(Unknown Source)
[15:07:33 WARN]: at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
[15:07:33 WARN]: at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source)
[15:07:33 WARN]: at ru.tehkode.permissions.bukkit.ErrorReport.gistText(ErrorReport.java:117)
[15:07:33 WARN]: at ru.tehkode.permissions.bukkit.ErrorReport$Builder.build(ErrorReport.java:349)
[15:07:33 WARN]: at ru.tehkode.permissions.bukkit.ErrorReport.withException(ErrorReport.java:305)
[15:07:33 WARN]: at ru.tehkode.permissions.bukkit.ErrorReport$2.run(ErrorReport.java:190)
[15:07:33 WARN]: at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
[15:07:33 WARN]: at java.util.concurrent.FutureTask.run(Unknown Source)
[15:07:33 WARN]: at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
[15:07:33 WARN]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
[15:07:33 WARN]: at java.lang.Thread.run(Unknown Source)
[15:07:33 ERROR]: [PermissionsEx] Error occurred with PermissionsEx! Please post it to https://github.com/PEXPlugins/Pe ... re%5D%28null%29%0A. Full error:
java.lang.IllegalStateException: Error initializing group default
at ru.tehkode.permissions.PermissionManager.getGroup(PermissionManager.java:484)
at ru.tehkode.permissions.PermissionManager.getGroupList(PermissionManager.java:502)
at ru.tehkode.permissions.PermissionManager.preloadGroups(PermissionManager.java:591)
at ru.tehkode.permissions.PermissionManager.setBackend(PermissionManager.java:677)
at ru.tehkode.permissions.PermissionManager.initBackend(PermissionManager.java:752)
at ru.tehkode.permissions.PermissionManager.<init>(PermissionManager.java:72)
at ru.tehkode.permissions.bukkit.PermissionsEx.onEnable(PermissionsEx.java:159)
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316)
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:368)
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:410)
at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugin(CraftServer.java:415)
at org.bukkit.craftbukkit.v1_7_R4.CraftServer.enablePlugins(CraftServer.java:349)
at net.minecraft.server.MinecraftServer.func_71243_i(MinecraftServer.java:511)
at net.minecraft.server.MinecraftServer.func_71222_d(MinecraftServer.java:485)
at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:445)
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:336)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:631)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.RuntimeException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'permission' in 'field list'
at ru.tehkode.permissions.backends.sql.SQLData.getOptionsMap(SQLData.java:337)
at ru.tehkode.permissions.backends.caching.CachingData.loadOptions(CachingData.java:51)
at ru.tehkode.permissions.backends.caching.CachingData.getOption(CachingData.java:143)
at ru.tehkode.permissions.PermissionEntity.getOwnOption(PermissionEntity.java:531)
at ru.tehkode.permissions.PermissionEntity$4.fetchLocal(PermissionEntity.java:390)
at ru.tehkode.permissions.PermissionEntity$4.fetchLocal(PermissionEntity.java:387)
at ru.tehkode.permissions.HierarchyTraverser.traverse(HierarchyTraverser.java:70)
at ru.tehkode.permissions.PermissionEntity.getOption(PermissionEntity.java:387)
at ru.tehkode.permissions.PermissionEntity.getOptionBoolean(PermissionEntity.java:468)
at ru.tehkode.permissions.PermissionEntity.initialize(PermissionEntity.java:68)
at ru.tehkode.permissions.PermissionGroup.initialize(PermissionGroup.java:45)
at ru.tehkode.permissions.PermissionManager.getGroup(PermissionManager.java:481)
... 17 more
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'permission' in 'field list'
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
at com.mysql.jdbc.Util.getInstance(Util.java:382)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2111)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2273)
at ru.tehkode.libs.org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at ru.tehkode.libs.org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
at ru.tehkode.permissions.backends.sql.SQLData.getOptionsMap(SQLData.java:323)
... 28 more
[15:07:50 WARN]: Error occured during retriving version






怎么解决

Jonjs_Dada
Spigot 1.12.2可用
需要先在后台给op权限:pex user <用户> add *
然后就可以在游戏里操作了

狡诈师
Jonjs_Dada 发表于 2018-8-13 22:28
Spigot 1.12.2可用
需要先在后台给op权限:pex user  add *
然后就可以在游戏里操作了 ...

帖子有说的了

Jonjs_Dada

我觉得这点非常不好用
不如GroupManagerPlus

狡诈师
Jonjs_Dada 发表于 2018-8-18 10:20
我觉得这点非常不好用
不如GroupManagerPlus


哪一点?这个“pex user <用户> add *”?,其实还有配置改
我觉得很好用,不是MySQL你就去用GroupManagerPlus吧

看好帖子再评论

下一页 最后一页