神话时代技能

闪电风暴



闪电风暴其实是一个放置单位技能,然后让放置的单位对敌人自动攻击,采用懒散的熊攻击动作,但是普通的放置单位无法设定高度,会变成平射,这时候需要用上神话时代技能,神话时代的闪电风暴有一个strike用来放置单位,可以使用strikeheight设定放置时的高度,从而达到落雷效果。
语句:

powera.xml - 记事本
	<power name="PowerLightning" type="lightning">
		<displaynameid>09910</displaynameid>
		<rolloverid>09911</rolloverid>
		<icon>art\kohane\ability_icon\lightning</icon>
		<builduptime soundset="lightthunder">1.3</builduptime>
		<activetime>30.0</activetime>
		<rangeindicatorprotoid radius="30.0" indicatorcount="12" speed="0.15">PowerUIAOM2</rangeindicatorprotoid>
		<powerblocker>40.0f</powerblocker>
		<reveallos radius="40.0">Revealer To Player</reveallos>
		<unitaitype>HandUnitsAttack</unitaitype>
		<radius>40.0</radius>
		<accuracy>0.66</accuracy>
		<strikesoundset>LightningStrike</strikesoundset>
		<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
		<soundset type="StartSound" listenertype="IfOnScreenAll">LightThunder</soundset>
		<soundset type="EndSound" listenertype="All">GodPowerEnd</soundset>
		<playsbattlemusic/>
		<gpdamagemodel>
				<playerrelation>enemy</playerrelation>
				<basedamagepercentunit>0.60</basedamagepercentunit>
				<basedamagepercentvillager>0.50</basedamagepercentvillager>
				<basedamagepercentbuilding>0.50</basedamagepercentbuilding>
				<minhpdamageunit>2200</minhpdamageunit>
				<minhpdamagevillager>600</minhpdamagevillager>
				<minhpdamagebuilding>300</minhpdamagebuilding>
				<maxhpdamageunit>5500</maxhpdamageunit>
				<maxhpdamagevillager>800</maxhpdamagevillager>
				<maxhpdamagebuilding>800</maxhpdamagebuilding>
		</gpdamagemodel>
		<strike>lightning2</strike>
		<sparks><!--sparks protoname --></sparks>
		<groundsparks><!--groundsparks protoname --></groundsparks>
		<scorch><!--scorch protoname --></scorch>
		<cloud><!--cloud protoname --></cloud>
		<rain><!--center rain protoname --></rain>
		<fasteststriketime>0.10</fasteststriketime>
		<sloweststriketime>0.20</sloweststriketime>
		<strikeheight>80.0</strikeheight>
		<strikeminoffset>2.0</strikeminoffset>
		<strikemaxoffset>5.0</strikemaxoffset>
		<cloudbuildupendtime>1.0</cloudbuildupendtime>
		<cloudfadeoutstarttime>40.0</cloudfadeoutstarttime>
		<cloudfadeoutendtime>43.0</cloudfadeoutendtime>
		<rainbuildupstarttime>2.0</rainbuildupstarttime>
		<rainbuildupendtime>7.0</rainbuildupendtime>
		<rainfadeoutstarttime>37.0</rainfadeoutstarttime>
		<rainfadeoutendtime>38.0</rainfadeoutendtime>
		<abstractattacktargettype>unit</abstractattacktargettype>
		<abstractattacktargettype>building</abstractattacktargettype>
	</power>



protoa.xml - 记事本
	<Unit id='2088' name='Lightning'>
		<DBID>2766</DBID>
		<DisplayNameID>09912</DisplayNameID>
		<EditorNameID>09913</EditorNameID>
		<ObstructionRadiusX>0.1000</ObstructionRadiusX>
		<ObstructionRadiusZ>0.1000</ObstructionRadiusZ>
		<MaxVelocity>60.0000</MaxVelocity>
		<MovementType>air</MovementType>
		<AnimFile>kohane\Effects\lightning.xml</AnimFile>
		<Lifespan>2.0000</Lifespan>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<UnitType>Projectile</UnitType>
		<Flag>NoIdleActions</Flag>
		<Flag>NonCollideable</Flag>
		<Flag>DestroyProjectile</Flag>
		<Flag>DoNotCreateUnitGroupAutomatically</Flag>
		<Flag>NoBloodOnDeath</Flag>
		<Flag>NotSearchable</Flag>
		<Flag>Projectile</Flag>
		<Flag>NoTieToGround</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotDieAtZeroHitpoints</Flag>
		<Flag>NoHPBar</Flag>
		<Flag>NonAutoFormedUnit</Flag>
		<Flag>DontRotateObstruction</Flag>
		<Flag>AdjustPositionOnTerrainCollision</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>InvulnerableIfGaia</Flag>
		<Flag>NoUnitAI</Flag>
	</Unit>
	<Unit id='2089' name='lightning2'>
		<DBID>2767</DBID>
		<DisplayNameID>09914</DisplayNameID>
		<EditorNameID>09915</EditorNameID>
		<Lifespan>10.0000</Lifespan>
		<MaxVelocity>7.5000</MaxVelocity>
		<MaxRunVelocity>9.5000</MaxRunVelocity>
		<MovementType>air</MovementType>
		<TurnRate>18.0000</TurnRate>
		<AnimFile>kohane\Effects\lightning2.xml</AnimFile>
		<RolloverTextID>09914</RolloverTextID>
		<ShortRolloverTextID>09914</ShortRolloverTextID>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<LOS>5.0000</LOS>
		<UnitAIType>HandCombative</UnitAIType>
		<UnitType>EmbellishmentClass</UnitType>
		<UnitType>Projectile</UnitType>
		<Flag>CollidesWithProjectiles</Flag>
		<Flag>ApplyHandicapTraining</Flag>
		<Flag>CorpseDecays</Flag>
		<Flag>ShowGarrisonButton</Flag>
		<Flag>DontRotateObstruction</Flag>
		<Flag>ObscuredByUnits</Flag>
		<Flag>ConstrainOrientation</Flag>
		<Flag>OrientUnitWithGround</Flag>
		<Flag>Tracked</Flag>
		<Flag>FlyingUnit</Flag>
		<Flag>NoTieToGround</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>NoHPBar</Flag>
		<Flag>NonSolid</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Command column='1' page='10'>Stop</Command>
		<Command column='2' page='10'>Delete</Command>
		<Tactics>lightning.tactics</Tactics>
		<ProtoAction>
			<Name>LazerAttack</Name>
			<Damage>200.000000</Damage>
			<DamageType>Magic</DamageType>
			<MinRange>0.000000</MinRange>
			<MaxRange>0.200000</MaxRange>
			<ROF>0.500000</ROF>
			<DamageArea>1.000000</DamageArea>
			<Projectile>Lightning</Projectile>
		</ProtoAction>
	</Unit>



lightning.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name stringid="43319">LazerAttack</name>
		<type>Attack</type>
		<attackaction>1</attackaction>
		<rangedlogic>1</rangedlogic>
		<anim>Volley_standing_attack</anim>
		<idleanim>Idle</idleanim>
		<maxheight>0</maxheight>
		<accuracy>1.0</accuracy>
		<accuracyreductionfactor>1.5</accuracyreductionfactor>
		<aimbonus>0</aimbonus>
		<maxspread>5</maxspread>
		<spreadfactor>0.25</spreadfactor>
		<trackrating>12</trackrating>
		<unintentionaldamagemultiplier>0.7</unintentionaldamagemultiplier>
		<projectile>Lightning</projectile>
		<impacteffect>effects\impacts\cannon</impacteffect>
		<minrange>4</minrange>
		<rate type="Military">1.0 </rate>
		<rate type="Huntable">1.0 </rate>
		<rate type="Economic">1.0 </rate>
		<rate type="Guardian">1.0 </rate>
		<rate type="Herdable">1.0 </rate>
		<rate type="LogicalTypeShipsAndBuildings">1.0 </rate>
		<rate type="Tree">1.0 </rate>
		<throw>1</throw>
		<damage>13.000000</damage>
		<maxrange>0.500000</maxrange>
		<rof>3.000000</rof>
		<instantballistics>1</instantballistics>
		<targetground>1</targetground>
	</action>
	<tactic>
		Volley
		<action priority="100">LazerAttack</action>
		<attacktype>LogicalTypeVillagersAttack</attacktype>
		<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
		<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
		<runaway>1</runaway>
		<autoretarget>1</autoretarget>
		<idleanim>Idle</idleanim>
	</tactic>
</tactics>



lightning.xml - 记事本 -----kohane\Effects\lightning.xml
<animfile>
	<attachment>
		trail
		<component>
			emitter
			<assetreference type="ParticleSystem">
				<file>kohane\Effects\lightning.particle</file>
			</assetreference>
		</component>
		<anim>
			Idle
			<component>emitter</component>
		</anim>
	</attachment>
	<component>
		mesh
		<assetreference type="GrannyModel">
			<file>effects\impacts\directional_arrow</file>
		</assetreference>
		<attach a="trail" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
	</component>
	<anim>
		Idle
		<component>mesh</component>
	</anim>
</animfile>



lightning2.xml - 记事本 -----kohane\Effects\lightning2.xml
<!-- converted from XMB to XML -->

<animfile>
	<definebone>bone_launchpoint01</definebone>
	<definebone>bone_launchpoint02</definebone>
	<definebone>Bone_rain</definebone>
	<attachment>
		trail
		<component>
			emitter
			<assetreference type="ParticleSystem">
				<file>kohane\Effects\lightning.particle</file>
			</assetreference>
		</component>
		<anim>
			Idle
			<component>emitter</component>
		</anim>
	</attachment>
	<attachment>
		muzzleFlash
		<component>
			emitter
			<assetreference type="ParticleSystem">
				<file>effects\animal particles\lazerMuzzle.particle</file>
			</assetreference>
		</component>
		<anim>
			None
			<component>emitter</component>
		</anim>
	</attachment>
	<attachment>
		godRaysLeft
		<component>
			emitter
			<assetreference type="ParticleSystem">
				<file>effects\animal particles\lazerGodRays_left.particle</file>
			</assetreference>
		</component>
		<anim>
			None
			<component>emitter</component>
		</anim>
	</attachment>
	<attachment>
		godRaysRight
		<component>
			emitter
			<assetreference type="ParticleSystem">
				<file>effects\animal particles\lazerGodRays_Right.particle</file>
			</assetreference>
		</component>
		<anim>
			None
			<component>emitter</component>
		</anim>
	</attachment>
	<component>
		ModelComp
		<linksection>
			<linkoffset>.1</linkoffset>
			<linkcomponent>bear_lazer</linkcomponent>
			<linkconstraint>0</linkconstraint>
		</linksection>
		<linksection>
			<linkoffset>-1.6</linkoffset>
			<linkcomponent>Bmonkey</linkcomponent>
			<linkconstraint>1</linkconstraint>
			<linkcomponent>monkey</linkcomponent>
		</linksection>
		<assetreference type="GrannyModel">
			<file>units\animals\bear\bear_lazer2</file>
		</assetreference>
		<decal>
			<effecttype>default</effecttype>
			<texture isfakeshadow="1">shadows_selections\shadow_circle_64x64</texture>
			<selectedtexture>shadows_selections\selection_circle_64x64</selectedtexture>
			<width>1.00</width>
			<height>1.00</height>
		</decal>
	</component>
	<anim>
		Idle
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\idle</file>
		</assetreference>
		<component>ModelComp</component>
	</anim>
	<anim>
		Volley_standing_attack
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="Attack">0.00</tag>
			<tag type="SpecificSoundSet" checkvisible="1" set="lightningstrike1">0.10</tag>
		</assetreference>
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="Attack">0.00</tag>
			<tag type="SpecificSoundSet" checkvisible="1" set="lightningstrike2">0.10</tag>
		</assetreference>
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="Attack">0.00</tag>
			<tag type="SpecificSoundSet" checkvisible="1" set="lightningstrike3">0.10</tag>
		</assetreference>
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="Attack">0.00</tag>
			<tag type="SpecificSoundSet" checkvisible="1" set="lightningstrike4">0.10</tag>
		</assetreference>
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="Attack">0.00</tag>
			<tag type="SpecificSoundSet" checkvisible="1" set="lightningstrike5">0.10</tag>
		</assetreference>
		<component>ModelComp</component>
		<attach a="muzzleFlash" frombone="ATTACHPOINT" tobone="bone_launchpoint01" syncanims="0"/>
		<attach a="muzzleFlash" frombone="ATTACHPOINT" tobone="bone_launchpoint02" syncanims="0"/>
		<attach a="godRaysLeft" frombone="ATTACHPOINT" tobone="bone_launchpoint01" syncanims="0"/>
		<attach a="godRaysRight" frombone="ATTACHPOINT" tobone="bone_launchpoint02" syncanims="0"/>
	</anim>
	<anim>
		Walk
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\walk</file>
		</assetreference>
		<component>ModelComp</component>
	</anim>
	<anim>
		Bored
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\boredA</file>
		</assetreference>
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\boredB</file>
		</assetreference>
		<component>ModelComp</component>
	</anim>
	<anim>
		Death
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="SpecificSoundSet" checkvisible="1" set="RagdollImpact">0.40</tag>
		</assetreference>
		<component>ModelComp</component>
	</anim>
	<anim>
		Raze_attack
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\volley_standing_attack</file>
			<tag type="Attack">0.25</tag>
			<tag type="SpecificSoundSet" checkvisible="1" set="LazerBearShoot">0.25</tag>
		</assetreference>
		<component>ModelComp</component>
		<attach a="muzzleFlash" frombone="ATTACHPOINT" tobone="bone_launchpoint01" syncanims="0"/>
		<attach a="muzzleFlash" frombone="ATTACHPOINT" tobone="bone_launchpoint02" syncanims="0"/>
		<attach a="godRaysLeft" frombone="ATTACHPOINT" tobone="bone_launchpoint01" syncanims="0"/>
		<attach a="godRaysRight" frombone="ATTACHPOINT" tobone="bone_launchpoint02" syncanims="0"/>
	</anim>
	<anim>
		Raze_Idle
		<assetreference type="GrannyAnim">
			<file>animation_library\special\lazerbear\idle</file>
		</assetreference>
		<component>ModelComp</component>
	</anim>
