收起左侧

[gr2] 帝国时代3奇葩修改,铲地-->遁地

[复制链接]
こはね发表于 2020-3-13 16:22:30
今天来弄点奇葩的修改,这是奥兰治勋爵的奇葩想法;制作一个单位遁地,切换战术有铲地动作,虽然我无法弄出100%的完美效果,但是总体还是可以用的。

萌新请自行去圣典学习修改基础(例如AOE3ED提取文件),本教程不解答萌新的问题。

除了正常的xml修改外与AOE3ED提取文件外,本教程还需要用上3dsmax8.0导出gr2模型文件,没有这个软件的请自行去资源中心https://www.aoebbs.net/down_191.html下载。




首先,回想一下,游戏有哪些单位是有铲地动作的?宝藏海盗守护者算一个,采矿勉强算一个。挖地洞的动作还是海盗守护者的动作比较好,那么我们就去找这个动作。怎样去寻找这个动作呢?在圣典我一个是有说过nuggets.xml这个文件的(如下表所示),这个是定义宝藏的文件,其中有一个语句是设定宝藏守护者的默认动作。





nuggets.xml:修改宝藏


























































































































































































































































































































































































































































































<nuggetmanager>

	<resourcemodtech>Techname</resourcemodtech>
改良XXXXX科技,(只能拥有一个科技,当存在多个科技系统默认读取最后一个科技)

	<resourcemodentries>

		<resourcemodentry>
当改良了resourcemodtech定义的任意一个科技后,改变下面定义的单位捡资源宝藏数值,不可叠加

			<unittype>XXXXXXXXX/unittype>
单位标签或调用名

		</resourcemodentry>

	</resourcemodentries>

	<resourcemod>2.0</resourcemod>
该语句没有任何作用???
<nuggets>
宝藏设定:


增加资源宝藏:

	<nugget>

<nugget>
<name>XXXXX</name>
<type>AdjustResource</type>
<nuggetunit>Protoname</nuggetunit>
<rolloverstringid>StringID </rolloverstringid>
<applystringid>StringID</applystringid>
<resource>XXXX</resource>
<amount>X</amount>
<maptype>XXXXX</maptype>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
<attachdummy>bone_nuggetA</attachdummy>
</guardianunit>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
<attachdummy>bone_nuggetB</attachdummy>
</guardianunit>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
<attachdummy>bone_nuggetC</attachdummy>
</guardianunit>
<guardian>Protoname</guardian>
<difficulty>X</difficulty>
</nugget>
		<name>XXXXX</name>
宝藏调用名
		<type>AdjustResource</type>
宝藏类型,增加资源
		<nuggetunit>Protoname</nuggetunit>
宝藏单位(模型)
		<rolloverstringid>StringID</rolloverstringid>
宝藏介绍
		<applystringid>StringID</applystringid>
该宝藏被拾取,屏幕左方显示XXX信息
		<resource>XXXX</resource>
资源类型
		<amount>X</amount>
提供资源数量
		<maptype>XXXXX</maptype>
会出现该宝藏的地图类型(对应地图的设定)
		<guardianunit>
守护者单位
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
			<attachdummy>bone_nuggetA</attachdummy>
		</guardianunit>
		<guardianunit>
守护者单位
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
			<attachdummy>bone_nuggetB</attachdummy>
		</guardianunit>
		<guardianunit>
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
			<attachdummy>bone_nuggetC</attachdummy>
		</guardianunit>
		<guardian>Protoname</guardian>
无特殊动作的守护者(即为使用tactics设定的默认动作)
		<difficulty>X</difficulty>
宝藏难度等级,用于地图生成宝藏时分开生成不同等级的宝藏(数值为1、2、3、4、5,其中5用于水上宝藏)
	</nugget>


生成单位宝藏:

	<nugget>

