Yarn: Manière automatisée de générer des pots nommés

Créé le 2 avr. 2021  ·  5Commentaires  ·  Source: FabricMC/yarn

Salut,
J'ai écrit un outil appelé PixLyzer . Il utilise les mappages de fil pour < 1.14.4 et les mappages mojang pour 1.14.4 +. J'aime bien plus les mappings de fils que les originaux.

Mon problème est que je dois intégrer l'intégration jar nommée dans mon script. Je n'ai pas le temps de générer manuellement des pots de fil pour les versions plus récentes et pour toutes les versions entre 21w13a et 1.14.4 . Ma dernière tentative pour générer les anciens mappages a été de vérifier 1.14.4? et de changer la version de minecraft ici : https://github.com/FabricMC/yarn/blob/21w13a/build.gradle#L29. Les anciennes versions sont incompatibles avec Gradle et/ou n'ont pas mapNamedJar

Comment générer automatiquement des mappages pour les anciennes versions automatiquement ? (J'entends par là quelque chose comme gradle mapNamedJar 1.15.2 .

Merci

discussion toolchain

Commentaire le plus utile

Salut,

Vous pouvez utiliser un minuscule remappeur pour remapper les pots avec des mappages donnés.

Vous pouvez trouver un téléchargement ici : https://maven.fabricmc.net/net/fabricmc/tiny-remapper/0.3.2/ (utilisez le fat jar si vous voulez l'utiliser via la cli)
Vous pouvez trouver du fil au format minuscule ici : https://maven.fabricmc.net/net/fabricmc/yarn/ (les fichiers jar ou gz none v2 seront les meilleurs pour les anciennes versions du jeu)

Tiny reampper dispose également d'une API si vous souhaitez l'appeler directement dans votre code (il suffit de l'insérer via maven). Vous pouvez utiliser le mapNamedJar comme exemple : https://github.com/FabricMC/yarn/blob/21w13a/build.gradle#L1050

Il ne devrait s'agir que d'obtenir de votre outil qu'il télécharge minecraft et la version de fil que vous souhaitez utiliser, puis d'invoquer un petit remappeur.

Tous les 5 commentaires

Salut,

Vous pouvez utiliser un minuscule remappeur pour remapper les pots avec des mappages donnés.

Vous pouvez trouver un téléchargement ici : https://maven.fabricmc.net/net/fabricmc/tiny-remapper/0.3.2/ (utilisez le fat jar si vous voulez l'utiliser via la cli)
Vous pouvez trouver du fil au format minuscule ici : https://maven.fabricmc.net/net/fabricmc/yarn/ (les fichiers jar ou gz none v2 seront les meilleurs pour les anciennes versions du jeu)

Tiny reampper dispose également d'une API si vous souhaitez l'appeler directement dans votre code (il suffit de l'insérer via maven). Vous pouvez utiliser le mapNamedJar comme exemple : https://github.com/FabricMC/yarn/blob/21w13a/build.gradle#L1050

Il ne devrait s'agir que d'obtenir de votre outil qu'il télécharge minecraft et la version de fil que vous souhaitez utiliser, puis d'invoquer un petit remappeur.

@ modmuss50 Merci pour la réponse (super rapide), je vais certainement l'essayer. Malheureusement, je n'ai pas eu le temps ces derniers jours de répondre.

Salut,
a une autre question.

(Supposons que vous utilisiez la version 21w13a et que vous vouliez mapper d'officiel à nommé):

Je peux utiliser un petit remappeur pour mapper de offical à intermediary . Tout va bien avec celui-ci. Maintenant, je veux mapper de intermediary à named . Lorsque je vérifie 21w13a et que j'exécute gradle mapNamedJar , je vois dans le dossier temporaire un fichier appelé merge-v2.tiny . Lorsque j'utilise ce fichier et que j'exécute le remappeur, tout va bien et j'obtiens le pot auquel je suis habitué. Lorsque j'utilise les mappages de fils de maven (peu importe quoi, les fusionnés, les v2, ...) je peux mapper la plupart des classes sur les noms nommés, mais certains (par exemple net/minecraft/class_6171 ) ne le sont tout simplement pas se faire renommer. J'ai vérifié les mappages et lors du grepping après cette classe, j'obtiens la sortie suivante:

moritz@moritz-tp:~/yarn$ grep -r "net/minecraft/class_6171"
mappings/net/minecraft/unused/packageinfo/PackageInfo6171.mapping:CLASS net/minecraft/class_6171 net/minecraft/unused/packageinfo/PackageInfo6171 
.gradle/temp/yarn-mappings-v2.tiny:c    net/minecraft/class_6171        net/minecraft/unused/packageinfo/PackageInfo6171
.gradle/temp/yarn-mappings.tiny:CLASS   net/minecraft/class_6171        net/minecraft/unused/packageinfo/PackageInfo6171
.gradle/temp/unmerged-named-v2-with-enum.tiny:c net/minecraft/class_6171        net/minecraft/unused/packageinfo/PackageInfo6171
.gradle/temp/merged-reordered-v2.tiny:c dlr     net/minecraft/class_6171        net/minecraft/unused/packageinfo/PackageInfo6171
.gradle/temp/merged-v2.tiny:c   net/minecraft/class_6171        dlr     net/minecraft/unused/packageinfo/PackageInfo6171
.gradle/minecraft/21w13a-intermediary-inverted-v2.tiny:c        net/minecraft/class_6171        dlr
.gradle/minecraft/21w13a-intermediary.tiny:CLASS        dlr     net/minecraft/class_6171
.gradle/minecraft/21w13a-intermediary-v2.tiny:c dlr     net/minecraft/class_6171


moritz@moritz-tp:~/test$ grep -r "net/minecraft/class_6171"
Übereinstimmungen in Binärdatei intermediary.jar
Übereinstimmungen in Binärdatei yarn.jar
intermediary.tiny:c     dlr     net/minecraft/class_6171

Aucun mappage nommé n'est donc disponible. Les mappages dans maven sont-ils différents ou est-ce que je fais quelque chose de mal?

Ty

(D'accord, petite modification : j'ai utilisé d'anciens mappages minuscules, mais tout de même : vérifiez la classe net/minecraft/class_5348$1 )

v2 ne contient pas les noms intermédiaires, vous devez les télécharger séparément depuis maven et combiner les mappages ou passer de officiel -> intermédiaire -> nommé.

Je peux cartographier d'officiel à intermédiaire sans problème. J'utilise v2 ou v1 de maven (https://maven.fabricmc.net/net/fabricmc/yarn/) mais nulle part il n'y a de nom nommé de cette classe. C'est le problème et non pas qu'il ne sera pas mappé du tout (presque tous sont mappés)

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

asiekierka picture asiekierka  ·  3Commentaires

Draylar picture Draylar  ·  6Commentaires

ChloeDawn picture ChloeDawn  ·  6Commentaires

enbrain picture enbrain  ·  4Commentaires

quat1024 picture quat1024  ·  6Commentaires