
简单难度重制版:优化版
SimpleDifficulty 的错误修复和优化分支
SimpleDifficulty Reforged: 优化版
一个改进的 SimpleDifficulty For Underdog 分支
概述
SimpleDifficulty 为 Minecraft 1.12.2 带来了温度与口渴系统,基于 Tough As Nails 等生存模组的基本机制。此维护分支专注于:
- Bug 修复与稳定性改进
- 扩展模组兼容性,适用于大型整合包
- 技术优化,确保流畅的游戏体验
- 代码现代化与清理
关于项目起源的说明:
本模组是四个月持续专注开发(从五月到九月)的成果。由于优化和代码重构规模庞大(修改超过 9,000 行),我决定将这一更新版本单独发布,以便您能立即受益于内存泄漏修复和性能改进。如果您想查看所有更改的完整技术细节,请查看原始 Pull Request
功能特性
核心机制
- 口渴系统:玩家需要管理水分水平,以避免负面状态效果。
- 温度动态:环境生物群系、方块和盔甲会影响玩家的体温。
- 低体温症与高热症:现在会降低最大生命值并施加负面药水效果,而非直接造成伤害。(注意:Spice of Life 的生命值修饰符在计算中被忽略)。
- 水变体:
- 普通水:标准补水来源。
- 盐水:饮用后会加速脱水。
- 纯净水 / 泉水:安全、清洁的补水来源,具有最佳饱和度数值。原版水现在被视为泉水。(注意:水本身必须通过其他模组生成。推荐使用 Cave Generator)。
精炼的水与物品系统
- 水壶重制:修正了耐久度逻辑和补水补充比例。纯净水的消耗会准确更新物品和来源。
- 瓶子交互:空瓶子会动态检测特定的环境流体类型(盐水、普通水或泉水),而非仅默认识别原版水方块。
- 一致的熔炼:修正了烹饪逻辑,防止特殊流体容器(如泉水瓶)在加工过程中降级回标准变体。
- 配方清理:移除了水壶和过滤器的冗余或损坏的无序配方,以防止合成冲突。
- 视觉调整:流体颜色渲染会根据生物群系位置有机适应,并具有自定义的深度雾效设置。
- 增强雾效:改进了水雾视觉效果。雾的颜色现在更明亮,并会根据生物群系变化。
- 自定义:新增配置选项,可使水体更暗或更亮。
- 冰机制:新增普通水和盐水冰!🧊 在适用的环境中生成自然冰结构。包含世界生成器,并实现了融化、冻结以及 Serene Seasons 支持。完全兼容冻结/融化方块状态。
技术优化
专为减少大型整合包中的服务器开销和客户端卡顿而设计。
内存管理
泄漏解决
- 识别并修复了与位置世界追踪相关的内存泄漏
- 修复了玩家断开连接时能力数据未正确释放的问题
- 优化了事件处理器注册,防止监听器重复
数据占用
- 精简了核心温度子系统中的内部遥测存储
- 相比原始分支,全局内存使用减少了约 40%
- 对非关键数据结构实现了延迟加载
处理效率
执行门控
- 在主要处理循环中实现了提前退出逻辑
- 减少了追踪系统未激活时的不必要 tick 评估
- 为频繁访问的计算添加了缓存
子系统调优
- 优化了环境水方块扫描算法
- 改进了水壶消耗操作的性能
- 精简了逐 tick 的口渴计算
- 新增盐水/淡水混合逻辑,采用不影响性能的优化填充算法。
- 移除了流体的粒子效果,并略微改进了流体渲染性能。
垃圾回收
- 降低了标准游戏循环中的对象实例化率
- 对频繁创建/销毁的对象实现了对象池
- 将 Java 垃圾回收器的开销降低了约 60%
模组集成
完全支持的模组
以下模组具有专用集成代码和完全兼容性:
- Animania
- Armor Underwear
- Baubles
- Biomes O' Plenty (新增水生植物兼容性)
- Dynamic Trees (新增流体方块兼容性)
- DynamicSurroundings
- EnhancedVisuals
- First Aid
- Harvest Festival Legacy
- Inspirations
- Lycanites Mobs
- Ore Excavation
- Pam's HarvestCraft
- Potion Core
- Pyrotech
- Realistic Torches
- Rustic
- Serene Seasons
- Streams
- SurvivalTools
- Simple Camp Fire
- Traveler's Backpacks
- Tinkers' Construct
- The Betweenlands
- Weather2 Remastered
额外兼容性
以下模组无需专用集成即可工作,但已经过测试:
- Cave Generator (推荐用于生成泉水)
- Fluidlogged API
- Greenery (新增水生植物兼容性)
想要与特定模组兼容? 提交一个 issue,我会尝试使其工作!
许可证与鸣谢
许可证
本项目基于 MIT 许可证分发
作者与贡献者
- Charles445:创建了原始版本
- juraj-hrivnak:创建了 Underdog 分支
- Onyx-i7:维护、更新至 RetroFuturaGradle、消除内存泄漏,优化版的主要作者
支持
- Bug 报告:GitHub Issues
- 功能请求:GitHub Issues
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。