塔防类游戏关卡分析

2023-10-27

转自:http://blog.csdn.net/u014779452/article/details/48471669

隐约还记得最开始接触的塔防游戏是在《魔兽争霸3》里的一个塔防地图,一个田字型的地图,四周一波一波的来怪物,而玩家需要在路边建塔消灭进攻的怪物,阻止它们到达终点。我想这应该是最基本的塔防了,路线、塔、怪物、刷怪点、守护点等几个简单的元素拼凑成一个塔防游戏。而如今塔防类游戏发展迅速,越来越多的新元素加入使得塔防游戏变得玩法多样,趣味十足。

 

  工欲善其事必先利其器,我们先了解一下塔防类游戏的各类基本元素,才能利用好这些元素搭建一个充满策略性的塔防关卡。下面是我大体对塔防类游戏核心玩法的各种元素分析图,如有漏掉之处,希望大家积极指出交流:

  上图左侧为关卡所需配置的一些元素,右侧为玩家防守所需控制的一些元素。下面我就对这些元素进行一一解析,希望对大家有所帮助

 

1路线

1.1一维路线

所谓的一维路线就是指怪物行进的道路只有前后,没有左右。简单的说怪物就是一条路走到底,很多年前的WAR3TD关卡大多为这类路线,而玩家就在道路两侧修建防御塔射杀这些在路上傻傻的怪物。

 

 

  当然如果你以为一维路线就如此简单那就大错特错了,那只是最开始的塔防。现在的塔防已经发展到各种路线,虽然怪物还是在指定路线上傻傻的走着,但是多种多样的进攻路线,为玩家建造防御塔的投入选择上增加了很大的策略性。

 

  上图只是众多路线中比较简单的一种——双路线,双刷怪点。这种关卡布局的好处有二。一是玩家需要对路线进行猜测,然后决定那一条为主进攻路线,方便投入更多资源来防守;二是多路线容易形成交汇点,这种战略意义很高的点,至于具体什么意义,有什么效果,我会在下面塔位置中详细分析。

 

   《植物大战僵尸》在路线上也有很大的创新,它设定为5路并行,让玩家在资源分配上有了更多的选择策略。当让路线上只不过是它众多创新中的一小点。

 

     1.2 二维路线

虽然看上去二维路线只比一维路线中怪物行进方向多了个左右移动的维度,但是实际效果上却大大增加了策略意义,单同时对程序大兄弟的技术考验也增加了很多(寻路、碰撞什么的,跟策划无关,我就不说了)

这里说的左右可不是指路线宽一点,怪物可以略微摆动,而是没有路线。怪物可以从四面八方来进攻,玩家需要考虑到各种情况。当然我这么说你可能很陌生,WAR3的最新这一代塔防地图也有很多类似的,但是我还是选一个大家更为熟悉的例子吧——《部落冲突》COC,这款游戏的影响我就不多说了,是有目共睹的大成功,说是塔防类游戏的改革都不夸张,这款游戏给塔防类带进了新的时代。

有兴趣的玩家可以去查一下COC的布局文章,相信网上有很多。这种开放式路径的塔防游戏(COC主要还是PVP,相当于攻防结合),在防守策略上有了很大的扩展,调动了玩家的积极性(针对策略型玩家),玩家们在攻防间的争夺使其逐渐升温。同时舍弃了固定的刷怪点和防守点,玩家决定出怪点,然后把防守点分配到每个建筑上,让防守玩家有所取舍。

 

 

2场景

2.1场景物品

  在塔防游戏发展上,游戏设计者逐渐考虑塔防类游戏的每一寸空间,从最开始的WAR3上大片空地,到逐渐加一些小的陪衬景物,到现在的连景物都不放过...为了给游戏增加策略性和趣味性,原来只起到陪衬作用的景物也开始被配置了各种奖励,被攻击。这个要数《保卫萝卜》做的最好了,当然《保卫萝卜》的成功不仅仅是因为这个,还有它的关卡产出消耗配置,这个详细的解释我会在怪物那里单独分析。

 

  《保卫萝卜》利用塔防类游戏共有的一点——下一波等待期间和空闲防御塔等待时间,充分利用每一秒,前期让玩家有充分的操作来探索场景物品带来的奖励,外加破坏场景来增添塔位置。

 

