我是谁004 发表于 2015-10-6 15:38:03

科技的添加、修改教程

本帖最后由 我是谁004 于 2017-7-11 16:20 编辑

科技的添加、修改教程

在DAT中,科技分为两个部分:科技(Techage)和研究(Research)。其中,科技是阐明科技所产生的作用的;另一个研究则作为引发科技效果的方式(例如在建筑中点击图标,或者令某个文明一开始即拥有)。


科技教程

一个科技,就如同一个触发中的效果的集合,可以包含多条科技效果,这些效果也是科技的唯一组成部分。
而其中有如下几种效果可以使用:
0 - 设定单位的属性
1 - 设定/加减资源量
2 - 启用/禁用单位
3 - 升级单位
4 - 加减单位的属性
5 - 倍乘单位的属性
6 - 倍乘资源量
101 - 改变/加减科技的花费
102 - 禁用科技
103 - 改变/加减科技的研究时间
其中,“设定”的意思是直接设置其值,“加减”是在原有的值上面增加或减少,“倍乘”则是将原有的值乘以一定的倍数。另外,101/103这两项效果只能用于科技树或组队奖励科技;关于什么是科技树或组队奖励科技,将会在后文中表述。

最经常使用的科技效果是0、2、3、4、5,它们与单位都有关系。启用/禁用单位,即是允许或者禁止指定单位的训练、建筑的建造。
升级单位,则是将源单位的数据转变为另一目标单位的。升级后,源单位的大部分属性会变得和目标单位一样,但ID1不会发生变化。例如将#692升级为#694,那升级后的单位ID1仍然是692,仍然受原来的科技、触发影响,与目标单位不是同一单位。此外,启用、编辑器中隐藏等少数属性也不会改变。
除了启用/禁用单位和升级单位外,其他的改动单位属性的效果,可以选择是改变一种单位的属性,还是改变一个类别的单位的属性。比如,要为所有的攻城武器增加20点生命值,就可以设置效果类型为4,效果作用的单位类别为13,而不用对每一种攻城武器都写一条效果。
单位的属性有很多项目,如生命值、攻击力等,都是可以进行修改的。简单的那些属性在此不再赘述,只说明一下特殊的。
3 - 单位半径1,4 - 单位半径2,这两项只影响碰撞半径,而不影响选框半径。
7 - 这是一个未知的属性,其真实效果并未得到判断。
8 - 攻击,9 - 防御这两项,是需要指定特定的护甲类型的。另外,攻击力似乎无法降低,只能靠倍乘来减少。
15 - 默认护甲。在AGE2015以前的版本中,是未知20(被分成了两个char位元,一般为-24和3);现在的版本则有了名称“默认护甲”,通常为1000,但灰狼柯鲁为0。其值意味着该单位受到没有任何对应的护甲类型的伤害时,进行伤害计算的护甲;由于1000值很大,所以一般的伤害都只有1点,例如清真寺。设置为15,就可以修改默认护甲的值。
16 - 设置新的抛射物。不过似乎有BUG,设置之后会导致跳出。
17 - 图标的角度?名字虽然这么叫,但是经过我的测试,似乎它只会影响图标。通过设置它的值,可以修改建筑的图标:实际图标ID=图标ID+图标的角度;但是不能改变非建筑的图标。或许该效果可以用来在剧情中制作改变单位头像的功能……
18 - 在较低的版本的AGE中,其名为“未知”,而最新的版本称其为“terrain restriction to multiply damage received”,意思是该单位在不同地形下承受的伤害,取决于该值所对应的地形限制中,每一种地形的乘数。例如,如果要设计一种单位,在雪地里伤害×0.5,在沙漠中伤害×1.5;那么可以新建一种地形限制,然后设置其雪地中承受伤害的乘数为0.5,沙漠中1.5,设置其“伤害地形限制”为该限制的编号即可。说回原题,这个18号特征,就是伤害地形限制的编号。
19 - 启用抛射物智能判断,也就是科技中的“弹道学”的效果。与11(精确度)不同在于,后者是在确定目标的情况下,落点正好在目标上的可能性,而这个则是当目标不是静止不动的时候,对实际命中位置的预判能力。设置为0没有预判能力,1有预判能力。
100 - 资源数量。作用未确定。
102 - 驻扎时最大抛射物数量,其实就是属性中的最大抛射物数量。要单纯增加普通单位抛射物数量的话,应该与107同时使用。
107 - 最小抛射物数量,当需要增加的时候,也应该根据情况增加102的值,否则的话当超过最大抛射物数量时,多余的值将不会有效。
启用/禁用单位很容易理解,就是令其可以或者不能建造、训练,在此也不必多说。
升级单位时,不要将不同类型的单位之间进行升级。例如将70-活着的单位升级为80-建筑,或者升级为10-装饰,否则会出问题而挂掉。另外,如果升级的目标单位不存在(例如升级为GAIA才有的树木),那么这次升级就会失效。

