首页 > 解决方案 > P2P 网络中的匿名可见性检查

问题描述

我正在为游戏的 P2P 网络解决问题。问题如下:考虑一个网格上的两个玩家,每个玩家都存储自己的位置。玩家 1 想知道它是否看到玩家 2。换句话说,玩家 2 是否应该将其位置数据发送给玩家 1。

问题很明显,为了知道玩家 2 是否应该发送它的数据,它需要玩家 1 的位置,因此玩家 1 必须显示它的位置。我想知道是否有人知道匿名进行这种可见性检查而不透露玩家位置的系统。

现在我有一个算法/策略,它只显示玩家 1 是在玩家 2 的上方、下方、左侧还是右侧,但不会向玩家 2 透露玩家 1 的确切坐标。它基于同态属性某些密码,但这在某些游戏中仍然是一个很大的限制,尤其是第一人称射击游戏,知道敌人的大致方向会很有帮助吗?请注意,我不是在这里寻找完全同态密码学,只是可以解决这个特定问题的东西,即检查一个点是否在“可见性域”内,而不揭示位置(或可见性域)信息。

这个问题可能有点牵强,因为那里可能没有这样的算法,但我想我还是会问:)

标签: visibilitydetectionp2panonymous

解决方案


如果有人遇到此问题并想知道答案,我在https://cs.stackexchange.com/questions/99001/anonymous-visibility-check-in-p2p-networks/106750#106750上发布了答案。不能保证它是 100% 正确的。


推荐阅读