COWMODSКаталог модов
[AN]Adaptive Nemesis

ВЕРСИИ (23)

release

[AN]Adaptive Nemesis 1.0.18

1.0.18
25 окт. 2026 г.115Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <h1> <span style="color: #8B5CF6; text-shadow: 0 0 30px #8B5CF6, 0 0 60px rgba(139,92,246,0.2);">⚖️ Trial of the Nemesis · Walking on Water ⚖️</span> <span style="color: #F59E0B; font-size: 0.5em; display: block; margin-top: 6px;">v1.0.18 — The Script Finally Wakes, and the Nemesis Walks Upon Water</span> </h1> <p align="center"> <img src="https://img.shields.io/badge/🎯_KubeJS_Example_Script-Fixed-8B5CF6?style=flat-square" alt="KubeJS Example Script Fixed"> <img src="https://img.shields.io/badge/❄️_Invasion_Wading-Frost_Walker_Aid-10B981?style=flat-square" alt="Invasion Wading Frost Walker Aid"> <img src="https://img.shields.io/badge/💡_Nemesis_Glow-Configurable-EF4444?style=flat-square" alt="Nemesis Glow Configurable"> </p> <br> <p><i>"First, we see which promises were never kept."</i></p> <p><i>"Then, we make every step land on solid ground."</i></p> <p><i>"Finally, we return the light to those who should decide it."</i></p> </div> --- <div align="center"> <h2>📖 This Update's Contents</h2> </div> --- ## 🎯 I · The Script Finally Wakes > *The command example shipped with the mod had never successfully loaded—not once since the day it was written.* > > *Every `/reload`, it left a vague error in the console, then fell silent. It was built upon an interface that was never implemented—the global binding it called did not exist, and the way it registered commands was a signature that was never real. The line the error pointed to was merely where the bad nesting landed, not where the problem began.* > > *Now, it has been rewritten in full.* - **Script Rewritten** — The example script now uses the correct syntax, explicitly loads its parameter types, registers commands in the standard manner, and forwards requests to the mod's own native command. - **Two Example Commands** — A quick trigger with default parameters, and an advanced trigger with configurable wave count and difficulty multiplier. Both require operator permission. - **Ready to Use** — Drop it into the KubeJS script directory and it loads. No further edits required. > *The script has woken. It can finally say what it always meant to say.* --- ## ❄️ II · Walking on Water > *Invading enemies once feared the water.* > > *The aid of Frost Walker applied only at the moment of spawning—if an enemy happened to spawn on the surface of water, it would wear boots and spread a layer of frosted ice beneath its feet. But if it began on land and met water along the way, there was no aid at all. It fell in, sank, and was gone.* > > *That gap existed in both the old and new versions. Now it has been closed.* - **Sustained Wading Aid** — While an invasion is active, the mod periodically scans all spawned invasion enemies and identifies those whose bodies are in water or whose feet rest on water. - **Frost Walker Boots Applied** — If the enemy's feet lack a Frost Walker enchantment, boots are provided. If the enchantment is already present, it is skipped, so your carefully configured gear is never overwritten. - **Layer-by-Layer Freezing** — The water directly beneath the enemy's feet is frozen into frosted ice. Only that layer is frozen—the cell containing the enemy's body is left untouched, preventing them from being trapped inside a solid block. - **Deep Water Self-Support** — In deep water, the enemy sinks layer by layer and freezes layer by layer, eventually standing atop a pillar of ice and regaining solid footing. From there, Frost Walker extends the ice on its own. - **Terrain Heals Itself** — Frosted ice melts naturally back into water. The world is not permanently altered. > *The enemy no longer sinks. It walks upon ice, step by step, toward you.* --- ## 💡 III · The Nemesis's Light, Now Optional > *A nemesis spawned with a glowing effect, standing out sharply in the dark.* > > *That light was once hardcoded, subject to no configuration at all. If you wanted it gone, you had to edit the code.* > > *Now, it is a switch.* - **New Configuration Option** — `enableNemesisGlow`, enabled by default, with a plain comment: "Whether the nemesis carries its own glowing buff." - **Both Spawn Paths Synchronized** — Whether a nemesis is converted naturally or manually, its glow is now controlled by this single switch. - **Off Means No Light** — When disabled, no glowing effect is applied when a nemesis spawns. > *Light should be yours to grant, not imposed upon you.* --- <div align="center"> <h2>📋 Update Overview</h2> </div> ```diff + 🎯 KubeJS command example script fully rewritten; it finally loads correctly + 🎯 Two example commands provided: default and custom invasion triggers + ❄️ Invasion enemies now receive sustained Frost Walker aid while wading + ❄️ In deep water, enemies freeze layer by layer and regain solid footing + ❄️ Frosted ice melts naturally; terrain is not permanently altered + 💡 New nemesis glow configuration switch (enabled by default) + 💡 Both natural and manual conversion paths now respect the switch - 🎯 The old example script built on an interface that never existed - ❄️ The gap where enemies sank on contact with water, with no aid en route - 💡 The hardcoded nemesis glow that could not be turned off ``` --- <div align="center"> <p><strong>⚖️ The script wakes. The enemy wades. The nemesis's light is yours to decide. ⚖️</strong></p> <blockquote> <p><em>"Every example shipped with a mod should actually work."</em><br> <em>"Every stretch of road without aid is a promise left unkept."</em><br> <em>"And every light should be yours to kindle, or to let fade."</em></p> </blockquote> <p> <a href="https://github.com/LOVE-U987/Adaptive-Nemesis"> <img src="https://img.shields.io/badge/⚖️_Adaptive_Nemesis_GitHub-181717?style=flat-square&logo=github&logoColor=white" alt="GitHub"> </a> </p> <p><strong>🌙 v1.0.18 — The nemesis walks on ice. May you fight well. 🌙</strong></p> </div>
release

[AN]Adaptive Nemesis 1.0.18

1.0.18
25 окт. 2026 г.58Minecraft: 1.20.1forge
Скачать
Что нового
<div align="center"> <h1> <span style="color: #8B5CF6; text-shadow: 0 0 30px #8B5CF6, 0 0 60px rgba(139,92,246,0.2);">⚖️ Trial of the Nemesis · Walking on Water ⚖️</span> <span style="color: #F59E0B; font-size: 0.5em; display: block; margin-top: 6px;">v1.0.18 — The Script Finally Wakes, and the Nemesis Walks Upon Water</span> </h1> <p align="center"> <img src="https://img.shields.io/badge/🎯_KubeJS_Example_Script-Fixed-8B5CF6?style=flat-square" alt="KubeJS Example Script Fixed"> <img src="https://img.shields.io/badge/❄️_Invasion_Wading-Frost_Walker_Aid-10B981?style=flat-square" alt="Invasion Wading Frost Walker Aid"> <img src="https://img.shields.io/badge/💡_Nemesis_Glow-Configurable-EF4444?style=flat-square" alt="Nemesis Glow Configurable"> </p> <br> <p><i>"First, we see which promises were never kept."</i></p> <p><i>"Then, we make every step land on solid ground."</i></p> <p><i>"Finally, we return the light to those who should decide it."</i></p> </div> --- <div align="center"> <h2>📖 This Update's Contents</h2> </div> --- ## 🎯 I · The Script Finally Wakes > *The command example shipped with the mod had never successfully loaded—not once since the day it was written.* > > *Every `/reload`, it left a vague error in the console, then fell silent. It was built upon an interface that was never implemented—the global binding it called did not exist, and the way it registered commands was a signature that was never real. The line the error pointed to was merely where the bad nesting landed, not where the problem began.* > > *Now, it has been rewritten in full.* - **Script Rewritten** — The example script now uses the correct syntax, explicitly loads its parameter types, registers commands in the standard manner, and forwards requests to the mod's own native command. - **Two Example Commands** — A quick trigger with default parameters, and an advanced trigger with configurable wave count and difficulty multiplier. Both require operator permission. - **Ready to Use** — Drop it into the KubeJS script directory and it loads. No further edits required. > *The script has woken. It can finally say what it always meant to say.* --- ## ❄️ II · Walking on Water > *Invading enemies once feared the water.* > > *The aid of Frost Walker applied only at the moment of spawning—if an enemy happened to spawn on the surface of water, it would wear boots and spread a layer of frosted ice beneath its feet. But if it began on land and met water along the way, there was no aid at all. It fell in, sank, and was gone.* > > *That gap existed in both the old and new versions. Now it has been closed.* - **Sustained Wading Aid** — While an invasion is active, the mod periodically scans all spawned invasion enemies and identifies those whose bodies are in water or whose feet rest on water. - **Frost Walker Boots Applied** — If the enemy's feet lack a Frost Walker enchantment, boots are provided. If the enchantment is already present, it is skipped, so your carefully configured gear is never overwritten. - **Layer-by-Layer Freezing** — The water directly beneath the enemy's feet is frozen into frosted ice. Only that layer is frozen—the cell containing the enemy's body is left untouched, preventing them from being trapped inside a solid block. - **Deep Water Self-Support** — In deep water, the enemy sinks layer by layer and freezes layer by layer, eventually standing atop a pillar of ice and regaining solid footing. From there, Frost Walker extends the ice on its own. - **Terrain Heals Itself** — Frosted ice melts naturally back into water. The world is not permanently altered. > *The enemy no longer sinks. It walks upon ice, step by step, toward you.* --- ## 💡 III · The Nemesis's Light, Now Optional > *A nemesis spawned with a glowing effect, standing out sharply in the dark.* > > *That light was once hardcoded, subject to no configuration at all. If you wanted it gone, you had to edit the code.* > > *Now, it is a switch.* - **New Configuration Option** — `enableNemesisGlow`, enabled by default, with a plain comment: "Whether the nemesis carries its own glowing buff." - **Both Spawn Paths Synchronized** — Whether a nemesis is converted naturally or manually, its glow is now controlled by this single switch. - **Off Means No Light** — When disabled, no glowing effect is applied when a nemesis spawns. > *Light should be yours to grant, not imposed upon you.* --- <div align="center"> <h2>📋 Update Overview</h2> </div> ```diff + 🎯 KubeJS command example script fully rewritten; it finally loads correctly + 🎯 Two example commands provided: default and custom invasion triggers + ❄️ Invasion enemies now receive sustained Frost Walker aid while wading + ❄️ In deep water, enemies freeze layer by layer and regain solid footing + ❄️ Frosted ice melts naturally; terrain is not permanently altered + 💡 New nemesis glow configuration switch (enabled by default) + 💡 Both natural and manual conversion paths now respect the switch - 🎯 The old example script built on an interface that never existed - ❄️ The gap where enemies sank on contact with water, with no aid en route - 💡 The hardcoded nemesis glow that could not be turned off ``` --- <div align="center"> <p><strong>⚖️ The script wakes. The enemy wades. The nemesis's light is yours to decide. ⚖️</strong></p> <blockquote> <p><em>"Every example shipped with a mod should actually work."</em><br> <em>"Every stretch of road without aid is a promise left unkept."</em><br> <em>"And every light should be yours to kindle, or to let fade."</em></p> </blockquote> <p> <a href="https://github.com/LOVE-U987/Adaptive-Nemesis"> <img src="https://img.shields.io/badge/⚖️_Adaptive_Nemesis_GitHub-181717?style=flat-square&logo=github&logoColor=white" alt="GitHub"> </a> </p> <p><strong>🌙 v1.0.18 — The nemesis walks on ice. May you fight well. 🌙</strong></p> </div>
alpha

