双人游戏 – 回合制游戏

我在这里有一个困境。

试图build立一个简单的基于回合的双人游戏,我一直在尝试Node.js和Socket.IO,正如我在一个问题中所见:

用Node.JS构build的多人游戏JavaScript游戏 – 分离玩家

这回答了我的大部分重大问题,但仍然很less。 因为我也build立了一个聊天室来testing它,它很好地工作。

但是,这种游戏真的有使用node.js的意义吗? 可以用HTML5 WebSockets完成吗?

我正在用刀子来抹面包。
然而,为了这个目的,是否真的有用刀的意思? 可以用黄油来完成吗?

Node.js – 是许多不同用例的应用程序平台,从小型命令行工具开始,以LinkedIn Mobile,MySpace和游戏等大型应用程序结束。
由于这个平台有很多与networking相关的库和工具,所以在这种情况下使用它非常简单,特别是在JavaScript中编写代码(对web更好)。
Socket.IO – 是一个特定的库,它利用多个Web传输来尝试在Web浏览器和服务器之间build立可靠的实时双向通信层(在这种情况下为node.js)。

HTML5是由浏览器供应商(Chrome,Firefox,IE等)实施的一套技术。 像帆布,webgl,audio/video元素,websockets这样的技术 – 它是自力更生的东西。 在WebSocket的情况下 – 他们必须与某个服务器通话。 没有任何服务器 – 它们是无用的。

如果您select使用node.js作为您的服务器平台,那么您有几个选项,最常见的是使用socket.io或纯websockets 。
最常见的多人游戏体系结构,特别是在networking上的是客户端服务器 。 这意味着至less有一个客户端可以与之通话的中央服务器。 在这种情况下,服务器将执行大部分决策和所有游戏逻辑,并仅向客户端发送所需数据进行渲染。
还有另一种select: P2P(Peer to Peer)WebRTC是可能的,但由于缺乏大多数常用浏览器的实现,所以尚未准备好用于商业用途。 在这种情况下,所有客户都应该限制相同的游戏状态,并在游戏会话中对所有(大多数)同伴进行交叉批准。
我build议从服务器<>客户端开始,因为它适合大多数情况下也是多方面简单(反之亦然:))。

您也可以使用任何其他服务器端平台,如PHP,.Net,Java,Ruby,Python,C / C ++和其他。 这是舒适和访问有用的图书馆,帮助你的发展道路上的问题。