
最近在闲暇之余,想写一些有关MO地编的资料用来帮助mapper们更多的扩展任务的可玩性。这些资料是自己这么久一来的经验和教训总结,对于经验丰富的mapper们或许并没有什么帮助,不过我想对于许多新人mapper应该是一定帮助的,希望能为mapper界做一点微小的工作。不定时更新。
第一次决定详细地阐述一下MO里面的恶灵巢的地形、代码、原理以及在地编里的具体应用。

极昼里的恶灵巢
一,概述
恶灵巢或许是MO的一大特色。我们第一次见到恶灵巢并为之惊讶大概是在著名的“极昼”这一关。从南极恶灵巢里面源源不断地冒出来的EP战机始终是玩家盟军部队的梦魇,而在挑战-炼狱里面,也是给玩家带来了极大的挑战。不过我在这里所阐述的恶灵巢,不仅仅是指恶灵巢这一个建筑,更加准确的说法是,如何应用建筑发射子机这一Ares新增的逻辑。我将从地形、代码和原理几方面分别阐述。
二、地形(仅供新人Mapper参考)
这里的地形主要是针对EP的恶灵巢建筑的地形,以官方任务的恶灵巢地形为准。别的采用建筑发射子机逻辑并无特殊地形要求。
首先,得搞清楚恶灵巢建筑和地形之间的关系。恶灵巢建筑实际上只是一个占地一个的“平面建筑”,而并不是看上去的那样占地5X5,其图像只是一种假象。其实质性的建造实体只有最一格。就像你在纸上画一个正方体一样,恶灵巢看似凹下去的样子实际上就是一个图形罢了。

恶灵巢位于FO里面的“建筑-其他”里面
因此,其实放置恶灵巢只需要关注那一格的占地问题就可以了。那么为什么官方任务里的恶灵巢非要采用独特的设计呢?我先细说一下恶灵巢特殊地形的制作原理,之后大家可能就容易明白一些。
(老Mapper可忽略这部分内容)建立一个恶灵巢特殊地形,需要一下几步:
以雪地地形为例。
在无任何瑕疵的平地上先抬高升起一块7X7高度为1的正方形;

最好使用框架模式
2.在中间5X5区域建一圈内向的城市高地

这个不用多说
3.使外围一圈的地形块上升到与内部悬崖高度相差一格的高度;

4.给外围的一层地形快弄上斜坡;

到这里这种地形就完成了,至于周围的空白拉伸成高地即可,因为这种特殊地形必须被包含于一块高地之中。以上步骤供新人参考,可随意发挥,无必要限制。
恶灵巢建筑一般安防于这个位置。

凹下去的四格最下面那格
大致原因有以下几点:1.为了使恶灵巢看上去真的就像是一个凹向地下的建筑,在恶灵巢被摧毁后带给玩家恶灵巢是凹下去的错觉;2.掩盖恶灵巢的子机冒出,造成让玩家真的以为子机是从地下冒出的一样(实际有时确实是);3.掩盖恶灵巢只有一格的建筑血条,然而似乎并没有起到作用。
总而言之,这样的设计极大地优化了视觉体验,并且利于创造更多的机制。
但是,恶灵巢建筑并不是一定必须采用这种地形设计。我在制作任务时,有时为了偷懒,直接在平地上摆放恶灵巢,并且似乎并没有有什么问题...

