Skip to content

🐑 Stasis Mob & Penuaan Biologis Peternakan ​

📌 Pemberitahuan Sumber Repositori: Dokumentasi dalam Wiki ini mencerminkan kondisi kode sumber terkini dalam repositori, yang mungkin mencakup komit terbaru yang belum dirilis atau fitur dalam pengembangan sebelum rilis publik di CurseForge dan Modrinth.


🛡️ Mekanisme Stasis Mob (Pembekuan AI) ​

Selama percepatan waktu hipercepat, mob bermusuhan yang bergerak cepat (Zombie, Skeleton, Creeper) dapat membanjiri markas atau menyerang pemain yang tertidur sebelum sempat bereaksi.

True Sleep menghadirkan Stasis Mob (Mob Stasis): Saat truesleep:freeze_mobs diaktifkan (default: ON), navigasi AI, pencarian jalan, dan target serangan mob dijeda selama tidur.

Pengecualian untuk Mob Pekerja ​

Penduduk desa (Villager) dan Allay dikelompokkan dalam tag #truesleep:worker_mobs. Secara default, truesleep:freeze_workers disetel ke OFF (false), memungkinkan penduduk desa berjalan santai menuju tempat tidur atau stasiun kerja saat senja.


🌾 Penuaan Biologis Peternakan ​

Meskipun pergerakan mob dijeda, jam biologis internal mereka terus berdetak via BiologicalStasisHelper:

1. Pertumbuhan Bayi Hewan & Cooldown Pembiakan ​

Bayi sapi, domba, babi, ayam, dan serigala bertumbuh dewasa selama tidur:

java
if (mob instanceof AgeableMob ageable) {
    int currentAge = ageable.getAge();
    if (ageable.canAgeUp()) {
        ageable.setAge(Math.min(0, currentAge + strideTicks));
    } else if (currentAge > 0) {
        ageable.setAge(Math.max(0, currentAge - strideTicks));
    }
}

2. Timer Pengeluaran Telur Ayam ​

Timer telur ayam berkurang sebesar strideTicks, memungkinkan peternakan pengumpul telur beroperasi lancar semalaman: $$\text{eggTime} = \max(1, \text{eggTime} - \text{strideTicks})$$


3. Pertumbuhan Ulang Wol Domba (Simulasi Merumput) ​

Domba yang dicukur membutuhkan animasi memakan rumput untuk menumbuhkan kembali wolnya. Dalam stasis, True Sleep mensimulasikannya secara matematis:

$$\text{grazeChance} = \min\left(1.0, \frac{\text{strideTicks}}{1000.0}\right)$$

Jika domba yang telah dicukur berdiri di atas minecraft:grass_block, terdapat peluang $\text{grazeChance}$ per langkah untuk mengubah blok menjadi minecraft:dirt dan mengembalikan mantel wolnya (sheep.setSheared(false)).


🧪 Progresi Efek Ramuan ​

Efek ramuan aktif pada semua makhluk hidup berkurang durasinya dengan tepat selama tidur:

  • Efek positif (Kekuatan, Regenerasi) dan efek negatif (Racun, Wither) durasinya berkurang sebesar strideTicks.
  • True Sleep menggunakan duck typing (MobEffectInstanceExtensions) agar efek tersembunyi berjenjang kedaluwarsa tanpa bug rekursi.

🎛️ Aturan GameRules Pengendali ​

  • truesleep:freeze_mobs (Default: true): Menjeda pergerakan mob bermusuhan dan sekitar.
  • truesleep:freeze_workers (Default: false): Menjeda pergerakan penduduk desa dan allay.
  • truesleep:biological_aging (Default: true): Mengaktifkan pertumbuhan bayi, timer telur, dan wol.
  • truesleep:unfreeze_<namespace>_<path>: Tombol unfreeze tersendiri untuk setiap tipe entitas.

Official documentation & web portal for Dasik Igaijinn mods.