1和6是用来改变玩家的资源数目的。如大家以前所知道的,所谓资源并不只有食物、木头、黄金、石头几种,还有更多的作为特殊效果的资源。例如,异教、无神论、凯尔特人的动物不转化等。这些资源根据其说明,可以进行设置。
不过要注意的是,可能是因为硬编码的缘故,目前发现间谍所对应的资源(183)是不能被自定义的科技所设置的,否则会跳出。不过自定义的研究是可以使用间谍科技(420)的。
102是对科技进行禁用,表示该项研究被永久禁止。可见,只有禁用科技的效果,而没有启用科技的效果(UP1.4的触发除外)。
101和103是对科技的研究进行变更的效果,分别改变其花费和研究时间。不过,只有设定和加减,而没有倍乘效果。


研究教程

如果把科技比作触发中的效果,那么研究就是触发中的条件。一个研究,对应一组条件,当这些条件满足时,便可以研究科技。

上图为研究的参数页面。
名称、语言DLL名称、语言DLL描述分别指内部名称、语言中对应的研究的名称(也是科技树中的名称)的字符串编号,以及该项研究的简略提示信息。举个例子,14号研究“Heavy plow”,其语言DLL对应的编号为7013“重犁”,DLL描述编号则为8013“研发 重犁 (农田食物 +125;村民食物携带量 +1)”。
而下方的“语言DLL 弹出”则是游戏中打开右下角信息显示时,所显示的详细的帮助信息。最后一个“语言DLL帮助说明”,是在研究进行时所显示的“正在研究……”其下的文字。
当这几项与DLL相关的留空时,语言DLL名称、语言DLL帮助说明会变为内部名称,而另外两项则变为“关闭状态栏”五个字。
六项科技需求指明了该研究可用的前提条件,亦即当这些研究中已经完成一定量的时候,才可以进行这项研究。
科技效果:不必多说,指明了该研发所实现的科技。
研究地点:就是该研究所进行的地方。
完全科技模式:如果勾选该项,那么即使后面的“民族”一项不为-1,当完全科技开启时,也会令所有文明都具有该研究。
民族:指定可进行该研究的文明,-1为所有文明。
最少需求科技数量:当“科技需求”中已经研发的研究数目不少于该数量时,便可以进行本研究(在游戏中表现为显示本研究的按钮)。此外,如果研究本身是从建筑建成而自动研发的,那么该建筑的建成也会被算作一项研发。常见的例子是多级科技(如锻造——铸铁——鼓风炉),以及每个时代升级时需要的本时代的建筑物。
类型:帝国2中有两种数值。为0时是一般研究,2则是时代型研究。实际上这两者并没有很大区别,唯一可以感知到的是类型为2时,该研究会在顶部的“××时代”处显示进度条。
研究时间:指定了该研究所需要进行的时间。
图标:指定了研究按钮的图标。
按钮:当研究地点不为-1时,与单位类似;指定按钮时,1~15第一页,21~35第二页。
花费:与单位的训练类似。不同在于,单位的花费上,如果耗资源类型不为-1但是启用为0,其效果是训练该单位必须要有足够的同种资源,但训练并不消耗它们。而在科技研究中,只要不启用,即使耗资源类型不为-1,也无需拥有足够的该种资源。

如果研究满足下列条件,那么它将会自动进行:
1、最少需求科技数量已达到,无研究地点;
2、最少需求科技数量已达到,有研究地点,但研究时间为0。
另外,自动研究的科技是不花费资源的。


科技的类型

一般来说科技分为这几种:
1、按钮式科技。最常见的,建筑中那些研发的按钮便是。除了某些民族外,这些科技不会自动研究,需要手动去研发。
2、建筑式科技。指的是建筑在建成后研究的科技,典型的运用是各个时代升级时所需的那些建筑物。如升级到城堡时代,就需要铁匠铺、市场、靶场、马厩四个建筑中的二者;因此,这四个建筑分别有一个建成的研究(但无科技效果),而城堡时代则需要这四个对应的科技中的二者。(顺便说一句,这意味着只要曾经建造过这几个建筑,就可以令条件达成)
3、隐藏科技,满足条件时自动研究。通常用于免费升级的民族特性,例如拜占庭的免费城镇瞭望,便是达到封建时代后自动研究的项目。或者,如果几项研究含有部分相同效果的时候,可以建立一个隐藏科技,该研究只要达成了前几项研究条件之一即产生效果。
4、科技树科技。这里的科技树指的不是游戏中点击右上角所进入的卷轴画面,而是实实在在的文明特色。每个文明都对应了一项科技树(在“民族”选项卡中可以找到),这个科技树决定了那些单位、科技被禁用,又有什么样的数据变化。相比于前三者,它没有研究部分,只有科技效果。
5、组队奖励科技。类似于4,也是没有研究的,不同在于它可以对于所有的同盟玩家生效,而不是仅自己。

