<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://wiki.ra2diy.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kenosis</id>
	<title>RA2DIY - 用户贡献 [zh]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ra2diy.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kenosis"/>
	<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/w/Special:Contributions/Kenosis"/>
	<updated>2026-08-30T01:57:02Z</updated>
	<subtitle>用户贡献</subtitle>
	<generator>MediaWiki 1.46.0</generator>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%8F%A0%E5%B1%82%E6%A3%80%E6%B5%8B&amp;diff=1470</id>
		<title>Kratos:说明书/叠层检测</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%8F%A0%E5%B1%82%E6%A3%80%E6%B5%8B&amp;diff=1470"/>
		<updated>2026-08-29T11:11:20Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* [AttachEffectTypes] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== &#039;&#039;&#039;基础特性&#039;&#039;&#039; ==&lt;br /&gt;
此AE附着在物体上后，每帧判定本AE附着的物体身上指定名称AE（可以是几个判定对象）的层数。&lt;br /&gt;
&lt;br /&gt;
层数达成要求时，添加或删除指定的AE。可以指定增删发生在检测器的附着对象上，或检测器的来源上。这样添加的AE默认其来源为检测器的附着对象。&lt;br /&gt;
&lt;br /&gt;
如果检测的ae没有任何实际效果，一般称为信号。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
这个机制存在联机方面的重大缺陷，极其容易导致断连!!!&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;但是你不要以为这东西只能做条件判定用&#039;&#039;&#039; ==&lt;br /&gt;
众所周知，AE的Next语句只能填写1个对象。当你需要在一个AE结束，目标获得一串AE时，应当Next为一个检测自己存在1层的检测器，于是就可以增加一串AE了。&lt;br /&gt;
&lt;br /&gt;
如果假设A单位和B单位之间需要互相产生来自对方的AE建立绑定关系，A可以用弹头、礼物盒、广播等手段给B贴AE，那么费劲的做法是A同时给B贴个自动武器标记，让B发射个武器打A，给A贴AE。需要做一套武器还得注册，实在是烦死了。简单的做法是A同时给B贴个叠层检测，检测器检测自己，给检测器来源贴AE。&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;已知bug&#039;&#039;&#039; ==&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsSkipNext&#039;&#039;&#039;和&#039;&#039;&#039;Stack.RemoveSkipNext&#039;&#039;&#039;在某些情况下会把Next整个语句都干爆掉。谨慎使用这一机制，如无必要，不要使用。&amp;lt;br&amp;gt;如确实有此功能需求，可参考[[Kratos:说明书/运用范例和模板|&#039;&#039;&#039;运用范例和模板&#039;&#039;&#039;]]中给出的实例&amp;lt;br&amp;gt;检测任何信号，信号AE必须不得为&#039;&#039;&#039;仅 1 帧&#039;&#039;&#039;的，否则有概率爆炸，无法触发。同时，检测器自己也不要少于2帧，否则有概率触发不了。&lt;br /&gt;
&lt;br /&gt;
== [AttachEffectTypes] ==&lt;br /&gt;
&#039;&#039;&#039;Stack.Watch=(AttachEffectType),(AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
待监视的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.WatchMission=(MissionType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
监视[[Kratos:说明书/Mission选项表|任务类型]]。附着对象处于此任务时触发。&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.Level=(Ingeter),(Ingeter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
监视的AE叠加到多少层时触发，-1等于无条件触发，&#039;&#039;&#039;默认0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.Condition= (two comma-separated strings - Enumeration &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[EQ|NE|GT|LT|GE|LE]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
条件，&#039;&#039;&#039;默认 EQ,EQ&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! 值 !! 含义&lt;br /&gt;
|-&lt;br /&gt;
| EQ || 等于&lt;br /&gt;
|-&lt;br /&gt;
| NE || 不等于&lt;br /&gt;
|-&lt;br /&gt;
| GT || 大于&lt;br /&gt;
|-&lt;br /&gt;
| LT || 小于&lt;br /&gt;
|-&lt;br /&gt;
| GE || 大于等于&lt;br /&gt;
|-&lt;br /&gt;
| LE || 小于等于&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.ActionMode=(Special)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
监视多条AE时触发条件，AND时AE1和AE2必须同时满足，才会触发，&#039;&#039;&#039;默认OR&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AND&#039;&#039;&#039;：与&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;OR&#039;&#039;&#039;：或&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.AttachEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后赋予的新AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.SourceGetEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stack的来源直接获得来自Stack对象的AE&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.AttachChances=(List of Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.AttachToSource=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后向Stack的来源附加AE，而不是附着对象，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.SourceRemoveEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stack的来源直接移除自己身上的AE&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsLevel=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除的AE对应的层数，&#039;&#039;&#039;默认0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsWithMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除带这些标记的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsSkipNext=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除的AE将跳过Next，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveToSource=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后向Stack的来源移除AE，而不是附着对象，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.TriggeredTimes=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发多少次后移除自身，&#039;&#039;&#039;默认-1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveLevel=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除指定层数监视的AE，从先赋予的开始按赋予顺序关闭，设置&amp;gt;0时优先级高于&#039;&#039;&#039;RemoveAll&#039;&#039;&#039;，&#039;&#039;&#039;默认0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveAll=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除监视的所有监视的AE，&#039;&#039;&#039;默认yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
这句在启用时，如果多个Stack侦测同一个信号，会在触发任意一个后直接移除信号，使得其他Stack无法触发。非必要不要写yes。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveSkipNext=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除监视的AE，并且跳过Next，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
== 简单样例 ==&lt;br /&gt;
[[File:Stack作为触发器.gif|效果如上|thumb]]&lt;br /&gt;
 [120mm]&lt;br /&gt;
 Feedback.AttachEffects=Firesig&lt;br /&gt;
 &lt;br /&gt;
 [Firesig]&lt;br /&gt;
 Animation=INVISO&lt;br /&gt;
 Duration=2&lt;br /&gt;
 &lt;br /&gt;
 [AP]&lt;br /&gt;
 AttachEffectTypes=Trigger&lt;br /&gt;
 AttachToSource=yes&lt;br /&gt;
 CellSpread=2&lt;br /&gt;
 &lt;br /&gt;
 [Trigger]&lt;br /&gt;
 Stack.Watch=Firesig&lt;br /&gt;
 Stack.Level=1&lt;br /&gt;
 Stack.Condition=GE&lt;br /&gt;
 Stack.AttachEffects=WEAPON&lt;br /&gt;
 Stack.AttachToSource=yes&lt;br /&gt;
 Duration=400&lt;br /&gt;
 Cumulative=attacker&lt;br /&gt;
 Stack.TriggeredTimes=3&lt;br /&gt;
 MaxStack=3&lt;br /&gt;
 &lt;br /&gt;
 [WEAPON]&lt;br /&gt;
 AutoWeapon.Types=MissileLauncher&lt;br /&gt;
 AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
 AutoWeapon.ReceiverAttack=no&lt;br /&gt;
 AutoWeapon.FireOnce=yes&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E8%87%AA%E5%8A%A8%E6%AD%A6%E5%99%A8&amp;diff=1469</id>
		<title>Kratos:说明书/自动武器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E8%87%AA%E5%8A%A8%E6%AD%A6%E5%99%A8&amp;diff=1469"/>
		<updated>2026-08-29T11:06:47Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* [AttachEffectType] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Kratos说明书]]&lt;br /&gt;