2.2场景建筑

  当然也有一些和平的设计者,选择把场景物品加入到玩家的战斗中去。比如最开始给玩家设定一些破损的建筑,玩家需要用资源修复该建筑,然后这个场景建筑会给玩家提供一定程度上的帮助。《KINGDOM RUSH》中就有运用到这一方法

  上图是一个猎手大厅,玩家修复后可以召唤弓手来在路线上进行防御。KRTD类游戏一个重要的代表作,很多地方值得我们去学习,下面我还会用到这个游戏当例子。

 

2.3场景限制

  并不是所有场景都是一帆风顺的建造,有时候还会给玩家出一下建造限制,这个做的比较经典的就是《植物大战僵尸》了。相信很多人都玩过,没玩过的人极力推荐去尝试,这里我就不放图片了。

  其主要限制分为两类。一是建筑限制,泳池关卡和房顶关卡相信大家还记忆犹新,都是需要先建造荷叶或者花盆才能在放置植物。不过这种限制一定要让玩家觉得自然,比如植物确实需要花盆才能放屋顶,因为植物不能长在瓦片上(= =!现实中瓦片中的泥土另算)。二是视野限定,大雾关卡大家应该也有印象。就是大雾遮罩下,导致僵尸到了很近的位置才会被发现,这种限制对玩家有很强的应变性要求。玩家需要预测或者贮存资源作为应急手段。

 

3塔位置

3.1固定位置

固定位置是指防御塔被要求只能建造在路线旁的指定位置上,但是这个位置并不是随意设定了。如果玩家发现一个重要的策略点上没有那个建塔的位置,玩家会觉得很不舒服,就好比掰开花生壳却发现里边没有花生一样郁闷。

固定位置需要注意几点。一是数量上要足够,不要出现玩家把所有位置都建造满了还是无法通关的死局;二是位置上要精巧,重要的交汇点一定不能落下,否则玩家绝对会吐槽。这方面《KINGDOM RUSH》上做的非常好。

当然不可能仅仅通以上几点就能布置出,还要结合数值,比如最后一波怪物的战斗力是否小于防御塔战斗力总和,战斗力什么的就让数值童鞋帮你弄吧,因为不同防御塔的各类DEBUFF和攻速、射程一大堆参数决定的。不过也不用过于精确,因为即使KR中,也没有把所有空位建满,有些空位只是为了布局美观和多选择点而已。

 

3.2任意位置

任意位置的话就简单多了。一种是TD游戏初期,WAR3路边的那种乱建乱造的防御塔,另一种则是COC中的高策略性、玩家自行布阵的模式。当然任意位置在增添策略性的同时也有很大弊端,那就是计算困难。策略性高就代表着可控性低,策划在计算的时候容易出现很大偏差,只能给出一个合理的范围。而期间策划需要把握的度就需要很多的经验和尝试了。

 

4怪物

4.1种类

怪物肯定不能是千律一变,要有各种特点,才能产生不同的策略需求。怪物主要分为以下几类:均衡类,肉盾类,强攻类,急速类,密集类等。分别对应的防御塔为:初级塔,穿透塔,肉盾塔,射速塔,区域塔。

所谓的均衡类就是最初接触TD时出现的怪物,所有属性都不高,没什么特色。接下里就会出现肉盾类怪物,厚血量高防御注定只能用穿透塔来消灭。强攻类怪物只有在对抗塔防类游戏中才会出现,比如《植物大战僵尸》中的橄榄球员僵尸,这类怪物攻高血厚,需要肉盾塔在前面拖延,由后面的防御塔消灭。急速类就是指快速移动的怪物,不过血量很少,需要高攻速的防御塔来消灭。密集类则是一小队数量多但是属性低的怪物,需要AOE攻击的防御塔来消灭。

