Väčšina pluginov nič neurobí, kým hráčovi alebo skupine nepridelíte oprávnenie. Vysvetlíme, ako systém oprávnení v Oxide a Carbone funguje, ako prideliť práva jednému hráčovi aj celej skupine, ako postaviť skupiny VIP a moderátorov a ako vyriešiť najčastejšie chyby.
Čo budete potrebovať
- Rust server s Oxide alebo Carbonom a aspoň jedným pluginom (inštalácia pluginov)
- Prístup ku konzole servera alebo RCON (návod)
- Steam ID64 hráčov, ktorým chcete práva prideliť
- Asi 20 minút
Rust u StormHostu
Rust servery u nás pripravujeme. Návod platí aj pre Rust server na vlastnej VPS (postup inštalácie).
Ako oprávnenia fungujú#
- Oprávnenie je text v tvare
plugin.akcia, napríkladkits.adminalebonteleportation.home. Zaregistruje ho plugin, keď sa načíta. Zoznam oprávnení býva na stránke pluginu. - Oprávnenia prideľujete používateľovi (konkrétnemu hráčovi) alebo skupine. Hráč má súčet svojich oprávnení a oprávnení všetkých svojich skupín.
- Skupina môže mať rodiča (parent). Potom zdedí všetky oprávnenia rodičovskej skupiny. Vďaka tomu nemusíte rovnaké práva prideľovať niekoľkokrát.
- Predvolené skupiny:
default– do nej framework automaticky zaradí každého hráča, ktorý sa pripojí.admin– do nej framework automaticky zaradí hráčov s úrovňou vlastníka (ownerid).moderator– iba v Carbone, automaticky pre hráčov s úrovňou moderátora (moderatorid).
- Oprávnenia sa iba sčítavajú. Neexistuje „zákaz“: keď má oprávnenie skupina, má ho každý jej člen, aj keby ste ho odobrali priamo jemu.
- Názvy oprávnení a skupín nerozlišujú veľké a malé písmená.
Oprávnenia pluginov sú niečo iné než admin práva hry. Úroveň vlastníka alebo moderátora (ownerid, moderatorid) dáva prístup k príkazom Rustu (teleport, noclip, ban…). Oprávnenia pluginov riadia iba funkcie pluginov. Moderátorovi tak môžete dať napríklad neviditeľnosť z pluginu Vanish bez toho, aby dostal všetky admin príkazy hry.
Oxide ukladá používateľov a skupiny do súborov oxide/ a oxide/. Zálohujte ich, nikdy ich nemažte (prišli by ste o všetky pridelené práva).
Kde príkazy zadávať#
- Konzola servera (na hernom hostingu záložka Konzola) – odporúčané miesto, príkazy tu fungujú vždy.
- RCON (RustAdmin, webová konzola) – to isté čo konzola servera, iba na diaľku.
- Konzola F1 v hre – ak ste na serveri vlastník (
ownerid).
Príkazy píšte bez lomky. Názvy s medzerami dajte do úvodzoviek: "Jan Novák".
Steam ID namiesto mena#
Hráča určujte jeho Steam ID64 (17-miestne číslo začínajúce 7656119). Meno sa dá zmeniť a dvaja hráči môžu mať podobné meno; ID je jedinečné a nemenné. Oxide aj Carbon navyše prijmú ID aj pri hráčovi, ktorý sa na server ešte nepripojil. Ako ID zistiť, popisuje Admin a RCON.
V príkladoch používame 76561198000000000 – dosaďte skutočné ID hráča.
Oprávnenie pre jedného hráča#
Oxide
Pridelenie:
oxide.grant user 76561198000000000 kits.adminoxide.grant– prideliť oprávnenie (skráteneo.grant).user– príjemca je hráč (pre skupinugroup). Píšte malými písmenami.76561198000000000– Steam ID64 hráča (alebo jeho meno, ak je jedinečné).kits.admin– názov oprávnenia.
Player 'Jan (76561198000000000)' granted permission 'kits.admin'Odobratie:
oxide.revoke user 76561198000000000 kits.adminCarbon
Pridelenie:
c.grant user 76561198000000000 kits.adminc.grant– prideliť oprávnenie.user– príjemca je hráč (pre skupinugroup).76561198000000000– Steam ID64 hráča.kits.admin– názov oprávnenia.
Granted user 'Jan' permission 'kits.admin'Odobratie:
c.revoke user 76561198000000000 kits.adminCarbon pri mene hľadá aj čiastočnú zhodu a pri viacerých výsledkoch použije prvý nájdený. Aj preto používajte Steam ID.
Prideľovanie po jednotlivých hráčoch je vhodné pre výnimky. Pre viac ľudí s rovnakými právami použite skupiny.
Skupiny#
Ukážka: skupina vip, ktorá dedí všetko od default a navyše smie používať VIP kit.
Oxide
Vytvorte skupinu s titulkom a poradím:
text oxide.group add vip "VIP" 1add vip– vytvorí skupinu s interným názvomvip(používate ho v ďalších príkazoch)."VIP"– titulok skupiny na zobrazenie (využívajú ho niektoré pluginy, napríklad chatové).1– poradie (rank) skupiny. Niektoré pluginy podľa neho určujú, ktorá skupina je „vyššia“.
Nastavte rodičovskú skupinu:
text oxide.group parent vip defaultSkupina
vipteraz zdedí všetky oprávnenia skupinydefault.Prideľte skupine oprávnenie:
text oxide.grant group vip kits.vipPridajte hráča do skupiny:
text oxide.usergroup add 76561198000000000 vipVýstuptext Player '76561198000000000' added to group: vip
Ďalšie príkazy:
| Príkaz | Čo robí |
|---|---|
oxide.usergroup remove 76561198000000000 vip | Odoberie hráča zo skupiny. |
oxide.revoke group vip kits.vip | Odoberie oprávnenie skupine. |
oxide.group set vip "[VIP]" 1 | Zmení titulok a poradie skupiny. |
oxide.group remove vip | Zmaže skupinu (hráči v nej prídu o jej práva). |
Carbon
Vytvorte skupinu s titulkom a poradím:
text c.group add vip "VIP" 1Nastavte rodičovskú skupinu:
text c.group parent vip defaultPrideľte skupine oprávnenie:
text c.grant group vip kits.vipPridajte hráča do skupiny:
text c.usergroup add 76561198000000000 vip
Ďalšie príkazy:
| Príkaz | Čo robí |
|---|---|
c.usergroup remove 76561198000000000 vip | Odoberie hráča zo skupiny. |
c.revoke group vip kits.vip | Odoberie oprávnenie skupine. |
c.group set vip title "[VIP]" | Zmení titulok skupiny (poradie: c.group set vip rank 1). |
c.group remove vip | Zmaže skupinu. |
Oprávnenia kitov si pomenúvate sami
Pri plugine Kits zadávate oprávnenie kitu v jeho editore. Voľte názov začínajúci kits. (napríklad kits.vip). Framework inak upozorní, že oprávnenie nemá predponu pluginu. Oprávnenie existuje, až keď kit uložíte.
Výpis a kontrola#
Oxide
| Príkaz | Čo vypíše |
|---|---|
oxide.show groups | Zoznam všetkých skupín. |
oxide.show group vip | Členov skupiny a jej oprávnenia (vrátane rodičovskej skupiny). |
oxide.show user 76561198000000000 | Skupiny a oprávnenia hráča. |
oxide.show perm kits.vip | Ktorí hráči a skupiny oprávnenie majú. |
oxide.show perms | Všetky oprávnenia, ktoré načítané pluginy zaregistrovali. |
Carbon
| Príkaz | Čo vypíše |
|---|---|
c.show groups | Zoznam všetkých skupín. |
c.show group vip | Členov skupiny a jej oprávnenia. |
c.show user 76561198000000000 | Skupiny a oprávnenia hráča. |
c.show perm kits.vip | Ktorí hráči a skupiny oprávnenie majú. |
c.show perms | Všetky zaregistrované oprávnenia. |
oxide.show perms (c.show perms) je najrýchlejší spôsob, ako zistiť presný názov oprávnenia, keď ho nepoznáte z dokumentácie pluginu.
Zástupné znaky#
Hviezdička * pridelí viac oprávnení naraz:
oxide.grant group admin nteleportation.*nteleportation.*– všetky oprávnenia, ktoré začínajúnteleportation..- Samotná
*– úplne všetky oprávnenia všetkých pluginov.
V Carbone rovnako: c.grant group admin nteleportation.*.
Hviezdička platí iba pre to, čo existuje teraz
Zástupný znak pridelí oprávnenia, ktoré sú v tej chvíli zaregistrované. Pluginy nainštalované neskôr do skupiny automaticky nepribudnú, musíte príkaz zopakovať. A naopak: * pridelí aj oprávnenia, ktoré obchádzajú obmedzenia (bez cooldownov, bez poplatkov). Používajte ju iba pre skupinu admin.
Odporúčaná štruktúra skupín#
| Skupina | Pre koho | Rodič | Príklady oprávnení |
|---|---|---|---|
default | Všetci hráči (automaticky) | – | nteleportation.home, nteleportation.tpr, backpacks.use, oprávnenie štartovacieho kitu |
vip | Podporovatelia servera | default | kits.vip, nteleportation.vip, väčší batoh (backpacks.size.24) |
moderator | Moderátori | vip | vanish.allow, adminradar.allowed |
admin | Majiteľ a hlavní admini | moderator | kits.admin, betterchat.admin, removertool.admin, backpacks.admin |
Názvy oprávnení v tabuľke zodpovedajú pluginom z článku Odporúčané pluginy. V Oxide skupinu moderator vytvoríte sami (oxide.group add moderator "Moderátor" 2), v Carbone už existuje.
Postup pre reťaz rodičov v Oxide:
oxide.group parent vip default
oxide.group parent moderator vip
oxide.group parent admin moderatorModerátor tak má práva hráča aj VIP, admin má práva všetkých.
Ukážka: kompletné nastavenie nového servera#
Sada príkazov pre Oxide, ktorá vytvorí štruktúru z tabuľky vyššie pre pluginy NTeleportation, Backpacks, Kits, Vanish, Admin Radar, BetterChat a Remover Tool. Zadávajte ich do konzoly servera postupne, až keď budú všetky pluginy načítané (inak oprávnenia neexistujú). V Carbone nahraďte oxide. za c. a namiesto vytvorenia skupiny moderator iba nastavte jej rodiča.
oxide.grant group default nteleportation.home
oxide.grant group default nteleportation.tpr
oxide.grant group default backpacks.use
oxide.grant group default backpacks.gui
oxide.grant group default removertool.normal
oxide.group add vip "VIP" 1
oxide.group parent vip default
oxide.grant group vip kits.vip
oxide.grant group vip nteleportation.vip
oxide.grant group vip backpacks.size.24
oxide.group add moderator "Moderátor" 2
oxide.group parent moderator vip
oxide.grant group moderator vanish.allow
oxide.grant group moderator adminradar.allowed
oxide.group parent admin moderator
oxide.group set admin "Admin" 3
oxide.grant group admin kits.admin
oxide.grant group admin betterchat.admin
oxide.grant group admin removertool.admin
oxide.grant group admin backpacks.admin- Prvý blok dáva základné funkcie všetkým hráčom (domovy, teleport na žiadosť, batoh, odstraňovanie vlastných stavieb).
- Blok
vipvytvorí skupinu, napojí ju nadefaulta pridá VIP kit (kit s oprávnenímkits.vipmusíte najprv vytvoriť), VIP limity teleportov a batoh s 24 políčkami. - Blok
moderatorpridá neviditeľnosť a radar. - Blok
adminnapojí existujúcu skupinuadminna moderátorov, dá jej najvyššie poradie (3, Oxide ju vytvoril s poradím1) a pridá správu kitov, chatu, odstraňovania a batohov. V Carbone sa poradie nastaví príkazomc.group set admin rank 3.
Potom zaraďujte ľudí: oxide.usergroup add <ID> vip alebo oxide.usergroup add <ID> moderator. Admini (vlastníci) sa do skupiny admin dostanú sami.
Skupina admin a ownerid#
ownerid(úroveň 2) sú admin práva hry. Nastavuje sa v Ruste, pozrite Admin a RCON.Skupina
adminje skupina oprávnení frameworku. Hráčov s úrovňou 2 do nej framework zaradí automaticky pri pripojení.Oxide hráča zo skupiny
adminsám neodoberie. Keď niekomu odoberieteownerid(removeowner), zostane v skupineadmina ďalej má práva pluginov. Odoberte ho ručne:text oxide.usergroup remove 76561198000000000 adminCarbon skupiny
adminamoderatorpri ďalšom pripojení hráča zosúladí s jeho skutočnou úrovňou.
Skupina admin nedostane automaticky všetky oprávnenia pluginov. Čo v nej má byť, prideľte sami.
Ekvivalenty príkazov v Carbone#
| Oxide | Carbon | Čo robí |
|---|---|---|
oxide.grant user <ID> <PERM> | c.grant user <ID> <PERM> | Pridelí oprávnenie hráčovi. |
oxide.grant group <SKUPINA> <PERM> | c.grant group <SKUPINA> <PERM> | Pridelí oprávnenie skupine. |
oxide.revoke … | c.revoke … | Odoberie oprávnenie. |
oxide.group add <SKUPINA> ["Titulek"] [poradie] | c.group add <SKUPINA> ["Titulek"] [poradie] | Vytvorí skupinu. |
oxide.group parent <SKUPINA> <RODIC> | c.group parent <SKUPINA> <RODIC> | Nastaví rodiča. |
oxide.group set <SKUPINA> "Titulek" poradie | c.group set <SKUPINA> title "Titulek" | Zmení titulok (Carbon poradie: rank). |
oxide.usergroup add <ID> <SKUPINA> | c.usergroup add <ID> <SKUPINA> | Pridá hráča do skupiny. |
oxide.show … | c.show … | Výpisy skupín, hráčov a oprávnení. |
Za <ID> dosaďte Steam ID64, za <PERM> názov oprávnenia a za <SKUPINA> názov skupiny, všetko bez špicatých zátvoriek.
Overenie#
- Zadajte
oxide.show user 76561198000000000(Carbonc.show user …) a skontrolujte, že hráč je v očakávaných skupinách a má očakávané oprávnenia. - Požiadajte hráča, nech príkaz pluginu vyskúša (napríklad
/kit). Niektoré pluginy načítavajú oprávnenia pri pripojení – ak funkcia nefunguje hneď, nech sa hráč znova pripojí.
Keď niečo nefunguje#
Permission 'kits.vip' doesn't exist#
V Carbone: Couldn't grant permission - permission does not exist. Oprávnenie v tej chvíli nikto nezaregistroval. Príčiny:
- Plugin sa nenačítal. Overte
oxide.plugins(c.plugins). - Preklep v názve. Presný názov nájdete výpisom
oxide.show perms(c.show perms). - Pri kitoch: kit s týmto oprávnením ešte nie je uložený.
Player 'Jan' not found#
V Carbone: Couldn't grant user permission - user not found, use full name or steam ID. Hráča s menom nemožno nájsť, pretože sa ešte nepripojil alebo má iné meno. Použite Steam ID64 (17 číslic).
Multiple players were found, please specify: …#
Zadanému menu zodpovedá viac hráčov. Použite Steam ID64.
Group 'vip' doesn't exist#
Skupinu najprv vytvorte: oxide.group add vip. Pri parent musia existovať obe skupiny.
You do not have permission to use the command 'oxide.grant'!#
Príkaz ste zadali v hre a nie ste na serveri vlastník (ownerid). Moderátor (moderatorid) príkazy oprávnení v hre používať nemôže (ak nemá rovnomenné oprávnenie, napríklad oxide.grant, ktoré ale moderátorom neodporúčame dávať). Zadajte príkaz do konzoly servera alebo cez RCON. V Carbone vyžadujú príkazy c.grant, c.group a ďalšie úroveň vlastníka.
Hráč má oprávnenie, ale funkcia nefunguje#
- Plugin môže oprávnenie kontrolovať iba pri pripojení – nech sa hráč odpojí a pripojí.
- Plugin má pre každú funkciu zvláštne oprávnenie. Napríklad v NTeleportation dáva
nteleportation.homeiba domovy, návrat na predchádzajúce miesto (/tpb) potrebuje navyšenteleportation.tpb. Skontrolujte dokumentáciu pluginu. - Niektoré pluginy namiesto oprávnení kontrolujú admin úroveň hry. Potom oprávnenie nestačí a hráč musí mať
owneridalebomoderatorid.
Odobral som oprávnenie, ale hráč ho má ďalej#
Má ho cez skupinu. Zadajte oxide.show user <ID> a pozrite sa, v ktorých skupinách je. Oprávnenie odoberte skupine, alebo hráča zo skupiny vyraďte.
Bývalý admin má stále práva pluginov#
Po removeowner zostal v Oxide v skupine admin. Vyraďte ho: oxide.usergroup remove <ID> admin.
Zhrnutie
- Oprávnenia
plugin.akciaprideľujete hráčovi (user) alebo skupine (group); práva sa sčítavajú. - Hráčov určujte Steam ID64, nie menom.
- Skupiny s rodičmi (
vipdedí oddefault,moderatorodvip,adminodmoderator) ušetria opakovanie. - Presné názvy oprávnení vypíše
oxide.show perms(c.show perms). ownerid(práva hry) a skupinaadmin(práva pluginov) sú dve rôzne veci; Oxide zo skupiny admin nikoho sám neodoberie.