逃逸速度的隔离区吧 关注:8贴子:250
  • 17回复贴,共1

大约是inform7 if(interactive fict

只看楼主收藏回复

大约是inform7 if(interactive fiction)引擎的笔记
inform系列编译器诞生于1979年,是当年家用机性能并不富裕的时候,用来作为仅存几种游戏形式之一的生产工具——交互式小说。
如果说现代游戏引擎是将物品纹理和骨架诸如此类的东西放置于世界中,那么inform时代的if大约就是靠人脑渲染的;基于文字本身和近似自然语言处理的可交互性;如今来看略显枯燥的技术了。


IP属地:陕西来自Android客户端1楼2020-05-17 00:00回复
    a x1 is a kind of x2. 类的继承
    the x1 is a x2. 实例化
    the x1 of the x2 is x3. 实例的属性设置
    x1 has a number called x2. 类的属性设置(数字)


    IP属地:陕西来自Android客户端4楼2020-05-17 00:13
    回复
      值得注意的是,关于inform7类似的传统交互式小说,国内貌似没有什么成型的团体。更多的是基于可视化工具制作的类似gal的选项分支驱动的游戏。
      说起没圈子这一点,if(z-machine,glulx)、细胞自动机(wiredworld,jvn29之类的其他规则)、lojban、计算尺、godot engine在国内都是谜之小众的圈子了……


      IP属地:陕西来自Android客户端5楼2020-05-17 00:34
      收起回复
        传统文本AVG?感觉那种是上世纪七八十年代的东西了。。。从来没体验过


        IP属地:浙江来自Android客户端6楼2020-05-17 08:32
        收起回复
          接下来会试着翻译inform7自带的教程书"Writing with Inform"/《用Inform书写故事》(暂译)


          IP属地:陕西7楼2020-05-17 10:48
          回复
            交互式小说的设计,可以被分为两个相关联的部分。一方面是创造在剧本开始时就出现的世界:事物都在哪里,他们是什么。另一方面是指定剧本的规则,它决定玩家如何与新创建的世界进行交互。一个新建的Inform项目本身是空白且没有形式的,也可以说,一切内容都还没有被创建:但它仍会遵循预先定义好的数百个标准规则。[1]
            创建事物和制定规则之间的划分在inform源文本中也同样可以见到。世界的创建是通过陈述无规则的事实来完成的。例如:
            The wood-slatted crate is in the Gazebo. The crate is a container.
            Inform将这样的句子称作“断言”。这里的动词总是用一般现在时态书写的(因此木箱”是“,而不是“将要”)。进一步的例子如下:
            Mr Jones wears a top hat. The crate contains a croquet mallet.
            以"is"、"wears"和"contains"为形式的三个词属于Inform内建的基本动词。内建的断言动词并不多,其中最重要的是"be"、"have"、"carry"、"wear"、"contain"和"support"(如果需要,创建更多的断言动词也是可行的)。
            这些断言描述的世界,只是故事的开始的状态:剧本开始时发生的事情就是另一回事了。如果有人捡起木箱把它带走了,那它就不会在露台上了。Jones先生自然也可以脱下他的帽子。
            译者注:
            [1] 见安装文件夹中的Internal/Extensions/Graham Nelson/Standard Rules.i7x


            IP属地:陕西8楼2020-05-17 10:50
            收起回复
              有幸在Inform7吧结识了一位大佬,如果能做完WI中文化的话,也许可以一起投给官方做官中的样子。以后的翻译质量都会有那位大佬把关,着实轻松了一些,此外她还会负责奇数章节的翻译,虽然她可能看不到,但还是在这里说一句感谢>w<。
              这里是 2.2 制定规则 的翻译初稿
              另一种告知Inform“在何种情况下应当发生什么”的语句,读起来像是对某人的指示:
              Instead of taking the crate, say "It's far too heavy to lift."
              这便是一条“规则”(rule),它改变了木箱的行为。如果玩家试图输入“take crate”、“pick up crate”或是其他类似的短语,只会得到“它太重了,抬不动”(It's far too heavy to lift.)的无用回答。由玩家发出的众多不同种类的动作被称作“行动”(actions)[0],它们通常被写成现在分词的形式,诸如“taking ...”、“putting ... on ...”
              Inform正是建立在这样的数百条规则之上,它们中有些部分相当复杂,甚至可以认为Inform就是交叠繁复的规则本身。而我们不必得知幕后的种种,因为Inform的目标正是提供一种基础、朴素又风格寻常的真实感。如果木箱能被放进它自己,是会让人惊掉下巴的,因此有规则阻止这个行为。若是能扔下早已在地板上的物品也会如此,以此类推。这些现实中的基本规则,正是每一个Inform的新建项目都会遵循的基础。
              一条规则常常从它适用的情形写起,紧接着就是一个或数个行为。上文就是一个以“拿起木箱”(Before taking the crate)为情形的例子——玩家正试图拿起木箱——这个过程需要3步,但第二、三步仅仅会在第一步以特定的方式发生后才会进行。
              Before taking the crate:
              if the player is wearing the hat:
              now the hat is in the crate;
              say "As you stoop down, your hat falls into the crate."
              这些将被进行的步骤被称作“短语”(phrase)。inform内部有近400个预置短语,然而大多数都并不常用。以下的三个则最为多见:
              "it"告知Inform行动仅在某种“条件”成立时才进行,上例中为“玩家正戴着帽子”(the player is wearing the hat);
              "now"使Inform改变当前的情形,将帽子(hat)移到木箱里,
              而"say"会让Inform说些什么,也就是输出一些文本以供玩家阅读。
              每一个内置短语的定义在本书中都有提及,“say”的完整定义将在稍后给出,但在上例中简单形式的调用下,它会输出用来阅读给定的文本。(通常情况下,这些文本只会简单的显示在屏幕上,而不会被朗读出来,除非所使用的软件[1]是专为视力有缺陷的人群改编过的)可以从项目主页(project index)的短语页面(phrases page)链接到所有短语的定义。
              [0]行为/动作/行动,不知道选哪两个好


              IP属地:陕西10楼2020-06-01 21:24
              回复
                最近有人申请进我创建的 Inform7 交流群,然而里面已经 4 年没有任何活动了。现在 AI 翻译如此的实用,也许我会考虑重新试试,但不是现在,我自己还是不太想动。一如既往我还是需要被人推一把。
                -
                -
                最近换回了以前的名字——「焦糖玻璃」。逃逸速度真的逃离了太阳吗?我不知道。但,外面确实是又冷又空旷,黑漆漆的无底深渊。有时候,我还是更喜欢以前的名字,就像是「Komm, süßer Tod」一样。不过那时候我并接触过 EVA,只是在想着,一种穿心透骨的甜蜜,一种名为「幸福」的诅咒,又或是一种让人笑着流泪的解脱之物。


                IP属地:陕西来自Android客户端11楼2024-06-04 02:44
                回复