[AN]Adaptive Nemesis 1.0.17

1.0.17
1 окт. 2026 г.191Minecraft: 1.20.1forge
Скачать
alpha

[AN]Adaptive Nemesis 1.0.17

1.0.17
1 окт. 2026 г.352Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <h1> <span style="color: #8B5CF6; text-shadow: 0 0 30px #8B5CF6, 0 0 60px rgba(139,92,246,0.2);">⚖️ Trial of the Nemesis · Reforging the Balance ⚖️</span> <span style="color: #F59E0B; font-size: 0.5em; display: block; margin-top: 6px;">v1.0.17 — Health bars no longer lie, and nemeses finally leave treasure behind</span> </h1> <p align="center"> <img src="https://img.shields.io/badge/🐉_Ender_Dragon_Health_Bar-Fixed-8B5CF6?style=for-the-badge&logoColor=white" alt="Ender Dragon Health Bar Fixed"> <img src="https://img.shields.io/badge/💥_Boss_Multipliers-No_Longer_Doubled-EF4444?style=for-the-badge&logoColor=white" alt="Boss Multipliers No Longer Doubled"> <img src="https://img.shields.io/badge/🎁_Nemesis_Drops-New_Feature-10B981?style=for-the-badge&logoColor=white" alt="Nemesis Drops New Feature"> </p> <br> <p><i>"First, we see the imbalance."</i></p> <p><i>"Then, we correct the scales."</i></p> <p><i>"Finally, we make the nemesis worthy of its name."</i></p> </div> --- <div align="center"> <h2>📖 This Update's Contents</h2> </div> --- ## 🐉 1 · The Ender Dragon's Health Bar Finally Stops Lying > *Have you ever encountered this:* > > *An Ender Dragon with a Champion modifier descends in all its glory, yet its health bar is pitifully short—less than a tenth of what it should be. You strike it once, and it falls. Not because it was weak, but because its heart was empty from the very beginning.* > > *Now, this problem has been completely fixed.* **🐉 What we did:** - **Health Bar Correction**: Bosses now restore their health based on their **true maximum health**, rather than the "base value" before third-party mod bonuses. The higher the Champion modifier stacks, the higher the health bar will be, eliminating the awkward scenario of "a strong dragon with very little health." - **Safeguard**: A fallback has been added—even if adaptive scaling fails to trigger for some reason (no players nearby, entity blacklisted, scaling timed out), the Boss will automatically refill its health to the true maximum on the next tick. The imbalance will no longer be written into the save. > *The dragon has a heart again. This time, the health bar tells the truth.* --- ## 💥 2 · Boss Multipliers Are No Longer Secretly Doubled > *Some bosses were meant to be strong.* > > *But too strong is not a surprise—it's a shock.* > > *Previously, the health and damage of certain bosses (such as the Ender Dragon and the Wither) were **stacked twice with the same multiplier**—not by design, but due to a small mistake in the order of reading values. The result: you thought you were facing a buffed boss, but in reality, you were facing a moving wall.* **💥 What we did:** - Corrected the reading order for "original values." It now checks in sequence: 1. Original values recorded in old saves (compatible with legacy saves) 2. True original values recorded before scaling 3. Default attributes for the entity type 4. Current base value as a fallback - Result: **Bosses are only buffed once**, and their values return to the level intended by design. > *The two ends of the scale have finally returned to their rightful places.* --- ## 🎁 3 · When a Nemesis Falls, It Leaves Behind Its Own Treasure > *You hunt a nemesis not to watch it fall.* > > *But for what it leaves behind after it falls.* > > *Starting with this version, when a nemesis dies, it can additionally drop loot tables you've configured—on top of vanilla drops, giving you a share of the "nemesis's legacy."* **🎁 How to use:** - **Ready to use out of the box**: Set `nemesisLootEnabled` to `true` in the config to experience the built-in example drops (diamonds, emeralds, golden apples, enchanted golden apples). - **Custom drops**: Advanced players can: - Write `nemesisLootTables` in the config, separating multiple loot table IDs with commas; - Or write a data pack directly, defining their own nemesis loot tables in `data/<namespace>/nemesis_loot/<name>.json`. - **Hot reload support**: After modifying the data pack, press F3+T to apply changes immediately without restarting the game. - **Safety fallback**: If one table errors, it won't affect the others; you won't lose all drops due to a single configuration mistake. **🎁 Other details:** - Nemesis identification is based on the existing `NEMESIS_TAG`, no additional configuration required. - TOML config and data pack config are merged and both take effect. - A built-in example data pack is located under `examples/datapack/` for direct reference. > *The nemesis's legacy is now defined by you.* --- <div align="center"> <h2>📋 Update Overview</h2> </div> ```diff + 🐉 Ender Dragon (with Champion modifier) health bar anomaly fixed + 🐉 Boss health now refills to true maximum health + 🐉 Added delayed health refill fallback; no imbalance even if scaling is skipped + 💥 Boss health/damage multipliers no longer stacked twice + 🎁 Nemesis drops configured loot tables on death (new feature) + 🎁 Supports TOML config + data pack + hot reload + 🎁 Built-in example loot tables, ready to experience out of the box - 🐉 Ender Dragon with less than 10% health bar - 💥 Secretly doubled Boss multipliers - 🎁 The emptiness of "Is that all?" after a nemesis falls ``` --- <div align="center"> <p><strong>⚖️ The scales are balanced, the nemesis is forged. ⚖️</strong></p> <blockquote> <p><em>"Every imbalance is a reminder."</em><br> <em>"Every fix is to bring battle back to what it should be."</em><br> <em>"May your nemesis be strong enough, and worthy enough."</em></p> </blockquote> <p> <a href="https://github.com/LOVE-U987/Adaptive-Nemesis"> <img src="https://img.shields.io/badge/⚖️_Adaptive_Nemesis_GitHub-181717?style=for-the-badge&logo=github&logoColor=white" alt="GitHub"> </a> </p> <p><em>✨ To every player who hunts their nemesis.</em><br></p> </div>
release

[AN]Adaptive Nemesis 1.0.16