</animfile>



lightning.particle - 记事本 -----kohane\Effects\lightning.particle
<!-- converted from XMB to XML -->

<particlefile>
	<emitter>
		<tiedtoemitter>0</tiedtoemitter>
		<ignorerotation>0</ignorerotation>
		<emitbymotion>0</emitbymotion>
		<loop>1</loop>
		<inheritvelocity>0</inheritvelocity>
		<useminvelocity>0</useminvelocity>
		<usemaxvelocity>0</usemaxvelocity>
		<alwaysactive>0</alwaysactive>
		<castshadows>0</castshadows>
		<syncwithattackanim>0</syncwithattackanim>
		<maxparticles>150</maxparticles>
		<appearancetype>5</appearancetype>
		<updateradius>3.000</updateradius>
		<maxparticlesvar>0.000</maxparticlesvar>
		<particlelife>0.350</particlelife>
		<particlelifevar>0.000</particlelifevar>
		<globalfadein>0.000</globalfadein>
		<globalfadeinvar>0.000</globalfadeinvar>
		<globalfadeout>0.000</globalfadeout>
		<globalfadeoutvar>0.000</globalfadeoutvar>
		<emitdistance>0.000</emitdistance>
		<emitdistancevar>0.000</emitdistancevar>
		<emissionrate>600.000</emissionrate>
		<emissionratevar>0.000</emissionratevar>
		<initialdormancy>0.000</initialdormancy>
		<initialdormancyvar>0.000</initialdormancyvar>
		<initialupdate>0.000</initialupdate>
		<initialupdatevar>0.000</initialupdatevar>
		<emissiontime>0.000</emissiontime>
		<emissiontimevar>0.000</emissiontimevar>
		<dormanttime>0.000</dormanttime>
		<dormanttimevar>0.000</dormanttimevar>
		<initialdistance>0.000</initialdistance>
		<initialdistancevar>0.000</initialdistancevar>
		<initialvelocity>0.000</initialvelocity>
		<initialvelocityvar>0.000</initialvelocityvar>
		<acceleration>0.000</acceleration>
		<accelerationvar>0.000</accelerationvar>
		<inheritinfluence>0.000</inheritinfluence>
		<inheritinfluencevar>0.000</inheritinfluencevar>
		<minvelocity>0.000</minvelocity>
		<minvelocityvar>0.000</minvelocityvar>
		<maxvelocity>0.000</maxvelocity>
		<maxvelocityvar>0.000</maxvelocityvar>
	</emitter>
	<shape>
		<startfull>0</startfull>
		<emitawayfrombias>0</emitawayfrombias>
		<usespreader>0</usespreader>
		<shapetype>0</shapetype>
		<outerxradius>1.000</outerxradius>
		<innerxradius>1.000</innerxradius>
		<outeryradius>1.000</outeryradius>
		<inneryradius>1.000</inneryradius>
		<outerzradius>1.000</outerzradius>
		<innerzradius>1.000</innerzradius>
		<centerheight>0.000</centerheight>
		<offaxis>0.000</offaxis>
		<offaxisspread>0.000</offaxisspread>
		<offplane>0.000</offplane>
		<offplanespread>0.000</offplanespread>
		<biaspointheight>0.000</biaspointheight>
		<forceriverflowemission>0</forceriverflowemission>
	</shape>
	<appearance>
		<orientbymotion>0</orientbymotion>
		<numfiles>6</numfiles>
		<numframes>0</numframes>
		<framewidth>0</framewidth>
		<frameheight>0</frameheight>
		<materialtype>1</materialtype>
		<emissive>16777215</emissive>
		<specular>16777215</specular>
		<specularexponent>0.000</specularexponent>
		<framespersecond>0.000</framespersecond>
		<animationrate>1.000</animationrate>
		<animationratevar>0.000</animationratevar>
	</appearance>
	<appearanceweights>
		<stage>
			<file>effects\projectiles\lazer01</file>
			<material>0</material>
			<weight>1.000</weight>
		</stage>
		<stage>
			<file>effects\projectiles\lazer02</file>
			<material>1</material>
			<weight>1.000</weight>
		</stage>
		<stage>
			<file>effects\projectiles\lazer03</file>
			<material>2</material>
			<weight>1.000</weight>
		</stage>
		<stage>
			<file>effects\projectiles\lazer04</file>
			<material>3</material>
			<weight>1.000</weight>
		</stage>
		<stage>
			<file>effects\projectiles\lazer05</file>
			<material>4</material>
			<weight>1.000</weight>
		</stage>
		<stage>
			<file>effects\projectiles\lazer06</file>
			<material>5</material>
			<weight>1.000</weight>
		</stage>
	</appearanceweights>
	<depthbias>
		<numfiles>0</numfiles>
		<numframes>0</numframes>
		<framewidth>0</framewidth>
		<frameheight>0</frameheight>
		<framespersecond>0.000</framespersecond>
		<zscale>1.000</zscale>
	</depthbias>
	<depthbiasweights/>
	<opacity>
		<loopingcycle>0</loopingcycle>
		<numstages>0</numstages>
		<opacity>1.000</opacity>
		<opacityvar>0.000</opacityvar>
		<cycletime>0.000</cycletime>
		<cycletimevar>0.000</cycletimevar>
	</opacity>
	<opacitystages/>
	<scale>
		<loopingcycle>1</loopingcycle>
		<numstages>2</numstages>
		<scale>1.000</scale>
		<scalevar>0.000</scalevar>
		<xscale>3.000</xscale>
		<xscalevar>0.000</xscalevar>
		<yscale>1.000</yscale>
		<yscalevar>0.000</yscalevar>
		<zscale>1.000</zscale>
		<zscalevar>0.000</zscalevar>
		<cycletime>0.050</cycletime>
		<cycletimevar>0.000</cycletimevar>
	</scale>
	<scalestages>
		<stage>
			<scale>0.010</scale>
			<scalevar>0.500</scalevar>
			<hold>0.000</hold>
			<fade>1.000</fade>
		</stage>
		<stage>
			<scale>1.000</scale>
			<scalevar>0.500</scalevar>
			<hold>0.000</hold>
			<fade>1.000</fade>
		</stage>
	</scalestages>
	<speed>
		<loopingcycle>0</loopingcycle>
		<numstages>0</numstages>
		<speed>1.000</speed>
		<speedvar>0.000</speedvar>
		<xspeed>1.000</xspeed>
		<xspeedvar>0.000</xspeedvar>
		<yspeed>1.000</yspeed>
		<yspeedvar>0.000</yspeedvar>
		<zspeed>1.000</zspeed>
		<zspeedvar>0.000</zspeedvar>
		<cycletime>0.000</cycletime>
		<cycletimevar>0.000</cycletimevar>
	</speed>
	<speedstages/>
	<intensity>
		<loopingcycle>0</loopingcycle>
		<numstages>0</numstages>
		<intensity>8.000</intensity>
		<intensityvar>0.000</intensityvar>
		<cycletime>0.000</cycletime>
		<cycletimevar>0.000</cycletimevar>
	</intensity>
	<intensitystages/>
	<color>
		<usepalette>0</usepalette>
		<loopingcycle>1</loopingcycle>
		<numpalettecolors>3</numpalettecolors>
		<numstages>3</numstages>
		<cycletime>0.200</cycletime>
		<cycletimevar>0.000</cycletimevar>
		<fworldlightinginfluence>0.000</fworldlightinginfluence>
		<color>0</color>
	</color>
	<palettecolors>
		<color>16744512</color>
		<color>16777088</color>
		<color>16697729</color>
	</palettecolors>
	<colorstages>
		<stage>
			<usepalette>0</usepalette>
			<color>8447</color>
			<hold>0.000</hold>
			<fade>1.000</fade>
		</stage>
		<stage>
			<usepalette>0</usepalette>
			<color>255</color>
			<hold>0.000</hold>
			<fade>1.000</fade>
		</stage>
		<stage>
			<usepalette>0</usepalette>
			<color>8421359</color>
			<hold>0.000</hold>
			<fade>1.000</fade>
		</stage>
	</colorstages>
	<forces>
		<randomorientation>0</randomorientation>
		<tumble>0</tumble>
		<tumblebothdirections>1</tumblebothdirections>
		<randomaxis>1</randomaxis>
		<internalgravity>0.000</internalgravity>
		<internalgravityvar>0.000</internalgravityvar>
		<internalwinddirection>0.000</internalwinddirection>
		<internalwinddirectionvar>0.000</internalwinddirectionvar>
		<internalwindspeed>0.000</internalwindspeed>
		<internalwindspeedvar>0.000</internalwindspeedvar>
		<internalwinddelay>0.000</internalwinddelay>
		<internalwinddelayvar>0.000</internalwinddelayvar>
		<externalwindinfluence>0.000</externalwindinfluence>
		<externalwindinfluencevar>0.000</externalwindinfluencevar>
		<externalwinddelay>0.000</externalwinddelay>
		<externalwinddelayvar>0.000</externalwinddelayvar>
		<riverflowinfluence>0.000</riverflowinfluence>
		<riverflowinfluencevar>0.000</riverflowinfluencevar>
		<minangularvelocity>0.000</minangularvelocity>
		<maxangularvelocity>0.000</maxangularvelocity>
		<xaxis>0.000</xaxis>
		<xaxisvar>0.000</xaxisvar>
		<yaxis>0.000</yaxis>
		<yaxisvar>0.000</yaxisvar>
		<zaxis>0.000</zaxis>
		<zaxisvar>0.000</zaxisvar>
	</forces>
	<collision>
		<numtypes>0</numtypes>
		<terraininteractiontype>-1</terraininteractiontype>
		<terrainheight>0.000</terrainheight>
		<terrainheightvar>0.000</terrainheightvar>
		<terraindampenfactor>0.000</terraindampenfactor>
	</collision>
	<collisionstages/>
	<particleevents>
		<event>
			<effectstart>0.000</effectstart>
			<effectstartvar>0.000</effectstartvar>
			<systemlinger>0</systemlinger>
			<filename>effects\projectiles\lazerbeam_sparks</filename>
		</event>
	</particleevents>
</particlefile>











地震

地震:从神话时代移植的地震有地面震动的动画,但是不能造成伤害,不过能在中心点放置一个单位,接下来你应该懂了吧?就是用践踏攻击。
你可以在中心点创建一个子弹(因为子弹看不见),然后加上践踏,范围30,这样就能对30范围造成伤害了,再加个预期生命值设定,30秒后死亡,这样地震就持续30秒。
而我则是利用自动生产单位、强制生产单位给每一个范围造成不同的伤害,离中心点越近,伤害越高,因为自动生产的子弹要占用空间,所以会从中间散开来,新生产的子弹继续生产,最后生产到地震边缘地带后,那些子弹就不设定自动生产。一波链式生产下来大概会生成200-300个子弹,然后不停造成践踏伤害;至于链式生产范围需要自己不停测试,不停调tactics生产次数以及单位数量、protoy占用体积。因为子弹看不见,所以建议先把子弹改成其他单位,例如火枪手,这样就能比较清晰看见链式生产过程了。





