【发布时间】: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