1.0.16
30 авг. 2026 г.1,3 тыс.Minecraft: 1.21.1neoforge
Скачать
Что нового
# 📜 Adaptive Nemesis Changelog --- ## v1.0.16 (2026-08-30) 🎯 ### ⏳ Feature: Nemesis Auto-Despawn - **`NemesisConfig.java`**: Added 3 new config options: - `ENABLE_NEMESIS_AUTO_DISAPPEAR` — toggle on/off - `NEMESIS_AUTO_DISAPPEAR_SECONDS` — lifetime (default: 300s / 5 min) - `NEMESIS_DISAPPEAR_MESSAGE` — despawn notification message - **`NemesisSystem.java`**: Added `nemesisSpawnTimes` Map to track each nemesis spawn timestamp. New `onEntityTick()` periodically polls and auto-`discard()`s entities past their lifetime. - **`NemesisSystem.java`**: Records spawn time in both `convertToNemesis()` and `convertToNemesisManual()` — command-spawned nemeses are equally controlled. - **`zh_cn.json` / `en_us.json`**: New translation key `adaptive_nemesis.nemesis.disappear` - 🇨🇳 *"%s 已经消失了..."* - 🇬🇧 *"%s has disappeared..."* - **Effect**: Nemeses (natural spawn or command-summoned) automatically vanish after the configured duration, preventing performance bloat and gameplay imbalance from permanent stragglers. --- ### 🔧 Fix: Config Type Switched to `SERVER` — Multiplayer Sync - **`AdaptiveNemesisMod.java`**: Config registration changed from `COMMON` → `SERVER`. Server becomes config authority; NeoForge auto-syncs to all clients. - **`Config.java`**: Added `isServerSide()` environment check. `saveToFile()` now has server-side protection — multiplayer clients no longer attempt to write read-only configs. - **`AdaptiveNemesisConfigScreen.java`**: Added `readOnly` field. Multiplayer client controls are greyed out with a read-only hint to prevent accidental edits. - **`AdaptiveNemesisConfigScreen.java`**: `markChanged()` now has read-only guard — multiplayer clients are blocked from saving. - **`en_us.json` / `zh_cn.json`**: New localization key `readonly_hint` for the read-only tooltip. - ⚠️ **Note**: Config file renamed from `adaptive_nemesis-common.toml` → `adaptive_nemesis-server.toml`. Existing configs need manual migration. --- ### 💥 Fix: Enchantment Scaling Causing Save Crashes (Reconnect Failure) - **`EnchantmentScalingHandler.java`**: Resets enchantment caches on server shutdown (`resetCaches()` method) — prevents `Holder.Reference<Enchantment>` stale references from singleton pattern. - **`EnchantmentScalingHandler.java`**: Validates Holder validity in `applyCoreEnchantments()` with double-check on `ResourceKey` existence in server registry. - **`EnchantmentScalingHandler.java`**: Added `holder.isBound()` validation in `applyModCompatibleEnchantments()` to prevent network encoding failures. - **`InvasionSystem.java`**: Added Holder validation in `applyFrostWalkerBoots()` to prevent Frost Walker enchantment from causing network encoding exceptions. - **`ModEventHandler.java`**: Calls `EnchantmentScalingHandler.resetCaches()` on `ServerStoppingEvent`, ensuring stale references are purged on shutdown. - **`EnchantmentScalingHandler.java`**: Fixed `collectCompatibleEnchantments()` `Holder.unwrapKey()` API call. --- ### 🔄 Fix: Invasion Event Infinite Loop (Spawning More & More) - **`InvasionSystem.java`**: Added `playerInvasionCooldowns` Map tracking per-player cooldown (UUID → cooldown expiry timestamp). - **`InvasionSystem.java`**: Added cooldown check in `incrementUndeadKillCount()` — shows remaining time hint during cooldown period. - **`InvasionSystem.java`**: Auto-sets cooldown on invasion trigger (default: 15 min, configurable). - **`InvasionSystem.java`**: Clears cooldown in `handleInvasionVictory()`, allowing the next invasion to trigger normally. - **`zh_cn.json` / `en_us.json`**: New cooldown warning translations: - `cooldown_warning` - `cooldown_warning_minutes` - `cooldown_warning_seconds` - **`InvasionConfig.java`**: Existing `invasionCooldownMinutes` config (default: 15 min) — no new config needed. ---
release

[AN]Adaptive Nemesis 1.0.15

1.0.15
9 авг. 2026 г.343Minecraft: 1.21.1neoforge
Скачать
Что нового
# Adaptive Nemesis Changelog ⚔️🐉 --- ## v1.0.15 (2026-08-09) ### 🧙 Fixed: Iron's Spells spell resist / power scaling going haywire (non-Nemesis mobs were getting buffed too) - **Issue:** Every single mob in the world was getting spell resistance and spell power boosts — not just your personal Nemesis. This meant mages with multi-hit, low-cooldown, or summon-heavy builds saw their damage get chipped away mob-by-mob, even against random trash. Not fun. 😤 - **Fix — `IronsSpellsCompat.java`:** - `maxSpellPowerMultiplier` and `maxSpellResistMultiplier` were **dead configs** — the code never actually read them. Now `applyMobBuffs` properly clamps spell strength / casting resource multipliers to `maxSpellPowerMultiplier` (default 4.0) and spell resist multipliers to `maxSpellResistMultiplier` (default 3.0). Tweak `[enemyBonusCaps]` in `adaptive_nemesis-common.toml` and it actually does something! 🎛️ - Added **Nemesis-only check** in `applyMobBuffs` — spell resist / power / mana bonuses now only apply to mobs carrying the Nemesis NBT tag (`NemesisSystem.NEMESIS_TAG`). Regular mobs are left alone. Your fireball barrage can finally breathe against hordes. 🔥 - **New tag system — `NemesisSystem.java`:** - New constant `NEMESIS_TAG`. `convertToNemesis` / `convertToNemesisManual` now stamp mobs with this tag on transformation. - **Command fix — `SummonNemesisCommand.java`:** - `/an nemesis` spawned Nemeses also get the tag now. Consistency! 🏷️ - **Registration order fix — `AdaptiveNemesisMod.java`:** - Nemesis spawn system (`NemesisSystem`) now registers **before** the enemy scaling handler. This guarantees that when `EntityJoinLevelEvent` fires, the Nemesis conversion (tag stamping) happens **before** adaptive scaling kicks in. Previously it was registered in `commonSetup` — *after* `EnemyScalingHandler` — so Nemeses got treated as regular mobs and missed their spell bonuses. Order matters! ⏳ - **Smarter player assessment — `IronsSpellsCompat.java`:** - `getPlayerSpellStrength` now uses **max mana** (`AttributeRegistry.MAX_MANA`) instead of **current mana** to evaluate player spell power. No more random power dips because you just cast a big spell and your mana bar dropped — scaling stays stable. 📊 --- ## v1.0.15 (2026-08-09) ### 🖥️ Fixed: Config screen scroll animation stuttering & text flickering - **Issue:** Scrolling through the config menu felt like a slideshow — text jittered at ~20fps and flickered badly on lower-end setups. - **Fix — `AdaptiveNemesisConfigScreen.java`:** - Replaced janky tick-by-tick scroll jumps with proper `Mth.lerp(partialTick, lastScroll, currentScroll)` interpolation. Smooth 60fps buttery scrolling. 🧈 - `tick()` now records last-tick scroll position and snaps to target when close, killing animation tail wobble. - Cached translated `Component` objects for all 130+ config entries — no more creating translation objects every single frame. Less CPU burn, more frames. ⚡ - Scrollbar thumb position now syncs to the interpolated scroll value instead of raw tick position. The whole scroll experience just *flows* now. 🌊 --- *May your Nemesis fear your spells — and your config screen scroll smoothly.* 🏆✨
release

[AN]Adaptive Nemesis 1.0.14

1.0.14
7 авг. 2026 г.57Minecraft: 1.21.1neoforge
Скачать
Что нового
## Community feedback: Add a feature to disable certain parts and a blacklist for weapon equipment, which can be modified in the configuration interface
release

[AN]Adaptive Nemesis 1.0.13hotfix

1.0.13hotfix
6 авг. 2026 г.35Minecraft: 1.21.1neoforge
Скачать
Что нового
## Fix issue: InvasionCommand directly passes the custom object InvasionType to Component.translatable(...), resulting in serialization failure when the client receives the system_chat data packet, disconnection, and return to the title screen
release

[AN]Adaptive Nemesis 1.0.13

1.0.13
5 авг. 2026 г.43Minecraft: 1.21.1neoforge
Скачать
Что нового
## A small patch has been released to fix the issue with the /an invasion command in version 1.0.12
alpha

[AN]Adaptive Nemesis 1.0.12-forge

1.0.12-forge
3 авг. 2026 г.140Minecraft: 1.20.1forge
Скачать
release

[AN]Adaptive Nemesis 1.0.12

1.0.12
26 июл. 2026 г.100Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <br><br> <h1> 🌐 <span style="color: #e65100; text-shadow: 0 0 20px #e65100;">[Adaptive Nemesis]</span> <span style="color: #888888;">v1.0.12</span> 🌐 </h1> <p><b><span style="color: #4ECDC4;">THE WORLD SPEAKS YOUR LANGUAGE NOW.</span></b></p> <p><i>And it has a lot more to say.</i></p> <br> <img src="https://img.shields.io/badge/🌐_FULL_I18N-4ECDC4?style=for-the-badge&logo=translate&logoColor=white"> <img src="https://img.shields.io/badge/👹_NEMESIS_SAFE-9B59B6?style=for-the-badge&logo=shield&logoColor=white"> <img src="https://img.shields.io/badge/🏰_DATAPACK_POWER-FF6B6B?style=for-the-badge&logo=package&logoColor=white"> <img src="https://img.shields.io/badge/🔗_KUBEJS_EVENTS-45B7D1?style=for-the-badge&logo=code&logoColor=white"> </div> ## ✨ NEW SYSTEMS & ENHANCEMENTS </div> --- ### 🌐 FULL INTERNATIONALIZATION (I18N) REFACTOR <div align="center"> | Before | After | What Changed | |:---:|:---|:---| | `Component.literal("亡灵军团正在逼近...")` | `Component.translatable("adaptive_nemesis.invasion.approaching")` | **Every** user-facing string is now a translation key | | Hardcoded Chinese | Language files | `en_us.json` + `zh_cn.json` — add your own! | | `MELEE("近战")` | `MELEE("adaptive_nemesis.combat_style.melee")` | Combat styles, warnings, broadcasts — all localized | </div> **New Translation Keys (10+ added):** <div align="center"> | Key | English | 中文 | When You See It | |:---:|:---|:---|:---| | `invasion.approaching` | *Undead legion approaching...* | 亡灵军团正在逼近... | The storm begins | | `invasion.wave_cleared` | *Wave %s cleared!* | 第 %s 波已清除! | You survived a wave | | `invasion.defeated` | *Undead legion defeated!* | 亡灵军团已被击败! | Victory | | `nemesis.appearance_warning` | *⚠ Nemesis appeared!* | ⚠ 宿敌出现! | Something bad just got worse | | `combat_style.melee` | *Melee* | 近战 | Nemesis archetype display | </div> > 🌍 *"I switched my client to English. The invasion warned me in English. The Nemesis cursed me in English. It felt personal."* --- ### 👹 NEMESIS SYSTEM — CRASH-PROOF & SMARTER **The Problem:** *Some modded mobs don't have attack damage. Nemesis tried to buff it. Game crashed. Everyone sad.* **The Solution:** *Check first. Buff second. Live to fight another day.* <div align="center"> | Feature | What It Does | Default | |:---:|:---|:---:| | `NEMESIS_REQUIRE_ATTACK_DAMAGE` | Only convert mobs that can actually fight | ✅ `true` | | **Null-Proof Attribute Checks** | `getAttribute()` → null check → apply or skip | Always on | | **Pacifist Protection** | Passive mobs, decorative entities, weird modded things — they stay normal | Always on | </div> **What Gets Checked Now:** - ❤️ Max Health — *exists? buff it. missing? skip gracefully.* - ⚔️ Attack Damage — *exists? buff it. missing? skip gracefully.* - 🛡️ Armor — *exists? buff it. missing? skip gracefully.* - ⚡ Movement Speed — *exists? buff it. missing? skip gracefully.* > 🛡️ *"My modded flamingo no longer crashes the game when it tries to become a Berserk Butcher. It just stays a flamingo. Thank you."* --- ### 🏰 INVASION SYSTEM — DATAPACK SUPERPOWERS **Before:** *JSON defined waves and rewards. That was it.* **Now:** *JSON defines EVERYTHING. The mob. The effects. The name. The frost under their feet.* <div align="center"> | New Field | Type | What It Does | Example | |:---:|:---:|:---|:---| | `effects` | `List` | Potion effects on spawn | Fire Resistance, Speed, Invisibility | | `glowing` | `boolean` | Mob glows through walls | `true` — you can't hide | | `frostWalker` | `boolean` | Leaves ice trails | `true` — the ground freezes behind them | | `customNameKey` | `String` | Translation key for custom name | `"adaptive_nemesis.invasion.custom_blaze"` | | `healthMultiplier` | `double` | HP multiplier | `1.5` — tankier | | `damageMultiplier` | `double` | ATK multiplier | `2.0` — ouch | | `equipmentLootTable` | `ResourceLocation` | Custom gear from loot table | `"minecraft:chests/nether_bridge"` | </div> **Frost Walker Implementation:** - Auto-equips `iron_boots` with `frost_walker` enchantment - Drop chance: `0.0F` — *you don't get free boots, sorry* > ❄️ *"The skeletons walked across the lake. The lake froze. I did not walk across the lake."* --- ### 🔗 KUBEJS API — MORE EVENTS, MORE CONTROL **New Events Added:** <div align="center"> | Event | Fires When | What You Can Do | |:---:|:---|:---| | `adaptive_nemesis.world_stage_change` | World stage advances | Modify `stageMultiplier`, react to progression | | `adaptive_nemesis.invasion.start` | Invasion begins | Modify `totalWaves`, `difficultyMultiplier`, or **cancel it** | | `adaptive_nemesis.invasion.wave_start` | Each wave starts | React to wave number, scale dynamically | | `adaptive_nemesis.invasion.end` | Invasion concludes | Inspect `victory`, `rewards`, `wavesCompleted` | </div> **KubeJS Script Examples:** ```js // Double the waves when world reaches stage 3 onEvent('adaptive_nemesis.invasion.start', event => { if (WorldStageManager.getStage() >= 3) { event.totalWaves *= 2; event.difficultyMultiplier *= 1.5; } }); // Bonus rewards on victory onEvent('adaptive_nemesis.invasion.end', event => { if (event.victory && event.wavesCompleted >= 6) { event.player.give('minecraft:diamond', 5); } }); ``` --- <div align="center"> ## 🔧 QUALITY OF LIFE </div> <div align="center"> | Change | Why It Matters | |:---|:---| | 🧹 **Cleaned Language Files** | Removed empty lines, optimized JSON format | | 🛡️ **Null-Safe Everything** | Nemesis system now gracefully handles weird modded entities | </div> --- <div align="center"> ## 📝 PATCH NOTES AT A GLANCE </div> --- ```diff + 🌐 FULL I18N REFACTOR (All strings → translation keys) + 🌍 en_us.json + zh_cn.json (Add your own language!) + 👹 NEMESIS_REQUIRE_ATTACK_DAMAGE config (Skip pacifist mobs) + 🛡️ Null-safe attribute checks (No more crashes on weird entities) + 🏰 Datapack: effects, glowing, frostWalker, customNameKey + 🏰 Datapack: healthMultiplier, damageMultiplier, equipmentLootTable + 🔗 KubeJS: World Stage Change event + 🔗 KubeJS: Invasion Start / Wave Start / End events + 🔗 KubeJS: InvasionStartResult (modify waves & difficulty) - 🗑️ Hardcoded Chinese text (RIP, you served well) - 🐛 Nemesis crash on attribute-less mobs - 🐛 Frost walker boots dropping from invasion mobs ! ⚠️ NEMESIS_REQUIRE_ATTACK_DAMAGE defaults to true ! (May skip some mobs that previously became Nemesis) ! ⚠️ Custom datapack invasions need updated JSON schema ``` --- <div align="center"> ## 🎯 CONFIGURABLE. ALWAYS. </div> --- > 💡 **Heads up:** Don't like the attack damage check? Flip `NEMESIS_REQUIRE_ATTACK_DAMAGE` to `false`. Want your flamingo to become a god? Your call. > > Want to write a datapack invasion where every mob is glowing, frost-walking, and named "Dave"? **The JSON supports it. We won't judge.** --- <div align="center"> [![CurseForge](https://img.shields.io/badge/CurseForge-Download-F16436?style=for-the-badge&logo=curseforge&logoColor=white)](https://curseforge.com) [![Modrinth](https://img.shields.io/badge/Modrinth-Download-00AF5C?style=for-the-badge&logo=modrinth&logoColor=white)](https://modrinth.com/mod/anadaptive-nemesis) [![GitHub](https://img.shields.io/badge/GitHub-Source-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis/issues) <br><br>
release

[AN]Adaptive Nemesis 1.0.11

