基本信息
我的世界Java版本
平台
其他链接
创作团队
详情信息
注意[1]: 如果您遇到未涵盖的性能问题,请随时提出请求。
注意[2]: 并非在所有情况下该模组都能提升性能。请务必测试结果,以确定您是否需要它。
Discord: https://discord.gg/hNBXPp45Zc
关于
这是一个简化的人工智能修改模组,侧重于游戏中人工智能的性能和底层修改。弥补基础游戏的不足,并针对模组化生态系统进行改进。处理常见问题,如动物过多、僵尸群对性能的影响,以及大型优化模组跳过的简单移除任务。
故事
人工智能改进模组源于解决重度模组化整合包服务器性能问题的需求。 由于服务器的TPS(每秒事务处理量)被所有争夺资源的模组消耗殆尽。用户通常通过删减模组和限制内容/功能来解决这个问题。我没有去针对模组下手,而是开始研究《我的世界》本身。专注于它的设计工作方式以及它如何导致性能问题。
我发现,随着服务器玩家数量的增加,实体数量和地理负载需求也会增加。首先想到的是降低生成率并限制总体实体数量。然而测试表明收效甚微,尤其是考虑到用户对农场相关问题的抱怨速度之快。在尝试了其他一些无果的配置解决方案后,我最终着眼于人工智能功能。很快就清楚地发现游戏中的人工智能优化得有多差。在研究了数百个性能分析器转储数据并测试了相关理论之后,我们推出了人工智能改进模组。最初的改进就是优化人工智能使用的数学运算。看到了相当大的改进……尤其是在玩家农场方面 :D
目标
该模组的重点始终是性能优先,其次是底层调整。这是为了在《我的世界》的整个生命周期内保持模组小巧且易于管理。对于其他功能,我们可能会发布其他模组,但也推荐社区中已有的一些很棒的模组。
https://www.curseforge.com/minecraft/mc-mods/in-control
常见问题解答
我安装了但没有看到如承诺的那样有很大提升?
《我的世界》的较新版本对人工智能进行了修复。在最近的几个版本中,除了其他修复之外,还实施了旋转修复。因此,该模组在较新版本中的影响比旧版本要小得多。
这个只能安装在服务器上吗?
是的,该模组的编码使其可以在无需客户端的情况下运行
这个只能安装在客户端上吗?
是的,不过它可能对提高帧率作用不大。
配置文件在哪里?
1.12.2及以下版本:'.minecraft/config/bbm/AI_Improvements.cfg'
1.14及以上版本:'.minecraft/config/aiimprovements-common.toml'
如果我禁用“EntityLookHelper替换”会怎样?
您不会在人工智能代码中看到太多改进。然而,如果您启用了其他禁用配置,应该没问题。
这个模组是如何修复性能的?
这取决于《我的世界》的功能和版本。大部分性能提升来自于对大量计算值进行缓存。这会以可忽略不计的内存占用为代价减少CPU时间。具体情况请查看功能列表……
当前功能
禁用人工智能“观察最近实体”的配置
默认情况下,该配置设置为“否”,不会执行任何操作。当设置为“是”时,它将移除一个名为“EntityAIWatchClosest”的人工智能片段。这个人工智能片段负责处理编码人工智能将头部转向附近实体的操作。从视觉上看,这会导致一些奇怪的问题。然而,对于CPU来说,这会释放大量因实体而占用的资源。
禁用人工智能“随机观察”的配置,默认情况下该配置未启用
默认情况下,该配置设置为“否”,不会执行任何操作。将配置设置为“是”会使实体不再使用“闲置观察”人工智能代码。这可以提高人口众多的服务器的性能。因为地图上几乎每个实体在无所事事时都会使用这个代码。从视觉上看,这可能会导致实体的头部有时不旋转,但大多数情况下不会被注意到。
用更高效的版本替换“EntityLookHelper”的配置,默认情况下该配置已启用
这是该模组的主要功能,可以以较小的内存成本大幅提高CPU性能。其工作原理是将《我的世界》的观察助手代码替换为自定义版本。自定义版本存储了一些数据,使其能够更快地获取某个位置的角度。通过使用VisualVM进行的一些测试,结果显示人工智能代码的CPU使用率降低了50%至80%。对于一个有25人持续在线的服务器,这使得TPS(每秒事务处理量)从5提升到了7。
模组包政策
只要下载来自CurseForge或我们在Modrinth上的镜像,就没问题。任何外部模组包都需要通过Discord请求许可。