powera.xml - 记事本
	<power name="PowerEarthquake" type="Earthquake">
		<displaynameid>09919</displaynameid>
		<rolloverid>09918</rolloverid>
		<icon>art\kohane\ability_icon\Earthquake</icon>
		<minimapeventtime sendalertto="player">1</minimapeventtime>
		<activetime>30</activetime>
		<powerplayerrelation>Any</powerplayerrelation>
		<radius>40.0</radius>
		<abstractattacktargettype>Unit</abstractattacktargettype>
		<placement forceonmap="1">full</placement>
		<rangeindicatorprotoid radius="30.0" indicatorcount="12" speed="0.15">PowerUIAOM2</rangeindicatorprotoid>
		<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
		<soundset type="ExistSound" listenertype="IfOnScreenAll" loop="">EarthquakeExist</soundset>
		<soundset type="EndSound" listenertype="All">GodPowerEnd</soundset>
		<rumbleheight>0.75</rumbleheight>
		<rumblewidth>3.0</rumblewidth>
		<rumblespeed>15.0</rumblespeed>
		<rumblefadetime>2.0</rumblefadetime>
		<attackproto>Earthquake0</attackproto>
		<attackinterval>1.0</attackinterval>
		<attackunitaccuracy>1.0</attackunitaccuracy>
		<attackbuildingaccuracy>1.0</attackbuildingaccuracy>
		<playsbattlemusic/>
		<attacktreeaccuracy>1.0</attacktreeaccuracy>
		<powerblocker>30.0f</powerblocker>
	</power>



protoa.xml - 记事本
	<Unit id="1483" name="Earthquake0">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09926</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>air</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>2.0000</Lifespan>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake0.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>5.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>3.000000</ROF>
			<DamageCap>200.000000</DamageCap>
			<DamageArea>30.000000</DamageArea>
			<DamageBonus type="Unit">0.0800000</DamageBonus>
			<DamageBonus type="NatureClass">0.010000</DamageBonus>
			<DamageBonus type="Tree">0.010000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="Earthquake1">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09931</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>land</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>28.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>40.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake1.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>7.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>30.000000</DamageArea>
			<DamageBonus type="Unit">0.100000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.010000</DamageBonus>
			<DamageBonus type="Guardian">10.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="Earthquake2">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09930</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>land</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>27.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake2.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>6.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>20.000000</DamageArea>
			<DamageBonus type="Unit">0.100000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.050000</DamageBonus>
			<DamageBonus type="Guardian">20.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="Earthquake3">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09929</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>land</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>26.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake3.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>5.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>15.000000</DamageArea>
			<DamageBonus type="Unit">0.100000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.050000</DamageBonus>
			<DamageBonus type="Guardian">20.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="Earthquake4">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09928</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>land</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>25.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake4.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>6.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>10.000000</DamageArea>
			<DamageBonus type="Unit">0.150000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.050000</DamageBonus>
			<DamageBonus type="Guardian">20.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="Earthquake5">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09927</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>land</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>24.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake5.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>5.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>5.000000</DamageArea>
			<DamageBonus type="Unit">0.10000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.020000</DamageBonus>
			<DamageBonus type="Guardian">40.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="Earthquake6">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09925</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>1.0000</MaxVelocity>
		<MovementType>air</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>1.0000</InitialHitpoints>
		<MaxHitpoints>1.0000</MaxHitpoints>
		<Lifespan>2.0000</Lifespan>
		<TrainPoints>5.0000</TrainPoints>
		<LOS>0.0000</LOS>
		<BuildLimit>80</BuildLimit>
		<UnitType>EmbellishmentClass</UnitType>
		<UnitType>Unattackable</UnitType>
		<Flag>Wanders</Flag>
		<Flag>ForceToGaia</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
	</Unit>
	<Unit id="1483" name="EarthquakeW1">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09931</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>water</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>28.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>40.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake1.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>7.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>30.000000</DamageArea>
			<DamageBonus type="Unit">0.100000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.010000</DamageBonus>
			<DamageBonus type="Guardian">10.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="EarthquakeW2">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09930</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>water</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>27.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake2.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>6.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>20.000000</DamageArea>
			<DamageBonus type="Unit">0.100000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.050000</DamageBonus>
			<DamageBonus type="Guardian">20.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="EarthquakeW3">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09929</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>water</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>26.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake3.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>7.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>15.000000</DamageArea>
			<DamageBonus type="Unit">0.100000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.050000</DamageBonus>
			<DamageBonus type="Guardian">20.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="EarthquakeW4">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09928</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>water</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>25.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake4.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>6.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>10.000000</DamageArea>
			<DamageBonus type="Unit">0.150000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.050000</DamageBonus>
			<DamageBonus type="Guardian">20.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>
	<Unit id="1483" name="EarthquakeW5">
		<DBID>20</DBID>
		<DisplayNameID>09932</DisplayNameID>
		<EditorNameID>09927</EditorNameID>
		<ObstructionRadiusX>0.9900</ObstructionRadiusX>
		<ObstructionRadiusZ>0.9900</ObstructionRadiusZ>
		<MaxVelocity>13.0000</MaxVelocity>
		<MovementType>water</MovementType>
		<AnimFile>kohane\Effects\Earthquake.xml</AnimFile>
		<InitialHitpoints>100.0000</InitialHitpoints>
		<MaxHitpoints>100.0000</MaxHitpoints>
		<Lifespan>24.0000</Lifespan>
		<TrainPoints>0.1000</TrainPoints>
		<LOS>0.0000</LOS>
		<UnitType>EmbellishmentClass</UnitType>
		<Flag>Wanders</Flag>
		<Flag>PlaceAnywhere</Flag>
		<Flag>Invulnerable</Flag>
		<Flag>NotSelectable</Flag>
		<Flag>DoNotShowOnMiniMap</Flag>
		<Tactics>Earthquake5.tactics</Tactics>
		<ProtoAction>
			<Name>TrampleHandAttack</Name>
			<Damage>5.000000</Damage>
			<DamageType>Hand</DamageType>
			<ROF>1.000000</ROF>
			<DamageArea>5.000000</DamageArea>
			<DamageBonus type="Unit">0.10000</DamageBonus>
			<DamageBonus type="AbstractArtillery">1.5000000</DamageBonus>
			<DamageBonus type="AbstractCavalry">2.5000000</DamageBonus>
			<DamageBonus type="NatureClass">0.020000</DamageBonus>
			<DamageBonus type="Guardian">40.000000</DamageBonus>
			<DamageBonus type="Herdable">8.000000</DamageBonus>
		</ProtoAction>
	</Unit>



Earthquake0.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name>SpawnEarthquake</name>
		<type>Maintain</type>
		<rate type="Earthquake1">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquakeW</name>
		<type>Maintain</type>
		<rate type="EarthquakeW1">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake2</name>
		<type>Maintain</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<persistent>1</persistent>
	</action>
	<action>
		<name stringid="38142">TrampleHandAttack</name>
		<type>TruckAttack</type>
		<maxrange>25</maxrange>
		<rate type="All">1.0 </rate>
		<attackaction>1</attackaction>
		<handlogic>1</handlogic>
		<speedboost>1</speedboost>
		<anim>Idle</anim>
		<idleanim>Idle</idleanim>
		<damage>6.5</damage>
		<rof>1.0</rof>
		<targetspeedboost>1</targetspeedboost>
		<basedamagecap>1</basedamagecap>
		<persistent>1</persistent>
		<projectile>InvisibleProjectileNoTracer</projectile>
		<throw>1</throw>
	</action>
	<action>
		<name>SpawnEarthquake3</name>
		<type>Spawn</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<tactic>
		Normal
		<action>SpawnEarthquake</action>
		<action>SpawnEarthquake2</action>
		<action>SpawnEarthquake3</action>
		<action>SpawnEarthquakeW</action>
		<action>TrampleHandAttack</action>
	</tactic>
</tactics>



Earthquake1.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name stringid="38142">TrampleHandAttack</name>
		<type>TruckAttack</type>
		<maxrange>12</maxrange>
		<rate type="All">1.0 </rate>
		<attackaction>1</attackaction>
		<handlogic>1</handlogic>
		<speedboost>1</speedboost>
		<anim>Idle</anim>
		<idleanim>Idle</idleanim>
		<damage>6.5</damage>
		<rof>1.0</rof>
		<targetspeedboost>1</targetspeedboost>
		<basedamagecap>1</basedamagecap>
		<persistent>1</persistent>
		<projectile>InvisibleProjectileNoTracer</projectile>
		<throw>1</throw>
	</action>
	<action>
		<name>SpawnEarthquake</name>
		<type>Maintain</type>
		<rate type="Earthquake2">5.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquakeW</name>
		<type>Maintain</type>
		<rate type="EarthquakeW2">5.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake2</name>
		<type>Maintain</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake3</name>
		<type>Spawn</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<tactic>
		Normal
		<action>SpawnEarthquake</action>
		<action>SpawnEarthquake2</action>
		<action>SpawnEarthquake3</action>
		<action>SpawnEarthquakeW</action>
		<action>TrampleHandAttack</action>
	</tactic>
</tactics>



Earthquake2.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name stringid="38142">TrampleHandAttack</name>
		<type>TruckAttack</type>
		<maxrange>3</maxrange>
		<rate type="All">1.0 </rate>
		<attackaction>1</attackaction>
		<handlogic>1</handlogic>
		<speedboost>1</speedboost>
		<anim>Idle</anim>
		<idleanim>Idle</idleanim>
		<damage>6.5</damage>
		<rof>1.0</rof>
		<targetspeedboost>1</targetspeedboost>
		<basedamagecap>1</basedamagecap>
		<persistent>1</persistent>
		<projectile>InvisibleProjectileNoTracer</projectile>
		<throw>1</throw>
	</action>
	<action>
		<name>SpawnEarthquake</name>
		<type>Maintain</type>
		<rate type="Earthquake3">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquakeW</name>
		<type>Maintain</type>
		<rate type="EarthquakeW3">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake2</name>
		<type>Maintain</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake3</name>
		<type>Spawn</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<tactic>
		Normal
		<action>SpawnEarthquake</action>
		<action>SpawnEarthquake2</action>
		<action>SpawnEarthquake3</action>
		<action>SpawnEarthquakeW</action>
		<action>TrampleHandAttack</action>
	</tactic>
</tactics>



Earthquake3.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name stringid="38142">TrampleHandAttack</name>
		<type>TruckAttack</type>
		<maxrange>3</maxrange>
		<rate type="All">1.0 </rate>
		<attackaction>1</attackaction>
		<handlogic>1</handlogic>
		<speedboost>1</speedboost>
		<anim>Idle</anim>
		<idleanim>Idle</idleanim>
		<damage>6.5</damage>
		<rof>1.0</rof>
		<targetspeedboost>1</targetspeedboost>
		<basedamagecap>1</basedamagecap>
		<persistent>1</persistent>
		<projectile>InvisibleProjectileNoTracer</projectile>
		<throw>1</throw>
	</action>
	<action>
		<name>SpawnEarthquake</name>
		<type>Maintain</type>
		<rate type="Earthquake4">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquakeW</name>
		<type>Maintain</type>
		<rate type="EarthquakeW4">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake2</name>
		<type>Maintain</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake3</name>
		<type>Spawn</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<tactic>
		Normal
		<action>SpawnEarthquake</action>
		<action>SpawnEarthquake2</action>
		<action>SpawnEarthquake3</action>
		<action>SpawnEarthquakeW</action>
		<action>TrampleHandAttack</action>
	</tactic>
</tactics>



Earthquake4.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name stringid="38142">TrampleHandAttack</name>
		<type>TruckAttack</type>
		<maxrange>3</maxrange>
		<rate type="All">1.0 </rate>
		<attackaction>1</attackaction>
		<handlogic>1</handlogic>
		<speedboost>1</speedboost>
		<anim>Idle</anim>
		<idleanim>Idle</idleanim>
		<damage>6.5</damage>
		<rof>1.0</rof>
		<targetspeedboost>1</targetspeedboost>
		<basedamagecap>1</basedamagecap>
		<persistent>1</persistent>
		<projectile>InvisibleProjectileNoTracer</projectile>
		<throw>1</throw>
	</action>
	<action>
		<name>SpawnEarthquake</name>
		<type>Maintain</type>
		<rate type="Earthquake5">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquakeW</name>
		<type>Maintain</type>
		<rate type="EarthquakeW5">10.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake2</name>
		<type>Maintain</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake3</name>
		<type>Spawn</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<tactic>
		Normal
		<action>SpawnEarthquake</action>
		<action>SpawnEarthquake2</action>
		<action>SpawnEarthquake3</action>
		<action>SpawnEarthquakeW</action>
		<action>TrampleHandAttack</action>
	</tactic>