幻夜里的恶灵巢就是在一块平地上
再在恶灵巢的图像区域上(5X5)放上阻挡覆盖物,就可以避免单位跑到恶灵巢上。唯一的缺点便是被摧毁后就暴露了。。。不过我在下面放置的是水域,也许还合理。。。当然仅供参考。总而言之,恶灵巢建筑的占地只需要一格,至于玩家如何使用,则需要根据任务的具体需要而设计相应的地形。个人依然推荐按照官方设计。
三、代码及其原理
这里实际上就是讲的建筑发射子机的代码和在任务里的灵活运用。最典型的例子莫过于焚风的伯劳防空鸟巢,恶灵巢不过是翻版的鸟巢罢了,因此完全可以参考伯劳鸟巢。
我将在下面列出完整的相关代码,你可以照搬进地图里,也可以作为参考然后自我修改。
对于“恶灵巢”,我们可以将其划分为对空型和对地型,二者差别仅在于武器和子机。
恶灵巢建筑的代码在rulesmo里面尽管有一套代码,不过并不能完全应用,需要修改。
对空的恶灵巢以审判日里的对空恶灵巢为例:即天网要塞里发射对空子机的那数个恶灵巢
[YAHIVE]
Spawns=子机代码
UIName=名称
Primary=GehennaLauncher(这个子机发射武器是对空的,对地的可以参考航空母舰武器)
GuardRange=64
Selectable=no
ImmuneToEMP=yes
SpawnsNumber=6
WorkingSound=PowerOn
AirRangeBonus=64
IsBaseDefense=yes
RadarInvisible=yes
SpawnRegenRate=50
SpawnReloadRate=24
以上代码需要地图内置,具体代码我想我不用解释都应该明白。另外是关于子机的设置,其实你也可以直接照搬伯劳子机的代码,不过主要是对空型子机:
[SHRIKEX]
ROT=32
Ammo=5
Cost=200
Name=Shrike Nest Drone
Armor=f_shrike
Image=HKFLY
Owner=Guild1,Guild2,Guild3
Sight=0
Speed=38
Bounty=yes
Crewed=no
Points=5
UIName=NAME:29
Fighter=yes
Primary=FlyingDroneRocket
Soylent=0
Spawned=yes
Category=AirPower
DieSound=
Landable=yes
Strength=200
Crashable=no
DontScore=yes
Explosion=TWLT070,S_BANG48,S_BRNL58,S_CLSN58,S_TUMU60
Locomotor={4A582746-9839-11d1-B709-00A024DDAFD1}
MaxDebris=2
MoveSound=QuetzalDroneMoveLoop
TechLevel=11
Trainable=yes
VoiceMove=
GuardRange=30
PitchAngle=0
PitchSpeed=.9
Smoke.Anim=DUMMY
FlightLevel=800
ThreatPosed=10
VoiceAttack=
VoiceSelect=
Bounty.Value=0
MoveToShroud=yes
MovementZone=Fly
CanBeReversed=no
CrashingSound=HornetDie
LandTargeting=1
VoiceFeedback=
Bounty.Display=yes
EliteAbilities=SELF_HEAL,FIREPOWER,FASTER
NavalTargeting=6
RadarInvisible=no
ImpactLandSound=GenAircraftCrash
ProtectedDriver=yes
VeteranAbilities=STRONGER
子机的武器参考炼狱平台子机和伯劳子机的即可,不过有时可能会抽风,需要多调试一下。
对地型子机:
[DBATX]
ROT=8
Ammo=5
Cost=1200
Name=Dybbuk-Striker
Armor=f_spawn
Image=DBAT
Owner=PsiCorps,Headquaters,ScorpionCell
Sight=6
Speed=25
Bounty=yes
Crewed=no
Points=50
UIName=Name:DBAT
Fighter=yes
Primary=StrikerGunRun
Soylent=600
Category=AirPower
Explodes=no
Landable=yes
OmniFire=yes
Strength=440
AuxSound1=IntruderTakeOff
AuxSound2=IntruderLanding
Explosion=TWLT070,S_BANG48,S_BRNL58,S_CLSN58,S_TUMU60
Locomotor={4A582746-9839-11d1-B709-00A024DDAFD1}
MaxDebris=3
MoveSound=StormchildMoveLoop
TechLevel=12
Trainable=no
GuardRange=30
PitchAngle=.1
PitchSpeed=.9
DeathWeapon=AircraftDeathWeapon
ThreatPosed=20
Bounty.Value=300
CanRetaliate=no
ElitePrimary=StrikerGunRun
MoveToShroud=yes
MovementZone=Fly
CanBeReversed=no
CrashingSound=IntruderDie
EMP.Threshold=no
Bounty.Display=yes
ImpactLandSound=GenAircraftCrash
ProtectedDriver=yes
CanPassiveAquire=no
SlowdownDistance=1500
PreventAttackMove=no
ConsideredAircraft=yes
DamageParticleSystems=SparkSys,GreenSmokeSys
IsSelectableCombatant=no
AllowedToStartInMultiplayer=no
对地型子机的武器没有过多的要求,不过你得考虑其发射武器时的各种状态,否则可能很鬼畜。
当然这里为了某些时候需要建立不同的多个恶灵巢时,你可以新建一个建筑或者选择一个已有的单格建筑进行修改,比如以下的就是我在机枪碉堡上的修改,把其变成一个恶灵巢:
[GAPILL]
Armor=special
Image=YAHIVE
Power=-1
Spawns=DBATX
Primary=BlightLaunch
TurretAnim=DUMMY
ElitePrimary=BlightLaunch
SpawnsNumber=1
LandTargeting=0
SpawnRegenRate=120
SpawnReloadRate=30
把已有建筑改成恶灵巢时最好该建筑在任务里不能被玩家建筑以及考虑其他因素。比如在幻夜里许多恶灵巢就是在机枪碉堡和哨戒炮等防御建筑之类的上面修改而成,因为它们根本不用**务里出现。
由上可知,“恶灵巢”完全可以自由设计,你可以自定义建筑模型,子机的定位和武器,这方面我相信大多数mapper都是比较了解的,不明白的去翻代码词典即可。所有代码仅供参考。
四、恶灵巢相关的应用
一旦灵活掌握恶灵巢这种原理,对于制造任务是十分方便的。
首先,恶灵巢最主要的应用是配合触发在任务里制造“麻烦”。例如极昼里的恶灵巢机制与其他触发机制一起构成了一套完美的触发,带来的难度和可玩性也是极高的。大洋彼岸和炼狱挑战里的恶灵巢更不用多说。
其次,恶灵巢还有一大功能就是添加辅助,减少刷兵。如果你仔细观察过极昼,会发现地图上方会不断冒出航母子机来发起进攻;幻夜里地图下方也会源源不断地刷出EP的战机对战场进行支援;劫后余生偶尔有盟军战机飞进来攻击不特定的目标;在神谕里面你也可以看见敌军源源不断地冒出狐步战机;还有欧若拉里面的敌军飞机。这些其实都是地图外采用建筑发射子机逻辑的建筑发出来的。这种优点在于:1.可以极大地减少刷战机触发,通过一次性启动一个恶灵巢便可以源源不断地刷出战机进入地图内进行支援;2.战机的目标一般是随机的、不确定的,带来挑战性。不过缺点在于,这样很难专门为其设定一个专门的目标,除非像极昼里面利用威胁值专门针对悖论引擎这样设置。
另外如果想要使一个恶灵巢同时发射多种子机怎么办?很简单,你肯定知道恶灵巢凹下面的有四个格子,恶灵巢只占用了其中一格,另外三格你可以放置几个没有模型的不同的恶灵巢即可。
总而言之,巧妙利用这一机制,能够极大的方便和丰富任务制作,提高任务的可玩性和挑战性。不过,我不希望看到以后任何关于EP的任务里都出现恶灵巢这种玩意儿,毕竟灵活并适度运用才是我们需要做到的,拒绝千篇一律和盲目模仿。
最后致敬想出恶灵巢这一秒点子的人才。
参考资料:
1、参考地图:极昼、幻夜、审判日、劫后余生、大洋彼岸、炼狱挑战、欧若拉、神谕;
2.Ares2.0说明书
3.《大头语录》
4.心灵终结维基百科-恶灵巢https://moapyr.fandom.com/zh/wiki/%E6%81%B6%E7%81%B5%E5%B7%A2