我使用socket.io在JavaScript中制作一个简单的基于图块的2D多人游戏,您可以每200毫秒移动一个图块。我尝试过的两个解决方案如下:
客户端发送"向北走一个区块"每200毫秒。问题:人们可以轻易地破解客户端以更频繁地发送操作。
客户发送"向北行走"并且"停止了行走"。问题:有时候玩家会在"停止行走时移动额外的步骤"没有及时到达。
你知道解决这些问题的方法还是有更好的方法来做到这一点?
编辑:关于第一个解决方案,我尝试在服务器上添加验证,以检查自上次移动以来是否已经过了200毫秒。问题是,延迟仍然鼓励人们尽可能地垃圾邮件,给他们带来不公平的优势。