实际战斗中多种情况结合,战况十分复杂,以上几类只是简单的概括基本的要素。

 

4.2波次

每波怪物总战斗力的配置要小于已通过波数总资源加初始资源转化为防御塔的战斗力。简单说就是之前打怪给的钱买的塔,能消灭这一波怪,没通过的话那就是玩家策略上资源分配的失误。这个说起来比较难,有兴趣的人可以去尝试一下KINGDOM RUSH这款TD游戏,这款游戏的波次配置相当完美,玩家从开始到结束都在思考资源分配的问题,基本不会出现前期紧张的要死,后期相当于挂机的配置失误。每一波对战斗力的把握十分精确。

这里也顺便说一下最初的教学关卡配置问题吧。最开始玩家接触TD游戏时,要单独配置几波特色怪物来体现防御塔的特点,比如提示玩家建造穿透塔,然后上几个肉盾类怪物,让玩家爽的同时充分表达出防御塔对怪物种类的克制关系,这会让玩家在后面布置上更容易。

 

4.3 特点

4.1中所说的怪物只是最基本的分类,当然还需要一些特殊的怪物来给玩家一些意想不到的惊喜,或者说给一些特殊的怪物配一些独有的技能。这一点在《植物大战僵尸中》做的非常好,有各种各样的僵尸,玩家需要根据不同的僵尸种植不同的植物,以及及时替换植物来进行应对。

 

 

 

 

5

从这节开始下面就是玩家考虑的元素了,不过设计关卡的话还是要是要掌握熟悉这些元素,才能更好的设计出玩家体验感更好的关卡。

5.1分类

首先防御塔的分类是与怪物基本对应的。这里的对应是指该类防御塔针对某类怪物的效果最强。关卡配置这种怪物时,玩家第一反应是建造该类防御塔去应对,让玩家形成最基本的策略反应,这样才有利于后期发展不同的策略意义。

同时根据防守路线或位置的不同也要防止不同类型的防御塔,让防御塔的效果达到最大化。比如KR中某个角落的防御塔范围与进攻路线交集较小,这种情况下就更适合建造兵营,因为兵营跟射程没有太大关系,它只是负责在路线上放置士兵。

 

5.2消耗

玩家在资源分配上会考虑两种情况:一是升级原有防御塔,二是建造新的防御塔。一般玩家都会优先去选择建造新的防御塔,因为建造新塔反馈给玩家的视觉效果更直接,而升级原有防御塔只有在低级防御塔效果太差或者位置不够的情况下才会去做。

关卡在配置关卡产出时要首先考虑到期望玩家该关最终效果。比如该关的总产出足够建造几个几级塔,是什么样的战斗效果。这一点在《保卫萝卜》上做的十分出色。他们关卡设定的最终效果是场景中有很多高级塔,战斗效果各种塔的攻击特效展现,十分酷炫。而为了达到这种效果,他们关卡的资源投放也很多。不过要考虑一点就是一定要有相同数量和质量的怪物来让玩家消灭。

5.3性价比

  这个就是指玩家建造或者升级防御塔时,针对不同防御塔进行的选择,而这种选择的依据一般是根据下一波怪物的提示进行的。这个信息要通过关卡UI来显示出来。不过现在很多游戏的怪物单关卡类型变化没有那么明显,估计是考虑到玩家的策略能力问题。所以现在的塔防仅剩的一点策略就是建造顺序了,主要还是让玩家很轻松的就能体验到TD类游戏的快感。

 

6魔法

现在由于玩家在策略能力上的退化,游戏设计者们不得不设计一些额外的系统来帮助游戏玩家缓冲,比如消灭怪物或者召唤防御者。当然如果设计得当还会起到一定的策略意义,比如由于魔法CD的存在,施放时机和位置也是三思而后行。

