跳到正文

RCD800’s Patches: Enchantment Library

作者:RCD800

Server-authoritative, exploit-hardened patch of Enchantment Library at Home for Forge 1.20.1. Fixes hopper network storms, over-level book duplication, client memory leaks, and crash vectors.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

RCD800’s Patches: Enchantment Library

RCD800’s Patches: Enchantment Library is a server-authoritative, exploit-hardened, and performance-optimized patch of Enchantment Library at Home for Minecraft Forge 1.20.1.

Part of the RCD800’s Patches series, this project maintains clean, server-safe, and dupe-free versions of community utility mods for balanced modpacks and dedicated servers.

In large modpacks with extensive dungeon loot and mob farming, players frequently accumulate dozens of chests overflowing with enchanted books. This mod provides a dedicated, compact storage solution for all your enchanted books, storing enchantments as fungible points in a central library block and allowing on-demand extraction—while thoroughly resolving the critical crashes, server network spam, and duplication exploits found in previous releases.


✨ Features & Mechanics

  • Enchantment Library (Basic Tier):
    • Stores up to 16 levels per enchantment (up to 32,768 points per enchantment type).
    • Ideal for early-to-mid game enchantment storage and organization.
  • Library of Alexandria (Ender Tier):
    • Expanded storage supporting up to 31 levels per enchantment (over 1,000,000,000 points per enchantment type).
    • Designed for late-game modded progression.
  • Point Conversion System:
    • Enchantment levels convert exponentially: $\text{Points} = 2^{(\text{Level} – 1)}$.
    • Storing two Level I books yields 2 points, allowing extraction of one Level II book ($2^1 = 2$ pts).
  • Flexible Extraction:
    • Left-click any stored enchantment to extract a single level onto an enchanted book.
    • Shift-click to extract the maximum available levels directly into your inventory.
  • Search & Filter UI:
    • Filter stored enchantments by item type (Swords, Armor, Bows, Tools, etc.) or use the real-time search bar.
  • Block Persistence:
    • Library blocks retain all stored enchantments and points when broken and moved.

🛡️ What’s Different in RCD800’s Patches?

This version was specifically engineered to fix game-breaking bugs, server performance bottlenecks, and balance exploits present in version 1.0.2:

  1. Fixed Hopper & Automation Network Storms:
    • The Problem: In the original mod, every single book deposited by a hopper or pipe triggered a full-NBT network broadcast to all nearby chunk players, creating massive server lag in automated sorting setups.
    • The Fix: Deposits now update internal state with $O(1)$ efficiency and only dispatch network packets when a player actively has the library GUI open.
  2. Over-Level Duplication Exploit Defense:
    • The Problem: Modpacks with rare boss loot or custom over-level books (such as Sharpness VI–X) allowed players to deposit a single over-level book for thousands of points, generating infinite free lower-tier books.
    • The Fix: Server-authoritative validation prevents books exceeding vanilla/modded max levels from being deposited. Books are rejected with negative audio feedback (Villager No), preserving modpack economy.
  3. Plugged Client Memory Leak:
    • The Problem: Upstream code failed to unregister container listeners on the client side when closing the screen, leaving stale references in memory.
    • The Fix: Listeners are now cleanly unregistered on both client and server when the container closes.
  4. Resolved Client Crash Vectors:
    • The Problem: Fast chunk loading and latency occasionally caused a NullPointerException during container initialization, or a ClassCastException on client levels.
    • The Fix: Hardened block entity retrieval directly from packet buffer coordinates and guarded packet dispatchers.
  5. Fast Bitwise Math Engine:
    • Replaced slow floating-point transcendental functions (Math.pow and Math.log) with instant $O(1)$ bitwise shifts (1 << (level - 1)).
  6. Anti-Spoofing Security:
    • Added server-side distance validation (stillValid(player)) to prevent hacked clients from sending remote button-click packets.

🔨 Recipes

  • Enchantment Library:
    • Crafted with 4 Bookshelves, 2 Chests, 1 Enchanting Table, 1 Book, and 1 Iron Ingot.
  • Library of Alexandria:
    • Crafted by surrounding an Enchantment Library with 4 Ender Eyes and 4 Netherite Ingots / Purpur blocks.

👥 Credits & Upstream Lineage

This project is an open-source derivative built upon the contributions of talented mod developers:

  • Original Concept & Implementation: Shadows_of_Fire — Creator of Apotheosis, which originated the Enchantment Library and Library of Alexandria design and UI layout.
  • Standalone Forge 1.20.1 Port: UberHelixx — Creator of Enchantment Library at Home, who originally decoupled the library blocks from Apotheosis into a standalone mod.
  • Patches & Server Hardening: RCD800 — Engine hardening, server-authoritative exploit prevention, hopper network lag elimination, memory leak fixes, and performance tuning.

⚖️ License

This project is licensed under the MIT License, inheriting the open-source license of upstream code. You are welcome to include this mod in any modpack.

常见问题

RCD800’s Patches: Enchantment Library 支持哪些 Minecraft 版本?

RCD800’s Patches: Enchantment Library 支持 Minecraft Java 版 1.20.1,可用的加载器:Forge。下载时注意选择和你游戏版本一致的文件。

RCD800’s Patches: Enchantment Library 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Forge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

RCD800 的其他作品

查看全部 →