Files
mc/mods/nosingleplayer/README.md
T

2.2 KiB

nosingleplayer (mod maison SurviePote)

Désactive le bouton Solo du menu principal (Mixin sur TitleScreen.init) et adapte l'UI au serveur unique :

  • Menu titre : bouton Rejoindre SurviePote (connexion directe à mcpv.ihorizon.org:25565, sans transfert) ; Solo, Multi, Realms, réseau social et icônes bas retirés.
  • Menu Échap : le bouton de déconnexion devient Quitter SurviePote et renvoie à l'écran d'accueil du jeu (et non la liste des serveurs).
  • MC 26.3, Fabric Loader 0.20.0, Java 25, environment: client.
  • Particularité 26.x : Mojang ne publie plus de mappings (ni Yarn ni client_mappings) et le jeu n'est plus obfusqué → pas de Loom, compilation directe contre le jar client Mojang (téléchargé au build) + loader/mixin en compileOnly. Les noms Mojang passent tels quels, pas de refmap nécessaire.

Build : cd mods/nosingleplayer && ./gradlew build (dans nix-shell racine pour Java 25). Jar : build/libs/nosingleplayer-1.2.0.jar → copié dans atlas/.../fabricmods/optionalon/.

Textures

MC 26.3 n'expose pas les ressources des mods au ResourceManager (vérifié : le panorama vanilla affiche le stock Mojang, pas les panorama_*.png du mod). Les PNG sont donc lus dans le jar et enregistrés via le mécanisme officiel de MC (ReloadableTexture + TextureContents) : c'est MC qui crée la texture GPU et le sampler, exactement comme pour ses propres textures.

⚠️ La texture GPU doit être créée hors de l'extraction du rendu (ici dans TitleScreen.init) : la créer pendant l'enregistrement des commandes d'une frame invalide le frame entier sur les backends à command encoder (Vulkan) → menu titre entièrement noir (constaté sur Windows + NVIDIA).

Diagnostic

  • -Dsurviepote.customTitle=false (options JVM du launcher) : repasser au menu vanilla (panorama vanilla au lieu du fond custom). Sert à isoler un souci de rendu du fond custom.
  • Le mod log au démarrage du menu : [SurviePote] Texture enregistrée : … (1920x1200) et [SurviePote] GPU: <nom> | <vendor> | pilote <driver> | backend <OpenGL|Vulkan>.
  • Si le fond custom échoue (texture refusée par le GPU, jar corrompu…), le mod se repli automatiquement sur le panorama vanilla au lieu de laisser un écran noir.