Files
mc/mods/nosingleplayer/README.md
T
Anaïs Saraiva 4c7da4cab5 nosingleplayer 1.1.9 : menu titre résilient (repli vanilla) + launcher : plus de console noire Windows
Écran noir au menu titre sur les PC Windows (2 postes) : dans
TitleScreen.extractRenderState, les widgets sont dessinés juste APRÈS
extractPanorama. Toute exception dans la redirection du panorama
interrompt donc le rendu du menu entier (écran noir, sans bouton).

Mod nosingleplayer 1.1.9 :
- try/catch autour du fond custom + repli automatique sur le panorama
  vanilla (avant : écran noir définitif si la texture est refusée par
  le GPU ou absente du jar) ;
- try/catch autour de la construction du menu, et les widgets vanilla ne
  sont retirés qu'APRÈS la création des widgets SurviePote (avant : une
  exception laissait un menu vidé) ;
- ping serveur déplacé sur un thread dédié : il était lancé depuis
  extractWidgetRenderState, donc sur le thread de rendu (un DNS lent
  suffisait à figer le menu) ;
- log GPU au démarrage du menu (nom/vendor/pilote/backend) ;
- option de diagnostic -Dsurviepote.customTitle=false (menu vanilla).

Launcher : java.exe est lancé avec detached:true sans windowsHide ->
sur Windows, une console noire et vide s'ouvre par-dessus le jeu.
Ajout de windowsHide:true.

atlas : distribution.json regénéré (MD5/URL du nouveau jar).
2026-10-19 23:31:49 +02:00

27 lines
1.6 KiB
Markdown

# 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.1.9.jar` → copié dans `atlas/.../fabricmods/required/`.
## 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] GPU: <nom> | <vendor> | pilote <driver> | backend <OpenGL|Vulkan>`
et `[SurviePote] Fond chargé : <w>x<h>` (ou l'erreur de chargement de la texture).
- 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.