<nugget>
<name>XXXXXXXX</name>
<type>SpawnUnit</type>
<nuggetunit>Protoname</nuggetunit>
<rolloverstringid>StringID</rolloverstringid>
<applystringid>StringID</applystringid>
<unittype>Protoname</unittype>
<amount>X</amount>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
</guardianunit>
<guardian>Protoname</guardian>
<maptype>XXXXX</maptype>
<difficulty>X</difficulty>
</nugget>
		<name>XXXXXXXX</name>
宝藏调用名
		<type>SpawnUnit</type>
类型,生产单位
		<nuggetunit>Protoname</nuggetunit>
宝藏单位(模型)
		<rolloverstringid>StringID</rolloverstringid>
宝藏介绍
		<applystringid>StringID</applystringid>
该宝藏被拾取,屏幕左方显示XXX信息
		<unittype>Protoname</unittype>
生产的单位
		<amount>X</amount>
生成单位数量
		<guardianunit>
守护者
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
		</guardianunit>
		<guardian>Protoname</guardian>
无特殊动作的守护者(即为使用tactics设定的默认动作)
		<maptype>XXXXX</maptype>
会出现该宝藏的地图类型(对应地图的设定)
		<difficulty>X</difficulty>
宝藏难度等级,用于地图生成宝藏时分开生成不同等级的宝藏(数值为1、2、3、4、5,其中5用于水上宝藏)
	</nugget>


解救单位宝藏:

	<nugget>

<nugget>
<name>XXXXXXX</name>
<type>ConvertUnit</type>
<nuggetunit>Protoname</nuggetunit>
<rolloverstringid>StringID</rolloverstringid>
<applystringid>StringID</applystringid>
<convertunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
<attachdummy>bone_nuggetA</attachdummy>
</convertunit>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
</guardianunit>
<guardian>Protoname</guardian>
<maptype>XXXXX</maptype>
<difficulty>X</difficulty>
</nugget>
		<name>XXXXXXX</name>
宝藏调用名
		<type>ConvertUnit</type>
类型,转换(解救)单位
		<nuggetunit>Protoname</nuggetunit>
宝藏单位(模型)
		<rolloverstringid>StringID</rolloverstringid>
宝藏介绍
		<applystringid>StringID</applystringid>
该宝藏被拾取,屏幕左方显示XXX信息
		<convertunit>
被转换的单位(需要解救的单位)
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
被解救后的动作
			<attachdummy>bone_nuggetA</attachdummy>
		</convertunit>
		<guardianunit>
守护者
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
		</guardianunit>
		<guardian>Protoname</guardian>
无特殊动作的守护者(即为使用tactics设定的默认动作)
		<maptype>XXXXX</maptype>
会出现该宝藏的地图类型(对应地图的设定)
		<difficulty>X</difficulty>
宝藏难度等级,用于地图生成宝藏时分开生成不同等级的宝藏(数值为1、2、3、4、5,其中5用于水上宝藏)
	</nugget>


增加单位属性宝藏:

	<nugget>

<nugget>
<name>XXXXXXX</name>
<type>XXXXXXXX</type>
<nuggetunit>Protoname</nuggetunit>
<targettype>XXXXXX</targettype>
<rolloverstringid>StringID</rolloverstringid>
<applystringid>StringID</applystringid>
<amount>X.0</amount>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
</guardianunit>
<guardian>Protoname</guardian>
<maptype>XXXXX</maptype>
<difficulty>X</difficulty>
</nugget>
		<name>XXXXXXX</name>
宝藏调用名
		<type>XXXXXXXX</type>
类型,AdjustHP为增加生命,AdjustSpeed为增加单位速度
		<nuggetunit>Protoname</nuggetunit>
宝藏单位(模型)
		<targettype>XXXXXX</targettype>
作用对象,单位标签
		<rolloverstringid>StringID</rolloverstringid>
宝藏介绍
		<applystringid>StringID</applystringid>
该宝藏被拾取,屏幕左方显示XXX信息
		<amount>X.0</amount>
X.0倍属性
		<guardianunit>
守护者
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
		</guardianunit>
		<guardian>Protoname</guardian>
无特殊动作的守护者(即为使用tactics设定的默认动作)
		<maptype>XXXXX</maptype>
会出现该宝藏的地图类型(对应地图的设定)
		<difficulty>X</difficulty>
宝藏难度等级,用于地图生成宝藏时分开生成不同等级的宝藏(数值为1、2、3、4、5,其中5用于水上宝藏)
	</nugget>


改良科技宝藏:

	<nugget>

<nugget>
<name>XXXXXXX</name>
<type>GiveTech</type>
<nuggetunit>Protoname</nuggetunit>
<tech>Techname</tech>
<rolloverstringid>StringID</rolloverstringid>
<applystringid>StringID</applystringid>
<maptype>XXXXX</maptype>
<guardianunit>
<unit>Protoname</unit>
<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
</guardianunit>
<guardian>Protoname</guardian>
<difficulty>X</difficulty>
</nugget>
		<name>XXXXXXX</name>
宝藏调用名
		<type>GiveTech</type>
类型,改良科技
		<nuggetunit>Protoname</nuggetunit>
宝藏单位(模型)
		<tech>Techname</tech>
拾取宝藏后改良的科技
		<rolloverstringid>StringID</rolloverstringid>
宝藏介绍
		<applystringid>StringID</applystringid>
该宝藏被拾取,屏幕左方显示XXX信息
		<maptype>XXXXX</maptype>
会出现该宝藏的地图类型(对应地图的设定)
		<guardianunit>
守护者
			<unit>Protoname</unit>
单位调用名
			<idleanim>XXXXXXXXXXXXXXXXXX</idleanim>
默认动作
			<exitanim>XXXXXXXXXXXXXXXXXX</exitanim>
停止默认动作,切换到战斗的动作
		</guardianunit>
		<guardian>Protoname</guardian>
无特殊动作的守护者(即为使用tactics设定的默认动作)
		<difficulty>X</difficulty>
宝藏难度等级,用于地图生成宝藏时分开生成不同等级的宝藏(数值为1、2、3、4、5,其中5用于水上宝藏)
	</nugget>



</nuggets>

</nuggetmanager>



因为在单位手册有宝藏副册,所以我们可以快速找到一个由三名海盗组成的235黄金宝藏,调用名为PirateLoot,



接下来我们用AOE3ED去data3.bar提取nuggets.xml这个文件,然后在nuggets.xml查找"PirateLoot",语句如下表所示

<nugget>
<name>PirateLoot</name>
<type>AdjustResource</type>
<nuggetunit>NuggetPirate</nuggetunit>
<rolloverstringid>27770</rolloverstringid>
<applystringid>27771</applystringid>
<resource>Gold</resource>
<amount>235</amount>
<maptype>amazonia</maptype>
<maptype>bayou</maptype>
<maptype>caribbean</maptype>
<maptype>yucatan</maptype>
<maptype>carolina</maptype>
<maptype>newEngland</maptype>
<maptype>pampas</maptype>
<maptype>patagonia</maptype>
<guardianunit>
<unit>Pirate</unit>
<idleanim>NuggetPirate1_Idle</idleanim>
<exitanim>NuggetPirate1_Exit</exitanim>
<attachdummy>bone_nuggetA</attachdummy>
</guardianunit>
<guardianunit>
<unit>Pirate</unit>
<idleanim>NuggetPirate2_Idle</idleanim>
<exitanim>NuggetPirate2_Exit</exitanim>
<attachdummy>bone_nuggetB</attachdummy>
</guardianunit>
<guardianunit>
<unit>Pirate</unit>
<idleanim>NuggetPirate3_Idle</idleanim>
<exitanim>NuggetPirate3_Exit</exitanim>
<attachdummy>bone_nuggetC</attachdummy>
</guardianunit>
<difficulty>3</difficulty>
</nugget>



