Mod Fullbright pour version moddée sans modloader.

  • Auteur de la discussion Auteur de la discussion End0832_
  • Date de début Date de début

End0832_

Aventurier
18 Mai 2024
10
0
1
24
Je travaille actuellement sur une version de minecraft modée (OptiFine en est une autre si vous voyez ce que je veux dire), et j'aimerais avoir un mod comme celui-ci, mais qui peut se mettre sur un version sans forge ni fabric ni neoforge ni un quelconque autre modloader. À voir cette vidéo pour comprendre la comptabilité tu mod.
La version est en 1.20.6
Si quelqu'un a la solution, pourrait-il/elle m'expliquer comment il/elle a fait et comment changer la version pour pouvoir le refaire sans aide par le futur (exemple, le passage de la 1.20.6 à la 1.21)
 
Bonsoir,

Le mod est « Tous droits réservés », donc même si tu as accès au code source tu n'as pas le droit de le modifier ou de le redistribuer toi-même.

Si tu veux faire un mod sans modloader, il faut déobfusquer le .jar (Proguard + les mappings officiels de Mojang, mais tu perdras les commentaires de Forge/Fabric), le décompiler (Fernflower ou autre) et réimplémenter toi-même les points d'entrée (aka. les évènements, cf. les .patch).

Pour changer la version d'un mod, il faut lire le patchnote officiel du jeu et du modloader utilisé.

Cordialement,
ShE3py
 
Bonsoir,

Le mod est « Tous droits réservés », donc même si tu as accès au code source tu n'as pas le droit de le modifier ou de le redistribuer toi-même.

Si tu veux faire un mod sans modloader, il faut déobfusquer le .jar (Proguard + les mappings officiels de Mojang, mais tu perdras les commentaires de Forge/Fabric), le décompiler (Fernflower ou autre) et réimplémenter toi-même les points d'entrée (aka. les évènements, cf. les .patch).

Pour changer la version d'un mod, il faut lire le patchnote officiel du jeu et du modloader utilisé.

Cordialement,
ShE3py
Bonsoir, je vous remercie de cette réponse, et de m'avoir expliqué comment faire. Cependant je n'ai pas les logiciels nécessaires pour le bon fonctionnement de cette méthode... Je prend aussi note du fait que tous les droits sont réservés, mais pour ce point, je ne me fais pas de soucis car je compte l'utiliser pour moi et moi seul. Je me demandais donc si il était possible que vous m'envoyez le dossier avec les modifications déjà faites (si c'est légal), ou sinon de le redévelopper pour la légalité de son envoi.
Je vous remercie aussi pour la rapidité de cette réponse, qui bat sans aucun doute r/MinecraftHelp sur lequel j'avais envoyé un sujet similaire... Sans réponse
 
Je n'ai pas vraiment le temps ni l'envie de fusionner un mod fonctionnant déjà parfaitement avec le jeu vanilla pour enlever le modloader, surtout que ça n'a vraiment aucun intérêt pour un usage privé. Pourquoi vouloir enlever le modloader ?
 
En fait, je'essaye de pousser au plus loin ma compréhension des versions (il n'y a quasiment aucune vidéo traitant le sujet) et pour ça j'essaye d'y implémenter un mod... ou 2 car il faut ce mod pour qu'il fonctionne. Le système est-il le même ? (J'ai trouvé des outils en ligne par contre je n'arrive pas à trouver "Proguard + les mappings officiels de Mojang" et je me demandais aussi ce qui devait être décomplié et où réimplémenter les .patch) de plus, à quoi servent les .class et comment les ouvrir ?
 
Le code source .java est compilé en code objet .class puis réunit dans une archive .jar. Le .jar est post-traité par Proguard qui renomme toutes les fonctions (kill(), spawn()) séquentiellement (a(), b()) pour obfusquer le programme. Mojang donne le programme obfusqué, et les mappings Proguard avec les noms originels pour que tu puisses déobfuquer le jeu.

Si tu veux retrouver le code source il faut faire l'inverse, c.-à-d. pré-traiter le .jar obfusqué via Proguard en reverse avec les mappings, puis décompiler les .class en .java.

Ensuite il suffit de modifier directement le code source, sauf que c'est une atteinte au droit d'auteur (vu que 99.9% du code n'aura pas été écrit par toi). La technique est d'enregistrer les modifications sous forme de patches Git, qui au lieu de contenir tout le fichier, ne contient que la sous-partie du fichier modifié.

L'idée est donc de faire un programme qui recréer le code source localement (pas d'atteinte au droit d'auteur), y applique les patches, puis recompile le tout. Les patches permettent aussi de savoir exactement ce que tu as modifié, donc si tu veux mettre à jour le jeu, il suffit de refaire tous les patches. Forge en a ~800.

Bref c'est pas mal de rétro-ingénieurie, si tu veux comprendre comment le jeu fonctionne faudrait plutôt regarder du côté de Forge en faisant toi-même un mod avant de t'attaquer à modifier le client sans passer par un modloader.
 
Bonjour, je vous remercie de ce conseil (que je vais suivre). Pourriez-vous m'envoyer un lien pour apprendre à faire un mod.

(Je ne met pas cette discussion en "résolu" car je pense encore avoir besoin d'aide sur ce sujet après la résolution du mod)
 
Dernière édition: