我有一个内置闪存的单人游戏小游戏,类似于蠕虫。您可以移动鼠标来计算角度,单击拍摄,并根据风向或多或少地施加力量。
这个物理学完全用动作编写。我想知道如果我想构建一个实时的多人1对1版本,最佳解决方案是什么。现在我已经在后端设置了一个flash和节点的小例子,它与以json格式传递数据的套接字(node.js中的网络模块)进行通信。到目前为止一切都很好。我现在想到了一个特定的问题......
1)子弹动画应仅由客户端处理,仅由服务器处理,还是两者兼有?
如果客户端处理所有子弹动画,它将更容易作弊,但更容易开发sinde已经完成了。如果服务器处理它,我将不得不构建功能来平滑动画。但也许,因为它只是一个1对1的简单游戏,它将是免费的,只是为了好玩,应该继续移动闪光中的子弹,检测闪光中的碰撞,并通知服务器,如果我击中我的对手?或者我还能做些什么吗?
答案 0 :(得分:1)
可以利用的逻辑应该在服务器上完成。可视化是无法利用的逻辑,即使这样,它也不会影响其他玩家。它应该在客户端完成。
此外,当您收到每次拍摄的数据时,您应该检查它是否有效(电源是否太大或者播放器是否已用完子弹)。这是可以利用的逻辑。
此外 Flash 支持 TCP套接字, Node 也是如此。而不是建立请求/响应架构,使用套接字更有效。
使用HTML5 Canvas,WebSockets和Processing.js等技术的另一个建议是,您应该考虑在 HTML 和 JavaScript ,因为这样可以让所有设备上的所有用户都能玩它。