如何使用Google App Engine进行客户端/服务器游戏(寻找教程。)


11

(注意:这是我在SO上提出一个问题的副本暂时忘记了GameDev <挂在头上的耻辱>。回答一个后,我会将其链接回另一个。)

我正在尝试使用Google Apps Engine作为我的后端(规范要求)来做我的第一个客户端/服务器游戏。我已经完成了教程(Java),但这一切似乎都以浏览器为中心。

基本上,我希望我的(移动设备,无关紧要)应用程序能够:

  • 允许用户创建游戏帐户(不是他们的Google帐户!)
  • 使用该帐户登录。
  • 按下“ MARCO”按钮将帐户识别的请求发送到服务器。
  • 从服务器获取“ POLO”响应。
    • 作为数据(例如JSON对象,XML-DOM或类似数据),而不是网页。

谁能给我指出一个好的教程/示例项目/详细阅读以帮助我实现这一目标?我很确定,一旦我能够正常工作,我就可以完成所有其他工作-但我遇到了“卡在起始门”的问题,无法进行基本的帐户登录,并且非HTML数据交换。

谢谢!


服务器端将用Java还是Python编写?服务器上的简单数据库是否足够?您是否需要执行很多游戏逻辑?
亚历克斯·谢尔

@Alex:我正在用Java编写。虽然我不确定为什么这对我的问题很重要,但将有简单的数据库和一些游戏逻辑。我遇到的困难在于用户身份验证的设置。Marco / Polo的示例只是一个简单的游戏数据交换,但是我遇到麻烦的关键部分是用户身份验证。
奥利

Answers:



0

对于一些简单的事情,我建议您使用python(并且一般而言,python GAE经验非常好。)

我非常确定,对于您想做的事情来说,简单的App Engine教程和文档就足够了。您要创建一个具有3个控制器的应用程序(检查凭据,创建凭据并回答marco-polo)。

github中有大量用于应用程序引擎的python代码的开源示例,并且官方网站上有很多文档,我想说去尝试一下,如果碰到墙问一个特定的问题= D

希望有帮助!


在客户端规范中并不学习新的语言(python)。我知道Java,并且受时间限制。对象层次结构应该都相似,不是吗?我了解我要问的内容非常简单。但是我已经完成了教程,但这并不是为我点击。另外,这些教程并未完全显示我的要求,而且我也不太清楚如何转换为“非Google帐户”。
奥利

0

不需要点击的部分-而且,我怀疑它非常简单-是实现doPost()(或doGet(),但我使用POST)例程并编写回到响应者。

在第一次在web.xml文件(在war文件夹中)中设置响应者的类名和URL时,还有一些我没有完全正确地遵循的地方。

一旦我正确地设置了(web.xml),那么doPost()例程就相当于以下内容:

public void doPost(HttpServletRequest req, HttpServletResponse resp)
  throws IOException {
    String reqTypeStr = req.getParameter("reqType");
    if (reqTypeStr.equalsIgnoreCase("marco")
        resp.getWriter().println("Polo!");
    else
            resp.getWriter().println("huh?");
}

还有许多其他细节,但这两个是最让我烦恼的。一旦我突破了这个简单的障碍,其他所有事物就会很快融合在一起。


注意:这仍然没有使我指向一个不错的教程/演练,这是我最初的要求,如果有人将我指向其中一个出色的教程,我会将其标记为正确的答案。
Olie
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.