Permissões

From DragonMineZ Wiki
This page is a translated version of the page Permissions and the translation is 100% complete.

Cada nó de comando do DragonMineZ é registrado pela PermissionAPI do Forge, então donos de servidores que usam um mod de permissões (LuckPerms, PermissionsEx e similares) podem conceder acesso detalhado em vez de depender do status geral de operador. Sem um mod de permissões, o DMZ recorre aos níveis de operador vanilla.

Os nós são definidos em DMZPermissions.java. Cada um é registrado no namespace dragonminez, então o nome completo é dragonminez.<node>, por exemplo dragonminez.admin ou dragonminez.dmzstats.set.self. Para saber o que cada comando faz, veja Comandos.

Como uma verificação de permissão é resolvida

Em cada comando protegido por uma permissão do DMZ, a verificação passa se qualquer uma destas condições for verdadeira:

  1. O jogador tem o nó específico daquela ação.
  2. O jogador tem dragonminez.admin, que concede todas as permissões do DMZ de uma vez.
  3. O jogador é operador vanilla de nível 2 ou superior (player.hasPermissions(2)).

Comandos executados pelo console do servidor ou por blocos de comando (qualquer coisa que não seja um jogador) sempre passam nas verificações de permissão do DMZ.

return PermissionAPI.getPermission(player, node) || PermissionAPI.getPermission(player, ADMIN) || player.hasPermissions(2);

Comandos protegidos pelo nível de operador vanilla

Alguns comandos não usam nós do DMZ: eles simplesmente exigem operador de nível 2 e não são afetados por dragonminez.admin.

Comando Observação
/dmzraid Todos os subcomandos (veja Incursões).
/dmzworldboss Todos os subcomandos exceto results, que qualquer um pode usar (veja Chefes de mundo).
/dmztournament Todos os subcomandos (veja Torneios).
/dmzquest questnpc Os subcomandos que geram NPCs de missões (o resto do /dmzquest usa nós).

/dmzracial reply accept|reject (responder a um pedido de assimilação namekuseijin) não precisa de nenhuma permissão.

Sem um mod de permissões

Sem LuckPerms, PermissionsEx ou um mod parecido cuidando desses nós, cada nó usa seu valor padrão. Na prática, só operadores de nível 2 ou superior podem usar o que for protegido por um nó cujo padrão é false. Todos os outros recebem apenas o punhado de nós cujo padrão é true (veja as tabelas abaixo), que na maioria são "ver ou listar suas próprias coisas".

Conceder nós com um mod de permissões

Exemplo com a sintaxe do LuckPerms (adapte ao mod que você usa):

/lp user <player> permission set dragonminez.dmzstats.set.self true
/lp group <group> permission set dragonminez.dmzquest.list.others true
/lp user <player> permission set dragonminez.admin true

O DMZ não traz um comando próprio para conceder ou revogar: o gerenciamento de nós fica inteiramente a cargo do seu mod de permissões.

Referência de nós

Os nós têm false como padrão (só operadores e administradores), a menos que a tabela diga true. As linhas escritas como ….self / .others são dois nós: um para usar o comando em você mesmo e outro para usá-lo em outros jogadores.

Administrador

Nó Padrão Concede
dragonminez.admin false Todas as permissões do DMZ de uma vez. Também é necessário (ou o nível de operador 2) para /dmzconfig, /dmzrestoreupdate e para usar /dmzdebug em outro jogador.

Estatísticas

Nós de StatsCommand (/dmzstats).

Nó Padrão Concede
dragonminez.dmzstats.set.self false Definir suas próprias estatísticas.
dragonminez.dmzstats.set.others false Definir as estatísticas de outro jogador.
dragonminez.dmzstats.add.self false Somar ou subtrair das suas próprias estatísticas (add e remove).
dragonminez.dmzstats.add.others false Somar ou subtrair das estatísticas de outro jogador.
dragonminez.dmzstats.info.self true Ver suas próprias estatísticas.
dragonminez.dmzstats.info.others false Ver as estatísticas de outro jogador.
dragonminez.dmzstats.reset.self false Resetar ou redistribuir suas próprias estatísticas.
dragonminez.dmzstats.reset.others false Resetar ou redistribuir as estatísticas de outro jogador.

