- 积分
- 4984
- 威望
- 48
- 魅力
- 55
- 经验
- 3940
- 热心度
- 0
- 注册时间
- 2013-8-7
- 最后登录
- 2024-11-24
- 主题
- 42
- 回帖
- 244
- 精华
- 3
- 阅读权限
- 90
TA的每日心情 | 开心 昨天 11:00 |
---|
签到天数: 214 天 连续签到: 22 天 [LV.7]血污怪
论坛嘉宾
- 积分
- 4984
|
说在最前:我是ERM新手,可能很多问题考虑不到位,欢迎大家指正。
我用老版2追修改的原因,只是因为我没有下载新版2追的权限,而且当时我也不知道有新版2追,所以并没有否定007修改的二追意思。
直到昨天下午,我才收到了别人给我发来的新版二追(作者应该是007吧?以下简称007版)(直到现在我还没权限下载论坛的,只能别人给我传),用了几个小时的时间对此脚本进行了解读,下面就我个人看法,谈谈与我修改的2追区别。
一、关于版权声明
007的2追开始就有版权声明,这个我真没考虑到,只是在论坛发我改的脚本的帖子里稍有所提及。这一方面应该向007学习。
二、关于变量声明
007的2追在开始就把脚本中的变量罗列出来,并注明意义,方便大家进行变量规划和解读。而我却只是把我解读出来的变量注解在角本区域,同样不如007版本。
三、关于定制按键
这部分是007新加的特色,我是新手,这个我就不会加了。
PS:按钮范围有点小啊,点习惯了头像的我确实有点不适应,呵呵。。当然,这是个人问题,新用该脚本的应该更喜欢这个图标按键。
四、关于交换二追方面的BUG修复
在此问题修复上,我们两个版本大同小异,都是插入了对不存在二追时的判定及相关操作,不同的方面有以下几点。
(一)判定标准
007采用的是“w162-2是否死亡/同化生物”这一变量,而我采用的是“w160-2追是否存在/战旗设置”这一变量。
从本脚本来看,采用这两个判定效果是一样的,但是我认为,还是严谨一下较好,严谨的话,以后脚本扩充不容易出错。
(二)弹出语句
1.007版加入了一个无2追图(红X枪兵);而我的弹出提示是把**的二追给**,只用一个图标。。功能一样。。全看大家喜好。
另外就是我在对交换2追的描述中加入了二追经验和同化生物,方便大家在二追原型一样时,不换错二追。
2.007版在双方无2追时加入了一条弹出;我做我的版本时感觉没必要,没加。。。功能一样。。全看大家喜好。
3.原作说明中交换二追是右键点击英雄头像,而实际上因为条件语句设置不正确,多出了右键点击“非共同区域的所有空白处”,这个范围有点大了,而且容易在点击其它位置稍有偏离时触发。
所以我首先改回了只右键点击头像触发,后来考虑到原系统右键头像是有操作的,于是最终改到了原来无操作的右键点击左英雄日志(右英雄日志也是可以加进来的,不过我感觉一个操作就用了2个触发点,会给其它ERM的操作减少触发资源)。
而这些改动,007版没有。
(三)中介变量的赋值
原作中,作者定义了2组中介变量用于暂时存储英雄数据。。。PS:原作中导致游戏出错退出的本质不在于少定义了无英雄操作,而是对此变量的“怪物名称”引用一项。
关于对这2级变量的赋值,007版采用了统一操作,即无论是否有2追,都赋值为2追变量。
我一开始也是这样做的,直到某次测试,我发现在只有一方无2追情况下,有时会发生无2追英雄出现2追模版怪物ID,同化生物为枪兵的情况。分析了语句也没发现问题,怀疑是在某种情况下,2追部分数据没有初始化造成的。于是我在判定某英雄无2追后,加入了一条赋值为初始状态(-1,0,-1,0,0,0),以保证不发生这一问题,再有就是使下面的交换语句的变量引用不至于为空(虽然为空也可以处理,但我还是认为严谨一点好)。
(四)关于升级阙值定义及其发生改变时等级回跳、自然同化失败的一系列BUG的修复
007版本和我的版本,都对升级阙值进行了调整,总体情况是007调大了(升级难),而我调小了(升级容易)。。。这个不是重点。。。只是个人偏好而已。。。
由于原作算法的漏洞,其实应该说是算法错误,导致升级阙值发生改变时,2追等级会回跳。比如默认模式下,2追等级超过40级,会跳回13级。
1.007的修复方法:在原算法不变的情况下,在2追形态改变时强制只能升一级的语句后,加入了升级阙值改变时,强制只能升一级,然后将经验提升到按下一阙值算法进行计算时的最低经验,并且按此方法修正了形态轮换和自然同化时的经验判定。我称之为“补漏法”,其本质是采用强行增加经验的方法,使下一阙值的相关计算不发生错误。
对于这个方法,说真的我是相当佩服的,我是完全没有想到的。这个方法最大的好处是采用“曲线救国”思路,弥补算发中的漏洞,具有很强的可操作性。只要有一点点基础的人,都能够根据此方法定义出正确的阙值及相对应的判定条件,适应于大众。
2.我的修复方法:这也是我比较得意的地方。我采用连续的梯级函数(是数学函数不是程序中的函数),完全替换掉原作的算法。并推导出两条判定公式,只有有一定数学基础的人(其实不需要很高,关键是肯花时间看懂我的数学变量说明,代入对应值就行了),就能够根据此公式定义出正确的阙值及相对应的判定条件,适应于有一定数学能力的人。
3.两种方法的比较:
007的方法确实简单,但是,“曲线救国”毕竟还是“曲线救国”,只是补充了原作算法部分漏洞,但其最重要的本质“不连续性”没有得到纠正,就会引起一系列问题。就目前的脚本应用来说,最明显的问题有2个:
一是2追总经验的显示不正确。当然不正确啊,因为加了很多的说。。。对于本脚本来说,其实影响不大,因为和总经验有关的操作都被用“补漏法”定义了。而目前的经验显示错误,也可以用“显示再减回差值后的变量”来实现。
二是由于“阙值改变时,强制只能升一级,并提升经验到下一阙值下限”这一操作,表面上是增加了经验,但是,其实增加的这部分经验都被用于“补漏”了,事实上,你升级时超过升级经验的部分,被华丽的吃掉了。当然这也是小问题,毕竟阙值调整也就几次。
我的方法确实比007的复杂,但是复杂的公式推导我已经完成了,需要做的只有数值代入,所以也不是很复杂,我的算法有着无与伦比的优势,就是1就是1,2就是2的确定性,在定义好了所有阙值和判定点后,其它地方都不需要考虑特殊情况,因为是确定的说。对将来的脚本扩充有很大好处。
(五)关于300血生物可以同化任何生物的BUG修复
首先说明一下,很多人认为这不是个BUG,是原作都留下的特殊情况,但我认为不是这样,确实是个BUG,原因有以下几点:
1.原作的注释,这是最重要的,根据原作代码旁边的多处注释,很明显的看出作者没有留300生命这一特殊值的想法,只是在实际判定时,少写了2个等于号。。。
2.游戏中的意义,游戏是为了娱乐,平衡是娱乐的前提。标准情况下,生命为300的生物就有3种,黑龙,泰坦和比蒙巨兽,只要找到一头这个怪物,就可以使用任何2追,在任何等级及其它情况下,同化任何生物,最强的就是同化圣龙。你要是说圣龙也不好抓,那听我继续说下去。为平衡白魂和吸血鬼作为2追的情况,这两种生物只能同化25和50以下生命的生物,使用的判定语句和其它生物是同一条。狮鹫,狗,气元素,金人和牛头好找吧?如果这个判定语句不加“=”不是个BUG,那么你告诉我,在这个判定条件下,使用白魂同化前三种生物后可以同化圣龙(当然,你也可以同化普通生命高的生物),游戏还有意思么?你又要说用白魂算作弊,那么用吸血鬼在本版本中定义不算作弊的,同上所述,你用吸血鬼同化过后两种生物后,也没有了同化限制。而这些情况,只需要加个等号就可以解决。现在你告诉我,你还认为这不是个BUG吗?你要是再坚持,那我也没话说了,反正我认为这是个BUG。
基于我肯定这是个BUG的前提下,我对这部分判定语句进行了修改。
第一次修改是加入了=300的判定。。。
后发现还有白魂和吸血鬼情况,与是将=300改为等于同化能力。
第三次我对脚本进行检查时,发现多个判定语句有很大的重复区域,通过数学计算,在保持原功能不变的情况下,优化判定语句为2条。。。由于判定语句少了,查看这部分代码意义也就方便了,不容易出现判定漏洞。。汗,原作者的写脚本能力我佩服,但数学能力确实有点那个。。。
对于这一BUG,007版本没有修正。可能他认为这不是个BUG吧。。。
(六)界面汉化
原作者应该是使用英语国家的人,或者原作创作时游戏不支持英语,反正原作中有很多英语的界面。
007和我都对界面都进行了汉化,我们对英语部分的翻译可能不同,但意思大家应该都能明白。
007汉化不全,有部分界面还是英雄。。。我的应该是比较全的吧,毕竟我是使用搜索“^”符号来翻译的。。。也许有粗心没汉化到的地方,大家不要喷我。。呵呵。。。
(七)关于同化能力的设定
在我最后一个修正版本里,我加入了同化能力的设定。。。。
目的是通过同化能力的成长,2追能同化到的生物范围不断改变,目前想到的成长条件有“献祭生物、宝物、特殊物品、完成任务、资源购买,打败一定数量的某种怪物等,为全部实现这些功能,我觉得有必要增加一个W变量,如果不增加该变量,只能完成设想中的部分功能。
(八)二追的转职(设想中)
这里的转职是二追原型生物的转职,考虑到一开始就能无条件选择所有生物做2追原型,所以这部分应该没有必要。
但是,又考虑到二追原型获得太过简单,很没有道理啊,可以增加不同二追原型获得难度,这样的话转职就有意义了。
设想中不同的二追原型除基础技能的不同外,基础同化能力也不同。
综上所述,我认为除多了一个按键图标外,总体上我的二追是优于论坛官方二追的。。。大家不要喷我,说我自大,其实自大是真有的,我自己先承认了,呵呵。。。当然,论坛二追也是很强大的ERM。。
以上是我对论坛官方二追及我改的二追的看法,只代表个人看法。。。不到之处,请大家指正。。。
我的愿望是让这个经典的游戏更加经典,毕竟一个游戏玩了十几年的只有这个和仙剑了。。。
其实我是有私心的,希望大家承认我的工作,希望大家采用我的版本,希望自己做的比别人强。。。虽然我只是新心。。。
最后再说一句。。。也就是我反复说的。。。严谨的编程态度不会给自己增加多少工作,但给自己和别人的将来减少很多麻烦。。。
谢谢大家捧场。。。谢谢各位大大。。。请发红包好吗?。。。我好想下载最新的ERA啊。。。
附:我改的二追地址
http://bbs.h3wog.com/forum.php?mod=viewthread&tid=41677&fromuid=111130
|
评分
-
4
查看全部评分
-
|