问题标签 [adventure]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
384 浏览

python - 用于文本冒险的轻量级 MIDI 播放?

我正在用 Python 进行一次简单的文本冒险,并认为背景 MIDI 音乐会让它变得不那么无聊。

是否有适用于 Python 的简单、轻量级的 MIDI 播放器/API?还是我需要使用像 Pygame 这样的完整游戏库?(因为如果是这样,我宁愿通过,因为我想让它尽可能轻量级。)

0 投票
3 回答
1820 浏览

objective-c - Objective-C 中的简单自然语言解析器

我正在为 Mac OS X v10.6 构建这个应用程序

我正在构建一个基于文本的冒险,并创建了一个非常简单的自然语言解析器,可以处理用户键入的命令。到目前为止,它工作得很好,可以解析诸如“拿剑”或“看盒子”之类的句子

我要做的是为不同的单词创建一个别名列表,以使输入命令不那么严格。例如,“take”可能有别名“grab”或“go”可能有别名“move, walk, or travel”

我尝试创建一个 NSDictionary,其中键是单词,值是别名的 NSArray。问题是,在确定输入的命令是否与可用命令匹配时,我必须使用用于密钥的单词来引用别名。

我希望能够使用任何别名来引用任何其他别名。有谁知道这样做的好方法?

我的另一个想法(但似乎效率低下)是将每组别名存储在一个数组中。解析时,我会找到包含我要匹配的单词的数组,并尝试匹配该数组中的所有其他单词。

0 投票
2 回答
1793 浏览

.net - 基于选择的冒险游戏的数据结构?

我正在 VB.NET 2010 中设计一个基于选择的冒险游戏,您会看到一个故事标签,您可以在 2 个按钮之间进行选择,您想要做出哪个选择。我想知道最有效的方法来做到这一点。

我的目标是以某种形式的数据结构存储按钮和故事的标签,现在暂时是一个哈希表,以及某种形式的选择结构。现在,我正在使用一个自定义类,该类引用下两个选项的索引及其各自的标签索引,这些标签将类实例存储在哈希表中。我研究过数组、字典、列表和集合之类的东西,但我不确定哪一个最适合我所追求的。任何 .NET 数据结构都可以工作。这两条数据最有效的数据结构是什么?只是一个字符串数组可以工作吗?

0 投票
3 回答
5338 浏览

python - 我正在制作一个 python 文本冒险。需要帮助制作“库存”

我正在做一个 python 文本冒险。它基于 Learn Python the Hard Way 中的 ex41,因此有点相似。但是,我的问题与该练习无关。我正在尝试制作库存,以便可以拿起和使用物品(即钥匙或微风)。

起初我的计划是使用一个布尔变量,以便在“拾取”项目时将值设置为 True,但它似乎不起作用。我认为问题在于我离开房间后值会重置。

现在我正在尝试一个列表,当该项目被“拾取”时,该项目被附加到库存列表中。

我如何制作库存,或者至少“拿起”一件物品,然后再“使用”它?

我认为重要的代码行是 18-20(在 下def __init__(self, start))、77(在 下def cell(self))、161-162(在 下def janitor(self))。

0 投票
5 回答
1738 浏览

c++ - 在文本冒险中解析匹配多个可能的字符串。

我在大学的第一个学期,我必须用 C++ 制作一个文本冒险游戏。到目前为止,我们已经完成了数组结构指针。我试图用谷歌搜索我的问题,但是大多数其他用户使用我们尚未完成的课程。

教授希望我们使用 等命令Go Northopen door with key
已经设法通过使用热键来使其工作,例如n向北,但显然我想按照他希望我们的方式进行操作。

所以我的问题是;如何制作一个由多个字符串组成的命令?

问题是我们需要为命令、对象和(如果这个房间里有可能将两个东西结合起来)介词与另一个对象创建库。在每个库中都应该有要使用的单词,例如: 命令是:使用、去、谈话、阅读等...

0 投票
1 回答
1081 浏览

c++ - 程序最小化时位图消失

