653 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			653 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
####################################################################################################
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                   __         __   ___  __         __                         | #
 | 
						|
# |                        |    |  | /  ` |__/  |__) |__  |__)  |\/| /__`                        | #
 | 
						|
# |                        |___ \__/ \__, |  \  |    |___ |  \  |  | .__/                        | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                                     https://luckperms.net                                    | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |  WIKI:        https://luckperms.net/wiki                                                     | #
 | 
						|
# |  DISCORD:     https://discord.gg/luckperms                                                   | #
 | 
						|
# |  BUG REPORTS: https://github.com/LuckPerms/LuckPerms/issues                                  | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |  Each option in this file is documented and explained here:                                  | #
 | 
						|
# |   ==>  https://luckperms.net/wiki/Configuration                                              | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |  New options are not added to this file automatically. Default values are used if an         | #
 | 
						|
# |  option cannot be found. The latest config versions can be obtained at the link above.       | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
####################################################################################################
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                                      ESSENTIAL SETTINGS                                      | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                   Important settings that control how LuckPerms functions.                   | #
 | 
						|
# |                                                                                              | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# The name of the server, used for server specific permissions.
 | 
						|
#
 | 
						|
# - When set to "global" this setting is effectively ignored.
 | 
						|
# - In all other cases, the value here is added to all players in a "server" context.
 | 
						|
# - See: https://luckperms.net/wiki/Context
 | 
						|
server = "global"
 | 
						|
 | 
						|
# If the servers own UUID cache/lookup facility should be used when there is no record for a player
 | 
						|
# already in LuckPerms.
 | 
						|
#
 | 
						|
# - When this is set to 'false', commands using a player's username will not work unless the player
 | 
						|
#   has joined since LuckPerms was first installed.
 | 
						|
# - To get around this, you can use a player's uuid directly in the command, or enable this option.
 | 
						|
# - When this is set to 'true', the server facility is used. This may use a number of methods,
 | 
						|
#   including checking the servers local cache, or making a request to the Mojang API.
 | 
						|
use-server-uuid-cache = false
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                                       STORAGE SETTINGS                                       | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                Controls which storage method LuckPerms will use to store data.               | #
 | 
						|
# |                                                                                              | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# How the plugin should store data
 | 
						|
#
 | 
						|
# - The various options are explained in more detail on the wiki:
 | 
						|
#   https://luckperms.net/wiki/Storage-types
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#
 | 
						|
#   |  Remote databases - require connection information to be configured below
 | 
						|
#   |=> MySQL
 | 
						|
#   |=> MariaDB (preferred over MySQL)
 | 
						|
#   |=> PostgreSQL
 | 
						|
#   |=> MongoDB
 | 
						|
#
 | 
						|
#   |  Flatfile/local database - don't require any extra configuration
 | 
						|
#   |=> H2 (preferred over SQLite)
 | 
						|
#   |=> SQLite
 | 
						|
#
 | 
						|
#   |  Readable & editable text files - don't require any extra configuration
 | 
						|
#   |=> YAML (.yml files)
 | 
						|
#   |=> JSON (.json files)
 | 
						|
#   |=> HOCON (.conf files)
 | 
						|
#   |=> TOML (.toml files)
 | 
						|
#   |
 | 
						|
#   | By default, user, group and track data is separated into different files. Data can be combined
 | 
						|
#   | and all stored in the same file by switching to a combined storage variant.
 | 
						|
#   | Just add '-combined' to the end of the storage-method, e.g. 'yaml-combined'
 | 
						|
#
 | 
						|
# - A H2 database is the default option.
 | 
						|
# - If you want to edit data manually in "traditional" storage files, we suggest using YAML.
 | 
						|
storage-method = "h2"
 | 
						|
 | 
						|
# The following block defines the settings for remote database storage methods.
 | 
						|
#
 | 
						|
# - You don't need to touch any of the settings here if you're using a local storage method!
 | 
						|
