1

我需要为平板电脑创建一个多人游戏,并且一直在寻找一个客户端服务器框架,我可以在服务器端使用 Java 和 Objective C 或 Java 来使用客户端。该游戏的动作并不激烈,一次只有少数玩家使用,而不是数百万玩家。

我查看了 WebSockets,但似乎它的目标是浏览器而不是平板电脑,尽管还有一个框架用于在客户端执行 Objective C Objective C。

我对 Web 应用程序有相当多的经验,但从未做过客户端服务器游戏。任何想法从哪里开始将不胜感激。

4

1 回答 1

0

许多实时游戏,例如第一人称射击游戏,编写了他们自己的基于 UDP 的自定义协议。

过去,非实时游戏通常会直接通过 TCP 编写自己的协议,但如今,在非实时游戏中使用 HTTP 已经很普遍了。虽然 HTTP 最常在浏览器中用于承载 HTML 页面,但它实际上足够通用,几乎可以在任何需要 RESTful 属性的服务器-客户端情况下使用。使用 POST 创建,GET 读取,PUT 更新,DELETE 删除,得到整个 CRUD;使用 URL 来识别资源;和 cookie 来跟踪状态;用于身份验证的 HTTP Auth;和 HTTPS 以防止窥探。Websockets 将服务器发起的推送添加到 HTTP 协议。使用 HTTP 的优点是它的行为易于理解且标准化(因此,许多高质量的预写模块支持该协议)。另一个优点是 HTTP 与语言和设备无关,因此在网络访问方面将您的游戏移植到浏览器或其他平台应该变得相当简单。HTTP 也有很好理解和很好支持的技术,可以让你的游戏扩展、负载平衡、缓存等,这是你编写自己的应用层协议所没有的。

很少需要也不建议开发自己的应用程序协议,但如果需要,您可以直接在 TCP 上编写自定义应用程序层协议。这通常是高度专业化的,所以在不知道游戏的类型和网络要求的情况下,我无法告诉您是否会从 TCP 级别的框架中受益。

于 2013-02-03T10:34:58.223 回答