6.1进攻类

此类魔法多为AOE,主要用来消灭汇聚在交叉路口的怪物群,每局有CD或者次数限制。

 

6.2防御类

    此类魔法多为召唤类,召唤临时工在道路上阻碍怪物进攻,让怪物停滞在释放的点上,用于让防御塔输出最大化。

 

     

7英雄

7.1作用

                英雄系统在TD类游戏中出现的越来越多了,从策划角度来看,这无疑是一块大蛋糕,可以在英雄的成长系统中给玩家挖很大的坑(付费点),而玩家也乐此不彼的使用着英雄这个帮助效果很大的系统。当然这个系统的存在并不是单纯的为了挖坑,同时也增加了玩家的操作内容,根据该系统在TD游戏中所占位置重要性的不同,操作量也会有所改变。

  就《KINGDOM RUSH》和《兽人必须死》这两款在英雄系统上极端表现来看,KR主要还是在塔防系统上,英雄只不过相当于一个可以移动的、高属性的防御兵而已。而《兽人必须死》则是完全不同,玩家主要以操作英雄为主,进行设计,放置陷阱等操作,基本上都属于射击类游戏了。当然陷阱的放置起到的作用还是不容忽视。

7.2培养

       英雄系统谈到培养,基本就已经开始走远了。KR中的英雄系统就是简单的解锁,英雄在本关升级有效而已。而《兽人必须死》则是各种内容各解锁提升。这里就不赘述了,市面上RPG类或者卡牌类游戏的培养系统做的已经十分完善了,想做这方面的人可以去借鉴一下,毕竟现在游戏慢慢的都走向综合型了嘛。

7.3表现

既然挖坑了就要有一定的诱饵给玩家看,一系列美术资源是最基本的了。策划层面上还要给英雄在战斗中各种操作互动,比如最基本的移动、技能(参考卡牌类游戏)等。还可以在英雄系统上做消耗,比如关卡中死亡后,玩家需要花费资源复活或者花很长时间等之类的设定。

还有一点需要注意的是,如果你的英雄操作量不够多,那么最好就用数量来弥补,毕竟还是一个很大的系统,如果玩家没有充分利用到的话,不仅策划浪费,玩家也会觉得可玩性少,适得其反。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