1.0.11
18 июл. 2026 г.103Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <br><br> <h1> ⚔️ <span style="color: #e65100; text-shadow: 0 0 20px #e65100;">[Adaptive Nemesis]</span> <span style="color: #888888;">v1.0.11</span> ⚔️ </h1> <p><b><span style="color: #ff6b6b;">THE WORLD ADAPTS TO YOU.</span></b></p> <p><i>Are you ready to adapt back?</i></p> <br> <img src="https://img.shields.io/badge/🏰_INVASION_EVENTS-FF6B6B?style=for-the-badge&logo=fire&logoColor=white"> <img src="https://img.shields.io/badge/👹_NEMESIS_SYSTEM-9B59B6?style=for-the-badge&logo=skull&logoColor=white"> <img src="https://img.shields.io/badge/🏷️_BOSS_ID_REWORK-4ECDC4?style=for-the-badge&logo=tag&logoColor=white"> <img src="https://img.shields.io/badge/⚔️_EQUIPMENT_OVERHAUL-45B7D1?style=for-the-badge&logo=sword&logoColor=white"> </div> --- <div align="center"> ## 🎬 CINEMATIC TRAILER </div> > *The undead no longer wander aimlessly.* > > *They are gathering. They are watching. They are adapting.* > > *Among the common mobs, souls of legend stir — waiting for the worthy.* > > *And when the storm comes... it won't be random.* > > *It will be **personal**.* --- <div align="center"> ## ✨ NEW SYSTEMS </div> --- ### 🏰 INVASION EVENT SYSTEM <div align="center"> | Feature | Description | How to Trigger | |:---:|:---|:---| | 🌩️ **Natural Spawn** | Kill enough surface undead. The world takes notice. | Play the game. Seriously. | | ⌨️ **Command** | `/an invasion trigger` — summon the storm at will. | Type it. Pray. | | 📝 **KubeJS API** | Script your own invasions. Be the puppet master. | `adaptiveNemesis.triggerUndeadInvasion(player)` | | 📦 **Datapack** | `data/adaptive_nemesis/invasions/*.json` — craft your apocalypse. | JSON + creativity | </div> **What You Get:** - 🌊 **1-6 Waves** of enemies from **North, South, East, West** - ⛈️ **Thunderstorm weather** when active — the sky itself joins the fight - 🏆 **Victory broadcast** to all warriors in the area — *you earned the bragging rights* > 💀 *"They came from all directions. The ground shook. And then... silence."* --- ### 👹 NEMESIS SPAWN SYSTEM <div align="center"> | Rarity | Chance | What Happens | |:---:|:---:|:---| | 💎 **1%** | `0.01` | A common mob **awakens**. Gains a title. Gains power. Gains a grudge. | </div> **The Nemesis Rises With:** - ❤️ **Boosted HP** — they don't go down easy - ⚔️ **Boosted ATK** — they hit like a truck - 🛡️ **Boosted Armor** — your iron sword weeps - ⚡ **Boosted Speed** — you can't outrun destiny - 🚫 **Knockback Resistance** — they don't flinch **Titles by Archetype:** <div align="center"> | Archetype | Prefix Pool | Suffix Pool | |:---:|:---|:---| | 🔴 **Melee** | `Berserk`, `Brutal`, `Bloodthirsty`, `Savage`, `Ruinous` | `Butcher`, `Slayer`, `King`, `Destroyer`, `Avenger` | | 🟢 **Ranged** | `Precise`, `Deadly`, `Swift`, `Sniper`, `Venomous` | `Hunter`, `Marksman`, `Stalker`, `Ravager` | | 🔵 **Magic** | `Mystic`, `Cursed`, `Arcane`, `Shadow`, `Blazing` | `Warlock`, `Hexer`, `Sorcerer`, `Reaper` | </div> > 🔥 *"I thought it was just a zombie. Then I saw the name:* ***Berserk Butcher*** *— in blood red. I ran."* --- <div align="center"> ## ⚔️ SYSTEM OVERHAUL </div> --- ### 🏷️ BOSS IDENTIFICATION — COMPLETELY REWORKED **The Problem:** *Your average zombie gets buffed by another mod. Suddenly it's treated like the Ender Dragon. Not cool.* **The Solution:** A **4-Tier Priority Chain** that actually thinks. <div align="center"> | Priority | Method | What It Does | |:---:|:---|:---| | 🥇 **#1** | **Tag-Based** *(NEW)* | Checks `minecraft:bosses` / `c:bosses`. Real bosses only. No imposters. | | 🥈 **#2** | Type-Based | Original logic. Still reliable. | | 🥉 **#3** | Name-Based | Now excludes Wither Skeletons. No more name confusion. | | 🏅 **#4** | Health Threshold | Uses **default attributes** — buffed mobs can't fake it anymore. | </div> > ✅ *Ender Dragon, Wither, Warden — always recognized.* > > ❌ *Buffed zombie with 500 HP — no longer a "boss". Just a very angry zombie.* --- ### ⚔️ INVASION EQUIPMENT — DYNAMIC DIFFICULTY **Old System:** *Wave 1 = leather. Wave 6 = diamond. Boring. Predictable. Broken.* **New System:** *The enemy scales to the players nearby. You bring endgame gear? They bring endgame pain.* <div align="center"> | Aspect | Before | After | |:---:|:---|:---| | **Armor Gen** | Hardcoded per wave | Unified `EnchantmentScalingHandler` | | **Difficulty** | Static multiplier | **Dynamic** — scans nearby player strength | | **Loot Control** | None | `disableEquipmentDrop` — wear it, don't drop it | </div> **The Formula:** ``` Nearby Player Avg Strength × Difficulty Multiplier × World Stage = FINAL GEAR POWER ``` > ⚡ *"I showed up in full Netherite. The skeletons showed up in enchanted Netherite. Fair's fair."* --- <div align="center"> ## 📊 ADAPTIVE DIFFICULTY 2.0 </div> --- ### 🕐 IDLE DECAY > *AFK at your mob farm? The world forgets you were scary.* - Inactive? Your difficulty multiplier **decays automatically** - No more gaming the system while you sleep ### ⚡ COMBAT EFFICIENCY ADJUSTMENT > *Glass cannon builds can't inflate difficulty forever.* - High damage + low taken damage? The system sees through it. - Efficiency below threshold = **difficulty reels back in** > 🧠 *"The system learned to read your TRUE skill. Not just your DPS."* --- <div align="center"> ## 🔧 QUALITY OF LIFE </div> --- <div align="center"> | Change | Why It Matters | |:---|:---| | 🐕 **Watchdog OFF by default** | Less background noise. Your CPU thanks you. | | 🎒 **Equipment Drop Toggle** | `disableEquipmentDrop` — mobs wear the gear, but it dies with them. No loot inflation. | | 📦 **v1.0.10 → v1.0.11** | The number went up. So did the quality. | </div> --- <div align="center"> ## 📝 PATCH NOTES AT A GLANCE </div> --- ```diff + 🏰 INVASION EVENT SYSTEM (Natural / Command / KubeJS / Datapack) + 👹 NEMESIS SPAWN SYSTEM (1% chance / Titles / Stat boosts) + 🏷️ TAG-BASED BOSS IDENTIFICATION (No more false bosses) + ⚔️ DYNAMIC DIFFICULTY EQUIPMENT (Scales to nearby players) + 🕐 IDLE DECAY (Anti-AFK cheese) + ⚡ COMBAT EFFICIENCY ADJUSTMENT (Anti-glass-cannon inflation) + 🎒 EQUIPMENT DROP DISABLE CONFIG - 🗑️ OLD WAVE-BASED ARMOR SYSTEM (RIP boring linear scaling) - 🐛 BOSS MISIDENTIFICATION OF BUFFED NORMAL MOBS ! ⚠️ Invasion difficulty fluctuates with nearby player strength ! ⚠️ Nemesis 1% spawn rate may feel frequent in large mob farms ``` --- <div align="center"> ## 🎯 CONFIGURABLE. ALWAYS. </div> --- > 💡 **Heads up:** Every new system — Invasions, Nemesis, Dynamic Difficulty — can be toggled **individually** in the config. > > Want invasions but no nemesis? **Done.** > > Want nemesis but static difficulty? **Done.** > > Want chaos? **Turn everything to 11. We won't judge.** --- <div align="center"> [![CurseForge](https://img.shields.io/badge/CurseForge-Download-F16436?style=for-the-badge&logo=curseforge&logoColor=white)](https://www.curseforge.com/minecraft/mc-mods/an-adaptive-nemesis) [![Modrinth](https://img.shields.io/badge/Modrinth-Download-00AF5C?style=for-the-badge&logo=modrinth&logoColor=white)](https://modrinth.com/mod/anadaptive-nemesis) [![GitHub](https://img.shields.io/badge/GitHub-Source-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis/issues) </a> <br><br> ## ⚔️ THE WORLD ADAPTS TO YOU. ## ⚔️ YOU ADAPT BACK. <br> > 💡 **Pro Tip:** If the mobs feel too easy, check your gear. If they feel too hard... also check your gear. The system is watching. <br> *✨ For the players who refuse to be defined by the world.* <br><br> **🔥 ADAPT. OR BE ADAPTED TO. 🔥** </div>
release

[AN]Adaptive Nemesis 1.0.10

1.0.10
27 июн. 2026 г.120Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <h2> <span style="color: #FF6B6B; text-shadow: 0 0 20px #FF6B6B;"> ⚔️ Adaptive Nemesis v1.0.10 ⚔️ </span> </h2> <img src="https://img.shields.io/badge/✨_UX_Improvement-4ECDC4?style=flat-square"> <img src="https://img.shields.io/badge/🎨_UI_Rework-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/📦_Patch-FFB020?style=flat-square"> <p><i>Tired of squinting at tiny input boxes? So were we.</i></p> <p><i>Now you can edit those long lists in comfort.</i></p> </div> --- ## 📋 What's New <div align="center"> | Type | Change | Details | | :----- | :------- | :-------- | | **✨ Added** | Long Text Edit Screen | A dedicated modal for editing lengthy config fields | | **🔧 Reworked** | Config UI | Replaced cramped input boxes with preview buttons + popup editing | | **📦 Bumped** | Mod Version | `1.0.9` → `1.0.10` | | **🧹 Cleaned** | Temp Files | Removed the temporary refactor review report | </div> --- ## 🎯 Why This Matters Ever tried editing a massive entity blacklist or a long list of Boss exclusions in a tiny 320px-wide box? **Painful.** Now those fields show a **preview button** (first 16 chars) that opens a **full-screen modal** with: - 🖊️ A wide, adaptive text box (up to 640px) - 🔢 Live character count badge - ✨ Smooth fade-in animation - 🟠 Clean, dark-themed UI matching the main config screen --- ## 🔄 Affected Config Fields <div align="center"> | Config Field | What It Does | | :------------- | :------------- | | **Boss Damage Cap Exclusions** | List of bosses immune to the damage cap system | | **Entity Blacklist** | Entities excluded from adaptive scaling | | **Debug Log File Path** | Custom path for debug output | </div> --- ## ⚠️ Heads Up > **No breaking changes.** Your existing config files will work exactly as before. > > The only difference is *how* you edit them — and it's a lot nicer now. --- <div align="center"> > 💡 **Tip**: Found a bug or have a suggestion? Open an issue on the repo! > *✨ Long Text, Made Easy ✨* [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
release

[AN]Adaptive Nemesis 1.0.9

