Skip to content

Minuteur de Disparition & Héritage d'Âge (MC 26.2)

Ce document détaille le cycle de vie de disparition, conversion des ticks en secondes, règles d'héritage d'âge récent et sécurité des usines dans Item Clumps pour Minecraft 26.2.


📊 Fiche Technique de Fonctionnalité

PropriétéSpécification
Nom du SystèmePréservateur de Disparition par l'Âge le Plus Récent
Seuil de Disparition Vanilla$6,000\text{ ticks}$ ($300\text{ secondes} = 5.0\text{ minutes}$)
Règle d'Héritage d'Âge$\text{age}_{\text{merged}} = \min(\text{age}_A, \text{age}_B)$ (L'item le plus récent l'emporte)
Délai de Ramassage$\text{pickupDelay}_{\text{merged}} = \max(\text{pickupDelay}_A, \text{pickupDelay}_B)$ (Plus long délai conservé)
Champs CiblésItemEntity.age et ItemEntity.pickupDelay
Comportement en InactivitéMinuteur standard de 5 minutes décompté en l'absence de nouvelle fusion

⏳ Calcul Temporel : Ticks vers Secondes

Dans Minecraft, les minuteurs d'entités s'exécutent à 20 ticks par seconde :

$$1\text{ second} = 20\text{ ticks}$$ $$1\text{ minute} = 60\text{ seconds} = 1,200\text{ ticks}$$ $$5\text{ minutes} = 300\text{ seconds} = 6,000\text{ ticks}$$

Dans Minecraft Vanilla, une entité ItemEntity incrémente son champ age de $+1$ à chaque tick. Lorsque $\text{age} \ge 6000$, l'item est définitivement supprimé du monde.


🛡️ Règle de Préservation de l'Item le Plus Récent

Lorsque deux items fusionnent dans Item Clumps, l'entité survivante exécute :

$$\text{age}{\text{merged}} = \min(\text{age}{\text{this}}, \text{age}_{\text{other}})$$

  Existing Ground Clump                           Newly Dropped Item
  - Count: 500 Cobblestone                       - Count: 1 Cobblestone
  - Age: 5,800 ticks (4m 50s old)                - Age: 0 ticks (Brand new)
                 │                                              │
                 └──────────────────────┬───────────────────────┘
                                        │ (Item Clumps Merging)

                           Merged Mega-Stack Entity
                           - Count: 501 Cobblestone
                           - Age: min(5800, 0) = 0 ticks (Fresh 5-minute timer)

Pourquoi Cela Protège les Usines à Haut Rendement

  • Le Problème de Durée de Vie en Vanilla : En vanilla, si un système de collecte est lent, de nouveaux items fusionnant avec d'anciens items peuvent disparaître 10 secondes plus tard si l'item hôte avait déjà 4 minutes et 50 secondes.
  • La Solution d'Item Clumps : Le flux continu d'items dans les usines à monstres actives, fermes d'arbres ou carrières réinitialise en permanence l'âge de l'amas à 0. Tant que l'usine produit, aucun item ne disparaîtra jamais.
  • Nettoyage en Cas d'Inactivité : Dès que l'usine cesse de produire, l'amas reste immobile au sol. Le minuteur progresse de $0$ à $6000$, supprimant en toute sécurité les items délaissés après 5 minutes pour éviter d'alourdir la sauvegarde du monde.

🛑 Sécurité du Délai de Ramassage

Pour empêcher les joueurs de réabsorber instantanément un item jeté de leur main, Minecraft lui attribue un pickupDelay (généralement 40 ticks = 2 secondes).

Lorsque des items fusionnent :

$$\text{pickupDelay}{\text{merged}} = \max(\text{pickupDelay}{\text{this}}, \text{pickupDelay}_{\text{other}})$$

Cela garantit que si un joueur jette un item sur un amas existant, l'amas n'est pas immédiatement réaspiré dans son inventaire avant la fin du délai de ramassage.


💻 Implémentation du Code Source Java Réel

Depuis ItemEntityMixin.java dans Minecraft 26.2 :

java
// During Complete or Partial Merging:
this.pickupDelay = Math.max(this.pickupDelay, ((ItemEntityMixin)(Object)other).pickupDelay);
this.age = Math.min(this.age, ((ItemEntityMixin)(Object)other).age);

🔗 Documentation Associée (MC 26.2)

Official documentation & web portal for Dasik Igaijinn mods.