use*_*365 6 compression networking client-server multiplayer data-structures
我有具有相应客户端对象的服务器对象.要保持同步的数据位于服务器对象的键/值字典中.为了使客户端对象与服务器对象保持同步,我希望服务器为每个对象的每一帧发送键/值字典.
什么数据结构/算法允许我使用最少的位发送键/值字典列表?
奖励约束1:对于每种类型的对象,某些键的值比其他键的更改频率更高.额外约束2:服务器端的内存使用相对昂贵.
您无需发送整本词典。相反,只发送更改的内容。
您不需要每一帧都发送它。相反,应定期发送,与帧速率无关。
第二点需要记住的一个重要想法是客户端可以预测游戏状态的变化 - 游戏可以在从服务器接收信息之间继续进行模拟,然后只需要在接收到权威信息后纠正错误再次从服务器。