计算机游戏程序设计课程作业(2020.3-2020.7)
我的工作:游戏策划、关卡策划、机关画面表现、部分功能实现、音效

一、游戏概述

Regrass 是一款第一人称射击解谜游戏。玩家需要灌溉植物,疏通水渠,解开谜题。简化到每一关卡的具体目标,玩家需要引导关卡内所有的能量植物生长到对应的水源。

二、游戏规则

经过多次讨论与修改,我们制订了最终版的游戏规则说明,帮助理解游戏内在逻辑。

2.1 玩家操作说明

  • 键盘 WASD 按键:玩家的前后左右移动
  • 键盘E按键:玩家与场景中物体的交互
  • 鼠标移动:玩家的视角移动
  • 鼠标左键:控制射击,在射击期间自动按场景格对齐,瞄准的格子有高亮显示
  • 鼠标滚轮:控制水枪中水的颜色和种类
  • 鼠标右键:消除当前格的植物

2.2 规则详解

2.2.1 场景

每一关的场景都是室内房间,所有交互以方格为单位,下称一格地面为一个地块。
在场景的初始状态,玩家应能看到两种特殊地块:起点地块(表现为植物的种子所在)和终点地块(表现为富有魔力的水源)。玩家需要使用手中的水枪进行灌溉,引导植物从起点地块一路生长到终点地块。其余的地块参与植物的种植。

2.2.2 植物

植物拥有三个属性:颜色、光照与功能。颜色和光照决定植物能在哪些地块生长,而功能决定它如何与玩家交互。

  1. 颜色
  • 植物的颜色由种子(起点)颜色决定,水(终点)也有颜色,起点和终点的颜色必须对应。
  • 有些种子不具备彩色颜色,属于任意种子,可以被连接到任意水源。
  • 一个地块只能种植一种颜色的植物,相同颜色的植物可以共享地块。
  • 如果地块上已经有了一种颜色的植物,再引导不同颜色的植物生长时,会导致新的颜色覆盖旧的颜色。
  1. 光照
  • 植物的生长需要满足特定的光照条件,否则无法生长。
  • 光照分为三档:亮、适中、暗。
  1. 植物种类与功能
    植物只有能从水中中汲取营养的时候才能发挥其功能。

2.2.3 连通区域判定

  1. 地块状态
  • 尚未染色状态
  • 染色但是未联通起点的状态(此时可以与终点联通)
  • 染色并与起点联通状态,注意这种状态只有在符合光照条件范围内有效
  • 起点被激活状态(起点与终点联通,且起点数量小于等于终点)

一个地块有四种状态,如图 2.1 所示。为了便于理解,接下来将使用图片来辅助说明游戏规则,其中各地块图例如图 2.2 所示:

  1. 起点终点数量
    起点在连接到终点后,会显示被激活。但当连通区域内的起点数量大于联通区域内 的终点数量,任何起点都不会被激活。如图 2.3 中两个起点都不会激活。

    当联通区域内起点数量等于或小于连通区域内终点数量,所有起点被激活。

  2. 颜色
    起点、染色区块和终点的颜色必须都是一致的。加入多种颜色后,不同颜色的地块 集算作不同的联通区域。

  3. 终点联通
    在游戏中,终点地块间彼此是可联通的(在游戏逻辑上表现为水的流动相通),而 起点地块不能。因此对于联通的终点,只要其中某一段与染色区域连接,就判定所 有联通终点都被连接了。

三、关卡策划

3.1 关卡起点交互

本游戏中关卡起点有多种联通状态,且联通状态直接决定关卡的激活与否,因此应在画面表现上给予玩家反馈。
从联通状态来划分,有三种状态:未与染色区域联通、与染色区域联通但未被激活、与终点联通(即被激活)。从颜色来划分,有两种颜色:红色、蓝色。从功能来划分,有 五种功能:能量、弹跳、净化、杂草、方块树。
要将如此复杂的起点表示融入我们风格简约的游戏当中,需要采取一些平衡感强的设计。考虑到我们的场景整体由方块构成,几何感强,起点也应该暂时采用较为抽象的方式来表现。因此,我们仍用基本立方体来表示起点,然后用不同的图案表示起点的不同功能(如图 3.1)。

“与染色连通但未激活” 状态用起点的自发光效果表示(如图 3.2)。

“与终点连通,即激活” 用自发光+出现对应的模型表示(如能量球、跳板、方块树等)。

3.2 关卡设计

3.2.1 关卡设计草案

设计前我们查阅了一些解谜游戏的设计博客和讲座,总结了一些解谜游戏设计要点:

  1. 解谜游戏不是为了难住玩家,而是让玩家循序渐进地学习规则、掌握规则
  2. 解谜游戏一个关卡的制作目的:介绍机制A或者介绍使用机制A的技巧,如果该游戏是面向休闲玩家的,应该尽可能一关只介绍一个机制或者技巧
  3. 在介绍完技巧之后需要设计一些关卡让玩家再次利用这些技巧以让玩家获得解开谜题的成就感
  4. 关卡中不应该设计和解开谜题无关的机关混淆玩家
  5. 关卡可以设计得具有一定的对称性,留下人工的痕迹反而会让关卡显得有趣
  6. 关卡设计时可以围绕一个特定的主题(非教学关)
    基于上述要点,我们规划了整体关卡流程:

3.2.2 具体关卡设计

实际制作的时候是先设计零散的关卡,随后组装成最后的大关。因为关卡之间需要排序后才能落实到最后的场景中。
最早设计了一关以展示多颜色情况下的玩法(顶部玻璃被剔除以展示内容):

这一关的制作让我发现了一个问题,设计的解谜区域过大,对玩家来说操作实在不方便,需要长时间精细地瞄准。之后我们做了几个以教学为目的的关卡,设计了一个比较长的场景,但是其中的谜题规模都比较小,解法也简单:

上述关卡中,我发现了一些问题:

  1. 光照对关卡设计限制过多,设计谜题太被动
  2. 玩家可喷射范围是解谜中很重要的一部分,很适合纳入谜题的范围
  3. 仅仅限制谜题的范围,但是整个场景全能交互仍然会让玩家迷惑,而且当谜题复杂后必然会变大,需要个更合理的解决方案
    因此在制作完该关卡之后,我们修改了一些规则:
  4. 删除光照,修改为了更可控的机制:污渍阻挡地面是否可染色,清洁方块能清楚联通的污渍
  5. 增加弹跳方块,玩家可以用它在纵轴上移动
  6. 讲解谜区域和场景分开,新增了一种固定的材质用于表达可染色区域。而其他区域喷射交互仍然可以有反馈,但是留下的痕迹很快就会消散。
    上述改动后,规则就固定了。最终我们制作了如下的场景,共有9个关卡:

关卡1:基础操作教学

关卡1负责教学玩家基础操作,以及如何开枪射击解开机关。枪放置在平台之上,需要玩家通过WASD移动,空格跳跃靠近,靠近后枪会描边高亮,并出现提示要求玩家按E拾取。

拾取后平台下降,显示出新的关卡,该关卡非常简单,用于介绍基础的联通机制。

关卡2:跳跃进阶

一开始这个关卡只涉及了一个需要弹跳方块才能上去的四格高台。但后来我觉得有必要告诉玩家何时才需要弹跳方块,因此设计了一格高、两格高以及四格高的障碍,告诉玩家空格键跳跃的极限以及弹跳方块跳跃的极限。

关卡3:消除

该关卡介绍消除机制,玩家进入后看到一格水源联通了一格机关点亮了一扇门。但是前进的门仍然关着,倘若玩家现在连接另一个机关,门不会打开,因为水源数量小于联通机关数量。此时会出现提示,玩家可以通过右键消除地面上的痕迹。

关卡4:综合应用,介绍水源反复利用技巧

这一关没有介绍新的规则,但需要玩家对水源进行反复利用,相比前几关来说有一定的解谜难度。这种反复利用的技巧在关卡中特意设计要运用两次,让玩家在理解该技巧后,能立刻再轻松运用一次,达到一种满足感。

关卡5:增加新颜色,多颜色解谜教学

接下来机关都是小的单元关卡,因为解锁第二个颜色后,产生了很多新的规则,我想设计一系列集中紧张、难度循序渐进的逻辑谜题,以引入这些规则,加快游戏的节奏。关卡5比较简单,主要解释增加颜色后如何操作、不同颜色间无法联通的规则。

关卡6:联通进阶

第六关出现了多水源的情形,水源之间本身就算作联通,因此只需要有一格接口就能触发所有机关。

关卡7:联通应用,更复杂的三维场合

第七关没有介绍新的规则或技巧,但关卡不再是平面,而是三维,玩家需要合理分配染色空间,才能解开该关。

关卡8:三维场景进阶

第八关没有介绍新的规则,但在玩家熟悉了三维场景后,我提供了更复杂的需要利用三维场景特性才能过关的关卡,这关正式地展现出了三维谜题的特殊性。我认为这是我9关中设计的最好的关卡,因为它做到了解谜游戏的进阶要求:顿悟的产生。
若看右侧的俯瞰图,这个关卡其实很简单。右侧的蓝方块如果联通下面的蓝色水源,会挡住红色,因此它必须连左侧水源,红色也必须绕到蓝水源后方才能不阻挡蓝色水源的连接。但是在三维场景下,我增加了一个拱门在中间,产生了一定的迷惑性,玩家可能一时想不到在柱子上画线,但如果想到谜题就迎刃而解。
这也是当其他组同学提出需要按键切换俯瞰视角后我拒绝的原因,这个问题的根源是谜题布局没有通过美术很好地展现,而不是功能的缺失所导致的。添加这个功能将很大程度上破坏我们游戏的体验,不是所有关卡需要俯瞰,我可以在需要的时候通过其他方法来解决这个问题。

关卡9:综合运用

这是最后一关,内容最为复杂。因此设计了一个高台让玩家可以俯瞰关卡,下图就是玩家在高台上能看到的场景,玩家可以规划好路线后再去实施。这关的设计同样是需要玩家合理规划路径,中间的路径只有一格宽,只能供一种颜色通过。解开该关后大门会开启,玩家进入下一区域。