从上表可以看出宝藏守护者有三个默认动作分别为<idleanim>NuggetPirate1_Idle</idleanim>、<idleanim>NuggetPirate2_Idle</idleanim>、<idleanim>NuggetPirate3_Idle</idleanim>(游戏中也是有三个不同的守护者动作),光从字面上我们不清楚哪个才是铲地动作,所以要逐个去试。

接下来去protoy.xml查找海盗宝藏守护者的anim xml,查到语句为<AnimFile>units\spc\pirates\pirates.xml</AnimFile>,然后用AOE3ED将pirates.xml从art文件夹里面的atr1.bar(海盗是原版单位,所以是art1.bar)提取出来。(单位调用名在单位手册的守护者系列能快速查出,或者上面的nugget语句<unit>Pirate</unit>都告诉你单位调用名就是Pirate了。)

然后我们继续protoy.xml复制一个单位,(我选择使用矿工SPCRailroadWorker),然后顺便将那个单位的anim xml以及tactics提取出来,分别按照原路径放回游戏目录。(矿工的anim xml名称为miner.xml,在art文件夹里面的art1.bar可以提取;tactics名称在data文件夹里面的data3.bar)

接下来就是寻找到底哪个才是铲地的动作,我们打开pirates.xml文件以及miner.xml,将pirates.xml里面的"NuggetPirate1_Idle"、"NuggetPirate2_Idle"、"NuggetPirate3_Idle"三个动作复制到miner.xml里面,动作如下:

<anim>
NuggetPirate1_Idle
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_diga</file>
<weight>90</weight>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_dig_boreda</file>
<weight>10</weight>
</assetreference>
<component>ModelComp</component>
<attach a="shovel" frombone="Bip01 Prop2" tobone="bip01 Prop2" syncanims="0"/>
</anim>
<anim>
NuggetPirate2_Idle
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_idleA</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_idleB</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_idleC</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_idleD</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_idleE</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_idleF</file>
</assetreference>
<component>ModelComp</component>
</anim>
<anim>
NuggetPirate3_Idle
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate3_idleA</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate3_idleb</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate3_idlec</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate3_idled</file>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate3_idleE</file>
</assetreference>
<component>ModelComp</component>
</anim>


你留意到"NuggetPirate1_Idle"动作还有一句<attach a="shovel" frombone="Bip01 Prop2" tobone="bip01 Prop2" syncanims="0"/>了吗,这个是附件,也就是说这个动作所带有额外部件的,所以我们也要将这个部件从pirates.xml复制到miner.xml,一般在pirates.xml顶部就能找到这个部件,如果找不到你可以搜索a="xxxxx"里面的部件名称,即为shovel。部件语句如下

<attachment>
shovel
<include>nuggets\pirates\attachment_shovel.xml</include>
</attachment>


几段语句复制完后保存miner.xml,然后我们再用AOE3ED打开data3.bar,提取battle.xml这个文件,将battle.xml放到游戏目录的data文件夹。(battle.xml是定义单位战术按钮,这个不作任何解析,有兴趣的可以自己去圣典10-8查看)

将battle里面的Volley战术复制,底部粘贴一次,随便重名名,然后保存,至于图标那些我懒得修改了,你可以自己修改。战术按钮语句如下:
	<squadmode>
<name>NuggetIdle</name>
<tactic>NuggetIdle</tactic>
<unittype>AbstractRangedInfantry</unittype>
<targetunittype>All</targetunittype>
<stance>Defensive</stance>
<formationtype>Line</formationtype>
<formationlinelinespacing>0.8</formationlinelinespacing>
<formationlinecolumnspacing>0.8</formationlinecolumnspacing>
<randomspacingoffset>0.35</randomspacingoffset>
<cooldowntime>5000</cooldowntime>
<transitiontimein>500</transitiontimein>
<activeicon>art\ui\command\tactics_volley_cur</activeicon>
<availableicon>art\ui\command\tactics_volley_avl</availableicon>
<unavailableicon>art\ui\command\tactics_volley_un_avl</unavailableicon>
<rolloverstringid>31348</rolloverstringid>
</squadmode>