== 特性&amp;amp;注意项 ==&lt;br /&gt;
&lt;br /&gt;
* 有三种类别的自动武器：&lt;br /&gt;
&lt;br /&gt;
# 攻击预设好的坐标 &lt;br /&gt;
# 平时无法开火，本AE附着对象锁定目标后对目标发射（但是不以抛射体的实际发射进行计数，假设设定了射程限制或者其他条件，在条件不满足时只是不会真的创建抛射体，但是仍然会进行发射动作，也包括了没有目标的情况。如有AutoWeapon.FireOnce则效果会直接结束。如果想要真开火一次后删除本效果，需要在发射的武器上[[Kratos:说明书/武器反馈|反馈]]一个[[叠层检测]]）&lt;br /&gt;
# 本AE的来源和附着对象之一朝对方发射武器。&lt;br /&gt;
&lt;br /&gt;
== [AttachEffectType] ==&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.WeaponIndex=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
自动发射单位自身的武器序号，如果赋予抛射体，此条无效，&#039;&#039;&#039;默认-1（不启用）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;0=Primary/Weapon1&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1=Secondary/Weapon2&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2=Weapon3&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;……&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
以此类推&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
优先级高于下一条&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.Types=(List of Weapon)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
自动发射的武器，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.RandomTypesNum=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机使用几个武器，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.FireFLH=(Integer),(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
发射的FLH，&#039;&#039;&#039;默认0,0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.TargetFLH=(Integer),(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
目标的FLH，&#039;&#039;&#039;默认0,0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.MoveTo=(Integer),(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果设定，覆盖&#039;&#039;&#039;TargetFLH&#039;&#039;&#039;且&#039;&#039;&#039;等效TargetFLH = FireFLH + MoveTo&#039;&#039;&#039;，&#039;&#039;&#039;默认0,0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.EliteWeaponIndex=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.EliteTypes=(List of Weapon)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.EliteRandomTypesNum=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.EliteFireFLH=(Integer),(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.EliteTargetFLH=(Integer),(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.EliteMoveTo=(Integer),(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
上述标签的Elite版本，在被附加单位精英等级时调用&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.FireOnce=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
武器在发射一次之后强制结束AE，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.FireToTarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果设定，朝向附属对象的目标开火，当附属对象没有目标时不开火，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.IsOnTarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果附属对象有目标，发射位置参考目标位置，方向是附属对象面对目标的方向，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.IsOnTurret=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
发射位置和目标位置参考炮塔方向，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.IsOnWorld=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
发射位置和目标位置以世界坐标做参考，固定朝向北方，不跟随转动，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.Powered=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
建筑需要电力才可以使用，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.AttackFromSpawnOwner=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
启用时，如果是由子机发射的武器，抛射体所属变更为母鸡，武器仍会从子机位置射出，子机为导弹类型时，建议设置为yes，否则得不到经验，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.ReceiverOwnBullet=(Boolean)&#039;&#039;&#039;不写此标签时，武器来源默认跟随武器发射者&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.DeactiveWhenCivilian=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
启用时，当所属是平民时，或者被狙掉了驾驶员，不会激活效果，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.LaunchFromProjectile=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
专门用于抛射体携带广播，然后广播AutoWeapon.IsAttackerMark的情况，新武器会从抛射体坐标射出而非抛射体发射者&lt;br /&gt;
&lt;br /&gt;
=== 攻击者标记专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.IsAttackerMark=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A&#039;&#039;&#039;给&#039;&#039;&#039;B&#039;&#039;&#039;挂上此模块后，是否自动从&#039;&#039;&#039;B&#039;&#039;&#039;身上向&#039;&#039;&#039;A&#039;&#039;&#039;不断发射指定武器，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
为yes时，&#039;&#039;&#039;AutoWeapon.TargetFLH&#039;&#039;&#039;设置无效，且下一条有效&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.ReceiverAttack=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否&#039;&#039;&#039;反转&#039;&#039;&#039;上一条，即A给B挂上此效果后，是否自动从&#039;&#039;&#039;A&#039;&#039;&#039;身上向&#039;&#039;&#039;B&#039;&#039;&#039;不断发射指定武器，&#039;&#039;&#039;默认yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
可以用&#039;&#039;&#039;AutoWeapon.ReceiverOwnBullet控制抛射体的来源单位。&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
写此标签时，有以下情况：&lt;br /&gt;
&lt;br /&gt;
默认情况（即&#039;&#039;&#039;不使用武器标记相关标签&#039;&#039;&#039;）和&#039;&#039;&#039;AutoWeapon.ReceiverAttack=yes&#039;&#039;&#039;时:&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;yes&#039;&#039;&#039;，武器&#039;&#039;&#039;来源&#039;&#039;&#039;跟随&#039;&#039;&#039;武器发射者&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;no&#039;&#039;&#039;，武器&#039;&#039;&#039;来源&#039;&#039;&#039;跟随&#039;&#039;&#039;AttachEffectType来源&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AutoWeapon.ReceiverAttack=no&#039;&#039;&#039;时：&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;yes&#039;&#039;&#039;，武器&#039;&#039;&#039;来源&#039;&#039;&#039;跟随&#039;&#039;&#039;AttachEffectType来源&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;no&#039;&#039;&#039;，武器&#039;&#039;&#039;来源&#039;&#039;&#039;跟随&#039;&#039;&#039;武器发射者&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
具体用法参考&#039;&#039;&#039;用法举例&#039;&#039;&#039;的&#039;&#039;&#039;武器标记部分&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 用法举例 ==&lt;br /&gt;
&lt;br /&gt;
=== FireToTarget相关 ===&lt;br /&gt;
假设&#039;&#039;&#039;A&#039;&#039;&#039;给&#039;&#039;&#039;B&#039;&#039;&#039;挂上自动武器AE，&#039;&#039;&#039;B&#039;&#039;&#039;向&#039;&#039;&#039;C&#039;&#039;&#039;发射自动武器&#039;&#039;&#039;W，W&#039;&#039;&#039;来源默认是&#039;&#039;&#039;B&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果额外标注AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;no&#039;&#039;&#039;时，&#039;&#039;&#039;W&#039;&#039;&#039;来源是&#039;&#039;&#039;A&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 也就是说，此时的表现路径实质为：&#039;&#039;&#039;A&#039;&#039;&#039;给&#039;&#039;&#039;B&#039;&#039;&#039;挂上自动武器AE，&#039;&#039;&#039;B&#039;&#039;&#039;向&#039;&#039;&#039;C&#039;&#039;&#039;打来源为&#039;&#039;&#039;A&#039;&#039;&#039;的&#039;&#039;&#039;W&#039;&#039;&#039;&lt;br /&gt;
* 此时如果&#039;&#039;&#039;C&#039;&#039;&#039;因为嘲讽弹头或AI自身判定，想去打揍他的人，那么他就会去揍&#039;&#039;&#039;A&#039;&#039;&#039;&lt;br /&gt;
* 如果&#039;&#039;&#039;C&#039;&#039;&#039;被这个自动武器打死了，那么获得经验和升星的是&#039;&#039;&#039;A&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 武器标记相关 ===&lt;br /&gt;
假设&#039;&#039;&#039;A&#039;&#039;&#039;给&#039;&#039;&#039;B&#039;&#039;&#039;挂上自动武器标记，且自动发射的武器为&#039;&#039;&#039;W：&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
* AutoWeapon.ReceiverAttack=yes&lt;br /&gt;
* AutoWeapon.ReceiverOwnBullet=yes&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;B&#039;&#039;&#039;向&#039;&#039;&#039;A&#039;&#039;&#039;射&#039;&#039;&#039;W&#039;&#039;&#039;，且 &#039;&#039;&#039;W&#039;&#039;&#039;来源为&#039;&#039;&#039;B&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
* AutoWeapon.ReceiverAttack=yes&lt;br /&gt;
* AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;B&#039;&#039;&#039;向&#039;&#039;&#039;A&#039;&#039;&#039;射&#039;&#039;&#039;W&#039;&#039;&#039;，且 &#039;&#039;&#039;W&#039;&#039;&#039;来源为&#039;&#039;&#039;A&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
* AutoWeapon.ReceiverAttack=&#039;&#039;&#039;no&#039;&#039;&#039;&lt;br /&gt;
* AutoWeapon.ReceiverOwnBullet=yes&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A&#039;&#039;&#039;向&#039;&#039;&#039;B&#039;&#039;&#039;射&#039;&#039;&#039;W&#039;&#039;&#039;，且 &#039;&#039;&#039;W&#039;&#039;&#039;来源为&#039;&#039;&#039;B&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
* AutoWeapon.ReceiverAttack=&#039;&#039;&#039;no&#039;&#039;&#039;&lt;br /&gt;
* AutoWeapon.ReceiverOwnBullet=&#039;&#039;&#039;no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A&#039;&#039;&#039;向&#039;&#039;&#039;B&#039;&#039;&#039;射&#039;&#039;&#039;W&#039;&#039;&#039;，且 &#039;&#039;&#039;W&#039;&#039;&#039;来源为&#039;&#039;&#039;A&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果你使用了&#039;&#039;&#039;AttachToSource&#039;&#039;&#039;相关的逻辑，你需要明确“&#039;&#039;&#039;A&#039;&#039;&#039;给&#039;&#039;&#039;B&#039;&#039;&#039;挂”的步骤，即谁给谁挂&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
如果你搞懂了，可以来做个题练练手(省略全部.&amp;quot;AutoWeapon&amp;quot;)：&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;A&#039;&#039;&#039;对&#039;&#039;&#039;B&#039;&#039;&#039;发射弹头，弹头上有&#039;&#039;&#039;AttachToSource&#039;&#039;&#039;，贴&#039;&#039;&#039;自动武器1&#039;&#039;&#039;，&#039;&#039;&#039;ReceiverAttack&#039;&#039;&#039;为&#039;&#039;&#039;yes&#039;&#039;&#039;，&#039;&#039;&#039;ReceiverOwnBullet&#039;&#039;&#039;为&#039;&#039;&#039;no，自动武器1&#039;&#039;&#039;贴&#039;&#039;&#039;自动武器2&#039;&#039;&#039;，&#039;&#039;&#039;ReceiverAttack&#039;&#039;&#039;为&#039;&#039;&#039;yes&#039;&#039;&#039;，&#039;&#039;&#039;ReceiverOwnBullet&#039;&#039;&#039;为&#039;&#039;&#039;no&#039;&#039;&#039;，那&#039;&#039;&#039;自动武器2&#039;&#039;&#039;是&#039;&#039;&#039;谁打谁&#039;&#039;&#039;？&lt;br /&gt;
&lt;br /&gt;
[https://bbs.ra2diy.com/forum.php?mod=viewthread&amp;amp;tid=25517 答案参考]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A4%BC%E7%9B%92&amp;diff=1468</id>
		<title>Kratos:说明书/礼盒</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A4%BC%E7%9B%92&amp;diff=1468"/>
		<updated>2026-08-29T11:02:37Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* [TechnoType]&amp;amp;[AttachEffectType] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== 这是个什么东西 ==&lt;br /&gt;
默认效果：一个对象获得这个效果器后，立刻移除单位，并生成新的单位。旧的单位逻辑上等效于死亡。原单位称为“礼物盒”，新单位称为“礼物”。&lt;br /&gt;
&lt;br /&gt;
可以配置继承血量或血量数值、继承或指派新任务、不移除旧单位、继承原有AE（只能继承附着在礼物盒上的AE。如果礼物盒曾经给其他单位添加过AE，那么在礼物盒AE运行时，礼物盒单位会被移除，礼物单位无法成为其他单位身上已有AE的来源），获得新AE等效果。&lt;br /&gt;
&lt;br /&gt;
== 特性&amp;amp;注意项 ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;状态类效果，仅最后附上的生效&#039;&#039;&#039;&lt;br /&gt;
* 默认生成的礼物所属跟随礼物盒AE的来源。如需要打中敌人把敌人变形，但是不改变所属，则礼物盒应有ReceiverOwn&lt;br /&gt;
* &#039;&#039;&#039;KratosPP&#039;&#039;&#039;下，当&#039;&#039;&#039;GiftBox.Remove=no&#039;&#039;&#039;时，&#039;&#039;&#039;GiftBox.AttachEffects&#039;&#039;&#039;赋予给礼物的AE默认来源是礼物盒。如果你不想在礼盒和礼物盒之间建立绑定，让礼物刷出来时持有的AE来源是自己，则用礼物盒添加的AE应有&#039;&#039;&#039;ReceiverOwn=yes&#039;&#039;&#039;&lt;br /&gt;
* 如果&#039;&#039;&#039;GiftBox.Remove=no&#039;&#039;&#039;，且GiftBox有Duration，则Duration中每一帧都会生成一次。如果不写Duration，则会一直生成（AttachOnceInTechnoType=yes也会一直生成）。如果Duration=1，则无法生成。解法是Duration=1，InitialDelay=1。但是如果多个单位同时给自己反馈Duration=1的礼盒，就会因为时序出错导致部分单位贴不上。只是变身的话就别在礼盒上写持续时间了。如果你都用Remove=no了，说明你要普通地刷兵，那就用[[Kratos:说明书/刷怪笼|Host系列效果器]]。另外，如果给礼盒写了Duration=1，同时又Remove=yes，生成的单位有一定概率丢失原来的目标。&lt;br /&gt;
* 抛射体也可以贴礼物盒。如果加入&#039;&#039;&#039;GiftBox.OpenWhenDestroyed=yes&#039;&#039;&#039;，则会产生常规意义的刷兵效果。如果不加，则是攻击后立刻从炮口生成，这样生成的礼物单位会继承原单位的攻击目标，且刷出来时如果发射武器的单位被选中，则礼物也被玩家选中。刷出来的单位持有Guard任务，有目标但不会走近攻击，只有射程内的会攻击。如果需要让单位走过去，需要另外写&#039;&#039;&#039;AE让开出来的礼盒单位Mission改为Attack或Move，不能使用GiftBox.ForceMission，会掐断GiftBox.InheritTarget的效果&#039;&#039;&#039;&lt;br /&gt;
* 不要用在建筑上。将一个建筑礼盒变成另一个建筑时，会将建筑的实际foundation变成1x1。&lt;br /&gt;
* GiftBox.InheritAE=yes时，相应的AE上必须有Inheritable=yes 以及DiscardOnTransform=no，否则相关AE会在效果器执行后被删除。如果一个单位礼盒变成另一个单位&lt;br /&gt;
&lt;br /&gt;
== [TechnoType]&amp;amp;[AttachEffectType] ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Types=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Dynamic=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;动态类型，贴什么单位身上就刷什么单位&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.DynamicFromSource=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;动态类型，被什么单位赋予就刷什么单位&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Nums=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
数量，&#039;&#039;&#039;默认1,1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Chances=(List of Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抽中的概率，当决定要刷出这个类型时，可以刷出来的概率，每个类型单独计算概率，不写为100%，&#039;&#039;&#039;默认1.0,1.0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Delay=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
多久后开盒，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomDelay=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机延迟，&#039;&#039;&#039;默认0,300&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomType=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机从列表中选取类型，并释放等于Nums列表中数值总和的礼物数量，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomWeights=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机从列表中选区类型，对应列表中每个类型的权重值，数字越大概率越高，&#039;&#039;&#039;默认1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteTypes=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteNums=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteChances=(List of Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteDelay=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteRandomDelay=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteRandomType=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteRandomWeights=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
上列标签的&#039;&#039;&#039;Elite&#039;&#039;&#039;版本&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Remove=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
开盒后删除盒子，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Explodes=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
删除盒子后会不会引起爆炸，触发死亡武器，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RealCoords=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物释放在单位的实际位置，否则为逻辑中心，影响建筑，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果试图用GiftBox变建筑，必须为yes。并且为了避免诡异的抽风，需要多走一步1x1建筑跳转。如NAWEAP-&amp;gt;YAWEAP, 需要写NAWEAP-&amp;gt;GAPILL-&amp;gt;YAWEAP才能正常。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomRange=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物刷在附近随机范围内，单位格，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomToEmptyCell=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物只在空地上刷，没有空地就刷在原地，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.OpenWhenDestroyed=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼盒单位被摧毁时释放礼物，yes时仅在被摧毁时释放，延迟等设置无效，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.OpenWhenHealthPercent=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定收到伤害后，剩余血量低于这个值时释放，0-1，0%和100%都不会启用这个设置，如果伤害很大直接击杀不会释放，&#039;&#039;&#039;默认100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.OnlyOpenWhenMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
带有这些标记的时候才可以开盒，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 特殊设定-单位转换 ===&lt;br /&gt;
&#039;&#039;&#039;GiftBox.IsTransform=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否使用单位转换机制，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
启用后，礼盒将会强制删除，并不会发生爆炸，调整继承选项的默认值&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.HealthPercent=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物的血量百分比，0-1，0或者0%，按照原单位血量百分比进行转换，&#039;&#039;&#039;默认100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.HealthNumber=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
直接指定礼物的血量数字，低于1，不使用，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritHealthNumber=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物是否继承原单位的血量数字，非按比例转换，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritTarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物是否继承原单位的目标，变身时默认yes，&#039;&#039;&#039;默认no。&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果&#039;&#039;&#039;GiftBox.Remove&#039;&#039;&#039;写了yes，则有一定概率丢失目标！&lt;br /&gt;
&lt;br /&gt;
所以得写Remove为no，Next出一个DestroySelf来实现这一套。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritExp=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果可以升级则继承等级，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;; GiftBox.InheritPassenger=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果有乘客舱位则转移乘客，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritROF=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
继承ROF计时器，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritAmmo=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果有弹药则继承弹药，没有弹药生成有弹药，弹药箱清空，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritAE=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
当礼盒被摧毁，第一个礼物继承礼盒的AE，礼盒自身不会继承，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== AE挂载相关 ===&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RemoveEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
移除礼物继承的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.AttachEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
给礼物附加AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.AttachChances=(List of Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，每个礼物单独计算，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.ForceMission=(MissionType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
强制设置礼物的任务，&#039;&#039;&#039;默认None&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Kratos:说明书/Mission选项表|点击查看Mission选项表]] &lt;br /&gt;
&lt;br /&gt;
== [AttachEffectType] ==&lt;br /&gt;
&#039;&#039;&#039;GiftBox.AffectWho=(Speical)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
作用于谁，ALL\MASTER\STAND，&#039;&#039;&#039;默认MASTER&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%8F%A0%E5%B1%82%E6%A3%80%E6%B5%8B&amp;diff=1467</id>
		<title>Kratos:说明书/叠层检测</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%8F%A0%E5%B1%82%E6%A3%80%E6%B5%8B&amp;diff=1467"/>
		<updated>2026-08-29T10:58:59Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== &#039;&#039;&#039;基础特性&#039;&#039;&#039; ==&lt;br /&gt;
此AE附着在物体上后，每帧判定本AE附着的物体身上指定名称AE（可以是几个判定对象）的层数。&lt;br /&gt;
&lt;br /&gt;
层数达成要求时，添加或删除指定的AE。可以指定增删发生在检测器的附着对象上，或检测器的来源上。这样添加的AE默认其来源为检测器的附着对象。&lt;br /&gt;
&lt;br /&gt;
如果检测的ae没有任何实际效果，一般称为信号。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
这个机制存在联机方面的重大缺陷，极其容易导致断连!!!&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;但是你不要以为这东西只能做条件判定用&#039;&#039;&#039; ==&lt;br /&gt;
众所周知，AE的Next语句只能填写1个对象。当你需要在一个AE结束，目标获得一串AE时，应当Next为一个检测自己存在1层的检测器，于是就可以增加一串AE了。&lt;br /&gt;
&lt;br /&gt;
如果假设A单位和B单位之间需要互相产生来自对方的AE建立绑定关系，A可以用弹头、礼物盒、广播等手段给B贴AE，那么费劲的做法是A同时给B贴个自动武器标记，让B发射个武器打A，给A贴AE。需要做一套武器还得注册，实在是烦死了。简单的做法是A同时给B贴个叠层检测，检测器检测自己，给检测器来源贴AE。&lt;br /&gt;
&lt;br /&gt;
== &#039;&#039;&#039;已知bug&#039;&#039;&#039; ==&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsSkipNext&#039;&#039;&#039;和&#039;&#039;&#039;Stack.RemoveSkipNext&#039;&#039;&#039;在某些情况下会把Next整个语句都干爆掉。谨慎使用这一机制，如无必要，不要使用。&amp;lt;br&amp;gt;如确实有此功能需求，可参考[[Kratos:说明书/运用范例和模板|&#039;&#039;&#039;运用范例和模板&#039;&#039;&#039;]]中给出的实例&amp;lt;br&amp;gt;检测任何信号，信号AE必须不得为&#039;&#039;&#039;仅 1 帧&#039;&#039;&#039;的，否则有概率爆炸，无法触发。同时，检测器自己也不要少于2帧，否则有概率触发不了。&lt;br /&gt;
&lt;br /&gt;
== [AttachEffectTypes] ==&lt;br /&gt;
&#039;&#039;&#039;Stack.Watch=(AttachEffectType),(AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
待监视的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.Level=(Ingeter),(Ingeter)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
监视的AE叠加到多少层时触发，-1等于无条件触发，&#039;&#039;&#039;默认0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.Condition= (two comma-separated strings - Enumeration &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;[EQ|NE|GT|LT|GE|LE]&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
条件，&#039;&#039;&#039;默认 EQ,EQ&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! 值 !! 含义&lt;br /&gt;
|-&lt;br /&gt;
| EQ || 等于&lt;br /&gt;
|-&lt;br /&gt;
| NE || 不等于&lt;br /&gt;
|-&lt;br /&gt;
| GT || 大于&lt;br /&gt;
|-&lt;br /&gt;
| LT || 小于&lt;br /&gt;
|-&lt;br /&gt;
| GE || 大于等于&lt;br /&gt;
|-&lt;br /&gt;
| LE || 小于等于&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.ActionMode=(Special)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
监视多条AE时触发条件，AND时AE1和AE2必须同时满足，才会触发，&#039;&#039;&#039;默认OR&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AND&#039;&#039;&#039;：与&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;OR&#039;&#039;&#039;：或&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.AttachEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后赋予的新AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.SourceGetEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stack的来源直接获得来自Stack对象的AE&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.AttachChances=(List of Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.AttachToSource=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后向Stack的来源附加AE，而不是附着对象，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.SourceRemoveEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Stack的来源直接移除自己身上的AE&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsLevel=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除的AE对应的层数，&#039;&#039;&#039;默认0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsWithMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除带这些标记的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveEffectsSkipNext=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除的AE将跳过Next，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveToSource=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后向Stack的来源移除AE，而不是附着对象，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.TriggeredTimes=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发多少次后移除自身，&#039;&#039;&#039;默认-1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveLevel=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除指定层数监视的AE，从先赋予的开始按赋予顺序关闭，设置&amp;gt;0时优先级高于&#039;&#039;&#039;RemoveAll&#039;&#039;&#039;，&#039;&#039;&#039;默认0,0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveAll=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除监视的所有监视的AE，&#039;&#039;&#039;默认yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
这句在启用时，如果多个Stack侦测同一个信号，会在触发任意一个后直接移除信号，使得其他Stack无法触发。非必要不要写yes。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Stack.RemoveSkipNext=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发后移除监视的AE，并且跳过Next，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
== 简单样例 ==&lt;br /&gt;
[[File:Stack作为触发器.gif|效果如上|thumb]]&lt;br /&gt;
 [120mm]&lt;br /&gt;
 Feedback.AttachEffects=Firesig&lt;br /&gt;
 &lt;br /&gt;
 [Firesig]&lt;br /&gt;
 Animation=INVISO&lt;br /&gt;
 Duration=2&lt;br /&gt;
 &lt;br /&gt;
 [AP]&lt;br /&gt;
 AttachEffectTypes=Trigger&lt;br /&gt;
 AttachToSource=yes&lt;br /&gt;
 CellSpread=2&lt;br /&gt;
 &lt;br /&gt;
 [Trigger]&lt;br /&gt;
 Stack.Watch=Firesig&lt;br /&gt;
 Stack.Level=1&lt;br /&gt;
 Stack.Condition=GE&lt;br /&gt;
 Stack.AttachEffects=WEAPON&lt;br /&gt;
 Stack.AttachToSource=yes&lt;br /&gt;
 Duration=400&lt;br /&gt;
 Cumulative=attacker&lt;br /&gt;
 Stack.TriggeredTimes=3&lt;br /&gt;
 MaxStack=3&lt;br /&gt;
 &lt;br /&gt;
 [WEAPON]&lt;br /&gt;
 AutoWeapon.Types=MissileLauncher&lt;br /&gt;
 AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
 AutoWeapon.ReceiverAttack=no&lt;br /&gt;
 AutoWeapon.FireOnce=yes&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%B9%BF%E6%92%AD&amp;diff=1466</id>
		<title>Kratos:说明书/广播</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%B9%BF%E6%92%AD&amp;diff=1466"/>
		<updated>2026-08-29T10:52:02Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* [AttachEffectType] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Kratos说明书]]&lt;br /&gt;
== 特性&amp;amp;注意项 ==&lt;br /&gt;
&lt;br /&gt;
* 本质上就是做区域搜索，然后对搜索到的符合条件的目标贴AE，是纯粹的AE系统内部机制。在贴AE方面与武器弹头机制基本没差别。相比起武器弹头贴AE支持更多指名/排除机制，省得做专门的弹头和护甲了，可以省事。注意高频大范围区域搜索会有相当高的资源损耗，尽量避免Range写一个大的正数。相比之下，Range=-1的全图搜索因为直接检索单位列表，反而不卡。&lt;br /&gt;
* &#039;&#039;&#039;KratosPP&#039;&#039;&#039;下，&#039;&#039;&#039;Broadcast.Types&#039;&#039;&#039;赋予其他对象的&#039;&#039;&#039;AttachEffectType来源&#039;&#039;&#039;默认跟随&#039;&#039;&#039;广播自身的来源，&#039;&#039;&#039;如需要关闭此效果，根据需求在&#039;&#039;&#039;广播所在AttachEffectType&#039;&#039;&#039;、或者在&#039;&#039;&#039;Broadcast.Types&#039;&#039;&#039;指定的&#039;&#039;&#039;AttachEffectType&#039;&#039;&#039;补上&#039;&#039;&#039;ReceiverOwn=yes&#039;&#039;&#039;重置来源&lt;br /&gt;
* 已知缺陷：如果车辆类使用广播，在被磁电吸走时正常，但磁电效果结束瞬间广播的粘贴AE能力会消失。解法当然就是不用广播，用自动武器发射Toy弹头挂AE。&lt;br /&gt;
&lt;br /&gt;
== [AttachEffectType] ==&lt;br /&gt;
&#039;&#039;&#039;Broadcast.Types=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
广播的AE类型，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.GetTypes=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
反过来，广播范围内的目标给广播塔贴AE&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AttachChances=(List of Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，每个单位每个AE独立计算，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.Rate=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
广播的频率，每隔多少帧播放一次，&#039;&#039;&#039;默认15&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.RangeMin=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
广播的最近距离，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.RangeMax=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
广播的最大距离，0时关闭，-1表示全地图，&#039;&#039;&#039;默认-1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.FullAirspace=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
测算距离无视高度，即圆柱形范围检查，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.EliteTypes=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.EliteAttachChances=(List of Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.EliteRate=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.EliteRangeMin=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.EliteRangeMax=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.EliteFullAirspace=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
上述标签的Elite版本&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.TriggeredTimes=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
广播触发的次数，次数用完立刻强制结束效果，&#039;&#039;&#039;默认-1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.Powered=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
建筑需要电力才可以使用，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== 广播影响数量专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;Broadcast.MaxAttachTechno=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
最多影响多少单位，&#039;&#039;&#039;默认-1&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.MaxAttachBullet=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
最多影响多少抛射体，&#039;&#039;&#039;默认-1&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 广播影响过滤器专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectTypes=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，可影响的单位，如果设置，则只可以影响列表中的单位，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.NotAffectTypes=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，不可影响的单位，如果设置，则列表中的单位不被吸引，优先级更高，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 广播影响单位设置 ===&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectTechno=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，是否可以影响范围的单位（注意Affect没有s），&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectBuilding=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响范围内的建筑，建筑不能被拔起，但是可以收到伤害，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectInfantry=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响范围内的步兵，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectUnit=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响范围内的载具，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectAircraft=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响范围内的飞机，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 广播影响抛射体设置 ===&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectBullet=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响范围内的抛射体（注意Affect没有s），&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectMissile=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响ROT&amp;gt;0的抛射体，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectTorpedo=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响Level=yes的抛射体，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectCannon=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响Arcing=yes的抛射体，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectBomb=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响Vertical=yes的抛射体，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 影响特定对象 ===&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectSelf=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否向自己广播，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectInAir=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
影响在空中的单位，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectStand=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响替身，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.NotAffectMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
不影响带有这些标记的对象，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.OnlyAffectMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
只影响带有这些标记的对象，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 广播敌我识别专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectsOwner=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响同阵营的，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectsAllies=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响友军，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectsEnemies=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响敌人，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.AffectsCivilian=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响中立目标，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Broadcast.DeactiveWhenCivilian=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
启用时，当所属是平民时，或者被狙掉了驾驶员，不会激活效果，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E9%99%84%E5%8A%A0AE%E5%9F%BA%E6%9C%AC%E6%96%B9%E6%B3%95&amp;diff=1465</id>
		<title>Kratos:说明书/附加AE基本方法</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E9%99%84%E5%8A%A0AE%E5%9F%BA%E6%9C%AC%E6%96%B9%E6%B3%95&amp;diff=1465"/>
		<updated>2026-08-29T10:51:04Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* [WarheadType] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== [注意点] ==&lt;br /&gt;
AE有多个子类型。强烈建议一个AE模块只使用一类效果器，不要在一个AE中放入多种混合效果。AE可以无限添加，所以多个效果器应该用多个AE类对象。&lt;br /&gt;
&lt;br /&gt;
如同Ares，部分AE语句可以直接写单位身上作为单位属性。但是我们反对这种做法。强烈建议任何AE效果器都单独建立模块。建议使用[https://bbs.ra2diy.com/forum.php?mod=viewthread&amp;amp;tid=25603 INI织网者]来编写AE类效果。&lt;br /&gt;
== [TechnoType]&amp;amp;[ProjectileType]&amp;amp;[WarheadType] ==&lt;br /&gt;
&#039;&#039;&#039;AttachEffectTypes=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
要挂载的AE类型，写弹头上表示被该弹头伤害到的单位挂载，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果一个弹头击中会导致目标死亡，那么弹头的AE列表里面的最后一个贴不上（比如想让一个武器只在击杀目标瞬间让目标复仇、死亡礼物盒、替换destroyanim，而不是让这些效果有一个持续时间）。解决方法当然是在AE列表最后塞一个空AE。这个空AE不能为Cumulative，否则也被视为未触发，会使得更前一个AE贴不上。最后的占位可以用一个仅有Mark.Names和Duration为1的空AE。&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AttachEffectChances=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* 0.2版本，弹头新增标签&amp;lt;code&amp;gt;CellSpread.MaxAttachTechno&amp;lt;/code&amp;gt;与&amp;lt;code&amp;gt;CellSpread.MaxAttachBullet&amp;lt;/code&amp;gt;，为弹头爆炸附加AE增加目标上限。&lt;br /&gt;
&#039;&#039;&#039;GetEffectTypes=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
反向挂载，被弹头击中的单位给弹头来源贴AE&lt;br /&gt;
&lt;br /&gt;
=== [TechnoType]部署附加AE ===&lt;br /&gt;
Techno必须是能够正常响应部署的东西。比如步兵要有部署帧序列之类的前置要求。&lt;br /&gt;
&lt;br /&gt;
DeployToAttachEffects=AutoWeapon1,StandTest1 ;要挂载的AE类型&lt;br /&gt;
&lt;br /&gt;
DeployToAttachChances=100%,100% ;附加效果的成功率&lt;br /&gt;
&lt;br /&gt;
UndeployToAttachEffects=AutoWeapon1,StandTest1 ;要挂载的AE类型&lt;br /&gt;
&lt;br /&gt;
UndeployToAttachChances=100%,100% ;附加效果的成功率&lt;br /&gt;
&lt;br /&gt;
== [WarheadType] ==&lt;br /&gt;
&#039;&#039;&#039;AttachToSource=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
不附加给目标，而是反过来附加给攻击者，同时目标作为AE来源，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果是抛射体发射自动武器，用自动武器击中敌人且ToSource粘贴AE，原抛射体的发射者取得AE。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AttachFullAirspace=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
使用弹头附加时，搜索范围改为圆柱体，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AffectInAir=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
使用弹头附加效果是否影响空中单位的总开关，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;AffectShooter=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
使用弹头附加效果时是否影响武器的发射者，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
== [TechnoType] ==&lt;br /&gt;
&#039;&#039;&#039;StandTrainCabinLength=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
火车类型的替身的车厢长度，影响替身之间的间隔，&#039;&#039;&#039;默认512&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/ECM&amp;diff=1464</id>
		<title>Kratos:说明书/ECM</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/ECM&amp;diff=1464"/>
		<updated>2026-08-28T06:13:33Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* [AttachEffectType] */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== 特性&amp;amp;注意项 ==&lt;br /&gt;
&lt;br /&gt;
* 将军里面的ECM是一个车，而本效果是&#039;&#039;&#039;挂到抛射体身上&#039;&#039;&#039;才能起效的，需要通过让你设定可以“ECM”的单位通过&#039;&#039;&#039;广播或弹头&#039;&#039;&#039;将此状态&#039;&#039;&#039;赋予给抛射体&#039;&#039;&#039;。&lt;br /&gt;
* 持有该效果的抛射体会每隔一段时间重选一个目标，表现为乱飞。让抛射体出生自带这个效果的话会画出非常诡异的轨迹。&lt;br /&gt;
* &#039;&#039;&#039;状态类效果，仅最后附上的生效&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== [AttachEffectType] ==&lt;br /&gt;
&#039;&#039;&#039;ECM.Chance=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
成功率，大于0%启用，被挂此效果且启用成功的抛射体将按下列标签设置改变攻击目标，&#039;&#039;&#039;默认0%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.Rate=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抛射体间隔多少帧改一次目标，&#039;&#039;&#039;默认15&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.TriggeredTimes=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抛射体在持续时间内更改多少次目标，不成功也扣除一次，&#039;&#039;&#039;默认1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.LockDuration=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，多久不会再收到干扰，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.Feedback=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抛射体不搜索新目标，而是返回去干发射者，发射者不存在，原地爆炸，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.FeedbackToSourceTarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抛射体直接从AE来源身上同步目标 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.ToTechnoChance=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，抛射体选择单位而不是地面的概率，&#039;&#039;&#039;默认0%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.ForceRetarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，抛射体一定重选一个不同于原来目标的目标，如果范围内没有其他目标，就砸地上，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.NoOwner=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，抛射体变成无主状态，可以伤害发射者，击杀目标也不会给发射者经验，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== 新目标选择范围的专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;ECM.Around=(Special)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，抛射体选择目标的圆心位置，如果指定的点无效，那么就在自身周围附近找个点扎，&#039;&#039;&#039;默认Source&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Source=AE来源周围&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Target=前往的目标周围&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Self=自身周围&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Shooter=发射者的周围&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.RangeMin=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，抛射体选择目标的最小范围，单位格，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.RangeMax=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
干扰生效后，抛射体选择目标的最大范围，单位格，&#039;&#039;&#039;默认1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.FullAirspace=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
测算距离无视高度，即圆柱形范围检查，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== 新目标选择对象影响过滤器专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectTypes=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，可影响的单位，如果设置，则只转向清单中的单位，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.NotAffectTypes=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，不可影响的单位，如果设置，则不转向列表中的单位，优先级更高，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== 新目标选择对象影响单位设置 ===&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectInfantry=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响步兵，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectUnit=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响载具，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectAircraft=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
类型过滤，影响飞机，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== 新目标选择影响特定对象 ===&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectInAir=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
影响在空中的单位，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.NotAffectMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
不影响带有这些标记的对象，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.OnlyAffectMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
只影响带有这些标记的对象，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== 新目标选择影响对象敌我识别专属设置 ===&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectsOwner=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响同阵营的，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectsAllies=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响友军，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectsEnemies=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响敌人，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ECM.AffectsCivilian=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否影响中立目标，&#039;&#039;&#039;默认yes&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1463</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1463"/>
		<updated>2026-08-26T11:52:12Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 标签设计： */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]，在正式版DLL里面没有！&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
这个功能是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.6&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位在Vector生效时死亡时大概率引发崩溃，建议尽量少用到单位上。或者单位持有vector时应该无敌，并在vector结束后至少2帧才可以死亡。用于飞行器和jumpjet车时似乎还算稳定。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况（从发射者身上获取目标并写入缓存），但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。（谁家好人会给导弹发射器写12个导弹啊）&lt;br /&gt;
&lt;br /&gt;
导弹终末端如果使用ReachTarget的话有概率在飞行抵达目标之前Vector就结束了。如果确有必要，建议用Speed模式。如果不得不用ReachTarget,建议在Vector最后加一个自动武器发射导弹伤害，并接一个DestroySelf直接销毁导弹。一般来说在导弹上做Vector是做不精准子机导弹，所以这么处理也不至于穿帮。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆。测试发现这与抛射体在结束Vector时的高度有关，至少为423lepton时，SyncFacing=yes也可以正常飞向目标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnVectorOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|自动推算&lt;br /&gt;
|FLH 参考系（F 轴）来源：yes=Origin  单位自身朝向，no=Origin→弹体连线。Origin=Launcher默认yes，Target，Source默认no（新）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞回来，抽搐。一般就是yes，没有改的必要。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetNormal&lt;br /&gt;
|FLH&lt;br /&gt;
|0,0,0&lt;br /&gt;
|距离计算的偏移范围构成的圆面的倾斜。IsNormalOnOrigin=no时用世界坐标。（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.IsNormalOnOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|法向量是否跟随Origin单位朝向，否=世界坐标（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|0&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.IsNormalOnOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|大圆圆面法向量：yes=每帧跟随 OriginOrigin 单位自身朝向转动，no=世界固定。仅对配了 OriginNormalVector 的大圆有意义（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1462</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1462"/>
		<updated>2026-08-25T15:45:41Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 标签设计： */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]，在正式版DLL里面没有！&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
这个功能是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.6&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位在Vector生效时死亡时大概率引发崩溃，建议尽量少用到单位上。或者单位持有vector时应该无敌，并在vector结束后至少2帧才可以死亡。用于飞行器和jumpjet车时似乎还算稳定。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况（从发射者身上获取目标并写入缓存），但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。（谁家好人会给导弹发射器写12个导弹啊）&lt;br /&gt;
&lt;br /&gt;
导弹终末端如果使用ReachTarget的话有概率在飞行抵达目标之前Vector就结束了。如果确有必要，建议用Speed模式。如果不得不用ReachTarget,建议在Vector最后加一个自动武器发射导弹伤害，并接一个DestroySelf直接销毁导弹。一般来说在导弹上做Vector是做不精准子机导弹，所以这么处理也不至于穿帮。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnVectorOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|自动推算&lt;br /&gt;
|FLH 参考系（F 轴）来源：yes=Origin  单位自身朝向，no=Origin→弹体连线。Origin=Launcher默认yes，Target，Source默认no（新）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞回来，抽搐。一般就是yes，没有改的必要。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetNormal&lt;br /&gt;
|FLH&lt;br /&gt;
|0,0,0&lt;br /&gt;
|距离计算的偏移范围构成的圆面的倾斜。IsNormalOnOrigin=no时用世界坐标。（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.IsNormalOnOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|法向量是否跟随Origin单位朝向，否=世界坐标（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|0&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.IsNormalOnOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|大圆圆面法向量：yes=每帧跟随 OriginOrigin 单位自身朝向转动，no=世界固定。仅对配了 OriginNormalVector 的大圆有意义（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1461</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1461"/>
		<updated>2026-08-25T15:43:09Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 标签设计： */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]，在正式版DLL里面没有！&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
这个功能是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.6&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位在Vector生效时死亡时大概率引发崩溃，建议尽量少用到单位上。或者单位持有vector时应该无敌，并在vector结束后至少2帧才可以死亡。用于飞行器和jumpjet车时似乎还算稳定。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况（从发射者身上获取目标并写入缓存），但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。（谁家好人会给导弹发射器写12个导弹啊）&lt;br /&gt;
&lt;br /&gt;
导弹终末端如果使用ReachTarget的话有概率在飞行抵达目标之前Vector就结束了。如果确有必要，建议用Speed模式。如果不得不用ReachTarget,建议在Vector最后加一个自动武器发射导弹伤害，并接一个DestroySelf直接销毁导弹。一般来说在导弹上做Vector是做不精准子机导弹，所以这么处理也不至于穿帮。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnVectorOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|自动推算&lt;br /&gt;
|FLH 参考系（F 轴）来源：yes=Origin  单位自身朝向，no=Origin→弹体连线。Origin=Launcher默认yes，Target，Source默认no（新）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞回来，抽搐。一般就是yes，没有改的必要。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetNormal&lt;br /&gt;
|FLH&lt;br /&gt;
|0,0,0&lt;br /&gt;
|距离计算的偏移范围构成的圆面的倾斜。IsNormalOnOrigin=no时用世界坐标。（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.IsNormalOnOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|法向量是否跟随Origin单位朝向，否=世界坐标（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.IsNormalOnOrigin&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|大圆圆面法向量：yes=每帧跟随 OriginOrigin 单位自身朝向转动，no=世界固定。仅对配了 OriginNormalVector 的大圆有意义（新增）&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1460</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1460"/>
		<updated>2026-08-08T03:50:07Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]，在正式版DLL里面没有！&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
这个功能是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.6&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位在Vector生效时死亡时大概率引发崩溃，建议尽量少用到单位上。或者单位持有vector时应该无敌，并在vector结束后至少2帧才可以死亡。用于飞行器和jumpjet车时似乎还算稳定。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况（从发射者身上获取目标并写入缓存），但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。（谁家好人会给导弹发射器写12个导弹啊）&lt;br /&gt;
&lt;br /&gt;
导弹终末端如果使用ReachTarget的话有概率在飞行抵达目标之前Vector就结束了。如果确有必要，建议用Speed模式。如果不得不用ReachTarget,建议在Vector最后加一个自动武器发射导弹伤害，并接一个DestroySelf直接销毁导弹。一般来说在导弹上做Vector是做不精准子机导弹，所以这么处理也不至于穿帮。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞回来，抽搐。一般就是yes，没有改的必要。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1459</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1459"/>
		<updated>2026-08-06T08:27:34Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 和SpawnMissile的连用 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.6&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位飞行过程中死亡时大概率引发崩溃，建议尽量少用到单位上。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况（从发射者身上获取目标并写入缓存），但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。&lt;br /&gt;
&lt;br /&gt;
导弹终末端如果使用ReachTarget的话有概率在飞行抵达目标之前Vector就结束了。如果确有必要，建议用Speed模式。如果不得不用ReachTarget,建议在Vector最后加一个自动武器发射导弹伤害，并接一个DestroySelf直接销毁导弹。一般来说在导弹上做Vector是做不精准子机导弹，所以这么处理也不至于穿帮。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞回来，抽搐。一般就是yes，没有改的必要。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1458</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1458"/>
		<updated>2026-08-06T06:48:39Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 和SpawnMissile的连用 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.4&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位飞行过程中死亡时大概率引发崩溃，建议尽量少用到单位上。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况，但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。&lt;br /&gt;
&lt;br /&gt;
导弹终末端如果使用ReachTarget的话有概率在飞行抵达目标之前Vector就结束了。如果确有必要，建议用Speed模式。如果不得不用ReachTarget,建议在Vector最后加一个自动武器发射导弹伤害，并接一个DestroySelf直接销毁导弹。一般来说在导弹上做Vector是做不精准子机导弹，所以这么处理也不至于穿帮。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞，此时不支持弧线&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1457</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1457"/>
		<updated>2026-08-06T06:30:06Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 综述 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.4&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位飞行过程中死亡时大概率引发崩溃，建议尽量少用到单位上。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 和SpawnMissile的连用 ===&lt;br /&gt;
因为Westwood的傻逼代码SpawnManager,子机必须在所有导弹都发射完毕后（发射器清空）才会获得目标，所以你不能令母体装载的导弹数过多。如果在全体发射完毕之前导弹就获得了Origin=Target的Vector，导弹会试图进行子机一般的集结。虽然在Vector代码里面专门处理了这种情况，但仍然不见得完美。请尽量避免用Origin=Target的Vector操作发射完毕之前的导弹。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞，此时不支持弧线&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1456</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1456"/>
		<updated>2026-08-04T06:59:35Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.4&lt;br /&gt;
&lt;br /&gt;
== 综述 ==&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位飞行过程中死亡时大概率引发崩溃，建议尽量少用到单位上。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。不常用。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。不常用。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
因为只挪移，不修改其他东西，抛射体永远记得自己的目标。所以在Vector结束后抛射体还能飞回去打自己的原定目标。你可以所有抛射体都只用ROT=100了。可以用ReachTarget或Speed模式的弧线控制来模拟Arcing，且可以正常对空。当然，挪移Arcing和Vertical也是可以的，但是确实没有必要。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在本AE创建时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞，此时不支持弧线&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1455</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1455"/>
		<updated>2026-08-04T06:29:02Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.4&lt;br /&gt;
&lt;br /&gt;
== 综述 Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位飞行过程中死亡时大概率引发崩溃，建议尽量少用到单位上。不可用于建筑。 ==&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
&lt;br /&gt;
=== 标签设计： ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在 OnStart  时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞，此时不支持弧线&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
[[File:随机弧高随机弧倾斜和随机弧顶.gif|thumb|非常酷炫的弹道]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=File:%E9%9A%8F%E6%9C%BA%E5%BC%A7%E9%AB%98%E9%9A%8F%E6%9C%BA%E5%BC%A7%E5%80%BE%E6%96%9C%E5%92%8C%E9%9A%8F%E6%9C%BA%E5%BC%A7%E9%A1%B6.gif&amp;diff=1454</id>
		<title>File:随机弧高随机弧倾斜和随机弧顶.gif</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=File:%E9%9A%8F%E6%9C%BA%E5%BC%A7%E9%AB%98%E9%9A%8F%E6%9C%BA%E5%BC%A7%E5%80%BE%E6%96%9C%E5%92%8C%E9%9A%8F%E6%9C%BA%E5%BC%A7%E9%A1%B6.gif&amp;diff=1454"/>
		<updated>2026-08-04T06:28:43Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;非常酷炫的弹道&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1453</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1453"/>
		<updated>2026-08-04T06:22:14Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.8.4&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector系统实质上就是对附着的抛射体或单位进行暴力挪移。用于单位时因为wwsb的神奇格子系统，单位飞行过程中死亡时大概率引发崩溃，建议尽量少用到单位上。不可用于建筑。&lt;br /&gt;
&lt;br /&gt;
Vector是可混合的AE，多个Vector各自计算移动向量后复合出唯一的移动量。&lt;br /&gt;
&lt;br /&gt;
Vector产生的运动有5种模式：&lt;br /&gt;
&lt;br /&gt;
Freeze：最高权限，冻结在空中，此时一切Vector的移动量都会被强制归零。&lt;br /&gt;
&lt;br /&gt;
MoveTo：以lepton计算的位移量。每帧运动这么多。&lt;br /&gt;
&lt;br /&gt;
Speed：直线运动。默认行为是飞到目标坐标后AE自动结束。&lt;br /&gt;
&lt;br /&gt;
ReachTarget：无视速度，只读取Duration，Duration结束后必然飞到目标。&lt;br /&gt;
&lt;br /&gt;
Circle：画圈。除了圆的运动外，还支持圆心复合其他运动类型，如圆心也画圆，圆心飞向目标等。&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|标签名  (Vector.xxx)&lt;br /&gt;
|类型&lt;br /&gt;
|默认值&lt;br /&gt;
|详细说明&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;通用设定&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TimeStep&lt;br /&gt;
|int&lt;br /&gt;
|1&lt;br /&gt;
|每隔 TimeStep  帧才执行一次运动计算。非运动帧 MoveDisp 为空（子弹/单位位置不变），但 _elapsedFrames 仍然递增（计时不停）。默认 1  表示每帧都动。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.DisabledFrames&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|AE 启动后冻结前 N 帧。冻结期间  MoveDisp 恒为 {0,0,0}，不计入运动帧数。抛射体/单位在此期间仍可被其他机制挪移，只是这一个 Vector 不产生位移。作用是快照Vector生效时的原点坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SyncFacing&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：抛射体的头部朝向运动方向（写 Velocity），单位转向运动方向（改 PrimaryFacing）。no：不碰朝向，抛射体维持引擎默认指向目标，单位维持原朝向。建议别用yes，会让抛射体提前被引擎引爆&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnWorld&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：所有 FLH  偏移锁定世界坐标系（F→世界+Y即北，L→世界+X即东），完全无视单位/弹体/参考系的朝向。搭配 CircleOrigin  等可做&amp;quot;绝对高度&amp;quot;偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginIsOnBody&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|仅在 Origin=Self 或  Launcher 时生效。yes：F 轴取车身 PrimaryFacing（无视炮塔旋转）。no：取炮塔 TurretFacing。对 TargetFLH  的 FLH→世界坐标投射也有影响。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|Self,  Target, Launcher, Source。 定义原点参考系。Self：以弹体/单位自身为原点，F 轴=弹体朝向或单位 TurretFacing。Target：以攻击目标为原点（单位跟踪，地面锁定），F 轴=目标→弹体方向。Launcher：以发射者为原点，F 轴=发射者自身的炮塔指向。Source：以  AE Source 对象为原点，F 轴=Source→弹体方向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对 Origin 原点施加 FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.OriginNoUpdate&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：原点在 OnStart  时快照，后续不再跟踪目标/发射者的移动。no：每帧重新计算参考系（Target 跟踪目标移动，Launcher 跟踪发射者移动）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Force&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|默认所有模式  Force=yes。抛射体：yes=SetLocation 暴力挪移，不叠加引擎自身运动；no=引擎轨迹+Vector  位移叠加。单位：yes=跳过路径碰撞校验直接 SetLocation（可高空穿墙），首次进入时切换 Locomotor 为 Jumpjet；no=走  CanMoveTo 路径校验，撞墙反弹。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowFallingDestroy&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|Vector  结束时是否允许摔死。yes：当高度 &amp;gt; FallingDestroyHeight 时判定死亡。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.FallingDestroyHeight&lt;br /&gt;
|int&lt;br /&gt;
|LevelHeight&lt;br /&gt;
|摔死判定的高度阈值。低于此高度不判死。默认值为引擎的  LevelHeight 常量（约为 1 个单位层高）。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Freeze模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Freeze&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|最高优先级模式。yes：首帧快照当前位置为  FrozenPos，之后每帧计算位移=FrozenPos-当前位置，始终拉回冻结位置。抛射体下会自动开启 Force=true。Freeze  存在时所有其他运动模式（Circle/MoveTo/Speed/ReachTarget）均不会执行。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;MoveTo 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|纯  FLH 位移模式。每帧将 MoveTo 作为 FLH 偏移（F=沿 F 轴方向，L=垂直 F  轴，H=高度），转换成世界坐标位移叠加到弹体/单位上。Force 自动为 true。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|每运动帧  FLH 线性增量：MoveTo 的实际值 = MoveTo + GrowRate×运动帧数。可实现持续加速的位移（呼吸/螺旋/振幅效果）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|MoveTo  的自旋角度增量（度/步）。非零时在 MainFacing 上每帧叠加该角度，实现 FLH 位移方向的自旋。比较原始。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Speed模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|Speed  模式的初始线速度（lepton/步）。-1=读取单位 Speed（Jumpjet 读取 JumpjetSpeed，否则读 Speed；抛射体读  pBullet-&amp;gt;Speed）。≥0 直接使用。RandomSpeed 非退化时覆盖。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomSpeed&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始速度随机范围  (Min,Max)，非退化时覆盖 LinearSpeed。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Speed  模式下：每帧线速度增量（speed += Acceleration×绝对帧数）。Circle 模式下注：若  CircleSpeedAcceleration=0 时自动复用 Acceleration 作为圆加速率。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=抵达目标坐标点即强制结束AE并钳位到目标点(修复飞越后抽搐)；no=越过目标继续飞，此时不支持弧线&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;ReachTarget 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|剩余帧数强制到达模式。每帧位移 =  剩余距离÷剩余帧数，保证在 Duration 结束时恰好到达目标。超时后 Force=yes 时直接 SetLocation 到目标，Force=no  时无位移自然结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ReachTargetEarlyEnd&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|提前结束帧数。&amp;gt;0 时当剩余运动帧  ≤ 该值时 Deactivate 提前交还控制权给引擎。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;&#039;&#039;&#039;ReachTarget和Speed的弧控制和目标偏移&#039;&#039;&#039;&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|目标参考点在 Origin 参考系中的  FLH 坐标。Origin=Self 时以弹体/单位为参考，Origin=Target 时以目标为参考。叠加 TargetOffset  随机偏移后计算世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 F 轴随机偏移  (Min,Max)，首帧随机抽取，作用在 TargetFLH 上。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 L 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|目标 H 轴随机偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetFRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetLRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetHRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版随机Offset&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|以距离计算的随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetRadiusRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|四参数版偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetSphere&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|偏移量是否以球面计算，no则用圆面，高度用平面坐标的TargetOffsetH / TargetOffsetHRanges语句控制&lt;br /&gt;
|-&lt;br /&gt;
|Vector.TargetOffsetAngles&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|许可的偏移角度，四参数，仅圆环模式（Sphere=no）生效。抛射体指向目标的轴，与圆的近交点为0，远交点为180&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|ReachTarget/Speed  抛物线弧高（lepton），0=直线轨迹。正=上凸弧，负=下凹弧。弧高使用分段抛物线公式（升弧段：ax(2-x)，降弧段：1-x²）。Speed  模式下按剩余距离比例计算进度，弧高增量独立叠加不影响直线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcPeakPercent&lt;br /&gt;
|double&lt;br /&gt;
|50&lt;br /&gt;
|弧峰所在 Duration  百分比（0-100）。默认 50 即弧峰在终点的中点。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcPeakPercent&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧峰百分比随机范围  (Min,Max)，覆盖 ArcPeakPercent。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcHeight&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|弧高随机范围 (Min,Max)，覆盖  ArcHeight。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.ArcRotation&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|弧面旋转角度（度），0=默认弧面朝正上方。非零时弧线在空间中以 Rodrigues 旋转公式构造弧面法线方向偏移，不再单纯 Z 轴。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.RandomArcRotation&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|弧面旋转随机范围 (Min,Max)，覆盖  ArcRotation。&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;Circle 模式&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆半径（lepton）。-1=自动取弹体/单位当前到圆心的  XY 距离。&amp;gt;0 直接使用。每运动帧叠加 CircleRadiusGrow，受 CircleMaxRadius/CircleMinRadius  钳位。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆周线速度（lepton/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加加速度，受 CircleMaxSpeed/CircleMinSpeed 钳位。0 时首帧兜底取弹体/单位自身  Speed。与 CircleAnglePerStep 共存时角速度优先——线速度由角速度×半径重算，显式 CircleSpeed 被忽略。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleSpeedAcceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度每步加速度。0 时若通用  Acceleration≠0 则复用 Acceleration。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|线速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆周角速度（度/步）。&amp;gt;0  即可独立激活 Circle 模式。每帧叠加 CircleAngleAcceleration，受 CircleMaxAngle/CircleMinAngle  钳位。优先级高于 CircleSpeed——两者都设时，线速度由角速度×半径重算。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleAngleAcceleration&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinAngle&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|角速度下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleOrigin&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心偏移。AllowOriginTilt=no  时直接世界坐标加法（圆心=Origin点+CircleOrigin），无视朝向。AllowOriginTilt=yes 时作为 FLH  偏移跟随转轴旋转（F=沿 facing，L=垂直 facing，H=Z）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆心随物体倾斜而移动&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|初始半径随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleRadius。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|初始角速度随机范围  (Min,Max)。非退化时首帧从范围随机抽取，覆盖显式 CircleAnglePerStep。注意不是 4 值：只是单区间随机。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRandomAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|初始角速度 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2 抽取。覆盖显式 CircleAnglePerStep 和  CircleRandomAngle。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|每运动帧半径增量（lepton/步）。正=外扩，负=内缩。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径上限。0=不限。达到上限时由  CircleEndOnMaxRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|半径下限。0=不限。达到下限时由  CircleEndOnMinRadius 控制是否结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≥CircleMaxRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：半径≤CircleMinRadius  时 Deactivate 结束 AE。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|是否允许圆面随着附着物体的倾斜而倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Lissajous&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|Lissajous曲线变化速度&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;NormalVector 圆面法线（倾斜圆面）&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆面法向量，FLH 坐标系。决定圆如何倾斜。世界坐标。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 F 分量的随机范围  (Min,Max)，首帧抽取后叠加到 NormalVector。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 L 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|法向量 H 分量随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 F  轴的角速度（度/步），常数模式。圆面的法线每运动帧绕 F 轴旋转该角度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 L 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|绕 H 轴的角速度（度/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalFAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 F 轴角速度的 4 值双区间  (min1,max1,min2,max2)，50% 概率从区间 1 或区间 2  随机抽取。常数模式（NormalFAnglePerStep）优先于随机区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalLAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 L 轴角速度双区间。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.NormalHAngleRanges&lt;br /&gt;
|double×4&lt;br /&gt;
|0,0,0,0&lt;br /&gt;
|绕 H 轴角速度双区间。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous=1]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心整体运动&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心 MoveTo (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MoveTo&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心在基座上的 FLH  位移（lepton/步）。非空时圆心每运动帧按此偏移移动，朝向使用 _originFacing+自旋角度合成的方向，调用  GetFLHAbsoluteOffset 转换。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.GrowRate&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心 MoveTo 的每步增量。实际值 =  OriginMoveTo + OriginGrowRate×运动帧数。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心 MoveTo  的自旋角度增量（度/步），叠加在 _originFacing 上。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心  Speed/ReachTarget 模式飞向目标(Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心追踪目标在基座坐标系中的 FLH  位置。非空时进入圆心的 Speed/ReachTarget 子模式。OriginReachTarget 控制用何种方式到达。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.LinearSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
| -1=读取单位 Speed。≥0  直接使用该速度。圆心 Speed 子模式的初始线速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Acceleration&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 Speed 子模式的每步加速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MaxSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度上限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.MinSpeed&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心 Speed  子模式速度下限。-1=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ReachTarget&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：到达模式，圆心按剩余帧数均分位移，强制到目标  FLH。no：纯速度追踪模式，每帧向目标移动 OriginLinearSpeed 距离。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.SpeedEndOnReach&lt;br /&gt;
|bool&lt;br /&gt;
|yes&lt;br /&gt;
|yes=圆心抵达目标即结束AE；no=越过目标继续飞&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.ArcHeight&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心 ReachTarget/Speed  抛物线弧高。0=直线移动。Speed 模式下弧高按剩余距离比例叠加增量，与直线速度解耦。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetF&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 F 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetL&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 L 轴随机偏移范围&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.TargetOffsetH&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心目标 H 轴随机偏移范围&lt;br /&gt;
|}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;圆心自身画一个大圆 (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadius&lt;br /&gt;
|int&lt;br /&gt;
| -1&lt;br /&gt;
|圆心圆周运动的半径。-1=自动取当前距离。&amp;gt;0  直接使用。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleSpeed&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周线速度。与主  Circle 不同，此处无角速度覆盖规则——速度&amp;gt;0 且半径&amp;gt;0 时用 radar_offset 推角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周角速度。仅在  OriginCircleSpeed=0 或半径≤0 时生效。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomRadius&lt;br /&gt;
|int,int&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始半径随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRandomAngle&lt;br /&gt;
|double,double&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心圆周初始角速度随机&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleRadiusGrow&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径增量（lepton/步）。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMaxRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径上限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleMinRadius&lt;br /&gt;
|int&lt;br /&gt;
|0&lt;br /&gt;
|圆心圆周半径下限。0=不限。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMaxRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达上限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleEndOnMinRadius&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|圆心圆周半径达下限时结束。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowCircleTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：允许圆面倾斜&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.AllowOriginTilt&lt;br /&gt;
|bool&lt;br /&gt;
|no&lt;br /&gt;
|yes：圆心的 CircleOrigin 偏移改为 FLH 模式，随附着物体倾斜而倾斜。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.CircleOffset&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心原点偏移，在基座坐标系上直接加世界坐标偏移量。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Lissajous&lt;br /&gt;
|int &lt;br /&gt;
|no&lt;br /&gt;
|角度持续累加产生独立相位,角加速度&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.Origin&lt;br /&gt;
|enum&lt;br /&gt;
|Self&lt;br /&gt;
|圆心运动的参考系选择。Self=以主系  originPos 为基座。Launcher/Target/Source=以对应实体坐标为基座。OriginOriginFLH 可在此基础上再叠加 FLH  偏移。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.OriginFLH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|对圆心运动基座施加  FLH 偏移。&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; |&amp;lt;big&amp;gt;大圆法线  (Origin.*)&amp;lt;/big&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalVector&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0,0&lt;br /&gt;
|圆心运动系统的独立法向量（FLH坐标系），定义圆心的独立朝向。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomF&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  F 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomL&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  L 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalRandomH&lt;br /&gt;
|CoordStruct&lt;br /&gt;
|0,0&lt;br /&gt;
|圆心法线  H 随机范围。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalFAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  F 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalLAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  L 轴旋转角速度。&lt;br /&gt;
|-&lt;br /&gt;
|Vector.Origin.NormalHAnglePerStep&lt;br /&gt;
|double&lt;br /&gt;
|0&lt;br /&gt;
|圆心法线绕  H 轴旋转角速度。&lt;br /&gt;
|}&lt;br /&gt;
[[File:Lissajous+小圆圆心转圈.gif|thumb]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=File:Lissajous%2B%E5%B0%8F%E5%9C%86%E5%9C%86%E5%BF%83%E8%BD%AC%E5%9C%88.gif&amp;diff=1452</id>
		<title>File:Lissajous+小圆圆心转圈.gif</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=File:Lissajous%2B%E5%B0%8F%E5%9C%86%E5%9C%86%E5%BF%83%E8%BD%AC%E5%9C%88.gif&amp;diff=1452"/>
		<updated>2026-08-04T06:21:49Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Lissajous+小圆圆心转圈&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1447</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1447"/>
		<updated>2026-06-28T04:05:51Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制。Vector结束后抛射体回归原有轨迹。所以建议你只用ROT=100&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。注意参照点如果是自己且update的话会累加导致超高速飞行&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制锁死，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
如果Origin设为Target，则F轴是Target指向抛射体的向量。只写F轴的MoveTo向量就可以定向飞行。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.ReachTargetEarlyEnd=N&lt;br /&gt;
 提前结束，在距离到达还有N帧时移除Vector效果器&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N,&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，-360-360，正数为顺时针转动&lt;br /&gt;
&lt;br /&gt;
Vector.ArcPeakPercent=N (如30）&lt;br /&gt;
 抛物线顶点在整个线的百分比，默认就是50，没有百分号，意味着50%，飞行到一半时到达弧线顶峰&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcPeaPercent=20,70 &lt;br /&gt;
 上面这玩意的随机化版本，填Min，Max&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了，大一统抛射体，只用ROT类就够&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Speed模式（恒速/加速） ===&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动（逐渐变得复杂） ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时自动计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接在上面的语句内插入.Origin，有的语句就是没做嵌套模式，以下面列举的为准。&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
Self（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。除非Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1438</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1438"/>
		<updated>2026-06-21T16:46:55Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制。Vector结束后抛射体回归原有轨迹。所以建议你只用ROT=100&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。注意参照点如果是自己且update的话会累加导致超高速飞行&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制锁死，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
如果Origin设为Target，则F轴是Target指向抛射体的向量。只写F轴的MoveTo向量就可以定向飞行。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.ReachTargetEarlyEnd=N&lt;br /&gt;
 提前结束，在距离到达还有N帧时移除Vector效果器&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N,&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRandomRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，-360-360，正数为顺时针转动&lt;br /&gt;
&lt;br /&gt;
Vector.ArcPeakPercent=N (如30）&lt;br /&gt;
 抛物线顶点在整个线的百分比，默认就是50，没有百分号，意味着50%，飞行到一半时到达弧线顶峰&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.ArcPeakRandomPercent=20,70 &lt;br /&gt;
 上面这玩意的随机化版本，填Min，Max&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了，大一统抛射体，只用ROT类就够&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Speed模式（恒速/加速） ===&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动（逐渐变得复杂） ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时自动计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接在上面的语句内插入.Origin，有的语句就是没做嵌套模式，以下面列举的为准。&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
Self（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。除非Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1437</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1437"/>
		<updated>2026-06-19T16:29:25Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 核心设计： */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制。Vector结束后抛射体回归原有轨迹。所以建议你只用ROT=100&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。注意参照点如果是自己且update的话会累加导致超高速飞行&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制锁死，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
如果Origin设为Target，则F轴是Target指向抛射体的向量。只写F轴的MoveTo向量就可以定向飞行。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.ReachTargetEarlyEnd=N&lt;br /&gt;
 提前结束，在距离到达还有N帧时移除Vector效果器&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N,&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRandomRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，-360-360，正数为顺时针转动&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了，大一统抛射体，只用ROT类就够&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Speed模式（恒速/加速） ===&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动（逐渐变得复杂） ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时自动计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接在上面的语句内插入.Origin，有的语句就是没做嵌套模式，以下面列举的为准。&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
Self（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。除非Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1436</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1436"/>
		<updated>2026-06-19T06:34:51Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制。Vector结束后抛射体回归原有轨迹。所以建议你只用ROT=100&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
如果Origin设为Target，则F轴是Target指向抛射体的向量。只写F轴的MoveTo向量就可以定向飞行。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.ReachTargetEarlyEnd=N&lt;br /&gt;
 提前结束，在距离到达还有N帧时移除Vector效果器&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N,&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRandomRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，-360-360，正数为顺时针转动&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了，大一统抛射体，只用ROT类就够&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Speed模式（恒速/加速） ===&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动（逐渐变得复杂） ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时自动计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
Self（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1435</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1435"/>
		<updated>2026-06-18T11:26:16Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* Speed / ReachTarget 模式 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制。Vector结束后抛射体回归原有轨迹。所以建议你只用ROT=100&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
如果Origin设为Target，则F轴是Target指向抛射体的向量。只写F轴的MoveTo向量就可以定向飞行。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N,&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRandomRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，-360-360，正数为顺时针转动&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了，大一统抛射体，只用ROT类就够&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Speed模式（恒速/加速） ===&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动（逐渐变得复杂） ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时自动计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
Self（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1434</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1434"/>
		<updated>2026-06-18T11:21:24Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* MoveTo 模式（FLH 强制位移） */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
如果Origin设为Target，则F轴是Target指向抛射体的向量。只写F轴的MoveTo向量就可以定向飞行。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N，Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N, Vector.ArcRandomRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，0-360，顺时针转动&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1433</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1433"/>
		<updated>2026-06-18T09:29:59Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N，Vector.RandomArcHeight=Min,Max&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcRotation=N, Vector.ArcRandomRotation=Min,Max&lt;br /&gt;
 抛物线旋转度数，随机旋转度数，0-360，顺时针转动&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1432</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1432"/>
		<updated>2026-06-17T04:09:26Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* MoveTo 模式（FLH 强制位移） */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1431</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1431"/>
		<updated>2026-06-17T04:08:28Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 通用标签 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。默认Yes，Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1430</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1430"/>
		<updated>2026-06-17T04:04:13Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 通用标签 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnBody=yes/no&lt;br /&gt;
&lt;br /&gt;
Vector.OriginIsOnWorld=yes/no&lt;br /&gt;
 原点计算时使用单位车身而非炮塔朝向、原点计算时直接使用世界坐标FLH&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。抛射体默认Yes，单位默认No。Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1429</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1429"/>
		<updated>2026-06-17T01:29:51Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 通用标签 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector.SyncFacing&lt;br /&gt;
  同步Vector移动方向。抛射体默认Yes，单位默认No。Yes可以让单位按照Vector的移动向量同步自身朝向。抛射体设No时会始终指向自己的攻击目标。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1428</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1428"/>
		<updated>2026-06-17T01:24:32Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 通用标签 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Self / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  Self      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 Self。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1427</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1427"/>
		<updated>2026-06-16T17:48:36Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin。可以记录初始坐标快照，Origin=FLH，此期间其他Vector可以进行挪移，disabled时间结束后再以快照坐标点继续进行其他运动。注意要从总Duration里面减去Disabled帧数，才是运动帧数。&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1426</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1426"/>
		<updated>2026-06-16T17:32:52Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames&lt;br /&gt;
 这么多帧内不进行挪移计算。不用InitialDelay的原因是InitialDelay状态下无法获取Origin&lt;br /&gt;
[SNAPSHOT]&lt;br /&gt;
&lt;br /&gt;
Duration=120&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.DisabledFrames=50&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
生效时快照当前位置，50帧后挪移回快照位置。期间其他Vector正常运转。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1425</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1425"/>
		<updated>2026-06-16T16:42:45Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 倾斜圆周运动 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
yes且没有法向量的话就会在计算坐标轴时同时计算Z轴。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1424</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1424"/>
		<updated>2026-06-16T14:46:03Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;[https://www.bilibili.com/opus/1214163469064994817?spm_id_from=333.1387.0.0 当前Vector为预览版]&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间&#039;&#039;&#039;&amp;lt;u&amp;gt;强制修改附着对象坐标&amp;lt;/u&amp;gt;&#039;&#039;&#039;。&lt;br /&gt;
&lt;br /&gt;
[https://www.bilibili.com/opus/1214494881641136144?spm_id_from=333.1387.0.0 暴力挪移！！]&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1423</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1423"/>
		<updated>2026-06-16T13:14:27Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;当前Vector为预览版&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
 原点偏移（FLH 坐标系），根据各种origin自适应。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1422</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1422"/>
		<updated>2026-06-16T12:45:24Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;当前Vector为预览版&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges&lt;br /&gt;
&lt;br /&gt;
填四个数值，如ABCD，初始化角速度取[AB],[CD]区间。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin代表运动的是圆心。简化了很多东西，因为嵌套太复杂了谁都看不明白，不要直接抄，有的语句就是没做嵌套模式&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
[[File:Lissajous曲线.gif|thumb|Lissajous曲线，就是减速减面，反转，加速加面，反转]]&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
样例2：&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=150&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Launcher&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,100&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetFLH=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=1024&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEHOLD&lt;br /&gt;
&lt;br /&gt;
[CIRCLEHOLD]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=400&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=3&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=800&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLEDOWN&lt;br /&gt;
&lt;br /&gt;
[CIRCLEDOWN]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=800&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngleRanges=-25,-10,10,25&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Target&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-4&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=10&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
Vector.AllowedTilt=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=0,0,1900&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=no&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=-100,100&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=1&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=1&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1421</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1421"/>
		<updated>2026-06-16T12:39:53Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;当前Vector为预览版&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== 倾斜圆周运动 ====&lt;br /&gt;
Vector.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 坐标系可绕 XY 面倾斜，Source/Target 的 F 轴纳入 Z 轴差。写了法向量就会自动视为yes。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleOrigin=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心偏移。默认世界坐标加法，AllowOriginTilt=yes 时沿 FLH 轴旋转。建议倾斜时候一定要设置&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOrigin 随法向量倾斜旋转。&lt;br /&gt;
&lt;br /&gt;
  no  = CircleOrigin 纯世界坐标加法（默认）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 坐标系圆面法向量。FLH世界坐标系。F=右上方（North）&lt;br /&gt;
&lt;br /&gt;
  设此后自动启用倾斜坐标系。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机初始化范围&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法向量每运动帧固定旋转角速度（°/step）。&lt;br /&gt;
&lt;br /&gt;
Vector.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法向量旋转的角速度双区间随机。仅对应 AnglePerStep=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  A,B,C,D 全等=常数角速度。&lt;br /&gt;
&lt;br /&gt;
=== Vector.Origin.* 圆心运动（Circle 模式专用） ===&lt;br /&gt;
使圆心本身在 FLH 坐标系内运动。上面所有那些玩意再嵌套。非常的粪。&lt;br /&gt;
&lt;br /&gt;
==== 通用 ====&lt;br /&gt;
Vector.Origin.Origin=FLH/Launcher/Target/Source&lt;br /&gt;
&lt;br /&gt;
  圆心运动的基座参考系。设定 NormalVector 时被覆盖。&lt;br /&gt;
&lt;br /&gt;
  Target/Source/Launcher 均实时追踪移动对象。&lt;br /&gt;
&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.OriginFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  Origin=FLH 时的手动基准向量（F=北, L=东, H=高）。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleOffset=F,L,H&lt;br /&gt;
&lt;br /&gt;
  圆心初始世界偏移。设 AllowOriginTilt=yes 时沿 FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowOriginTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = CircleOffset 沿 Current FLH 轴旋转。&lt;br /&gt;
&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Lissajous=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 累积大角旋转，圆心每帧绕整圈翻转方向，&lt;br /&gt;
&lt;br /&gt;
        产生增减边 Lissajous 震荡曲线。&lt;br /&gt;
&lt;br /&gt;
  no  = 增量旋转（默认），圆心逐帧小步连续旋转，&lt;br /&gt;
&lt;br /&gt;
        弹体追踪圆心，形成平滑行星轨迹。&lt;br /&gt;
&lt;br /&gt;
==== MoveTo 模式 ====&lt;br /&gt;
Vector.Origin.MoveTo=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 位移向量（lepton/step）。圆心沿此方向匀速移动。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.GrowRate=F,L,H&lt;br /&gt;
&lt;br /&gt;
  每步增量（lepton/step）。随帧数线性缩放 MoveTo。&lt;br /&gt;
&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  每步自旋角度（°/step）。叠加到 FLH 朝向。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
==== Speed 模式 ====&lt;br /&gt;
Vector.Origin.TargetFLH=F,L,H&lt;br /&gt;
&lt;br /&gt;
  目标点（FLH 坐标系，相对基座）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.TargetOffsetH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  目标随机偏移。OnStart 随机一次。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.InitialSpeed=N&lt;br /&gt;
&lt;br /&gt;
  初始速度（lepton/step）。-1=读取单位 Speed。&lt;br /&gt;
&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.Acceleration=N&lt;br /&gt;
&lt;br /&gt;
  加速度（lepton/step²）。每步加至速度。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MaxSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度上限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.MinSpeed=N&lt;br /&gt;
&lt;br /&gt;
  速度下限。-1=不限。默认 -1。&lt;br /&gt;
&lt;br /&gt;
==== ReachTarget 模式 ====&lt;br /&gt;
Vector.Origin.ReachTarget=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 按剩余 Duration 自动调节速度到达目标点，&lt;br /&gt;
&lt;br /&gt;
        到达后自动结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.ArcHeight=N&lt;br /&gt;
&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。默认 0。&lt;br /&gt;
&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
&lt;br /&gt;
==== Circle 模式 ====&lt;br /&gt;
圆心绕基座做圆周运动（优先级最低）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径（lepton）。默认 -1（自动取当前距离）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleSpeed=N&lt;br /&gt;
&lt;br /&gt;
  线速度（lepton/step）。设后角速度=线速度/当前半径。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  角速度（°/step）。仅 CircleSpeed=0 时生效。&lt;br /&gt;
&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomRadius=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始半径随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRandomAngle=Min,Max&lt;br /&gt;
&lt;br /&gt;
  初始角速度随机范围。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleRadiusGrow=N&lt;br /&gt;
&lt;br /&gt;
  半径每步增长率（lepton/step）。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMaxRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径上限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleMinRadius=N&lt;br /&gt;
&lt;br /&gt;
  半径下限。默认 0（不限）。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达上限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.CircleEndOnMinRadius=yes/no&lt;br /&gt;
&lt;br /&gt;
  半径达下限时结束 AE。默认 no。&lt;br /&gt;
&lt;br /&gt;
==== NormalVector（圆心圆面法线） ====&lt;br /&gt;
Vector.Origin.NormalVector=F,L,H&lt;br /&gt;
&lt;br /&gt;
  FLH 法向量。设后启用倾斜圆面。&lt;br /&gt;
&lt;br /&gt;
  默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalRandomH=Min,Max&lt;br /&gt;
&lt;br /&gt;
  法向量各分量随机范围。默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAnglePerStep=N&lt;br /&gt;
&lt;br /&gt;
  法线每步角速度（°/step）。H=转向，L=俯仰。默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalFAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalLAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.NormalHAngleRanges=A,B,C,D&lt;br /&gt;
&lt;br /&gt;
  法线角速度双区间随机。默认空。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin.AllowedTilt=yes/no&lt;br /&gt;
&lt;br /&gt;
  yes = 允许 F 轴倾斜。默认 no。Deepusheek把这个写坏了，没用，得等修&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=File:Lissajous%E6%9B%B2%E7%BA%BF.gif&amp;diff=1420</id>
		<title>File:Lissajous曲线.gif</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=File:Lissajous%E6%9B%B2%E7%BA%BF.gif&amp;diff=1420"/>
		<updated>2026-06-16T12:29:57Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;减边-反转-增边循环&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1419</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1419"/>
		<updated>2026-06-16T11:39:47Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;当前Vector为预览版&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1877pQOrf5JkMSOM6gmJ_VA&amp;lt;/nowiki&amp;gt; 提取码: 1145 &lt;br /&gt;
&lt;br /&gt;
2026.6.16&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6&amp;diff=1418</id>
		<title>Kratos:说明书</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6&amp;diff=1418"/>
		<updated>2026-06-16T04:18:45Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;&amp;lt;b&amp;gt;官方交流群：787397741&amp;lt;/b&amp;gt;&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
本产品完全免费，如果有人向你收钱，干死他，如果你花钱买的，那么你是大傻逼。&lt;br /&gt;
&lt;br /&gt;
更新地址：&amp;lt;nowiki&amp;gt;https://github.com/ChrisLv-CN/KratosPP&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
如果你认可本产品，可以通过正规渠道向唯一作者[双杀步枪](&amp;lt;nowiki&amp;gt;https://space.bilibili.com/276838)捐助。&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
仅供玩耍，懂的人自然懂，不知道是啥的也不用问，小白兔解释不了。&lt;br /&gt;
&lt;br /&gt;
前排提示，实验性功能随时可能会炸，联机有高几率会炸。&lt;br /&gt;
&lt;br /&gt;
严禁用于小偷公司兰博玩对战平台，后果自负。&lt;br /&gt;
&lt;br /&gt;
严禁用于修改他人的MOD，后果自负。&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Rules =&lt;br /&gt;
&lt;br /&gt;
=== 全局 ===&lt;br /&gt;
* [[Kratos:说明书/动画伤害扩展|接管动画伤害]]&lt;br /&gt;
* [[Kratos:说明书/碎片相关扩展|允许碎片\流星落到水上时产生伤害]]&lt;br /&gt;
* [[Kratos:说明书/替身|允许单位索敌时搜索替身]]&lt;br /&gt;
* [[Kratos:说明书/允许AI攻击友军单位|允许AI攻击友军单位]]&lt;br /&gt;
* [[Kratos:说明书/移动建造节点|启用移动建造节点]]&lt;br /&gt;
* [[Kratos:说明书/显示血量数字|显示血量数字]]&lt;br /&gt;
* [[Kratos:说明书/显示伤害数字|显示伤害数字]]&lt;br /&gt;
* [[Kratos:说明书/碎片相关扩展|重制Vxl碎片逻辑]]&lt;br /&gt;
* [[Kratos:说明书/显示可建造范围|显示可建造范围]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞行器俯仰自动调整|飞行器俯仰自动调整]]&lt;br /&gt;
* [[Kratos:说明书/飞行器在空中的影子大小缩放比例|飞行器在空中的影子大小缩放比例]]&lt;br /&gt;
* [[Kratos:说明书/无停机坪机场生产飞机强制偏移|无停机坪机场生产飞机强制偏移]]&lt;br /&gt;
* [[Kratos:说明书/NoFighter相关设置|NoFighter相关设置]]&lt;br /&gt;
&#039;&#039;&#039;阵营&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|自定义默认伪装]]&lt;br /&gt;
&lt;br /&gt;
== Techno ==&lt;br /&gt;
&lt;br /&gt;
=== Techno ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示血量数字|微观调整血量数字]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/额外武器|额外武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/禁止选择|禁止选择]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/攻击信标（嘲讽）|攻击信标（嘲讽）]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/反抛射体|反抛射体]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射超级武器|开火发射超级武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自动朝脚下发射武器|自动朝脚下发射武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/按射程选用副武器|按射程选用副武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自伤|自伤]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自毁|自毁]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/热诱弹|热诱弹]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/死亡动画和残骸|单位死亡动画和残骸]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示可建造范围|显示可建造范围]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/虚拟单位|虚拟单位]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替换武器（武器覆盖）|替换武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/子机管理器增强|子机管理器扩展]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/移动建造节点|移动建造节点]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/母舰支援子机武器|母舰支援子机武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/激光笔|自定义空袭激光笔]]&lt;br /&gt;
* [[Kratos:说明书/通过部署附加AE|通过部署附加AE]]&lt;br /&gt;
&lt;br /&gt;
=== Infantry ===&lt;br /&gt;
* [[Kratos:说明书/部署变形|部署变形]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|微观设定默认伪装]]&lt;br /&gt;
&lt;br /&gt;
=== Vehicle ===&lt;br /&gt;
* [[Kratos:说明书/SHP格式IFV炮塔|SHP格式IFV炮塔]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/OpenTopped扩展|OpenTopped扩展]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/炮塔扩展|自定义炮塔默认朝向及射界]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/炮塔扩展|侧舷接敌]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|微观设定默认伪装]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/部署变形|部署变形]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/Jumpjet载具扩展|Jumpjet载具攻击时面向目标]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/Jumpjet载具扩展|Jumpjet载具吊运及装载扩展]]&lt;br /&gt;
&lt;br /&gt;
=== Aircraft ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/无停机坪机场生产飞机强制偏移|无停机坪机场生产飞机强制偏移]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞机俯冲|飞机俯冲]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞机区域警戒巡航|飞机区域警戒巡航]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义子机类导弹扩展|自定义子机类导弹扩展]]&lt;br /&gt;
* [[Kratos:说明书/飞行器俯仰自动调整|飞行器俯仰自动调整]]&lt;br /&gt;
* [[Kratos:说明书/NoFighter相关设置|NoFighter相关设置]]&lt;br /&gt;
&lt;br /&gt;
=== Terrain ===&lt;br /&gt;
* [[Kratos:说明书/地形对象死亡动画|地形对象死亡动画]]&lt;br /&gt;
== Weapon ==&lt;br /&gt;
&lt;br /&gt;
=== Weapon ===&lt;br /&gt;
* [[Kratos:说明书/发射时检查资金|发射时检查资金]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/激光笔|激光笔]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/武器后座力|武器后座力]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射本体到弹头爆炸位置|发射本体到弹头爆炸位置]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/通过气泵弹射本体或乘客|通过气泵弹射本体或乘客]]&lt;br /&gt;
* [[Kratos:说明书/提前引爆抛射体|提前引爆抛射体]]&lt;br /&gt;
* [[Kratos:说明书/按类型筛选武器|按类型筛选武器]]&lt;br /&gt;
* [[Kratos:说明书/激光颜色|激光颜色]]&lt;br /&gt;
* [[Kratos:说明书/视觉散布|视觉散布]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/附加武器详细设置|自定义附加武器详细设置]]&lt;br /&gt;
&lt;br /&gt;
=== Projectile ===&lt;br /&gt;
* [[Kratos:说明书/抛射体弹跳|弹跳的Arcing]]&lt;br /&gt;
* [[Kratos:说明书/反抛射体|自定义抛射体血量&amp;amp;是否可被拦截]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/ROT类导弹扩展|翻转导弹初始发射方向]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/物理碰撞和穿刺|物理碰撞和穿刺]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自伤|自伤]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自毁|自毁]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/精准Arcing|精准Arcing]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/直线弹道|直线弹道]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/ROT类导弹扩展|微调晃动导弹初始方向]]&lt;br /&gt;
* [[Kratos:说明书/AAOnly|只能AA]]&lt;br /&gt;
&lt;br /&gt;
=== Warhead ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示伤害数字|微观显示伤害数字]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/无伤害弹头|无伤害弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替身|忽略替身分享伤害]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/经验弹头|经验弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伤害响应|不触发伤害响应弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/复仇|不触发复仇响应弹头]]&lt;br /&gt;
* [[Kratos:说明书/计数器及触发器|不触发计数器响应弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/通过弹头增减资金|通过弹头增减资金]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/传送|传送弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/嘲讽|嘲讽弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/强制任务弹头|强制任务弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|卸下伪装]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/死亡动画和残骸|强制替换死亡动画和残骸]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/清除目标弹头|清除目标的Target]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/黑洞|黑洞捕获]]&lt;br /&gt;
* [[Kratos:说明书/附加AE影响单位数量上限|附加AE影响单位数量上限]]&lt;br /&gt;
&lt;br /&gt;
== AttachEffectTypes ==&lt;br /&gt;
（虽然每个类型都起了中文名但是日常交流建议直接用语句，如Stack之类）&lt;br /&gt;
&lt;br /&gt;
[[来源与附着对象|&#039;&#039;&#039;&amp;lt;big&amp;gt;来源与附着对象（必读！）&amp;lt;/big&amp;gt;&#039;&#039;&#039;]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[https://bbs.ra2diy.com/forum.php?mod=viewthread&amp;amp;tid=25603 强烈建议使用织网者编写AE相关ini]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== 通过非AE方式附加AE ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/附加AE基本方法|附加AE基本方法]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/武器反馈|发射武器并反馈]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/乘客与载具互动|乘客与载具]]&lt;br /&gt;
* [[Kratos:说明书/快捷键附加AE|快捷键附加AE]]&lt;br /&gt;
&lt;br /&gt;
=== [[Kratos:说明书/通用设置|通用设置]]（←这是个链接!) ===&lt;br /&gt;
&lt;br /&gt;
=== 状态类AE（效果仅最新AE效果可存在） ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/黑洞|黑洞]] BlackHole&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/染色|彩弹]] PaintBall&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/礼盒|礼盒]] GiftBox&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自毁|自毁]] DestroySelf&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;（以下仅对单位生效）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/变形|变形]] Transform&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/气泵|气泵]] Pump&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/传送|传送]] Teleport&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/武器禁用|武器禁用]] Weapon.Disable&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替换武器（武器覆盖）|武器覆盖]] OverrideWeapon&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/死亡动画和残骸|死亡动画和残骸]] DestroyAnim&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伤害响应|伤害响应系统]] DamageReaction&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/停止运动|停止运动（类似EMP）]]Freeze&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射时检查资金|发射时检查资金]] NoMoneyNoTalk&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/分散和相对方向移动|分散和相对方向移动]] Scatter&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/禁止选择|禁止选择]] Select.Disable&lt;br /&gt;
* [[Kratos:说明书/自转|自转]] Spin&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;（以下仅对抛射体生效）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/抛射体弹跳|抛射体弹跳]]  Bounce&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/ECM|ECM]]&lt;br /&gt;
&lt;br /&gt;
=== 非状态类AE（允许AE效果叠加） ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/攻击信标（嘲讽）|攻击信标（嘲讽）]]AttackBeacon&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示信息|显示信息]] Info&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/标记|标记]] Mark&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/广播|广播]] Broadcast&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/刷怪笼|刷怪笼（类礼盒）]]Host&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替身|附加单位（替身）]]Stand&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/叠层检测|叠层检测]] Stack&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/附加动画|附加动画]] Anim&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/属性增强|属性增强]] Status&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自伤|自伤]] DamageSelf&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自动武器|自动武器]] AutoWeapon&lt;br /&gt;
* [[Kratos:说明书/计数器及触发器|计数器]] Counter&lt;br /&gt;
* [[Kratos:说明书/移动器|移动器]] Vector&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;（以下仅对单位生效）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/复仇|复仇]] Revenge&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射超级武器|开火发射超级武器]] FireSuperWeapon&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/吸血|吸血]] Vampire&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/免疫|免疫]] Immune&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/额外武器|额外武器]] ExtraFire&lt;br /&gt;
&lt;br /&gt;
= Art =&lt;br /&gt;
* [[Kratos:说明书/自定义尾巴|自定义尾巴]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义武器FLH关联|武器FLH跟随车体]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义武器FLH关联|武器FLH跟随目标]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义武器FLH关联|步兵卧倒开火FLH]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞机在停机坪的朝向|飞机在停机坪的朝向]]&lt;br /&gt;
&lt;br /&gt;
=== Anim ===&lt;br /&gt;
* [[Kratos:说明书/动画对特定所属方可见|对特定所属方可见]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替身#&amp;amp;#91;AnimType&amp;amp;#93;|替身]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/动画伤害扩展|动画伤害扩展]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/染色|染色]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射超级武器|动画播放时一并发射超级武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/动画释放新的动画|动画释放新的动画]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/碎片相关扩展|自定义碎片落水动画]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[Kratos已知缺陷|已知缺陷]]&#039;&#039;&#039; ===&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[Kratos:说明书/运用范例和模板|运用范例和模板]]&#039;&#039;&#039; ===&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%88%B7%E6%80%AA%E7%AC%BC&amp;diff=1417</id>
		<title>Kratos:说明书/刷怪笼</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E5%88%B7%E6%80%AA%E7%AC%BC&amp;diff=1417"/>
		<updated>2026-06-15T16:24:03Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== 这是个什么东西 ==&lt;br /&gt;
其实就是[[Kratos:说明书/礼盒|礼物盒]]。但是是可以叠加且不带移除原单位的礼物盒。用法也可以说跟礼物盒完全一回事。有些语句说明书都忘了标，放心直接抄礼物盒的吧——kenosis&lt;br /&gt;
&lt;br /&gt;
== 特性&amp;amp;注意项 ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;刷怪笼&#039;&#039;&#039;为&#039;&#039;&#039;KratosPP&#039;&#039;&#039;新增功能，&#039;&#039;&#039;Host.AttachEffects&#039;&#039;&#039;赋予&#039;&#039;&#039;生成单位&#039;&#039;&#039;的AE默认来源是笼子。如果你不想在怪物和笼子之间建立绑定，让怪物刷出来时持有的AE来源是自己，则用刷怪笼添加的AE应有&#039;&#039;&#039;ReceiverOwn=yes&#039;&#039;&#039;&lt;br /&gt;
* 这个机制存在联机方面的重大缺陷，极其容易导致断连。&lt;br /&gt;
&lt;br /&gt;
== [AttachEffectType] ==&lt;br /&gt;
&#039;&#039;&#039;Host.Types=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
刷的单位类型，期间会间断性的输出所写的单位，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.Dynamic=yes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
动态类型，刷什么&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.Nums=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
数量，&#039;&#039;&#039;默认1,1&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.Chances=(Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抽中的概率，当决定要刷出这个类型时，可以刷出来的概率，每个类型单独计算概率，不写为100%，&#039;&#039;&#039;默认1.0,1.0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.Delay=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
多久后开盒，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.RandomDelay=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机延迟，&#039;&#039;&#039;默认0,300&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.RandomType=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机从列表中选取类型，并释放等于Nums列表中数值总和的礼物数量，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.RandomWeights=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机从列表中选区类型，对应列表中每个类型的权重值，数字越大概率越高，不写为1，&#039;&#039;&#039;默认50,50&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteTypes=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteNums=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteChances=(Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteDelay=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteRandomDelay=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteRandomType=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.EliteRandomWeights=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
上述标签的Elite版本&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.RandomRange=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物刷在附近随机范围内，单位格，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.TriggeredTimes=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
触发的次数，次数用完立刻强制结束效果，&#039;&#039;&#039;默认-1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.Powered=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
建筑需要电力才可以使用，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.DeactiveWhenCivilian=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
启用时，当所属是平民时，或者被狙掉了驾驶员，不会激活效果，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 特殊设定，继承血量、目标和任务 ===&lt;br /&gt;
&#039;&#039;&#039;Host.HealthPercent=(Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物的血量百分比，0-1，0或者0%，按照原单位血量百分比进行转换，&#039;&#039;&#039;默认100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.HealthNumber=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
直接指定礼物的血量数字，低于1，不使用，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.InheritHealthNumber=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物是否继承原单位的血量数字，非按比例转换，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.InheritTarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物是否继承原单位的目标，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.InheritExp=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果可以升级则继承等级，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.RemoveEffects=(List of AttachEffect)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
移除礼物继承的AE，&#039;&#039;&#039;默认AE1,AE2&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.AttachEffects=(List of AttachEffect)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
给礼物附加AE，&#039;&#039;&#039;默认AE1,AE2&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.AttachChances=(List of Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，每个礼物单独计算，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Host.ForceMission=(MissionType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
强制设置礼物的任务，&#039;&#039;&#039;默认None&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Kratos:说明书/Mission选项表|点击查看Mission选项表]]&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A4%BC%E7%9B%92&amp;diff=1416</id>
		<title>Kratos:说明书/礼盒</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A4%BC%E7%9B%92&amp;diff=1416"/>
		<updated>2026-06-15T15:29:14Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
== 这是个什么东西 ==&lt;br /&gt;
默认效果：一个对象获得这个效果器后，立刻移除单位，并生成新的单位。旧的单位逻辑上等效于死亡。原单位称为“礼物盒”，新单位称为“礼物”。&lt;br /&gt;
&lt;br /&gt;
可以配置继承血量或血量数值、继承或指派新任务、不移除旧单位、继承原有AE（只能继承附着在礼物盒上的AE。如果礼物盒曾经给其他单位添加过AE，那么在礼物盒AE运行时，礼物盒单位会被移除，礼物单位无法成为其他单位身上已有AE的来源），获得新AE等效果。&lt;br /&gt;
&lt;br /&gt;
== 特性&amp;amp;注意项 ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;状态类效果，仅最后附上的生效&#039;&#039;&#039;&lt;br /&gt;
* 默认生成的礼物所属跟随礼物盒AE的来源。如需要打中敌人把敌人变形，但是不改变所属，则礼物盒应有ReceiverOwn&lt;br /&gt;
* &#039;&#039;&#039;KratosPP&#039;&#039;&#039;下，当&#039;&#039;&#039;GiftBox.Remove=no&#039;&#039;&#039;时，&#039;&#039;&#039;GiftBox.AttachEffects&#039;&#039;&#039;赋予给礼物的AE默认来源是礼物盒。如果你不想在礼盒和礼物盒之间建立绑定，让礼物刷出来时持有的AE来源是自己，则用礼物盒添加的AE应有&#039;&#039;&#039;ReceiverOwn=yes&#039;&#039;&#039;&lt;br /&gt;
* 如果&#039;&#039;&#039;GiftBox.Remove=no&#039;&#039;&#039;，且GiftBox有Duration，则Duration中每一帧都会生成一次。如果不写Duration，则会一直生成（AttachOnceInTechnoType=yes也会一直生成）。如果Duration=1，则无法生成。解法是Duration=1，InitialDelay=1。但是如果多个单位同时给自己反馈Duration=1的礼盒，就会因为时序出错导致部分单位贴不上。只是变身的话就别在礼盒上写持续时间了。如果你都用Remove=no了，说明你要普通地刷兵，那就用[[Kratos:说明书/刷怪笼|Host系列效果器]]。另外，如果给礼盒写了Duration=1，同时又Remove=yes，生成的单位有一定概率丢失原来的目标。&lt;br /&gt;
* 抛射体也可以贴礼物盒。如果加入&#039;&#039;&#039;GiftBox.OpenWhenDestroyed=yes&#039;&#039;&#039;，则会产生常规意义的刷兵效果。如果不加，则是攻击后立刻从炮口生成，这样生成的礼物单位会继承原单位的攻击目标，且刷出来时如果发射武器的单位被选中，则礼物也被玩家选中。刷出来的单位持有Guard任务，有目标但不会走近攻击，只有射程内的会攻击。如果需要让单位走过去，需要另外写&#039;&#039;&#039;AE让开出来的礼盒单位Mission改为Attack或Move，不能使用GiftBox.ForceMission，会掐断GiftBox.InheritTarget的效果&#039;&#039;&#039;&lt;br /&gt;
* 不要用在建筑上。将一个建筑礼盒变成另一个建筑时，会将建筑的实际foundation变成1x1。&lt;br /&gt;
* GiftBox.InheritAE=yes时，相应的AE上必须有Inheritable=yes 以及DiscardOnTransform=no，否则相关AE会在效果器执行后被删除。如果一个单位礼盒变成另一个单位&lt;br /&gt;
&lt;br /&gt;
== [TechnoType]&amp;amp;[AttachEffectType] ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Types=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Dynamic=（Bool）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
动态礼物类型，贴什么东西身上就创建什么&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Nums=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
数量，&#039;&#039;&#039;默认1,1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Chances=(List of Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
抽中的概率，当决定要刷出这个类型时，可以刷出来的概率，每个类型单独计算概率，不写为100%，&#039;&#039;&#039;默认1.0,1.0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Delay=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
多久后开盒，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomDelay=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机延迟，&#039;&#039;&#039;默认0,300&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomType=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机从列表中选取类型，并释放等于Nums列表中数值总和的礼物数量，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomWeights=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
随机从列表中选区类型，对应列表中每个类型的权重值，数字越大概率越高，&#039;&#039;&#039;默认1&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteTypes=(List of TechnoType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteNums=(List of Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteChances=(List of Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteDelay=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteRandomDelay=(Integer),(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteRandomType=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.EliteRandomWeights=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
上列标签的&#039;&#039;&#039;Elite&#039;&#039;&#039;版本&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Remove=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
开盒后删除盒子，&#039;&#039;&#039;默认yes&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.Explodes=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
删除盒子后会不会引起爆炸，触发死亡武器，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RealCoords=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物释放在单位的实际位置，否则为逻辑中心，影响建筑，&#039;&#039;&#039;默认no&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果试图用GiftBox变建筑，必须为yes。并且为了避免诡异的抽风，需要多走一步1x1建筑跳转。如NAWEAP-&amp;gt;YAWEAP, 需要写NAWEAP-&amp;gt;GAPILL-&amp;gt;YAWEAP才能正常。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomRange=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物刷在附近随机范围内，单位格，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RandomToEmptyCell=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼物只在空地上刷，没有空地就刷在原地，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.OpenWhenDestroyed=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
礼盒单位被摧毁时释放礼物，yes时仅在被摧毁时释放，延迟等设置无效，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.OpenWhenHealthPercent=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定收到伤害后，剩余血量低于这个值时释放，0-1，0%和100%都不会启用这个设置，如果伤害很大直接击杀不会释放，&#039;&#039;&#039;默认100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.OnlyOpenWhenMarks=(List of MarkType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
带有这些标记的时候才可以开盒，&#039;&#039;&#039;默认none&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== 特殊设定-单位转换 ===&lt;br /&gt;
&#039;&#039;&#039;GiftBox.IsTransform=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
是否使用单位转换机制，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
启用后，礼盒将会强制删除，并不会发生爆炸，调整继承选项的默认值&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.HealthPercent=(Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物的血量百分比，0-1，0或者0%，按照原单位血量百分比进行转换，&#039;&#039;&#039;默认100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.HealthNumber=(Integer)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
直接指定礼物的血量数字，低于1，不使用，&#039;&#039;&#039;默认0&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritHealthNumber=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物是否继承原单位的血量数字，非按比例转换，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritTarget=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
指定礼物是否继承原单位的目标，变身时默认yes，&#039;&#039;&#039;默认no。&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果&#039;&#039;&#039;GiftBox.Remove&#039;&#039;&#039;写了yes，则有一定概率丢失目标！&lt;br /&gt;
&lt;br /&gt;
所以得写Remove为no，Next出一个DestroySelf来实现这一套。 &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritExp=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果可以升级则继承等级，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;; GiftBox.InheritPassenger=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果有乘客舱位则转移乘客，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritROF=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
继承ROF计时器，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritAmmo=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
如果有弹药则继承弹药，没有弹药生成有弹药，弹药箱清空，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.InheritAE=(Boolean)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
当礼盒被摧毁，第一个礼物继承礼盒的AE，礼盒自身不会继承，变身时默认yes，&#039;&#039;&#039;默认no&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
=== AE挂载相关 ===&lt;br /&gt;
&#039;&#039;&#039;GiftBox.RemoveEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
移除礼物继承的AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.AttachEffects=(List of AttachEffectType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
给礼物附加AE，&#039;&#039;&#039;默认none&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.AttachChances=(List of Float/Integer - Precent)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
附加效果的成功率，每个礼物单独计算，&#039;&#039;&#039;默认100%,100%&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;GiftBox.ForceMission=(MissionType)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
强制设置礼物的任务，&#039;&#039;&#039;默认None&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Kratos:说明书/Mission选项表|点击查看Mission选项表]] &lt;br /&gt;
&lt;br /&gt;
== [AttachEffectType] ==&lt;br /&gt;
&#039;&#039;&#039;GiftBox.AffectWho=(Speical)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
作用于谁，ALL\MASTER\STAND，&#039;&#039;&#039;默认MASTER&#039;&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1415</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1415"/>
		<updated>2026-06-15T15:22:15Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：&#039;&#039;&#039;当前Vector为预览版&#039;&#039;&#039;，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
预览版DLL：&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1IuIu_kUtAzHw3hge7M8L-Q?pwd=1145&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2026.6.15&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1414</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1414"/>
		<updated>2026-06-15T15:08:00Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* 参考系 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：当前Vector为预览版，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
KratosVector.rar&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1IuIu_kUtAzHw3hge7M8L-Q?pwd=1145&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2026.6.15&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标偏移，不写就是自身000坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1413</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1413"/>
		<updated>2026-06-15T15:04:30Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kenosis提示：当前Vector为预览版，是VibeCoding的结果，算法需要人类程序猿审查并优化。当前版本仅供初步撰写INI观察效果。&lt;br /&gt;
&lt;br /&gt;
KratosVector.rar&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;nowiki&amp;gt;https://pan.baidu.com/s/1IuIu_kUtAzHw3hge7M8L-Q?pwd=1145&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2026.6.15&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E8%87%AA%E8%BD%AC&amp;diff=1412</id>
		<title>Kratos:说明书/自转</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E8%87%AA%E8%BD%AC&amp;diff=1412"/>
		<updated>2026-06-15T15:00:44Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​创建页面，内容为“[AttachEffectTypes]  BodySpin.Speed=20  BodySpin.SweepPeriod=400  或  TurretSpin.Speed=20  TurretSpin.SweepPeriod=400  速度和周期。无周期时定向旋转，有周期时三角波。正负数代表不同转向。  非常微小的功能，用于让你的单位在万分紧张之下使出[https://www.bilibili.com/video/BV1zv411M74A/ 波与粒的境界]。”&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[AttachEffectTypes]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
或&lt;br /&gt;
&lt;br /&gt;
TurretSpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
TurretSpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
速度和周期。无周期时定向旋转，有周期时三角波。正负数代表不同转向。&lt;br /&gt;
&lt;br /&gt;
非常微小的功能，用于让你的单位在万分紧张之下使出[https://www.bilibili.com/video/BV1zv411M74A/ 波与粒的境界]。&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6&amp;diff=1411</id>
		<title>Kratos:说明书</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6&amp;diff=1411"/>
		<updated>2026-06-15T14:58:53Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​/* AttachEffectTypes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Kratos说明书]]&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;&amp;lt;b&amp;gt;官方交流群：787397741&amp;lt;/b&amp;gt;&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Rules =&lt;br /&gt;
&lt;br /&gt;
=== 全局 ===&lt;br /&gt;
* [[Kratos:说明书/动画伤害扩展|接管动画伤害]]&lt;br /&gt;
* [[Kratos:说明书/碎片相关扩展|允许碎片\流星落到水上时产生伤害]]&lt;br /&gt;
* [[Kratos:说明书/替身|允许单位索敌时搜索替身]]&lt;br /&gt;
* [[Kratos:说明书/允许AI攻击友军单位|允许AI攻击友军单位]]&lt;br /&gt;
* [[Kratos:说明书/移动建造节点|启用移动建造节点]]&lt;br /&gt;
* [[Kratos:说明书/显示血量数字|显示血量数字]]&lt;br /&gt;
* [[Kratos:说明书/显示伤害数字|显示伤害数字]]&lt;br /&gt;
* [[Kratos:说明书/碎片相关扩展|重制Vxl碎片逻辑]]&lt;br /&gt;
* [[Kratos:说明书/显示可建造范围|显示可建造范围]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞行器俯仰自动调整|飞行器俯仰自动调整]]&lt;br /&gt;
* [[Kratos:说明书/飞行器在空中的影子大小缩放比例|飞行器在空中的影子大小缩放比例]]&lt;br /&gt;
* [[Kratos:说明书/无停机坪机场生产飞机强制偏移|无停机坪机场生产飞机强制偏移]]&lt;br /&gt;
* [[Kratos:说明书/NoFighter相关设置|NoFighter相关设置]]&lt;br /&gt;
&#039;&#039;&#039;阵营&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|自定义默认伪装]]&lt;br /&gt;
&lt;br /&gt;
== Techno ==&lt;br /&gt;
&lt;br /&gt;
=== Techno ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示血量数字|微观调整血量数字]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/额外武器|额外武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/禁止选择|禁止选择]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/攻击信标（嘲讽）|攻击信标（嘲讽）]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/反抛射体|反抛射体]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射超级武器|开火发射超级武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自动朝脚下发射武器|自动朝脚下发射武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/按射程选用副武器|按射程选用副武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自伤|自伤]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自毁|自毁]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/热诱弹|热诱弹]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/死亡动画和残骸|单位死亡动画和残骸]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示可建造范围|显示可建造范围]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/虚拟单位|虚拟单位]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替换武器（武器覆盖）|替换武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/子机管理器增强|子机管理器扩展]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/移动建造节点|移动建造节点]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/母舰支援子机武器|母舰支援子机武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/激光笔|自定义空袭激光笔]]&lt;br /&gt;
* [[Kratos:说明书/通过部署附加AE|通过部署附加AE]]&lt;br /&gt;
&lt;br /&gt;
=== Infantry ===&lt;br /&gt;
* [[Kratos:说明书/部署变形|部署变形]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|微观设定默认伪装]]&lt;br /&gt;
&lt;br /&gt;
=== Vehicle ===&lt;br /&gt;
* [[Kratos:说明书/SHP格式IFV炮塔|SHP格式IFV炮塔]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/OpenTopped扩展|OpenTopped扩展]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/炮塔扩展|自定义炮塔默认朝向及射界]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/炮塔扩展|侧舷接敌]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|微观设定默认伪装]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/部署变形|部署变形]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/Jumpjet载具扩展|Jumpjet载具攻击时面向目标]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/Jumpjet载具扩展|Jumpjet载具吊运及装载扩展]]&lt;br /&gt;
&lt;br /&gt;
=== Aircraft ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/无停机坪机场生产飞机强制偏移|无停机坪机场生产飞机强制偏移]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞机俯冲|飞机俯冲]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞机区域警戒巡航|飞机区域警戒巡航]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义子机类导弹扩展|自定义子机类导弹扩展]]&lt;br /&gt;
* [[Kratos:说明书/飞行器俯仰自动调整|飞行器俯仰自动调整]]&lt;br /&gt;
* [[Kratos:说明书/NoFighter相关设置|NoFighter相关设置]]&lt;br /&gt;
&lt;br /&gt;
=== Terrain ===&lt;br /&gt;
* [[Kratos:说明书/地形对象死亡动画|地形对象死亡动画]]&lt;br /&gt;
== Weapon ==&lt;br /&gt;
&lt;br /&gt;
=== Weapon ===&lt;br /&gt;
* [[Kratos:说明书/发射时检查资金|发射时检查资金]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/激光笔|激光笔]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/武器后座力|武器后座力]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射本体到弹头爆炸位置|发射本体到弹头爆炸位置]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/通过气泵弹射本体或乘客|通过气泵弹射本体或乘客]]&lt;br /&gt;
* [[Kratos:说明书/提前引爆抛射体|提前引爆抛射体]]&lt;br /&gt;
* [[Kratos:说明书/按类型筛选武器|按类型筛选武器]]&lt;br /&gt;
* [[Kratos:说明书/激光颜色|激光颜色]]&lt;br /&gt;
* [[Kratos:说明书/视觉散布|视觉散布]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/附加武器详细设置|自定义附加武器详细设置]]&lt;br /&gt;
&lt;br /&gt;
=== Projectile ===&lt;br /&gt;
* [[Kratos:说明书/抛射体弹跳|弹跳的Arcing]]&lt;br /&gt;
* [[Kratos:说明书/反抛射体|自定义抛射体血量&amp;amp;是否可被拦截]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/ROT类导弹扩展|翻转导弹初始发射方向]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/物理碰撞和穿刺|物理碰撞和穿刺]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自伤|自伤]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自毁|自毁]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/精准Arcing|精准Arcing]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/直线弹道|直线弹道]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/ROT类导弹扩展|微调晃动导弹初始方向]]&lt;br /&gt;
* [[Kratos:说明书/AAOnly|只能AA]]&lt;br /&gt;
&lt;br /&gt;
=== Warhead ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示伤害数字|微观显示伤害数字]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/无伤害弹头|无伤害弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替身|忽略替身分享伤害]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/经验弹头|经验弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伤害响应|不触发伤害响应弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/复仇|不触发复仇响应弹头]]&lt;br /&gt;
* [[Kratos:说明书/计数器及触发器|不触发计数器响应弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/通过弹头增减资金|通过弹头增减资金]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/传送|传送弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/嘲讽|嘲讽弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/强制任务弹头|强制任务弹头]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伪装扩展|卸下伪装]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/死亡动画和残骸|强制替换死亡动画和残骸]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/清除目标弹头|清除目标的Target]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/黑洞|黑洞捕获]]&lt;br /&gt;
* [[Kratos:说明书/附加AE影响单位数量上限|附加AE影响单位数量上限]]&lt;br /&gt;
&lt;br /&gt;
== AttachEffectTypes ==&lt;br /&gt;
（虽然每个类型都起了中文名但是日常交流建议直接用语句，如Stack之类）&lt;br /&gt;
&lt;br /&gt;
[[来源与附着对象|&#039;&#039;&#039;&amp;lt;big&amp;gt;来源与附着对象（必读！）&amp;lt;/big&amp;gt;&#039;&#039;&#039;]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[https://bbs.ra2diy.com/forum.php?mod=viewthread&amp;amp;tid=25603 强烈建议使用织网者编写AE相关ini]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== 通过非AE方式附加AE ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/附加AE基本方法|附加AE基本方法]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/武器反馈|发射武器并反馈]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/乘客与载具互动|乘客与载具]]&lt;br /&gt;
* [[Kratos:说明书/快捷键附加AE|快捷键附加AE]]&lt;br /&gt;
&lt;br /&gt;
=== [[Kratos:说明书/通用设置|通用设置]]（←这是个链接!) ===&lt;br /&gt;
&lt;br /&gt;
=== 状态类AE（效果仅最新AE效果可存在） ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/黑洞|黑洞]] BlackHole&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/染色|彩弹]] PaintBall&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/礼盒|礼盒]] GiftBox&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自毁|自毁]] DestroySelf&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;（以下仅对单位生效）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/变形|变形]] Transform&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/气泵|气泵]] Pump&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/传送|传送]] Teleport&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/武器禁用|武器禁用]] Weapon.Disable&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替换武器（武器覆盖）|武器覆盖]] OverrideWeapon&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/死亡动画和残骸|死亡动画和残骸]] DestroyAnim&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/伤害响应|伤害响应系统]] DamageReaction&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/停止运动|停止运动（类似EMP）]]Freeze&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射时检查资金|发射时检查资金]] NoMoneyNoTalk&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/分散和相对方向移动|分散和相对方向移动]] Scatter&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/禁止选择|禁止选择]] Select.Disable&lt;br /&gt;
* [[Kratos:说明书/自转|自转]] Spin&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;（以下仅对抛射体生效）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/抛射体弹跳|抛射体弹跳]]  Bounce&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/ECM|ECM]]&lt;br /&gt;
&lt;br /&gt;
=== 非状态类AE（允许AE效果叠加） ===&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/攻击信标（嘲讽）|攻击信标（嘲讽）]]AttackBeacon&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/显示信息|显示信息]] Info&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/标记|标记]] Mark&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/广播|广播]] Broadcast&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/刷怪笼|刷怪笼（类礼盒）]]Host&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替身|附加单位（替身）]]Stand&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/叠层检测|叠层检测]] Stack&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/附加动画|附加动画]] Anim&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/属性增强|属性增强]] Status&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自伤|自伤]] DamageSelf&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自动武器|自动武器]] AutoWeapon&lt;br /&gt;
* [[Kratos:说明书/计数器及触发器|计数器]] Counter&lt;br /&gt;
* [[Kratos:说明书/移动器|移动器]] Vector&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;（以下仅对单位生效）&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/复仇|复仇]] Revenge&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射超级武器|开火发射超级武器]] FireSuperWeapon&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/吸血|吸血]] Vampire&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/免疫|免疫]] Immune&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/额外武器|额外武器]] ExtraFire&lt;br /&gt;
&lt;br /&gt;
= Art =&lt;br /&gt;
* [[Kratos:说明书/自定义尾巴|自定义尾巴]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义武器FLH关联|武器FLH跟随车体]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义武器FLH关联|武器FLH跟随目标]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/自定义武器FLH关联|步兵卧倒开火FLH]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/飞机在停机坪的朝向|飞机在停机坪的朝向]]&lt;br /&gt;
&lt;br /&gt;
=== Anim ===&lt;br /&gt;
* [[Kratos:说明书/动画对特定所属方可见|对特定所属方可见]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/替身#&amp;amp;#91;AnimType&amp;amp;#93;|替身]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/动画伤害扩展|动画伤害扩展]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/染色|染色]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/发射超级武器|动画播放时一并发射超级武器]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/动画释放新的动画|动画释放新的动画]]&lt;br /&gt;
&lt;br /&gt;
* [[Kratos:说明书/碎片相关扩展|自定义碎片落水动画]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[Kratos已知缺陷|已知缺陷]]&#039;&#039;&#039; ===&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;[[Kratos:说明书/运用范例和模板|运用范例和模板]]&#039;&#039;&#039; ===&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1410</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1410"/>
		<updated>2026-06-15T14:57:06Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​Vector格式调整&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种&lt;br /&gt;
&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
=== &#039;&#039;&#039;核心设计：&#039;&#039;&#039; ===&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
=== 通用标签 ===&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。默认Yes。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
=== Circle 模式（圆周运动） ===&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
基础参数 &lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
随机初始值&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
半径动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
角速度动态&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== MoveTo 模式（FLH 强制位移） ===&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
=== Speed / ReachTarget 模式 ===&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
目标点&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
&amp;lt;s&amp;gt;&#039;&#039;&#039;有这玩意就可以把你的Arcing抛射体全刨了&#039;&#039;&#039;&amp;lt;/s&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Speed（恒速/加速）&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
=== 参考系 ===&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
 Vector.OriginFLH=F,L,H  手动指定参考点坐标&lt;br /&gt;
&lt;br /&gt;
 F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置）&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定附着AE瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
=== 所有AE都带的的通用标签 ===&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
=== 叠加 ===&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
用Next链接一系列Vector即可规划出非常酷炫的飞行轨迹。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=50&lt;br /&gt;
&lt;br /&gt;
ROF=300&lt;br /&gt;
&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
&lt;br /&gt;
Burst=2&lt;br /&gt;
&lt;br /&gt;
Damage=1&lt;br /&gt;
&lt;br /&gt;
Range=60&lt;br /&gt;
&lt;br /&gt;
ROF=1&lt;br /&gt;
&lt;br /&gt;
Speed=100&lt;br /&gt;
&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
&lt;br /&gt;
ROT=100&lt;br /&gt;
&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
&lt;br /&gt;
Duration=35&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
&lt;br /&gt;
Duration=70&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
&lt;br /&gt;
Duration=40&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
&lt;br /&gt;
Duration=4000&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
&lt;br /&gt;
Duration=200&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
	<entry>
		<id>https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1409</id>
		<title>Kratos:说明书/移动器</title>
		<link rel="alternate" type="text/html" href="https://wiki.ra2diy.com/index.php?title=Kratos:%E8%AF%B4%E6%98%8E%E4%B9%A6/%E7%A7%BB%E5%8A%A8%E5%99%A8&amp;diff=1409"/>
		<updated>2026-06-15T14:49:16Z</updated>

		<summary type="html">&lt;p&gt;Kenosis：​创建页面，内容为“Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。 适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。 BuildingTypes 永久免疫。  所有标签写在 [AttachEffectSection] 下，前缀为 Vector.   Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种， 按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed  核心设计：  1. 硬控制    Force=yes 时，Vector…”&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Vector （向量）是纯移动效果器，Duration 期间强制修改附着对象坐标。&lt;br /&gt;
适用于 Projectile、Aircraft、Jumpjet Vehicle、Infantry 等。&lt;br /&gt;
BuildingTypes 永久免疫。&lt;br /&gt;
&lt;br /&gt;
所有标签写在 [AttachEffectSection] 下，前缀为 Vector.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Vector 将&amp;quot;位移&amp;quot;抽象为 5 种独立模式，每个 AE 同时只激活一种，&lt;br /&gt;
按优先级匹配：Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
核心设计：&lt;br /&gt;
&lt;br /&gt;
1. 硬控制&lt;br /&gt;
   Force=yes 时，Vector 暴力设定坐标挪移，&lt;br /&gt;
   引擎自身的 Velocity / 轨迹 / FlakScatter 全部被绕过。&lt;br /&gt;
   Vector 默认 Force=yes，所有模式自动硬控。&lt;br /&gt;
&lt;br /&gt;
2. 参考系&lt;br /&gt;
   位移计算需要一个原点和一个 FLH 朝向（F 轴）。&lt;br /&gt;
   Origin 定义了原点来源和 F 轴的计算方式。&lt;br /&gt;
   Z 轴不参与 F/L 轴计算，坐标系严格二维。&lt;br /&gt;
&lt;br /&gt;
3. 叠加&lt;br /&gt;
   多个 Vector AE 可同时附加，每个独立计算位移向量，&lt;br /&gt;
   最终所有运动合并出总向量进行挪移。&lt;br /&gt;
&lt;br /&gt;
4. 链式切换&lt;br /&gt;
   通过 Next= 标签串联多个 AE 实现多阶段运动脚本&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
模式优先级&lt;br /&gt;
============================================================&lt;br /&gt;
Freeze &amp;gt; Circle &amp;gt; MoveTo &amp;gt; ReachTarget &amp;gt; Speed&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
通用标签&lt;br /&gt;
============================================================&lt;br /&gt;
&lt;br /&gt;
Vector.TimeStep=N&lt;br /&gt;
  运动颗粒度。每 N 帧执行一次位移。&lt;br /&gt;
  默认 1（每帧执行）。非运动帧时作用对象冻结。&lt;br /&gt;
&lt;br /&gt;
Vector.Origin=FLH / Launcher / Target / Source&lt;br /&gt;
  定义位移参考系的原点和 F 轴朝向。&lt;br /&gt;
  FLH      = 抛射体自身朝向（Velocity 方向），Techno 用 TurretFacing（默认）&lt;br /&gt;
  Launcher = 发射者为原点，F 轴 = 发射者 TurretFacing&lt;br /&gt;
  Target   = 目标为原点，F 轴 = 目标 → 抛射体连线&lt;br /&gt;
  Source   = AE 来源单位为原点，F 轴 = 来源 → 抛射体连线&lt;br /&gt;
  默认 FLH。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginFLH=F,L,H&lt;br /&gt;
  Origin=FLH 时的原点偏移（FLH 坐标系），基点 = 抛射体自身坐标。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.OriginNoUpdate=yes/no&lt;br /&gt;
  yes = 原点锁定在获得 AE 瞬间的坐标，不跟随 Origin 移动。&lt;br /&gt;
  no  = 每帧根据 Origin 类型动态刷新原点和 F 轴。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.Force=yes/no&lt;br /&gt;
  yes = 彻底跳过引擎轨迹计算，Vector 直接 SetLocation 控制位置。&lt;br /&gt;
  no  = 引擎轨迹正常计算，但 Vector 仍施加 MoveDisp 偏移。用No的话表现模式非常奇妙，不太可控。&lt;br /&gt;
&lt;br /&gt;
Vector.Freeze=yes/no&lt;br /&gt;
  yes = 冻结在获得 AE 时的位置，Duration 继续计时。&lt;br /&gt;
        Freeze 为最高优先级，启用时强制挪移，无视其他任何Vector。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
Circle 模式（圆周运动）&lt;br /&gt;
============================================================&lt;br /&gt;
圆心 = Origin。半径/线速/角速三选二，未设的一项自动推算。&lt;br /&gt;
半径每帧动态计算，支持增长、收缩和边界结束。&lt;br /&gt;
&lt;br /&gt;
--- 基础参数 ---&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadius=N&lt;br /&gt;
  初始圆半径（lepton）。不写代表自动取抛射体到原点的当前 XY 距离。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeed=N&lt;br /&gt;
  速率（lepton/step），沿圆周切向。正值逆时针，负值顺时针。建议用角速度，别写这个。&lt;br /&gt;
  未设时由半径和角速度自动推算：speed = radius × angleStep（弧度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAnglePerStep=N&lt;br /&gt;
  角速度（°/step），正值逆时针，负值顺时针。&lt;br /&gt;
  未设时由半径和线速度自动推算：angleStep = speed / radius（弧度转度）。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
--- 随机初始值 ---&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomRadius=Min,Max&lt;br /&gt;
  随机初始半径范围，覆盖 CircleRadius。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRandomAngle=Min,Max&lt;br /&gt;
  随机初始角速度范围（°），覆盖 CircleAnglePerStep。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
--- 半径动态 ---&lt;br /&gt;
&lt;br /&gt;
Vector.CircleRadiusGrow=N&lt;br /&gt;
  半径每步增长率（lepton/step）。正值外扩（外螺旋），负值内缩（内螺旋）。&lt;br /&gt;
  默认 0（半径恒定）。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxRadius=N&lt;br /&gt;
  半径上限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinRadius=N&lt;br /&gt;
  半径下限（lepton）。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMaxRadius=yes/no&lt;br /&gt;
  yes = 半径达到上限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes/no&lt;br /&gt;
  yes = 半径达到下限时强制结束 AE。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
--- 速度动态 ---&lt;br /&gt;
&lt;br /&gt;
Vector.CircleSpeedAcceleration=N&lt;br /&gt;
  速率每步加速度（lepton/step²）。正=加速，负=减速。建议用角速度。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxSpeed=N&lt;br /&gt;
  线速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinSpeed=N&lt;br /&gt;
  线速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
--- 角速度动态 ---&lt;br /&gt;
&lt;br /&gt;
Vector.CircleAngleAcceleration=N&lt;br /&gt;
  角速度每步加速度（°/step²）。正=加速，负=减速。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMaxAngle=N&lt;br /&gt;
  角速度上限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.CircleMinAngle=N&lt;br /&gt;
  角速度下限。0 = 不限。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
MoveTo 模式（FLH 强制位移）&lt;br /&gt;
============================================================&lt;br /&gt;
每帧在自身 FLH 坐标系下施加固定位移向量。自动 Force=yes。&lt;br /&gt;
&lt;br /&gt;
Vector.MoveTo=F,L,H&lt;br /&gt;
  FLH 坐标系位移向量（lepton/step）。&lt;br /&gt;
  F=前进方向，L=左方向，H=高度方向。&lt;br /&gt;
  默认 0,0,0（不启用 MoveTo 模式）。&lt;br /&gt;
&lt;br /&gt;
Vector.GrowRate=F,L,H&lt;br /&gt;
  每运动帧增量（lepton/step），随时间缩放 MoveTo。&lt;br /&gt;
  受 TimeStep 约束。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.AnglePerStep=N&lt;br /&gt;
  每运动帧自增角度（°/step），叠加到当前 FLH 朝向上。&lt;br /&gt;
  0 = 跟随物体当前朝向；非 0 = 位移向量持续自旋。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
--- 示例 ---&lt;br /&gt;
&lt;br /&gt;
[直线左偏移]&lt;br /&gt;
Duration=200&lt;br /&gt;
Vector.MoveTo=0,100,0&lt;br /&gt;
&lt;br /&gt;
[自旋画圆]&lt;br /&gt;
Duration=400&lt;br /&gt;
Vector.MoveTo=0,100,0&lt;br /&gt;
Vector.AnglePerStep=5&lt;br /&gt;
&lt;br /&gt;
[呼吸效果]&lt;br /&gt;
Duration=200&lt;br /&gt;
Vector.MoveTo=100,100,100&lt;br /&gt;
Vector.GrowRate=-1,-1,-1&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
Speed / ReachTarget 模式&lt;br /&gt;
============================================================&lt;br /&gt;
以 Origin + TargetFLH 定义世界坐标目标点，从当前位置追踪。&lt;br /&gt;
&lt;br /&gt;
--- 目标点 ---&lt;br /&gt;
&lt;br /&gt;
Vector.TargetFLH=F,L,H&lt;br /&gt;
  目标点（FLH 坐标系，相对 Origin）。&lt;br /&gt;
  默认 0,0,0。&lt;br /&gt;
&lt;br /&gt;
Vector.TargetOffsetF=Min,Max&lt;br /&gt;
Vector.TargetOffsetL=Min,Max&lt;br /&gt;
Vector.TargetOffsetH=Min,Max&lt;br /&gt;
  目标随机偏移范围。获得 AE 时随机一次，之后固定。&lt;br /&gt;
  默认 0,0。&lt;br /&gt;
&lt;br /&gt;
--- ReachTarget（到达） ---&lt;br /&gt;
&lt;br /&gt;
Vector.ReachTarget=yes/no&lt;br /&gt;
  yes = 根据剩余 Duration 自动调节每帧速度，保证恰好在结束前到达。&lt;br /&gt;
        Ignore: InitialSpeed / Acceleration / MaxSpeed / MinSpeed。&lt;br /&gt;
  no  = 使用 Speed 模式，恒速或加速飞行。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.ArcHeight=N&lt;br /&gt;
  抛物线弧高（lepton）。仅 ReachTarget=yes 时生效。&lt;br /&gt;
  正=先升后降（上凸弧），负=先降后升（下凹弧），0=直线。&lt;br /&gt;
  弧高叠加在起终点连线上：Z(t) = Z0 + (Z1-Z0)·t + 4·H·t·(1-t)。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
有这玩意就可以把你的Arcing抛射体全刨了&lt;br /&gt;
&lt;br /&gt;
--- Speed（恒速/加速） ---&lt;br /&gt;
&lt;br /&gt;
Vector.InitialSpeed=N&lt;br /&gt;
  初始线速度（lepton/step）。-1 = 读取单位 Speed 属性。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.RandomSpeed=Min,Max&lt;br /&gt;
  随机初始速度范围，覆盖 InitialSpeed。Max&amp;gt;Min 时生效。&lt;br /&gt;
  默认空（不随机）。&lt;br /&gt;
&lt;br /&gt;
Vector.Acceleration=N&lt;br /&gt;
  线加速度（lepton/step²）。每运动帧叠加，受 TimeStep 约束。&lt;br /&gt;
  默认 0。&lt;br /&gt;
&lt;br /&gt;
Vector.MaxSpeed=N&lt;br /&gt;
  最大速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
Vector.MinSpeed=N&lt;br /&gt;
  最小速度钳位。-1 = 不限。&lt;br /&gt;
  默认 -1。&lt;br /&gt;
&lt;br /&gt;
--- 坠落 ---&lt;br /&gt;
&lt;br /&gt;
Vector.AllowFallingDestroy=yes/no&lt;br /&gt;
  yes = AE 结束后，若单位在空中且超出指定高度，摔死。&lt;br /&gt;
  no  = 结束后自由坠落。&lt;br /&gt;
  默认 no。&lt;br /&gt;
&lt;br /&gt;
Vector.FallingDestroyHeight=N&lt;br /&gt;
  致死高度（lepton）。AllowFallingDestroy=yes 时有效。&lt;br /&gt;
  超出此高度则摔死，否则正常坠落。&lt;br /&gt;
  未设时使用当前高度对地面差值。&lt;br /&gt;
  默认使用高度差。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
Origin 参考系详细说明&lt;br /&gt;
============================================================&lt;br /&gt;
&lt;br /&gt;
四种 Origin 的实现机制：&lt;br /&gt;
&lt;br /&gt;
FLH（默认）&lt;br /&gt;
  F 轴 = 抛射体自身 Velocity 方向（Techno 用 TurretFacing）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 抛射体坐标 + OriginFLH 偏移（OnStart 时锁定快照）&lt;br /&gt;
        非 NoUpdate 时原点 = 抛射体当前坐标 + OriginFLH 偏移&lt;br /&gt;
  锁定于 OnStart 瞬间，不受武器 Target 变化影响。&lt;br /&gt;
&lt;br /&gt;
Launcher&lt;br /&gt;
  F 轴 = 发射者 TurretFacing（与 AutoWeapon.GetFLHAbsoluteCoords 一致）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 发射者坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）&lt;br /&gt;
  注意：F 轴使用的是 TurretFacing，非 Launcher→抛射体连线。&lt;br /&gt;
&lt;br /&gt;
Target&lt;br /&gt;
  F 轴 = 目标 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = 目标坐标（优先 pBullet-&amp;gt;Target，次选 Owner-&amp;gt;Target）&lt;br /&gt;
        每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置。&lt;br /&gt;
&lt;br /&gt;
Source&lt;br /&gt;
  F 轴 = AE 来源单位 → 抛射体连线（atan2 实时计算）&lt;br /&gt;
  L 轴 = F 轴逆时针 90°&lt;br /&gt;
  原点 = AE 来源单位坐标（每帧刷新，OriginNoUpdate=yes 则锁定 OnStart 瞬间位置）。&lt;br /&gt;
&lt;br /&gt;
所有模式下 F/L 轴仅使用 XY 分量计算，Z 不纳入，避免坐标系倾斜。&lt;br /&gt;
RotateFLH 旋转公式：Y 轴镜像（与引擎 FLH 一致）。&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
继承自 EffectData 的通用标签&lt;br /&gt;
============================================================&lt;br /&gt;
&lt;br /&gt;
Duration=N&lt;br /&gt;
  AE 持续时间（帧）。-1 表示永久。&lt;br /&gt;
&lt;br /&gt;
HoldDuration=yes/no&lt;br /&gt;
  yes = Duration 到期后保持 AE 不销毁。&lt;br /&gt;
  默认 yes（Duration&amp;lt;0 自动 yes）。&lt;br /&gt;
&lt;br /&gt;
Next=AE_SECTION_NAME&lt;br /&gt;
  当前 AE 结束后自动附加的下一个 AE。支持逗号分隔多个。&lt;br /&gt;
&lt;br /&gt;
AttachOnceInTechnoType=yes/no&lt;br /&gt;
  同类型单位只附加一次。&lt;br /&gt;
&lt;br /&gt;
Vector.Enable=yes/no&lt;br /&gt;
  手动启用/禁用。默认自动判断（有位移参数时自动启用）。&lt;br /&gt;
&lt;br /&gt;
============================================================&lt;br /&gt;
叠加与链式规则&lt;br /&gt;
============================================================&lt;br /&gt;
&lt;br /&gt;
- 多个带 Vector 效果的 AE 同时附加到一个对象时，每个独立计算&lt;br /&gt;
  MoveDisp，最终所有分量相加后一次 SetLocation 应用。&lt;br /&gt;
- Facing / Spin 等取参与叠加的第一个活跃 Vector 的值。&lt;br /&gt;
- 通过 Next= 构造多段运动链时，VectorCancel 延后 1 帧判定坠&lt;br /&gt;
  落，给下一段 AE 留下衔接窗口。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
测试样例INI：&lt;br /&gt;
[TestDelivery]&lt;br /&gt;
Deliver.Types=ZEP&lt;br /&gt;
&lt;br /&gt;
[ZEP]&lt;br /&gt;
Primary=LOCK&lt;br /&gt;
JumpjetHeight=1800&lt;br /&gt;
&lt;br /&gt;
[LOCK]&lt;br /&gt;
Damage=1&lt;br /&gt;
Range=50&lt;br /&gt;
ROF=300&lt;br /&gt;
Projectile=InvisibleAll&lt;br /&gt;
Warhead=LOCKWH&lt;br /&gt;
OmniFire=yes&lt;br /&gt;
&lt;br /&gt;
[LOCKWH]:[TOY]&lt;br /&gt;
AttachEffectTypes=Zidong&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[Zidong]&lt;br /&gt;
AutoWeapon.Types=HoverMissile&lt;br /&gt;
AutoWeapon.IsAttackerMark=yes&lt;br /&gt;
AutoWeapon.ReceiverAttack=no&lt;br /&gt;
Duration=50&lt;br /&gt;
&lt;br /&gt;
[HTNK]&lt;br /&gt;
;Primary=LOCK&lt;br /&gt;
&lt;br /&gt;
[120mm]&lt;br /&gt;
Range=25&lt;br /&gt;
&lt;br /&gt;
[AP]&lt;br /&gt;
AttachEffectTypes=VECTOR,SPIN&lt;br /&gt;
CellSpread=10&lt;br /&gt;
&lt;br /&gt;
[SPIN]&lt;br /&gt;
BodySpin.Speed=20&lt;br /&gt;
BodySpin.SweepPeriod=400&lt;br /&gt;
&lt;br /&gt;
[HoverMissile]&lt;br /&gt;
Burst=2&lt;br /&gt;
Damage=1&lt;br /&gt;
Range=60&lt;br /&gt;
ROF=1&lt;br /&gt;
Speed=100&lt;br /&gt;
ProjectileRange=114514&lt;br /&gt;
Projectile=AAHeatSeeker2&lt;br /&gt;
[AAHeatSeeker2]&lt;br /&gt;
AttachEffectTypes=VECTOR&lt;br /&gt;
Image=DRAGON&lt;br /&gt;
ROT=100&lt;br /&gt;
Shadow=yes&lt;br /&gt;
&lt;br /&gt;
[VECTOR]&lt;br /&gt;
Duration=35&lt;br /&gt;
Vector.TargetFLH=0,0,2500&lt;br /&gt;
Vector.Origin=FLH&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
Vector.TimeStep=1&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
Vector.ArcHeight=0&lt;br /&gt;
Next=SPREAD&lt;br /&gt;
Vector.OriginNoUpdate=yes&lt;br /&gt;
&lt;br /&gt;
[SPREAD]&lt;br /&gt;
Duration=70&lt;br /&gt;
Vector.TargetFLH=0,0,0&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
Vector.TargetOffsetH=-600,600&lt;br /&gt;
Vector.TargetOffsetF=-600,600&lt;br /&gt;
Vector.TargetOffsetL=-600,600&lt;br /&gt;
Next=GOTO&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[GOTO]&lt;br /&gt;
Duration=40&lt;br /&gt;
Vector.TargetFLH=1000,0,2500&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
Vector.ArcHeight=1000&lt;br /&gt;
AttachOnceInTechnoType=yes&lt;br /&gt;
Vector.ReachTarget=yes&lt;br /&gt;
Next=CIRCLE,MOVETO&lt;br /&gt;
Vector.TargetOffsetH=0,800&lt;br /&gt;
Vector.TargetOffsetF=0,800&lt;br /&gt;
Vector.TargetOffsetL=-100,100&lt;br /&gt;
&lt;br /&gt;
[CIRCLE]&lt;br /&gt;
Duration=4000&lt;br /&gt;
;Vector.CircleRadius=1000&lt;br /&gt;
Vector.CircleRandomAngle=5,15&lt;br /&gt;
Vector.Origin=Source&lt;br /&gt;
Vector.Force=yes&lt;br /&gt;
Vector.CircleRadiusGrow=-5&lt;br /&gt;
Vector.CircleEndOnMinRadius=yes&lt;br /&gt;
Vector.CircleMinRadius=50&lt;br /&gt;
&lt;br /&gt;
[MOVETO]&lt;br /&gt;
Duration=200&lt;br /&gt;
Vector.MoveTo=1,0,-7&lt;/div&gt;</summary>
		<author><name>Kenosis</name></author>
	</entry>
</feed>