</tactics>



Earthquake5.tactics - 记事本
<?xml version="1.0" encoding="utf-8"?>

<tactics>
	<action>
		<name stringid="38142">TrampleHandAttack</name>
		<type>TruckAttack</type>
		<maxrange>3</maxrange>
		<rate type="All">1.0 </rate>
		<attackaction>1</attackaction>
		<handlogic>1</handlogic>
		<speedboost>1</speedboost>
		<anim>Idle</anim>
		<idleanim>Idle</idleanim>
		<damage>6.5</damage>
		<rof>1.0</rof>
		<targetspeedboost>1</targetspeedboost>
		<basedamagecap>1</basedamagecap>
		<persistent>1</persistent>
		<projectile>InvisibleProjectileNoTracer</projectile>
		<throw>1</throw>
	</action>
	<action>
		<name>SpawnEarthquake3</name>
		<type>Spawn</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<singleuse>1</singleuse>
		<persistent>1</persistent>
	</action>
	<action>
		<name>SpawnEarthquake</name>
		<type>Maintain</type>
		<rate type="Earthquake6">1.0</rate>
		<active>1</active>
		<persistent>1</persistent>
	</action>
	<tactic>
		Normal
		<action>SpawnEarthquake</action>
		<action>SpawnEarthquake2</action>
		<action>TrampleHandAttack</action>
	</tactic>
</tactics>



Earthquake.xml - 记事本 -----kohane\Effects\Earthquake.xml
<!-- converted from XMB to XML -->

<animfile>
	<attachment>
		attachment_musket_ball_trail
		<component>
			musket_ball_trail
			<assetreference type="ParticleSystem">
				<file>effects\projectiles\musket_ball_trail.particle</file>
			</assetreference>
		</component>
		<anim>
			Idle
			<component>musket_ball_trail</component>
		</anim>
	</attachment>
	<component>
		ball
		<assetreference type="GrannyModel">
			<file>effects\impacts\directional_arrow</file>
		</assetreference>
		<attach a="attachment_musket_ball_trail" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
				<tag type="CameraShake" force="1.50" duration="4.0">0.0</tag>
	</component>
	<anim>
		Idle
		<component>ball</component>
	</anim>
</animfile>















天空冥界之门




天空之门传送门单位,在神话时代好像是叫冥界之门,但在帝国3里面被我改成天空之门了,单位驻守到建筑物后,会在另一座建筑释放出来,下面是语句:
placementprotounitid是放置单位时的形态,inportal是放置第一个单位,outportal是第二个单位,三个都填单位调用名就可以了。
单位驻守在inportal放置的单位会从outportal放置的单位释放出来,反过来单位驻守在outportal放置的单位会从inportal放置的单位释放出来。
不可以缺少的两个条件:1.能驻守单位,例如哨所、堡垒;2.技能持续时间>1,因为持续时间过了后,放置的单位会被摧毁,两个单位其中一个单位被摧毁后,另一个单位也会跟着死亡。(<activetime>X</activetime>改成-1后就不会随着技能结束而摧毁)

powera.xml - 记事本
	<power name="PowerSkyPassage" type="teleport">
		<displaynameid>09921</displaynameid>
		<rolloverid>09920</rolloverid>
		<activetime>-1</activetime>
		<icon>art\kohane\ability_icon\SkyPassage</icon>
		<minimapeventtime>10.0</minimapeventtime>
		<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
		<placement forceonmap="1">LOSDontCare</placement>
		<dualpowermindistance>30.0</dualpowermindistance>
		<placementprotounitid>SkyPassage</placementprotounitid>
		<inportal>SkyPassage</inportal>
		<outportal>SkyPassage</outportal>
	</power>

















火焰武器

下面这个技能除了能改良科技没有其他特色,你没看错,就是可以改良科技,<tech>Techname</tech>设定你要改良的科技,不过这个技能改良的科技不会自动复原,多次使用技能必须要等上一次技能结束后才会改良一次科技,比如你设定技能持续时间60秒,冷却时间1秒,释放本技能后,无论你在这60秒内释放本技能多少次都不会生效,要等60秒之后释放技能才会生效一次。
powera.xml - 记事本
	<power name="FlamingWeapons" type="FlamingWeapons">
		<placement forceonmap="1" matchtype="LogicalTypeValidFlamingWeaponsTarget">unit</placement>
		<activetime>60</activetime>
		<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
		<soundset type="StartSound" listenertype="IfOnScreenAll">FlamingWeapons</soundset>
		<soundset type="EndSound" listenertype="All">GodPowerEnd</soundset>
		<abstractattacktargettype>LogicalTypeValidFlamingWeaponsTarget</abstractattacktargettype>
		<powerplayerrelation>player</powerplayerrelation>
		<playsbattlemusic/>
		<tech>Techname</tech>
		<icon>god power flaming weapons icon</icon>
		<usedicon>god power flaming weapons icon done</usedicon>
	</power>


<!--这个原本是神话时代的火焰武器,我不清楚帝国时代3是否还能达到那种效果,也不清楚那些语句是否还能使用,如果你有兴趣的话自己研究吧:
神话时代原语句:-->
<?xml version="1.0" encoding="utf-8"?>

<power name="FlamingWeapons" type="flamingweapons" techname="flaming weapons">
	<placement forceonmap="1" matchtype="LogicalTypeValidFlamingWeaponsTarget">unit</placement>
	<activetime>60</activetime>
	<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
	<soundset type="StartSound" listenertype="IfOnScreenAll">FlamingWeapons</soundset>
	<soundset type="EndSound" listenertype="All">GodPowerEnd</soundset>
	<abstractattacktargettype>LogicalTypeValidFlamingWeaponsTarget</abstractattacktargettype>
	<powerplayerrelation>player</powerplayerrelation>
	<playsbattlemusic/>
	<tech>Flaming Weapons Active</tech>
	<particlesfxnode>
		<unittype>Jarl</unittype>
		<sfx>SFX A Flaming Sword</sfx>
	</particlesfxnode>
	<particlesfxnode>
		<unittype>Hero Norse</unittype>
		<sfx>SFX A Flaming Spear</sfx>
	</particlesfxnode>
	<particlesfxnode>
		<unittype>Hero Ragnorok</unittype>
		<sfx>SFX A Flaming Spear</sfx>
	</particlesfxnode>
	<particlesfxnode>
		<unittype>Portable Ram</unittype>
		<sfx>SFX A Flaming Portable Ram</sfx>
	</particlesfxnode>
	<particlesfxnode>
		<unittype>Prodromos</unittype>
		<sfx>SFX A Flaming Sword</sfx>
	</particlesfxnode>
	<icon>god power flaming weapons icon</icon>
	<usedicon>god power flaming weapons icon done</usedicon>
</power>







转换单位

转换单位技能加一个无属性标签能将单位变成自己的单位。这个在神话时代里面属于废案内容,这个神话时代废案在帝国3仍然能生效。
<ConvertUnitsToGodPowerPlayer/>将单位转化成释放技能的玩家

<ConvertUsingMinMax minswapamount="50" maxswapamount="70"/>最小、最大转换限制(我不知道是哪个语句生效,有一个似乎是帝国3新增的)
<SwapUsingMinMax minswapamount="50" maxswapamount="70"/>最小、最大转换限制

<retainhitpointratio/>保留原有生命值。