接下来打开矿工的tactics,在底部随意复制一个战术,例如我就是复制了Melee,然后将战术NuggetIdle,对应battle的设定。因为idleanim是默认动作,是最好测试的,所以将idleanim修改NuggetPirate1_Idle,测试看看是不是铲地动作。语句如下:

<tactic>
NuggetIdle
<speedmodifier>0.1</speedmodifier>
<action>Build</action>
<action priority="75">BuildingAttack</action>
<action priority="25">HandAttack</action>
<attacktype>LogicalTypeRangedUnitsAttack</attacktype>
<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
<runaway>0</runaway>
<autoretarget>0</autoretarget>
<deathanim>Death</deathanim>
<idleanim>NuggetPirate1_Idle</idleanim>
<boredanim>Bored</boredanim>
<walkanim>Walk</walkanim>
<joganim>Jog</joganim>
<runanim>Run</runanim>
</tactic>


所以将idleanim修改成NuggetPirate1_Idle并保存,然后进入游戏,将单位切换到新添加的战术,你会看见已经是铲地动作了。很走运,只测试一次就成功了。其他两个动作你有兴趣可以自己去试试看。

帝国时代3奇葩修改,铲地-->遁地

帝国时代3奇葩修改,铲地-->遁地

图片的铲地动作我顺便添加了灰尘附件,所以铲地会有灰尘,如果你有兴趣自己去圣典8-4看下吧,链接:https://www.aoebbs.net/Age_of_Empires_III_Modding_Tutorial/08-04walk.htm

接下来就是让切换战术设定有铲地动作了,我们可以去复制炮兵切换攻击的设定,去圣典tactics里面就能找到,然后将切换的战术改成新添加的战术,动作改成铲地动作,最后给矿工的tactics里面每一个tactic战术都添加上。切换战术的语句如下:
		<transition>
<tactic>NuggetIdle</tactic>
<action>NuggetIdle</action>
<anim>NuggetPirate1_Idle</anim>
<length>2</length>
<exit>1</exit>
<automatic>1</automatic>
<commandautomatic>1</commandautomatic>
</transition>


此时进入游戏,点击切换战术,你会发现切换到新战术会有一个铲地动作。

接下来要做的就是遁地了,重点内容来了,打开你的3dsmax8.0,点击最右边的两个齿轮



然后点击Bones,随便拉一个骨骼



保留Bone01,删掉Bone02



缩放为100,即为不变,无需修改。



移动骨骼,Z坐标-100~-130之间,如果XY坐标不是0,你自己将其移动回0;因为帝国3一般的单位高度为110-130之间,所以你自己选择吧,我测试的时候使用的是Z-100



选择骨骼,然后按顶部的Group->Group,将模型成组



组名称默认就行



设定只影响轴,然后将Group01的轴坐标移动回原点X0 Y0 Z0



导出gr2(建议你先保存模型,因为win10电脑运行3dsmax有bug,点错了就会炸,只能重新画一遍)



双击Meshes,将Bone01的Included取消掉(原本为yes)。然后按Export导出就行。







最后复制一份矿工的xml(我命名为miner2.xml),让原有的xml(miner.xml)引用,注意,自己删掉无用的动作以及附件。

原有的miner.xml用附件标签引用新的miner2.xml:

<attachment>
miner2
<include>units\spc\miner\miner2.xml</include>
</attachment>


miner.xml添加新的component,我命名为Miner2,将gr2模型指向新的骨骼文件,然后用attach附加新的miner2.xml,attach设定form "ATTACHPOINT" to "Bone01"
	<component>
Miner2
<logic type="LowPoly">
<normal>
<assetreference type="GrannyModel">
<file>units\spc\miner\test</file>
</assetreference>
</normal>
</logic>
<decal>
<effecttype>default</effecttype>
<texture isfakeshadow="1">shadows_selections\shadow_circle_64x64</texture>
<selectedtexture>shadows_selections\selection_circle_64x64</selectedtexture>
<width>1.50</width>
<height>1.50</height>
</decal>
<attach a="Miner2" frombone="ATTACHPOINT" tobone="Bone01" syncanims="1"/>
</component>


