跳到正文

FastQuit

作者:contaria

在地图仍在后台保存时,让你提前返回标题界面!

收藏

介绍

介绍由机器翻译自 CurseForge 原页面,仅供参考。

在 CurseForge 上排版会有些问题,如果你想按原本的样式阅读,请前往 Modrinth。

FastQuit

关于此模组

此模组允许你在世界仍于后台保存时提前返回标题界面。

不用担心,必要时模组会等待世界完成保存,不会丢失任何数据!

世界会显示在世界列表中,即使仍在保存,你也可以编辑、删除或重新创建它。
这是通过重新利用仍在保存中的世界信息实现的。

在当前状态下,这样做应该是安全的,因为我们已经采取了线程安全措施。
如果你仍然遇到问题,最坏的情况也只是操作失败,并且 Minecraft 会显示提示消息告知你操作失败。

如果发生这种情况,请附上你的 .minecraft/logs/latest.log 文件提交问题!

加入 Discord!

如果你对我的模组感兴趣,或者有任何疑问,可以加入我的 Discord!

配置

要配置此模组,请从模组菜单打开配置界面,或者前往 .minecraft/config/fastquit-config.txt。

目前有三个选项可以配置:

显示提示消息:

决定世界完成保存时是否显示提示消息。

后台线程优先级:

设置服务器在后台保存世界时的线程优先级。
这样做可以改善保存时的客户端性能,但会使整体保存时间变长。
数值必须在 0 到 10 之间,将其设为 0 会禁用线程优先级调整。

渲染“正在保存世界”界面:

使用较高渲染距离时,退出世界仍可能需要一些时间,因为必须清除客户端的区块存储。
启用此设置后,将会渲染“正在保存世界”界面。

显示保存时间

决定保存世界所花费的时间是否显示在提示消息和世界列表中。
数值必须在 0 到 2 之间:0 表示从不显示时间,1 表示仅在提示消息中显示,2 表示同时在世界列表中显示。在模组菜单中,这些选项会以相应的名称标注。

此模组的工作原理

从核心原理来说,此模组相当简单:

通常,退出单人世界时,客户端会等待服务器线程完成世界保存,然后才返回标题界面。
此模组跳过了这段等待时间,让服务器继续在后台保存。

请注意:退出世界并不总是会立即完成,因为客户端仍可能需要一些时间来卸载已渲染的区块等内容。不过,即使在这种情况下,你仍然会感受到速度提升,因为客户端卸载和服务器保存现在会同时进行,而不是一个接一个地进行。

当然,实际情况并没有这么简单:

像这样处理多个线程时,会出现许多问题。
例如,进入世界列表时,Minecraft 会尝试读取世界的关卡数据,但由于后台保存仍然锁定着世界文件,读取会失败。

现在,我们会通过仍在保存的服务器来访问这些信息。
同样地,当尝试编辑、删除或重新创建世界时,我们必须使用现有的会话。

为了保证这些过程的线程安全,必须进行大量同步操作,以确保保存中的服务器和客户端不会互相干扰。

对于某些情况,例如重新加入仍在保存中的世界或创建备份,我们会等待服务器完成全部保存操作。
退出游戏时,我们也会等待世界完成保存,以确保不会丢失任何数据。

感谢以下人员……

翻译人员:

  • Felix14-v2(俄语)
  • Cccc-owo(简体中文)
  • JustAlittleWolf(德语)
  • YakisikliBaran(土耳其语)
  • Skidamek(波兰语)
  • Oondanomala(意大利语)

兼容性

在MixinExtras和自定义 Mixin 配置插件的帮助下,这些 Mixin 的设计非常非侵入式,同时也十分有效。

因此,目前没有已知的不兼容情况。

如果你怀疑本模组与其他模组存在不兼容问题,请提交 Issue!

遇到问题?

如果你遇到了任何问题,请在Issue 跟踪器中提交 Issue!

请务必附上重要信息,例如你使用的其他模组、日志文件或崩溃文件,以及可能的话,附上重现问题的步骤。

上传任何文件前,请务必删除其中的个人数据!(例如日志目录中记录的电脑用户名)

常见问题

FastQuit 支持哪些 Minecraft 版本?

FastQuit 支持 Minecraft Java 版 1.19–26.3,共 28 个版本,可用的加载器:Fabric / Quilt。下载时注意选择和你游戏版本一致的文件。

FastQuit 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / Quilt,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

contaria 的其他作品

查看全部 →