Synchronizace s Discordem

Synchronizování ranků, uživatelských jmen nebo celého herního chatu - to vše dokáže plugin DiscordSRV.

Instalace a základní nastavení

Instalace pluginu

Začneme stažením nejnovější verze pluginu DiscordSRV z oficiálního GitHubu tvůrců pluginu a jeho nahrátím na server. Po následném restartování serveru zkontroluje, zda-li se na serveru vytvořila složka DiscordSRV.

Konfugurace Discordu

  1. Přejdeme na stránku discord.com/developers/applications
  2. Klikneme na tlačítko New Application v pravém horním rohu
Tvorba nové aplikace

3. Vyplníme název aplikace (doporučuji použít název Vašeho serveru), zaškrtneme souhlas s podmínkami platformy Discord a vytvoříme aplikaci.

Tvorba nové aplikace

4. Na postranním panelu na levé straně vybereme možnost Bot a na zobrazené stránce lze nastavit ikonu aplikace (opět doporučuji použít logo serveru)

Změna ikony bota (volitelné)

5. Následně je nutné vypnout přepínač Public Bot a naopak zapnout přepínače Presence Intent, Server Members Intent a Message Content Intent.

Povolení přístupu k určitým funkcím

6. Opět na vrchu stránky vybereme možnost Reset Token a pokud máme na Discordu aktivní 2FA, zadáme kód pro ověření totožnosti. Kód, který se zobrazí si zkopírujeme a otevřeme na serveru soubor config.yml ve složce DiscordSRV. Najdeme si řádek BotToken a jako jeho hodnotu vložíme zkopírovaný kód. Následně soubor uložíme a restartujeme server.

Vložení tokenu do konfigurace DiscordSRV

7. Na stránce s nastavením naší aplikace se přesuneme do sekce OAuth2 a vybereme možnost URL Generator.

8.  V tabulce níže zaškrtneme oprávnění, která cheme na serveru botovi udělit a pomocí modrého tlačítka si zkopírujeme odkaz, který si následně otevřeme, v menu vybereme náš Discord server a klikneme na Autorizovat.

9. Pokud se na Discord serveru zobrazuje bot jako online, vše funguje správně.

Další nastavení

Synchronizace chatu a konzole

1. V nastavení aplikace Discordu najdeme možnost Pokročilé (Advanced) a zapneme Vývojářský režim.

Povolení vývojářského režimu

2. Na našem Discord serveru klikneme pravým tlačítkem myši na kanál, který chceme použít jako chat propojený s Minecraft serverem a vybereme poslední možnost (Kopírovat ID kanálu).

Zjištění ID kanálu

3. V konfiguraci pluginu DiscordSRV najdeme řádek Channels a hodnotu global. Jako hodnotu vložíme ID našeho Discord kanálu. Po restartování serveru nebo příkazu /discord reload se chat z Minecraft serveru začne přenášet na Discord server a naopak.

4. Pro nastavení konzole je postup stejný, jen je potřebné změnit hodnotu na řádku DiscordConsoleChannelId.

⚠️
Před propojením konzole se ujistěte, že do kanálu pro konzoli na Discordu nemá přístup nikdo nepovolaný!

Nastavení pozvánky serveru

Pro nastavení pozvánky, která se na serveru zobrazuje příkazem /discord stačí vygenerovat na Discordu pozvánku s neomezenou platností a vložit ji do konfigurace pluginu DiscordSRV na řádek DiscordInviteLink. Změny se projeví po zadání příkazu /discord reload.

Povolení synchronizace jmen

Pro synchronizaci jmen na serveru nejprve přejdeme do nastavení rolí na našem Discord serveru a roli, která se jmenuje stejně jako náš bot přesuneme nahoru. Poté otevřeme soubor Synchronization.yml v nastavení pluginu a hodnotu na řádku NicknameSynchronizationEnabled změníme z false na true. Změny se projeví po zadání příkazu /discord reload.

Pro okamžitou synchronizaci zadáme příkaz /discord resync.

Synchronizace ranků

💡
Pro synchronizování ranků je potřebné mít povolený vývojářský režim - více informací v kapitole o synchronizaci chatu.
  1. Otevřeme nastavení rolí na našem Discord serveru a na vybranou roli klikneme pravým tlačítkem myši.
  2. Klikneme na Kopírovat ID role a otevřeme soubor synchronization.yml v nastavení pluginu.
  3. Najdeme si řádek GroupRoleSynchronizationGroupsAndRolesToSync - tento řádek je JSON seznamem, který obsahuje ID role na Discordu a jméno skupiny permisí ve formátu "jméno_skupiny":"ID_role".
  4. Na řádku GroupRoleSynchronizationOnLink změníme hodnotu na true, soubor uložíme a restartujeme server nebo zadáme příkaz /discord reload.
  5. Pro okamžitou synchronizaci zadáme příkaz /discord resync.

Propojení herního účtu

Pro synchronizování rolí si hráč musí propojit svůj Minecraft a Discord účet. Lze tak užinit zadáním příkazu /discord link na serveru a odesláním zobrazeného kódu botovi do přímé zprávy na Discordu.