1、瞎尼玛这是尼玛曾经写了一半的教程,由于制作 mod 停工了很久。等 mod 发布完结,才突然想起;不愿浪费,就快马加鞭补写了一下。只当是退役撒花,为中 2 吧友留下些东西吧。本文主要讲解了尼玛对于中 2 弹药和特效这块的理解,而东西本身并不艰深。希望能造福喜欢修改的朋友,有不正确的地方也请指正。栏目:1.壹发入魂弹药文件基础2.烂牛与圣光AE 类型与初探3.万弹归综子母弹的各种应用4.不灭之火AE 组的应用5.七窍生烟视觉效果修改6.大魔炮英雄战场技能7.弹弹乐更多组合与创意后文主要用到的文件和尼玛习惯的简称:export_descr_unit.txtEDUdescr_projectile.t
2、xt弹药文件descr_area_effects.xmlAEdescr_effect_impacts.txt炮击效果descr_artillery_effects.txt炮口效果(由于最后几个还没有写完,尼玛准备慢速更新本帖,一天更一个栏目的感觉,吼不吼啊)Part1. 一发入魂弹药文件基础借一颗子弹大概讲一下弹药文件的基础内容瞎尼玛这是工革 2 里的“中等命中率子弹”逐行分解:projectile midbullet 名字是也 projectile为固定前缀 而这颗子弹叫midbullet-destroy_after_max_range_percent_and_variation 106 1
3、0超距自毁设定 后两个数字可更改:第一个数是子弹飞到极限射程(EDU 中的设定)的106%距离时自毁;第二个数是子弹自毁距离百分比的上下浮动百分比此项有助于限制一些高射速的弹药,并保证 EDU 射程设定的有效性。-effect small_arrow_trail_setend_effect bullet_impact_ground_setend_man_effect man_impact_tiny_setend_package_effect bullet_impact_wall_setend_shatter_effect bullet_impact_ground_setend_shatter_
4、man_effect man_impact_tiny_setend_shatter_package_effect bullet_impact_wall_set从上至下分别为弹药模型(见于descr_arrow_trail_effects.txt) 、触地效果、触人效果、触墙效果、残留触地效果、残留触人效果、残留触墙效果(见于炮击效果文件) 。注:残留效果用于额外模拟断箭、破碎后残留的弹片等效果,通常 mod 都没有特别设置。-瞎尼玛damage 0伤害设定,此处伤害为无视护甲的伤害,任何触碰该弹药的敌军都会受到此伤害。因穿刺、大半径以及 area 造成的群体伤害也计算该数值。EDU 设定的攻击
5、力与他叠加,但 EDU 伤害不作用于群体伤害计算。同时它会作为攻城器械部队的对建筑伤害数值。例子中该子弹取伤害为 0,意味着只计算 EDU 中设定的伤害。另外,若想区分该弹药对建筑和部队的伤害效果,也可以设置专门的对部队伤害数值(常见于管炮)damage_to_troops 60-radius 0.1弹药半径,大半径的弹药会更容易“蹭”到单位(这样好理解吧)具体数值把握请参考现有素材。-mass 0.2弹药质量。中 2 有自己的物理引擎(伪) ,弹药重量和它的初速度将决定它的射程、弧线以及被砸到部队的反应。-accuracy_vs_units 0.042命中率,同样地还有accuracy_vs
6、_buildings 0.0300accuracy_vs_towers 0.025分别是对士兵、建筑、塔的命中率。具体数值该设置多大多小自己体会。-min_angle -60max_angle 70出膛最大角和最小角。依照之前提到的 mass 以及出膛速度,游戏里的炮手小人会自己拿圆规计算一下这炮怎么打,他们的公式是:瞎尼玛他们计算出来这炮的角度后就会看你设置得这武器能不能仰到那个程度,再决定能不能射击。也就是说这个炮仰角的数值就限制了这种武器能够怎样射击(平射还是抛射还是两者皆可) 。-velocity 200 220出膛初速度;两个数值意味着炮手有两个选择需抛射时用慢得,需平射时用快的。初
7、速度高某种程度上强化了命中率数值的意义,因为打偏的子弹迅速栽倒地上而不是慢悠悠落在前排目标头上另外高速子弹也有助于我们击飞小人,多有镜头感啊所以工革里普遍使用高初速、中质量、低命中的子弹,以此模拟近代排队枪毙时代的火枪中弹效果。-ground_shatter此为弹药的附加属性,意为落地自毁。类似的属性还有(可能不全,随时补充):Bounce 弹跳弹(允许弹药落地后弹跳 4 次)body_piercing 穿体(不会在触碰单位判定自毁消失;而 EDU 里的 bp 属性只是给 ai 看的哦)grapeshot 子母弹组(制造更多炮弹的马甲弹)rocket 火箭组(布朗运动)prefer_high
8、强制高抛(模拟迫击炮)self_explode 空中自爆(制作不稳定的炮弹)triangle 独立焰尾(小尾巴)fiery 燃烧的(杀伤时自带火焰效果)这些属性每个都有很大的开发价值,尼玛会再后面的教程里尽量讲解和挖掘。-display aimedeffect_onlydisplay 尼玛不太明白作用,可能是和发射出去后的弹药的指向有关。effect_only 是指前头说的弹药模型和触地效果那个,用以和另一种表现弹药形态的方法做出去分:model 法:model data/models_missile/sling_stone.cas, max具体可参考stone以及部分原版弹药的模型设置格式。
9、由于这是一种落后的导弹模型设置,所以不用理会,都采用 effect 制的就好。-exploding cannon_shot瞎尼玛或flaming duwu分别是爆心弹和火焰弹的设置,通常设置于弹药模型的上一行,并写上对应常规炮弹的名字就好弹药文件基础内容就差不多了,具体数值、填写位置以及战场效果大家自己多多测试就好明天继续发接下来的教程。Part2. 烂牛与圣光AE 类型与初探标题之所以这么起是因为腐牛是尼玛最初了解 AE 的桥梁,而圣光是指另一个加士气的AE。有多少人最初都是为了搞清烂牛的机理而去了解 AE 文件的呢?AE,或说区域效果文件主要用于设定弹药的爆炸效果。由于是 xml 格式,排
10、版中每一项都清楚地写上了注释,十分易于理解。图例给出的是烂牛的语句。每个 AE 都代表一个和弹药关联的触发效果,上一章说的弹药文件中经常会遇到这么一个东西:这里面写的area_effect ae_cannon_shot_large便是对应 AE 中的项目内容。打开 AE,发现不论哪种 ae 都有以下内容:与是每个区域效果的开头和结尾语句。ae_cow_carcass此项是名字nausea此项是 AE 种类常用的 type 有:Nausea/holy 士气影响额外的士气打击Explosion 爆破和片伤与摔跟头相关Projectile 子母弹和霰弹散弹相关area_effect_set AE 组
11、进阶特效必备fire 火焰和持续火焰效果相关瞎尼玛考虑到不同类的 AE 内含项目区别较大,下面以具体 AE 类型为分类进行说明。1. Nausea/holy 类下属可选条目cow_impact_ground_set地面效果,着弹后地面上发生什么,是蘑菇云还是一只死牛,这里决定。内容见于炮击效果文件。 (关于更具体的视觉效果设置会在后面章节说)cow_impact_wall_set不常见的额外视觉效果。2.0半径-此半径决定着弹点为中心的士气影响范围30持续时间-决定士气影响时间,单位秒2212424432160小旗子的变色与闪烁效果,RGB 不难理解。-2516影响的士气值和最多减少一支部队多
12、少士气值2. Explosion 爆破类下属可选条目0.0 0.0气浪半径与气浪强度1.01.0有效杀伤半径和有效杀伤伤害此伤害类似弹药文件里的 damage:设置高的话一下敌人全死了;低一些的话一些爆炸范围内的敌军则可以幸免。瞎尼玛1.20.0内圈杀伤半径和内圈杀伤伤害与上一项同理,且二者叠加。本质上就是给予玩家一个设定分级伤害的机会。1决定该特效是否具有火焰属性的设置;不同于弹药文件里的设置,AE 里的火焰特效是必杀的,哪怕没有设置伤害也是如此。3. Projectile 子母弹类下属可选条目(如何制作子母弹会在下一个章节说)man_impact_tiny_set区域效果触发时诞生的一个特
13、效,内容见于炮击文件1525母弹爆裂时子弹的四散强度grape_bullet_bp设置儿子弹的类型,对应弹药文件内容。trueTrue 的话儿子弹采用和母弹一样的弹道速度;false 则用自己的。forward母弹分裂时子弹射出去的方向可选 forward 前, backward 后, up 上, down 下, horizontal 与地平线平行方向的参照物都是母弹爆裂时的朝向30 在之前设置的方向基础之上,每颗子弹随机偏移的最大角度14儿子弹的数目4. area_effect_set AE 组类下属可选条目ph_fire_burn1ph_fire_burn1延迟多少秒时触发某个 AE 项目
14、,对应本文件中内容AE 组让我们得以让一个炮弹同时获得多个 AE 效果,后面会再讲。5. fire 火焰类下属可选条目瞎尼玛2.0为火焰效果出现的位置换个高度1000延迟触发的时间60效果持续的时间到此为止 AE 文件的基本内容也介绍完了,综合 AE 和弹药文件,我们可以制作出很多有趣的武器效果了。但具体怎么实施,还要自己尝试和开脑洞。明天以子母弹为例具体说一说咯。Part4. 不灭之火AE 组的应用这一章真心简单,主要是开拓思路之用。顾名思义,这个功能可以让我们将多个 AE 组合在一个 AE 中触发,尼玛打开文件找了一个原版的例子:瞎尼玛没错,希腊火。我们都知道,希腊火掉在地上后还能够燃烧一
15、会儿,踩上去的小人儿会被烧死。实现这个持续效果就需要 AE 组来实现了。就以这个例子,咱们来做一个持续燃烧效果的 AE。首先为此 ae 命名aeset_greek_fire(之后这个名字就是要加到弹药文件里对应弹药上的那个)然后设置类型为area_effect_set后面的格式是这样的:ae_greek_fireae_greek_fire_fearae_greek_fire_burnae_greek_fire_burn每一个里面都对应一个 AE 中已有的名字;前面的 delay 数值意味着这个 AE 组触发后几秒,该子 AE 触发。这一句的意思就是:0.2s 时触发希腊火落地效果(一个 Exp
16、losion 特效) 、0.2s 时触发希腊火恐惧效果(一个Nausea 特效) 、0.4 和 0.6s 分别触发燃烧效果(也是一个 Explosion 特效,模拟踩上火被烧死的人) 。瞎尼玛如此反复,连续设置了 8s 之长的连续爆破特效,使得 8s 内每一个踩上去的小人都被烧(炸)死了。是不是很好玩啊再给你们看一个:这个是被工革腰斩的眩晕魔法,由于不平衡就没加进去。第一个 haipa 是 Nausea后面的 xuanyun 是每个半秒触发一次大范围的 Explosion,但是没有伤害,只有刚好让小兵抽搐的气浪强度。Dazhen 是一个有大强度气浪的 Explosion,保证每一个中招的小兵都
17、摔倒。最后的 bomb1 是一个有伤害值的 Explosion,保证这最后一次震荡会杀死一部分敌人小兵。有个这个神奇的 AE 组思想做基础,大家便可以尽管开放脑洞去创造了。比如制作一个涌泉(多次触发的朝天子母弹) ;比如制造一个老鼠洞(多次触发的子母弹,子弹设置低伤害、弹跳弹和穿体效果) ;亦或是简单的叠加士气打击不过,想要自己的特效足够震撼,不斟酌一下视觉特效是不行的,而视觉特效就需要用到AE 以外的文件了,我们下次再说。Part5. 七窍生烟视觉效果修改尼玛回来了,好就忘了更新这个教程,主要是遇到了些好事一时忘了这茬那么这章大致说一下中 2 武器类视觉特效这一部分的设置。最重要的几个文档:
18、descr_artillery_effects.txt 炮口效果descr_effect_impacts.txt 炮击效果descr_arrow_trail_effects.txt 弹药模型首先炮口效果文档:图中是一个名为cannon_shot_test的光影效果,下面列出了很多可以修改的选项,包瞎尼玛括特效扩散范围、特效保留时间、模型缩放大小、光染色、漂浮方向等等,这块我就不依次介绍了,东西太多;而且讲实话这玩意有心的都能看懂,看不懂的也就别搞这个麻烦的东西了其中,models_effects/cannon_muzzle_flash.CAS是这个特效采用的模型。现在常见mod中除了个别比较细
19、心的mod,会在这方面引用一下诸如1648系火药硝烟的新模型之外,基本都沿用了原版光影、烟雾的模型。毕竟炮口发射位置是engine决定,而试图增加浓度或延时也只需调整一下各项数值就好了。这张工革里火枪枪口特效的截图,我们可以得知,原来炮口特效也是通过组的形式来合并各种类型的炮口特效,使得游戏中的光影更加丰富的。所以想弄一个属于自己的炮口特效该怎么办呢?是不是只需要仿照已有的flash、smoke重新设置一批,然后再自己建立一个这样的组,起个名字就好了?可惜尼玛现在还没弄清楚这里的特效是如何和游戏中对应的炮兵产生关联的。或许有另一个文档执行这个绑定功能罢,此处欢迎老司机补充指正。不过在弄清楚这个
20、机理之前,我们只能在原版特效文件基础上进行修改,而不要随便更改最后那个特效组的名字。然后至少我们的特效会根据对应engine的type(蛇炮啊蜥炮啊)自动匹配。然后是炮击效果文档:和炮口效果的格式几乎一样,只不过这里是负责设置炮弹击中目标后的效果的。调大scale来让效果更壮观,或者调长anim_time来让烟雾弥漫更久,这里可以尽情发挥脑洞了。当然炮击特效文件也可以设置特效组,方便玩家组合复杂的视觉特效。但不同于炮口特效,炮击特效和弹药的联系十分明了:这里是弹药文件中的内容,在第一章就提到的effect部分,引用的都是炮击文件对应的内容。所以一颗炮弹打到人什么样子,打到地上什么样子都可以尽情
21、修改和调配。除了弹药文件,AE文件中也可以尽情引用炮击效果文件中设置的内容。比如想设置一个可以引发爆炸的穿云箭?只需要在弹药文件中设置一个以箭矢为模型的武器,再将各种effect换成火炮之类的就好。最后简单说一下descr_arrow_trail_effects.txt文档,这里是设置弹药飞行物模型的地方。你的武器在天上的时候看起来是啥样子都是这里决定。瞎尼玛格式还是类似前两个文档,分别设置火光、烟雾尾巴、弹药模型等子特效,最后再建立一个组来完成打包。这里可以改染色、光雾持续时间等和视觉效果相关的数据。最后通过弹药文件中的effect一项完成绑定。这章属于比较偏的教程了,大家各取所需,尼玛说错
22、的地方随时指正!下一章,讲一讲英雄技能:如何让你的金将军剑指苍穹,召唤陨石无数!Part6. 大魔炮英雄战场技能这一期讲一下英雄技能和弹药文件的联系应用。英雄技能文件:descr_hero_abilities.xml 在很多 mod 中都没有被应用起来,包括工革也是。主要原因是此处的设定只能造福于特定英雄,联系上弹药类效果后又易出 bug。总的来说对于 mod 制作者是费力不讨好的事情。尼玛对此领域了解也不很深,可能老牌三国系 mod 对这些设定有一些挖掘。尼玛这里就班门弄斧一下,简单说明一些基础了。首先逐行翻译内容中的基础条目boom 技能名字(在开局或脚本中设定英雄技能时引用)30 持续时
23、间 秒5 技能可使用次数60 冷却时间EMT_HERO_SPECIAL_ABILITY_DEFAULT_NORMALEMT_HERO_SPECIAL_ABILITY_DEFAULT_SELECTEDEMT_HERO_SPECIAL_ABILITY_DEFAULT_DISABLED这三个是该技能的按钮提示文字 分别为一般时、鼠标浮上时、冷却期时。具体文字于expanded.txt 设置。SCHILTROM_BUTTON_IMAGESCHILTROM_BUTTON_IMAGE_SELECTEDSCHILTROM_BUTTON_IMAGE_DISABLED瞎尼玛这三个是该技能的按钮图标 分别为一般时
24、、鼠标浮上时、冷却期时。具体图标于对应势力 interface 文件夹内设置。DEPLOY_STAKES 技能发动时的音效lock_moraleown_armyhigh此组为触发诞生的效果,可罗列叠加但要整体复制上语句头尾。其中:lock_morale 效果类型,具体可选按类型有:lock_morale 锁定士气(所有部队锁定于正常等级以上的状态)rally_units 重整军队(瞬时将所有白旗部队变为特定士气状态)army_morale 军队士气加减(特定数值)army_fatigue 军队体力加减(特定数值)soldier_combat_effectiveness 士兵杀伤效率改变unit
25、_infighting 惊吓敌军(进入混乱状态,不听指令)projectile 弹药效果(在头顶创造一个弹药)= =然后是目标设定own_army,可选的有:enemy_armies 敌军own_army 自己的部队allied_armies 所有友军不同的效果下属还会有不同的设置选项,都不难的英语,自己看一下就懂了。教程要说的其实是这个:projectilesuper_banana 游戏默认的有一个弹药技能,叫 super_banana,我们可以看到,这个技能效果里只有一个可填项目: super_banana ,很明显,这里要填写一个弹药文件中的弹药名字。填写效果就是在英雄头顶制造一个该弹药
26、,以正常初速、迷之高度、地平线方向、英雄面向方向发射。 (以上都是目测结论)再看回弹药文件中的 super_banana ,这是一个设置了 AE 组特效的弹药,其 AE 组大体就是创造无数小型炸弹漫天爆炸。瞎尼玛那么,所谓英雄技能与弹药文件的联系大概的思路应该就是这样了,技能所有的效果都需要在 AE 中设置好,英雄技能文件只是作为一个引信存在。AE 中,利用散弹效果将一个炮弹不断分裂成自己想要的数目,以此制作出想要的“箭雨” 、“陨石雨”之类的效果。这个小众的修改看似鸡肋实则还是很有趣的,还不快去 DIY 一个属于自己专属的英雄技能Part7. 弹弹乐更多组合与创意抛砖引玉,罗列一些尼玛成功研
27、制和不成功的特效,希望能给大家一些参考。霰弹枪:0.1s 触发的子母弹信号弹:高弧度母弹,低速,方向 down 的子弹,燃烧剪模型。真实弹片:将触地 AE 设置为子母弹效果,子弹为方向 up 的 prefer_high 弹药。弹弹乐:触人效果改成子母弹,儿子弹为数量 1,且儿子弹和母弹采用同一个弹药,这样该子弹会在人群中弹射。蝙蝠:低伤害、穿体、高速的布朗运动弹药,利用 rocket 效果。看起来是在人群中穿梭。机关枪:bounce+ 穿体特效模拟扫射效果,触地烟尘调大。陨石雨&箭雨:英雄技能,子母弹效果,利用 ae 设置多层子母弹特效。兴奋剂:给我方加士气的腐牛,特效模型换成合适的烟尘。眼看尼玛的大四结束了,很快要奔赴时间不那么充裕的美帝了,以后也不知道还能不能继续做 mod 或写教程。所以希望能给吧友留下些东西,以期能有更多有才的作者制作富有创新精神的 mod从最初开始接触中 2mod 制作到现在也快 1 年了。感谢一直以来支持尼玛的群友和吧友,也感谢那些帮助过尼玛的前辈。尼玛觉得 Mod 的精神重在创意与分享,那些抄袭的mod 不懂前者,收费的 mod 不懂后者。如果有新人希望认真做一个 mod,尼玛也愿意为你提供帮助。尼玛与你们同在=最后打个广告,欢迎小伙伴体验一下尼玛的 mod:中土工业革命 II 哦下载链接:http:/