找回密码
 点一下
查看: 1370|回复: 7

将兵营做成塔防中的特殊防御塔

[复制链接]
发表于 2014-12-24 23:34:18 | 显示全部楼层 |阅读模式
本帖最后由 736341577 于 2014-12-26 08:15 编辑

塔防游戏的怪物大部分都是无脑冲终点,属性也只有生命值,护甲,移动速度,这些单调的属性,玩久了比较无聊。而一款游戏kingdom rush却创新性的加入了特殊防御塔兵营,可以派出士兵去路径上与怪物战斗从而达到阻挡怪物的目的,同时怪物也加入了攻击力属性,分出了近战怪物,远程怪物,施法怪物,飞行怪物很多分支类型,让塔防瞬间变得新颖有趣,而这篇帖子就是讲解如何在星际中创造这种特殊的防御塔,兵营。
为了游戏性,需要达到以下效果:
1兵营派出的士兵只能同时被一个近战单位攻击,这样可以避免一个超级肉盾站路中间堵住所有怪物的情况发生。
2兵营派出的士兵可以通过兵营设定集结点的方式移动,但本身不可操控。为什么要这样呢,因为兵营必须要限制属于该兵营士兵的移动范围,让兵营能成为一个需要放在战略要地的防御塔而不是扔到大后方去只用它的兵,否则的话就失去了让兵营成为防御塔的初始目标了。而且利用集结点移动可以保证兵营出的士兵只能在一起移动,也只能守卫一个路口,避免了中间造个兵营直接守两路的情况。
3兵营派出的士兵数量要固定,并且士兵死亡后经过一段时间的读秒将会在兵营位置复活并自动移动到集结点。数量固定不说了,造个兵营数量无上限的话直接来百八十个兵堵路就行了,这样就失去了挑战性,所以数量固定为3个的话,同时只能阻挡3个近战怪物(远程怪物可以无上限阻挡,但是掉血速度你懂得,同时被一个单位攻击和同时被多个单位攻击掉血速度根本不是一个档次),迫使玩家造输出高的塔快速消灭怪物,否则其他近战怪物就溜过去了,适当的给玩家压力,能让玩家更好的玩下去。自动复活与自动移动到集结点就不用多说了吧,不能自动复活的话玩家要大骂坑爹了,而自动移动到集结点可以给玩家省了很多事,有时候手忙脚乱的还要操作刚复活的兵去路上是一件很烦躁的事情。
这是成品的兵营演示传送门
http://bbs.islga.org/read-htm-tid-2218366-page-1-fpage-1.html
这演示不是我做的,是一个叫yxxiaobin的大神做的(管他是不是大神反正在我眼里是大神),我还是个新手,前几天问了相关的问题,然后他就丢了个演示给我。打开之后测试很惊喜,因为完全符合了我想要的效果,但是打开数据之后看到密密麻麻的行为效果技能验证器。。。身为一个入门不到10天的新手,表示很难理解这些东西,所以发一篇帖子帮自己理一理头绪,同时也算是给论坛里的其他新手解释一下这些数据的用法吧,大神们想学这种特殊防御塔的用法请自行下载,不用看接下来的话浪费时间喽,因为你们可能看着看着就会觉得“废话好多哦。”接下来的话是给像我一样的新手解释的。让我慢慢来说,因为第一次看这些数据的时候我是被绕来绕去绕晕了,所以语言可能会组织的比较混乱。
首先我们来看要求1,士兵同时只能被一个近战单位攻击,大神给的解决方式并不是从士兵身上下手,而是在怪物身上动手脚。
我们来看看作为测试用怪物陆战队员的数据

陆战队员的数据更改主要是2点,首先是增加了技能0攻击自动配对,然后把武器换成了近战的熔枪,并给熔枪的伤害效果加上了验证器 0进攻者允许攻击

我们先来看武器熔枪的验证器 0进攻者允许攻击,加上0只是为了方便找到它。

1开头的请无视,那是我研究这个的时候做出来做实验的。
0进攻者允许攻击,验证器类型为组合,组合这个类型我的理解是它把多个验证器组合在了一起来解决多个条件同时存在的情况,右侧的验证器:类型显示的是 和,新建组合验证器默认为或,或与和的区别我就不说了。而这个验证器就将两个验证器组合在了一起 0目标未被攻击或正在攻击施法者 0目标正在攻击或不在移动,即同时符合了这两个条件,验证器才会验证通过。先看比较简单的目标正在攻击或不在移动验证器,这也是个组合验证器

