M.I.K.U. 发表于 2013-10-24 02:37:00

夺城战役制作教程

本帖最后由 M.I.K.U. 于 2013-12-25 18:22 编辑

夺城(RISK)类战役,一般认为是不同于定量过关、建设毁灭、角色扮演三大战役类型的一种独特战役类型,最早见于King Bob VI的战役《十字军》。此类战役的模式大致为:在地图上有若干座城池,每一座城池都可以提供给控制者资金和花费资金雇佣士兵,玩家控制部分城池,以从其他势力手中夺得全部城池为胜利目标。夺城战役的系统非常复杂,因为地图上所有城池的运转触发都属于同一个系统,它们非常相似,一不小心就会弄混;而且,由于夺城战役往往整个地图都是战场,因此很少会有单人剧情的部分,不过依然可以通过战略任务或故事背景的方式添加剧情。 因此,夺城战役适合那些有耐心而缺少剧情创作灵感的人制作(比如笔者……)。

夺城战役的主要战略目标为城池,城池一般是一个由系统NPC(在游戏中管理系统物件的NPC玩家,与所有其他势力,包括人类玩家都锁定于联盟状态)的建筑组成的小城,城中有占领该城的象征——对应玩家的城堡,占领城池的势力可以从城池得到雇佣士兵的黄金,在城池中的对应建筑雇佣士兵。夺城战役的系统也就由这三大部分组成:占领城池、获得黄金、雇佣士兵。

M.I.K.U. 发表于 2013-10-24 02:37:22

本帖最后由 M.I.K.U. 于 2014-4-16 12:18 编辑

首先讲占领城池的触发。

早期的夺城战役的占领触发是这么写的:
===========================
触发1 否是是(显示触发描述:否,触发开启:是,循环触发:是,下同)
条件0:区域内拥有对象 城堡周围的一圈区域 玩家1的士兵
效果0:产生目标 指定位置 玩家1的城堡
(玩家2、玩家3等所有势力的触发都类比设置,下同)
===========================
这样设置达到的效果是,摧毁城堡后,派一名士兵进入触发区域(靠近原有城堡的地方),就会产生新城堡,即占领该城池

但是这样的简单触发有两个BUG(也可以说是一个),成为早期夺城战役的缺陷:
1、当城堡残血时,防守方可以占据触发区域,然后将城堡删除,便会产生新的完好无损的城堡;
2、假若摧毁城堡后被防守方抢先靠近触发区域,则敌人的城堡会重建,之前攻城的所有努力泡汤。

针对第一个BUG,优秀夺城战役《三国鼎立》的制作者幻影の仔提出了两种解决方案:
第一,新建城堡时产生的并不是玩家1的城堡,而是NPC的城堡,也就是说由一个NPC来代替玩家拥有城堡,当然该NPC的外交态度要与玩家的外交态度完全相同。这种方法是最直接的解决第一个BUG的方法,但它也有缺点:玩家不能控制城堡攻击,而且要占用一个玩家位置,限制战役的势力上限。
第二,引入“占领度”概念,将新建成的城堡损坏至很少的生命(几百甚至几十),然后用触发使城堡慢慢恢复生命。这个方案可以有效解决第一个BUG,一定程度上也能缓解第二个BUG,还增加了游戏的可玩性,因此被认为是较好的解决方案。

具体触发如下:
===========================
触发2 否是是
条件0:区域内拥有对象 城堡周围的一圈区域 玩家1的士兵
效果0:产生目标 指定位置 玩家x的城堡(玩家x可以是系统NPC,也可以是任意一个始终不会与玩家1敌对的NPC玩家)
效果1:损坏目标 刚产生的城堡 x-y(x为城堡的生命上限,y为你想要的起始生命。在触发中直接输入式子结果。下同)
(由于不可能在触发中指定游戏中产生的单位作为目标单位,因此,这里的“损坏目标”要将目标区域设定为产生城堡的区域,并设定目标单位类型为“城堡”,目标玩家为玩家x。下同)
效果2:改变所有权 刚产生的城堡 玩家x→玩家1
(触发2代替了上面的触发1,作为产生城堡的触发。本教程列出的同一系统部分不同的触发或触发组之间都可以互相代替使用)
-----------------------------
触发3 否是是
条件0:定时器 (设定为你想要的修复时间间隔)
效果0:损坏目标 所有玩家1的城堡 -16777216+x
效果1:损坏目标 所有玩家1的城堡 -1
……
效果n:损坏目标 所有玩家1城堡 -1(n为你想要的每次修复的生命点数)
效果n+1:损坏目标 所有玩家1城堡 16777216-x
===========================
这里涉及到“给单位每秒加n血而不超过上限”的技术,详情请看:https://www.hawkaoe.net/bbs/thread-30971-1-1.html
这里所有的“损坏目标”效果都不需要指定目标单位或目标区域(在AOKTS中这些效果会因程序判定未设置完全而显示红叉,看不顺眼的话可以把目标区域设置为全图)

