- Notifications
You must be signed in to change notification settings - Fork9
Permissions plugin for Nukkit approved by Leeloo Dallas
License
fromgate/Multipass
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Permissions plugin approved by Leeloo Dallas
Multipass is a permissions plugin that provides a universal permission system for Nukkit.
Project page (outdated, use dev builds)
- Individual permissions and group
- Group inheritance
- World related permissions and group
- API for another plugins
Currently Multipass mostly translated to Russian, Turkish, French, Korean.If you miss your language, you can help with translation. We use Crowdin to translate Multipass. Join our translation projecthere
multipass.admin - use multipass commands
/perm help
/perm reload
/perm refresh
/perm update
/perm recalculate
Recalculate permissions of all users. I hope you'll never need to usethis permissions.
/perm check <user>
Simply check permissions
This command checks permissions of online player.
/perm export [<filename>]
Export permissions (all group and users) into single file.
Example:
/perm export data
- save all permissions in filedata.yml
/perm import [overwrite] [<filename>]
/perm import [over] [<filename>]
Import permissions from file. User "overwrite" parameter to delete allgroups and users before import.
Examples:
/perm import data
- load permissions from filedata.yml/perm import overwrite
- delete all permissions than load from fileimport.yml
/user <user>
Shows full user info (Groups, permissions, prefixes, suffixes)
/user remove <user>
/user rmv <user>
/user delete <user>
/user del <user>
Delete user information. If player is online user record will be recreatedand user will add to default group (if it defined in config).
/user <user> setperm [<world>] <permission.node>
/user <user> sp [<world>] <permission.node>
/user <user> addperm [<world>] <permission.node>
/user <user> ap [<world>] <permission.node>
Set permission node for user. If you need to define permission nodethat related to world you need to define (additionally) world name.For neagative permissions you need to use symbol "-" before permission.
Example:
/user fromgate sp -fantastic.permission
/user <user> removeperm [<world>] <permission.node>
/user <user> rmvperm [<world>] <permission.node>
/user <user> rperm [<world>] <permission.node>
/user <user> rp [<world>] <permission.node>
Remove user permission.
Example:
/user fromgate rp fantastic.permission
/user <user> setgroup [<world>] <group>
/user <user> setgrp [<world>] <group>
/user <user> sgrp [<world>] <group>
/user <user> sg [<world>] <group>
Set user group. All other groups will be removed.
Example:
/user fromgate sg vip
/user <user> addgroup [<world>] <group>
/user <user> addgrp [<world>] <group>
/user <user> agrp [<world>] <group>
/user <user> ag [<world>] <group>
Set user group. This will not affect other groups
Example:
/user fromgate ag admin
/user <user> removegroup [<world>] <group>
/user <user> rmvgrp [<world>] <group>
/user <user> rgrp [<world>] <group>
/user <user> rg [<world>] <group>
Remove user from group.
/user <user> setprefix <prefix>
/user <user> prefix <prefix>
/user <user> px <prefix>
/user <user> setsuffix <suffix>
/user <user> suffix <suffix>
/user <user> sx <suffix>
/group [<group>]
Display list of groups or show info about provided group
/group create <group>
/group new <group>
Create new group
/group remove <group>
/group rmv <group>
/group delete <group>
/group del <group>
Delete group. This will not affect users' files so if you will createa new group with same name all previous members will join new group too.
/group <group> addperm [<world>] <permission>
/group <group> setperm [<world>] <permission>
/group <group> aperm [<world>] <permission>
/group <group> sp [<world>] <permission>
Set permission node for group. If you need to define permission nodethat related to world you need to define (additionally) world name.For negative permissions you need to use symbol "-" before permission.These permissions will affect all group members.
Examples:
/group vip sp -fantastic.permission
/group vip sp nether_world magic.permission
/group <group> removeperm [<world>] <permission>
/group <group> rmvperm [<world>] <permission>
/group <group> rperm [<world>] <permission>
/group <group> rp [<world>] <permission>
Remove group permission.Example:/group vip rp fantastic.permission
/group <group> setgroup [<world>] <group2>
/group <group> setgrp [<world>] <group2>
/group <group> sgrp [<world>] <group2>
/group <group> sg [<world>] <group2>
Move group into "parent group". This group will inherit all permissions provided by parent group.Another group (defined previously) will be removed.Players - members of target group will have permissions defined by target and parent group.
/group <group> addgroup [<world>] <group2>
/group <group> addgrp [<world>] <group2>
/group <group> agrp [<world>] <group2>
/group <group> ag [<world>] <group2>
Add additional parent group to target group.Players - members of target group will have permissions defined by all groups.
/group <group> removegroup [<world>] <group2>
/group <group> rmvgrp [<world>] <group2>
/group <group> rgrp [<world>] <group2>
/group <group> rg [<world>] <group2>
Remove group from group group2.
/group <group> setprefix <prefix>
/group <group> prefix <prefix>
/group <group> px <prefix>
/group <group> setsuffix <suffix>
/group <group> suffix <suffix>
/group <group> sx <suffix>
File:config.yml
# Multipass, Nukkit permission system#general:# Messages language. Supported languages:# eng - English,# rus - Russian,# tur - Turkish.# You can help translate plugin: https://crowdin.com/project/multipass/invite language: default# Save translation file language-save: false# Debug mode. Usually you don't need to turn it on debug: falsepermissions: group:# Default group. All new players will automagically join this group default-group: default# Default priority value for groups default-priority: 10# Use group name to add additional permission. If this option is enabled all# group members will have additional permission: permission.group.<groupId> group-as-permission: true user:# Default priority value for users default-priority: 100 multiworld:# Enable multiworld support enable: false# Enable world mirroring mirrors: world: nether_world, end_worldstorage:# Database type:# - YAML - yaml files# - DATABASE - MySQL or SQLite. DbLib plugins is required: http://nukkit.ru/resources/dblib.14/ type: YAML# Auto-update interval (for multi-server system). If this values is not equal to '0'# groups and permissions will be automatically updated.# Time format: 1s - 1 second, 1m - 1 minute, 1h - one hour auto-update-interval: '0' database:# Database configuration:# - DEFAULT - default database, configured in plugin DbLib# - SQLITE - custom SQLite file (filename provided below)# - MYSQL - custom MySQL database (configuration provided below) source: DEFAULT sqlite:# Custom SQLite file name file: permissions.db# Custom MySQL configuration mysql: host: localhost port: 3306 database: database username: nukkit password: tikkun
File :groups.yml
# Group configuration example:##default:# groups: # List of group (all group defined in this file)# - vip# permissions: # List of permissions.# - plugin.vip# - plugin.test# prefix: '&6[VIP]' # Group prefix, used by third-party plugins# suffix: '' # Group suffix, used by third-party plugins# priority: 10 # Group priority# worlds: # List of per-world permissions and groups# end:# groups:# - vip_end# permissions:# - -plugin.vip # Negative permission starts with "-"# - -plugin.testdefault: groups: [] permissions: - default.permission prefix: '[guest]' suffix: '' priority: 0 worlds: world1: groups: - worldgroup permissions: - world.permission
User configuration files stored in/plugins/users/
folder.For example:/plugins/users/fromgate.yml
Here is example of user configuration file:
groups:- default- testgrouppermissions: - test.permission- -default.permissionprefix: '[vip]'suffix: ''priority: 100worlds: world1: groups: - worldgroup permissions: - world.permission