Importação, exportação e recargas

Importação do DeluxeMenus #

Comece com um relatório:

text
/crossmenu import deluxemenus --dry-run

Sem --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:

ÁreaConvertidoCobertura
Tags de ação22 / 2781%
Tipos de requisito26 / 3281%
Tipos de clique6 / 6100%
Chaves de menu16 / 16100%
Chaves de item26 / 4854%
Total96 / 12974%

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.