但是,有些人还是不满足,希望彻底解决第二个BUG。于是,笔者自己想出了解决第二个BUG的方法,虽然不能彻底,但笔者本人也满意了:
===========================
触发4 否是是
效果0:激活触发 触发5
效果1:激活触发 触发6
-----------------------------
触发5 否否否
条件0:区域内拥有对象 指定区域 玩家1的城堡
效果0:关闭触发 触发6
-----------------------------
触发6 否否否
条件0:定时器 3秒
效果0:激活触发 触发7
-----------------------------
触发7 否否否
条件0:区域内拥有对象 指定区域 玩家1的单位
效果0:产生目标 玩家1的城堡
效果1:损坏目标 刚产生的城堡 x-y
===========================
简单来说就是用三联触发检测玩家1的城堡是否存在,不存在的话就延迟3秒后激活玩家1产生城堡的触发。因为产生城堡的触发在城堡出现后不再处于激活状态,所以可以在触发内直接扣减生命。由于有3秒钟的延迟,BUG便不会那么容易出现(如果3秒内你到不了触发区域,那你的境况也不能算作完全攻下了这座城;同时作为防守方,当你能击退敌军时不至于因城堡被夺而落败)。这样还有一个好处,就是产生的城堡不需要改变所有权,因此可以进行研究升级。
这个方法被笔者用在了《蒙古帝国的统一》和《金坷垃之战》中,效果显著。(当时笔者运用的触发比现在写在这里的要啰嗦,但效果相同)

M.I.K.U. 发表于 2013-10-24 02:37:42

本帖最后由 M.I.K.U. 于 2013-12-24 23:42 编辑

雇佣士兵的触发相对占领城池要简单一些,一般是像下面这样设置:
===========================
触发8 否是是
条件0:堆积属性 足够的黄金
条件1:区域内拥有对象 城堡的位置 玩家1的城堡
条件2:区域内拥有对象 出兵点 模板兵(模板兵为放置在出兵点上的,与相应的雇佣兵种相同的系统NPC士兵,用于指示可雇佣兵种和防止其它单位堵点。你可能需要专门设置一个触发,在所有出兵点上循环产生模板兵)
条件3:定时器 你想要的出兵时间间隔(不必要,自行斟酌)
条件4:选择对象 雇佣士兵对应的建筑(NPC势力不需要这个条件)
效果0:进贡 玩家1→大地之母 对应价格的黄金
效果1:改变所有权 模板兵 系统NPC→玩家1
效果2:指派目标 出兵点→集结点
===========================
如此达成的效果为:当占领了该城池并且拥有足够的黄金时,选择雇佣士兵的建筑,即可得到士兵,同时扣除对应价格的黄金。
不过,由于得到的士兵是从系统NPC改变所有权而来,因此所有势力的同一兵种属性相同,且不能进行研究升级。这两者的解决方法分别为:在不同势力的雇佣同一兵种士兵触发中分别进行属性修改;将“改变所有权”改为“移除目标”+“产生目标”,移除模板兵后再产生对应玩家的士兵(不同势力也可以通过不同的研究升级达到差异性)。

获得黄金的触发就更简单了:
===========================
触发9 否是是
条件0:区域内拥有对象 城堡的位置 玩家1的城堡
条件1:定时器 你想要的黄金产生周期
效果0:进贡 玩家1→大地之母 -a(a为获得的黄金数)
===========================
使用负数反向进贡的原因是这样不会有提示音,能使人类玩家更专心于战斗。设置为正常进贡也不会有问题。
但是,当a比较小(大多数夺城战役为50~100)时,NPC势力的触发不能这样设计,因为NPC势力雇佣士兵是所有城池同时雇佣,而系统执行触发的顺序永远是从上到下,由此就会造成一直是触发写在前面的城池出兵的情况。针对这种情况设计的改良触发如下:
===========================
触发10 否是是
条件0:区域内拥有对象 城堡的位置 玩家2的城堡
条件1:定时器 你想要的黄金产生周期
效果0:进贡 大地之母→玩家2 1木材
-----------------------------
触发11 否是是
条件0:堆积属性 玩家2 n木材(a*n要达到一个足以使所有城池同时雇佣的数字)
效果0:进贡 玩家2→大地之母 n木材
效果1:进贡 大地之母→玩家2 a*n黄金
===========================
将每次得到的少量黄金先积攒起来,达到一定数目后再一起交付NPC,所有城堡便都能正常出兵。