# - The connection detail options are shared between all remote storage types.
 | 
						|
data {
 | 
						|
 | 
						|
  # Define the address and port for the database.
 | 
						|
  # - The standard DB engine port is used by default
 | 
						|
  #   (MySQL = 3306, PostgreSQL = 5432, MongoDB = 27017)
 | 
						|
  # - Specify as "host:port" if differs
 | 
						|
  address = "localhost"
 | 
						|
 | 
						|
  # The name of the database to store LuckPerms data in.
 | 
						|
  # - This must be created already. Don't worry about this setting if you're using MongoDB.
 | 
						|
  database = "minecraft"
 | 
						|
 | 
						|
  # Credentials for the database.
 | 
						|
  username = "root"
 | 
						|
  password = ""
 | 
						|
 | 
						|
  # These settings apply to the MySQL connection pool.
 | 
						|
  # - The default values will be suitable for the majority of users.
 | 
						|
  # - Do not change these settings unless you know what you're doing!
 | 
						|
  pool-settings {
 | 
						|
 | 
						|
    # Sets the maximum size of the MySQL connection pool.
 | 
						|
    # - Basically this value will determine the maximum number of actual
 | 
						|
    #   connections to the database backend.
 | 
						|
    # - More information about determining the size of connection pools can be found here:
 | 
						|
    #   https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing
 | 
						|
    maximum-pool-size = 10
 | 
						|
 | 
						|
    # Sets the minimum number of idle connections that the pool will try to maintain.
 | 
						|
    # - For maximum performance and responsiveness to spike demands, it is recommended to not set
 | 
						|
    #   this value and instead allow the pool to act as a fixed size connection pool.
 | 
						|
    #   (set this value to the same as 'maximum-pool-size')
 | 
						|
    minimum-idle = 10
 | 
						|
 | 
						|
    # This setting controls the maximum lifetime of a connection in the pool in milliseconds.
 | 
						|
    # - The value should be at least 30 seconds less than any database or infrastructure imposed
 | 
						|
    #   connection time limit.
 | 
						|
    maximum-lifetime = 1800000 # 30 minutes
 | 
						|
 | 
						|
    # This setting controls how frequently the pool will 'ping' a connection in order to prevent it
 | 
						|
    # from being timed out by the database or network infrastructure, measured in milliseconds.
 | 
						|
    # - The value should be less than maximum-lifetime and greater than 30000 (30 seconds).
 | 
						|
    # - Setting the value to zero will disable the keepalive functionality.
 | 
						|
    keepalive-time = 0
 | 
						|
 | 
						|
    # This setting controls the maximum number of milliseconds that the plugin will wait for a
 | 
						|
    # connection from the pool, before timing out.
 | 
						|
    connection-timeout = 5000 # 5 seconds
 | 
						|
 | 
						|
    # This setting allows you to define extra properties for connections.
 | 
						|
    #
 | 
						|
    # By default, the following options are set to enable utf8 encoding. (you may need to remove
 | 
						|
    # these if you are using PostgreSQL)
 | 
						|
    #   useUnicode = true
 | 
						|
    #   characterEncoding = "utf8"
 | 
						|
    #
 | 
						|
    # You can also use this section to disable SSL connections, by uncommenting the 'useSSL' and
 | 
						|
    # 'verifyServerCertificate' options below.
 | 
						|
    properties {
 | 
						|
      useUnicode = true
 | 
						|
      characterEncoding = "utf8"
 | 
						|
      #useSSL: false
 | 
						|
      #verifyServerCertificate: false
 | 
						|
    }
 | 
						|
  }
 | 
						|
 | 
						|
  # The prefix for all LuckPerms SQL tables.
 | 
						|
  #
 | 
						|
  # - This only applies for remote SQL storage types (MySQL, MariaDB, etc).
 | 
						|
  # - Change this if you want to use different tables for different servers.
 | 
						|
  table-prefix = "luckperms_"
 | 
						|
 | 
						|
  # The prefix to use for all LuckPerms MongoDB collections.
 | 
						|
  #
 | 
						|
  # - This only applies for the MongoDB storage type.
 | 
						|
  # - Change this if you want to use different collections for different servers. The default is no
 | 
						|
  # prefix.
 | 
						|
  mongodb-collection-prefix = ""
 | 
						|
 | 
						|
  # The connection string URI to use to connect to the MongoDB instance.
 | 
						|
  #
 | 
						|
  # - When configured, this setting will override anything defined in the address, database,
 | 
						|
  #   username or password fields above.
 | 
						|
  # - If you have a connection string that starts with 'mongodb://' or 'mongodb+srv://', enter it
 | 
						|
  #   below.
 | 
						|
  # - For more information, please see https://docs.mongodb.com/manual/reference/connection-string/
 | 
						|
  mongodb-connection-uri = ""
 | 
						|
}
 | 
						|
 | 
						|
