0

想象一下游戏中的以下情况:向玩家呈现一系列随机数。每个号码在播放下一个号码之前都会向玩家显示一小段时间。玩家的目标是选择一个高数字。他或她只需要在正确的时刻“点击”,然后选择号码。

问题是关于如何在客户端/服务器场景中以安全的方式实现此场景。

这意味着有一个显示上述场景的游戏客户端,并且有一个服务器需要将所选数字(以任何方式)发送到该服务器。关键是要让这个东西安全,这样就不可能作弊(例如通过修改客户端)。

4

1 回答 1

1

真的没有办法让它完全安全。即使不修改您的客户端,人们需要做的只是让另一个程序在后台运行,读取监视器并寻找出现的特定数字,然后向您的客户端程序发送鼠标单击事件。这可以在完全不修改您的客户端程序的情况下完成。即使您以某种方式设法使其安全,以使他们无法与您的程序同时运行任何其他程序或服务,他们也可以将网络摄像头指向连接到另一台计算机的屏幕,以进行光学数字识别和通过 USB 向运行您的程序的计算机发送鼠标单击事件。

幸运的是,您也许能够解决这个问题。通常,如果某件事要成为“掷骰子”,则您需要随机的“基于运气”的结果。通过允许他们在某个时间点击,您将把它变成一个基于技能的游戏,而不是基于运气的游戏,因此并不是真正的掷骰子。你可以做到这一点,从他们点击到骰子停止滚动时会有轻微的“延迟”,所以他们看到它在滚动,点击,然后减速并落在一个数字上。这样,当他们实际点击时显示的数字并不能确定结果,而是该数字之后的下一个(随机)数字,这将消除作弊的可能性,并使其成为基于运气而不是基于技能的掷骰。

于 2011-10-22T22:33:53.497 回答