M.I.K.U. 发表于 2013-10-24 02:38:10

本帖最后由 M.I.K.U. 于 2013-12-24 23:37 编辑

一个好的夺城战役,仅仅遵循这些条条框框是不够的,没有创新,就不会有进步。下面提出一些笔者想到过的基于原夺城系统的创新,希望能给各位一些参考价值。
1、金矿概念
获得黄金的基础不是城堡,而是金矿。金矿的夺取方式与城池相同,占领标志是一座箭塔,这就意味着它较容易占领和失去。龟缩防御不再有效,一旦散布在野外的金矿失陷,部队将会陷入弹尽粮绝的境地。
2、维护度概念
当你的城池越多,你就要花费越多的资金在各城池间的物资转运上。具体到战役中就是:你占领的城池越多,每座城池所能提供的黄金数就越少!以类似于NPC势力的资源代换触发为基础,在不同的城池数目下使用不同的代换比率,实现“战线越深入,补给越困难”的效果。
3、经验升级效果
源自《命令与征服:将军》和《红色警戒3》的设定:消灭敌方士兵可以积累经验,积累一定数目的经验可以换取技能点,使用技能点来换取科技增强自己的军队。让你的军队在愈战愈勇中征服一切!

以上只是一些范例,相信各位看官能想到更好的创新,为夺城战役家庭增添光彩。

Hawk_M.I.K.U.
2013.10.24

M.I.K.U. 发表于 2013-10-24 02:39:50

由于本文是半夜写成,难免会因本人困意产生这样那样的差错,欢迎各位指正。
最后@条顿武士

逸轩帝国制作组 发表于 2013-10-24 03:49:21

前排前排~
先收藏加顶再说!
精品文章~
至少比我写的更内涵~
可惜木有图。。

策霸霸 发表于 2013-10-24 13:15:34

写的好。顶一个。

Rpg教程和夺城的教程都不错。确实能学到不少东西!

ps 什么时候能出个像克雷西之战,陶顿之战那种大场面的战斗的教程 也知道各位忙,仅是个人建议

手田水口廿卜 发表于 2013-10-24 17:08:22

M.I.K.U. 发表于 2013-10-24 02:38 static/image/common/back.gif
一个好的夺城战役,仅仅遵循这些条条框框是不够的,没有创新,就不会有进步。下面提出一些笔者想到过的基 ...

可以去玩文明5
參考一下

宰相 发表于 2013-10-24 17:56:36

{:149:}感谢楼主

M.I.K.U. 发表于 2013-10-25 22:44:54

果然没人看啊……
夺城战役关注的人还是不多……
{:150:}

枫叶の飘零 发表于 2013-10-28 18:39:49

字体可否改的多样一点?全是一个颜色吾辈有些眼晕

三成家家喵 发表于 2013-12-23 23:57:18

福利收藏,有需要回来翻
有一个难题,若开发双人或多人的夺城,似乎只能以自动出兵的方式出兵?

M.I.K.U. 发表于 2013-12-24 00:53:21

三成家家喵 发表于 2013-12-23 23:57 static/image/common/back.gif
福利收藏,有需要回来翻
有一个难题,若开发双人或多人的夺城,似乎只能以自动出兵的方式出兵?

可以用开关式出兵。兵营旁边放一个无敌士兵,把这个士兵移动到指定位置出兵,移开则不出兵,随着城堡的所有权来改变所有权

枫叶の飘零 发表于 2013-12-24 20:42:05

给LZ改了一下字体颜色,全是一个线条真的很容易看混{:7_325:}

M.I.K.U. 发表于 2013-12-24 23:36:14

枫叶の飘零 发表于 2013-12-24 20:42 static/image/common/back.gif
给LZ改了一下字体颜色,全是一个线条真的很容易看混

五颜六色的版面我自己看着反而眼晕{:146:}

拔山盖世 发表于 2013-12-25 14:00:31

呜哇,真的好多,触发好多看上去都差不多,城池不多还好,稍微多起来就容易弄混,赶脚工作量好大{:146:}

VicViper 发表于 2013-12-29 22:33:23

已保存页面

有时间慢慢研究

1007085892 发表于 2014-1-20 12:04:50

要好好研究

爱德华先生 发表于 2014-2-4 16:39:28

果然挺复杂呢看来要融入一个大的战役里面 夺城作为单独一关的话 还得融入小的单位剧情任务呢
先mark一下回头慢慢研究

三成家家喵 发表于 2014-2-4 23:52:25

不不不不,无敌士兵受到视野外的攻击不会乱走吗?
页: [1] 2
查看完整版本: 夺城战役制作教程