1.0.9
18 июн. 2026 г.101Minecraft: 1.21.1neoforge
Скачать
Что нового
# 🌟 Anadaptive Nemesis – Update 1.0.9 ## “The Smooth Operator” Release > *We cleaned up the guts of the mod so you can enjoy a smoother, fairer, and more responsive experience – without even noticing the work behind the scenes.* --- ## 🎯 TL;DR – What’s New for You? - **⚡ Game feels faster** – less lag, especially on busy servers or when lots of mobs are around. - **🎯 Boss fights are more consistent** – bosses are now properly recognised, so their special damage caps work every time. - **🛡️ True damage (armour‑bypassing damage) is now smarter** – high‑armour players won’t get unfairly one‑shot. - **📈 Difficulty scaling is smoother** – no more random difficulty spikes that feel like cheating. - **🔧 Configuration is easier for pack makers** – but for you, it just means fewer bugs and faster updates. - **🐛 Lots of bugs squashed** – including some that could crash your game or break boss fights. --- ## 🚀 Performance – Your TPS Just Got a Raise We made the mod **much more efficient** under the hood. Here’s what you’ll actually feel: - **Boss checks are now cached** – so the game doesn’t waste time re‑checking if something is a boss every single hit. Result: **smoother combat**. - **Player tracking is smarter** – the mod only looks at nearby players when scaling enemies, instead of scanning the whole server. **Multiplayer servers will thank you**. - **Item and enchantment lookups are pre‑computed** – so when a mob spawns, the game already knows what gear to give it. **Faster spawns, less stutter**. In numbers: we saw up to **99% faster** in some internal operations – which translates to **noticeably less lag** in big battles or crowded worlds. --- ## 🐛 Major Bug Fixes – The Ones That Mattered | Issue | What was broken | Now it’s fixed | |-------|----------------|----------------| | **Boss misidentification** | Some modded bosses weren’t recognised as bosses, so their damage caps and special rules didn’t apply. | Bosses are now correctly identified every time – fair fights, no surprises. | | **True damage miscalculation** | High‑armour players sometimes took way too much armour‑bypassing damage. | True damage now scales in stages – tanky players get the protection they deserve. | | **Difficulty spikes** | The difficulty curve had sharp jumps that felt unfair. | We switched to a standard smooth formula – difficulty ramps up gradually and naturally. | | **Local difficulty dilution** | Players far away could affect the difficulty near you (making it easier or harder incorrectly). | Now only nearby players influence your local scaling – your fight, your challenge. | | **Crash risks** | Some edge cases could cause the game to crash when scaling certain modded mobs. | We added better error handling – no more mysterious crashes. | --- ## ⚙️ Behind the Scenes – What Pack Makers Should Know If you’re a modpack creator or a tinkerer: - The configuration file has been **split into smaller, logical sections** – much easier to find and tweak settings. - All old config options still work (we kept compatibility), but you’ll see new categories if you regenerate the config. - Debug logging is improved – if something goes wrong, the logs will tell you exactly what and where. --- ## 📊 Performance Gains – By the Numbers (if you like numbers) | Area | Improvement | |------|-------------| | Boss identification | ~88% faster | | Enchantment/equipment lookups | ~99% faster | | Player spatial indexing | ~26% faster tick time | | Random number generation | ~61% faster | | Reflection calls (for KubeJS) | ~59% faster | *All of this means less CPU usage and more TPS for your world.*
release

[AN]Adaptive Nemesis 1.0.8

1.0.8
18 июн. 2026 г.24Minecraft: 1.21.1neoforge
Скачать
Что нового
## The issue of the server not being able to start has been resolved
beta

[AN]Adaptive Nemesis 1.0.7

1.0.7
13 июн. 2026 г.65Minecraft: 1.21.1neoforge
Скачать
Что нового
<!-- Adaptive Nemesis v1.0.7 Changelog - Stability & Anti-Explosion Update English Version --> <div align="center"> <br><br> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">v1.0.7</span> ⚔️ </h1> <p><i>Every time you grow stronger, your Nemesis evolves</i></p> <img src="https://img.shields.io/badge/🐕_Watchdog_Service-FF6B6B?style=flat-square"> <img src="https://img.shields.io/badge/🔧_Deadlock_Fix-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/⚔️_Weapon_Damage_Cap-2ECC71?style=flat-square"> </div> --- ## 📋 TL;DR | Item | Description | |:---|:---| | **Impact Scope** | **High** — Fixes server deadlock/crash issues and refactors Boss attribute amplification | | **Core Changes** | Watchdog service, chunk loading deadlock fix, dynamic weapon damage cap, Boss anti-HP-explosion | --- ## 🐕 Watchdog Service (New) **File:** `WatchdogService.java` (New) Monitors server main thread for deadlocks, auto-detects and outputs thread dumps. | Config | Type | Default | Description | |:---|:---:|:---:|:---| | `enableWatchdog` | Boolean | `true` | Enable watchdog service | | `watchdogCheckInterval` | Int | `5` | Check interval (seconds) | | `watchdogWarnThreshold` | Int | `30` | Warning threshold (seconds) | | `watchdogCriticalThreshold` | Int | `60` | Critical threshold (seconds) | **Two-Level Detection:** - ⚠️ **Warning (30s):** Logs current entity being processed - 🚨 **Critical (60s):** Outputs full thread dump, marks problematic entity **Problem Entity Tracking:** Adds frozen entities to `problematicEntities` set; `EnemyScalingHandler` skips these to prevent repeated deadlocks. --- ## 🔧 Chunk Loading Deadlock Fix **Affected Files:** - `EnemyScalingHandler.java` - `EnchantmentScalingHandler.java` **Root Cause:** `AABB + getEntitiesOfClass()` in `EntityJoinLevelEvent` / `FinalizeSpawnEvent` triggers chunk loading within range, deadlocking with ongoing world generation (especially with Cataclysm and similar structure mods). **Solution:** ```java // ❌ Old code (triggers chunk loading) AABB searchBox = new AABB(...); List<<ServerPlayer> nearbyPlayers = serverLevel.getEntitiesOfClass(ServerPlayer.class, searchBox); // ✅ New code (safe iteration, no chunk loading) double rangeSq = range * range; List<<ServerPlayer> nearbyPlayers = new ArrayList<>(); for (ServerPlayer player : serverLevel.getServer().getPlayerList().getPlayers()) { if (player.level() == serverLevel && player.distanceToSqr(mob) <= rangeSq) { nearbyPlayers.add(player); } } ``` **New Defenses:** - `SCALE_TIMEOUT_TAG` — Auto-marks entity as problematic if scaling exceeds 30 seconds - Try-catch in `onEntityJoinLevel()` — Prevents third-party mod exceptions from crashing server - Watchdog integration — Updates status before/after entity processing --- ## ⚔️ Dynamic Weapon Damage Cap **Affected Files:** - `Config.java` - `EnchantmentScalingHandler.java` **New Configs:** | Config | Default | Description | |:---|:---:|:---| | `weaponDamageBaseCap` | `12.0` | Weapon damage cap at lowest difficulty (6 hearts) | | `weaponDamageCapPerDifficulty` | `3.0` | Damage cap increase per difficulty multiplier | | `weaponDamageMaxCap` | `40.0` | Absolute damage cap (20 hearts) | **Formula:** ``` Dynamic Cap = Base + (Difficulty Multiplier - 1.0) × Per-Difficulty Increment Final Cap = min(Dynamic Cap, Absolute Cap) ``` **Weapon Filtering Logic:** 1. Iterate weapons from current quality tier downward 2. Calculate actual damage via `getWeaponDamage()` (includes attribute modifiers) 3. Only select weapons within damage cap 4. If all weapons exceed cap, fallback to wooden sword **Mod Weapon Filtering:** Main-hand weapons in `tryGetModEquipment()` are checked against damage cap; overpowered weapons are filtered with debug logging. --- ## 💀 Boss Anti-HP-Explosion **Affected File:** `BossDamageCapHandler.java` **Problem Scenario:** `EntityJoinLevelEvent` may trigger multiple times: - Player teleports away, chunk unloads, returns and chunk reloads - Player switches dimensions, entity reloads - Server restarts, entity loads from disk Without checks, Boss health multiplies by `BOSS_HEALTH_MULTIPLIER` on each reload, causing exponential explosion. **Solution:** | New NBT Tag | Purpose | |:---|:---| | `BOSS_BUFF_APPLIED_TAG` | Marks Boss buff as applied, prevents repeated triggers | | `BOSS_ORIGINAL_HEALTH_TAG` | Stores original base health value | | `BOSS_ORIGINAL_DAMAGE_TAG` | Stores original base damage value | **Attribute Calculation:** ``` Final Health = Original Health × EnemyScaling Multiplier × Boss Multiplier Final Damage = Original Damage × EnemyScaling Multiplier × Boss Multiplier ``` This ensures correct stacking regardless of `EnemyScalingHandler` and `BossDamageCapHandler` execution order. --- ## 🎯 Other Optimizations **EnchantmentScalingHandler.java:** - Optimized humanoid mob detection using precise entity ID matching instead of string containment - New supported mob types: Bogged, Piglin, Piglin Brute, etc. **ModEventHandler.java:** - Updates watchdog tick timestamp in `ServerTickEvent.Post` - Stops watchdog service in `onServerStopping` - Injects watchdog status before/after Boss processing **AdaptiveNemesisMod.java:** - Starts watchdog service after config loading completes **gradle.properties:** - Version bumped from `1.0.6` to `1.0.7` --- <div align="center"> **⚔️ As the Nemesis evolves, so do we ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
release

[AN]Adaptive Nemesis 1.0.6

