Advertisement
Guest User

Untitled

a guest
Jan 2nd, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 28.09 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. # +----------------------------------------------------------------------------------------------+ #
  380. # | Permission resolution settings | #
  381. # +----------------------------------------------------------------------------------------------+ #
  382.  
  383. # If users on this server should have their global permissions applied.
  384. # When set to false, only server specific permissions will apply for users on this server
  385. include-global = true
  386.  
  387. # If users on this server should have their global world permissions applied.
  388. # When set to false, only world specific permissions will apply for users on this server
  389. include-global-world = true
  390.  
  391. # If users on this server should have global (non-server specific) groups applied
  392. apply-global-groups = true
  393.  
  394. # If users on this server should have global (non-world specific) groups applied
  395. apply-global-world-groups = true
  396.  
  397. # +----------------------------------------------------------------------------------------------+ #
  398. # | Inheritance settings | #
  399. # +----------------------------------------------------------------------------------------------+ #
  400.  
  401. # If the plugin should apply wildcard permissions.
  402. #
  403. # - If set to true, LuckPerms will detect wildcard permissions, and resolve & apply all registered
  404. # permissions matching the wildcard.
  405. apply-wildcards = true
  406.  
  407. # If the plugin should parse regex permissions.
  408. #
  409. # - If set to true, LuckPerms will detect regex permissions, marked with "r=" at the start of the
  410. # node, and resolve & apply all registered permissions matching the regex.
  411. apply-regex = true
  412.  
  413. # If the plugin should complete and apply shorthand permissions.
  414. #
  415. # - If set to true, LuckPerms will detect and expand shorthand node patterns.
  416. apply-shorthand = true
  417.  
  418. # If LuckPerms should resolve and apply permissions according to Sponge's implicit wildcard
  419. # inheritance system.
  420. #
  421. # That being:
  422. # If a user has been granted "example", then the player should have also be automatically granted
  423. # "example.function", "example.another", "example.deeper.nesting", and so on.
  424. #
  425. # If this option is set to false, this system will not be applied.
  426. apply-sponge-implicit-wildcards=true
  427.  
  428. # If the plugin should apply Sponge default subject permissions.
  429. # Plugins can manipulate a set of default permissions granted to all users. If this option is set to
  430. # false, LuckPerms will ignore this data when considering if a player has a permission.
  431. apply-sponge-default-subjects=true
  432.  
  433. # +----------------------------------------------------------------------------------------------+ #
  434. # | Extra settings | #
  435. # +----------------------------------------------------------------------------------------------+ #
  436.  
  437. # Allows you to set "aliases" for the worlds sent forward for context calculation.
  438. #
  439. # - These aliases are provided in addition to the real world name. Applied recursively.
  440. # - Remove the comment characters for the default aliases to apply.
  441. world-rewrite {
  442. #world_nether = "world"
  443. #world_the_end = "world"
  444. }
  445.  
  446. # Define special group weights for this server.
  447. #
  448. # - Group weights can also be applied directly to group data, using the setweight command.
  449. # - This section allows weights to be set on a per-server basis.
  450. group-weight {
  451. #admin = 10
  452. }
  453.  
  454.  
  455.  
  456.  
  457. # +----------------------------------------------------------------------------------------------+ #
  458. # | | #
  459. # | FINE TUNING OPTIONS | #
  460. # | | #
  461. # | A number of more niche settings for tweaking and changing behaviour. The section also | #
  462. # | contains toggles for some more specialised features. It is only necessary to make changes to | #
  463. # | these options if you want to fine-tune LuckPerms behaviour. | #
  464. # | | #
  465. # +----------------------------------------------------------------------------------------------+ #
  466.  
  467. # +----------------------------------------------------------------------------------------------+ #
  468. # | Miscellaneous (and rarely used) settings | #
  469. # +----------------------------------------------------------------------------------------------+ #
  470.  
  471. # If LuckPerms should produce extra logging output when it handles logins.
  472. #
  473. # - Useful if you're having issues with UUID forwarding or data not being loaded.
  474. debug-logins = false
  475.  
  476. # If LuckPerms should allow usernames with non alphanumeric characters.
  477. #
  478. # - Note that due to the design of the storage implementation, usernames must still be 16 characters
  479. # or less.
  480. allow-invalid-usernames = false
  481.  
  482. # If LuckPerms should allow a users primary group to be removed with the 'parent remove' command.
  483. #
  484. # - When this happens, the plugin will set their primary group back to default.
  485. prevent-primary-group-removal = false
  486.  
  487.  
  488.  
  489.  
  490. # +----------------------------------------------------------------------------------------------+ #
  491. # | | #
  492. # | DEFAULT ASSIGNMENTS | #
  493. # | | #
  494. # +----------------------------------------------------------------------------------------------+ #
  495.  
  496. # This section allows you to define defaults to give users whenever they connect to the server.
  497. # The default assignments are highly configurable and conditional.
  498. #
  499. # There is one default assignment built into LuckPerms, which will add all users to the "default"
  500. # group if they are not a member of any other group. This setting cannot be disabled. However, you
  501. # can use this section to add more of your own.
  502. #
  503. # IMPORTANT:
  504. # In order to save storage space, LuckPerms does not store users who have no permissions defined,
  505. # and are only a member of the default group. Adding default assignments to this section will negate
  506. # this effect. It is HIGHLY RECCOMENDED that instead of assigning defaults here, you add permissions
  507. # to the "default" group, or set the "default" group to inherit other groups, and then use the
  508. # group-name-rewrite rule above.
  509. #
  510. # It is also important to note that these rules are considered every time a player logs into the
  511. # server, and are applied directly to the user's data. Simply removing a rule here will not reverse
  512. # the effect of that rule on any users who have already had it applied to them.
  513. #
  514. # The "has" and "lacks" conditions below support standard boolean logic, using the 'and' & 'or'
  515. # characters used in Java.
  516. # e.g. "(some.other.permission | some.permission.other) & some.thing.else" == a user has
  517. # 'some.other.permission', or 'some.permission.other', and they also have 'some.thing.else'
  518. #
  519. # Groups are represented by the permission node: group.<group name>
  520. # Per server and per world nodes are represented by "server-world/permission" or "server/permission"
  521. #
  522. # Within conditions, permission nodes MUST be escaped using "<" and ">". See the example below.
  523. #
  524. # Explanation of the examples below: (they're just to demonstrate the features & use cases)
  525. #
  526. # rule1:
  527. # If a user is either in the vip or vip+ group, and they have the "titles.titlecollector" permission
  528. # set to true, and the "some.random.permission" set to false... if they're not in the group
  529. # "prison_titlepack" on the "prison" server, then give add them to the "prison_titlepack" group on
  530. # the "prison" server, and remove "some.random.permission".
  531. #
  532. # rule2:
  533. # If the user isn't in any of the following groups on the skyblock server: sb_level1, sb_level2,
  534. # sb_level3, then add them to sb_level1 on the skyblock server.
  535. #
  536. # rule3:
  537. # If the user is a member of the default group, remove them from default, add them to member, and
  538. # set their primary group to member.
  539. #
  540. # WARNING: Unlike internal commands, this system does not ensure that a group exists before adding
  541. # a user to it. It also does not unsure that a user is a member of a group before making that group
  542. # their primary group.
  543. #
  544. # Before you use "give: group.<name>" or "set-primary-group", make sure that the group exists, and
  545. # that the user is a member of the group.
  546. default-assignments {
  547. # rule1 {
  548. # if {
  549. # has-true="(<group.vip> | <group.vip+>) & <titles.tilecollector>"
  550. # has-false="<some.random.permission>"
  551. # lacks="<prison/group.prison_titlepack>"
  552. # }
  553. # give = [
  554. # "prison/group.prison_titlepack"
  555. # ]
  556. # take = [
  557. # "some.random.permission"
  558. # ]
  559. # }
  560. # rule2 {
  561. # if {
  562. # lacks="<skyblock/group.sb_level1> & <skyblock/group.sb_level2> & <skyblock/group.sb_level3>"
  563. # }
  564. # give = [
  565. # "skyblock/group.sb_level1"
  566. # ]
  567. # }
  568. # rule3 {
  569. # if {
  570. # has-true="<group.default>"
  571. # }
  572. # take = [
  573. # "group.default"
  574. # ]
  575. # give = [
  576. # "group.member"
  577. # ]
  578. # set-primary-group="member"
  579. # }
  580. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement