promotional bannermobile promotional banner

ModernXL 3

A modern decoration/furtniture mod that allows you to create pleasant interiors in Minecraft!
Back to Files

modernxl_ii-3.0.0-26.1.2.jar

File namemodernxl_ii-3.0.0-26.1.2.jar
Uploader
Ragnar_8395Ragnar_8395
Uploaded
Aug 7, 2026
Downloads
63
Size
75.3 MB
Mod Loaders
NeoForge
File ID
8596070
Type
R
Release
Supported game versions
  • 26.1.2

Curse Maven Snippet

NeoForge

implementation "curse.maven:modernxl-3-1636620:8596070"

Learn more about Curse Maven

What's new

Résumé du portage — NeoForge 1.21.1 → 26.1.2

Portage du mod Modernxl 3 (modernxl_ii) depuis la base NeoForge 1.21.1 (déjà fonctionnelle) vers Minecraft/NeoForge 26.1.2 (neo_version=26.1.2.94).

Contexte

Minecraft 26.1 a cumulé plusieurs refontes profondes en une seule version — le portage s'est avéré bien plus lourd qu'un simple changement de version mineure, comparable en ampleur au portage Forge → NeoForge qui l'a précédé.

Changements d'API traités

Renommages / déplacements mécaniques

  • ResourceLocation → Identifier (renommage global, ~74 fichiers)
  • DirectionProperty → EnumProperty<Direction> (737 fichiers)
  • noCollission() → noCollision() — Mojang a corrigé une faute de frappe historique (307 fichiers)
  • TriState déplacée de NeoForge vers net.minecraft.util
  • AbstractArrow et ThrownPotion/AbstractThrownPotion déplacées dans de nouveaux sous-packages
  • VillagerTrades déplacée de package
  • Plusieurs constantes MobEffects renommées (MOVEMENT_SPEED→SPEED, JUMP→JUMP_BOOST, CONFUSION→NAUSEA, DAMAGE_RESISTANCE→RESISTANCE)
  • MobSpawnType → EntitySpawnReason
  • BlockAndTintGetter déplacée côté client (net.minecraft.client.renderer.block)

Refontes d'architecture

Rendu GUI — GuiGraphics remplacée par GuiGraphicsExtractor : passage d'un modèle de dessin immédiat à un modèle d'extraction d'état de rendu (render() → extractRenderState(), renderBg() supprimée, blit() exige un RenderPipeline explicite). A touché les 4 écrans de meubles (tiroirs, table de construction, four).

Rendu d'entités — EntityModel<Entity> devient EntityModel<EntityRenderState> (même logique d'extraction d'état). MobRenderer gagne un 3ᵉ paramètre générique. Model.renderToBuffer devenue final. EntityRenderer.createRenderState() devenue abstraite.

Capabilities / inventaire (le plus gros chantier) — IItemHandler remplacée par un nouveau système générique et transactionnel ResourceHandler<ItemResource> (unifiant items/fluides/énergie). IItemHandler reste disponible en pont de compatibilité déprécié (IItemHandler.of(...)). Une classe pont maison (ItemHandlerCompat.java) a été écrite pour couvrir le cas manquant (setStackInSlot), permettant de conserver tout le code existant (44 BlockEntity, 4 Menus, 2 gros fichiers procedures) sans réécriture complète.

NBT — nouvelle API ValueInput/ValueOutput basée sur des codecs, remplaçant l'accès direct à CompoundTag dans loadAdditional/saveAdditional (44 BlockEntity). A aussi révélé un bug préexistant (loot table inversée entre load/save) corrigé au passage.

Réseau — PacketDistributor.sendToServer() déplacée vers ClientPacketDistributor (côté client uniquement).

Système jour/nuit — nouveau système WorldClock/ServerClockManager remplaçant Level.getDayTime()/ServerLevel.setDayTime().

Enregistrement des blocs/items — Minecraft exige désormais qu'un ResourceKey soit explicitement attaché (.setId(...)) à l'objet Properties avant la construction du bloc/item (le constructeur y accède immédiatement). A nécessité d'injecter cet appel dans les 849 constructeurs de blocs individuels (via un script comptant les parenthèses pour localiser précisément la fin de l'appel super(...), y compris dans les chaînes complexes avec lambdas) et dans les helpers d'enregistrement des items.

Tooltips de blocs — appendHoverText n'existe plus sur Block du tout (le mécanisme est passé aux composants de données). Désactivé sur ~236 blocs (perte des lignes d'info type "[Fusion top]", purement cosmétique).

Échanges de villageois — système entièrement refondu en registre piloté par données (ResourceKey<VillagerTrade>). Désactivé (4 échanges du fermier).

Ressources — définitions d'item — nouveau format assets/modernxl_ii/items/*.json (dossier items, distinct de models/item/) requis pour que les icônes d'objets se chargent, en plus des modèles existants. 855 fichiers générés.

Ce qui reste en suspens

  1. Système d'échanges de villageois du fermier (4 trades) — désactivé, à réimplémenter via le nouveau système piloté par données
  2. Tooltips custom sur ~236 blocs — retirés, à réintégrer via le nouveau système de composants de données

État final

BUILD SUCCESSFUL, chargement en jeu réussi, aucune erreur ni avertissement au démarrage.

This mod has no related projects