Importación, exportación y recargas

Importación de DeluxeMenus #

Empieza con un informe:

text
/crossmenu import deluxemenus --dry-run

Sin --overwrite, nunca se reemplazan los archivos existentes de CrossMenu. Para sobrescribir hace falta el argumento final confirm. La importación es transaccional: si la validación falla, no se publica ninguno de los menús convertidos.

Cobertura medida actualmente:

ÁreaConvertidoCobertura
Etiquetas de acción22 / 2781 %
Tipos de requisito26 / 3281 %
Tipos de clic6 / 6100 %
Claves de menú16 / 16100 %
Claves de objeto26 / 4854 %
Total96 / 12974 %

Estas cifras se generan con las pruebas del importador frente a DeluxeMenus 1.14.1. El informe de importación lista todo lo que requiere trabajo manual; CrossMenu no afirma una compatibilidad total sin más.

Exportar un menú #

/crossmenu export shop escribe plugins/CrossMenu/exports/shop-<time>.zip con el archivo del menú, sus variantes de idioma y todos los archivos de componentes a los que accede el menú. Descomprímelo a mano en plugins/CrossMenu/ de otro servidor, o coloca el zip en plugins/CrossMenu/imports/ allí y ejecuta /crossmenu import package shop-<time>.zip. Una importación solo añade archivos: un menú o componente que ya existe se deja como está y se informa de ello, --dry-run muestra qué se añadiría y un paquete con una entrada insegura o ilegible se rechaza por completo. Cuando se han escrito los archivos se valida todo; si uno de los archivos nuevos tiene un error, se vuelven a eliminar y no se carga nada. No se comprueban los marcadores de posición, plugins ni objetos que falten en el otro servidor; ejecuta allí /crossmenu validate.

Recargar con seguridad #

/crossmenu reload <menu> analiza y valida el archivo solicitado antes de publicarlo. Una recarga errónea deja el menú en ejecución sin cambios. Los identificadores duplicados y los conflictos de comandos se comprueban contra todo el registro, mientras que los menús no relacionados y sus respuestas en curso continúan con normalidad.

/crossmenu validate, reload y doctor también avisan de un material: fijo que no es un objeto real, por ejemplo COMPASSS; de lo contrario, el objeto aparecería como una barrera en el juego.

/crossmenu doctor escribe un informe con marca de tiempo en plugins/CrossMenu/diagnostics/. Permanece en tu servidor y oculta las rutas del servidor, los UUID y los valores sensibles.

Si config.yml, el archivo de idioma o un menú tiene un error al iniciar el servidor, CrossMenu no abre ningún menú ni registra ningún listener. /crossmenu indica entonces a los administradores qué archivo se rechazó; corrígelo y reinicia.

Registro de auditoría #

Con audit.enabled: true en config.yml, CrossMenu añade una línea separada por tabuladores por cada pago, cambio de experiencia, cambio de objetos, cambio de permisos y comando de consola que ejecutó el clic de un menú, en plugins/CrossMenu/audit/audit-YYYY-MM.log (hora UTC, nombre del jugador, UUID, menú, acción, detalle). Está desactivado por defecto, permanece en tu servidor y el archivo de un mes deja de crecer a los 32 MiB. Contiene nombres de jugadores y UUID, así que trátalo como el resto de datos de jugadores.