第一次看到这我发现左下显示的是4个验证器,那它应该组合了4个验证器?但是看了右边的验证器:(组合)我发现不是这样的,最后得出结论,只有右边的验证器:(组合)中的验证器才是被该验证器组合在一起的验证器,而左下显示的有该验证器的“上级”,即其他组合验证器将该验证器组合了进去,而并非是它组合了那些验证器(疯狂的验证器,我已经晕了)。
在右边我们看到它将0目标正在攻击以及在移动组合在了一起,而这次的类型为默认的或,不在移动是一个编辑器自带验证器,是能够直接被识别的。而0目标正在攻击是一个自创验证器
5.png
它的验证器类型为单位指令队列,个人理解为 位接受的指令队列中有符合条件的指令,那么该验证器即生效。验证器:单位+,这是指被验证器选为目标的单位是什么,我们选择的是目标。验证器:技能 即目标正在使用什么技能,选择攻击。这样,只要目标接受了攻击其他单位的指令,那么该验证器就会通过了。
接下来我们看0目标未被攻击或正在攻击施法者,这也是个组合验证器,类型为或,左下显示的0进攻者允许攻击为上级,那么它就是把0目标无被攻击标记与目标正在攻击施法者的目标组合在了一起(有关施法者与目标,大部分情况可以大概理解为施法者是放技能的人,目标是承受技能的人,这个验证器是以施法者为中心,任何正在攻击施法者的单位都会成为目标)。
0目标无被攻击标记的验证器类型为单位比较行为计数。
6.png
单位比较行为计数,个人理解为比较单位目前行为与验证行为,若单位目前行为小于/小于等于/等于/大于等于/大于(可选)验证行为,则验证器通过。这里的验证器:比较 为等于,行为为0防守者正在被攻击,即单位有了0防守者正在被攻击行为,则验证器通过。
我们来看看这个0防守者正在被攻击行为
7.png
行为类型为增益,标旗为 隐藏的,即该行为不会显示在命令面板上,验证器(移除)0保留被攻击标记,即该行为生效后将会移除该验证器,我们先看这个验证器
8.png
这又是个组合验证器,这次的验证器类型为和,组合了3个验证器,施法者非死亡状态不解释,0施法者未被击晕是一个单位过滤类型验证器
9.png
通过设置,该验证器将会自动过滤掉昏迷的施法者,这样可以避免施法者被技能昏迷了依旧被验证器判定为目标从而出现一些比较奇怪的BUG。目标未被攻击或正在攻击施法者之前我们已经说过了。
继续回到行为0防守者正在被攻击,我们可以发现在左边可以看到一个效果 0攻击自动配对应用行为,而在右边找不到这个效果,所以,这个效果就是该行为的上级,我们去效果里找。
10.png
0攻击自动配对 应用行为,效果类型为 应用行为,即该效果可以被直接应用至行为。它的左边可以看到两个效果,我们先来看上面的。
发布指令 防守方,效果类型为 发布指令,效果为 以施法单位为目标执行攻击技能。
11.png
这里有个特殊的地方,0攻击自动配对 集合
11.png
这是个效果类型为 集合 的效果,它的作用是,将几个效果集合到一起,使不能直接应用到行为的效果(如0攻击自动配对 发布指令 防守方)能够通过和应用行为类型效果集合来应用至行为。现在,我们就能直接把效果 发布指令以施法者为目标攻击应用至0防守者正在被攻击行为了。
再回到我们之前的0目标无被攻击标记验证器(我费了半天劲才想起之前说的是什么),在左下的对象查看器中能看到它的上级有个技能是0攻击自动配对,切换到技能界面。
12.png
这个技能现在看来就很简单了,因为有关此技能的验证器与效果我们都说过了,它的技能命令只有一个,攻击,并且命令按钮也只有一个 攻击(重新定向)
好了,陆战队员的两个关键数据改动就说完了,一句话总结就是。当防守士兵符合以下要求:没有效果为正在被目标作为施法单位攻击的行为或正在攻击施法者(陆战队员),并且目标正在执行攻击指令或目标不在移动状态(移动状态指接受了移动的指令而移动去某地并非只要它在移动就是移动状态,比如选中单位A地面,单位移动过去了,这就不是移动状态),并且施法者陆战队员不能为死亡与被击晕状态,则允许施法者陆战队员攻击,否则陆战队员不能攻击。
要求1就这样被完美解决了,写到这里我看了下时间,嗯,我写了4个半小时,大大出乎意料,照这样,若是我把要求23都写完了,估计天都亮了。因为我思路并不明确,也处于边写边摸索状态,还要组织语言保证各位新人能看懂,还要截图,所以耗费时间非常多。不过好在写完了这个以后我也彻底理解了这些东西,好处很大嘛。其他的我待会看情况写吧。
 楼主| 发表于 2014-12-24 23:54:03 | 显示全部楼层