powera.xml - 记事本
	<power name="PowerMagicChaos" type="swapunit">
		<displaynameid>09894</displaynameid>
		<rolloverid>09895</rolloverid>
		<icon>art\Age of Mythology\Power\chaos</icon>
		<minimapeventtime sendalertto="player">1</minimapeventtime>
		<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
		<activetime>70</activetime>
		<radius>30.0</radius>
		<placement forceonmap="1" enemy="" allowgaia="">Unit</placement>
		<placement forceonmap="1">full</placement>
		<rangeindicatorprotoid radius="30.0" indicatorcount="12" speed="0.15">PowerUIAOM</rangeindicatorprotoid>
		<playsbattlemusic/>
		<playbirthaftermutate/>
		<retainhitpointratio/>
		<abstracttype swapto="SPCFalcon">SPCFalcon</abstracttype>
		<abstracttype swapto="SPCPropClubman">SPCPropClubman</abstracttype>
		<abstracttype swapto="SPCPropRifleman">SPCPropRifleman</abstracttype>
		<abstracttype swapto="IGCFishingBoat">IGCFishingBoat</abstracttype>
		<abstracttype swapto="IGCGreatBombard">IGCGreatBombard</abstracttype>
		<abstracttype swapto="BankWagon">BankWagon</abstracttype>
		<abstracttype swapto="Settler">Settler</abstracttype>
		<abstracttype swapto="Pikeman">Pikeman</abstracttype>
		<abstracttype swapto="Musketeer">Musketeer</abstracttype>
		<abstracttype swapto="Caravel">Caravel</abstracttype>
		<abstracttype swapto="Sheep">Sheep</abstracttype>
		<abstracttype swapto="Rodelero">Rodelero</abstracttype>
		<abstracttype swapto="Crossbowman">Crossbowman</abstracttype>
		<abstracttype swapto="Uhlan">Uhlan</abstracttype>
		<abstracttype swapto="Cannon">Cannon</abstracttype>
		<abstracttype swapto="Halberdier">Halberdier</abstracttype>
		<abstracttype swapto="CavalryArcher">CavalryArcher</abstracttype>
		<abstracttype swapto="Hussar">Hussar</abstracttype>
		<abstracttype swapto="Culverin">Culverin</abstracttype>
		<abstracttype swapto="Falconet">Falconet</abstracttype>
		<abstracttype swapto="Priest">Priest</abstracttype>
		<abstracttype swapto="Skirmisher">Skirmisher</abstracttype>
		<abstracttype swapto="Grenadier">Grenadier</abstracttype>
		<abstracttype swapto="Dragoon">Dragoon</abstracttype>
		<abstracttype swapto="FishingBoat">FishingBoat</abstracttype>
		<abstracttype swapto="Envoy">Envoy</abstracttype>
		<abstracttype swapto="Mortar">Mortar</abstracttype>
		<abstracttype swapto="Longbowman">Longbowman</abstracttype>
		<abstracttype swapto="Cuirassier">Cuirassier</abstracttype>
		<abstracttype swapto="NatJaguarWarrior">NatJaguarWarrior</abstracttype>
		<abstracttype swapto="NatEagleWarrior">NatEagleWarrior</abstracttype>
		<abstracttype swapto="NatHorseArcher">NatHorseArcher</abstracttype>
		<abstracttype swapto="NatSharktoothBowman">NatSharktoothBowman</abstracttype>
		<abstracttype swapto="NatTomahawk">NatTomahawk</abstracttype>
		<abstracttype swapto="Cossack">Cossack</abstracttype>
		<abstracttype swapto="Strelet">Strelet</abstracttype>
		<abstracttype swapto="NatMantlet">NatMantlet</abstracttype>
		<abstracttype swapto="Canoe">Canoe</abstracttype>
		<abstracttype swapto="Spahi">Spahi</abstracttype>
		<abstracttype swapto="Janissary">Janissary</abstracttype>
		<abstracttype swapto="GreatBombard">GreatBombard</abstracttype>
		<abstracttype swapto="Minuteman">Minuteman</abstracttype>
		<abstracttype swapto="Dopplesoldner">Dopplesoldner</abstracttype>
		<abstracttype swapto="OrganGun">OrganGun</abstracttype>
		<abstracttype swapto="Ruyter">Ruyter</abstracttype>
		<abstracttype swapto="Cacadore">Cacadore</abstracttype>
		<abstracttype swapto="Rocket">Rocket</abstracttype>
		<abstracttype swapto="WarWagon">WarWagon</abstracttype>
		<abstracttype swapto="Oprichnik">Oprichnik</abstracttype>
		<abstracttype swapto="Lancer">Lancer</abstracttype>
		<abstracttype swapto="NatBlowgunWarrior">NatBlowgunWarrior</abstracttype>
		<abstracttype swapto="NatRifleman">NatRifleman</abstracttype>
		<abstracttype swapto="NatTracker">NatTracker</abstracttype>
		<abstracttype swapto="NatHuaminca">NatHuaminca</abstracttype>
		<abstracttype swapto="NatBolasWarrior">NatBolasWarrior</abstracttype>
		<abstracttype swapto="NatHolcanSpearman">NatHolcanSpearman</abstracttype>
		<abstracttype swapto="NatClubman">NatClubman</abstracttype>
		<abstracttype swapto="NatAxeRider">NatAxeRider</abstracttype>
		<abstracttype swapto="NatBlackwoodArcher">NatBlackwoodArcher</abstracttype>
		<abstracttype swapto="MercLandsknecht">MercLandsknecht</abstracttype>
		<abstracttype swapto="MercSwissPikeman">MercSwissPikeman</abstracttype>
		<abstracttype swapto="NativeVillager">NativeVillager</abstracttype>
		<abstracttype swapto="GrizzlyBear">GrizzlyBear</abstracttype>
		<abstracttype swapto="MercHighlander">MercHighlander</abstracttype>
		<abstracttype swapto="PetBear">PetBear</abstracttype>
		<abstracttype swapto="PolarBear">PolarBear</abstracttype>
		<abstracttype swapto="Coureur">Coureur</abstracttype>
		<abstracttype swapto="WarDog">WarDog</abstracttype>
		<abstracttype swapto="MercMameluke">MercMameluke</abstracttype>
		<abstracttype swapto="MercStradiot">MercStradiot</abstracttype>
		<abstracttype swapto="MercBlackRider">MercBlackRider</abstracttype>
		<abstracttype swapto="MercManchu">MercManchu</abstracttype>
		<abstracttype swapto="MercRonin">MercRonin</abstracttype>
		<abstracttype swapto="MercJaeger">MercJaeger</abstracttype>
		<abstracttype swapto="MercHackapell">MercHackapell</abstracttype>
		<abstracttype swapto="Missionary">Missionary</abstracttype>
		<abstracttype swapto="Jaguar">Jaguar</abstracttype>
		<abstracttype swapto="PetJaguar">PetJaguar</abstracttype>
		<abstracttype swapto="BlackBear">BlackBear</abstracttype>
		<abstracttype swapto="Surgeon">Surgeon</abstracttype>
		<abstracttype swapto="Imam">Imam</abstracttype>
		<abstracttype swapto="Cougar">Cougar</abstracttype>
		<abstracttype swapto="WhiteJaguar">WhiteJaguar</abstracttype>
		<abstracttype swapto="MercBarbaryCorsair">MercBarbaryCorsair</abstracttype>
		<abstracttype swapto="CoveredWagon">CoveredWagon</abstracttype>
		<abstracttype swapto="Frigate">Frigate</abstracttype>
		<abstracttype swapto="Fluyt">Fluyt</abstracttype>
		<abstracttype swapto="Galleon">Galleon</abstracttype>
		<abstracttype swapto="Galley">Galley</abstracttype>
		<abstracttype swapto="Privateer">Privateer</abstracttype>
		<abstracttype swapto="Wolf">Wolf</abstracttype>
		<abstracttype swapto="Horse">Horse</abstracttype>
		<abstracttype swapto="Boneguard">Boneguard</abstracttype>
		<abstracttype swapto="WhiteWolf">WhiteWolf</abstracttype>
		<abstracttype swapto="PetCougar">PetCougar</abstracttype>
		<abstracttype swapto="PetGrizzly">PetGrizzly</abstracttype>
		<abstracttype swapto="PetPolarBear">PetPolarBear</abstracttype>
		<abstracttype swapto="PetWolf">PetWolf</abstracttype>
		<abstracttype swapto="Coyote">Coyote</abstracttype>
		<abstracttype swapto="PetCoyote">PetCoyote</abstracttype>
		<abstracttype swapto="OutlawRider">OutlawRider</abstracttype>
		<abstracttype swapto="OutlawBlowgunner">OutlawBlowgunner</abstracttype>
		<abstracttype swapto="OutlawRifleman">OutlawRifleman</abstracttype>
		<abstracttype swapto="HotAirBalloon">HotAirBalloon</abstracttype>
		<abstracttype swapto="Alligator">Alligator</abstracttype>
		<abstracttype swapto="Pirate">Pirate</abstracttype>
		<abstracttype swapto="NativeScout">NativeScout</abstracttype>
		<abstracttype swapto="Drummer">Drummer</abstracttype>
		<abstracttype swapto="FlagBearerDefault">FlagBearerDefault</abstracttype>
		<abstracttype swapto="NatAxeRiderDogSoldier">NatAxeRiderDogSoldier</abstracttype>
		<abstracttype swapto="SettlerWagon">SettlerWagon</abstracttype>
		<abstracttype swapto="Monitor">Monitor</abstracttype>
		<abstracttype swapto="Miner">Miner</abstracttype>
		<abstracttype swapto="RussianCannon">RussianCannon</abstracttype>
		<abstracttype swapto="AbusGun">AbusGun</abstracttype>
		<abstracttype swapto="CoureurCree">CoureurCree</abstracttype>
		<abstracttype swapto="Learicorn">Learicorn</abstracttype>
		<abstracttype swapto="SPCWhiteBuffalo">SPCWhiteBuffalo</abstracttype>
		<abstracttype swapto="SPCWagonFood">SPCWagonFood</abstracttype>
		<abstracttype swapto="SPCWagonWood">SPCWagonWood</abstracttype>
		<abstracttype swapto="SPCWagonGold">SPCWagonGold</abstracttype>
		<abstracttype swapto="SPCWagonAll">SPCWagonAll</abstracttype>
		<abstracttype swapto="SPCCherokeeArcher">SPCCherokeeArcher</abstracttype>
		<abstracttype swapto="SPCCherokeeHorseArcher">SPCCherokeeHorseArcher</abstracttype>
		<abstracttype swapto="SPCFrigate">SPCFrigate</abstracttype>
		<abstracttype swapto="SPCHoopThrowers">SPCHoopThrowers</abstracttype>
		<abstracttype swapto="SPCFireship">SPCFireship</abstracttype>
		<abstracttype swapto="BoneguardAge2">BoneguardAge2</abstracttype>
		<abstracttype swapto="SPCTreasureShip">SPCTreasureShip</abstracttype>
		<abstracttype swapto="NatClubmanLoyal">NatClubmanLoyal</abstracttype>
		<abstracttype swapto="NatBlowgunAmbusher">NatBlowgunAmbusher</abstracttype>
		<abstracttype swapto="SPCDinghy">SPCDinghy</abstracttype>
		<abstracttype swapto="SPCBuccaneer">SPCBuccaneer</abstracttype>
		<abstracttype swapto="SPCRailroadWorker">SPCRailroadWorker</abstracttype>
		<abstracttype swapto="OutlawPistol">OutlawPistol</abstracttype>
		<abstracttype swapto="SPCNativeBoy">SPCNativeBoy</abstracttype>
		<abstracttype swapto="SPCTreasureShip2">SPCTreasureShip2</abstracttype>
		<abstracttype swapto="NatMedicineMan">NatMedicineMan</abstracttype>
		<abstracttype swapto="SPCBucCaptain">SPCBucCaptain</abstracttype>
		<abstracttype swapto="OutlawMusketeer">OutlawMusketeer</abstracttype>
		<abstracttype swapto="OutpostWagon">OutpostWagon</abstracttype>
		<abstracttype swapto="FortWagon">FortWagon</abstracttype>
		<abstracttype swapto="FactoryWagon">FactoryWagon</abstracttype>
		<abstracttype swapto="SPCFierceCougar">SPCFierceCougar</abstracttype>
		<abstracttype swapto="GeorgeCrushington">GeorgeCrushington</abstracttype>
		<abstracttype swapto="Lazerbear">Lazerbear</abstracttype>
		<abstracttype swapto="Fluffy">Fluffy</abstracttype>
		<abstracttype swapto="MonsterTruckA">MonsterTruckA</abstracttype>
		<abstracttype swapto="MonsterTruckT">MonsterTruckT</abstracttype>
		<abstracttype swapto="MediocreBombard">MediocreBombard</abstracttype>
		<abstracttype swapto="FlyingPurpleTapir">FlyingPurpleTapir</abstracttype>
		<abstracttype swapto="xpTomahawk">xpTomahawk</abstracttype>
		<abstracttype swapto="xpAenna">xpAenna</abstracttype>
		<abstracttype swapto="xpMusketWarrior">xpMusketWarrior</abstracttype>
		<abstracttype swapto="xpHorseman">xpHorseman</abstracttype>
		<abstracttype swapto="xpMusketRider">xpMusketRider</abstracttype>
		<abstracttype swapto="xpRam">xpRam</abstracttype>
		<abstracttype swapto="xpMantlet">xpMantlet</abstracttype>
		<abstracttype swapto="xpLightCannon">xpLightCannon</abstracttype>
		<abstracttype swapto="xpWarCanoe">xpWarCanoe</abstracttype>
		<abstracttype swapto="SettlerNative">SettlerNative</abstracttype>
		<abstracttype swapto="NatLightningWarrior">NatLightningWarrior</abstracttype>
		<abstracttype swapto="WarHutTravois">WarHutTravois</abstracttype>
		<abstracttype swapto="FarmTravois">FarmTravois</abstracttype>
		<abstracttype swapto="xpMedicineMan">xpMedicineMan</abstracttype>
		<abstracttype swapto="NatKlamathRifleman">NatKlamathRifleman</abstracttype>
		<abstracttype swapto="MercElmeti">MercElmeti</abstracttype>
		<abstracttype swapto="NatCheyenneRider">NatCheyenneRider</abstracttype>
		<abstracttype swapto="NatHuronMantlet">NatHuronMantlet</abstracttype>
		<abstracttype swapto="MercNinja">MercNinja</abstracttype>
		<abstracttype swapto="NatApacheCavalry">NatApacheCavalry</abstracttype>
		<abstracttype swapto="NatNavajoRifleman">NatNavajoRifleman</abstracttype>
		<abstracttype swapto="Seal">Seal</abstracttype>
		<abstracttype swapto="xpWarClub">xpWarClub</abstracttype>
		<abstracttype swapto="xpWarBow">xpWarBow</abstracttype>
		<abstracttype swapto="xpRifleRider">xpRifleRider</abstracttype>
		<abstracttype swapto="xpCoyoteMan">xpCoyoteMan</abstracttype>
		<abstracttype swapto="xpMacehualtin">xpMacehualtin</abstracttype>
		<abstracttype swapto="xpWarRifle">xpWarRifle</abstracttype>
		<abstracttype swapto="xpTlalocCanoe">xpTlalocCanoe</abstracttype>
		<abstracttype swapto="xpEagleKnight">xpEagleKnight</abstracttype>
		<abstracttype swapto="xpJaguarKnight">xpJaguarKnight</abstracttype>
		<abstracttype swapto="xpArrowKnight">xpArrowKnight</abstracttype>
		<abstracttype swapto="xpPumaMan">xpPumaMan</abstracttype>
		<abstracttype swapto="xpSkullKnight">xpSkullKnight</abstracttype>
		<abstracttype swapto="NoblesHutTravois">NoblesHutTravois</abstracttype>
		<abstracttype swapto="MercFusilier">MercFusilier</abstracttype>
		<abstracttype swapto="xpColonialMilitia">xpColonialMilitia</abstracttype>
		<abstracttype swapto="xpAxeRider">xpAxeRider</abstracttype>
		<abstracttype swapto="xpDogSoldier">xpDogSoldier</abstracttype>
		<abstracttype swapto="xpCoupRider">xpCoupRider</abstracttype>
		<abstracttype swapto="xpPetard">xpPetard</abstracttype>
		<abstracttype swapto="NatMapucheClubman">NatMapucheClubman</abstracttype>
		<abstracttype swapto="xpGatlingGun">xpGatlingGun</abstracttype>
		<abstracttype swapto="xpSPCColonialMilitia">xpSPCColonialMilitia</abstracttype>
		<abstracttype swapto="SPCXPFlatBoat">SPCXPFlatBoat</abstracttype>
		<abstracttype swapto="xpBuilder">xpBuilder</abstracttype>
		<abstracttype swapto="xpBuilderWar">xpBuilderWar</abstracttype>
		<abstracttype swapto="SPCXPVFSoldier">SPCXPVFSoldier</abstracttype>
		<abstracttype swapto="SPCXPWagonFood">SPCXPWagonFood</abstracttype>
		<abstracttype swapto="xpWarrior">xpWarrior</abstracttype>
		<abstracttype swapto="SaloonOutlawPistol">SaloonOutlawPistol</abstracttype>
		<abstracttype swapto="SaloonOutlawRider">SaloonOutlawRider</abstracttype>
		<abstracttype swapto="SaloonOutlawRifleman">SaloonOutlawRifleman</abstracttype>
		<abstracttype swapto="SaloonPirate">SaloonPirate</abstracttype>
		<abstracttype swapto="SPCXPJeffWagonFood">SPCXPJeffWagonFood</abstracttype>
		<abstracttype swapto="SPCXPJeffWagonWood">SPCXPJeffWagonWood</abstracttype>
		<abstracttype swapto="SPCXPJeffWagonCoin">SPCXPJeffWagonCoin</abstracttype>
		<abstracttype swapto="SPCXPFortWagon">SPCXPFortWagon</abstracttype>
		<abstracttype swapto="xpBowRider">xpBowRider</abstracttype>
		<abstracttype swapto="xpSpy">xpSpy</abstracttype>
		<abstracttype swapto="xpMedicineManAztec">xpMedicineManAztec</abstracttype>
		<abstracttype swapto="MercGreatCannon">MercGreatCannon</abstracttype>
		<abstracttype swapto="SPCXPRailroadWorker">SPCXPRailroadWorker</abstracttype>
		<abstracttype swapto="xpIronclad">xpIronclad</abstracttype>
		<abstracttype swapto="xpHorseArtillery">xpHorseArtillery</abstracttype>
		<abstracttype swapto="SPCXPBlackPowderWagon">SPCXPBlackPowderWagon</abstracttype>
		<abstracttype swapto="xpAdvancedBalloon">xpAdvancedBalloon</abstracttype>
		<abstracttype swapto="IGCXPCrazyHorse">IGCXPCrazyHorse</abstracttype>
		<abstracttype swapto="xpPetardNitro">xpPetardNitro</abstracttype>
		<abstracttype swapto="IGCXPWashington">IGCXPWashington</abstracttype>
		<abstracttype swapto="TradingPostTravois">TradingPostTravois</abstracttype>
		<abstracttype swapto="IGCXPMountedChayton">IGCXPMountedChayton</abstracttype>
		<abstracttype swapto="SPCXPWashington">SPCXPWashington</abstracttype>
		<abstracttype swapto="SPCXPRedoubtCannon">SPCXPRedoubtCannon</abstracttype>
		<abstracttype swapto="NatMercHolcanSpearman">NatMercHolcanSpearman</abstracttype>
		<abstracttype swapto="NatMercLightningWarrior">NatMercLightningWarrior</abstracttype>
		<abstracttype swapto="NatMercRifleman">NatMercRifleman</abstracttype>
		<abstracttype swapto="NatMercTracker">NatMercTracker</abstracttype>
		<abstracttype swapto="NatMercBlackwoodArcher">NatMercBlackwoodArcher</abstracttype>
		<abstracttype swapto="NatMercClubman">NatMercClubman</abstracttype>
		<abstracttype swapto="NatMercCheyenneRider">NatMercCheyenneRider</abstracttype>
		<abstracttype swapto="NatMercHorseArcher">NatMercHorseArcher</abstracttype>
		<abstracttype swapto="NatMercHuronMantlet">NatMercHuronMantlet</abstracttype>
		<abstracttype swapto="SPCXPTreasureShip">SPCXPTreasureShip</abstracttype>
		<abstracttype swapto="NatMercBlowgunWarrior">NatMercBlowgunWarrior</abstracttype>
		<abstracttype swapto="Pilgrim">Pilgrim</abstracttype>
		<abstracttype swapto="ypKensei">ypKensei</abstracttype>
		<abstracttype swapto="ypYabusame">ypYabusame</abstracttype>
		<abstracttype swapto="ypYumi">ypYumi</abstracttype>
		<abstracttype swapto="ypNaginataRider">ypNaginataRider</abstracttype>
		<abstracttype swapto="ypAshigaru">ypAshigaru</abstracttype>
		<abstracttype swapto="ypNatSohei">ypNatSohei</abstracttype>
		<abstracttype swapto="ypSowar">ypSowar</abstracttype>
		<abstracttype swapto="ypZamburak">ypZamburak</abstracttype>
		<abstracttype swapto="ypMahout">ypMahout</abstracttype>
		<abstracttype swapto="ypHowdah">ypHowdah</abstracttype>
		<abstracttype swapto="ypRajput">ypRajput</abstracttype>
		<abstracttype swapto="ypUrumi">ypUrumi</abstracttype>
		<abstracttype swapto="ypChuKoNu">ypChuKoNu</abstracttype>
		<abstracttype swapto="ypArquebusier">ypArquebusier</abstracttype>
		<abstracttype swapto="ypQiangPikeman">ypQiangPikeman</abstracttype>
		<abstracttype swapto="ypChangdao">ypChangdao</abstracttype>
		<abstracttype swapto="ypSteppeRider">ypSteppeRider</abstracttype>
		<abstracttype swapto="ypKeshik">ypKeshik</abstracttype>
		<abstracttype swapto="ypIronFlail">ypIronFlail</abstracttype>
		<abstracttype swapto="ypHandMortar">ypHandMortar</abstracttype>
		<abstracttype swapto="ypFlyingCrow">ypFlyingCrow</abstracttype>
		<abstracttype swapto="ypSettlerAsian">ypSettlerAsian</abstracttype>
		<abstracttype swapto="ypFlameThrower">ypFlameThrower</abstracttype>
		<abstracttype swapto="YPCoveredWagonAsian">YPCoveredWagonAsian</abstracttype>
		<abstracttype swapto="YPVillageWagon">YPVillageWagon</abstracttype>
		<abstracttype swapto="ypWokou">ypWokou</abstracttype>
		<abstracttype swapto="YPPetTiger">YPPetTiger</abstracttype>
		<abstracttype swapto="YPPetRhino">YPPetRhino</abstracttype>
		<abstracttype swapto="ypMercIronTroop">ypMercIronTroop</abstracttype>
		<abstracttype swapto="ypMercFlailiphant">ypMercFlailiphant</abstracttype>
		<abstracttype swapto="ypNatRattanShield">ypNatRattanShield</abstracttype>
		<abstracttype swapto="ypYamabushi">ypYamabushi</abstracttype>
		<abstracttype swapto="ypNatTigerClaw">ypNatTigerClaw</abstracttype>
		<abstracttype swapto="ypNatConquistador">ypNatConquistador</abstracttype>
		<abstracttype swapto="ypSepoy">ypSepoy</abstracttype>
		<abstracttype swapto="ypNatChakram">ypNatChakram</abstracttype>
		<abstracttype swapto="ypNatWarElephant">ypNatWarElephant</abstracttype>
		<abstracttype swapto="ypMercYojimbo">ypMercYojimbo</abstracttype>
		<abstracttype swapto="ypPetKomodoDragon">ypPetKomodoDragon</abstracttype>
		<abstracttype swapto="YPRicePaddyWagon">YPRicePaddyWagon</abstracttype>
		<abstracttype swapto="ypAtakabune">ypAtakabune</abstracttype>
		<abstracttype swapto="ypFune">ypFune</abstracttype>
		<abstracttype swapto="ypFireship">ypFireship</abstracttype>
		<abstracttype swapto="ypNatMercGurkha">ypNatMercGurkha</abstracttype>
		<abstracttype swapto="ypArsenalWagon">ypArsenalWagon</abstracttype>
		<abstracttype swapto="ypTradeCart">ypTradeCart</abstracttype>
		<abstracttype swapto="ypNatMercChakram">ypNatMercChakram</abstracttype>
		<abstracttype swapto="ypNatMercConquistador">ypNatMercConquistador</abstracttype>
		<abstracttype swapto="ypNatMercRattanShield">ypNatMercRattanShield</abstracttype>
		<abstracttype swapto="ypNatMercTigerClaw">ypNatMercTigerClaw</abstracttype>
		<abstracttype swapto="ypNatMercWarElephant">ypNatMercWarElephant</abstracttype>
		<abstracttype swapto="ypWaterBuffalo">ypWaterBuffalo</abstracttype>
		<abstracttype swapto="ypWokouJunk">ypWokouJunk</abstracttype>
		<abstracttype swapto="ypWokouWanderingHorseman">ypWokouWanderingHorseman</abstracttype>
		<abstracttype swapto="ypWanderingHorseman">ypWanderingHorseman</abstracttype>
		<abstracttype swapto="ypBlindMonk">ypBlindMonk</abstracttype>
		<abstracttype swapto="ypWokouBlindMonk">ypWokouBlindMonk</abstracttype>
		<abstracttype swapto="ypPetOrangutan">ypPetOrangutan</abstracttype>
		<abstracttype swapto="ypGoat">ypGoat</abstracttype>
		<abstracttype swapto="ypSiegeElephant">ypSiegeElephant</abstracttype>
		<abstracttype swapto="YPCastleWagon">YPCastleWagon</abstracttype>
		<abstracttype swapto="YPDojoWagon">YPDojoWagon</abstracttype>
		<abstracttype swapto="ypShinobiHorse">ypShinobiHorse</abstracttype>
		<abstracttype swapto="ypWokouPirate">ypWokouPirate</abstracttype>
		<abstracttype swapto="ypMeteorHammer">ypMeteorHammer</abstracttype>
		<abstracttype swapto="YPPetPanda">YPPetPanda</abstracttype>
		<abstracttype swapto="ypMercJatLancer">ypMercJatLancer</abstracttype>
		<abstracttype swapto="ypFugitiveDacoit">ypFugitiveDacoit</abstracttype>
		<abstracttype swapto="ypDacoit">ypDacoit</abstracttype>
		<abstracttype swapto="ypWarJunk">ypWarJunk</abstracttype>
		<abstracttype swapto="ypRickshaw">ypRickshaw</abstracttype>
		<abstracttype swapto="YPSPCCoinWagon">YPSPCCoinWagon</abstracttype>
		<abstracttype swapto="YPSPCRiderlessElephant">YPSPCRiderlessElephant</abstracttype>
		<abstracttype swapto="ypShrineWagon">ypShrineWagon</abstracttype>
		<abstracttype swapto="ypLionTailedMacaque">ypLionTailedMacaque</abstracttype>
		<abstracttype swapto="ypRhino">ypRhino</abstracttype>
		<abstracttype swapto="ypTiger">ypTiger</abstracttype>
		<abstracttype swapto="ypWhiteTiger">ypWhiteTiger</abstracttype>
		<abstracttype swapto="ypLion">ypLion</abstracttype>
		<abstracttype swapto="ypMonitorLizard">ypMonitorLizard</abstracttype>
		<abstracttype swapto="ypTibetanMacaque">ypTibetanMacaque</abstracttype>
		<abstracttype swapto="ypBlackPanther">ypBlackPanther</abstracttype>
		<abstracttype swapto="ypWokouWaywardRonin">ypWokouWaywardRonin</abstracttype>
		<abstracttype swapto="ypWaywardRonin">ypWaywardRonin</abstracttype>
		<abstracttype swapto="ypConsulateTercio">ypConsulateTercio</abstracttype>
		<abstracttype swapto="ypConsulateRedcoat">ypConsulateRedcoat</abstracttype>
		<abstracttype swapto="ypConsulateLifeGuard">ypConsulateLifeGuard</abstracttype>
		<abstracttype swapto="ypSnowLeopard">ypSnowLeopard</abstracttype>
		<abstracttype swapto="ypSettlerIndian">ypSettlerIndian</abstracttype>
		<abstracttype swapto="ypMonkDisciple">ypMonkDisciple</abstracttype>
		<abstracttype swapto="ypConsulateJinete">ypConsulateJinete</abstracttype>
		<abstracttype swapto="ypFuchuan">ypFuchuan</abstracttype>
		<abstracttype swapto="ypNatMercSohei">ypNatMercSohei</abstracttype>
		<abstracttype swapto="ypMarcoPoloSheep">ypMarcoPoloSheep</abstracttype>
		<abstracttype swapto="ypPetLion">ypPetLion</abstracttype>
		<abstracttype swapto="YPPetWhiteTiger">YPPetWhiteTiger</abstracttype>
		<abstracttype swapto="ypConsulateGuerreiros">ypConsulateGuerreiros</abstracttype>
		<abstracttype swapto="ypSnowMonkey">ypSnowMonkey</abstracttype>
		<abstracttype swapto="ypPanda">ypPanda</abstracttype>
		<abstracttype swapto="ypOrangutan">ypOrangutan</abstracttype>
		<abstracttype swapto="ypConsulateGarrochista">ypConsulateGarrochista</abstracttype>
		<abstracttype swapto="ypConsulateCarabineer">ypConsulateCarabineer</abstracttype>
		<abstracttype swapto="ypThuggee">ypThuggee</abstracttype>
		<abstracttype swapto="ypDelinquentThuggee">ypDelinquentThuggee</abstracttype>
		<abstracttype swapto="ypFishingBoatAsian">ypFishingBoatAsian</abstracttype>
		<abstracttype swapto="ypCatamaran">ypCatamaran</abstracttype>
		<abstracttype swapto="ypMarathanCatamaran">ypMarathanCatamaran</abstracttype>
		<abstracttype swapto="ypOrca">ypOrca</abstracttype>
		<abstracttype swapto="ypGreatWhiteShark">ypGreatWhiteShark</abstracttype>
		<abstracttype swapto="ypJunk">ypJunk</abstracttype>
		<abstracttype swapto="ypSettlerJapanese">ypSettlerJapanese</abstracttype>
		<abstracttype swapto="ypSepoyMansabdar">ypSepoyMansabdar</abstracttype>
		<abstracttype swapto="ypUrumiMansabdar">ypUrumiMansabdar</abstracttype>
		<abstracttype swapto="ypRajputMansabdar">ypRajputMansabdar</abstracttype>
		<abstracttype swapto="ypSowarMansabdar">ypSowarMansabdar</abstracttype>
		<abstracttype swapto="ypZamburakMansabdar">ypZamburakMansabdar</abstracttype>
		<abstracttype swapto="ypConsulateFalconet">ypConsulateFalconet</abstracttype>
		<abstracttype swapto="ypConsulateCulverin">ypConsulateCulverin</abstracttype>
		<abstracttype swapto="ypConsulateMortar">ypConsulateMortar</abstracttype>
		<abstracttype swapto="ypConsulateGreatBombard">ypConsulateGreatBombard</abstracttype>
		<abstracttype swapto="ypConsulateHorseArtillery">ypConsulateHorseArtillery</abstracttype>
		<abstracttype swapto="ypConsulateBestieros">ypConsulateBestieros</abstracttype>
		<abstracttype swapto="ypIrregular">ypIrregular</abstracttype>
		<abstracttype swapto="ypPeasant">ypPeasant</abstracttype>
		<abstracttype swapto="ypTekkousen">ypTekkousen</abstracttype>
		<abstracttype swapto="ypConsulateEspadachins">ypConsulateEspadachins</abstracttype>
		<abstracttype swapto="ypConsulateStadhouders">ypConsulateStadhouders</abstracttype>
		<abstracttype swapto="ypConsulateTufanciCorps">ypConsulateTufanciCorps</abstracttype>
		<abstracttype swapto="ypConsulateGendarmes">ypConsulateGendarmes</abstracttype>
		<abstracttype swapto="ypConsulateCzapakaUhlan">ypConsulateCzapakaUhlan</abstracttype>
		<abstracttype swapto="ypConsulateZweihander">ypConsulateZweihander</abstracttype>
		<abstracttype swapto="ypConsulateRogersRanger">ypConsulateRogersRanger</abstracttype>
		<abstracttype swapto="ypConsulateCannon">ypConsulateCannon</abstracttype>
		<abstracttype swapto="ypConsulateGardener">ypConsulateGardener</abstracttype>
		<abstracttype swapto="ypConsulateKalmuck">ypConsulateKalmuck</abstracttype>
		<abstracttype swapto="ypConsulateBashkirPony">ypConsulateBashkirPony</abstracttype>
		<abstracttype swapto="ypConsulatePrussianNeedleGun">ypConsulatePrussianNeedleGun</abstracttype>
		<abstracttype swapto="ypConsulateYoungGarde">ypConsulateYoungGarde</abstracttype>
		<abstracttype swapto="ypHowdahMansabdar">ypHowdahMansabdar</abstracttype>
		<abstracttype swapto="ypMahoutMansabdar">ypMahoutMansabdar</abstracttype>
		<abstracttype swapto="ypSiegeElephantMansabdar">ypSiegeElephantMansabdar</abstracttype>
		<abstracttype swapto="ypMercFlailiphantMansabdar">ypMercFlailiphantMansabdar</abstracttype>
		<abstracttype swapto="YPBerryWagon1">YPBerryWagon1</abstracttype>
		<abstracttype swapto="ypFlamingArrow">ypFlamingArrow</abstracttype>
		<abstracttype swapto="ypMorutaru">ypMorutaru</abstracttype>
		<abstracttype swapto="YPDockWagon">YPDockWagon</abstracttype>
		<abstracttype swapto="ypSPCConsulateWagon">ypSPCConsulateWagon</abstracttype>
		<abstracttype swapto="ypHCChineseFarmer">ypHCChineseFarmer</abstracttype>
		<abstracttype swapto="ypHCChineseMan">ypHCChineseMan</abstracttype>
		<abstracttype swapto="ypHCChineseMonk">ypHCChineseMonk</abstracttype>
		<abstracttype swapto="ypHCChineseNobleman">ypHCChineseNobleman</abstracttype>
		<abstracttype swapto="ypHCChineseNoblewoman">ypHCChineseNoblewoman</abstracttype>
		<abstracttype swapto="ypHCChineseWoman">ypHCChineseWoman</abstracttype>
		<abstracttype swapto="ypHCChineseStreetPerformer">ypHCChineseStreetPerformer</abstracttype>
		<abstracttype swapto="ypHCJapaneseStreetPerformer">ypHCJapaneseStreetPerformer</abstracttype>
		<abstracttype swapto="ypHCJapaneseMonk">ypHCJapaneseMonk</abstracttype>
		<abstracttype swapto="ypHCJapaneseRonin">ypHCJapaneseRonin</abstracttype>
		<abstracttype swapto="ypHCJapaneseSamurai">ypHCJapaneseSamurai</abstracttype>
		<abstracttype swapto="ypHCJapanesePeasant">ypHCJapanesePeasant</abstracttype>
		<abstracttype swapto="ypHCJapanesePeasantFemale">ypHCJapanesePeasantFemale</abstracttype>
		<abstracttype swapto="ypHCJapaneseLady">ypHCJapaneseLady</abstracttype>
		<abstracttype swapto="ypHCJapaneseGirl">ypHCJapaneseGirl</abstracttype>
		<abstracttype swapto="ypHCJapaneseGeisha">ypHCJapaneseGeisha</abstracttype>
		<abstracttype swapto="ypConsulateSiberianCossack">ypConsulateSiberianCossack</abstracttype>
		<abstracttype swapto="ypMercArsonist">ypMercArsonist</abstracttype>
		<abstracttype swapto="ypPetTibetanMacaque">ypPetTibetanMacaque</abstracttype>
		<abstracttype swapto="ypConsulateNinja">ypConsulateNinja</abstracttype>
		<abstracttype swapto="ypConsulateRonin">ypConsulateRonin</abstracttype>
		<abstracttype swapto="ypConsulateShinobi">ypConsulateShinobi</abstracttype>
		<abstracttype swapto="ypConsulateYamabushi">ypConsulateYamabushi</abstracttype>
		<abstracttype swapto="YPGroveWagon">YPGroveWagon</abstracttype>
		<abstracttype swapto="ypHCIndianMan">ypHCIndianMan</abstracttype>
		<abstracttype swapto="ypHCIndianMonk">ypHCIndianMonk</abstracttype>
		<abstracttype swapto="ypHCIndianGentleman">ypHCIndianGentleman</abstracttype>
		<abstracttype swapto="ypHCIndianWoman">ypHCIndianWoman</abstracttype>
		<abstracttype swapto="ypHCIndianSnakecharmer">ypHCIndianSnakecharmer</abstracttype>
		<abstracttype swapto="ypHCIndianGirl">ypHCIndianGirl</abstracttype>
		<abstracttype swapto="YPStableWagon">YPStableWagon</abstracttype>
		<abstracttype swapto="ypMongolScout">ypMongolScout</abstracttype>
		<abstracttype swapto="ypMarketWagon">ypMarketWagon</abstracttype>
		<abstracttype swapto="ypTradingPostWagon">ypTradingPostWagon</abstracttype>
		<abstracttype swapto="ypNatMercGurkhaJemadar">ypNatMercGurkhaJemadar</abstracttype>
		<abstracttype swapto="ypChurchWagon">ypChurchWagon</abstracttype>
		<abstracttype swapto="YPMonasteryWagon">YPMonasteryWagon</abstracttype>
		<abstracttype swapto="ypSPCArrowKnight">ypSPCArrowKnight</abstracttype>
		<abstracttype swapto="ypIGCPhysicspopper">ypIGCPhysicspopper</abstracttype>
		<abstracttype swapto="YPMilitaryRickshaw">YPMilitaryRickshaw</abstracttype>
		<abstracttype swapto="ypRepentantBarbaryCorsair">ypRepentantBarbaryCorsair</abstracttype>
		<abstracttype swapto="ypRepentantBlackRider">ypRepentantBlackRider</abstracttype>
		<abstracttype swapto="ypRepentantElmeti">ypRepentantElmeti</abstracttype>
		<abstracttype swapto="ypRepentantFusilier">ypRepentantFusilier</abstracttype>
		<abstracttype swapto="ypRepentantGreatCannon">ypRepentantGreatCannon</abstracttype>
		<abstracttype swapto="ypRepentantHackapell">ypRepentantHackapell</abstracttype>
		<abstracttype swapto="ypRepentantHighlander">ypRepentantHighlander</abstracttype>
		<abstracttype swapto="ypRepentantJaeger">ypRepentantJaeger</abstracttype>
		<abstracttype swapto="ypRepentantLandsknecht">ypRepentantLandsknecht</abstracttype>
		<abstracttype swapto="ypRepentantMameluke">ypRepentantMameluke</abstracttype>
		<abstracttype swapto="ypRepentantManchu">ypRepentantManchu</abstracttype>
		<abstracttype swapto="ypRepentantNinja">ypRepentantNinja</abstracttype>
		<abstracttype swapto="ypRepentantRonin">ypRepentantRonin</abstracttype>
		<abstracttype swapto="ypRepentantStradiot">ypRepentantStradiot</abstracttype>
		<abstracttype swapto="ypRepentantSwissPikeman">ypRepentantSwissPikeman</abstracttype>
		<abstracttype swapto="ypRepentantArsonist">ypRepentantArsonist</abstracttype>
		<abstracttype swapto="ypRepentantIronTroop">ypRepentantIronTroop</abstracttype>
		<abstracttype swapto="ypRepentantJatLancer">ypRepentantJatLancer</abstracttype>
		<abstracttype swapto="ypRepentantYojimbo">ypRepentantYojimbo</abstracttype>
		<abstracttype swapto="ypRepentantOutlawPistol">ypRepentantOutlawPistol</abstracttype>
		<abstracttype swapto="ypRepentantOutlawRider">ypRepentantOutlawRider</abstracttype>
		<abstracttype swapto="ypRepentantOutlawRifleman">ypRepentantOutlawRifleman</abstracttype>
		<abstracttype swapto="ypRepentantPirate">ypRepentantPirate</abstracttype>
		<abstracttype swapto="ypRepentantDacoit">ypRepentantDacoit</abstracttype>
		<abstracttype swapto="ypRepentantThuggee">ypRepentantThuggee</abstracttype>
		<abstracttype swapto="ypRepentantBlindMonk">ypRepentantBlindMonk</abstracttype>
		<abstracttype swapto="ypRepentantSmuggler">ypRepentantSmuggler</abstracttype>
		<abstracttype swapto="ypRepentantWanderingHorseman">ypRepentantWanderingHorseman</abstracttype>
		<abstracttype swapto="ypRepentantWaywardRonin">ypRepentantWaywardRonin</abstracttype>
		<abstracttype swapto="ypBankWagon">ypBankWagon</abstracttype>
		<abstracttype swapto="ypPetSnowMonkey">ypPetSnowMonkey</abstracttype>
		<abstracttype swapto="ypSPCEdwardsonEvil">ypSPCEdwardsonEvil</abstracttype>
		<abstracttype swapto="xpBuilderStart">xpBuilderStart</abstracttype>
		<abstracttype swapto="ypEggIceCreamTruck">ypEggIceCreamTruck</abstracttype>
		<abstracttype swapto="ypEggHotDogCart">ypEggHotDogCart</abstracttype>
		<abstracttype swapto="ypGoatFat">ypGoatFat</abstracttype>
		<abstracttype swapto="ypMigrantOx">ypMigrantOx</abstracttype>
		<abstracttype swapto="ypFishingBoatIndians">ypFishingBoatIndians</abstracttype>
		<abstracttype swapto="ypIrregularIndians">ypIrregularIndians</abstracttype>
		<abstracttype swapto="ypPeasantIndians">ypPeasantIndians</abstracttype>
		<abstracttype swapto="YPCastleWagonIndians">YPCastleWagonIndians</abstracttype>
		<abstracttype swapto="YPCoveredWagonJapan">YPCoveredWagonJapan</abstracttype>
		<abstracttype swapto="YPCoveredWagonIndians">YPCoveredWagonIndians</abstracttype>
		<abstracttype swapto="YPCastleWagonJapan">YPCastleWagonJapan</abstracttype>
		<abstracttype swapto="ypRickshawIndian">ypRickshawIndian</abstracttype>
		<abstracttype swapto="ypNativeScout">ypNativeScout</abstracttype>
		<abstracttype swapto="YPSacredFieldWagon">YPSacredFieldWagon</abstracttype>
		<abstracttype swapto="ypSacredCow">ypSacredCow</abstracttype>
		<abstracttype swapto="ypSettlerIceCream">ypSettlerIceCream</abstracttype>
		<abstracttype swapto="ypBlockhouseWagon">ypBlockhouseWagon</abstracttype>
		<abstracttype swapto="Llama">Llama</abstracttype>
		<abstracttype swapto="ypYak">ypYak</abstracttype>
		<abstracttype swapto="Cow">Cow</abstracttype>
		<sfx>Sparkles</sfx>
		<swapdelay>0.5</swapdelay>
		<allowduringnorush>0</allowduringnorush>
		<ConvertUsingMinMax minswapamount="50" maxswapamount="70"/>
		<SwapUsingMinMax minswapamount="50" maxswapamount="70"/>
		<ConvertUnitsToGodPowerPlayer/>
		<swapenemyonly/>
		<powerplayerrelation>enemy</powerplayerrelation>
	</power>




