登陆 注册 QQ登陆
快捷导航
查看: 1|回复: 0

[模组分享] Icterine (Icterine)-MOD模组

[复制链接]

5159

主题

5

回帖

6129

积分

龙❁妻

Rank: 8Rank: 8

经验
6129 EP
金粒
928 粒
绿宝石
20 块
爱心
0 点
发表于 2025-8-10 18:01:32 | 显示全部楼层 |阅读模式
Icterine (Icterine)Github |相关wiki |源站链接支持: fabric , forge , neoforge , quilt优化进度 (特别是InventoryChangeTrigger)

摘要

-  优化了获取物品的进度触发;
-  可能与原版不兼容,但不会影响原版进度,也不应影响绝大多数模组/数据包;
-  即使影响了某些内容,进度仍应可通过仅放下并拾起所需物品之一来获得;
-  目前没有已知的不兼容性或问题;
-  所有对原版代码的注入都可以在配置文件中禁用。
-  所有更改均在服务器端进行。

结果

在具有3名活跃玩家在线的专用服务器上进行了现场测试,运行自定义Forge模组包,包含超过200个模组和[BlazeandCave\'s Advancements Pack](链接),该数据包添加了超过950个进度。 使用Spark收集了一个小时的统计数据。

使用Icterine,InventoryChangeTrigger执行速度几乎快了 *2.5倍*(截至版本1.1.0),花费约7.5%的刻度时间,而不是20%。

Icterine 1.0.0的统计数据比较(约快了2倍):



原版InventoryChangeTrigger的工作方式

-  当游戏检测到玩家物品栏中的堆栈发生更改时,将调用InventoryChangeTrigger。这包括拾取物品,放下物品,放下整个堆栈,移动物品到你的物品栏中。
-  InventoryChangeTrigger计算您的物品栏中的空插槽,非空插槽和完全填充的插槽数。此信息可以用于进度触发器,但在原版中未使用。
-  InventoryChangeTrigger遍历注册的进度条件。
-  如果条件具有插槽数要求,并且它们与步骤2中的值不匹配,或者如果条件没有物品要求,则跳过条件。
-  如果条件仅具有一个物品要求,则检查更改的堆栈是否符合此要求。
-  如果条件具有多个物品要求(例如,“用碎片覆盖我”需要拥有完整的地狱装备套装),则对物品栏中的每个要求都检查每个物品堆栈(但满足的要求会被移除并且不再检查)。
-  物品匹配,特别是标签匹配,非常耗费资源。但是游戏首先检查玩家的物品类型是否与要求中的物品类型匹配,然后才检查其他参数,如数量,附魔和其他NBT数据。

Icterine的优化工作原理

-  在步骤1中,当您放下堆叠或将其移出物品栏时(例如,放入箱子),不调用InventoryChangeTrigger。这由配置文件中的 `ignore_triggers_for_emptied_stacks` 参数控制。
-  同样,在堆栈减少但未被清空时(例如,玩家从完整堆栈中放下单个物品)时,也不调用InventoryChangeTrigger。由 `ignore_triggers_for_decreased_stacks` 控制。
-  同样,如果堆栈大小增加,但未超过任何进度所需的阈值,则也不调用InventoryChangeTrigger。例如,土堆栈大小从52增加到53,但在您的模组包中没有获得53土的进度。由 `optimize_triggers_for_increased_stacks` 控制。
-  修改游戏在玩家打开容器屏幕时如何检查更改的物品,以便它不会在您打开任何内容时立即将所有堆栈视为已更改。由 `initialize_inventory_last_slots` 控制。
-  在步骤6中,首先检查更改的插槽是否与任何要求匹配,然后再检查物品栏中的其他堆栈。由 `optimize_multiple_predicate_trigger` 控制。
-  在步骤7中,首先比较堆栈计数以避免不必要的标签匹配。还使用先前的堆栈计数来避免更多不必要的匹配。由 `check_count_before_item_predicate_match` 控制。

进一步的优化正在计划中。

支持的版本

Icterine v1.2.0与Minecraft Fabric/Quilt 1.18.2至1.19.4以及Forge 1.18.2至1.19.2 _(forge moment)_ 兼容。

Icterine v1.3.0与Fabric/Quilt 1.20至1.20.4,Forge 1.19.3至1.20.4,以及NeoForge 1.20.1至1.20.4兼容,并具有与v1.2.0相同的功能。

在[版本页面](链接)上使用筛选器选择正确的文件。

如果您需要将其移植到其他版本,请在[Discord](链接)服务器上提出问题或询问。

截图:

https://i.sodamc.com/modrinth/f8bs87ZRHO.jpg?x-oss-process=style/forge2]

来自Modrinth所有游戏版本1.20.31.20.41.20.21.201.20.11.19.31.19.41.18.21.191.19.11.19.2所有类型neoforgefabricquiltforgeIcterine 1.3.0 NeoForge 1.20.3 - 1.20.4Icterine-neoforge-1.20.3-4-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20.3, 1.20.4类型:NeoForgeRelease下载次数: 828Icterine 1.3.0 NeoForge 1.20.2Icterine-neoforge-1.20.2-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20.2类型:NeoForgeRelease下载次数: 95Icterine 1.3.0 Fabric 1.20.3 - 1.20.4Icterine-fabric-1.20.3-4-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20.3, 1.20.4类型:FabricQuiltRelease下载次数: 45,257Icterine 1.3.0 Fabric 1.20.2Icterine-fabric-1.20.2-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20.2类型:FabricQuiltRelease下载次数: 500Icterine 1.3.0 Fabric 1.20 - 1.20.1Icterine-fabric-1.20.0-1-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20, 1.20.1类型:FabricQuiltRelease下载次数: 109,072Icterine 1.3.0 Forge 1.20.3 - 1.20.4Icterine-forge-1.20.4-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20.3, 1.20.4类型:ForgeRelease下载次数: 326Icterine 1.3.0 Forge 1.20.2Icterine-forge-1.20.2-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20.2类型:ForgeRelease下载次数: 247Icterine 1.3.0 Forge 1.20 - 1.20.1Icterine-forge-1.20.0-1-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.20, 1.20.1类型:ForgeNeoForgeRelease下载次数: 260,947Icterine 1.3.0 Forge 1.19.3 - 1.19.4Icterine-forge-1.19.3-4-1.3.0.jar下载1.3.0#ReleasePorted to 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4! Fabric, Quilt, Forge, NeoForge!Icterine now works on any version between 1.18.2 and 1.20.4.展开版本: 1.3.0支持游戏: 1.19.3, 1.19.4类型:ForgeRelease下载次数: 463Icterine 1.2.0 ForgeIcterine-forge-1.2.0.jar下载1.2.0#Release* Small bug fixes* Now works with Minecraft from 1.18.2 to 1.19.2!展开版本: 1.2.0支持游戏: 1.18.2, 1.19, 1.19.1, 1.19.2类型:ForgeRelease下载次数: 138,748Icterine 1.2.0 FabricIcterine-fabric-1.2.0.jar下载1.2.0#Release* Small bug fixes* Now works with Minecraft from 1.18.2 to 1.19.4!展开版本: 1.2.0支持游戏: 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4类型:FabricQuiltRelease下载次数: 2,614Icterine 1.1.0 ForgeIcterine-forge-1.19.2-1.1.0.jar下载1.1.0#ReleaseAdded new optimizations:* `optimize_multiple_predicate_trigger`* `check_count_before_item_predicate_match`* Internal debugging optimizationsSee the mod\'s main page for optimizations\' descriptions.展开版本: 1.1.0支持游戏: 1.19.2类型:ForgeRelease下载次数: 338Icterine 1.1.0 FabricIcterine-fabric-1.19.2-1.1.0.jar下载1.1.0#ReleaseAdded new optimizations:* `optimize_multiple_predicate_trigger`* `check_count_before_item_predicate_match`* Internal debugging optimizationsSee the mod\'s main page for optimizations\' descriptions.展开版本: 1.1.0支持游戏: 1.19.2类型:FabricQuiltRelease下载次数: 112Icterine 1.0.0 ForgeIcterine-forge-1.19.2-1.0.0.jar下载1.0.0#Release展开版本: 1.0.0支持游戏: 1.19.2类型:ForgeRelease下载次数: 111Icterine 1.0.0 FabricIcterine-fabric-1.19.2-1.0.0.jar下载1.0.0#Release展开版本: 1.0.0支持游戏: 1.19.2类型:FabricQuiltRelease下载次数: 109全部版本

markdown_parsed

文章类型:收录

layui.use([\'form\'], function(){
var form = layui.form;
});

游客,如果您要查看本帖隐藏内容请回复
Icterine
楼主 2025-8-10 18:01:32 回复 收起回复
小僵尸论坛感谢有你~
回复 论坛版权

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 手机动态码快速登录

本版积分规则



介绍

我的世界(Minecraft)小僵尸论坛
收录了来自各地的我的世界(MC)爱好者们的各种资源

须知: 切勿滥用举报,任何与举报相关的信息必须属实!

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

官方

新浪微博 腾讯微博 微信公众号 投稿规则 版权声明 捐助我们

官方QQ①群: 291907844 (点击加群)
官方QQ②群: 421312192
官方QQ③群: 528726532

我的世界(Minecraft)小僵尸论坛

新会员

QQ|Archiver|手机版|小黑屋|Minecraft(我的世界)小僵尸论坛 |网站地图

GMT+8, 2025-9-10 05:18 , Processed in 0.189528 second(s), 48 queries .

快速回复 返回顶部 返回列表