1

例如,用户注册游戏,他得到坐标 (5;5)。另一个用户之前在用户附近的某个地方获得坐标,比如说 (8;5),等等。因此,所有最新注册的用户都彼此接近。

问题是 - 以前生成靠近用户的坐标的最佳方法是什么?

对不起英语不好

4

2 回答 2

1

首先,您必须定义新用户将出现多远,然后从现有用户生成位置。

例如,假设 (2;6) 中有一个用户和一个新用户注册。您定义新注册用户将出现的最大距离为 5 个单位。新注册用户的位置将类似于:x = 2 +/- 随机 (0-5) y = 6 +/- 随机 (0-5)

这样,新的用法可能会出现在 (5;4), (7;2), (3;5)......

于 2012-12-14T22:41:19.347 回答
1

您应该决定新用户的距离取决于什么。

案例 1:所有用户在某个点附近生成,例如 (50;50),两个轴上的最大偏差为 25。

案例 2:所有用户都在前一个生成点附近生成,但有一些偏差。

案例 3:所有用户在前一个生成点附近生成,并根据注册时间差异产生偏差,例如如果两个用户同时注册,他们将在同一点生成,但是如果第二个用户在第一个用户之后 2 分钟生成,偏差将乘以 2。


无论哪种方式,您都必须保存最后一个生成点才能从中计算出一个新生成点。

至于什么是最好的——你必须自己选择。

于 2012-12-14T22:49:39.783 回答