什么技术用于终端基于文本的RPG?

时间:2011-11-01 12:51:08

标签: php javascript jquery

我想创建一个旧学校简单的基于文本的RPG。没有库存,没有战斗,只是通过地牢找到正确的方法。

每个“房间”都会有一个描述段落,根据房间的不同,会有选择。 IE,如果有两扇门,你可以选择要经过的门,或者是否有可以使用它们的物品,等等。随着你的进步,故事就会展开。

我真的想使用php,因为我真的不知道很多编程,我听说这是一个相对容易的入口。我已经知道足够的php来开发Wordpress了。

我真的希望它提醒人们关于旧的MUD,我想要像终端或cmd一样。风格肯定没有问题,但我仍然不确定使用什么来使打字感觉良好,但我目前正在关注tryruby.orggoosh.org以获得正确的感觉。

关于如何进行的任何想法?我需要使用什么?使用Javascript / jQuery的?有什么好的资源供我查看吗?

编辑:当然,它在线。

3 个答案:

答案 0 :(得分:2)

扩展@rmorero答案你可以使用我的终端模拟器,所以你不需要重新创建tryruby.org外观http://terminal.jcubic.pl并使用JSON-RPC,你可以使用我的php库{{3 }}

答案 1 :(得分:1)

这完全取决于您的偏好。 一个快速入门的方法是html / javascript前端和php后端。

javascript前端模拟控制台,goosh.org上的实现看起来很有灵感。

回调可以通过ajax完成,jQuery在这里非常有用。 如果你想推送内容(在没有客户请求的情况下将内容从服务器发送到客户端 - 或多次使用请求),你也可以看一下Comet。

后端的PHP听起来不错,你只需要实现一个返回每个位置,描述和可能存在的脚本。我建议您查看JSON格式,因为它允许您返回如下对象:

{
  "title": "A dark room",
  "description": "This is a very dark and scary room. The smell is obnoxious",
  "exits": {
    "nw" : " A small door",
    "n" : "A huge ladder"
  }
}

Php内置了从php对象创建json对象的函数,即json_encode。

您可能也想要某种数据库来存储位置。这取决于你想要使用什么。您可以使用传统的sql数据库(mysql,postgresql等)或无数据库(mongodb,redis等)。

答案 2 :(得分:1)

您应该研究交互式小说的开发框架。终端式游戏的两个主要开发工具是InformTADS,但Quest看起来也不错。

如果你想要一个更低的进入障碍 - 或者只是不希望玩家输入命令,而是点击其他选择 - 你可能想要查看Choicescript或{{3 }}。 Choicescript非常易于使用,非常适合编写严格基于选择的文本冒险。对于Undum,您需要了解一些JavaScript,但您可以使用它做更多的事情。 (我扩展Undum一次添加类似RPG的骰子卷,角色表等)Quest 5.3引入了“游戏手册模式”,这使得Choicescript风格的游戏也很容易构建。

我应该指出,这些环境都不需要PHP或任何类型的客户端 - 服务器通信。这样做的一个优点是,您可以非常轻松地分发您的游戏:静态网站很好,而且您的游戏可以离线播放。潜在的缺点是你没有提高你的PHP技能;你的游戏只是单人游戏(虽然Undum游戏可以通过一些努力成为多人游戏);并且无论您选择哪种环境,您都不会像使用普通Javascript或Javascript + PHP那样灵活。