对于这五种科技,我们应该如何去编写呢?
1、按钮式科技要有研发地点,研发时间一定要大于0,否则就会自动研究。
2、建筑的建成科技,最少需求科技数量应该等于所需的科技+1,否则也会在未建建筑时自动研究。
3、科技树和组队奖励的效果是可以使用效果101和103的。



一窍不开 发表于 2015-10-6 17:29:43

简单明了直接易懂,学习了~

啥名呢 发表于 2015-10-6 22:25:21

点赞,有了明晰的教程可以让我这样的新手入门快很多。建议可以加几个经典但实用的例子,比如创建多级科技、一个单位从启用到升级到强化的过程、时代升级的条件设置等等。

另外根据我的经验,我觉得以下情况是难以修改的:比如研发不同科技播放不同的音乐、满足某种资源达到多少自动研发科技、自动研发的科技也能提示研发完成等等。

我是谁004 发表于 2015-10-7 00:00:33

啥名呢 发表于 2015-10-6 22:25
点赞,有了明晰的教程可以让我这样的新手入门快很多。建议可以加几个经典但实用的例子,比如创建多级科技、 ...

第一个,你可以考虑用生产单位代替研究科技,单位的建立声音设为你需要的声音。而该单位类型为80,设置了建成的科技为需要的科技,并且生命值为0……

啥名呢 发表于 2015-10-7 01:59:26

我是谁004 发表于 2015-10-7 00:00
第一个,你可以考虑用生产单位代替研究科技,单位的建立声音设为你需要的声音。而该单位类型为80,设置了 ...

嗯,退而求其次的方法,比如我在帝王时代上再增加一个第五时代,想让这个升级科技研发完成时播放时代升级科技的专有音效,那就应该只能这么做了,但是生产单位耗费时间怪怪的,而且得消耗一种资源限制这种单位只能造一个……细节上什么的有时候真是很头疼……

我是谁004 发表于 2015-10-7 09:24:45

本帖最后由 我是谁004 于 2015-10-7 10:14 编辑

啥名呢 发表于 2015-10-7 01:59
嗯,退而求其次的方法,比如我在帝王时代上再增加一个第五时代,想让这个升级科技研发完成时播放时代升级 ...
也不用花费额外资源,直接在建成科技里面禁用该单位就行了
还有一种在外面看来更完美的方法,就是仍然用科技,但是科技有额外的一个效果:将某个单位B升级为A。而A无图像,死亡单位是原来这个单位,设置其死亡声音为时代升级的声音。那么,就可以在科技研究完成后又听见进入时代的声音了。
不过这样的话,原本训练/建造的单位就会变成A;考虑使用科技方法,将A赋予建成科技,把升级为A的原单位B再升级回B。

cycbobby 发表于 2015-10-8 00:03:50

004又有新文章,好帖子
順便附上不才的科技教學,斑門弄斧一下
https://www.hawkaoe.net/bbs/forum.php?mod=redirect&goto=findpost&ptid=113663&pid=578282&fromuid=55131

啥名呢 发表于 2015-10-8 01:29:04

我是谁004 发表于 2015-10-7 09:24
也不用花费额外资源,直接在建成科技里面禁用该单位就行了
还有一种在外面看来更完美的方法,就是仍然用 ...

服了,给力!

adam23 发表于 2016-3-9 22:14:03

cycbobby 发表于 2015-10-8 00:03
004又有新文章,好帖子
順便附上不才的科技教學,斑門弄斧一下
https://www.hawkaoe.net/bbs/forum.php?mod= ...

感謝教學~{:155:}

六文我鱼丸 发表于 2016-6-15 11:06:07

感謝教學~{:158:}

六文我鱼丸 发表于 2016-6-26 13:39:04

有高级帝国数据编辑器3.8的修改吗?{:155:}

q5030517 发表于 2016-7-20 09:52:17

上面没写怎么用意思是下载下来直接打开软件就可以修改了吗还是要读取游戏路径之类的才能修改

我是谁004 发表于 2016-7-20 22:17:15

q5030517 发表于 2016-7-20 09:52
上面没写怎么用意思是下载下来直接打开软件就可以修改了吗还是要读取游戏路径之类的才能修改

当然要选择游戏路径和文件了才能修改呀

q5030517 发表于 2016-7-21 17:26:01

大大我不知道是哪个浏览一个个试都没搞定

我是谁004 发表于 2016-7-21 22:36:28

q5030517 发表于 2016-7-21 17:26
大大我不知道是哪个浏览一个个试都没搞定

age的用法请看基础教程,一上来就修改科技的话太快

q5030517 发表于 2016-7-24 00:04:55

謝謝   大大 有 AGE 基礎教程的鏈接沒

m15918938832 发表于 2019-7-4 20:03:01

科技的代码哪位大哥有

我是谁004 发表于 2019-7-4 20:14:16

m15918938832 发表于 2019-7-4 20:03
科技的代码哪位大哥有

科技请直接看名称和效果就能了解了
页: [1]
查看完整版本: 科技的添加、修改教程