任务地图研究

下载的任务编辑器出错不能用,幸好TA的任务是可以用记事本编写的,下面是暂时研究出来的东西。

图中是一个任务需要包含的东西
camps里面包含两个文件夹
brief文件夹里包含一个声音文件和一个文本文件,就是大家玩任务前听到的语音和文字说明。
useonly里面的文件是一个个的列表,列举了在这个任务里允许建造的单位。任务中有些单位是灰色不能造就是在这里定义的。

bitmaps里面只有一个文件夹glamous,里面放的是大家过关时看到的图片。

Instalres里面的东西暂时不明用途,但估计不需要修改,所以不管了

MAPs里面包含的是地图文件。TNT文件是地图的地表文件,OTA实际上是个文本文件,记录了地图的一些信息,任务的内容也包含在里面。下面我们着重解析这个OTA文件。
1.JPG

OTA文件的一些说明
开头部分
[GlobalHeader]
{
missionname=1: A Hero Returns;任务名称
missiondescription=;任务描述
planet=Green planet;行星类型
missionhint=Ac01hint0.txt;调用任务提示,未知
brief=ArmCampaign1;调用brief文件夹的ArmCampaign1
narration=arm01;调用任务说明声音文件
glamour=arm01;调用glamour里的过关图片
lineofsight=1;视野模式(分全开的,圆形的,会被阻挡的3种)
mapping=1;地图是否被探测过(雾是半透明还是黑的)
tidalstrength=0;潮汐大小,影响潮汐发电量
solarstrength=128;光照强度,影响太阳能发电
lavaworld=0;是否熔岩地貌 ,未知用途
killmul=50;未知
timemul=0;未知
minwindspeed=300;最低风力
maxwindspeed=2000;最大风力
gravity=112;重力
numplayers=2;玩家数量
size=5 x 6;地图大小
memory=16 mb;需要内存
useonlyunits=AC01.tdf;调用useonly文件夹里可以建造的单位列表
MoveUnitToRadius=ANYTYPE, 992, 656, 64;移动单位到某范围,胜利条件的一种,ANYTYPE应该指所有的单位类型,后面的是坐标就是要移动到的地点
AllUnitsKilled=1;失败条件,这里是所有单位被杀死
AllUnitsKilledOfType=ARMGATE;猜测是失败条件,这里是所有的ARMGATE都被杀
SCHEMACOUNT=3;概要数量,有多少种难度

胜利条件
KillEnemyCommander=1;杀死敌人司令
DestroyAllUnits=1;杀死所有敌人
KillAllMobileUnits=1;杀死所有会移动的单位
BuildUnitType=ARMAAP; 建造某种单位
CaptureUnitType=ARMAAP;俘虏某种单位
KillAllOfTypeType=ARMAAP; 杀死全部某种单位
KillUnitType=ARMAAP, 3; 杀死3个ARMAAP
MoveUnitToRadius=ANYTYPE, 44, 244, 666; 移动指定类型单位到指定地点,ANYTYPE表示所有类型
UnitTypePassesX=ANYTYPE, 0;移动指定类型单位越过X轴线
UnitTypePassesZ=ANYTYPE, 0;移动指定类型单位越过Z轴线

失败条件,跟上面的基本相反
CommanderKilled=1;
AllUnitsKilled=1;
UnitTypeKilled=ARMAAP, 3;
AllUnitsKilledOfType=ARMAAP;
DeathTimerRunsOut=13;失败倒计时

任务单位部分说明
[Schema 0]纲要 0
{
Type=Easy;难度,这里是简单
aiprofile=MISSIONS;调用的AI文件夹里的AI文件,决定电脑的进攻套路
SurfaceMetal=3;地表金属含量
MohoMetal=50;未知是什么的金属含量
HumanMetal=1000;玩家初始金属
ComputerMetal=100;电脑初始金属
HumanEnergy=1000;玩家初始能量
ComputerEnergy=100;电脑初始能量
MeteorWeapon=;天气武器,指那些陨石雨,冰雹之类的天气
MeteorRadius=0;天气武器的范围
MeteorDensity=0;天气武器的密度
MeteorDuration=0;天气武器的持续时间
MeteorInterval=0;天气武器的间隔
[units]
{
[unit0]
{
Unitname=ARMFAV;单位名称
Ident=;未知
XPos=1099;单位初始点X坐标
YPos=85;单位初始点Y坐标
ZPos=2402;单位初始点Z坐标
Player=1;属于那个玩家,这里是玩家1
HealthPercentage=100;健康度,100是百分数,表示满血,不知道能不能200%血
Angle=0;单位的面朝向,0是向下,猜测90向左,180度向上,270向右
Kills=0;猜测是杀了多少单位,某些单位杀死一定量的单位后会升级
CreationCountdown=0;创造倒数,指单位在什么时候出现
InitialMission=p 1750 1828;初始任务类型,猜测P是巡逻的意思,后面的是坐标,单位会在初始点和目标点之间巡逻
}
}
[specials]专门的
{
[special0]专门的0
{
specialwhat=StartPos1;专门的东西是=开始点1,应该是指任务开始屏幕的位置
XPos=1229; 坐标
ZPos=2432;
}
}
}

:7_347: 貌似所有一开始就存在的单位/建筑都是这样一个个写在文本文件里。。。那这个文件得有多大。。。

Ident 大概是Identity的意思吧?
可能是给触发器使用的?
不过TA任务里有没有触发器系统还不知道。。。

这个文件不大,1~2K左右,不过也有几千字,码起来挺累

做什麽版本的任務?TA-Merge的嗎?

做猫版的任务,MERGE的任务按钮都已经被TRO封了,做不了任务。只好做猫版的。

花貓也在做新版的任務,最好溝通一下合作一起做。

这个很难,我只有旧的猫版,不过做出来的任务新版应该能兼容。而且我没有任务编辑器,只能用记事本码字,估计要做很久。

ARM的反擊外傳

哈哈~~~

打算做个大防守任务,敌人铺天盖地的扑来,大概就是这样子。

好,支持~~~

:6_269:失败了,发现annihilator显示的坐标是相对屏幕左边的相对坐标,不是绝对坐标,无法定位单位位置,所以任务编不成了。。。哪张光盘包含TAE来着。。。看来是非下载光盘版不可了。。。

第2张光盘包括,但似乎无法运行,可能需要win98

:7_347: 想要知道绝对坐标?那不是很困难的吧。。。
不过有个很关键的问题。。。这个坐标系是基于什么单位的?
是以像素为单位,还是以16像素16像素单元格为单位,还是以8像素8像素单元格为单位?

估计是基于16X16像素为单位的,LS难道你要我计算屏幕的位置来算出坐标:7_347:
不过现在没这个必要了,刚才一狠心就下了个400M的TACC光盘镜像,终于可以用任务编辑器了,记事本靠边:6_316:

:7_347: 本来想帮你修改Annihilator的代码的。。。现在算了。

任务是弄好了,可是敌人的工厂纹丝不动,不造兵,郁闷

估计工厂造兵的方法和工程单位造建筑类似吧?