1.0.6
7 июн. 2026 г.77Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <br><br> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">v1.0.6</span> ⚔️ </h1> <p><i>Every time you grow stronger, your Nemesis evolves</i></p> <img src="https://img.shields.io/badge/🌍_Bilingual_UI-FF6B6B?style=flat-square"> <img src="https://img.shields.io/badge/📝_Command_Localization-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/🌐_i18n_Support-2ECC71?style=flat-square"> </div> --- ## 📋 TL;DR | Item | Description | |:---|:---| | **Impact Scope** | **Medium** — All UI messages across 10 command classes | | **Core Change** | Added English translations to all command output messages, bilingual display | | **Format** | Mixed `Chinese/English` and `Chinese [English]` formats | --- ## 📝 Command Localization ### Translation Format | Format | Example | Usage | |:---|:---|:---| | **Slash separator** | `Status/Status: Enabled(已启用)` | Most messages | | **Bracket suffix** | `This command can only be executed by players §7[此命令只能由玩家执行]` | Error messages | | **Mixed format** | `Note/注意: Changes will take effect after restart §7[配置更改将在下次重启后生效]` | Warnings | --- ### Affected Commands | Command | Messages Updated | Special Handling | |:---|:---:|:---| | **DifficultyCommand** | 12 | Difficulty settings, true damage settings | | **HelpCommand** | 10 | All help descriptions | | **MemoryCommand** | 10 | Combat records, KDA statistics | | **ProtectionCommand** | 9 | Newbie protection status | | **ReloadCommand** | 2 | Reload notifications | | **ScanCommand** | 12 | Scan results, attribute display, added English mapping switch | | **StatusCommand** | 10 | Player status, config display | | **StrengthCommand** | 9 | Strength details | | **SummonNemesisCommand** | 7 | Summon messages, Nemesis names | | **TestCommand** | 50+ | All test output messages | --- ### ScanCommand English Mapping Added English translation mapping for scanned attributes: ```java String nameEn = switch (name) { case "血量/HP" -> "HP"; case "攻击/Damage" -> "Damage"; case "护甲/Armor" -> "Armor"; case "攻速/Atk Speed" -> "Atk Speed"; case "韧性/Toughness" -> "Toughness"; default -> name; }; ``` --- ## 🐛 Bug Fixes None — This is a pure localization update with no functional changes. --- <div align="center"> **⚔️ As the Nemesis evolves, so do we ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
release

[AN]Adaptive Nemesis 1.0.5

1.0.5
6 июн. 2026 г.41Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <br><br> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">v1.0.5</span> ⚔️ </h1> <p><i>Every time you grow stronger, your Nemesis evolves</i></p> <img src="https://img.shields.io/badge/🚫_Entity_Blacklist-FF6B6B?style=flat-square"> <img src="https://img.shields.io/badge/🛡️_HP_Explosion_Protection-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/🎮_Config_GUI-2ECC71?style=flat-square"> </div> --- ## ✨ New Features ### 🚫 Entity Blacklist System Wildcard support to exclude specific mobs, precise scaling control: | Config | Type | Default | Description | |:---|:---:|:---:|:---| | `entityFilter.entityBlacklist` | String | `""` | Entity blacklist, supports `*` wildcard | **Example config**: ``` minecraft:iron_golem,alexsmobs:*,minecraft:wolf ``` > Iron Golems, all Alex's Mobs, and Wolves will not be scaled --- ### 🛡️ Anti-HP-Explosion Mechanism Fixes exponential attribute growth after soul stone capture (NBT reset): | Protection Layer | Mechanism | Fallback Order | |:---|:---|:---:| | **NBT Marker** | Read saved original health | 1 | | **Default Attribute Query** | Get entity registration default via `DefaultAttributes` | 2 | | **Current Base Health** | Use current attribute value (fallback) | 3 | --- ### 🧍 Humanoid Equipment Restriction Prevents non-humanoid mobs from receiving gear, improves game logic: | Mob Type | Gets Equipment | Examples | |:---|:---:|:---| | **Zombie types** | ✅ | Zombie, Husk, Drowned | | **Skeleton types** | ✅ | Skeleton, Wither Skeleton, Stray | | **Generic types** | ✅ | Vindicator, Evoker, Pillager | | **Spider types** | ❌ | Spider, Cave Spider | | **Creeper types** | ❌ | Creeper | | **Animal types** | ❌ | Cow, Pig, Sheep | --- ### 🚫 Boss Identification Fix Excludes `Animal` subclasses, prevents high-HP animals from being misidentified as Bosses: ```java if (entity instanceof Animal) { return false; // Animals are not Bosses } ``` --- ## 🐛 Bug Fixes | Fix | Description | |:---|:---| | **Iron Golem misidentification** | High-HP Iron Golems no longer identified as Bosses | | **Animal misidentification** | High-HP animals no longer identified as Bosses | | **Soul stone explosion** | Captured scaled mobs no longer have exponential HP growth | | **Spider with sword** | Spiders, Creepers and other non-humanoids no longer get equipment | --- <div align="center"> **⚔️ As the Nemesis evolves, so do we ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
release

[AN]Adaptive Nemesis 1.0.4

1.0.4
30 мая 2026 г.92Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <br><br> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">v1.0.4</span> ⚔️ </h1> <p><i>Every time you grow stronger, your Nemesis evolves</i></p> <img src="https://img.shields.io/badge/🎯_Boss_ID_Refactor-FF6B6B?style=flat-square"> <img src="https://img.shields.io/badge/🛡️_Dangerous_Enchant_Protection-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/🤝_Mod_Compat_Enhanced-2ECC71?style=flat-square"> </div> --- ## ✨ New Features ### 🎯 Boss Identification System Refactor Adopted **Strategy Pattern + Chain of Responsibility** for unified Boss identification logic: | Strategy | Priority | Description | |:---|:---:|:---| | **Type-Based** | 1 | `instanceof` check for vanilla Bosses | | **Name-Based** | 2 | Keyword matching for modded Bosses | | **Health Threshold** | 3 | Auto-identify when MaxHealth ≥ 200 | > New configs: `bossIdentificationKeywords`, `bossHealthThreshold` --- ### 🛡️ Dangerous Enchantment Protection Added dangerous enchantment detection to prevent mobs from obtaining game-breaking enchants: | Detection Keywords | Examples | |:---|:---| | English | `immune`, `invulnerable`, `god`, `divine_protection` | | Chinese | `免伤`, `无敌`, `免疫` | > Auto-skips dangerous enchants, logs WARN message --- ### 🤝 Mod Compatibility Enhancement #### L2Hostility Compatibility | Config | Effect | |:---|:---| | `modCompatL2HostilityEnabled` | Skips health/speed scaling to prevent HP explosion from `ADD_MULTIPLIED_TOTAL` mechanic | #### Epic Fight & Iron's Spells NaN/Infinity Protection | Protection | Description | |:---|:---| | `safeSetAttribute()` | Prevents NaN/Infinity attribute value propagation | | `safeDouble()` | Falls back to safe defaults on abnormal values | --- ### 💎 Soul Stone Marker System Solves duplicate scaling after soul stone capture/release: | Marker Method | Persistence | Purpose | |:---|:---:|:---| | **NBT Marker** | ❌ Cleared by soul stone | Standard detection path | | **LUCK Attribute Marker** | ✅ Retained by soul stone | Secondary detection path | > Uses characteristic value `0.0420` as cross-NBT clearing marker --- ### 📝 Debug Log File Fixed config shell issue, implemented complete log file output: ```toml [debug] debugLogToFile = true debugLogFilePath = "logs/adaptive_nemesis_debug.log" ``` --- ## 🐛 Bug Fixes | Fix | Description | |:---|:---| | **Mob State Validation** | Clears `Invulnerable` flag, fixes invalid health/attack/armor attributes | | **Config Screen Update** | Added "Mod Compatibility" category with 4 toggleable switches | | **Localization Added** | Added EN/ZH translations for 6 new config options | --- ## ⚙️ New Config Options | Config Key | Type | Default | Description | |:---|:---:|:---:|:---| | `bossIdentificationKeywords` | String | `boss,dragon,wither,warden` | Boss identification keywords | | `bossHealthThreshold` | Double | 200.0 | Boss health identification threshold | | `modCompatL2HostilityEnabled` | Boolean | true | L2Hostility compatibility | | `modCompatEpicFightEnabled` | Boolean | true | Epic Fight compatibility | | `modCompatIronsSpellsEnabled` | Boolean | true | Iron's Spells compatibility | | `modCompatApotheosisEnabled` | Boolean | true | Apotheosis compatibility | --- <div align="center"> **⚔️ As the Nemesis evolves, so do we ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
release

[AN]Adaptive Nemesis 1.0.3hotfix

1.0.3hotfix
23 мая 2026 г.75Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">KubeJS Architecture Refactor</span> ⚔️ </h1> <p><i>Optional dependency, safe isolation</i></p> </div> ## 📋 TL;DR | Item | Description | |:---|:---| | **Impact Scope** | **High** — Refactored KubeJS integration architecture, resolved optional dependency class loading conflicts | | **Core Solution** | Reflection isolation + ServiceLoader auto-discovery | --- ## 🔧 Before & After ### Before: Direct Dependency (High Risk) ``` AdaptiveNemesisKubeJSPlugin implements KubeJSPlugin ↓ Direct reference EventGroup / EventHandler / KubeJS API ↓ Class loading crash (when KubeJS not installed) ClassNotFoundException ``` ### After: Reflection Isolation (Safe) ``` AdaptiveNemesisKubeJSPlugin (Plain bridge class) ↓ Reflection check KubeJSInitializer implements KubeJSPlugin ↓ Direct reference EventGroup / EventHandler / KubeJS API ↓ ServiceLoader auto-loading ``` --- <div align="center"> **⚔️ As the Nemesis evolves, so does the architecture ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
alpha

