如何获取玩家刚输入的动词?及响应模板标准变量列表查询
调用玩家输入动词及标准模板变量解决方案
嘿,这个需求我做文本冒险游戏的时候刚好碰到过,给你理清楚:
如何精准调用玩家使用的动词
其实和调用名词[the noun]的逻辑完全一致,绝大多数交互式文本游戏框架(比如Inform 7、Twine自定义逻辑,或者自建的后端处理系统)都提供了对应的动词捕获变量,通常用[the verb]或者简化版的[verb]就能直接调用。
举个实际代码例子(以Inform 7替换默认攻击逻辑为例):
Instead of attacking something: say "你想如何[the verb] [the noun]?"
当玩家输入kill dragon,输出就是你想如何kill dragon?;输入break vase,则会输出你想如何break vase?,完全能精准匹配玩家使用的动词。如果是你自己开发的自定义系统,只需要在解析玩家输入时,把拆分出的动词存入变量(比如player_verb),再在回复模板里用[player_verb]替换即可,原理是一样的。
常见的模板可用标准项列表
不同框架的变量命名可能略有差异,但以下这些是主流文本冒险系统通用的基础标准变量:
[the verb]/[verb]:玩家输入的核心动作动词[the noun]/[noun]:动作的直接目标名词[the second noun]/[second noun]:动作的间接目标(比如玩家输入give potion to wizard里的wizard)[the player]:指代当前操控的玩家角色[the location]:玩家当前所在的游戏地点[time of day]:游戏内的当前时间[score]:玩家当前的游戏得分[number of turns taken]:已经进行的游戏回合数
如果是自定义系统,你还可以根据需求扩展更多变量(比如[inventory_count]玩家背包物品数量),但上面这些是最常用的基础标准项。
内容的提问来源于stack exchange,提问作者Olaf Now
相关产品推荐
相关产品推荐

