适用于1.20.6及更高版本的QSL和QFAPI - Quilt

作者:API传播员 · 2025-11-22 · 阅读时间:3分钟

QFAPI现已推出1.20.6和1.21版本。这些版本中捆绑的QSL(Quilt标准库)版本相比之前更加精简,目前仅包含“QSL_base”和“crash_info”模块。未来,更多的API将逐步重新引入QSL。这一变化意味着使用Quilt标准库开发的模组可能需要额外的工作才能适配1.20.6及更高版本,而基于Fabric的模组则可以正常运行。此外,未来版本的更新周期预计将大幅缩短。


故事的核心

1.20.6版本自4月下旬发布以来,QSL和QFAPI的更新工作一直延迟,直到这篇博客文章才有所进展。这一问题可以追溯到2022年QFAPI首次发布时。接下来,我们将探讨导致更新延迟的原因、目前采取的解决方案以及未来的计划。


为什么更新耗时如此之久

复杂性与规模

QSL的更新过程极其复杂,涉及多个技术领域,包括网络内部结构、同步注册表以及加载模组资源等。这些问题通常超出了普通模组开发者的关注范围。此外,QSL的API与Minecraft代码库的深度耦合,使得即使是小版本更新(如1.20.4到1.20.5)也可能需要对网络模块进行大规模重写。

兼容性挑战

QSL的API需要与QFAPI保持兼容。这要求我们在设计新API时,不仅要优雅地应对Minecraft内部代码的变化,还需与Fabric保持足够的相似性,以确保兼容性。

人员变动与技术债务

QSL的部分API设计较为陈旧,其最初的贡献者已经离开了Quilt项目。这使得当前的核心维护团队需要在修复这些API的同时,重新学习其工作原理。这种情况导致了开发效率的下降,并增加了出错的可能性。


当前的解决方案

精简版QSL的发布

为了应对上述挑战,我们决定暂时发布一个精简版的QSL。目前的版本仅包含“QSL_base”(提供入口点和事件系统的模块)和“crash_info”(用于故障报告)。希望移植到1.20.6及更高版本的Quilt模组开发者,应将其对Quilt API的依赖迁移到Fabric的等效版本。

权宜之计

这种精简策略是为了在解决QSL根本问题的同时,确保项目能够继续推进。未来,我们可能会恢复所有旧的QSL API,删除与Fabric重复的模块(如网络),甚至将QSL作为Fabric API的扩展。


展望未来

无论未来的具体方向如何,我们的首要任务是确保Quilt Loader用户能够尽快在新版本上运行他们喜爱的模组。我们将继续努力优化更新流程,减少版本迁移的复杂性,为开发者和用户提供更好的支持。


原文链接: https://quiltmc.org/en/blog/2024-07-03-qfapi-moving-forward/