开发更新 #3:适用于GTAV Enhanced 的 FiveM

我们很高兴分享 FiveM for GTAV Enhanced 开发更新系列的第三篇文章,其中包含抢先体验版本的发布详情。

今天,我们将分享网络改进、脚本运行时、服务器端性能、开发者工具等方面的进展。

**改进安装过程**

FiveM for GTAV Enhanced 引入了新的安装程序,让您可以更好地控制客户端的安装位置和方式。

您可以为缓存的服务器文件选择一个单独的文件夹或驱动器,并可以选择在安装过程中创建桌面和开始菜单快捷方式。

该安装程序还支持卸载和修复当前安装。与目前的 FiveM 一样,您仍然可以通过 Windows 的应用程序管理界面直接卸载它。

**持续的网络改进**

在我们的第一篇开发更新中,我们分享了 FiveM for GTAV Enhanced 中引入的第一波网络性能改进的细节。自那时起,我们一直在持续优化和改进客户端与服务器之间的同步。

作为这些优化的一部分,我们移除了对第三方同步帧库的依赖。同步数据现在作为原始 UDP 数据包传输(ENet 仍然处理基于事件的通信),这使我们可以完全控制同步层,并为未来的 I/O 优化(如 Windows 上的 Registered I/O (RIO) 和 Linux 上的 io_uring)打开了大门。

这让我们能够更好地控制网络堆栈,并显著提高了网络同步 tick 率。服务器管理员现在可以将其配置为每秒最多 120 次更新,而在 FiveM for GTAV Legacy 上,之前的最高值是 30 次(启用 `sv_useAccurateSends` 后为 40 次)。更高的 tick 率减少了玩家操作与其他玩家看到该操作之间的延迟,这在 PvP 场景中尤为重要,因为精确的时机和准确的命中检测就是一切。

注意:我们第一篇开发更新中的性能对比图表已经是在 OneSync 以每秒 120 tick 运行时捕获的。那里显示的带宽和数据包速率改进就是服务器管理员在满 tick 率下可以预期的效果。

我们还改善了不良网络条件下的可靠性。更好的重试逻辑可以在高丢包率下保持同步稳定,并且我们修复了服务器端实体创建的问题,该问题之前可能导致已连接的玩家看不到某些实体。

实体剔除(决定每个玩家能看到哪些实体以及它们重要程度的进程)也得到了改进。以前,它在同步线程上运行,每个 tick 只能处理大约 16 名玩家。在一个拥有数千名玩家且以 30Hz 运行的服务器上,可能需要几秒钟才能循环处理完所有人,导致实体明显延迟出现。现在,剔除操作在同步管道内的多个核心上运行,因此即使在人口稠密的服务器上,实体也能更快地在玩家周围出现。

我们的内部测试显示了强劲的结果,有明显的改

开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM开发更新 #3:适用于GTAV Enhanced 的 FiveM
© 版权声明
THE END
喜欢就支持一下吧
点赞234赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容