Importação, exportação e recargas
Importação do DeluxeMenus #
Comece com um relatório:
/crossmenu import deluxemenus --dry-runSem --overwrite, os arquivos existentes do CrossMenu nunca são substituídos. Sobrescrever exige o argumento final confirm. A importação é transacional: se a validação falhar, nenhum dos menus convertidos é publicado.
Cobertura medida atualmente:
| Área | Convertido | Cobertura |
|---|---|---|
| Tags de ação | 22 / 27 | 81% |
| Tipos de requisito | 26 / 32 | 81% |
| Tipos de clique | 6 / 6 | 100% |
| Chaves de menu | 16 / 16 | 100% |
| Chaves de item | 26 / 48 | 54% |
| Total | 96 / 129 | 74% |
Esses números são gerados pelos testes do importador contra o DeluxeMenus 1.14.1. O relatório de importação lista tudo o que exige trabalho manual; o CrossMenu não afirma compatibilidade total em silêncio.
Exportar um menu #
/crossmenu export shop grava plugins/CrossMenu/exports/shop-<time>.zip com o arquivo do menu, suas variantes de idioma e todos os arquivos de componentes que o menu usa. Descompacte-o manualmente em plugins/CrossMenu/ de outro servidor ou coloque o zip em plugins/CrossMenu/imports/ lá e execute /crossmenu import package shop-<time>.zip. Uma importação apenas adiciona arquivos: um menu ou componente que já existe é deixado como está e informado, --dry-run mostra o que seria adicionado e um pacote com uma entrada insegura ou ilegível é recusado por inteiro. Depois que os arquivos são gravados, tudo é validado; se um dos arquivos novos tiver erro, eles são removidos de novo e nada é carregado. Placeholders, plugins e itens que faltam no outro servidor não são verificados; execute /crossmenu validate lá.
Recarregar com segurança #
/crossmenu reload <menu> analisa e valida o arquivo solicitado antes de publicá-lo. Uma recarga ruim deixa o menu em execução inalterado. IDs duplicados e conflitos de comandos são verificados em todo o registro, enquanto menus não relacionados e suas respostas em andamento continuam normalmente.
/crossmenu validate, reload e doctor também avisam sobre um material: fixo que não é um item real, por exemplo COMPASSS; o item apareceria como uma barreira no jogo.
/crossmenu doctor grava um relatório com data e hora em plugins/CrossMenu/diagnostics/. Ele permanece no seu servidor e oculta caminhos do servidor, UUIDs e valores sensíveis.
Se config.yml, o arquivo de idioma ou um menu tiver um erro quando o servidor iniciar, o CrossMenu não abre nenhum menu e não registra nenhum listener. /crossmenu então informa aos administradores qual arquivo foi recusado; corrija-o e reinicie.
Log de auditoria #
Com audit.enabled: true em config.yml, o CrossMenu acrescenta uma linha separada por tabulações para cada pagamento, alteração de experiência, alteração de item, alteração de permissão e comando de console que o clique de um menu executou, em plugins/CrossMenu/audit/audit-YYYY-MM.log (hora UTC, nome do jogador, UUID, menu, ação, detalhe). Ele vem desativado por padrão, permanece no seu servidor e o arquivo de um mês para de crescer em 32 MiB. Contém nomes de jogadores e UUIDs, então trate-o como os demais dados de jogadores.