自从我终于放暑假以来,我一直想坐下来为我拥有的基于文本的冒险游戏构思一个想法。
因此,我很想知道您会推荐哪种语言来编写该游戏。更确切地说; 什么是行业标准?
我不热衷于使用 Quest(或类似工具),但如果强烈推荐,这可能会改变。
尽管如此:在开发基于文本的冒险时,我应该选择哪种语言?
提前致谢!
自从我终于放暑假以来,我一直想坐下来为我拥有的基于文本的冒险游戏构思一个想法。
因此,我很想知道您会推荐哪种语言来编写该游戏。更确切地说; 什么是行业标准?
我不热衷于使用 Quest(或类似工具),但如果强烈推荐,这可能会改变。
尽管如此:在开发基于文本的冒险时,我应该选择哪种语言?
提前致谢!
一般来说,符号编程语言,特别是逻辑编程语言,可能是一个不错的选择,因为它们可以很容易地表达定义游戏每个状态下的选项的规则及其对每个选项的后果。有关一些示例,请参见:
https://github.com/LogtalkDotOrg/logtalk3/tree/master/examples/adventure
我将建议 2 个选项:C++和Javascript。
为什么选择C++?
因此,从学习的角度来看,C++ 似乎是最佳选择。
为什么选择 JAVASCRIPT?
它简单、快速、轻松且有趣。即使你对javascript一无所知,你也可以在几天内开始使用它进行编码。
另一个好处是,如果您使用 javascript 制作游戏,它将独立于平台,即您可以简单地在任何机器上的任何浏览器中运行它。是不是很棒?
但是要使用 javascript,您必须创建一个 HTML page(),这也很简单)。但如果你能做到,你也可以为你的文本输入提供一个漂亮的类似游戏的图形界面。
所以,快乐的编码和游戏!
我认为您需要的不仅仅是文本 i/o 和基本数据结构(列表、可能是字典和字符串/符号),所以最好的选择是您最喜欢的,因为失去乐趣是游戏开发者最常见的杀手。
如果您打算拥有花哨的输入结构,您可能会喜欢带有 nltk 的 python(另一方面,您通常不需要太多的 nlp 来识别十几个动词和几十个名词)。
如果您正在考虑丰富的世界交互,您可能会使用一些现代的动态类型、垃圾收集语言做得更好(方案 [尽管历史悠久,它非常现代]、commonlisp、elixir、ruby、python 和 js 浮现在脑海中) ,或者——如果你不害怕尝试——序言。
就业界而言,我不知道现在发生了什么,但 Zork 系列是用 ZIL(Zork 实现语言)开发的,一种 [奇怪的] lisp 变体,一些 2000 年代的游戏是用 [variants of] Inform 开发的(这可笑接近英文)。