Permisos
Cada nodo de comando de DragonMineZ se registra a través de la PermissionAPI de Forge, así que los dueños de servidores que usan un mod de permisos (LuckPerms, PermissionsEx y similares) pueden dar acceso detallado en lugar de depender del estado de operador general. Sin un mod de permisos, DMZ recurre a los niveles de operador vanilla.
Los nodos se definen en DMZPermissions.java. Cada uno se registra en el namespace dragonminez, así que su nombre completo es dragonminez.<node>, por ejemplo dragonminez.admin o dragonminez.dmzstats.set.self. Para saber qué hace cada comando, consulta Comandos.
Cómo se resuelve una comprobación de permisos
En cada comando protegido por un permiso de DMZ, la comprobación se supera si se cumple cualquiera de estas condiciones:
- El jugador tiene el nodo específico de esa acción.
- El jugador tiene
dragonminez.admin, que otorga todos los permisos de DMZ a la vez. - El jugador es operador vanilla de nivel 2 o superior (
player.hasPermissions(2)).
Los comandos ejecutados desde la consola del servidor o bloques de comandos (cualquier cosa que no sea un jugador) siempre superan las comprobaciones de permisos de DMZ.
return PermissionAPI.getPermission(player, node) || PermissionAPI.getPermission(player, ADMIN) || player.hasPermissions(2);
Comandos protegidos por el nivel de operador vanilla
Algunos comandos no usan nodos de DMZ: simplemente requieren operador de nivel 2 y no les afecta dragonminez.admin.
| Comando | Nota |
|---|---|
/dmzraid |
Todos los subcomandos (consulta Incursiones). |
/dmzworldboss |
Todos los subcomandos excepto results, que puede usar cualquiera (consulta Jefes de mundo).
|
/dmztournament |
Todos los subcomandos (consulta Torneos). |
/dmzquest questnpc |
Los subcomandos que hacen aparecer NPCs de misiones (el resto de /dmzquest usa nodos).
|
/dmzracial reply accept|reject (responder a una solicitud de asimilación namekiana) no necesita ningún permiso.
Sin un mod de permisos
Sin LuckPerms, PermissionsEx o un mod similar que gestione estos nodos, cada nodo usa su valor predeterminado. En la práctica, solo los operadores de nivel 2 o superior pueden usar lo que esté protegido por un nodo cuyo valor predeterminado es false. Todos los demás solo reciben el puñado de nodos cuyo valor predeterminado es true (consulta las tablas de abajo), que en su mayoría son "ver o listar lo tuyo".
Otorgar nodos con un mod de permisos
Ejemplo con la sintaxis de LuckPerms (adáptalo al mod que uses):
/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
DMZ no incluye su propio comando para otorgar o revocar: la gestión de nodos depende por completo de tu mod de permisos.
Referencia de nodos
Los nodos tienen false como valor predeterminado (solo operadores y administradores) salvo que la tabla diga true. Las filas escritas como ….self / .others son dos nodos: uno para usar el comando sobre ti mismo y otro para usarlo sobre otros jugadores.
Administrador
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.admin |
false |
Todos los permisos de DMZ a la vez. También es necesario (o el nivel de operador 2) para /dmzconfig, /dmzrestoreupdate y /dmzdebug.
|
Estadísticas
Nodos de StatsCommand (/dmzstats).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzstats.set.self |
false |
Fijar tus propias estadísticas. |
dragonminez.dmzstats.set.others |
false |
Fijar las estadísticas de otro jugador. |
dragonminez.dmzstats.add.self |
false |
Sumar o restar a tus propias estadísticas (add y remove).
|
dragonminez.dmzstats.add.others |
false |
Sumar o restar a las estadísticas de otro jugador. |
dragonminez.dmzstats.info.self |
true |
Ver tus propias estadísticas. |
dragonminez.dmzstats.info.others |
false |
Ver las estadísticas de otro jugador. |
dragonminez.dmzstats.reset.self |
false |
Reiniciar o redistribuir tus propias estadísticas. |
dragonminez.dmzstats.reset.others |
false |
Reiniciar o redistribuir las estadísticas de otro jugador. |
Habilidades
Nodos de SkillsCommand (/dmzskill).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzskill.set.self / .others |
false |
Fijar niveles de habilidades. |
dragonminez.dmzskill.add.self / .others |
false |
Añadir una habilidad. |
dragonminez.dmzskill.remove.self / .others |
false |
Quitar una habilidad. |
dragonminez.dmzskill.list.self |
true |
Listar tus propias habilidades. |
dragonminez.dmzskill.list.others |
false |
Listar las habilidades de otro jugador. |
Técnicas
Nodos de TechCommand (/dmztech).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmztech.add.self / .others |
false |
Otorgar una técnica de ki. |
dragonminez.dmztech.remove.self / .others |
false |
Quitar una técnica de ki. |
dragonminez.dmztech.list.self |
true |
Listar tus propias técnicas. |
dragonminez.dmztech.list.others |
false |
Listar las técnicas de otro jugador. |
dragonminez.dmztech.experience.self / .others |
false |
Cambiar la experiencia de las técnicas. |
Tiempos de recarga de técnicas
Nodos de CooldownsCommand (/dmzcooldowns).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzcooldowns.self |
false |
Cambiar los tiempos de recarga de tus propias técnicas de ki y de golpe. |
dragonminez.dmzcooldowns.others |
false |
Cambiar los tiempos de recarga de las técnicas de ki y de golpe de otro jugador. |
Estadísticas extra
Nodos de BonusCommand (/dmzbonus).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzbonus.add.self / .others |
false |
Añadir estadísticas extra. |
dragonminez.dmzbonus.clear.self / .others |
false |
Quitar o vaciar estadísticas extra (remove y clear).
|
Efectos
Nodos de EffectsCommand (/dmzeffect).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzeffect.give.self / .others |
false |
Dar un efecto de estado. |
dragonminez.dmzeffect.remove.self / .others |
false |
Quitar un efecto de estado. |
dragonminez.dmzeffect.clear.self / .others |
false |
Quitar todos los efectos. |
dragonminez.dmzeffect.list.self |
true |
Listar tus propios efectos. |
dragonminez.dmzeffect.list.others |
false |
Listar los efectos de otro jugador. |
Puntos
Nodos de PointsCommand (/dmzpoints).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzpoints.set.self / .others |
false |
Fijar puntos. |
dragonminez.dmzpoints.add.self / .others |
false |
Añadir puntos. |
dragonminez.dmzpoints.remove.self / .others |
false |
Quitar puntos. |
dragonminez.dmzpoints.info.self |
true |
Ver tus propios puntos. |
dragonminez.dmzpoints.info.others |
false |
Ver los puntos de otro jugador. |
Misiones y sagas
Nodos de StoryCommand (/dmzquest).
| Nodo | Predeterminado | Otorga |
|---|---|---|
dragonminez.dmzquest.list.self |
true |
Listar tu propio progreso de misiones. |
dragonminez.dmzquest.list.others |
false |
Listar el progreso de misiones de otro jugador. |
dragonminez.dmzquest.info |
true |
Ver los metadatos de una misión. |
dragonminez.dmzquest.start.self / .others |
false |
Forzar el inicio de una misión. |
dragonminez.dmzquest.finish.self / .others |
false |
Forzar que una misión se complete. |
dragonminez.dmzquest.fail.self / .others |
false |
Forzar que una misión falle. |
dragonminez.dmzquest.reset.self / .others |
false |
Reiniciar una misión. |
dragonminez.dmzquest.track.self |
true |
Fijar tu propia misión rastreada. |
dragonminez.dmzquest.track.others |
false |
Fijar la misión rastreada de otro jugador. |
dragonminez.dmzquest.startsaga.self / .others |
false |
Forzar el inicio de todas las misiones de una saga. |
dragonminez.dmzquest.finishsaga.self / .others |
false |
Forzar que se completen todas las misiones de una saga. |
dragonminez.dmzquest.resetsaga.self / .others |
false |
Reiniciar una saga entera. |
dragonminez.dmzquest.difficulty.self |
false |
Ver o cambiar tu propia dificultad de la historia (/dmzquest difficulty).
|
dragonminez.dmzquest.difficulty.others |
false |
Cambiar la dificultad de la historia de otros jugadores. |
Otros comandos
| Nodo | Predeterminado | Otorga | Clase del comando |
|---|---|---|---|
dragonminez.dmzlocate |
false |
Localizar estructuras especiales. | LocateCommand
|
dragonminez.dmzstructure |
false |
Leer coordenadas locales de estructuras y los NPCs de las estructuras (/dmzstructure). |
StructureCommand
|
dragonminez.dmzdragonballs.status |
false |
Ver dónde se rastrea cada juego de Esferas del Dragón (/dmzdragonballs status). |
DragonBallsCommand
|
dragonminez.dmzdragonballs.regenerate |
false |
Rellenar un juego de Esferas del Dragón hasta las copias configuradas (/dmzdragonballs regenerate). |
DragonBallsCommand
|
dragonminez.dmzrevive.self / .others |
false |
Revivir a un jugador. | ReviveCommand
|
dragonminez.dmzparty.use |
true |
Invitar, aceptar y rechazar invitaciones, expulsar, disolver y activar o desactivar el PvP de grupo, con /dmzparty o la pestaña Grupo. Listar tu grupo (/dmzparty, /dmzparty list) y salir de él no lo necesitan. |
PartyCommand
|
dragonminez.dmzmastery.set / .add |
false |
Fijar o añadir maestría de transformación. | MasteryCommand
|
dragonminez.dmz.reload |
false |
Ejecutar /dmzreload (consulta Recargar y actualizar cambios). |
ReloadCommand
|
dragonminez.dmzform.set.self / .others |
false |
Fijar una forma. | FormsCommand
|
dragonminez.dmzform.add.self / .others |
false |
Otorgar una forma. | FormsCommand
|
dragonminez.dmzform.remove.self / .others |
false |
Quitar una forma. | FormsCommand
|
dragonminez.dmzform.list.self |
true |
Listar tus propias formas. | FormsCommand
|
dragonminez.dmzform.list.others |
false |
Listar las formas de otro jugador. | FormsCommand
|
dragonminez.dmzracial.reset.self / .others |
false |
Reiniciar las habilidades raciales. | RacialSkillCommand
|
dragonminez.dmzweight.give |
false |
Dar objetos de entrenamiento con peso. | WeightCommand
|
dragonminez.dmzalignment.set.self / .others |
false |
Fijar el alineamiento. | AlignmentCommand
|
dragonminez.dmzalignment.add.self / .others |
false |
Añadir alineamiento. | AlignmentCommand
|
dragonminez.dmzalignment.remove.self / .others |
false |
Quitar alineamiento. | AlignmentCommand
|
dragonminez.dmzalignment.info.self |
true |
Ver tu propio alineamiento. | AlignmentCommand
|
dragonminez.dmzalignment.info.others |
false |
Ver el alineamiento de otro jugador. | AlignmentCommand
|
dragonminez.dmztail.self |
true |
Hacer crecer o cortar tu propia cola. | TailCommand
|
dragonminez.dmztail.others |
false |
Hacer crecer o cortar la cola de otro jugador. | TailCommand
|
dragonminez.dmzminigame.self |
false |
Abrir o aprender minijuegos de entrenamiento para ti con /dmzminigame. |
MinigameCommand
|
dragonminez.dmzminigame.others |
false |
Abrir o enseñar minijuegos de entrenamiento a otros jugadores. | MinigameCommand
|
dragonminez.dmzhalo.self / .others |
false |
Activar o desactivar un halo. | HaloCommand
|
dragonminez.dmzhair.self |
true |
Resincronizar o reiniciar tu propio pelo. | HairCommand
|
dragonminez.dmzhair.others |
false |
Resincronizar o reiniciar el pelo de otro jugador. | HairCommand
|
dragonminez.dmzclass.set.self |
false |
Cambiar tu propia clase. | ClassCommand
|
dragonminez.dmzclass.set.others |
false |
Cambiar la clase de otro jugador. | ClassCommand
|
dragonminez.admin |
false |
También es necesario (o el nivel de operador 2) para /dmzconfig, /dmzrestoreupdate y /dmzdebug. |
ConfigCommand, RestoreCommand, DebugCommand
|
Aplicar cambios
Los nodos se registran cuando arranca el mod y no necesitan una recarga como la de la configuración: los cambios al otorgar y revocar surten efecto en cuanto tu mod de permisos los aplica (LuckPerms, por ejemplo, aplica la mayoría de los cambios al instante).