# Define settings for a "split" storage setup.
 | 
						|
#
 | 
						|
# - This allows you to define a storage method for each type of data.
 | 
						|
# - The connection options above still have to be correct for each type here.
 | 
						|
split-storage {
 | 
						|
  # Don't touch this if you don't want to use split storage!
 | 
						|
  enabled = false
 | 
						|
  methods {
 | 
						|
    # These options don't need to be modified if split storage isn't enabled.
 | 
						|
    user = "h2"
 | 
						|
    group = "h2"
 | 
						|
    track = "h2"
 | 
						|
    uuid = "h2"
 | 
						|
    log = "h2"
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                            UPDATE PROPAGATION & MESSAGING SERVICE                            | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |    Controls the ways in which LuckPerms will sync data & notify other servers of changes.    | #
 | 
						|
# |     These options are documented on greater detail on the wiki under "Instant Updates".      | #
 | 
						|
# |                                                                                              | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# This option controls how frequently LuckPerms will perform a sync task.
 | 
						|
#
 | 
						|
# - A sync task will refresh all data from the storage, and ensure that the most up-to-date data is
 | 
						|
#   being used by the plugin.
 | 
						|
# - This is disabled by default, as most users will not need it. However, if you're using a remote
 | 
						|
#   storage type without a messaging service setup, you may wish to set this to something like 3.
 | 
						|
# - Set to -1 to disable the task completely.
 | 
						|
sync-minutes = -1
 | 
						|
 | 
						|
# If the file watcher should be enabled.
 | 
						|
#
 | 
						|
# - When using a file-based storage type, LuckPerms can monitor the data files for changes, and
 | 
						|
#   automatically update when changes are detected.
 | 
						|
# - If you don't want this feature to be active, set this option to false.
 | 
						|
watch-files = true
 | 
						|
 | 
						|
# Define which messaging service should be used by the plugin.
 | 
						|
#
 | 
						|
# - If enabled and configured, LuckPerms will use the messaging service to inform other connected
 | 
						|
#   servers of changes.
 | 
						|
# - Use the command "/lp networksync" to manually push changes.
 | 
						|
# - Data is NOT stored using this service. It is only used as a messaging platform.
 | 
						|
#
 | 
						|
# - If you decide to enable this feature, you should set "sync-minutes" to -1, as there is no need
 | 
						|
#   for LuckPerms to poll the database for changes.
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#   => sql       Uses the SQL database to form a queue system for communication. Will only work when
 | 
						|
#                'storage-method' is set to MySQL or MariaDB. This is chosen by default if the
 | 
						|
#                option is set to 'auto' and SQL storage is in use. Set to 'notsql' to disable this.
 | 
						|
#   => pluginmsg Uses the plugin messaging channels to communicate with the proxy.
 | 
						|
#                LuckPerms must be installed on your proxy & all connected servers backend servers.
 | 
						|
#                Won't work if you have more than one proxy.
 | 
						|
#   => redis     Uses Redis pub-sub to push changes. Your server connection info must be configured
 | 
						|
#                below.
 | 
						|
#   => rabbitmq  Uses RabbitMQ pub-sub to push changes. Your server connection info must be
 | 
						|
#                configured below.
 | 
						|
#   => nats      Uses Nats pub-sub to push changes. Your server connection info must be
 | 
						|
#                configured below.
 | 
						|
#   => custom    Uses a messaging service provided using the LuckPerms API.
 | 
						|
#   => auto      Attempts to automatically setup a messaging service using redis or sql.
 | 
						|
messaging-service = "auto"
 | 
						|
 | 
						|
# If LuckPerms should automatically push updates after a change has been made with a command.
 | 
						|
auto-push-updates = true
 | 
						|
 | 
						|
# If LuckPerms should push logging entries to connected servers via the messaging service.
 | 
						|
push-log-entries = true
 | 
						|
 | 
						|
# If LuckPerms should broadcast received logging entries to players on this platform.
 | 
						|
#
 | 
						|
# - If you have LuckPerms installed on your backend servers as well as a BungeeCord proxy, you
 | 
						|
#   should set this option to false on either your backends or your proxies, to avoid players being
 | 
						|
#   messaged twice about log entries.
 | 
						|
broadcast-received-log-entries = true
 | 
						|
 | 
						|
# Settings for Redis.
 | 
						|
# Port 6379 is used by default; set address to "host:port" if differs
 | 
						|
# Multiple Redis nodes can be specified in the same format as a string list under the name "addresses".
 | 
						|
redis {
 | 
						|
  enabled = false
 | 
						|
  address = "localhost"
 | 
						|
  username = ""
 | 
						|
  password = ""
 | 
						|
}
 | 
						|
 | 
						|
# Settings for nats.
 | 
						|
# Port 4222 is used by default; set address to "host:port" if differs
 | 
						|
nats {
 | 
						|
  enabled = false
 | 
						|
  address = "localhost"
 | 
						|
  username = ""
 | 
						|
  password = ""
 | 
						|
}
 | 
						|
 | 
						|
# Settings for RabbitMQ.
 | 
						|
# Port 5672 is used by default; set address to "host:port" if differs
 | 
						|
rabbitmq {
 | 
						|
  enabled = false
 | 
						|
  address = "localhost"
 | 
						|
  vhost = "/"
 | 
						|
  username = "guest"
 | 
						|
  password = "guest"
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                                    CUSTOMIZATION SETTINGS                                    | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |              Settings that allow admins to customize the way LuckPerms operates.             | #
 | 
						|
# |                                                                                              | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# Controls how temporary permissions/parents/meta should be accumulated.
 | 
						|
#
 | 
						|
# - The default behaviour is "deny".
 | 
						|
# - This behaviour can also be specified when the command is executed. See the command usage
 | 
						|
#   documentation for more info.
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#   => accumulate   durations will be added to the existing expiry time
 | 
						|
#   => replace      durations will be replaced if the new duration is later than the current
 | 
						|
#                   expiration
 | 
						|
#   => deny         the command will just fail if you try to add another node with the same expiry
 | 
						|
temporary-add-behaviour = "deny"
 | 
						|
 | 
						|
# Controls how LuckPerms will determine a users "primary" group.
 | 
						|
#
 | 
						|
# - The meaning and influence of "primary groups" are explained in detail on the wiki.
 | 
						|
# - The preferred approach is to let LuckPerms automatically determine a users primary group
 | 
						|
#   based on the relative weight of their parent groups.
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#   => stored                  use the value stored against the users record in the file/database
 | 
						|
#   => parents-by-weight       just use the users most highly weighted parent
 | 
						|
#   => all-parents-by-weight   same as above, but calculates based upon all parents inherited from
 | 
						|
#                              both directly and indirectly
 | 
						|
primary-group-calculation = "parents-by-weight"
 | 
						|
 | 
						|
# If the plugin should check for "extra" permissions with users run LP commands.
 | 
						|
#
 | 
						|
# - These extra permissions allow finer control over what users can do with each command, and who
 | 
						|
#   they have access to edit.
 | 
						|
# - The nature of the checks are documented on the wiki under "Argument based command permissions".
 | 
						|
# - Argument based permissions are *not* static, unlike the 'base' permissions, and will depend upon
 | 
						|
#   the arguments given within the command.
 | 
						|
argument-based-command-permissions = false
 | 
						|
 | 
						|
# If the plugin should check whether senders are a member of a given group before they're able to
 | 
						|
# edit the groups data or add/remove other users to/from it.
 | 
						|
# Note: these limitations do not apply to the web editor!
 | 
						|
require-sender-group-membership-to-modify = false
 | 
						|
 | 
						|
# If the plugin should send log notifications to users whenever permissions are modified.
 | 
						|
#
 | 
						|
# - Notifications are only sent to those with the appropriate permission to receive them
 | 
						|
# - They can also be temporarily enabled/disabled on a per-user basis using
 | 
						|
#   '/lp log notify <on|off>'
 | 
						|
log-notify = true
 | 
						|
 | 
						|
# Defines a list of log entries which should not be sent as notifications to users.
 | 
						|
#
 | 
						|
# - Each entry in the list is a RegEx expression which is matched against the log entry description.
 | 
						|
log-notify-filtered-descriptions = [
 | 
						|
#    "parent add example"
 | 
						|
]
 | 
						|
 | 
						|
# If LuckPerms should automatically install translation bundles and periodically update them.
 | 
						|
auto-install-translations = true
 | 
						|
 | 
						|
# Defines the options for prefix and suffix stacking.
 | 
						|
#
 | 
						|
# - The feature allows you to display multiple prefixes or suffixes alongside a players username in
 | 
						|
#   chat.
 | 
						|
# - It is explained and documented in more detail on the wiki under "Prefix & Suffix Stacking".
 | 
						|
#
 | 
						|
# - The options are divided into separate sections for prefixes and suffixes.
 | 
						|
# - The 'duplicates' setting refers to how duplicate elements are handled. Can be 'retain-all',
 | 
						|
#   'first-only' or 'last-only'.
 | 
						|
# - The value of 'start-spacer' is included at the start of the resultant prefix/suffix.
 | 
						|
# - The value of 'end-spacer' is included at the end of the resultant prefix/suffix.
 | 
						|
# - The value of 'middle-spacer' is included between each element in the resultant prefix/suffix.
 | 
						|
#
 | 
						|
# - Possible format options:
 | 
						|
#   => highest                        Selects the value with the highest weight, from all values
 | 
						|
#                                     held by or inherited by the player.
 | 
						|
#
 | 
						|
#   => lowest                         Same as above, except takes the one with the lowest weight.
 | 
						|
#
 | 
						|
#   => highest_own                    Selects the value with the highest weight, but will not
 | 
						|
#                                     accept any inherited values.
 | 
						|
#
 | 
						|
#   => lowest_own                     Same as above, except takes the value with the lowest weight.
 | 
						|
#
 | 
						|
#   => highest_inherited              Selects the value with the highest weight, but will only
 | 
						|
#                                     accept inherited values.
 | 
						|
#
 | 
						|
#   => lowest_inherited               Same as above, except takes the value with the lowest weight.
 | 
						|
#
 | 
						|
#   => highest_on_track_<track>       Selects the value with the highest weight, but only if the
 | 
						|
#                                     value was inherited from a group on the given track.
 | 
						|
#
 | 
						|
#   => lowest_on_track_<track>        Same as above, except takes the value with the lowest weight.
 | 
						|
#
 | 
						|
#   => highest_not_on_track_<track>   Selects the value with the highest weight, but only if the
 | 
						|
#                                     value was inherited from a group not on the given track.
 | 
						|
#
 | 
						|
#   => lowest_not_on_track_<track>    Same as above, except takes the value with the lowest weight.
 | 
						|
#
 | 
						|
#   => highest_from_group_<group>     Selects the value with the highest weight, but only if the
 | 
						|
#                                     value was inherited from the given group.
 | 
						|
#
 | 
						|
#   => lowest_from_group_<group>      Same as above, except takes the value with the lowest weight.
 | 
						|
#
 | 
						|
#   => highest_not_from_group_<group> Selects the value with the highest weight, but only if the
 | 
						|
#                                     value was not inherited from the given group.
 | 
						|
#
 | 
						|
#   => lowest_not_from_group_<group>  Same as above, except takes the value with the lowest weight.
 | 
						|
meta-formatting {
 | 
						|
  prefix {
 | 
						|
    format = [
 | 
						|
      "highest"
 | 
						|
    ]
 | 
						|
    duplicates = "first-only"
 | 
						|
    start-spacer = ""
 | 
						|
    middle-spacer = " "
 | 
						|
    end-spacer = ""
 | 
						|
  }
 | 
						|
  suffix {
 | 
						|
    format = [
 | 
						|
      "highest"
 | 
						|
    ]
 | 
						|
    duplicates = "first-only"
 | 
						|
    start-spacer = ""
 | 
						|
    middle-spacer = " "
 | 
						|
    end-spacer = ""
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                            PERMISSION CALCULATION AND INHERITANCE                            | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |    Modify the way permission checks, meta lookups and inheritance resolutions are handled.   | #
 | 
						|
# |                                                                                              | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# The algorithm LuckPerms should use when traversing the "inheritance tree".
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#   => breadth-first            See: https://en.wikipedia.org/wiki/Breadth-first_search
 | 
						|
#   => depth-first-pre-order    See: https://en.wikipedia.org/wiki/Depth-first_search
 | 
						|
#   => depth-first-post-order   See: https://en.wikipedia.org/wiki/Depth-first_search
 | 
						|
inheritance-traversal-algorithm = "depth-first-pre-order"
 | 
						|
 | 
						|
# If a final sort according to "inheritance rules" should be performed after the traversal algorithm
 | 
						|
# has resolved the inheritance tree.
 | 
						|
#
 | 
						|
# "Inheritance rules" refers to things such as group weightings, primary group status, and the
 | 
						|
# natural contextual ordering of the group nodes.
 | 
						|
#
 | 
						|
# Setting this to 'true' will allow for the inheritance rules to take priority over the structure of
 | 
						|
# the inheritance tree.
 | 
						|
#
 | 
						|
# Effectively when this setting is 'true': the tree is flattened, and rules applied afterwards,
 | 
						|
# and when this setting is 'false':, the rules are just applied during each step of the traversal.
 | 
						|
post-traversal-inheritance-sort = false
 | 
						|
 | 
						|
# Defines the mode used to determine whether a set of contexts are satisfied.
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#   => at-least-one-value-per-key   Set A will be satisfied by another set B, if at least one of the
 | 
						|
#                                   key-value entries per key in A are also in B.
 | 
						|
#   => all-values-per-key           Set A will be satisfied by another set B, if all key-value
 | 
						|
#                                   entries in A are also in B.
 | 
						|
context-satisfy-mode = "at-least-one-value-per-key"
 | 
						|
 | 
						|
# LuckPerms has a number of built-in contexts. These can be disabled by adding the context key to
 | 
						|
# the list below.
 | 
						|
disabled-contexts = [
 | 
						|
#    "world"
 | 
						|
]
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# | Permission resolution settings                                                               | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# If users on this server should have their global permissions applied.
 | 
						|
# When set to false, only server specific permissions will apply for users on this server
 | 
						|
include-global = true
 | 
						|
 | 
						|
# If users on this server should have their global world permissions applied.
 | 
						|
# When set to false, only world specific permissions will apply for users on this server
 | 
						|
include-global-world = true
 | 
						|
 | 
						|
# If users on this server should have global (non-server specific) groups applied
 | 
						|
apply-global-groups = true
 | 
						|
 | 
						|
# If users on this server should have global (non-world specific) groups applied
 | 
						|
apply-global-world-groups = true
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# | Meta lookup settings                                                                         | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# Defines how meta values should be selected.
 | 
						|
#
 | 
						|
# - Possible options:
 | 
						|
#   => inheritance      Selects the meta value that was inherited first
 | 
						|
#   => highest-number   Selects the highest numerical meta value
 | 
						|
#   => lowest-number    Selects the lowest numerical meta value
 | 
						|
meta-value-selection-default = "inheritance"
 | 
						|
 | 
						|
# Defines how meta values should be selected per key.
 | 
						|
meta-value-selection {
 | 
						|
  #max-homes = "highest-number"
 | 
						|
}
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# | Inheritance settings                                                                         | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# If the plugin should apply wildcard permissions.
 | 
						|
#
 | 
						|
# - If set to true, LuckPerms will detect wildcard permissions, and resolve & apply all registered
 | 
						|
#   permissions matching the wildcard.
 | 
						|
apply-wildcards = true
 | 
						|
 | 
						|
# If LuckPerms should resolve and apply permissions according to the Sponge style implicit wildcard
 | 
						|
# inheritance system.
 | 
						|
#
 | 
						|
# - That being: If a user has been granted "example", then the player should have also be
 | 
						|
#   automatically granted "example.function", "example.another", "example.deeper.nesting",
 | 
						|
#   and so on.
 | 
						|
apply-sponge-implicit-wildcards = true
 | 
						|
 | 
						|
# If the plugin should parse regex permissions.
 | 
						|
#
 | 
						|
# - If set to true, LuckPerms will detect regex permissions, marked with "r=" at the start of the
 | 
						|
#   node, and resolve & apply all registered permissions matching the regex.
 | 
						|
apply-regex = true
 | 
						|
 | 
						|
# If the plugin should complete and apply shorthand permissions.
 | 
						|
#
 | 
						|
# - If set to true, LuckPerms will detect and expand shorthand node patterns.
 | 
						|
apply-shorthand = true
 | 
						|
 | 
						|
# If the owner of an integrated server should bypass permission checks.
 | 
						|
#
 | 
						|
# - This setting only applies when LuckPerms is active on a single-player world.
 | 
						|
# - The owner of an integrated server is the player whose client instance is running the server.
 | 
						|
integrated-server-owner-bypasses-checks = true
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# | Extra settings                                                                               | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# A list of context calculators which will be skipped when calculating contexts.
 | 
						|
#
 | 
						|
# - You can disable context calculators by either:
 | 
						|
#   => specifying the Java class name used by the calculator (e.g. com.example.ExampleCalculator)
 | 
						|
#   => specifying a sub-section of the Java package used by the calculator (e.g. com.example)
 | 
						|
disabled-context-calculators = []
 | 
						|
 | 
						|
# Allows you to set "aliases" for the worlds sent forward for context calculation.
 | 
						|
#
 | 
						|
# - These aliases are provided in addition to the real world name. Applied recursively.
 | 
						|
# - Remove the comment characters for the default aliases to apply.
 | 
						|
world-rewrite {
 | 
						|
  #world_nether = "world"
 | 
						|
  #world_the_end = "world"
 | 
						|
}
 | 
						|
 | 
						|
# Define special group weights for this server.
 | 
						|
#
 | 
						|
# - Group weights can also be applied directly to group data, using the setweight command.
 | 
						|
# - This section allows weights to be set on a per-server basis.
 | 
						|
group-weight {
 | 
						|
  #admin = 10
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# |                                                                                              | #
 | 
						|
# |                                      FINE TUNING OPTIONS                                     | #
 | 
						|
# |                                                                                              | #
 | 
						|
# |     A number of more niche settings for tweaking and changing behaviour. The section also    | #
 | 
						|
# | contains toggles for some more specialised features. It is only necessary to make changes to | #
 | 
						|
# |                  these options if you want to fine-tune LuckPerms behaviour.                 | #
 | 
						|
# |                                                                                              | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# | Server Operator (OP) settings                                                                | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# Controls whether server operators should exist at all.
 | 
						|
#
 | 
						|
# - When set to 'false', all players will be de-opped, and the /op and /deop commands will be
 | 
						|
#   disabled. Note that vanilla features like the spawn-protection require an operator on the
 | 
						|
#   server to work.
 | 
						|
enable-ops = true
 | 
						|
 | 
						|
# Enables or disables a special permission based system in LuckPerms for controlling OP status.
 | 
						|
#
 | 
						|
# - If set to true, any user with the permission "luckperms.autoop" will automatically be granted
 | 
						|
#   server operator status. This permission can be inherited, or set on specific servers/worlds,
 | 
						|
#   temporarily, etc.
 | 
						|
# - Additionally, setting this to true will force the "enable-ops" option above to false. All users
 | 
						|
#   will be de-opped unless they have the permission node, and the op/deop commands will be
 | 
						|
#   disabled.
 | 
						|
# - It is recommended that you use this option instead of assigning a single '*' permission.
 | 
						|
# - However, on Fabric this setting can be used as a "pseudo" root wildcard, as many mods support
 | 
						|
#   the operator system over permissions.
 | 
						|
auto-op = false
 | 
						|
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
# | Miscellaneous (and rarely used) settings                                                     | #
 | 
						|
# +----------------------------------------------------------------------------------------------+ #
 | 
						|
 | 
						|
# If LuckPerms should produce extra logging output when it handles logins.
 | 
						|
#
 | 
						|
# - Useful if you're having issues with UUID forwarding or data not being loaded.
 | 
						|
debug-logins = false
 | 
						|
 | 
						|
# If LuckPerms should allow usernames with non alphanumeric characters.
 | 
						|
#
 | 
						|
# - Note that due to the design of the storage implementation, usernames must still be 16 characters
 | 
						|
#   or less.
 | 
						|
allow-invalid-usernames = false
 | 
						|
 | 
						|
# If LuckPerms should not require users to confirm bulkupdate operations.
 | 
						|
#
 | 
						|
# - When set to true, operations will be executed immediately.
 | 
						|
# - This is not recommended, as bulkupdate has the potential to irreversibly delete large amounts of
 | 
						|
#   data, and is not designed to be executed automatically.
 | 
						|
# - If automation is needed, users should prefer using the LuckPerms API.
 | 
						|
skip-bulkupdate-confirmation = false
 | 
						|
 | 
						|
# If LuckPerms should prevent bulkupdate operations.
 | 
						|
#
 | 
						|
# - When set to true, bulkupdate operations (the /lp bulkupdate command) will not work.
 | 
						|
# - When set to false, bulkupdate operations will be allowed via the console.
 | 
						|
disable-bulkupdate = false
 | 
						|
 | 
						|
# If LuckPerms should allow a users primary group to be removed with the 'parent remove' command.
 | 
						|
#
 | 
						|
# - When this happens, the plugin will set their primary group back to default.
 | 
						|
prevent-primary-group-removal = false
 | 
						|
 | 
						|
# If LuckPerms should update the list of commands sent to the client when permissions are changed.
 | 
						|
update-client-command-list = true
 | 
						|
 | 
						|
# If LuckPerms should attempt to resolve Vanilla command target selectors for LP commands.
 | 
						|
# See here for more info: https://minecraft.gamepedia.com/Commands#Target_selectors
 | 
						|
resolve-command-selectors = false
 |