快速公告:目前没有针对1.14+版本的FoamFix更新计划,无论是Forge还是Fabric版本。
FoamFix是一款模组,旨在通过简单、有针对性的优化,对《我的世界》(Minecraft)的模组化体验的某些方面进行优化。
功能特性
FoamFix特别关注模组化《我的世界》的以下方面:
- 内存使用(在《我的世界》1.8+版本中)。这是最初开发FoamFix的原因,也是如今它被众多整合包采用的最重要原因。观察表明,在特别大型的整合包中,Java堆内存使用量(在游戏加载完成后,通过VisualVM在主菜单中测量)最多可降低50%!
- TPS使用,特别是在较大的服务器上——幽灵区块加载和网络改进对单人游戏体验帮助不大,但在扩展多人游戏世界时却极为有益。
还有其他一些较小的优化,但它们可能不会直接对你的游戏体验产生显著影响。如需完整列表,请查看你的foamfix.cfg文件!
常见问题解答
- 问:我遇到了性能问题,移除FoamFix后问题就解决了!
- 答:确保你已更新到最新版本。我无法凭借自身资源在数千种计算机硬件配置上测试FoamFix,有时特定于某些配置的问题可能会出现。如果你已更新到最新版本但仍遇到问题,请联系我!
- 问:如果客户端/服务器端没有安装FoamFix,我能在服务器/客户端运行它吗?
- 答:可以。
- 问:我能在服务器端和客户端混合使用不同版本的FoamFix吗?
- 答:同样,可以。
- 问:为什么有针对1.7.10版本的FoamFix?
- 答:FoamFix主要针对1.8+版本的模组化《我的世界》。然而,它的一些后期优化——特别是幽灵区块加载修复——与一些已废弃的错误修复/优化项目(BugfixMod、Minecraft Forkage)相结合,促使我为1.7.10版本创建了一个同名的优化模组,它具备一些相同的功能。一如既往,查看foamfix.cfg文件以了解更多信息!
- 问:你能为原版《我的世界》制作FoamFix吗?
- 答:FoamFix几乎所有的优化都针对模组化环境。将其移植到原版几乎没有什么好处,因为原版本身就比Forge + FoamFix更高效。如果你在运行大型原版服务器,使用专门针对此的解决方案可能是个更好的主意。
- 问:你能在开发环境中运行FoamFix吗?
- 答:可以,但你必须使用BON2或类似工具手动反混淆它。
错误报告
请首先尝试在不安装FoamFix的情况下重现错误——如果不安装FoamFix时错误仍然存在,那很可能不是FoamFix的问题。
当你报告一个只有在安装了FoamFix时才出现的错误时,
- 请仅在此处报告!这有助于我跟踪现有问题。
- 特别要注意,请不要向其他模组开发者报告!如果我得出结论认为问题是由其他模组引起的,我会尽力亲自联系其他作者并与他们讨论修复方法;然而,不必要的错误报告有点烦人。
额外提示
(请注意,此部分将在某个时候重写为更全面的优化指南)
- 在forge.cfg中启用alwaysSetupTerrainOffThread。(自0.6.3版本起,FoamFix会在新实例中自动为你执行此操作!)
- 如果你遇到与“幽灵区块加载”相关的延迟(大约每30秒出现一次明显的延迟峰值),部分解决此问题的方法是在forgeChunkLoading.cfg中增加dormantChunkCacheSize的值。
- 对于某些GPU/驱动程序配置(特别是某些AMD驱动程序/显卡组合),禁用纹理过滤(将纹理过滤等级设置为0)将显著提高帧率。这是因为随着要更新的纹理数量增加,动画纹理更新导致的延迟会大幅上升,而这与纹理过滤等级的数量呈线性关系。
- 在专用服务器上,设置max - tick - time = 0可以解决与“java.lang.Error: Watching server”相关的崩溃问题。仍在研究出现这种情况的原因!
常见崩溃问题
- 在FoamFix 0.9.6+版本中出现java.lang.NoSuchMethodError: net.minecraftforge.common.model.TRSRTransformation.isIdentity()Z——将Forge更新到最新推荐版本,或将FoamFix降级到0.9.5版本。
- java.lang.IllegalArgumentException: Cannot set property [...], it is not an allowed value ——导致此错误的代码路径与原版行为非常相似,并且在不安装FoamFix的情况下也可能导致相同的崩溃。确保在不安装FoamFix时无法重现该问题。
- 如果你在使用FoamFix的同时还使用SpongeForge(请注意,我不支持这种情况),与MixinMutableBlockPos相关的常见崩溃可以通过在config/foamfix.cfg中禁用coremod.optimizedBlockPos来解决。
支持说明
- 请仅使用GitHub问题跟踪器来报告错误。这样更便于跟踪。
- 请注意,“不支持”并不意味着“完全无法使用”——而是意味着“可能会出现问题,并且由于各种原因我可能无法帮助你”。请注意!
以下模组不受支持,并且我无法保证能针对与它们的交互提供令人满意的修复:
-
- FastCraft 2。其许可协议非常严格,不依赖开发者的指导就无法进行调试。
- NotEnoughIDs。自2017年9月起不再维护。
- OptiFine。其许可协议非常严格,不依赖开发者的指导就无法进行调试。
- Sponge。我们的一些引擎更改存在冲突。(请注意,即使你在服务器端安装了Sponge,在连接到Sponge服务器时在客户端使用FoamFix是受支持的!)
- TexFix。
- 大多数其他专有优化模组。如果我看不到源代码,我不太可能致力于修复相关问题。
Quick PSA: There are no plans for a 1.14+ FoamFix update at this time, neither Forge nor Fabric.
FoamFix is a mod designed to optimize certain aspects of a modded Minecraft experience using simple, targeted optimizations.
Features
FoamFix focuses on the following aspects of modded Minecraft in particular:
- Memory usage (in Minecraft 1.8+). This is the original reason FoamFix was made for, and the most important reason for it being adopted in modpacks today. Observations show that, on particularly heavy modpacks, Java heap usage (as measured on the main menu, after the game has finished loading, with VisualVM) can fall by as much as 50%!
- TPS usage, particularly on larger servers - ghost chunk-loading and network improvements will not help the single-player experience much, but can be incredibly beneficial when trying to scale up a multiplayer world.
There are also other, more minor optimizations, but they will probably not have a significant impact on your gameplay directly. Check your foamfix.cfg file for a complete list!
FAQ
- Q: I'm having performance issues, and removing FoamFix fixes them!
- A:Make sure you have updated to the latest version. It is impossible for me to test FoamFix on the thousands of computer hardware configurations out there with my own resources, and sometimes issues specific to some of them can occur. If you have updated to the latest version and are still experiencing issues, contact me!
- Q: Can I run FoamFix on the server/client side if it's not present on the client/server side?
- A: Yes.
- Q: Can I mix versions of FoamFix between the server and client side?
- A: Similarly, yes.
- Q: Why is there a FoamFix to 1.7.10?
- A: FoamFix primarily targets 1.8+ modded Minecraft. However, some of its later optimizations - particularly ghost chunkloading fixes - in combination with some abandoned bugfixing/optimization projects (BugfixMod, Minecraft Forkage) have led me to create an optimization mod under the same name for 1.7.10, which shares some of the functionality. As always, check foamfix.cfg to learn more!
- Q: Can you make a FoamFix for vanilla?
- A: Almost all of FoamFix focuses on optimizations particular to modded environments. Porting it to vanilla would have very few benefits, as vanilla by itself is more efficient than even Forge+FoamFix. If you're running a large vanilla server, it might be a better idea to use a dedicated solution for that.
- Q: Can you run FoamFix in a development environment?
- A: Yes, but you must manually deobfuscate it with BON2 or a similar tool.
Bug Reporting
Please try to reproduce the bug without FoamFix first - if it is still present without FoamFix, it is most likely not a FoamFix issue.
When you report a bug that only appears with FoamFix installed,
- Please ONLY report them here! This helps me keep track of existing issues.
- In particular, please do not report them to the other mod developers! If I get to the conclusion that the issue is caused by a different mod, I'll do my best to contact the other author myself and discuss the fix with them; however, unnecessary bug reports are a bit of a nuisance.
Additional Tips
(Note that this section will be rewritten as a more comprehensive optimization guide at some point)
- Enable alwaysSetupTerrainOffThread in forge.cfg. (Since 0.6.3, FoamFix will automatically do this for you on new instances!)
- If you're experiencing "ghost chunk loading"-related lag (a noticeable lag spike every ~30 seconds), a way to partially work around the problem is to increase the value of dormantChunkCacheSize in forgeChunkLoading.cfg.
- For some GPU/driver configurations (in particular, certain AMD driver/card pairs), disabling mipmaps (setting Mipmap Levels to 0) will boost FPS considerably. This is due to lag caused by animated texture updates being much higher with increasing amounts of textures to update, which scales linearly with the amount of mipmap levels.
- On dedicated servers, setting max-tick-time=0 can solve crashes related to "java.lang.Error: Watching server". Still looking into why this happens!
Common Crashes
- java.lang.NoSuchMethodError: net.minecraftforge.common.model.TRSRTransformation.isIdentity()Z on FoamFix 0.9.6+ - Update Forge to the latest recommended version, or downgrade FoamFix to 0.9.5.
- java.lang.IllegalArgumentException: Cannot set property [...], it is not an allowed value - The codepath causing this error mimics vanilla behaviour very closely, and should cause the same crash without FoamFix. Make sure it cannot be reproduced without FoamFix.
- If you're using SpongeForge alongside FoamFix (keep in mind that I do not support it), a common crash related to MixinMutableBlockPos can be fixed by disabling coremod.optimizedBlockPos in config/foamfix.cfg.
Support
- Please only use the GitHub issue tracker for bug reports. Makes it easier to keep track of them.
- Please note that "not supported" does not mean "won't work at all" - rather, it means "things can break and I might be unable to help you for various reasons". Be careful!
The following mods are not supported and I cannot guarantee satisfactory fixes related to interactions with them:
-
- FastCraft 2. The licensing is very strict and debugging impossible without relying on the developer as an oracle.
- NotEnoughIDs. Not maintained since September 2017.
- OptiFine. The licensing is very strict and debugging impossible without relying on the developer as an oracle.
- Sponge. Some of our engine changes conflict. (Note that, even if you have Sponge on the server side, using FoamFix on the client side while connecting to a Sponge server is supported!)
- TexFix.
- most other proprietary optimization mods. If I can't see the source code, I'm not likely to work on fixing it.
本站是资源分享站,资源均来自于互联网和用户自发分享,仅供学习和交流使用。如有版权问题,请联系管理员删除。
操作
创作者
待认领资源
成为此资源的创作者
其他链接
最近更新资源
通天之路
热度 317 | 3 天前更新
匠途闲境 - Create Craft & Quiet
热度 215 | 3 天前更新
VERITY.exe
热度 371 | 6 天前更新
咒术回战(咒术战斗)
热度 68965 | 6 天前更新
暮色森林精选 - The Best of Twilight Forest
热度 25620 | 6 天前更新
无限计划 0.1 - Project Infinity 0.1
热度 9751 | 6 天前更新
黑暗RPG - DarkRPG - Forge
热度 9600 | 6 天前更新
[TLWS]末世生辉 The Last World Shines
热度 9409 | 6 天前更新
简易小屋
热度 628 | 1 周前更新
灾厄巫咒
热度 664 | 2 周前更新
阿卡迪亚的天启
热度 2872 | 2 周前更新
寄生仙途
热度 805 | 2 周前更新
评论区 (0)
登录 后才能发表评论
快来发表第一条评论吧!