要求效果23我看了一下,按照效果1的速度,估计如果我真的要写出来的话可能要十几个小时。。。。而且连续写了4个半小时也好累了,觉得还是先放下吧,去睡觉,改天再补
回复

使用道具 举报

发表于 2014-12-25 20:16:10 | 显示全部楼层
赞。我也在做类似的东西。(不过有点区别,我想做的是一个战略类征服扩张的地图。)
yxxiaobin大神的例子我研究了两天还没搞懂。。虽然拷过来就能用。

点评

其实就是写给你看的。。。你的疑问贴我看过了,同为新手的话,我看不懂我想你应该也看不懂,所以我发这个帖子来帮你理解一下,同时也是帮我自己理清思路。直接用的话不理解用法,会比较生硬并且对自己水平的提升没有  详情 回复 发表于 2014-12-25 21:35
是不是类似这样的?  详情 回复 发表于 2014-12-25 20:47
回复

使用道具 举报

发表于 2014-12-25 20:47:18 | 显示全部楼层
yg3415 发表于 2014-12-25 20:16
赞。我也在做类似的东西。(不过有点区别,我想做的是一个战略类征服扩张的地图。)
yxxiaobin大神的例子 ...

是不是类似这样的?
回复

使用道具 举报

 楼主| 发表于 2014-12-25 21:35:55 来自手机 | 显示全部楼层
yg3415 发表于 2014-12-25 20:16
赞。我也在做类似的东西。(不过有点区别,我想做的是一个战略类征服扩张的地图。)
yxxiaobin大神的例子 ...

其实就是写给你看的。。。你的疑问贴我看过了,同为新手的话,我看不懂我想你应该也看不懂,所以我发这个帖子来帮你理解一下,同时也是帮我自己理清思路。直接用的话不理解用法,会比较生硬并且对自己水平的提升没有好处,所以还是学学怎么用比较好。
回复

使用道具 举报

发表于 2014-12-26 21:59:49 | 显示全部楼层
咦,居然提到我。不过我还真不是什么大神,菜鸟一枚而已。
就这个演示的话,也不是真正完美,虽然看起来似乎没什么遗漏的,但是仔细看会发现,没有任何限制措施不让士兵被逐渐勾引的很远!这玩意用触发器很简单,但是纯数据的话,硬伤在于,你无法简单判定士兵离集结点的距离有多远,除非在集结点创建一个隐藏马甲,然后用马甲给士兵发布指令,但显然这不节约,所以我没这么做,而是继续思考中(其实是思考一段时间后发现无解就没在理他)。
然后简单说明一下。其实楼主的分析真的很详细,如果是我自己写的话,是写不出这么多文字的,所以我这几只简单补充几句算啦。
1.让士兵去找怪进行单挑是有困难的,因为怪少时允许围殴,怪多了是能自动分兵拦截的,显然系统默认的攻击技能和武器系统不能简单满足这样的要求,所以想到个取巧的方法,让怪去找士兵单挑,并给他上个标记buff,而没有被单挑的士兵则根据系统默认会参与围殴,而新来的怪则只允许攻击没有上标记的单位,所以就能实现自动分兵啦。不过这样一来,所有的怪的武器都需要重新设一下验证器,稍微麻烦些。
2.比较难理解的部分我觉得主要在于用兵营命令已有士兵去集结点了,因为集结点这东西是无法被效果调用的,这点前边说过了,所以我用了一个点目标的效果技能来做马甲,这样目标点就能被使用了。如果保证只给自己产生的士兵发指令呢,这个是关键所在。其实在训练技能里给训练出的士兵加了buff,这个buff的施法者就是训练它的兵营了,然后用buff不听判断施法者是否有了集结标记,如果有,则给自己也上一个标记,然后搜索时判断这些士兵是否有标记就好了,因为标记只瞬时存在,用完就被删掉了,所以在手动操作下几乎不会出错,如果是自动模式则在极少情况下会出错。
简单说这么多吧,睡觉啦。
回复

