Mapas de ofuscação

De Minecraft Wiki
Ir para: navegação, pesquisa

Mapas de ofuscação são mapeamentos de nomes antigos de Proguard (originais) para nomes novos (ofuscados) para classes e membros da classe que foram renomeados.[1] Eles foram exportados no client.json para cada snapshot desde a 19w36a, e o client.json para 1.14.4 foi atualizado um pouco depois do lançamento da 19w36a para incluir mapas de ofuscação também.[2]

Uso[editar | editar código-fonte]

Os mapas de ofuscação podem ser usados para remapear rastreamentos ofuscados da saque (como no relatório de travamento) para rastreamentos legíveis da saque.[3]

Dinnerbone e Adrian Östergård sugeriram que os mapas de ofuscação podem facilitar as modificações.[4][5] Searge implica que os mapas de ofuscação podem substituir certos programas de terceiros.[6]

Em 12 de agosto de 2020, Dinnerbone afirma que os projetos de modificações podem mudar para nomes Mojang oficiais fornecidos nos mapas de ofuscação.[7]

Usos de terceiros[editar | editar código-fonte]

Os mapas de ofuscação incluem informações suficientes para desobstruir Minecraft para descompilação. Programas de terceiros podem existir para esse fim.

De acordo com a Licença, esse código-fonte descompilado é restrito ao uso interno e de referência.

Licença[editar | editar código-fonte]

Todo arquivo de mapa de ofuscação começa com uma linha indicando a licença dos mapas.

# (c) 2020 Microsoft Corporation. All rights reserved. These mappings are provided "as-is" and you bear the risk of using them. You may copy and use the mappings for development purposes, but you may not redistribute the mappings complete and unmodified. Microsoft makes no warranties, express or implied, with respect to the mappings provided here.  Use and modification of source code for Minecraft: Java Edition is governed by the Minecraft End User License Agreement available at https://account.mojang.com/documents/minecraft_eula.

Por Dinnerbone, qualquer mapeamento de ofuscação lançado antes da atualização da licença ainda estaria disponível sob esta licença mais antiga, além de estar disponível sob a nova licença.[8]

Histórico[editar | editar código-fonte]

3 de setembro de 2019Dinnerbone menciona "uma pequena surpresa para os modificadores!" para 19w36a.
Edição Java
1.1519w36aDownloads para mapas de ofuscação de clientes e servidores agora estão incluídos no client.json.
4 de setembro de 2019Dinnerbone libera mapeamentos de ofuscação para 1.14.4 também.
12 de agosto de 2020Dinnerbone indicou que a licença dos mapas de ofuscação será atualizada e incentiva os editores de complementos a mudar para o mapa de ofuscação de Mojang, reivindicando em outro tweet que "ajudaria na compatibilidade".
Ele ofereceu uma prévia da licença atualizada também.
14 de agosto de 2020A licença de mapas de ofuscação foi atualizada.
A version_manifest.json foi atualizado para ter a entradas do client.json para 1.14.4 e versões desde 19w36a para vincular a mapas de ofuscação atualizados.

Referências[editar | editar código-fonte]