Advertisement
Guest User

Untitled

a guest
Apr 15th, 2019
249
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 28.74 KB | None | 0 0
  1. ####################################################################################################
  2. # +----------------------------------------------------------------------------------------------+ #
  3. # | __ __ ___ __ __ | #
  4. # | | | | / ` |__/ |__) |__ |__) |\/| /__` | #
  5. # | |___ \__/ \__, | \ | |___ | \ | | .__/ | #
  6. # | | #
  7. # | https://luckperms.github.io | #
  8. # | | #
  9. # | SOURCE CODE: https://github.com/lucko/LuckPerms | #
  10. # | WIKI: https://github.com/lucko/LuckPerms/wiki | #
  11. # | BUG REPORTS: https://github.com/lucko/LuckPerms/issues | #
  12. # | | #
  13. # | Each option in this file is documented and explained here: | #
  14. # | ==> https://github.com/lucko/LuckPerms/wiki/Configuration | #
  15. # | | #
  16. # | New options are not added to this file automatically. Default values are used if an | #
  17. # | option cannot be found. The latest config versions can be obtained at the link above. | #
  18. # +----------------------------------------------------------------------------------------------+ #
  19. ####################################################################################################
  20.  
  21. # +----------------------------------------------------------------------------------------------+ #
  22. # | | #
  23. # | ESSENTIAL SETTINGS | #
  24. # | | #
  25. # | Important settings that control how LuckPerms functions. | #
  26. # | | #
  27. # +----------------------------------------------------------------------------------------------+ #
  28.  
  29. # The name of the server, used for server specific permissions.
  30. #
  31. # - When set to "global" this setting is effectively ignored.
  32. # - In all other cases, the value here is added to all players in a "server" context.
  33. # - See: https://github.com/lucko/LuckPerms/wiki/Context
  34. server = "global"
  35.  
  36. # If the servers own UUID cache/lookup facility should be used when there is no record for a player
  37. # already in LuckPerms.
  38. #
  39. # - When this is set to 'false', commands using a player's username will not work unless the player
  40. # has joined since LuckPerms was first installed.
  41. # - To get around this, you can use a player's uuid directly in the command, or enable this option.
  42. # - When this is set to 'true', the server facility is used. This may use a number of methods,
  43. # including checking the servers local cache, or making a request to the Mojang API.
  44. use-server-uuid-cache = false
  45.  
  46.  
  47.  
  48.  
  49. # +----------------------------------------------------------------------------------------------+ #
  50. # | | #
  51. # | STORAGE SETTINGS | #
  52. # | | #
  53. # | Controls which storage method LuckPerms will use to store data. | #
  54. # | | #
  55. # +----------------------------------------------------------------------------------------------+ #
  56.  
  57. # How the plugin should store data
  58. #
  59. # - The various options are explained in more detail on the wiki:
  60. # https://github.com/lucko/LuckPerms/wiki/Choosing-a-Storage-type
  61. #
  62. # - Possible options:
  63. #
  64. # | Remote databases - require connection information to be configured below
  65. # |=> MySQL
  66. # |=> MariaDB (preferred over MySQL)
  67. # |=> PostgreSQL
  68. # |=> MongoDB
  69. #
  70. # | Flatfile/local database - don't require any extra configuration
  71. # |=> H2 (preferred over SQLite)
  72. # |=> SQLite
  73. #
  74. # | Readable & editable text files - don't require any extra configuration
  75. # |=> YAML (.yml files)
  76. # |=> JSON (.json files)
  77. # |=> HOCON (.conf files)
  78. # |=> TOML (.toml files)
  79. # |
  80. # | By default, user, group and track data is separated into different files. Data can be combined
  81. # | and all stored in the same file by switching to a combined storage variant.
  82. # | Just add '-combined' to the end of the storage-method, e.g. 'yaml-combined'
  83. #
  84. # - A H2 database is the default option.
  85. # - If you want to edit data manually in "traditional" storage files, we suggest using YAML.
  86. storage-method = "h2"
  87.  
  88. # The following block defines the settings for remote database storage methods.
  89. #
  90. # - You don't need to touch any of the settings here if you're using a local storage method!
  91. # - The connection detail options are shared between all remote storage types.
  92. data {
  93.  
  94. # Define the address and port for the database.
  95. # - The standard DB engine port is used by default
  96. # (MySQL = 3306, PostgreSQL = 5432, MongoDB = 27017)
  97. # - Specify as "host:port" if differs
  98. address = "localhost"
  99.  
  100. # The name of the database to store LuckPerms data in.
  101. # - This must be created already. Don't worry about this setting if you're using MongoDB.
  102. database = "minecraft"
  103.  
  104. # Credentials for the database.
  105. username = "root"
  106. password = ""
  107.  
  108. # These settings apply to the MySQL connection pool.
  109. # - The default values will be suitable for the majority of users.
  110. # - Do not change these settings unless you know what you're doing!
  111. pool-settings {
  112.  
  113. # Sets the maximum size of the MySQL connection pool.
  114. # - Basically this value will determine the maximum number of actual
  115. # connections to the database backend.
  116. # - More information about determining the size of connection pools can be found here:
  117. # https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing
  118. maximum-pool-size = 10
  119.  
  120. # Sets the minimum number of idle connections that the pool will try to maintain.
  121. # - For maximum performance and responsiveness to spike demands, it is recommended to not set
  122. # this value and instead allow the pool to act as a fixed size connection pool.
  123. # (set this value to the same as 'maximum-pool-size')
  124. minimum-idle = 10
  125.  
  126. # This setting controls the maximum lifetime of a connection in the pool in milliseconds.
  127. # - The value should be at least 30 seconds less than any database or infrastructure imposed
  128. # connection time limit.
  129. maximum-lifetime = 1800000 # 30 minutes
  130.  
  131. # This setting controls the maximum number of milliseconds that the plugin will wait for a
  132. # connection from the pool, before timing out.
  133. connection-timeout = 5000 # 5 seconds
  134.  
  135. # This setting allows you to define extra properties for connections.
  136. properties {
  137. useUnicode = true
  138. characterEncoding = "utf8"
  139. }
  140. }
  141.  
  142. # The prefix for all LuckPerms SQL tables.
  143. # - Change this is you want to use different tables for different servers.
  144. table_prefix = "luckperms_"
  145.  
  146. # The prefix to use for all LuckPerms collections. Change this if you want to use different
  147. # collections for different servers. The default is no prefix.
  148. mongodb_collection_prefix = ""
  149.  
  150. # MongoDB ClientConnectionURI for use with replica sets and custom connection options
  151. # - See https://docs.mongodb.com/manual/reference/connection-string/
  152. mongodb_connection_URI = ""
  153. }
  154.  
  155. # Define settings for a "split" storage setup.
  156. #
  157. # - This allows you to define a storage method for each type of data.
  158. # - The connection options above still have to be correct for each type here.
  159. split-storage {
  160. # Don't touch this if you don't want to use split storage!
  161. enabled = false
  162. methods {
  163. # These options don't need to be modified if split storage isn't enabled.
  164. user = "h2"
  165. group = "h2"
  166. track = "h2"
  167. uuid = "h2"
  168. log = "h2"
  169. }
  170. }
  171.  
  172.  
  173.  
  174.  
  175. # +----------------------------------------------------------------------------------------------+ #
  176. # | | #
  177. # | UPDATE PROPAGATION & MESSAGING SERVICE | #
  178. # | | #
  179. # | Controls the ways in which LuckPerms will sync data & notify other servers of changes. | #
  180. # | These options are documented on greater detail on the wiki under "Instant Updates". | #
  181. # | | #
  182. # +----------------------------------------------------------------------------------------------+ #
  183.  
  184. # This option controls how frequently LuckPerms will perform a sync task.
  185. #
  186. # - A sync task will refresh all data from the storage, and ensure that the most up-to-date data is
  187. # being used by the plugin.
  188. # - This is disabled by default, as most users will not need it. However, if you're using a remote
  189. # storage type without a messaging service setup, you may wish to set this to something like 3.
  190. # - Set to -1 to disable the task completely.
  191. sync-minutes = -1
  192.  
  193. # If the file watcher should be enabled.
  194. #
  195. # - When using a file-based storage type, LuckPerms can monitor the data files for changes, and
  196. # automatically update when changes are detected.
  197. # - If you don't want this feature to be active, set this option to false.
  198. watch-files = true
  199.  
  200. # Define which messaging service should be used by the plugin.
  201. #
  202. # - If enabled and configured, LuckPerms will use the messaging service to inform other connected
  203. # servers of changes.
  204. # - Use the command "/lp networksync" to manually push changes.
  205. # - Data is NOT stored using this service. It is only used as a messaging platform.
  206. #
  207. # - If you decide to enable this feature, you should set "sync-minutes" to -1, as there is no need
  208. # for LuckPerms to poll the database for changes.
  209. #
  210. # - Possible options:
  211. # => sql Uses the SQL database to form a queue system for communication. Will only work when
  212. # 'storage-method' is set to MySQL or MariaDB. This is chosen by default if the
  213. # option is set to 'none' and SQL storage is in use. Set to 'notsql' to disable this.
  214. # => pluginmsg Uses the plugin messaging channels to communicate with the proxy.
  215. # LuckPerms must be installed on your proxy & all connected servers backend servers.
  216. # Won't work if you have more than one proxy.
  217. # => redis Uses Redis pub-sub to push changes. Your server connection info must be configured
  218. # below.
  219. # => none Disables the service.
  220. messaging-service = "none"
  221.  
  222. # If LuckPerms should automatically push updates after a change has been made with a command.
  223. auto-push-updates = true
  224.  
  225. # If LuckPerms should push logging entries to connected servers via the messaging service.
  226. push-log-entries = true
  227.  
  228. # If LuckPerms should broadcast received logging entries to players on this platform.
  229. #
  230. # - If you have LuckPerms installed on your backend servers as well as a BungeeCord proxy, you
  231. # should set this option to false on either your backends or your proxies, to avoid players being
  232. # messaged twice about log entries.
  233. broadcast-received-log-entries = true
  234.  
  235. # Settings for Redis.
  236. # Port 6379 is used by default; set address to "host:port" if differs
  237. redis {
  238. enabled = false
  239. address = "localhost"
  240. password = ""
  241. }
  242.  
  243.  
  244.  
  245.  
  246. # +----------------------------------------------------------------------------------------------+ #
  247. # | | #
  248. # | CUSTOMIZATION SETTINGS | #
  249. # | | #
  250. # | Settings that allow admins to customize the way LuckPerms operates. | #
  251. # | | #
  252. # +----------------------------------------------------------------------------------------------+ #
  253.  
  254. # Controls how temporary permissions/parents/meta should be accumulated.
  255. #
  256. # - The default behaviour is "deny".
  257. # - This behaviour can also be specified when the command is executed. See the command usage
  258. # documentation for more info.
  259. #
  260. # - Possible options:
  261. # => accumulate durations will be added to the existing expiry time
  262. # => replace durations will be replaced if the new duration is later than the current
  263. # expiration
  264. # => deny the command will just fail if you try to add another node with the same expiry
  265. temporary-add-behaviour = "deny"
  266.  
  267. # Controls how LuckPerms will determine a users "primary" group.
  268. #
  269. # - The meaning and influence of "primary groups" are explained in detail on the wiki.
  270. # - The preferred approach is to let LuckPerms automatically determine a users primary group
  271. # based on the relative weight of their parent groups.
  272. #
  273. # - Possible options:
  274. # => stored use the value stored against the users record in the file/database
  275. # => parents-by-weight just use the users most highly weighted parent
  276. # => all-parents-by-weight same as above, but calculates based upon all parents inherited from
  277. # both directly and indirectly
  278. primary-group-calculation = "parents-by-weight"
  279.  
  280. # If the plugin should check for "extra" permissions with users run LP commands.
  281. #
  282. # - These extra permissions allow finer control over what users can do with each command, and who
  283. # they have access to edit.
  284. # - The nature of the checks are documented on the wiki under "Argument based command permissions".
  285. # - Argument based permissions are *not* static, unlike the 'base' permissions, and will depend upon
  286. # the arguments given within the command.
  287. argument-based-command-permissions = false
  288.  
  289. # If the plugin should check whether senders are a member of a given group before they're able to
  290. # edit the groups data or add/remove other users to/from it.
  291. # Note: these limitations do not apply to the web editor!
  292. require-sender-group-membership-to-modify = false
  293.  
  294. # If the plugin should send log notifications to users whenever permissions are modified.
  295. #
  296. # - Notifications are only sent to those with the appropriate permission to receive them
  297. # - They can also be temporarily enabled/disabled on a per-user basis using
  298. # '/lp log notify <on|off>'
  299. log-notify = true
  300.  
  301. # Defines the options for prefix and suffix stacking.
  302. #
  303. # - The feature allows you to display multiple prefixes or suffixes alongside a players username in
  304. # chat.
  305. # - It is explained and documented in more detail on the wiki under "Prefix & Suffix Stacking".
  306. #
  307. # - The options are divided into separate sections for prefixes and suffixes.
  308. # - The 'duplicates' setting refers to how duplicate elements are handled. Can be 'retain-all',
  309. # 'first-only' or 'last-only'.
  310. # - The value of 'start-spacer' is included at the start of the resultant prefix/suffix.
  311. # - The value of 'end-spacer' is included at the end of the resultant prefix/suffix.
  312. # - The value of 'middle-spacer' is included between each element in the resultant prefix/suffix.
  313. #
  314. # - Possible format options:
  315. # => highest Selects the value with the highest weight, from all values
  316. # held by or inherited by the player.
  317. #
  318. # => lowest Same as above, except takes the one with the lowest weight.
  319. #
  320. # => highest_own Selects the value with the highest weight, but will not
  321. # accept any inherited values.
  322. #
  323. # => lowest_own Same as above, except takes the value with the lowest weight.
  324. #
  325. # => highest_inherited Selects the value with the highest weight, but will only
  326. # accept inherited values.
  327. #
  328. # => lowest_inherited Same as above, except takes the value with the lowest weight.
  329. #
  330. # => highest_on_track_<track> Selects the value with the highest weight, but only if the
  331. # value was inherited from a group on the given track.
  332. #
  333. # => lowest_on_track_<track> Same as above, except takes the value with the lowest weight.
  334. #
  335. # => highest_not_on_track_<track> Selects the value with the highest weight, but only if the
  336. # value was inherited from a group not on the given track.
  337. #
  338. # => lowest_not_on_track_<track> Same as above, except takes the value with the lowest weight.
  339. meta-formatting {
  340. prefix {
  341. format = [
  342. "highest"
  343. ]
  344. duplicates = "first-only"
  345. start-spacer = ""
  346. middle-spacer = " "
  347. end-spacer = ""
  348. }
  349. suffix {
  350. format = [
  351. "highest"
  352. ]
  353. duplicates = "first-only"
  354. start-spacer = ""
  355. middle-spacer = " "
  356. end-spacer = ""
  357. }
  358. }
  359.  
  360.  
  361.  
  362.  
  363. # +----------------------------------------------------------------------------------------------+ #
  364. # | | #
  365. # | PERMISSION CALCULATION AND INHERITANCE | #
  366. # | | #
  367. # | Modify the way permission checks, meta lookups and inheritance resolutions are handled. | #
  368. # | | #
  369. # +----------------------------------------------------------------------------------------------+ #
  370.  
  371. # The algorithm LuckPerms should use when traversing the "inheritance tree".
  372. #
  373. # - Possible options:
  374. # => breadth-first See: https://en.wikipedia.org/wiki/Breadth-first_search
  375. # => depth-first-pre-order See: https://en.wikipedia.org/wiki/Depth-first_search
  376. # => depth-first-post-order See: https://en.wikipedia.org/wiki/Depth-first_search
  377. inheritance-traversal-algorithm = "depth-first-pre-order"
  378.  
  379. # If a final sort according to "inheritance rules" should be performed after the traversal algorithm
  380. # has resolved the inheritance tree.
  381. #
  382. # "Inheritance rules" refers to things such as group weightings, primary group status, and the
  383. # natural contextual ordering of the group nodes.
  384. #
  385. # Setting this to 'true' will allow for the inheritance rules to take priority over the structure of
  386. # the inheritance tree.
  387. #
  388. # Effectively when this setting is 'true': the tree is flattened, and rules applied afterwards,
  389. # and when this setting is 'false':, the rules are just applied during each step of the traversal.
  390. post-traversal-inheritance-sort = false
  391.  
  392. # +----------------------------------------------------------------------------------------------+ #
  393. # | Permission resolution settings | #
  394. # +----------------------------------------------------------------------------------------------+ #
  395.  
  396. # If users on this server should have their global permissions applied.
  397. # When set to false, only server specific permissions will apply for users on this server
  398. include-global = true
  399.  
  400. # If users on this server should have their global world permissions applied.
  401. # When set to false, only world specific permissions will apply for users on this server
  402. include-global-world = true
  403.  
  404. # If users on this server should have global (non-server specific) groups applied
  405. apply-global-groups = true
  406.  
  407. # If users on this server should have global (non-world specific) groups applied
  408. apply-global-world-groups = true
  409.  
  410. # +----------------------------------------------------------------------------------------------+ #
  411. # | Inheritance settings | #
  412. # +----------------------------------------------------------------------------------------------+ #
  413.  
  414. # If the plugin should apply wildcard permissions.
  415. #
  416. # - If set to true, LuckPerms will detect wildcard permissions, and resolve & apply all registered
  417. # permissions matching the wildcard.
  418. apply-wildcards = true
  419.  
  420. # If the plugin should parse regex permissions.
  421. #
  422. # - If set to true, LuckPerms will detect regex permissions, marked with "r=" at the start of the
  423. # node, and resolve & apply all registered permissions matching the regex.
  424. apply-regex = true
  425.  
  426. # If the plugin should complete and apply shorthand permissions.
  427. #
  428. # - If set to true, LuckPerms will detect and expand shorthand node patterns.
  429. apply-shorthand = true
  430.  
  431. # If LuckPerms should resolve and apply permissions according to Sponge's implicit wildcard
  432. # inheritance system.
  433. #
  434. # That being:
  435. # If a user has been granted "example", then the player should have also be automatically granted
  436. # "example.function", "example.another", "example.deeper.nesting", and so on.
  437. #
  438. # If this option is set to false, this system will not be applied.
  439. apply-sponge-implicit-wildcards=true
  440.  
  441. # If the plugin should apply Sponge default subject permissions.
  442. # Plugins can manipulate a set of default permissions granted to all users. If this option is set to
  443. # false, LuckPerms will ignore this data when considering if a player has a permission.
  444. apply-sponge-default-subjects=true
  445.  
  446. # +----------------------------------------------------------------------------------------------+ #
  447. # | Extra settings | #
  448. # +----------------------------------------------------------------------------------------------+ #
  449.  
  450. # Allows you to set "aliases" for the worlds sent forward for context calculation.
  451. #
  452. # - These aliases are provided in addition to the real world name. Applied recursively.
  453. # - Remove the comment characters for the default aliases to apply.
  454. world-rewrite {
  455. #world_nether = "world"
  456. #world_the_end = "world"
  457. }
  458.  
  459. # Define special group weights for this server.
  460. #
  461. # - Group weights can also be applied directly to group data, using the setweight command.
  462. # - This section allows weights to be set on a per-server basis.
  463. group-weight {
  464. #admin = 10
  465. }
  466.  
  467.  
  468.  
  469.  
  470. # +----------------------------------------------------------------------------------------------+ #
  471. # | | #
  472. # | FINE TUNING OPTIONS | #
  473. # | | #
  474. # | A number of more niche settings for tweaking and changing behaviour. The section also | #
  475. # | contains toggles for some more specialised features. It is only necessary to make changes to | #
  476. # | these options if you want to fine-tune LuckPerms behaviour. | #
  477. # | | #
  478. # +----------------------------------------------------------------------------------------------+ #
  479.  
  480. # +----------------------------------------------------------------------------------------------+ #
  481. # | Miscellaneous (and rarely used) settings | #
  482. # +----------------------------------------------------------------------------------------------+ #
  483.  
  484. # If LuckPerms should produce extra logging output when it handles logins.
  485. #
  486. # - Useful if you're having issues with UUID forwarding or data not being loaded.
  487. debug-logins = false
  488.  
  489. # If LuckPerms should allow usernames with non alphanumeric characters.
  490. #
  491. # - Note that due to the design of the storage implementation, usernames must still be 16 characters
  492. # or less.
  493. allow-invalid-usernames = false
  494.  
  495. # If LuckPerms should allow a users primary group to be removed with the 'parent remove' command.
  496. #
  497. # - When this happens, the plugin will set their primary group back to default.
  498. prevent-primary-group-removal = false
  499.  
  500.  
  501.  
  502.  
  503. # +----------------------------------------------------------------------------------------------+ #
  504. # | | #
  505. # | DEFAULT ASSIGNMENTS | #
  506. # | | #
  507. # +----------------------------------------------------------------------------------------------+ #
  508.  
  509. # This section allows you to define defaults to give users whenever they connect to the server.
  510. # The default assignments are highly configurable and conditional.
  511. #
  512. # There is one default assignment built into LuckPerms, which will add all users to the "default"
  513. # group if they are not a member of any other group. This setting cannot be disabled. However, you
  514. # can use this section to add more of your own.
  515. #
  516. # IMPORTANT:
  517. # In order to save storage space, LuckPerms does not store users who have no permissions defined,
  518. # and are only a member of the default group. Adding default assignments to this section will negate
  519. # this effect. It is HIGHLY RECCOMENDED that instead of assigning defaults here, you add permissions
  520. # to the "default" group, or set the "default" group to inherit other groups, and then use the
  521. # group-name-rewrite rule above.
  522. #
  523. # It is also important to note that these rules are considered every time a player logs into the
  524. # server, and are applied directly to the user's data. Simply removing a rule here will not reverse
  525. # the effect of that rule on any users who have already had it applied to them.
  526. #
  527. # The "has" and "lacks" conditions below support standard boolean logic, using the 'and' & 'or'
  528. # characters used in Java.
  529. # e.g. "(some.other.permission | some.permission.other) & some.thing.else" == a user has
  530. # 'some.other.permission', or 'some.permission.other', and they also have 'some.thing.else'
  531. #
  532. # Groups are represented by the permission node: group.<group name>
  533. # Per server and per world nodes are represented by "server-world/permission" or "server/permission"
  534. #
  535. # Within conditions, permission nodes MUST be escaped using "<" and ">". See the example below.
  536. #
  537. # Explanation of the examples below: (they're just to demonstrate the features & use cases)
  538. #
  539. # rule1:
  540. # If a user is either in the vip or vip+ group, and they have the "titles.titlecollector" permission
  541. # set to true, and the "some.random.permission" set to false... if they're not in the group
  542. # "prison_titlepack" on the "prison" server, then give add them to the "prison_titlepack" group on
  543. # the "prison" server, and remove "some.random.permission".
  544. #
  545. # rule2:
  546. # If the user isn't in any of the following groups on the skyblock server: sb_level1, sb_level2,
  547. # sb_level3, then add them to sb_level1 on the skyblock server.
  548. #
  549. # rule3:
  550. # If the user is a member of the default group, remove them from default, add them to member, and
  551. # set their primary group to member.
  552. #
  553. # WARNING: Unlike internal commands, this system does not ensure that a group exists before adding
  554. # a user to it. It also does not unsure that a user is a member of a group before making that group
  555. # their primary group.
  556. #
  557. # Before you use "give: group.<name>" or "set-primary-group", make sure that the group exists, and
  558. # that the user is a member of the group.
  559. default-assignments {
  560. # rule1 {
  561. # if {
  562. # has-true="(<group.vip> | <group.vip+>) & <titles.tilecollector>"
  563. # has-false="<some.random.permission>"
  564. # lacks="<prison/group.prison_titlepack>"
  565. # }
  566. # give = [
  567. # "prison/group.prison_titlepack"
  568. # ]
  569. # take = [
  570. # "some.random.permission"
  571. # ]
  572. # }
  573. # rule2 {
  574. # if {
  575. # lacks="<skyblock/group.sb_level1> & <skyblock/group.sb_level2> & <skyblock/group.sb_level3>"
  576. # }
  577. # give = [
  578. # "skyblock/group.sb_level1"
  579. # ]
  580. # }
  581. # rule3 {
  582. # if {
  583. # has-true="<group.default>"
  584. # }
  585. # take = [
  586. # "group.default"
  587. # ]
  588. # give = [
  589. # "group.member"
  590. # ]
  591. # set-primary-group="member"
  592. # }
  593. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement