【问题标题】:Is there a framework for multiplayer board game in JavaScript?JavaScript中有多人棋盘游戏的框架吗?
【发布时间】:2011-03-20 04:35:45
【问题描述】:

我可能会使用 javascript 来开发在线棋盘/纸牌游戏。 我的方法是让客户端能够在独立模式下工作,因此它必须强制执行规则。这意味着,例如,如果玩家不能打出一张牌,他或她甚至不应该打出这张牌。这是为了增强用户体验。

这里的想法是添加钩子以向服务器发送和接收事件,并在服务器和客户端之间共享实现游戏规则的代码。我看不出写两次的意义。

因此,如果我在“服务器”模式下玩游戏,客户端将使用我的操作更新服务器(同时验证它们),服务器将向我发送有关其余玩家的更新。

是否有任何框架可以利用这项工作?

对于服务器端,我的选择似乎是 Node.js(不稳定,但一切都是 JS,这很整洁)、Erlang + erlang_js,也许还有一些“编译成 javascript”的奇怪框架,我我不是很喜欢。

【问题讨论】:

  • 我自己也有类似的情况。你如何保持这样的系统干燥?客户端应该能够独立进行游戏,但服务器最终需要验证所有内容。如果规则发生变化,最好不要同时更改客户端和服务器代码。
  • 您是否研究过 GWT?编译为 Javascript 的 Java 代码,可用于编写客户端和服务器端。
  • @g.d,GWT 已经在我的脑海中闪过(并且可能适合 OP),但我已经致力于 Python/jQuery 作为我的后/前。
  • @g.d.d.c 对我来说,如果我要用相同的语言对服务器和客户端进行编码,它应该是 javascript 似乎更自然。而且我根本不喜欢 java 的静态特性,我太习惯于支持闭包的脚本语言。 @no 我希望客户端加载一个 .js 文件并在那里拥有所有逻辑,而不是从服务器发送代码,这是一种不同的方法。我希望我的客户活泼 :-)

标签: javascript node.js erlang game-engine


【解决方案1】:

听起来Ape 非常符合您的要求。它支持 javascript 模块,因此您可以在服务器上运行与客户端相同的代码,并且很好地支持在不同用户之间发送消息(查看 mmorpg 和聊天演示)。

【讨论】:

  • 非常好!我不知道猿。我不知道我是否会使用它,但我认为这引导我朝着正确的方向前进,非常感谢!
  • 不幸的是APE(很简洁)只是为客户推送东西。
【解决方案2】:

我一直在使用 RingoJs http://ringojs.org 来实现这一点 - 客户端和服务器代码共享 - 有一段时间了。

为了更轻松地编写网络浏览器游戏,我在其上开发了一个薄层:http://gamejs.org

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-14
    • 1970-01-01
    • 1970-01-01
    • 2015-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多