我是 C++ 游戏编程的学生。我们必须在 Windows 的控制台上编写一个 textadventure。我们得到了实现位图的分数。我有以下代码来显示位图。它工作得很好,但是当我最小化我的窗口时,我的位图消失了。问题出在哪里?

0 投票
2 回答
1017 浏览

c++ - 字符串解析器文本冒险

你好!我目前正在使用 C++ 进行文本冒险,可以使用一些帮助。

我想要做的是让用户输入如下命令:

  • '去厨房'
  • '用钥匙开门'

并使游戏做出相应的反应。

我们的老师给了我们以下代码(我已经修改过),我很难理解它到底在做什么以及如何使用它来制作游戏。我对其进行了修改,以便用户可以输入strings,它确实将string美妙地标记为动词、宾语、介词和宾语 2。

但是我需要做的是以某种方式将输入与可用命令列表进行比较。这就是我目前无法完成的事情。我是编程新手,需要将其作为我学习的家庭作业。任何帮助将非常感激。

0 投票
1 回答
1411 浏览

actionscript-3 - AS3 - (非常)简单的文字冒险

我一直在尝试找到源代码或教程或任何我可以使用的东西,但到目前为止我还没有运气。我最接近的是使用haXic,但无法更改输入框的外观(我能够在开源文件中修复此问题,但无法更改编译器,修复将无法生效生成的 .swf),我无法获得所需的字体和颜色。

所以我转向 Actionscript 3 / Flash,因为我对它有一些了解,虽然主要用于构建网站。目标是基于传统的文本冒险结构创建一个非常非常非常简单的游戏。当我说简单时,我的意思是非常简单。我不需要地图,不需要 NPC,不需要物品,我什至不需要可以随时访问的命令列表。我只需要显示一些文本,接受特定的输入,然后根据输入的内容显示更多的文本。

这是我想要实现的一个示例: .swf 加载,用户看到一些模仿 POST 的文本。这不是一个实际的预加载器,只是一些花哨的“一切都在启动”文本。在动画结束时,指示用户按任意键继续,这样做会删除现有文本并加载到下一组中。从那里我想有各种需要特定输入的步骤(即要求用户输入用户名,需要输入 username: ,但这实际上并不需要存储用户名,只需具有 username:name 检测到的有效格式在继续下一步之前)并输出附加文本或擦除现有文本并模拟新程序的启动。

我猜这主要涉及根据输入调用各种函数,然后更改这些函数中的预期输入,但我真的不知道从哪里开始。我还注意到在我看到的几个示例中,输入文本是通过使用按钮提交的。有没有办法让这个只用回车键来模拟命令控制台?

我当然不期待完整的源代码,只是一些指针。任何帮助表示赞赏,谢谢!除了 Actionscript 之外,我也愿意接受其他建议,但是生成的游戏需要能够在 Web 浏览器中运行,并且首选某种形式的文本动画。

0 投票
2 回答
1226 浏览

java - 在文本冒险中实现退出

我正在为 Java 编程类编写文本冒险游戏。我正在使用abstract每个房间将继承和配置的父房间类设置房间。

对于出口,房间只会调用一个.addExit()方法并传递一个出口对象。游戏应该只有每个房间的一个实例。退出对象应该有一个 target 字段,指向在构造函数中初始化的游戏房间之一。

我的问题是我不知道如何将退出构造函数传递给预先存在的房间引用而不是新的房间对象。在我看来,有两种可能的方式:

  1. 直接向出口构造函数传递对房间实例的引用。
  2. 有一个静态类来跟踪所有房间实例,并具有从字符串名称或类等返回实例的方法。
    然后将退出对象的构造函数传递给标识目标房间的方法,例如唯一的字符串名称,该对象然后构造函数用于调用返回房间实例的静态类方法之一。

我不确定哪个是最好的选择,如何实现任何一个选项,或者是否有更好的方法。

0 投票
3 回答
1514 浏览

c# - 如何为文本冒险游戏实现调度表?

我正在C# 中进行文本冒险,有人建议我使用调度表而不是 switch 语句。

这是switch语句代码:

如何重构它以使用调度表?