Habilidades

Nós de SkillsCommand (/dmzskill).

Nó Padrão Concede
dragonminez.dmzskill.set.self / .others false Definir níveis de habilidades.
dragonminez.dmzskill.add.self / .others false Adicionar uma habilidade.
dragonminez.dmzskill.remove.self / .others false Remover uma habilidade.
dragonminez.dmzskill.list.self true Listar suas próprias habilidades.
dragonminez.dmzskill.list.others false Listar as habilidades de outro jogador.

Técnicas

Nós de TechCommand (/dmztech).

Nó Padrão Concede
dragonminez.dmztech.add.self / .others false Conceder uma técnica de ki.
dragonminez.dmztech.remove.self / .others false Remover uma técnica de ki.
dragonminez.dmztech.list.self true Listar suas próprias técnicas.
dragonminez.dmztech.list.others false Listar as técnicas de outro jogador.
dragonminez.dmztech.experience.self / .others false Alterar a experiência das técnicas.

Recargas de técnicas

Nós de CooldownsCommand (/dmzcooldowns).

Nó Padrão Concede
dragonminez.dmzcooldowns.self false Alterar as recargas das suas próprias técnicas de ki e de golpe.
dragonminez.dmzcooldowns.others false Alterar as recargas das técnicas de ki e de golpe de outro jogador.

Estatísticas bônus

Nós de BonusCommand (/dmzbonus).

Nó Padrão Concede
dragonminez.dmzbonus.add.self / .others false Adicionar estatísticas bônus.
dragonminez.dmzbonus.clear.self / .others false Remover ou limpar estatísticas bônus (remove e clear).

Efeitos

Nós de EffectsCommand (/dmzeffect).

Nó Padrão Concede
dragonminez.dmzeffect.give.self / .others false Dar um efeito de status.
dragonminez.dmzeffect.remove.self / .others false Remover um efeito de status.
dragonminez.dmzeffect.clear.self / .others false Limpar todos os efeitos.
dragonminez.dmzeffect.list.self true Listar seus próprios efeitos.
dragonminez.dmzeffect.list.others false Listar os efeitos de outro jogador.

Pontos

Nós de PointsCommand (/dmzpoints).

Nó Padrão Concede
dragonminez.dmzpoints.set.self / .others false Definir pontos.
dragonminez.dmzpoints.add.self / .others false Adicionar pontos.
dragonminez.dmzpoints.remove.self / .others false Remover pontos.
dragonminez.dmzpoints.info.self true Ver seus próprios pontos.
dragonminez.dmzpoints.info.others false Ver os pontos de outro jogador.

Missões e sagas

Nós de StoryCommand (/dmzquest).

Nó Padrão Concede
dragonminez.dmzquest.list.self true Listar seu próprio progresso de missões.
dragonminez.dmzquest.list.others false Listar o progresso de missões de outro jogador.
dragonminez.dmzquest.info true Ver os metadados de uma missão.
dragonminez.dmzquest.start.self / .others false Forçar o início de uma missão.
dragonminez.dmzquest.finish.self / .others false Forçar a conclusão de uma missão.
dragonminez.dmzquest.fail.self / .others false Forçar a falha de uma missão.
dragonminez.dmzquest.reset.self / .others false Resetar uma missão.
dragonminez.dmzquest.track.self true Definir sua própria missão rastreada.
dragonminez.dmzquest.track.others false Definir a missão rastreada de outro jogador.
dragonminez.dmzquest.startsaga.self / .others false Forçar o início de todas as missões de uma saga.
dragonminez.dmzquest.finishsaga.self / .others false Forçar a conclusão de todas as missões de uma saga.
dragonminez.dmzquest.resetsaga.self / .others false Resetar uma saga inteira.
dragonminez.dmzquest.difficulty.self false Ver ou alterar sua própria dificuldade da história (/dmzquest difficulty).
dragonminez.dmzquest.difficulty.others false Alterar a dificuldade da história de outros jogadores.