森林之火

与swap转换单位一样,可以转换单位,不过这个是链式转换单位,会随时间蔓延,被转换的单位会随时间死亡。
注:被转换的单位必须带<UnitType>Tree</UnitType>,否则无法链式转换。给一般单位或建筑添加了,一般死亡没有动作,只能说树木有特殊的死亡动作。此外,swap语句中的 blendtexture=""不能删除,否则无法链式转换;AOE3ED没办法将其xml文件转为xmb格式,当转xmb后会失效。
<maxsearchradius>30.0</maxsearchradius>设定释放技能的最大搜索半径,链式swap转换单位的搜索半径也是由此值确定。

<burnlength>120.0</burnlength>
<burnfadelength>120.0</burnfadelength>被转化单位在X秒后死亡。(会不停掉血)

<maxnumtreesburnt>500</maxnumtreesburnt>(最大转化单位数量)

<fastesttreeattacktime>3.0</fastesttreeattacktime>
<longesttreeattacktime>6.0</longesttreeattacktime>蔓延速度


powera.xml - 记事本
	<power name="ForestFire" type="ForestFire">
		<displaynameid>00807</displaynameid>
		<rolloverid>00808</rolloverid>
		<icon>art\Age of Mythology\Power\FireStorm</icon>
		<placement forceonmap="1" matchtype="Tree">Tree</placement>
		<activetime>-1</activetime>
		<minimapeventtime sendalertto="all">10.0</minimapeventtime>
		<rangeindicatorprotoid radius="24.0" indicatorcount="12" speed="0.15">PowerUIAOM</rangeindicatorprotoid>
		<soundset type="StartSound" listenertype="AllExceptCaster">GodPowerStart</soundset>
		<soundset type="StartSound" listenertype="IfOnScreenAll">ForestFireBirth</soundset>
		<soundset type="ExistSound" listenertype="IfOnScreenAll" loop="1" positional="1">ForestFireExist</soundset>
		<soundset type="EndSound" listenertype="All">GodPowerEnd</soundset>
		<minsearchradius>0.0</minsearchradius>
		<maxsearchradius>30.0</maxsearchradius>
		<minnumtreestocatchonfire>10</minnumtreestocatchonfire>
		<maxnumtreestocatchonfire>15</maxnumtreestocatchonfire>
		<burnlength>120.0</burnlength>
		<burnfadelength>120.0</burnfadelength>
		<maxnumtreesburnt>500</maxnumtreesburnt>
		<playsbattlemusic/>
		<radius>24.0</radius>
		<forestfireattack>ForestBurnAttack</forestfireattack>
		<forestfiretreesearchradius>6.0</forestfiretreesearchradius>
		<fastesttreeattacktime>3.0</fastesttreeattacktime>
		<longesttreeattacktime>6.0</longesttreeattacktime>
		<abstractattacktargettype>All</abstractattacktargettype>
		<retainhitpointratio/>
		<gpdamagemodel>
			<playerrelation>enemy</playerrelation>
			<basedamagepercentunit>0.80</basedamagepercentunit>
			<basedamagepercentvillager>0.50</basedamagepercentvillager>
			<basedamagepercentbuilding>0.90</basedamagepercentbuilding>
			<minhpdamageunit>500</minhpdamageunit>
			<minhpdamagevillager>600</minhpdamagevillager>
			<minhpdamagebuilding>2000</minhpdamagebuilding>
			<maxhpdamageunit>2000</maxhpdamageunit>
			<maxhpdamagevillager>800</maxhpdamagevillager>
			<maxhpdamagebuilding>2000</maxhpdamagebuilding>
		</gpdamagemodel>
		<!-- Don't delete the blendtexture="" -->
		<abstracttype swapto="BurnTreeYellowRiver" blendtexture="">ypTreeYellowRiver</abstracttype>
		<abstracttype swapto="BurnTreeBamboo" blendtexture="">ypTreeBamboo</abstracttype>
		<abstracttype swapto="BurnTreeCaribbean" blendtexture="">TreeCaribbean</abstracttype>
		<abstracttype swapto="BurnTreeBayou" blendtexture="">TreeBayou</abstracttype>
		<abstracttype swapto="BurnTreeBayouMarsh" blendtexture="">TreeBayouMarsh</abstracttype>
		<abstracttype swapto="BurnTreeCarolinaGrass" blendtexture="">TreeCarolinaGrass</abstracttype>
		<abstracttype swapto="BurnTreeNewEngland" blendtexture="">TreeNewEngland</abstracttype>
		<abstracttype swapto="BurnTreeGreatLakes" blendtexture="">TreeGreatLakes</abstracttype>
		<abstracttype swapto="BurnTreeGreatLakesSnow" blendtexture="">TreeGreatLakesSnow</abstracttype>
		<abstracttype swapto="BurnTreeSaguenay" blendtexture="">TreeSaguenay</abstracttype>
		<abstracttype swapto="BurnTreeYukon" blendtexture="">TreeYukon</abstracttype>
		<abstracttype swapto="BurnTreeYukonSnow" blendtexture="">TreeYukonSnow</abstracttype>
		<abstracttype swapto="BurnTreeNorthwestTerritory" blendtexture="">TreeNorthwestTerritory</abstracttype>
		<abstracttype swapto="BurnTreeMadrone" blendtexture="">TreeMadrone</abstracttype>
		<abstracttype swapto="BurnTreeRedwood" blendtexture="">TreeRedwood</abstracttype>
		<abstracttype swapto="BurnTreeRockies" blendtexture="">TreeRockies</abstracttype>
		<abstracttype swapto="BurnTreeRockiesSnow" blendtexture="">TreeRockiesSnow</abstracttype>
		<abstracttype swapto="BurnTreePaintedDesert" blendtexture="">TreePaintedDesert</abstracttype>
		<abstracttype swapto="BurnTreeGreatPlains" blendtexture="">TreeGreatPlains</abstracttype>
		<abstracttype swapto="BurnTreeTexasDirt" blendtexture="">TreeTexasDirt</abstracttype>
		<abstracttype swapto="BurnTreeTexas" blendtexture="">TreeTexas</abstracttype>
		<abstracttype swapto="BurnTreeSonora" blendtexture="">TreeSonora</abstracttype>
		<abstracttype swapto="BurnTreeYucatan" blendtexture="">TreeYucatan</abstracttype>
		<abstracttype swapto="BurnTreeAndes" blendtexture="">TreeAndes</abstracttype>
		<abstracttype swapto="BurnTreeAmazon" blendtexture="">TreeAmazon</abstracttype>
		<abstracttype swapto="BurnTreePampas" blendtexture="">TreePampas</abstracttype>
		<abstracttype swapto="BurnTreeAraucania" blendtexture="">TreeAraucania</abstracttype>
		<abstracttype swapto="BurnTreePatagoniaSnow" blendtexture="">TreePatagoniaSnow</abstracttype>
		<abstracttype swapto="BurnTreePatagoniaDirt" blendtexture="">TreePatagoniaDirt</abstracttype>
		<abstracttype swapto="BurnTreeSaxaul" blendtexture="">ypTreeSaxaul</abstracttype>
		<abstracttype swapto="BurnTreeMongolia" blendtexture="">ypTreeMongolia</abstracttype>
		<abstracttype swapto="BurnTreeHimalayas" blendtexture="">ypTreeHimalayas</abstracttype>
		<abstracttype swapto="BurnTreeDeccan" blendtexture="">ypTreeDeccan</abstracttype>
		<abstracttype swapto="BurnTreeCeylon" blendtexture="">ypTreeCeylon</abstracttype>
		<abstracttype swapto="BurnTreeBorneo" blendtexture="">ypTreeBorneo</abstracttype>
		<abstracttype swapto="BurnTreeBorneoPalm" blendtexture="">ypTreeBorneoPalm</abstracttype>
		<abstracttype swapto="BurnTreeJapaneseMaple" blendtexture="">ypTreeJapaneseMaple</abstracttype>
		<abstracttype swapto="BurnTreeJapanesePine" blendtexture="">ypTreeJapanesePine</abstracttype>
		<abstracttype swapto="BurnTreeCoastalJapan" blendtexture="">ypTreeCoastalJapan</abstracttype>
		<abstracttype swapto="BurnTreeCarolinaMarsh" blendtexture="">TreeCarolinaMarsh</abstracttype>
		<abstracttype swapto="BurnTreeNewEnglandSnow" blendtexture="">TreeNewEnglandSnow</abstracttype>
		<abstracttype swapto="BurnTreeSpruce" blendtexture="">ypTreeSpruce</abstracttype>
		<abstracttype swapto="BurnTreeAshoka" blendtexture="">ypTreeAshoka</abstracttype>
		<abstracttype swapto="BurnTreeEucalyptus" blendtexture="">ypTreeEucalyptus</abstracttype>
		<abstracttype swapto="BurnTreeHemlock" blendtexture="">ypTreeHemlock</abstracttype>
		<abstracttype swapto="BurnTreePinonPine" blendtexture="">TreePinonPine</abstracttype>
		<abstracttype swapto="BurnTreePonderosaPine" blendtexture="">TreePonderosaPine</abstracttype>
		<abstracttype swapto="BurnTreeJuniper" blendtexture="">TreeJuniper</abstracttype>
		<abstracttype swapto="BurnTreePolyepis" blendtexture="">TreePolyepis</abstracttype>
		<abstracttype swapto="BurnTreeGinkgo" blendtexture="">ypTreeGinkgo</abstracttype>
		<abstracttype swapto="BurnTreeMongolianFir" blendtexture="">ypTreeMongolianFir</abstracttype>
		<abstracttype swapto="BurnTreeKapok" blendtexture="">TreeKapok</abstracttype>
		<abstracttype swapto="BurnTreePuya" blendtexture="">TreePuya</abstracttype>
		<abstracttype swapto="BurnBerryBush" blendtexture="">BerryBush</abstracttype>
		<abstracttype swapto="BurnTreeGrandCanyon" blendtexture="">TreeGrandCanyon</abstracttype>
		<abstracttype swapto="BurnTreeGrandCanyonPeak" blendtexture="">TreeGrandCanyonPeak</abstracttype>
		<abstracttype swapto="BurnTreePuya2" blendtexture="">TreePuya2</abstracttype>
		<abstracttype swapto="BurnTreePeter" blendtexture="">TreePeter</abstracttype>
		<abstracttype swapto="BurnTreeGreatPlainsGrass" blendtexture="">TreeGreatPlainsGrass</abstracttype>
		<abstracttype swapto="BurnTreeGreatPlainsGrassGreen" blendtexture="">TreeGreatPlainsGrassGreen</abstracttype>
		<firesfx>ForestBurnAttack</firesfx>
		<sfx>ForestBurnAttack</sfx>
	</power>