塔防类游戏关卡分析 的相关文章

  • Python import自定义模块报错、自定义异常、字符串处理、截取

    一 python import自定义的模块报错 问题现象 pycharm中运行一切正常 但是到命令行中 cmd命令行或pycharm的Terminal窗口 运行py文件 就会报错No module named xxx 问题原因 pychar
  • 二分查找的两种方法(详细图解)

    一 什么是二分查找 假设给定的数组中的元素是一个有序的状态 比如是单调不递减或者是单调不递增的状态 对于这种情况可以使用二分查找来完成 即二分查找需要满足两个条件 1 数组存储 2 元素有序 单调性 二 时间复杂度 比如 总共有n个元素 每
  • mysql 互换两行数据中的一个值(排序互换)

    需求 实现列表排序互换功能 每次排序向上加一或向下减一 使排序号互换 分析 要达到这种需求 首先要拿到主动排序数据和被动排序数据两条数据进行更新 这样的话 仅从拿到的排序值处理 要进行多次查询和更新 不想做频繁的查询更新操作 想着能使用一条
  • vtk学习笔记 --- 判断三角形相交

    在使用三角网连接矿体的时候 需要判断当前连接的三角形和已经连接的三角形是否相交 所以 就需要进行三角形相交判断 看了一些算法的文章 两个三角形相交的判断规则大体如下 假设这两个三角形为A a1 a2 a3 B b1 b2 b3 三角形A所在
  • 创建一个简单的定时任务示例demo

    废话不说直接上代码 controller Controller EnableScheduling public class SchedulingUtil Autowired private ceshi ceshi private stati
  • 简单粗暴解决$emit第一次传值不成功问题

    兄弟页面间传值用 e m i t 发 送 emit发送 emit发送 on接收 但是如果是跳转页面 A页面发送数据跳转到B
  • Springboot + mybatis 调试Console控制台 打印SQL语句

    Springboot mybatis Console控制台 打印SQL语句 有的时候项目查不出数据或者数据出现错误 这时候需要看看SQL语句是否有错 于是就用下面的配置信息 打印SQL语句 如果使用的是application propert
  • Java几种文件复制的实现测评

    Java几种文件复制的测评 前言 Java复制文件的实现方式有很多种 IO模式下 1 FileInputSTream FileOutputStream 2 BufferedReader BufferedWriter 采用readLine方法
  • mysql数据库----时间和日期类型

    为了方便在数据库中存储日期和时间 MySQL提供了表示日期和时间的数据类型 分别是YEAR DATE TIME DATETIME和TIMESTAMP 表3 4列举了这些MySQL中日期和时间数据类型所对应的字节数 取值范围 日期格式以及零值
  • __declspec(dllexport)(转)

    declspec dllexport 转 转自 http hi baidu com jk cau blog item 43f7e6b3b3082da1d9335abe html 一 declspec dllexport 将一个函数声名为导出
  • XHbuilder 运行到 Ios APP 需要 ipa 签名,超详细的教程,你不看吃亏的是自己!

    今天使用 hbuilder 运行到 ios 真机的时候 突然发现还需要 ipa 签名 这是什么东东呢 1 IPA 签名是什么 因苹果公司禁止企业证书用于非企业内部开发者 所以开发者无法再使用DCloud的企业证书签名的标准运行基座 运行标准
  • ATM中英转换C语言源代码,Atm机中英转换去取款存款等C语言

    gt cardID cout lt gt psw cout lt 存款 取款 查询余额 修改密码 转账 退出 开户函数定义 cout lt cin gt gt money cout lt 存款函数定义 int money1 cout lt