Outros comandos

Nó Padrão Concede Classe do comando
dragonminez.dmzlocate false Localizar estruturas especiais. LocateCommand
dragonminez.dmzstructure false Ler coordenadas locais de estruturas e os NPCs das estruturas (/dmzstructure). StructureCommand
dragonminez.dmzdragonballs.status false Ver onde cada conjunto de Esferas do Dragão está sendo rastreado (/dmzdragonballs status). DragonBallsCommand
dragonminez.dmzdragonballs.regenerate false Completar um conjunto de Esferas do Dragão até as cópias configuradas (/dmzdragonballs regenerate). DragonBallsCommand
dragonminez.dmzrevive.self / .others false Reviver um jogador. ReviveCommand
dragonminez.dmzparty.use true Convidar, aceitar e recusar convites, expulsar, desfazer e ligar ou desligar o PvP de grupo, com /dmzparty ou a aba Grupo. Listar seu grupo (/dmzparty, /dmzparty list) e sair dele não precisam disso. PartyCommand
dragonminez.dmzmastery.set / .add false Definir ou adicionar domínio de transformação. MasteryCommand
dragonminez.dmz.reload false Executar /dmzreload (veja Recarregar e atualizar mudanças). ReloadCommand
dragonminez.dmzform.set.self / .others false Definir uma forma. FormsCommand
dragonminez.dmzform.add.self / .others false Conceder uma forma. FormsCommand
dragonminez.dmzform.remove.self / .others false Remover uma forma. FormsCommand
dragonminez.dmzform.list.self true Listar suas próprias formas. FormsCommand
dragonminez.dmzform.list.others false Listar as formas de outro jogador. FormsCommand
dragonminez.dmzracial.reset.self / .others false Resetar as habilidades raciais. RacialSkillCommand
dragonminez.dmzweight.give false Dar itens de treino com peso. WeightCommand
dragonminez.dmzalignment.set.self / .others false Definir a índole. AlignmentCommand
dragonminez.dmzalignment.add.self / .others false Adicionar índole. AlignmentCommand
dragonminez.dmzalignment.remove.self / .others false Remover índole. AlignmentCommand
dragonminez.dmzalignment.info.self true Ver sua própria índole. AlignmentCommand
dragonminez.dmzalignment.info.others false Ver a índole de outro jogador. AlignmentCommand
dragonminez.dmztail.self true Fazer crescer ou cortar sua própria cauda. TailCommand
dragonminez.dmztail.others false Fazer crescer ou cortar a cauda de outro jogador. TailCommand
dragonminez.dmzminigame.self false Abrir ou aprender minijogos de treinamento para você com /dmzminigame. MinigameCommand
dragonminez.dmzminigame.others false Abrir ou ensinar minijogos de treinamento para outros jogadores. MinigameCommand
dragonminez.dmzhalo.self / .others false Ligar ou desligar uma auréola. HaloCommand
dragonminez.dmzhair.self true Ressincronizar ou resetar seu próprio cabelo. HairCommand
dragonminez.dmzhair.others false Ressincronizar ou resetar o cabelo de outro jogador. HairCommand
dragonminez.dmzclass.set.self false Alterar sua própria classe. ClassCommand
dragonminez.dmzclass.set.others false Alterar a classe de outro jogador. ClassCommand
dragonminez.dmztrigger.self false Ativar formas, habilidades raciais e estados de teste em você mesmo com /dmztrigger. TriggerCommand
dragonminez.dmztrigger.others false O mesmo, em outro jogador. TriggerCommand
dragonminez.admin false Também é necessário (ou o nível de operador 2) para /dmzconfig, /dmzrestoreupdate e para usar /dmzdebug em outro jogador. ConfigCommand, RestoreCommand, DebugCommand

Aplicar mudanças

Os nós são registrados quando o mod inicia e não precisam de um recarregamento como o da configuração: as mudanças de concessão e revogação valem assim que seu mod de permissões as aplica (o LuckPerms, por exemplo, aplica a maioria das mudanças na hora).