miner.xml复制一套动作,我命名为了Miner2Anim,将component改成Miner2上面那里就是这样定义的,然后tactics指向这个Miner2Anim动作,要注意一点,你这个Miner2Anim还要在新的Miner2.xml一起添加才会生效。

这个是Miner.xml的语句:
<anim>
Miner2Anim
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_diga</file>
<weight>90</weight>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_dig_boreda</file>
<weight>10</weight>
</assetreference>
<component>Miner2</component>
</anim>


这个是Miner2.xml的语句,我顺便添加了灰尘附件,你自己去圣典8-4看下吧,链接:Age_of_Empires_III_Modding_Tutorial/08-04walk.htm
<anim>
Miner2Anim
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_diga</file>
<weight>90</weight>
</assetreference>
<assetreference type="GrannyAnim">
<file>nuggets\pirates\pirate_dig_boreda</file>
<weight>10</weight>
</assetreference>
<component>Miner2</component>
<attach a="shovel" frombone="Bip01 Prop2" tobone="bip01 Prop2" syncanims="0"/>
<attach a="Horse_Dust" frombone="ATTACHPOINT" tobone="ATTACHPOINT" syncanims="0"/>
<attach a="Horse_Debris" frombone="ATTACHPOINT" tobone="HS Bone Hoof Back Rt" syncanims="0"/>
<attach a="Horse_Dust" frombone="Bip01 Prop2" tobone="bip01 Prop2" syncanims="0"/>
<attach a="Horse_Debris" frombone="Bip01 Prop2" tobone="Bip01 Prop2" syncanims="0"/>
<attach a="Horse_Dust" frombone="bone01" tobone="bone01" syncanims="0"/>
<attach a="Horse_Debris" frombone="bone01" tobone="bone01" syncanims="0"/>
</anim>


这个是tactics,为了省事,我全部动作都设定成了Miner2Anim,你可以根据你的实际需求去设定:
<tactic>
NuggetIdle
<speedmodifier>1.0</speedmodifier>
<action>Build</action>
<action priority="75">BuildingAttack</action>
<action priority="25">HandAttack</action>
<attacktype>LogicalTypeRangedUnitsAttack</attacktype>
<autoattacktype>LogicalTypeRangedUnitsAutoAttack</autoattacktype>
<attackresponsetype>LogicalTypeRangedUnitsAttack</attackresponsetype>
<runaway>0</runaway>
<autoretarget>0</autoretarget>
<deathanim>Death</deathanim>
<idleanim>Miner2Anim</idleanim>
<boredanim>Miner2Anim</boredanim>
<walkanim>Miner2Anim</walkanim>
<joganim>Miner2Anim</joganim>
<runanim>Miner2Anim</runanim>
</tactic>


基本上完成了,进入游戏看效果吧

帝国时代3奇葩修改,铲地-->遁地

帝国时代3奇葩修改,铲地-->遁地

只能通过第一视角看出遁地效果

帝国时代3奇葩修改,铲地-->遁地

帝国时代3奇葩修改,铲地-->遁地
奥兰治勋爵发表于 2020-3-14 11:01:59
哈哈,就是我啦,兄弟萌
  • こはね : 看见没,就是这个憨憨
帝国时代czk发表于 2020-3-14 16:00:20
新人来插眼啦
旅者之息发表于 2020-3-14 19:50:30
支持
こはね发表于 2020-3-17 15:35:47
填坑完成
这是楼主改好的文件(包含3dsmax骨骼文件):shovel_the_ground.rar

6a63f6246b600c3341d58feaf1186509d9f9a13b.jpg

  • 奥兰治勋爵 : 还要花金币呀
  • こはね : 每天登录 1,发新帖 1(最高20),任务中心也有每月 20,还不够吗
跳转到