随机推荐

  • Java synchronized的锁升级与对象头

    1 对象头存储加锁信息 1 如何查看对象头 通过依赖
  • Qt教程(3) : 信号与槽

    信号与槽是用于对象之间的通信的 这是 Qt 的核心 为此 Qt 引入了一些关键字 他们是slots signals emit 这些都不是 C 关键字 是 Qt 特有的 这些关键字会被 Qt 的 moc转换为标准的 C 语句 Qt 的部件类中
  • eclipse 导入项目源码报错(最全问题及解决方案)

    eclipse 导入项目源码报错问题汇总及解决方案 概述 情况一 no projects are found to import 报错原因 解决方法 情况二 导入项目后乱码 报错原因 解决方法 情况三 项目名称上出现红叉 报错原因 解决办法
  • pytorch计算GPU运行时间:

    tim 0 start torch cuda Event enable timing True the times end torch cuda Event enable timing True start record out net i
  • Android匿名共享内存和MemoryFile

    http blog csdn net goodlixueyong article details 53151959 今天要讲的内容相对冷门 日常开发中的使用率较低 但是 在某些场景下 它也许可以带给我们一个新的思路 帮我们解决一些棘手的问题
  • 【YOLOv8】实战一:手把手教你使用YOLOv8实现实时目标检测

    博客主页 virobotics的CSDN博客 LabVIEW深度学习 人工智能博主 所属专栏 LabVIEW深度学习实战 上期文章 LabVIEW OpenCV快速搭建人脸识别系统 附源码 如觉得博主文章写的不错或对你有所帮助的话 还望大家
  • VS Code如何让右键运行代码[秒懂!!!]

    前言 当我们下载完了VSCode 运行代码的时候发现还要去左上角的工具栏上面运行 这里我将教给你如何用右键的菜单运行代码 正文 下载一个插件就可以解决这个问题 Code Runner这款插件能解决这个问题 如图是下载过程 下载完了就可以用右
  • 计算机视觉小实例 No.3 基于Hough变化的答题卡识别

    答题卡识别 答题卡自动阅卷系统通过获取答题卡图像作为系统输入 并通过计算机处理 自动识别填图标记 存入数据库完成阅卷 但是答题卡在运输和使用过程中 容易受到设备 环境等因素的影响 使得图像质量在一定程度上有所下降 影响了自动阅卷的准确率 甚
  • ChatGPT对话聊天

    工具说明 ChatGPT是人工智能技术驱动的自然语言处理工具 它能够通过理解和学习人类的语言来进行对话 还能根据聊天的上下文进行互动 站内地址 本站提供ChatGPT聊天工具 能满足日常使用 但由于对接国外接口 中间经过复杂中转实现 故稳定
  • 魔方机器人之下位机编程---------舵机控制

    1 春天180 舵机 SR 403P 信号线和控制线颜色对应关系 两黑一白 白色信号线 中间电源 另一黑色电源 以上MC9S12XS128单片机通道三产生的周期为20ms 高电平为1 5ms的舵机控制信号 void PWM Init voi
  • 如何查看端口被哪个进程占用(Windows/Linux)

    之前有写过Linux如何查看端口被占用 但是最近查看Window的端口占用情况比较多 两个系统均使用了netstat命令但是参数不同 所以新写一个笔记作为对比 Windos查看端口占用 netstat ano 这个命令可以显示本机所有端口占
  • SqlServer 通用修改字段类型(多表)

    起因 因为SqlServer 数据库不支持varchar 类型写入 韩文多语言 解决方式 修改varchar类型为 nvarchar 类型 nvarchar类型是占用两个字节 其他问题 1 SqlServer的主键最多900字节 所以不能将
  • StringTokenizer实现

    OO分析 识别对象 源字符串str 当前词起始指针start 扫描指针i 当前词word 基本互动关系 1 当前指针在str范围且是字符i lt str size str i 并且是第一个字符 i 0 或上一个字符是空格 str i 1 则
  • Java 使用socket实现向服务器端上传图片[TCP]

    整体思路其实和使用IO流进行文件拷贝类似 只不过这次涉及的流更多 1 图片属于二进制文件 所以采用字节流处理 2 源图片文件位于客户端主机的磁盘 所以我们需要通过本地IO 将其输入到内存 本地IO 3 然后将读入内存的文件通过socket的
  • 三台服务器es集群性能,es集群服务器配置

    es集群服务器配置 内容精选 换一换 CDM支持将本地自建的Redis数据库或者第三方的Redis服务数据迁移到分布式缓存服务 Distributed Cache Service 简称DCS 无需编程即可快速实现迁移 使用流程如下 创建CD
  • 苹果手机signin_iPhone手机弹出sign in to itunes store怎么办[图]

    iPhone手机弹出sign in to itunes store怎么办 想必有的亲们遇到了这种问题 那么是不是骗子呢 下面就由安族小编为您详细介绍介绍哦 iPhone弹出sign in to itunes store怎么办 容易模仿的弹出
  • python/备战蓝桥杯-快速排序

    for i in range 引自Python for i in range 用法详解 python 脚本之家 jb51 net 快速排序 nums 5 3 6 4 1 2 8 7 for i in range 1 len nums 遍历未
  • ScriptManager 控件概述

    原文 http msdn microsoft com zh cn library bb398863 aspx ScriptManager 控件管理支持 AJAX 的 ASP NET 网页的客户端脚本 默认情况下 ScriptManager
  • 编译freetype库

    1 在https www freetype org download html有下载地址https savannah nongnu org download freetype 我下载的是freetype 2 7 tar gz 2 https
  • 塔防类游戏关卡分析

    转自 http blog csdn net u014779452 article details 48471669 隐约还记得最开始接触的塔防游戏是在 魔兽争霸3 里的一个塔防地图 一个田字型的地图 四周一波一波的来怪物 而玩家需要在路边建