Penghitung Waktu Despawn & Pewarisan Usia (MC 26.2)
Dokumen ini menjelaskan siklus hidup despawn, matematika konversi tick-ke-detik, aturan pewarisan usia termuda, dan perlindungan produksi farm di Item Clumps untuk Minecraft 26.2.
📊 Kotak Info Fitur
| Properti | Spesifikasi |
|---|---|
| Nama Sistem | Pelindung Despawn Usia Termuda |
| Batas Despawn Vanilla | $6.000\text{ tick}$ ($300\text{ detik} = 5,0\text{ menit}$) |
| Aturan Pewarisan Usia | $\text{age}_{\text{merged}} = \min(\text{age}_A, \text{age}_B)$ (Item termuda yang berlaku) |
| Aturan Jeda Pengambilan | $\text{pickupDelay}_{\text{merged}} = \max(\text{pickupDelay}_A, \text{pickupDelay}_B)$ (Jeda terlama dipertahankan) |
| Bidang Target | ItemEntity.age dan ItemEntity.pickupDelay |
| Perilaku Despawn Diam | Timer 5 menit standar menghitung mundur saat tidak ada item baru |
⏳ Perhitungan Waktu Tick-ke-Detik
Dalam Minecraft, penghitung waktu entitas berjalan pada 20 tick per detik:
$$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}$$
Dalam vanilla Minecraft, sebuah ItemEntity menambahkan nilai field age internalnya sebesar $+1$ setiap game tick. Saat $\text{age} \ge 6000$, item dihapus secara permanen dari dunia.
🛡️ Aturan Perlindungan Item Termuda
Saat dua item bergabung di Item Clumps, entitas yang bertahan mengeksekusi:
$$\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)Mengapa Ini Melindungi Farm Berhasil Tinggi
- Masalah Umur Vanilla: Di vanilla, jika Anda memiliki pengumpul lambat, item yang baru jatuh dan bergabung ke item lama bisa terhapus 10 detik kemudian jika entitas induk sudah berumur 4 menit 50 detik.
- Solusi Item Clumps: Aliran item terus-menerus di mob grinder, farm pohon otomatis, atau tambang selalu memperbarui umur kelompok menjadi
0. Selama farm aktif menghasilkan item, tidak ada item yang akan hilang (despawn). - Pembersihan Saat Menganggur: Setelah farm berhenti berproduksi, kelompok item terdiam di tanah. Penghitung umur bertambah secara normal dari $0$ hingga $6000$, membersihkan semua item yang tidak terambil setelah 5 menit tidak ada aktivitas guna mencegah pembengkakan ukuran dunia.
🛑 Keamanan Jeda Pengambilan
Untuk mencegah pemain langsung menyerap kembali item yang baru saja mereka buang dari tangan, Minecraft memberikan pickupDelay (biasanya 40 tick = 2 detik).
Saat item bergabung:
$$\text{pickupDelay}{\text{merged}} = \max(\text{pickupDelay}{\text{this}}, \text{pickupDelay}_{\text{other}})$$
Ini memastikan bahwa jika pemain sengaja melempar item ke atas kelompok yang sudah ada, kelompok tersebut tidak akan langsung tersedot kembali ke inventaris sampai jeda pengambilan habis.
💻 Implementasi Kode Sumber Java Asli
Dari ItemEntityMixin.java di Minecraft 26.2:
// 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);