<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://wiki.nefald.fr/index.php?action=history&amp;feed=atom&amp;title=Plugin%3ALuckPerms</id>
	<title>Plugin:LuckPerms - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.nefald.fr/index.php?action=history&amp;feed=atom&amp;title=Plugin%3ALuckPerms"/>
	<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;action=history"/>
	<updated>2026-04-15T00:00:43Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=4961&amp;oldid=prev</id>
		<title>Agrado : namespace essentialX</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=4961&amp;oldid=prev"/>
		<updated>2026-02-13T18:29:33Z</updated>

		<summary type="html">&lt;p&gt;namespace essentialX&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 13 février 2026 à 18:29&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l952&quot;&gt;Ligne 952 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 952 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Vault]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[Vault]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[PlaceholderAPI]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[PlaceholderAPI]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[EssentialsX]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Plugin:EssentialsX|&lt;/ins&gt;EssentialsX]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[TAB]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* [[TAB]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Agrado</name></author>
	</entry>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=4717&amp;oldid=prev</id>
		<title>Hiob : Hiob a déplacé la page LuckPerms vers Plugin:LuckPerms sans laisser de redirection</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=4717&amp;oldid=prev"/>
		<updated>2026-02-10T20:33:05Z</updated>

		<summary type="html">&lt;p&gt;Hiob a déplacé la page &lt;a href=&quot;/LuckPerms&quot; class=&quot;mw-redirect&quot; title=&quot;LuckPerms&quot;&gt;LuckPerms&lt;/a&gt; vers &lt;a href=&quot;/Plugin:LuckPerms&quot; title=&quot;Plugin:LuckPerms&quot;&gt;Plugin:LuckPerms&lt;/a&gt; sans laisser de redirection&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 10 février 2026 à 20:33&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;fr&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Aucune différence)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Hiob</name></author>
	</entry>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=862&amp;oldid=prev</id>
		<title>Hiob le 10 octobre 2025 à 14:46</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=862&amp;oldid=prev"/>
		<updated>2025-10-10T14:46:18Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 10 octobre 2025 à 14:46&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l13&quot;&gt;Ligne 13 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 13 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|sources=https://github.com/LuckPerms/LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|sources=https://github.com/LuckPerms/LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|dépendance=Aucune&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|dépendance=Aucune&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|compatibilité=&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;1.8.8 à 1.21+&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|compatibilité=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hiob</name></author>
	</entry>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=854&amp;oldid=prev</id>
		<title>Hiob le 10 octobre 2025 à 08:22</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=854&amp;oldid=prev"/>
		<updated>2025-10-10T08:22:18Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 10 octobre 2025 à 08:22&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l49&quot;&gt;Ligne 49 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 49 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| &amp;#039;&amp;#039;&amp;#039;Interface&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| &amp;#039;&amp;#039;&amp;#039;Interface&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;**&lt;/del&gt;Web Editor&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;** &lt;/del&gt;: éditeur en ligne intuitif&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;Web Editor&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039; &lt;/ins&gt;: éditeur en ligne intuitif&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;**&lt;/del&gt;Verbose mode&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;** &lt;/del&gt;: debug permissions en temps réel&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;Verbose mode&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039; &lt;/ins&gt;: debug permissions en temps réel&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Commandes in-game complètes&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Commandes in-game complètes&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Interface visuelle pour tracks&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Interface visuelle pour tracks&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hiob</name></author>
	</entry>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=853&amp;oldid=prev</id>
		<title>Hiob : logo png</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=853&amp;oldid=prev"/>
		<updated>2025-10-10T08:17:32Z</updated>

		<summary type="html">&lt;p&gt;logo png&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 10 octobre 2025 à 08:17&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot;&gt;Ligne 2 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 2 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Infobox Plugin&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Infobox Plugin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|nom=LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|nom=LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|image=LuckPerms_Logo.&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;svg&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|image=LuckPerms_Logo.&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;png&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|legende=Logo de LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|legende=Logo de LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|type=Administration&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|type=Administration&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hiob</name></author>
	</entry>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=851&amp;oldid=prev</id>
		<title>Hiob : logo svg</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=851&amp;oldid=prev"/>
		<updated>2025-10-10T08:14:20Z</updated>

		<summary type="html">&lt;p&gt;logo svg&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version du 10 octobre 2025 à 08:14&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot;&gt;Ligne 2 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 2 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Infobox Plugin&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Infobox Plugin&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|nom=LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|nom=LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|image=LuckPerms_Logo.&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;png&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|image=LuckPerms_Logo.&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;svg&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|legende=Logo de LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|legende=Logo de LuckPerms&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|type=Administration&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|type=Administration&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hiob</name></author>
	</entry>
	<entry>
		<id>https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=796&amp;oldid=prev</id>
		<title>Hiob : Création</title>
		<link rel="alternate" type="text/html" href="https://wiki.nefald.fr/index.php?title=Plugin:LuckPerms&amp;diff=796&amp;oldid=prev"/>
		<updated>2025-10-08T21:31:38Z</updated>

		<summary type="html">&lt;p&gt;Création&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{SHORTDESC:Gestionnaire de permissions}}&lt;br /&gt;
{{Infobox Plugin&lt;br /&gt;
|nom=LuckPerms&lt;br /&gt;
|image=LuckPerms_Logo.png&lt;br /&gt;
|legende=Logo de LuckPerms&lt;br /&gt;
|type=Administration&lt;br /&gt;
|dev=Luck (lucko)&lt;br /&gt;
|status=&lt;br /&gt;
|grade=&lt;br /&gt;
|spigot=28140&lt;br /&gt;
|modrinth=luckperms&lt;br /&gt;
|hangar=LuckPerms/LuckPerms&lt;br /&gt;
|sources=https://github.com/LuckPerms/LuckPerms&lt;br /&gt;
|dépendance=Aucune&lt;br /&gt;
|compatibilité=1.8.8 à 1.21+&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;LuckPerms&amp;#039;&amp;#039;&amp;#039; est le système de gestion de permissions le plus avancé et le plus utilisé pour serveurs Minecraft. Il remplace les anciens systèmes comme PermissionsEx et GroupManager avec une approche moderne, performante et multi-plateforme.&lt;br /&gt;
&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
LuckPerms est un plugin de permissions open-source supportant [https://www.spigotmc.org Bukkit/Spigot], [https://papermc.io Paper], [https://www.spongepowered.org Sponge], [https://fabricmc.net Fabric], [https://neoforged.net NeoForge] et [https://www.velocitypowered.com Velocity]/[https://www.spigotmc.org/wiki/bungeecord/ BungeeCord]. &lt;br /&gt;
&lt;br /&gt;
== Fonctionnalités ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Catégorie !! Fonctionnalités&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Gestion des permissions&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* Permissions par joueur et par groupe&lt;br /&gt;
* Héritage multiple de groupes&lt;br /&gt;
* Permissions temporaires (expiration)&lt;br /&gt;
* Permissions contextuelles (monde, serveur, gamemode...)&lt;br /&gt;
* Wildcards et négation (&amp;lt;code&amp;gt;-permission&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Regex et patterns avancés&lt;br /&gt;
* Meta-données custom&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Groupes&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* Création illimitée de groupes&lt;br /&gt;
* Héritage multiple et priorité&lt;br /&gt;
* Groupes temporaires&lt;br /&gt;
* Tracks (progression de grades)&lt;br /&gt;
* Préfixes et suffixes&lt;br /&gt;
* Weights (poids/priorités)&lt;br /&gt;
* Groupes par défaut&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Interface&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* **Web Editor** : éditeur en ligne intuitif&lt;br /&gt;
* **Verbose mode** : debug permissions en temps réel&lt;br /&gt;
* Commandes in-game complètes&lt;br /&gt;
* Interface visuelle pour tracks&lt;br /&gt;
* Import/Export de configurations&lt;br /&gt;
* API complète pour développeurs&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Stockage&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* MySQL, MariaDB, PostgreSQL&lt;br /&gt;
* MongoDB&lt;br /&gt;
* SQLite (fichier local)&lt;br /&gt;
* H2 (fichier local)&lt;br /&gt;
* Configuration YAML/JSON&lt;br /&gt;
* Support multi-serveurs (réseau)&lt;br /&gt;
* Synchronisation temps réel&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Performance&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* Cache agressif et intelligent&lt;br /&gt;
* Requêtes async&lt;br /&gt;
* Impact minimal (&amp;lt; 1% CPU)&lt;br /&gt;
* Optimisé pour gros serveurs&lt;br /&gt;
* Support Redis pour sync&lt;br /&gt;
* Pas de lag aux changements&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Contextes&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* Par monde (&amp;lt;code&amp;gt;world=world_nether&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Par serveur (&amp;lt;code&amp;gt;server=lobby&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Par gamemode (&amp;lt;code&amp;gt;gamemode=survival&amp;lt;/code&amp;gt;)&lt;br /&gt;
* Contextes custom via API&lt;br /&gt;
* Combinaisons logiques (AND/OR)&lt;br /&gt;
* Negation de contextes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Intégrations&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* [[Vault]] (permissions, chat, economy)&lt;br /&gt;
* [[PlaceholderAPI]]&lt;br /&gt;
* Tous plugins majeurs&lt;br /&gt;
* API native extensible&lt;br /&gt;
* Hooks pour formats chat&lt;br /&gt;
* Export vers autres systèmes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Multi-plateforme&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|&lt;br /&gt;
* Spigot/Paper (Bukkit)&lt;br /&gt;
| Sponge&lt;br /&gt;
* Fabric&lt;br /&gt;
* NeoForge&lt;br /&gt;
* Velocity (proxy)&lt;br /&gt;
* BungeeCord (proxy)&lt;br /&gt;
* Configuration unifiée&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
=== Installation serveur unique ===&lt;br /&gt;
&lt;br /&gt;
# Téléchargez LuckPerms depuis [https://luckperms.net/download LuckPerms.net], [https://modrinth.com/plugin/luckperms Modrinth] ou [https://www.spigotmc.org/resources/28140/ SpigotMC]&lt;br /&gt;
# Placez &amp;lt;code&amp;gt;LuckPerms-Bukkit-x.x.x.jar&amp;lt;/code&amp;gt; dans &amp;lt;code&amp;gt;plugins/&amp;lt;/code&amp;gt;&lt;br /&gt;
# (Optionnel) Installez [[Vault]] pour compatibilité legacy&lt;br /&gt;
# Démarrez le serveur&lt;br /&gt;
# Configuration générée dans &amp;lt;code&amp;gt;plugins/LuckPerms/config.yml&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Installation réseau (BungeeCord/Velocity) ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Sur le proxy :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Installez &amp;lt;code&amp;gt;LuckPerms-Velocity-x.x.x.jar&amp;lt;/code&amp;gt; ou &amp;lt;code&amp;gt;LuckPerms-Bungee-x.x.x.jar&amp;lt;/code&amp;gt;&lt;br /&gt;
# Configurez la base de données MySQL&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Sur chaque serveur backend :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# Installez &amp;lt;code&amp;gt;LuckPerms-Bukkit-x.x.x.jar&amp;lt;/code&amp;gt;&lt;br /&gt;
# Configurez la même base de données&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration MySQL partagée :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
# config.yml (identique sur tous serveurs)&lt;br /&gt;
&lt;br /&gt;
storage-method: mysql&lt;br /&gt;
&lt;br /&gt;
data:&lt;br /&gt;
  address: localhost:3306&lt;br /&gt;
  database: minecraft&lt;br /&gt;
  username: root&lt;br /&gt;
  password: votre_mot_de_passe&lt;br /&gt;
  &lt;br /&gt;
  # Préfixe pour tables&lt;br /&gt;
  table-prefix: &amp;#039;luckperms_&amp;#039;&lt;br /&gt;
  &lt;br /&gt;
  # Pool de connexions&lt;br /&gt;
  pool-settings:&lt;br /&gt;
    maximum-pool-size: 10&lt;br /&gt;
    minimum-idle: 10&lt;br /&gt;
    maximum-lifetime: 1800000&lt;br /&gt;
    connection-timeout: 5000&lt;br /&gt;
&lt;br /&gt;
# Sync en temps réel&lt;br /&gt;
messaging-service: sql&lt;br /&gt;
# Ou pour meilleures performances&lt;br /&gt;
messaging-service: redis&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Configuration Redis (recommandé pour réseau) ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
# Pour sync instantanée entre serveurs&lt;br /&gt;
&lt;br /&gt;
messaging-service: redis&lt;br /&gt;
&lt;br /&gt;
redis:&lt;br /&gt;
  address: localhost:6379&lt;br /&gt;
  password: &amp;#039;&amp;#039;&lt;br /&gt;
  # Utiliser SSL&lt;br /&gt;
  ssl: false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Migration depuis autre plugin ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Depuis PermissionsEx&lt;br /&gt;
/lp migration permissionsex&lt;br /&gt;
&lt;br /&gt;
# Depuis GroupManager&lt;br /&gt;
/lp migration groupmanager&lt;br /&gt;
&lt;br /&gt;
# Depuis PowerfulPerms&lt;br /&gt;
/lp migration powerfulperms&lt;br /&gt;
&lt;br /&gt;
# Depuis bPermissions&lt;br /&gt;
/lp migration bpermissions&lt;br /&gt;
&lt;br /&gt;
# Depuis zPermissions&lt;br /&gt;
/lp migration zpermissions&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
=== config.yml principal ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
# Serveur (important pour réseaux)&lt;br /&gt;
server: lobby&lt;br /&gt;
&lt;br /&gt;
# Stockage&lt;br /&gt;
storage-method: h2&lt;br /&gt;
# Options: h2, sqlite, mysql, mariadb, postgresql, mongodb&lt;br /&gt;
&lt;br /&gt;
# Si déjà des groupes, ne pas réappliquer&lt;br /&gt;
apply-wildcards: false&lt;br /&gt;
apply-regex: false&lt;br /&gt;
&lt;br /&gt;
# Préfixes/suffixes via Vault&lt;br /&gt;
vault-server: true&lt;br /&gt;
vault-include-global: true&lt;br /&gt;
&lt;br /&gt;
# Debug&lt;br /&gt;
verbose-mode: false&lt;br /&gt;
&lt;br /&gt;
# Auto-save interval (minutes)&lt;br /&gt;
data:&lt;br /&gt;
  auto-push-updates: true&lt;br /&gt;
&lt;br /&gt;
# Watch file changes (pour config locale)&lt;br /&gt;
watch-files: true&lt;br /&gt;
&lt;br /&gt;
# Poids par défaut&lt;br /&gt;
primary-group-calculation: stored&lt;br /&gt;
# Options: stored, parents-by-weight, all-parents-by-weight&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Groupes de base ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Créer groupes essentiels&lt;br /&gt;
&lt;br /&gt;
# Groupe par défaut&lt;br /&gt;
/lp creategroup default&lt;br /&gt;
/lp group default permission set essentials.spawn&lt;br /&gt;
/lp group default permission set essentials.home&lt;br /&gt;
/lp group default permission set essentials.sethome&lt;br /&gt;
&lt;br /&gt;
# VIP&lt;br /&gt;
/lp creategroup vip&lt;br /&gt;
/lp group vip parent add default&lt;br /&gt;
/lp group vip permission set essentials.fly&lt;br /&gt;
/lp group vip permission set essentials.hat&lt;br /&gt;
/lp group vip meta setprefix &amp;quot;&amp;amp;6[VIP] &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Modérateur&lt;br /&gt;
/lp creategroup moderator&lt;br /&gt;
/lp group moderator parent add vip&lt;br /&gt;
/lp group moderator permission set essentials.kick&lt;br /&gt;
/lp group moderator permission set essentials.mute&lt;br /&gt;
/lp group moderator permission set essentials.vanish&lt;br /&gt;
/lp group moderator meta setprefix &amp;quot;&amp;amp;9[Mod] &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Admin&lt;br /&gt;
/lp creategroup admin&lt;br /&gt;
/lp group admin parent add moderator&lt;br /&gt;
/lp group admin permission set *&lt;br /&gt;
/lp group admin meta setprefix &amp;quot;&amp;amp;c[Admin] &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Owner&lt;br /&gt;
/lp creategroup owner&lt;br /&gt;
/lp group owner parent add admin&lt;br /&gt;
/lp group owner permission set *&lt;br /&gt;
/lp group owner meta setprefix &amp;quot;&amp;amp;4[Owner] &amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Commandes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Commande !! Description !! Alias&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Général&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp&amp;lt;/code&amp;gt; || Menu principal || &amp;lt;code&amp;gt;/luckperms&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/perms&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/permissions&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp info&amp;lt;/code&amp;gt; || Infos plugin || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp sync&amp;lt;/code&amp;gt; || Synchroniser données || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp editor&amp;lt;/code&amp;gt; || Ouvrir Web Editor || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp verbose &amp;lt;on/off&amp;gt;&amp;lt;/code&amp;gt; || Mode debug || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp reload&amp;lt;/code&amp;gt; || Recharger config || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp import &amp;lt;file&amp;gt;&amp;lt;/code&amp;gt; || Importer données || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp export &amp;lt;file&amp;gt;&amp;lt;/code&amp;gt; || Exporter données || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Utilisateurs&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; info&amp;lt;/code&amp;gt; || Infos utilisateur || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; permission set &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Donner permission || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; permission unset &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Retirer permission || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; permission check &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Vérifier permission || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; parent add &amp;lt;groupe&amp;gt;&amp;lt;/code&amp;gt; || Ajouter au groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; parent remove &amp;lt;groupe&amp;gt;&amp;lt;/code&amp;gt; || Retirer du groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; parent set &amp;lt;groupe&amp;gt;&amp;lt;/code&amp;gt; || Définir groupe principal || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; clear&amp;lt;/code&amp;gt; || Effacer permissions || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; clone &amp;lt;cible&amp;gt;&amp;lt;/code&amp;gt; || Cloner permissions || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Groupes&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp listgroups&amp;lt;/code&amp;gt; || Lister groupes || &amp;lt;code&amp;gt;/lp groups&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp creategroup &amp;lt;nom&amp;gt;&amp;lt;/code&amp;gt; || Créer groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp deletegroup &amp;lt;nom&amp;gt;&amp;lt;/code&amp;gt; || Supprimer groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; info&amp;lt;/code&amp;gt; || Infos groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; permission set &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Donner permission || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; permission unset &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Retirer permission || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; parent add &amp;lt;parent&amp;gt;&amp;lt;/code&amp;gt; || Hériter de groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; parent remove &amp;lt;parent&amp;gt;&amp;lt;/code&amp;gt; || Retirer héritage || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; setweight &amp;lt;poids&amp;gt;&amp;lt;/code&amp;gt; || Définir priorité || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; clear&amp;lt;/code&amp;gt; || Effacer permissions || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; clone &amp;lt;cible&amp;gt;&amp;lt;/code&amp;gt; || Cloner groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; rename &amp;lt;nouveau&amp;gt;&amp;lt;/code&amp;gt; || Renommer groupe || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Meta (préfixes/suffixes)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; meta setprefix &amp;lt;prio&amp;gt; &amp;lt;prefix&amp;gt;&amp;lt;/code&amp;gt; || Définir préfixe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; meta setsuffix &amp;lt;prio&amp;gt; &amp;lt;suffix&amp;gt;&amp;lt;/code&amp;gt; || Définir suffixe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; meta unsetprefix&amp;lt;/code&amp;gt; || Retirer préfixe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; meta unsetsuffix&amp;lt;/code&amp;gt; || Retirer suffixe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; meta setprefix &amp;lt;prio&amp;gt; &amp;lt;prefix&amp;gt;&amp;lt;/code&amp;gt; || Préfixe groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; meta setsuffix &amp;lt;prio&amp;gt; &amp;lt;suffix&amp;gt;&amp;lt;/code&amp;gt; || Suffixe groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; meta set &amp;lt;key&amp;gt; &amp;lt;value&amp;gt;&amp;lt;/code&amp;gt; || Définir meta custom || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; meta unset &amp;lt;key&amp;gt;&amp;lt;/code&amp;gt; || Retirer meta || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Permissions temporaires&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; permission settemp &amp;lt;perm&amp;gt; &amp;lt;durée&amp;gt;&amp;lt;/code&amp;gt; || Permission temporaire || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; parent addtemp &amp;lt;groupe&amp;gt; &amp;lt;durée&amp;gt;&amp;lt;/code&amp;gt; || Groupe temporaire || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; permission settemp &amp;lt;perm&amp;gt; &amp;lt;durée&amp;gt;&amp;lt;/code&amp;gt; || Permission temp groupe || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Contextes&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; permission set &amp;lt;perm&amp;gt; world=world&amp;lt;/code&amp;gt; || Permission par monde || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; permission set &amp;lt;perm&amp;gt; server=lobby&amp;lt;/code&amp;gt; || Permission par serveur || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp group &amp;lt;groupe&amp;gt; permission set &amp;lt;perm&amp;gt; gamemode=survival&amp;lt;/code&amp;gt; || Permission par gamemode || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Tracks&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp createtrack &amp;lt;nom&amp;gt;&amp;lt;/code&amp;gt; || Créer track || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp deletetrack &amp;lt;nom&amp;gt;&amp;lt;/code&amp;gt; || Supprimer track || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp listracks&amp;lt;/code&amp;gt; || Lister tracks || &amp;lt;code&amp;gt;/lp tracks&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp track &amp;lt;track&amp;gt; info&amp;lt;/code&amp;gt; || Infos track || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp track &amp;lt;track&amp;gt; append &amp;lt;groupe&amp;gt;&amp;lt;/code&amp;gt; || Ajouter groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp track &amp;lt;track&amp;gt; insert &amp;lt;groupe&amp;gt; &amp;lt;pos&amp;gt;&amp;lt;/code&amp;gt; || Insérer groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp track &amp;lt;track&amp;gt; remove &amp;lt;groupe&amp;gt;&amp;lt;/code&amp;gt; || Retirer groupe || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; promote &amp;lt;track&amp;gt;&amp;lt;/code&amp;gt; || Promouvoir joueur || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp user &amp;lt;joueur&amp;gt; demote &amp;lt;track&amp;gt;&amp;lt;/code&amp;gt; || Rétrograder joueur || &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;background:#ddd;&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Debug &amp;amp; Utilitaires&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp verbose on&amp;lt;/code&amp;gt; || Activer verbose || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp verbose record&amp;lt;/code&amp;gt; || Enregistrer session || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp verbose paste&amp;lt;/code&amp;gt; || Partager logs || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp verbose off&amp;lt;/code&amp;gt; || Désactiver verbose || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp tree [scope]&amp;lt;/code&amp;gt; || Arbre permissions || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp search &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Chercher permission || &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;/lp check &amp;lt;joueur&amp;gt; &amp;lt;perm&amp;gt;&amp;lt;/code&amp;gt; || Tester permission || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Formats de durée ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
s = secondes    (ex: 30s)&lt;br /&gt;
m = minutes     (ex: 45m)&lt;br /&gt;
h = heures      (ex: 2h)&lt;br /&gt;
d = jours       (ex: 7d)&lt;br /&gt;
w = semaines    (ex: 2w)&lt;br /&gt;
mo = mois       (ex: 1mo)&lt;br /&gt;
y = années      (ex: 1y)&lt;br /&gt;
&lt;br /&gt;
Combinable: 1d12h30m&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Web Editor ==&lt;br /&gt;
&lt;br /&gt;
Le &amp;#039;&amp;#039;&amp;#039;Web Editor&amp;#039;&amp;#039;&amp;#039; est l&amp;#039;interface graphique de LuckPerms accessible via navigateur.&lt;br /&gt;
&lt;br /&gt;
=== Utilisation ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Ouvrir l&amp;#039;éditeur&lt;br /&gt;
/lp editor&lt;br /&gt;
&lt;br /&gt;
# Éditer un utilisateur spécifique&lt;br /&gt;
/lp user Notch editor&lt;br /&gt;
&lt;br /&gt;
# Éditer un groupe&lt;br /&gt;
/lp group admin editor&lt;br /&gt;
&lt;br /&gt;
# Éditer un track&lt;br /&gt;
/lp track staff editor&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Un lien unique et sécurisé sera généré, exemple :&lt;br /&gt;
&amp;lt;code&amp;gt;https://editor.luckperms.net/#abcd1234&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fonctionnalités Editor ===&lt;br /&gt;
* Interface visuelle drag &amp;amp; drop&lt;br /&gt;
* Recherche de permissions&lt;br /&gt;
* Ajout/suppression en masse&lt;br /&gt;
* Modification contextes&lt;br /&gt;
* Prévisualisation en temps réel&lt;br /&gt;
* Sauvegarde automatique&lt;br /&gt;
* Historique des changements&lt;br /&gt;
* Export/Import JSON&lt;br /&gt;
&lt;br /&gt;
=== Appliquer les changements ===&lt;br /&gt;
Après modifications dans l&amp;#039;éditeur :&lt;br /&gt;
# Cliquez sur &amp;#039;&amp;#039;&amp;#039;Save&amp;#039;&amp;#039;&amp;#039; dans l&amp;#039;éditeur&lt;br /&gt;
# Copiez la commande générée&lt;br /&gt;
# Collez dans la console Minecraft&lt;br /&gt;
# Les changements sont appliqués instantanément&lt;br /&gt;
&lt;br /&gt;
== Exemples avancés ==&lt;br /&gt;
&lt;br /&gt;
=== Système de grades complet ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Créer les groupes&lt;br /&gt;
/lp creategroup joueur&lt;br /&gt;
/lp creategroup membre&lt;br /&gt;
/lp creategroup vip&lt;br /&gt;
/lp creategroup mvp&lt;br /&gt;
/lp creategroup modérateur&lt;br /&gt;
/lp creategroup admin&lt;br /&gt;
/lp creategroup owner&lt;br /&gt;
&lt;br /&gt;
# Joueur (défaut)&lt;br /&gt;
/lp group joueur permission set essentials.spawn&lt;br /&gt;
/lp group joueur permission set essentials.help&lt;br /&gt;
/lp group joueur meta setprefix &amp;quot;&amp;amp;7[Joueur] &amp;quot;&lt;br /&gt;
/lp group joueur setweight 10&lt;br /&gt;
&lt;br /&gt;
# Membre (actif)&lt;br /&gt;
/lp group membre parent add joueur&lt;br /&gt;
/lp group membre permission set essentials.home&lt;br /&gt;
/lp group membre permission set essentials.sethome.multiple.3&lt;br /&gt;
/lp group membre meta setprefix &amp;quot;&amp;amp;a[Membre] &amp;quot;&lt;br /&gt;
/lp group membre setweight 20&lt;br /&gt;
&lt;br /&gt;
# VIP&lt;br /&gt;
/lp group vip parent add membre&lt;br /&gt;
/lp group vip permission set essentials.sethome.multiple.5&lt;br /&gt;
/lp group vip permission set essentials.fly&lt;br /&gt;
/lp group vip permission set essentials.hat&lt;br /&gt;
/lp group vip permission set essentials.nick&lt;br /&gt;
/lp group vip meta setprefix &amp;quot;&amp;amp;6[VIP] &amp;quot;&lt;br /&gt;
/lp group vip setweight 30&lt;br /&gt;
&lt;br /&gt;
# MVP&lt;br /&gt;
/lp group mvp parent add vip&lt;br /&gt;
/lp group mvp permission set essentials.sethome.unlimited&lt;br /&gt;
/lp group mvp permission set essentials.fly.safelogin&lt;br /&gt;
/lp group mvp permission set essentials.speed&lt;br /&gt;
/lp group mvp meta setprefix &amp;quot;&amp;amp;e[MVP] &amp;quot;&lt;br /&gt;
/lp group mvp setweight 40&lt;br /&gt;
&lt;br /&gt;
# Modérateur&lt;br /&gt;
/lp group modérateur parent add mvp&lt;br /&gt;
/lp group modérateur permission set essentials.kick&lt;br /&gt;
/lp group modérateur permission set essentials.mute&lt;br /&gt;
/lp group modérateur permission set essentials.tempban&lt;br /&gt;
/lp group modérateur permission set essentials.vanish&lt;br /&gt;
/lp group modérateur permission set essentials.socialspy&lt;br /&gt;
/lp group modérateur meta setprefix &amp;quot;&amp;amp;9[Mod] &amp;quot;&lt;br /&gt;
/lp group modérateur setweight 50&lt;br /&gt;
&lt;br /&gt;
# Admin&lt;br /&gt;
/lp group admin parent add modérateur&lt;br /&gt;
/lp group admin permission set essentials.ban&lt;br /&gt;
/lp group admin permission set essentials.unban&lt;br /&gt;
/lp group admin permission set essentials.jail&lt;br /&gt;
/lp group admin permission set essentials.god&lt;br /&gt;
/lp group admin permission set essentials.gamemode&lt;br /&gt;
/lp group admin permission set worldedit.*&lt;br /&gt;
/lp group admin meta setprefix &amp;quot;&amp;amp;c[Admin] &amp;quot;&lt;br /&gt;
/lp group admin setweight 60&lt;br /&gt;
&lt;br /&gt;
# Owner&lt;br /&gt;
/lp group owner parent add admin&lt;br /&gt;
/lp group owner permission set *&lt;br /&gt;
/lp group owner meta setprefix &amp;quot;&amp;amp;4[Owner] &amp;quot;&lt;br /&gt;
/lp group owner setweight 100&lt;br /&gt;
&lt;br /&gt;
# Créer track de progression&lt;br /&gt;
/lp createtrack staff&lt;br /&gt;
/lp track staff append joueur&lt;br /&gt;
/lp track staff append membre&lt;br /&gt;
/lp track staff append vip&lt;br /&gt;
/lp track staff append mvp&lt;br /&gt;
/lp track staff append modérateur&lt;br /&gt;
/lp track staff append admin&lt;br /&gt;
/lp track staff append owner&lt;br /&gt;
&lt;br /&gt;
# Promouvoir un joueur&lt;br /&gt;
/lp user Notch promote staff&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Permissions par monde ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Fly seulement dans lobby&lt;br /&gt;
/lp group vip permission set essentials.fly true world=lobby&lt;br /&gt;
&lt;br /&gt;
# PvP désactivé dans monde créatif&lt;br /&gt;
/lp group default permission set pvp.allow false world=creative&lt;br /&gt;
&lt;br /&gt;
# Permissions différentes par monde&lt;br /&gt;
/lp user Notch permission set worldedit.* true world=build&lt;br /&gt;
/lp user Notch permission set worldedit.* false world=survival&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Permissions temporaires ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# VIP 30 jours&lt;br /&gt;
/lp user Notch parent addtemp vip 30d&lt;br /&gt;
&lt;br /&gt;
# Permission 2 heures&lt;br /&gt;
/lp user Notch permission settemp essentials.fly 2h&lt;br /&gt;
&lt;br /&gt;
# VIP jusqu&amp;#039;à date précise&lt;br /&gt;
/lp user Notch parent addtemp vip 2024-12-31T23:59:59&lt;br /&gt;
&lt;br /&gt;
# Voir expirations&lt;br /&gt;
/lp user Notch info&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Permissions négatives ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Groupe a toutes permissions sauf une&lt;br /&gt;
/lp group admin permission set *&lt;br /&gt;
/lp group admin permission set -essentials.sudo&lt;br /&gt;
&lt;br /&gt;
# Bloquer commande spécifique&lt;br /&gt;
/lp user Notch permission set -essentials.fly&lt;br /&gt;
&lt;br /&gt;
# Override permission de groupe&lt;br /&gt;
/lp group vip permission set essentials.*&lt;br /&gt;
/lp user Notch permission set -essentials.nick&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Contextes multiples ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Fly seulement dans lobby ET en créatif&lt;br /&gt;
/lp user Notch permission set essentials.fly world=lobby gamemode=creative&lt;br /&gt;
&lt;br /&gt;
# Permissions différentes par serveur (réseau)&lt;br /&gt;
/lp user Notch permission set plotme.* server=creative&lt;br /&gt;
/lp user Notch permission set factions.* server=survival&lt;br /&gt;
&lt;br /&gt;
# Combiner contextes&lt;br /&gt;
/lp group builder permission set worldedit.* server=build world=flatworld&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Wildcard avancé ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Toutes permissions essentials sauf economy&lt;br /&gt;
/lp group vip permission set essentials.*&lt;br /&gt;
/lp group vip permission set -essentials.eco.*&lt;br /&gt;
&lt;br /&gt;
# WorldEdit sauf //set et //replace&lt;br /&gt;
/lp group helper permission set worldedit.*&lt;br /&gt;
/lp group helper permission set -worldedit.set&lt;br /&gt;
/lp group helper permission set -worldedit.replace&lt;br /&gt;
&lt;br /&gt;
# Seulement permissions de lecture&lt;br /&gt;
/lp group viewer permission set coreprotect.lookup&lt;br /&gt;
/lp group viewer permission set coreprotect.inspect&lt;br /&gt;
/lp group viewer permission set -coreprotect.rollback&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Préfixes/Suffixes avancés ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# Préfixe avec priorité&lt;br /&gt;
/lp group admin meta setprefix 100 &amp;quot;&amp;amp;c[Admin] &amp;quot;&lt;br /&gt;
/lp group vip meta setprefix 50 &amp;quot;&amp;amp;6[VIP] &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Préfixe personnel (override groupe)&lt;br /&gt;
/lp user Notch meta setprefix 999 &amp;quot;&amp;amp;4[Fondateur] &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Suffixe&lt;br /&gt;
/lp group mvp meta setsuffix 50 &amp;quot; &amp;amp;6★&amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Multiple préfixes (stack)&lt;br /&gt;
/lp group admin meta addprefix 100 &amp;quot;&amp;amp;c[Admin] &amp;quot;&lt;br /&gt;
/lp group admin meta addprefix 90 &amp;quot;&amp;amp;7[Builder] &amp;quot;&lt;br /&gt;
&lt;br /&gt;
# Meta custom&lt;br /&gt;
/lp user Notch meta set &amp;quot;discord&amp;quot; &amp;quot;Notch#0001&amp;quot;&lt;br /&gt;
/lp user Notch meta set &amp;quot;birthday&amp;quot; &amp;quot;2024-06-01&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== API Développeur ==&lt;br /&gt;
&lt;br /&gt;
=== Dépendance Maven ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;repositories&amp;gt;&lt;br /&gt;
    &amp;lt;repository&amp;gt;&lt;br /&gt;
        &amp;lt;id&amp;gt;luck-repo&amp;lt;/id&amp;gt;&lt;br /&gt;
        &amp;lt;url&amp;gt;https://repo.lucko.me/&amp;lt;/url&amp;gt;&lt;br /&gt;
    &amp;lt;/repository&amp;gt;&lt;br /&gt;
&amp;lt;/repositories&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;dependencies&amp;gt;&lt;br /&gt;
    &amp;lt;dependency&amp;gt;&lt;br /&gt;
        &amp;lt;groupId&amp;gt;net.luckperms&amp;lt;/groupId&amp;gt;&lt;br /&gt;
        &amp;lt;artifactId&amp;gt;api&amp;lt;/artifactId&amp;gt;&lt;br /&gt;
        &amp;lt;version&amp;gt;5.4&amp;lt;/version&amp;gt;&lt;br /&gt;
        &amp;lt;scope&amp;gt;provided&amp;lt;/scope&amp;gt;&lt;br /&gt;
    &amp;lt;/dependency&amp;gt;&lt;br /&gt;
&amp;lt;/dependencies&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Dépendance Gradle ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;groovy&amp;quot;&amp;gt;&lt;br /&gt;
repositories {&lt;br /&gt;
    maven { url &amp;#039;https://repo.lucko.me/&amp;#039; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
dependencies {&lt;br /&gt;
    compileOnly &amp;#039;net.luckperms:api:5.4&amp;#039;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Exemples de code ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Obtenir l&amp;#039;API :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import net.luckperms.api.LuckPerms;&lt;br /&gt;
import net.luckperms.api.LuckPermsProvider;&lt;br /&gt;
&lt;br /&gt;
public class MyPlugin extends JavaPlugin {&lt;br /&gt;
    private LuckPerms luckPerms;&lt;br /&gt;
    &lt;br /&gt;
    @Override&lt;br /&gt;
    public void onEnable() {&lt;br /&gt;
        this.luckPerms = LuckPermsProvider.get();&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Vérifier permission :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import net.luckperms.api.model.user.User;&lt;br /&gt;
import net.luckperms.api.query.QueryOptions;&lt;br /&gt;
&lt;br /&gt;
public boolean hasPermission(Player player, String permission) {&lt;br /&gt;
    User user = luckPerms.getUserManager().getUser(player.getUniqueId());&lt;br /&gt;
    if (user == null) return false;&lt;br /&gt;
    &lt;br /&gt;
    QueryOptions queryOptions = luckPerms.getContextManager()&lt;br /&gt;
        .getQueryOptions(player);&lt;br /&gt;
    &lt;br /&gt;
    return user.getCachedData()&lt;br /&gt;
        .getPermissionData(queryOptions)&lt;br /&gt;
        .checkPermission(permission)&lt;br /&gt;
        .asBoolean();&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ajouter permission :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import net.luckperms.api.node.Node;&lt;br /&gt;
&lt;br /&gt;
public void addPermission(UUID uuid, String permission) {&lt;br /&gt;
    User user = luckPerms.getUserManager().getUser(uuid);&lt;br /&gt;
    if (user == null) {&lt;br /&gt;
        // Charger user async si pas en cache&lt;br /&gt;
        luckPerms.getUserManager().loadUser(uuid).thenAccept(loadedUser -&amp;gt; {&lt;br /&gt;
            addPermissionToUser(loadedUser, permission);&lt;br /&gt;
        });&lt;br /&gt;
    } else {&lt;br /&gt;
        addPermissionToUser(user, permission);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
private void addPermissionToUser(User user, String permission) {&lt;br /&gt;
    Node node = Node.builder(permission).build();&lt;br /&gt;
    user.data().add(node);&lt;br /&gt;
    luckPerms.getUserManager().saveUser(user);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ajouter à groupe :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import net.luckperms.api.node.types.InheritanceNode;&lt;br /&gt;
&lt;br /&gt;
public void addToGroup(UUID uuid, String groupName) {&lt;br /&gt;
    User user = luckPerms.getUserManager().getUser(uuid);&lt;br /&gt;
    Group group = luckPerms.getGroupManager().getGroup(groupName);&lt;br /&gt;
    &lt;br /&gt;
    if (user != null &amp;amp;&amp;amp; group != null) {&lt;br /&gt;
        InheritanceNode node = InheritanceNode.builder(group).build();&lt;br /&gt;
        user.data().add(node);&lt;br /&gt;
        luckPerms.getUserManager().saveUser(user);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Permission temporaire :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.time.Duration;&lt;br /&gt;
import java.time.Instant;&lt;br /&gt;
&lt;br /&gt;
public void addTempPermission(UUID uuid, String permission, Duration duration) {&lt;br /&gt;
    User user = luckPerms.getUserManager().getUser(uuid);&lt;br /&gt;
    if (user == null) return;&lt;br /&gt;
    &lt;br /&gt;
    Instant expiry = Instant.now().plus(duration);&lt;br /&gt;
    &lt;br /&gt;
    Node node = Node.builder(permission)&lt;br /&gt;
        .expiry(expiry)&lt;br /&gt;
        .build();&lt;br /&gt;
    &lt;br /&gt;
    user.data().add(node);&lt;br /&gt;
    luckPerms.getUserManager().saveUser(user);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Exemple d&amp;#039;utilisation&lt;br /&gt;
addTempPermission(playerUUID, &amp;quot;essentials.fly&amp;quot;, Duration.ofHours(2));&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Obtenir préfixe/suffixe :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
public String getPrefix(Player player) {&lt;br /&gt;
    User user = luckPerms.getUserManager().getUser(player.getUniqueId());&lt;br /&gt;
    if (user == null) return &amp;quot;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    QueryOptions queryOptions = luckPerms.getContextManager()&lt;br /&gt;
        .getQueryOptions(player);&lt;br /&gt;
    &lt;br /&gt;
    CachedMetaData metaData = user.getCachedData()&lt;br /&gt;
        .getMetaData(queryOptions);&lt;br /&gt;
    &lt;br /&gt;
    String prefix = metaData.getPrefix();&lt;br /&gt;
    return prefix != null ? prefix : &amp;quot;&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
public String getSuffix(Player player) {&lt;br /&gt;
    User user = luckPerms.getUserManager().getUser(player.getUniqueId());&lt;br /&gt;
    if (user == null) return &amp;quot;&amp;quot;;&lt;br /&gt;
    &lt;br /&gt;
    QueryOptions queryOptions = luckPerms.getContextManager()&lt;br /&gt;
        .getQueryOptions(player);&lt;br /&gt;
    &lt;br /&gt;
    CachedMetaData metaData = user.getCachedData()&lt;br /&gt;
        .getMetaData(queryOptions);&lt;br /&gt;
    &lt;br /&gt;
    String suffix = metaData.getSuffix();&lt;br /&gt;
    return suffix != null ? suffix : &amp;quot;&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Contextes custom :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import net.luckperms.api.context.ContextCalculator;&lt;br /&gt;
import net.luckperms.api.context.ContextConsumer;&lt;br /&gt;
import net.luckperms.api.context.ContextSet;&lt;br /&gt;
&lt;br /&gt;
public class RegionContextCalculator implements ContextCalculator&amp;lt;Player&amp;gt; {&lt;br /&gt;
    &lt;br /&gt;
    @Override&lt;br /&gt;
    public void calculate(Player player, ContextConsumer consumer) {&lt;br /&gt;
        String region = getPlayerRegion(player);&lt;br /&gt;
        if (region != null) {&lt;br /&gt;
            consumer.accept(&amp;quot;region&amp;quot;, region);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    private String getPlayerRegion(Player player) {&lt;br /&gt;
        // Votre logique pour obtenir la région&lt;br /&gt;
        return &amp;quot;spawn&amp;quot;; // exemple&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Enregistrer le calculator&lt;br /&gt;
luckPerms.getContextManager().registerCalculator(new RegionContextCalculator());&lt;br /&gt;
&lt;br /&gt;
// Utiliser le contexte&lt;br /&gt;
// /lp user Notch permission set myplugin.special true region=spawn&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Écouter les changements :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import net.luckperms.api.event.EventBus;&lt;br /&gt;
import net.luckperms.api.event.user.UserDataRecalculateEvent;&lt;br /&gt;
&lt;br /&gt;
EventBus eventBus = luckPerms.getEventBus();&lt;br /&gt;
&lt;br /&gt;
eventBus.subscribe(UserDataRecalculateEvent.class, event -&amp;gt; {&lt;br /&gt;
    User user = event.getUser();&lt;br /&gt;
    getLogger().info(&amp;quot;Permissions recalculées pour: &amp;quot; + user.getUsername());&lt;br /&gt;
    &lt;br /&gt;
    // Réagir aux changements&lt;br /&gt;
    // Exemple: mettre à jour un scoreboard, un prefix, etc.&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Intégrations ==&lt;br /&gt;
&lt;br /&gt;
=== Vault ===&lt;br /&gt;
LuckPerms inclut un hook [[Vault]] automatique pour compatibilité legacy.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
# config.yml&lt;br /&gt;
vault-server: true&lt;br /&gt;
vault-include-global: true&lt;br /&gt;
vault-ignore-world: false&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Utilisation via Vault API :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
// Automatiquement supporté par plugins utilisant Vault&lt;br /&gt;
Permission perms = getServer().getServicesManager()&lt;br /&gt;
    .getRegistration(Permission.class).getProvider();&lt;br /&gt;
&lt;br /&gt;
Chat chat = getServer().getServicesManager()&lt;br /&gt;
    .getRegistration(Chat.class).getProvider();&lt;br /&gt;
&lt;br /&gt;
// Via Vault (déconseillé, préférer API native LP)&lt;br /&gt;
perms.playerAdd(world, player.getName(), &amp;quot;permission.node&amp;quot;);&lt;br /&gt;
String prefix = chat.getPlayerPrefix(world, player.getName());&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== PlaceholderAPI ===&lt;br /&gt;
&lt;br /&gt;
LuckPerms fournit des placeholders [[PlaceholderAPI]] :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
# Groupe principal&lt;br /&gt;
%luckperms_prefix%&lt;br /&gt;
%luckperms_suffix%&lt;br /&gt;
%luckperms_primary_group_name%&lt;br /&gt;
&lt;br /&gt;
# Groupes&lt;br /&gt;
%luckperms_groups%&lt;br /&gt;
%luckperms_inherited_groups%&lt;br /&gt;
%luckperms_has_groups_on_track_&amp;lt;track&amp;gt;%&lt;br /&gt;
&lt;br /&gt;
# Meta&lt;br /&gt;
%luckperms_meta_&amp;lt;key&amp;gt;%&lt;br /&gt;
%luckperms_meta_&amp;lt;key&amp;gt;_&amp;lt;default&amp;gt;%&lt;br /&gt;
&lt;br /&gt;
# Permissions&lt;br /&gt;
%luckperms_has_permission_&amp;lt;permission&amp;gt;%&lt;br /&gt;
%luckperms_check_permission_&amp;lt;permission&amp;gt;%&lt;br /&gt;
%luckperms_inherits_permission_&amp;lt;permission&amp;gt;%&lt;br /&gt;
&lt;br /&gt;
# Contextes&lt;br /&gt;
%luckperms_context_&amp;lt;key&amp;gt;%&lt;br /&gt;
&lt;br /&gt;
# Exemples&lt;br /&gt;
%luckperms_prefix% → &amp;amp;c[Admin]&lt;br /&gt;
%luckperms_primary_group_name% → admin&lt;br /&gt;
%luckperms_meta_discord% → Notch#0001&lt;br /&gt;
%luckperms_has_permission_essentials.fly% → true&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Formats de chat ===&lt;br /&gt;
&lt;br /&gt;
Avec [[EssentialsXChat]] :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
# EssentialsXChat config.yml&lt;br /&gt;
format: &amp;#039;{DISPLAYNAME}: {MESSAGE}&amp;#039;&lt;br /&gt;
&lt;br /&gt;
# Avec préfixes LuckPerms&lt;br /&gt;
format: &amp;#039;{PREFIX}{DISPLAYNAME}{SUFFIX}&amp;amp;r: {MESSAGE}&amp;#039;&lt;br /&gt;
&lt;br /&gt;
# Avancé&lt;br /&gt;
format: &amp;#039;&amp;amp;7[{GROUP}] {PREFIX}{DISPLAYNAME}{SUFFIX}&amp;amp;r&amp;amp;7: &amp;amp;f{MESSAGE}&amp;#039;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Avec autres plugins chat, LuckPerms fournit automatiquement préfixes/suffixes via Vault.&lt;br /&gt;
&lt;br /&gt;
== Performance ==&lt;br /&gt;
&lt;br /&gt;
=== Impact système ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;RAM&amp;#039;&amp;#039;&amp;#039; : 15-30 MB (selon taille base de données)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;CPU&amp;#039;&amp;#039;&amp;#039; : &amp;lt;1% en idle, 2-3% lors de changements&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Base de données&amp;#039;&amp;#039;&amp;#039; : Requêtes optimisées et cache agressif&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Réseau&amp;#039;&amp;#039;&amp;#039; : Sync quasi-instantanée avec Redis&lt;br /&gt;
&lt;br /&gt;
=== Optimisations ===&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Cache :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
# config.yml&lt;br /&gt;
# Augmenter cache pour gros serveurs&lt;br /&gt;
meta-cache-max-size: 1000&lt;br /&gt;
context-cache-max-size: 100&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;MySQL optimisé :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
data:&lt;br /&gt;
  pool-settings:&lt;br /&gt;
    maximum-pool-size: 15 # Plus pour gros serveurs&lt;br /&gt;
    minimum-idle: 10&lt;br /&gt;
    maximum-lifetime: 1800000&lt;br /&gt;
    keep-alive-time: 0&lt;br /&gt;
    connection-timeout: 5000&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Redis pour réseau :&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
Redis est &amp;#039;&amp;#039;&amp;#039;beaucoup plus rapide&amp;#039;&amp;#039;&amp;#039; que SQL pour sync entre serveurs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;yaml&amp;quot;&amp;gt;&lt;br /&gt;
messaging-service: redis&lt;br /&gt;
redis:&lt;br /&gt;
  address: localhost:6379&lt;br /&gt;
  password: &amp;#039;&amp;#039;&lt;br /&gt;
  pool-size: 8&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
&lt;br /&gt;
* [[Vault]]&lt;br /&gt;
* [[PlaceholderAPI]]&lt;br /&gt;
* [[EssentialsX]]&lt;br /&gt;
* [[TAB]]&lt;br /&gt;
&lt;br /&gt;
== Liens externes ==&lt;br /&gt;
&lt;br /&gt;
* [https://luckperms.net/ Site officiel]&lt;br /&gt;
* [https://luckperms.net/wiki/ Wiki officiel]&lt;br /&gt;
* [https://github.com/LuckPerms/LuckPerms GitHub]&lt;br /&gt;
* [https://editor.luckperms.net/ Web Editor]&lt;br /&gt;
* [https://modrinth.com/plugin/luckperms Page Modrinth]&lt;br /&gt;
* [https://www.spigotmc.org/resources/28140/ Page SpigotMC]&lt;br /&gt;
* [https://discord.gg/luckperms Discord officiel]&lt;br /&gt;
* [https://luckperms.net/download Téléchargements]&lt;br /&gt;
&lt;br /&gt;
== Références ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Hiob</name></author>
	</entry>
</feed>