学习空间/工作坊三:两种状态,把重复、逆序与重试做完整

工作坊三:两种状态,把重复、逆序与重试做完整

先不造复杂任务系统。用一条小状态链,证明这张地图不会因换个顺序就坏掉。

入门实作约 6 分钟阅读,实作另计8 节先学
SPACE / INFORMATION / STATE分三步观察:空间怎样改变玩家的判断原创原理示意 · 非原作逐格地图 · 非正式项目定案
第 1 阶段:未见编号,未核验:有行动但不能直接完成
  1. 阶段 1未见编号,未核验:有行动但不能直接完成静态原图 ↗
  2. 阶段 2已见编号,未核验:登记变成可执行动作静态原图 ↗
  3. 阶段 3已核验:两处反馈一致;普通返回保留,重开清空静态原图 ↗

实线:连接或边界虚线:路线、信息或对应关系(以图中标注为准)绿色:当前重点暖色:限制/风险

默认静止;点击播放后每 7 秒切换阶段,路线运动不代表实际速度。静态原图可直接保存和打印。

打开地图灰盒工作页:把本课方法写进你自己的候选方案 →

01先分清事实与表现

在值守区练习中,事实只有“已看见物品编号”和“已完成核验”。登记台上的文字、出口清单、灯的颜色只是事实的表现。不要分别保存“门开了”“灯变了”“文本换了”三个互不相干的答案,再指望它们永远同时变化。

纸面可以用两张事实卡;进入引擎后再按已有状态课实现。这里没有要求新增数据库、任务编辑器或多周目架构。只要能把同一事实可靠地应用到对象即可。

02两种可见阶段,保留必要事实

可见阶段定为 S0 待核验、S1 已核验。S0 内仍需知道玩家有没有取得编号;这是登记动作能否成立的必要条件,而不是再造一个房间版本。用单个布尔值描述可见阶段,不意味着全游戏所有数据只有一个布尔值。

输入事实登记台反馈出口反馈
未见编号;未核验告诉玩家去储放标记核对显示还缺一项核验
已见编号;未核验允许执行登记,完成后有即时反馈仍未完成
已核验显示已登记;不重复提交,不撤销成果显示交接完成,可结束

本练习不消耗物品。“已核验但没有编号”的不一致存档,应按明确规则修正或报告,不能让玩家猜是哪张地图错了。

03触发、反馈、保留、恢复四件事一起写

触发是调查登记台且拥有编号证据;本地反馈是登记台明确说已核验;远处反馈是出口的缺项标记改变。玩家走出值守室时保留事实,回到屋里重新应用同一状态。不要靠一次性动画是否播放过来判断任务有没有完成。

如果登记需要一段短演出,先禁止重复提交,在演出结束或可恢复的位置记录完成。具体提交时点取决于实现,必须能够解释关闭对话、切场和重试途中发生了什么;不能只测试作者慢慢点按的顺序。

04五种顺序,覆盖不同失败原因

路径要证明什么
先拿编号→再登记→去出口常规路径闭环
先看出口→反复查登记→再拿编号无效尝试给方向,不消耗不可恢复物品
拿编号→离场→回来→登记证据事实跨场保留
登记成功→再次登记→再次看出口重复动作幂等,不重置完成状态
登记前重试 / 登记后重试恢复边界清楚,反馈与事实一致

这些是本练习的测试集合,不是所有状态空间的形式化穷尽证明。以后加入箱子、单向门或追逐,再补它们引入的新状态。

05把重试规则写成一句可预测的话

本轮可选择“重开本练习清空两项事实,普通离场返回保留事实”。这比一半对象复位、一半记忆保留更容易解释。若实现了中途恢复点,则要写清恢复时的房间、落点、证据、登记与交互锁,不只保存最后一句文本。

尝试在出口附近重试,确认不会直接出生在结束触发区里无限结束;尝试在登记对话中退出,确认再次开始能恢复控制。失败演示可以保留,但恢复到必死或不可解状态不是有意义的难度。

06加入一处异常,但别同时改变导航

基础状态稳定后,练习可暂用一张便条朝向改变作为异常。先让玩家见过原方向;便条状态由“已完成核验”派生:核验后改变,普通离场保留,重开恢复,不再增加第三项事实。改变时不挪墙、不改出口、不删除证据。异常用于测试熟悉空间中的差异能否被发现,不增加主线门槛。

保留一份没有异常的对照版。若玩家完成失败,先看是否基础目标就不清楚,而不是把所有迷路都解释成恐怖成功。是否将这种异常移入正式作品,仍是独立创作决定。

07用断言语言描述验收,不冒称已经通过

给定:编号已获得,尚未核验
当:离场后回到值守室并调查登记台
应当:仍允许核验,不要求再次取得同一证据

给定:核验已完成
当:重复调查登记台,然后返回出口
应当:完成事实不回退,出口仍显示完成

这些句子可手动执行,也可以以后转为自动测试。写出它们不等于运行过。把实际操作、结果、证据文件和未覆盖边界接在每句后面,才形成有效验收记录。

08到这里应该交出什么

交出两阶段表现表、两项事实的依赖、五种顺序结果以及清楚的重试规则。地图工作页的“状态变化”“门与落点”“状态恢复表”可以保存这些内容;它不是引擎存档,导入工作页不会修改任何游戏文件。

若想马上加入追逐,先问它要验证的新增体验。没有必要的目标时,完成这条小链并进入冷测,比扩大成十几个状态更接近可靠的切片准备。

动手后,再勾选

不是“我看懂了”,而是你在独立练习里做出并检查过。

CHECK YOUR UNDERSTANDING

换一个情景,你会怎么判断?

登记成功后玩家再次调查登记台,最重要的规则是什么?

用自己的话,留一条笔记

可以写“我之前以为……,现在发现……”,或者记录还没解决的问题。

仅保存在此浏览器0 / 20000

↗回到资料核对

本课是解释与练习,不替代对应版本的官方手册。网页实验不运行 Godot;未标明实机验证的代码,仍需在独立工程中检查。

把这课收进你的理解里。

标记已读不会自动勾选实作,也不代表游戏功能已经完成。

输入一个你想弄明白的问题。

按 Esc 关闭 · 标题、关键词和正文一起搜索