gpt4 book ai didi

algorithm - 服务器如何避免 MMO 游戏中流量的二次增长?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:41:50 25 4
gpt4 key购买 nike

假设您有一个服务器权威的多人在线游戏(服务器对游戏中发生的事情有最终决定权,客户端只渲染图形并接受用户输入并将其提供给服务器)。

如果您在一个区域中有 X 个玩家并且彼此相邻,在彼此可见的情况下,服务器必须向每个玩家发送有关所有玩家状态的信息。

位置、当前动画、游戏统计数据等。

这意味着它必须发送值(value) X^2 的数据。然而,我见过超过 1000 名玩家聚集在一个地方的游戏,但它仍能正常运行。

如果服务器试图发送如此荒谬的数据量,这是不可能的。

那么它是如何完成的呢?

最佳答案

更新其他玩家的状态不需要大量数据。例如,每个客户端都可以重新计算所有其他玩家的位置、动画状态、统计数据等,只需给定他们的游戏 handle 输入。假设有 16 个按钮(位),每秒采样 10 次。这导致每个播放器每秒 20 字节的数据,需要 20 * 1000 * 1000 字节/秒的总带宽 = 1,000 个播放器的总带宽的 20 MB/s。该数据通常可以通过仅传输( Action 、时间戳)对来进一步压缩。

也就是说,在 MMO 游戏的许多方面,根本无法避免二次空间或时间复杂度。这就是为什么即使是今天的 MMO 通常也只支持每张 map 32-64 名玩家,很少支持 256 名或更多玩家。

关于algorithm - 服务器如何避免 MMO 游戏中流量的二次增长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35553756/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com