🐑 Estase de Mobs e Envelhecimento Biológico das Fazendas
📌 Aviso Legal do Código-Fonte do Repositório: A documentação nesta Wiki reflete o estado atual do código-fonte no repositório, que pode incluir commits recentes não lançados ou recursos em desenvolvimento antes dos lançamentos públicos no CurseForge e Modrinth.
🛡️ Estase de Mobs (Congelamento de IA)
Durante a dobra temporal em hipervelocidade, monstros hostis rápidos (zumbis, esqueletos, creepers) poderiam invadir bases ou atacar jogadores dormindo.
O True Sleep introduz a Estase de Mobs (Mob Stasis): Com truesleep:freeze_mobs ativado (padrão: ON), a navegação por IA, busca de caminhos e ataques dos mobs ficam congelados durante o sono.
Isenção para Criaturas Trabalhadoras
Aldeões e allays são agrupados sob a tag #truesleep:worker_mobs. Por padrão, truesleep:freeze_workers permanece em OFF (false), permitindo que aldeões caminhem tranquilamente até suas camas ou postos de trabalho.
🌾 Envelhecimento Biológico das Fazendas
Mesmo com a IA de locomoção paralisada, o relógio biológico interno dos animais continua progredindo pelo BiologicalStasisHelper:
1. Crescimento de Filhotes e Intervalo de Reprodução
Filhotes de vacas, ovelhas, porcos, galinhas e lobos amadurecem durante a noite:
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. Temporizadores de Ovos de Galinhas
Os temporizadores de botar ovos diminuem por strideTicks, permitindo que fazendas de ovos operem normalmente: $$\text{eggTime} = \max(1, \text{eggTime} - \text{strideTicks})$$
3. Crescimento de Lã em Ovelhas (Simulação de Pastoreio)
Ovelhas tosquiadas precisam pastar na grama para regenerar a lã. Na estase, o True Sleep simula o pastoreio matematicamente:
$$\text{grazeChance} = \min\left(1.0, \frac{\text{strideTicks}}{1000.0}\right)$$
Se uma ovelha tosquiada estiver sobre um minecraft:grass_block, ela terá uma chance $\text{grazeChance}$ por passo de transformar o bloco em minecraft:dirt e restaurar sua lã (sheep.setSheared(false)).
🧪 Progressão de Efeitos de Poções
Efeitos de poções ativos em entidades vivas progridem com exatidão durante o sono:
- Bônus positivos (Força, Regeneração) e negativos (Veneno, Wither) têm sua duração diminuída por
strideTicks. - O True Sleep utiliza duck typing (
MobEffectInstanceExtensions) para garantir que efeitos ocultos encadeados expirem sem travar o jogo.
🎛️ Regras de Jogo Reguladoras (GameRules)
truesleep:freeze_mobs(Padrão:true): Pausa o movimento de criaturas hostis e ambientes.truesleep:freeze_workers(Padrão:false): Pausa aldeões e allays.truesleep:biological_aging(Padrão:true): Habilita crescimento de filhotes, ovos e lã.truesleep:unfreeze_<namespace>_<path>: Regra individual de descongelação para qualquer entidade.
