请选择 进入手机版 | 继续访问电脑版
跳转到:
打印 上一主题 下一主题

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

[复制链接]
LV20 ????

三好萌新

阅读权限
255
积分
24334
食物
2565
木材
1364
钱币
2107
茶叶
140
钻石
825
经验
10260

幸运勋章

QQ
跳转到指定楼层
楼主
发表于 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并保存,然后进入游戏,将单位切换到新添加的战术,你会看见已经是铲地动作了。很走运,只测试一次就成功了。其他两个动作你有兴趣可以自己去试试看。

图片的铲地动作我顺便添加了灰尘附件,所以铲地会有灰尘,如果你有兴趣自己去圣典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>

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


只能通过第一视角看出遁地效果
你们要相信我,我真的是萌新。
LV2 二等兵

阅读权限
20
积分
292
食物
47
木材
28
钱币
59
茶叶
0
钻石
0
经验
267
沙发
发表于 2020-3-14 11:01:59 来自手机 | 只看该作者
哈哈,就是我啦,兄弟萌
收起回复
  • 青天小羽 : 看见没,就是这个憨憨
    2020-3-15 20:25| 回复
  • 我也说一句
    回复: UID:
LV2 二等兵

阅读权限
20
积分
52
食物
22
木材
13
钱币
13
茶叶
0
钻石
0
经验
46
板凳
发表于 2020-3-14 16:00:20 | 只看该作者
新人来插眼啦
回复
LV20 ????
阅读权限
255
积分
1725
食物
120
木材
66
钱币
95
茶叶
21
钻石
0
经验
705
地板
发表于 2020-3-14 19:50:30 | 只看该作者
支持
回复
LV20 ????

三好萌新

阅读权限
255
积分
24334
食物
2565
木材
1364
钱币
2107
茶叶
140
钻石
825
经验
10260

幸运勋章

QQ
5#
 楼主| 发表于 2020-3-17 15:35:47 | 只看该作者
填坑完成
这是楼主改好的文件(包含3dsmax骨骼文件): shovel_the_ground.rar (30.69 KB, 下载次数: 2, 售价: 1 钱币)



收起回复
  • 奥兰治勋爵 : 还要花金币呀
    2020-3-20 00:29| 回复
  • 青天小羽 : 每天登录 1,发新帖 1(最高20),任务中心也有每月 20,还不够吗
    2020-3-20 00:44| 回复
  • 我也说一句
    回复: UID:
你们要相信我,我真的是萌新。
您需要登录后才可以回帖 登录 | 注册

本版积分规则