使用道具 举报

发表于 2014-12-27 09:40:24 | 显示全部楼层
好吧,仔细看了下,有些地方理解的不对呀。
1.目标无被攻击标记 这个验证器,根据字面理解,就是没有标记buff啦,你看比较字段写的是等于,而值写的是0,也就是说,比较单位身上的指定行为计数为0,也就是没有这个行为,这才算验证通过,而不是有这个行为,如果是有这个行为,应该写大于0(或者是等于某个自然数)。
2.行为的移除验证器字段不是说有了行为就移除这个验证器,而是说行为生效后,会不断判断这个验证器是否通过,如果不通过,则移除一层行为。即:移除是指移除行为本身。
3.验证器施法者未被击晕可以不要,不会产生bug。加上这个是为了满足一个可能存在个功能:如果防守士兵有击晕技能,打晕进攻者后不会死守着他继续打,而是去打其他的正在行进的进攻者。如果你需要死守着打的,或者根本没有击晕技能,这个就不要了。
4.应用行为的效果不是说这个效果可以应用到行为上,而是这个效果会给它的目标添加一个指定的行为。在攻击自动配对的例子中,这个效果用于给目标(就是防守方)添加一个“防守者正在被攻击”的标记buff。
5.基于对应用行为效果的错误理解,集合类效果也理解的不是很对,但是思路是对的。集合类效果就是把若干个效果集合在一起,方便其他地方调用。比如技能只能调用一个效果,如果要产生3个实际效果,则需要用集合效果将他们集合在一起,然后技能调用这个集合效果,就相当于调用了那3个效果。

作为星际2编辑器的爱好者,我非常欢迎更多的人一起来做这件事。不过作为一个比楼主入门稍微早一点点的人,我有这么个建议:不要开始就研究效果树很复杂的东西,可以从简单的开始,更容易弄清星际2的数据结构(其实我对着官方数据钻研很久才理解了星际2的数据结构和运作模式,这个可能因为智商问题,也或者是当时作为较早接触编辑器的人之一,获得帮助是很困难的)。如果一上来就看很复杂的东西,一旦产生错误的理解,就会发现越来越感觉困难,最终丧失兴趣而离开这个丰富多彩的编辑器世界。而且非官方的东西,或多或少有着不规范的做法在里边,这些可以使用,但不值得推荐,所以等自己对编辑器有了一个整体认识后在看别人的演示,这样能更好的取其精华,弃其糟粕。我觉得起步阶段,去研究官方内容,然后把自己理解困难的东西当做问题提出来,让老鸟们帮你解答会更好一些。

点评

唉。。。确实难理解,你那个我看了几天没有成果就放下了呢,最近比较忙也都没有用编辑器了,感觉真的好复杂,需要投入的时间精力也很多,我不确定以后有没有那么多时间去弄编辑器了。。。我很喜欢我的世界这种类型的  详情 回复 发表于 2014-12-29 10:39
回复

使用道具 举报

 楼主| 发表于 2014-12-29 10:39:03 来自手机 | 显示全部楼层
yxxiaobin 发表于 2014-12-27 09:40
好吧,仔细看了下,有些地方理解的不对呀。
1.目标无被攻击标记 这个验证器,根据字面理解,就是没有标记b ...

唉。。。确实难理解,你那个我看了几天没有成果就放下了呢,最近比较忙也都没有用编辑器了,感觉真的好复杂,需要投入的时间精力也很多,我不确定以后有没有那么多时间去弄编辑器了。。。我很喜欢我的世界这种类型的游戏,因为我喜欢创造自己的世界的感觉,编辑器能带给我这种感觉,而且更胜一筹,它可以让我直接做出我想要的游戏!但是与之对应的却是很高的上手难度及大量时间精力的花费,我一直觉得我比较自信,这次却对自己能不能做到学好编辑器有些没信心了,因为我不确定今后有没有那么多时间精力去搞这个,这与我今后的道路是没有关系的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-4-25 07:39 , Processed in 0.219736 second(s), 31 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表