[AN]Adaptive Nemesis 1.0.3

1.0.3
22 мая 2026 г.39Minecraft: 1.21.1neoforge
Скачать
Что нового
<div align="center"> <br><br> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">v1.0.3</span> ⚔️ </h1> <p><i>Every time you grow stronger, your Nemesis evolves</i></p> <img src="https://img.shields.io/badge/🗡️_Equipment_Overhaul-FF6B6B?style=flat-square"> <img src="https://img.shields.io/badge/🤝_Cross_Mod_Compat-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/🛡️_Epic_Fight_Fix-2ECC71?style=flat-square"> </div> --- ## ✨ New Features ### 🗡️ Equipment System Overhaul | Improvement | Original | New | Effect | |:---|:---:|:---:|:---| | **Equipment Base Chance** | 5% | **15%** | More mobs spawn with gear | | **Chance Per Difficulty Unit** | 3% | **10%** | High-difficulty enemies gear up faster | | **Netherite Quality Multiplier** | ×10 | **×6** | Top-tier gear appears earlier | | **Diamond Quality Multiplier** | ×6 | **×4** | Diamond mobs at medium difficulty | #### Tier Upgrade Mechanic > **15% chance** to get one tier higher quality — get lucky and see diamond mobs at low difficulty! #### Weapon Variety - **Tier 0** now includes gold sword/axe options - No more清一色 stone swords, richer equipment combinations --- ### 🤝 Cross-Mod Compatibility System | Feature | Description | |:---|:---| | **Full Enchantment Compatibility** | Auto-scans enchantment registry, applies compatible enchants from other mods | | **Full Equipment Compatibility** | Discovers and equips weapons/armor from other mods via `ItemTags` | | **Offhand Smart Selection** | Prioritizes mod shields (`#minecraft:shields`), falls back to one-handed swords | | **Smart Identification** | Automatically distinguishes vanilla (`minecraft:`) and mod items by namespace | --- ### 📦 Enchantment Pool Expansion | Equipment Type | Original | New | Added Enchants | |:---|:---:|:---:|:---| | **Weapons** | 7 | **9** | Unbreaking, Efficiency | | **Armor** | 6 | **10** | Respiration, Aqua Affinity, Feather Falling, Depth Strider | | **Bows** | 4 | **5** | Unbreaking | --- ### ⚙️ New Config Options **6 new configurable parameters** + **2 config screen categories**: <div align="center"> | Category | Option | Default | Description | |:---|:---|:---:|:---| | **Equipment Generation** | `equipmentBaseChance` | 0.15 | Base equipment spawn chance | | **Equipment Generation** | `equipmentChancePerDifficulty` | 0.10 | Chance increment per multiplier | | **Equipment Generation** | `equipmentTierUpgradeChance` | 0.15 | Tier upgrade probability | | **Equipment Generation** | `equipmentModCompatChance` | 0.30 | Mod equipment replacement chance | | **Epic Fight** | `weightMinBonus` | 15.0 | Minimum weight bonus | | **Epic Fight** | `weightPerMultiplier` | 20.0 | Weight increment per multiplier | </div> > 💡 All new options support in-game visual config screen adjustment --- ## 🐛 Bug Fixes --- ### 🦴 Epic Fight Knockback Fix **Weight formula rework**: ``` new = old + (effectiveMultiplier - 1) × 20, minimum old + 15 ``` | Fix | Description | |:---|:---| | **3 missed formulas** | Max combo, weight, stamina recovery now use `effectiveMultiplier` instead of `multiplier` | | **8 attribute formulas protected** | All added `Math.max()` to prevent negative values from random factors | | **Actual effect** | Skeleton weight: 5.47 (naked) → **21.15** (iron-tier resistance) | --- ### 🛡️ Irons Spells Attribute Protection - **23 formulas all added `Math.max()` floor** - Spell power, mana, mana regen no longer go negative from low random factors --- ### 🎯 Equipment System Fixes | Fix | Description | |:---|:---| | **Empty shell issue** | Fixed `createEquipmentForSlot`, mobs no longer spawn naked | | **Missing enchants** | Removed `continue` statement, newly created gear now gets enchantments | | **Lazy loading** | Equipment data changed to instance-level lazy init, prevents Minecraft class loading during unit tests | --- ### ⚙️ Config File Fix - **Fixed config reset bug**: `saveToFile()` changed to `MOD_CONFIG.getLoadedConfig().save()` --- ## 🧪 Testing - Added `EnchantmentScalingHandlerTest`: **34 unit test cases** - Covers enchantment probability, enchantment level, equipment spawn chance boundary cases - JUnit 5 + ParameterizedTest + `@CsvSource` --- ## 🏗️ Refactoring & Optimization | Improvement | Description | |:---|:---| | **Hardcoded → Configurable** | Weight formula, equipment chance, tier upgrade chance all migrated to Config | | **Compatibility layer separation** | `tryGetModEquipment` / `isVanillaItem` / `tryApplyModCompatibleEnchantments` as independent methods | | **Smart enchantment conflict detection** | `Set` deduplication + `candidates.remove(index)` prevent double selection, try-catch as fallback only | | **Enhanced logging** | Detailed DEBUG logs at key scaling nodes for easier attribute calculation debugging | | **Disabled DEBUG spam** | EpicFightCompat and IronsSpellsCompat logs adjusted to conditional output | --- <div align="center"> **⚔️ As the Nemesis evolves, so do we ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
alpha

[AN]Adaptive Nemesis 1.0.2

1.0.2
16 мая 2026 г.72Minecraft: 1.21.1neoforge
Скачать
Что нового
<!-- Adaptive Nemesis v1.0.2 Changelog English Version --> <div align="center"> <br><br> <h1> ⚔️ <span style="color: #ff4444; text-shadow: 0 0 20px #ff0000;">Adaptive Nemesis</span> <span style="color: #888888; font-size: 0.6em;">v1.0.2</span> ⚔️ </h1> <p><i>Every time you grow stronger, your Nemesis evolves</i></p> <img src="https://img.shields.io/badge/🩸_Health_Fix-FF6B6B?style=flat-square"> <img src="https://img.shields.io/badge/🌍_World_Stage_Refactor-9B59B6?style=flat-square"> <img src="https://img.shields.io/badge/📈_Smoothing_Optimization-2ECC71?style=flat-square"> </div> --- ## 🎯 Major Improvements --- ### 1. 🩸 Health Display Fix **Issue**: Monsters displaying abnormal health values like `100/110` **Fix**: Modified `applyHealthBonus` method in `EnemyScalingHandler.java` using two-stage health setting | Stage | Operation | Purpose | |:---|:---|:---| | **Immediate** | `mob.setHealth(mob.getMaxHealth())` | Ensure attributes take effect instantly | | **Delayed 1 tick** | Server-scheduled second setting | Ensure full health after attribute propagation | > 💡 **Principle**: Attribute modifications require server sync; 1-tick delay ensures correct client display --- ### 2. 🌍 World Stage System Refactor <div align="center"> | Improvement | Description | |:---|:---| | 🔄 **Server-Wide Sharing** | World stages no longer separated by dimension; all dimensions share a single stage | | 🎮 **Player Kill Detection** | Only player boss kills count, preventing false triggers from natural deaths | | 🧹 **Code Deduplication** | Extracted `onBossKilled()` common method, eliminating duplicate code | | 💾 **Persistence Framework** | Added `WorldStageSavedData` utility class (reserved for full implementation) | </div> --- ### 3. 📈 Difficulty Smoothing Optimization | Improvement | Description | |:---|:---| | 👥 **Per-Player Differentiation** | Supports independent smoothing states per player (API reserved) | | 📈 **Smoothstep Algorithm** | Uses smooth easing curves for more natural difficulty transitions | > Math formula: `smoothstep(t) = t²(3-2t)` — making difficulty transitions silky smooth --- ### 4. 🧹 Test Command Cleanup Removed world stage test commands from `TestCommand.java`: - `worldstage` - `worldstage_scenario` - `worldstage_dragon` - `worldstage_wither` - `worldstage_warden` --- ## ⚙️ Config Updates New configurations synchronized to config file: ```toml # Difficulty smoothing config [difficultySmoothing] enableDifficultySmoothing = true difficultySmoothingFactor = 0.05 difficultySmoothingTickInterval = 5 # World stage config [worldStage] enableWorldStage = true worldStageMultiplierPerStage = 0.5 worldStageMaxStage = 10 ``` --- <div align="center"> **⚔️ As the Nemesis evolves, so do we ⚔️** [![GitHub](https://img.shields.io/badge/GitHub-View_Commits-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/LOVE-U987/Adaptive-Nemesis) </div>
alpha

[AN]Adaptive Nemesis 1.0.0

1.0.0
1 мая 2026 г.64Minecraft: 1.21.1neoforge
Скачать
Что нового
## 🚩First upload